annotate test/code-gen.c @ 196:5f70abd9453d

*** empty log message ***
author kono
date Wed, 07 Apr 2004 21:14:19 +0900
parents
children b5f49f32c2ee
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
196
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
1 /* Micro-C Code Generator Checker */
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
2 /* $Id$ */
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
3
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
4 #define FLOAT_CODE 1
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
5 #define LONGLONG_CODE 1
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
6
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
7 // code_lvar(int e2,int creg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
8 // code_label(int labelno)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
9 // code_gvar(int e1,int creg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
10 // code_rgvar(int e1,int creg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
11 // code_crgvar(int e1,int creg,int sign,int sz)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
12 // code_register(int e2,int creg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
13 // code_rlvar(int e2,int reg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
14 // code_crlvar(int e2,int reg,int sign,int sz)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
15 // code_fname(NMTBL *n,int creg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
16 // code_const(int e2,int creg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
17 // code_neg(int creg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
18 // code_not(int creg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
19 // code_lnot(int creg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
20 // code_preinc(int e1,int e2,int dir,int sign,int sz,int reg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
21 // code_postinc(int e1,int e2,int dir,int sign,int sz,int reg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
22 // code_return(int creg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
23 // code_bool(int e1)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
24 // code_gt(int cond)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
25 // code_ugt(int cond)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
26 // code_ge(int cond)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
27 // code_uge(int cond)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
28 // code_eq(int cond)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
29 // code_cmp_crgvar(int e1,int sz)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
30 // code_cmp_crlvar(int e2,int sz)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
31 // code_cmp_rgvar(int e1)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
32 // code_cmp_rlvar(int e2)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
33 // code_cmp_register(int e2)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
34 // ascii(char *s)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
35 // code_string(int e1,int creg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
36 // struct_push(int e4,int t,int arg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
37 // function(int e1)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
38 // code_jmp(char *s)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
39 // code_indirect_jmp(int e2)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
40 // code_rindirect(int e1, int offset, int us);
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
41 // code_crindirect(int e1, int offset, int us);
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
42 // code_srindirect(int e1, int offset, int us);
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
43 #if FLOAT_CODE
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
44 // code_drindirect(int e1, int offset, int d);
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
45 #endif
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
46 #if LONGLONG_CODE
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
47 // code_lrindirect(int e1, int offset, int us);
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
48 #endif
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
49
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
50
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
51 // code_assign_gvar(int e2,int creg,int byte)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
52 // code_assign_lvar(int e2,int creg,int byte)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
53 // code_assign_register(int e2,int byte,int creg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
54 // code_assign(int e2,int byte,int creg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
55 // code_register_assop(int e2,int op,int byte)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
56 // code_assop(int op,int byte,int sign)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
57 // tosop(int op,int oreg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
58 // case LSHIFT:
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
59 // case ULSHIFT:
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
60 // case RSHIFT:
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
61 // case URSHIFT:
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
62 // case ADD:
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
63 // case SUB:
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
64 // case CMP:
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
65 // case BAND:
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
66 // case EOR:
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
67 // case BOR:
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
68 // case MUL:
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
69 // case UMUL:
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
70 // case DIV:
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
71 // case UDIV:
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
72 // case MOD:
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
73 // case UMOD:
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
74
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
75 // oprtc(int op,int v)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
76
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
77 // ld_indexx(int byte, int n, int xreg,int sign)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
78
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
79 // rexpr(int e1, int l1, char *s,int t)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
80
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
81 // jcond(int l, char cond)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
82
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
83 // jmp(int l)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
84 // code_enter(char *name)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
85
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
86 #if FLOAT_CODE
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
87 // code_cmp_dregister(int e2,int d)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
88 // code_dregister(int e2,int freg,int d)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
89 // code_dassign_gvar(int e2,int freg,int d)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
90 // code_dassign_lvar(int e2,int freg,int d)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
91 // code_dassign(int e2,int freg,int d)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
92 // code_dassign_dregister(int e2,int d,int freg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
93 // code_dconst(int e2,int freg,int d)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
94 // code_dneg(int freg,int d)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
95 // code_d2i(int freg0)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
96 // code_i2d(int creg0)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
97 // code_d2u(int freg0)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
98 // code_u2d(int creg0)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
99 // code_d2f(int freg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
100 // code_f2d(int freg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
101 // code_f2i(int freg) code_d2i(freg);
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
102 // code_f2u(int freg) code_d2u(freg);
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
103 // code_i2f(int creg) code_i2d(creg);
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
104 // code_u2f(int creg) code_u2d(creg);
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
105
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
106 // code_drgvar(int e2,int d,int freg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
107 // code_drlvar(int e2,int d,int freg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
108 // code_cmp_drgvar(int e2,int d)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
109 // code_cmp_drlvar(int e2,int d)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
110 // dtosop(int op,int e1)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
111 // case FADD:
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
112 // case DADD: opn="fadd"; break;
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
113 // case FSUB:
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
114 // case DSUB: opn="fsub"; break;
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
115 // case FDIV:
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
116 // case DDIV: opn="fdiv"; break;
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
117 // case FMUL:
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
118 // case DMUL: opn="fmul"; break;
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
119 // case FCMP:
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
120 // case DCMP:
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
121 // case FCMPGE:
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
122 // case DCMPGE:
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
123
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
124 // code_dassop(int op,int d)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
125 // code_dpreinc(int e1,int e2,int d,int reg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
126 // code_dpostinc(int e1,int e2,int d,int reg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
127 // drexpr(int e1, int e2,int l1, int op)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
128
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
129 // case DOP+GE:
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
130 // case FOP+GE:
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
131 // case DOP+GT:
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
132 // case FOP+GT:
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
133 // case DOP+EQ:
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
134 // case FOP+EQ:
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
135 // case DOP+NEQ:
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
136 // case FOP+NEQ:
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
137 #endif
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
138
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
139 #if LONGLONG_CODE
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
140 // lrexpr(int e1, int e2,int l1, int op)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
141 // int lpop_register()
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
142 // code_lregister(int e2,int reg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
143 // code_cmp_lregister(int reg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
144 // code_cmp_lrgvar(int e1,int e2)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
145 // code_cmp_lrlvar(int e1,int e2)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
146 // code_lassign(int e1,int e2)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
147 // code_lassign_gvar(int e1,int e2)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
148 // code_lassign_lvar(int e1,int e2)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
149 // code_lassign_lregister(int e2,int reg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
150 // code_lconst(int e1,int e2)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
151 // code_lneg(int e1,int e2)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
152 // code_lrgvar(int e1,int e2)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
153 // code_lrlvar(int e1,int e2)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
154 // ltosop(int e1,int e2)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
155 // code_i2ll(int creg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
156 // code_i2ull(int creg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
157 // code_u2ll(int creg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
158 // code_u2ull(int creg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
159 // code_ll2i(int creg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
160 // code_ll2u(int creg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
161 // code_ull2i(int creg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
162 // code_ull2u(int creg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
163 #if FLOAT_CODE
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
164 // code_d2ll(int creg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
165 // code_d2ull(int creg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
166 // code_f2ll(int creg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
167 // code_f2ull(int creg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
168 // code_ll2d(int creg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
169 // code_ll2f(int creg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
170 // code_ull2d(int creg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
171 // code_ull2f(int creg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
172 // code_ull2ll(int creg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
173 // code_ull2ull(int creg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
174 #endif
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
175
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
176 #if LONGLONG_CODE
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
177
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
178 // code_lpreinc(int e1,int e2,int reg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
179 // code_lpostinc(int e1,int e2,int reg)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
180 // code_lassop(int op)
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
181
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
182 #endif
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
183 /* end */
5f70abd9453d *** empty log message ***
kono
parents:
diff changeset
184