196
|
1 /* Micro-C Code Generator Checker */
|
|
2 /* $Id$ */
|
|
3
|
|
4 #define FLOAT_CODE 1
|
|
5 #define LONGLONG_CODE 1
|
|
6
|
|
7 // code_lvar(int e2,int creg)
|
197
|
8
|
|
9 void
|
|
10 code_lvar()
|
|
11 {
|
|
12 char c1,c2;
|
|
13 unsigned char uc1,uc2;
|
|
14 int i1,i2;
|
|
15 short s1,s2;
|
|
16 unsinged short us1,us2;
|
|
17 #if FLOAT_CODE
|
|
18 float f0,f1;
|
|
19 double d0,d1;
|
|
20 #endif
|
|
21 #if LONGLONG_CODE
|
|
22 long long l0,l1;
|
|
23 unsigned long long ul0,ul1;
|
|
24 #endif
|
|
25
|
|
26 i1 = 1; i2 = -2;
|
|
27 s1 = -1; s2 = -3; us1 = 65535; us2 = 65535;
|
|
28 printf("code_lvar %d %d %d %d %u %u\n",i1,i2,s1,s2,us1,us2);
|
|
29 c1 = -1; c2 = -3; uc1 = 65535; uc2 = 65535;
|
|
30 printf("code_lvar %d %d %u %u\n",c1,c2,uc1,uc2);
|
|
31 #if FLOAT_CODE
|
|
32 f0 = 0.0; f1 = 0.2;
|
|
33 d0 = 10; d1 = 10e10;
|
|
34 printf("code_lvar float %f %f %g %g\n",i1,i2,f0,f1,d0,d1);
|
|
35 #endif
|
|
36 #if LOGNLONG_CODE
|
|
37 l0 = 123123123LL;
|
|
38 l1 = 123123123LL;
|
|
39 ul0 = 123123123LL;
|
|
40 ul1 = 123123123LL;
|
|
41 printf("code_lvar long long %ll %ll %ull %ull\n",i1,i2,f0,f1,d0,d1);
|
|
42 #endif
|
|
43 }
|
|
44
|
196
|
45 // code_label(int labelno)
|
197
|
46 void
|
|
47 code_label()
|
|
48 {
|
|
49 goto hoge;
|
|
50 hage:
|
|
51 goto hage;
|
|
52 hoge:
|
|
53 printf("code_label done\n");
|
|
54 }
|
|
55
|
196
|
56 // code_gvar(int e1,int creg)
|
|
57 // code_rgvar(int e1,int creg)
|
|
58 // code_crgvar(int e1,int creg,int sign,int sz)
|
197
|
59
|
|
60 char c1,c2;
|
|
61 unsigned char uc1,uc2;
|
|
62 static char s_c1,s_c2;
|
|
63 static unsigned char s_uc1,s_uc2;
|
|
64 int i1,i2;
|
|
65 short s1,s2;
|
|
66 unsinged short us1,us2;
|
|
67 static int s_i1,s_i2;
|
|
68 static short s_s1,s_s2;
|
|
69 static unsinged short s_us1,s_us2;
|
|
70 #if FLOAT_CODE
|
|
71 float f0,f1;
|
|
72 double d0,d1;
|
|
73 static float s_f0,s_f1;
|
|
74 static double s_d0,s_d1;
|
|
75 #endif
|
|
76 #if LONGLONG_CODE
|
|
77 long long l0,l1;
|
|
78 unsigned long long ul0,ul1;
|
|
79 static long long s_l0,s_l1;
|
|
80 static unsigned long long s_ul0,s_ul1;
|
|
81 #endif
|
|
82
|
|
83 void
|
|
84 code_gvar()
|
|
85 {
|
|
86 i1 = 1; i2 = -2;
|
|
87 s1 = -1; s2 = -3; us1 = 65535; us2 = 65535;
|
|
88 printf("code_gvar %d %d %u %u %u %u\n",i1,i2,s1,s2,us1,us2);
|
|
89 c1 = -1; c2 = -3; uc1 = 65535; uc2 = 65535;
|
|
90 printf("code_gvar %d %d %u %u\n",c1,c2,uc1,uc2);
|
|
91 #if FLOAT_CODE
|
|
92 f0 = 0.0; f1 = 0.2;
|
|
93 d0 = 10; d1 = 10e10;
|
|
94 printf("code_gvar float %f %f %g %g\n",i1,i2,f0,f1,d0,d1);
|
|
95 #endif
|
|
96 #if LOGNLONG_CODE
|
|
97 l0 = 123123123LL;
|
|
98 l1 = 123123123LL;
|
|
99 ul0 = 123123123LL;
|
|
100 ul1 = 123123123LL;
|
|
101 printf("code_gvar long long %ll %ll %ull %ull\n",i1,i2,f0,f1,d0,d1);
|
|
102 #endif
|
|
103 s_i1 = 1; s_i2 = 2;
|
|
104 s_s1 = -1; s_s2 = -3; s_us1 = 65535; s_us2 = 65535;
|
|
105 printf("code_gvar %d %d %u %u %u %u\n",s_i1,s_i2,s1,s_s2,s_us1,s_us2);
|
|
106 s_c1 = -1; s_c2 = -3; s_uc1 = 65535; s_uc2 = 65535;
|
|
107 printf("code_gvar %d %d %u %u\n",s_c1,s_c2,s_uc1,s_uc2);
|
|
108 #if FLOAT_CODE
|
|
109 s_f0 = 0.0; s_f1 = 0.2;
|
|
110 s_d0 = 10; s_d1 = 10e10;
|
|
111 printf("code_gvar float %f %f %g %g\n",s_i1,s_i2,s_f0,s_f1,s_d0,s_d1);
|
|
112 #endif
|
|
113 #if LOGNLONG_CODE
|
|
114 l0 = 123123123LL;
|
|
115 l1 = 123123123LL;
|
|
116 ul0 = 123123123LL;
|
|
117 ul1 = 123123123LL;
|
|
118 printf("code_gvar long long %ll %ll %ull %ull\n",s_i1,s_i2,s_f0,s_f1,s_d0,s_d1);
|
|
119 #endif
|
|
120 }
|
|
121
|
196
|
122 // code_register(int e2,int creg)
|
197
|
123
|
|
124 code_register()
|
|
125 {
|
|
126 register char c1,c2;
|
|
127 register unsigned char uc1,uc2;
|
|
128 register int i1,i2;
|
|
129 register short s1,s2;
|
|
130 register unsinged short us1,us2;
|
|
131 #if FLOAT_CODE
|
|
132 register float f0,f1;
|
|
133 register double d0,d1;
|
|
134 #endif
|
|
135 #if LONGLONG_CODE
|
|
136 register long long l0,l1;
|
|
137 register unsigned long long ul0,ul1;
|
|
138 #endif
|
|
139
|
|
140 i1 = 1; i2 = -2;
|
|
141 s1 = -1; s2 = -3; us1 = 65535; us2 = 65535;
|
|
142 printf("code_lvar %d %d %u %u %u %u\n",i1,i2,s1,s2,us1,us2);
|
|
143 c1 = -1; c2 = -3; uc1 = 65535; uc2 = 65535;
|
|
144 printf("code_gvar %d %d %u %u\n",c1,c2,uc1,uc2);
|
|
145 #if FLOAT_CODE
|
|
146 f0 = 0.0; f1 = 0.2;
|
|
147 d0 = 10; d1 = 10e10;
|
|
148 printf("code_lvar float %f %f %g %g\n",i1,i2,f0,f1,d0,d1);
|
|
149 #endif
|
|
150 #if LOGNLONG_CODE
|
|
151 l0 = 123123123LL;
|
|
152 l1 = 123123123LL;
|
|
153 ul0 = 123123123LL;
|
|
154 ul1 = 123123123LL;
|
|
155 printf("code_lvar long long %ll %ll %ull %ull\n",i1,i2,f0,f1,d0,d1);
|
|
156 #endif
|
|
157 }
|
|
158
|
196
|
159 // code_fname(NMTBL *n,int creg)
|
197
|
160
|
|
161 code_fname()
|
|
162 {
|
|
163 int i,j;
|
|
164 i = (int)code_fname;
|
|
165 j = (int)code_register;
|
|
166 printf("code_fname %d\n",i==j);
|
|
167 }
|
|
168
|
|
169
|
196
|
170 // code_neg(int creg)
|
197
|
171 void
|
|
172 code_neg()
|
|
173 {
|
|
174 int i,j;
|
|
175 i = 123123123;j = -32423;
|
|
176 printf("code_neg %d %d\n",-i,-j);
|
|
177 }
|
|
178
|
196
|
179 // code_not(int creg)
|
197
|
180 void
|
|
181 code_not()
|
|
182 {
|
|
183 int i,j;
|
|
184 i = 123123123;j = 0;
|
|
185 printf("code_neg %d %d\n",~i,~j);
|
|
186 }
|
|
187
|
196
|
188 // code_lnot(int creg)
|
197
|
189 void
|
|
190 code_lnot()
|
|
191 {
|
|
192 int i,j;
|
|
193 i = 123123123;j = 0;
|
|
194 printf("code_neg %d %d\n",!i,!j);
|
|
195 }
|
|
196
|
196
|
197 // code_preinc(int e1,int e2,int dir,int sign,int sz,int reg)
|
197
|
198 void
|
|
199 code_preinc()
|
|
200 {
|
|
201 int i,j;
|
|
202 i = 123123123;j = 0;
|
|
203 printf("code_preinc %d %d\n",++i,--j);
|
|
204 }
|
|
205
|
196
|
206 // code_postinc(int e1,int e2,int dir,int sign,int sz,int reg)
|
197
|
207 void
|
|
208 code_postinc()
|
|
209 {
|
|
210 int i,j;
|
|
211 i = 123123123;j = 0;
|
|
212 printf("code_preinc %d %d\n",i++,j--);
|
|
213 }
|
|
214
|
196
|
215 // code_return(int creg)
|
197
|
216
|
|
217 int
|
|
218 code_return_int()
|
|
219 {
|
|
220 return 1;
|
|
221 }
|
|
222
|
|
223 float
|
|
224 code_return_float()
|
|
225 {
|
|
226 return 1.0;
|
|
227 }
|
|
228
|
|
229 double
|
|
230 code_return_double()
|
|
231 {
|
|
232 return 1.0;
|
|
233 }
|
|
234
|
|
235 long long
|
|
236 code_return_longlong()
|
|
237 {
|
|
238 return 10LL;
|
|
239 }
|
|
240
|
|
241 struct aa { char a[100]; } a0;
|
|
242 struct aa
|
|
243 code_return_struct()
|
|
244 {
|
|
245 a0.a[55]=3;
|
|
246 return a0;
|
|
247 }
|
|
248
|
196
|
249 // code_gt(int cond)
|
197
|
250
|
|
251 void code_gt()
|
|
252 {
|
|
253 if (i1>i2)
|
|
254 printf("code_gt 1\n");
|
|
255 else
|
|
256 printf("code_gt 0\n");
|
|
257 }
|
|
258
|
196
|
259 // code_ugt(int cond)
|
197
|
260 void code_ugt()
|
|
261 {
|
|
262 if (ui1>ui2)
|
|
263 printf("code_ugt 1\n");
|
|
264 else
|
|
265 printf("code_ugt 0\n");
|
|
266 }
|
|
267
|
196
|
268 // code_ge(int cond)
|
197
|
269 void code_ge()
|
|
270 {
|
|
271 if (i1>=i2)
|
|
272 printf("code_ge 1\n");
|
|
273 else
|
|
274 printf("code_ge 0\n");
|
|
275 }
|
|
276
|
196
|
277 // code_uge(int cond)
|
197
|
278 void code_uge()
|
|
279 {
|
|
280 if (ui1>=ui2)
|
|
281 printf("code_uge 1\n");
|
|
282 else
|
|
283 printf("code_uge 0\n");
|
|
284 }
|
|
285
|
196
|
286 // code_eq(int cond)
|
197
|
287 void code_eq()
|
|
288 {
|
|
289 if (ui1==ui2)
|
|
290 printf("code_eq 1\n");
|
|
291 else
|
|
292 printf("code_eq 0\n");
|
|
293 if (i1!=i2)
|
|
294 printf("code_neq 1\n");
|
|
295 else
|
|
296 printf("code_neq 0\n");
|
|
297 }
|
|
298
|
|
299 // code_bool(int e1)
|
|
300
|
|
301 void
|
|
302 code_bool()
|
|
303 {
|
|
304 printf("code_bool %d %d %d %d %d %d\n",
|
|
305 i1>i2,ui1>ui2,i1>=i2,ui1>=ui2,ui1==ui2,i1!=i2);
|
|
306 #if FLOAT_CODE
|
|
307 printf("code_bool float %d %d %d %d\n",
|
|
308 f0>f1,f0>=f1,f0==f1,f0!=f1);
|
|
309 printf("code_bool double %d %d %d %d\n",
|
|
310 d0>d1,d0>=d1,d0==d1,d0!=d1);
|
|
311 #endif
|
|
312 #if LONGLONG_CODE
|
|
313 printf("code_bool long long %d %d %d %d %d %d\n",
|
|
314 l1>l0,ul1>ul0,l1>=l0,ul1>=ul0,ul1==ul0,l1!=l0);
|
|
315 #endif
|
|
316 }
|
|
317
|
|
318 void
|
|
319 code_cmp()
|
|
320 {
|
|
321 char c1,c2;
|
|
322 unsigned char uc1,uc2;
|
|
323 int i1,i2;
|
|
324 short s1,s2;
|
|
325 unsinged short us1,us2;
|
|
326 #if FLOAT_CODE
|
|
327 float f0,f1;
|
|
328 double d0,d1;
|
|
329 #endif
|
|
330 #if LONGLONG_CODE
|
|
331 long long l0,l1;
|
|
332 unsigned long long ul0,ul1;
|
|
333 #endif
|
|
334 i1 = 1; i2 = -2;
|
|
335 s1 = -1; s2 = -3; us1 = 65535; us2 = 65535;
|
|
336 c1 = -1; c2 = -3; uc1 = 65535; uc2 = 65535;
|
|
337 i1 && printf("code_bool local 1\n");
|
|
338 s1 && printf("code_bool local 2\n");
|
|
339 us1 && printf("code_bool local 3\n");
|
|
340 c1 && printf("code_bool local 4\n");
|
|
341 uc1 && printf("code_bool local 5\n");
|
|
342 #if FLOAT_CODE
|
|
343 f0 = 0.0; f1 = 0.2;
|
|
344 d0 = 10; d1 = 10e10;
|
|
345 f0 && printf("code_bool local 6\n");
|
|
346 d0 && printf("code_bool local 7\n");
|
|
347 #endif
|
|
348 #if LOGNLONG_CODE
|
|
349 l0 = 123123123LL;
|
|
350 l1 = 123123123LL;
|
|
351 ul0 = 123123123LL;
|
|
352 ul1 = 123123123LL;
|
|
353 l0 && printf("code_bool local 8\n");
|
|
354 ul0 && printf("code_bool local 9\n");
|
|
355 #endif
|
|
356
|
|
357 }
|
|
358 void
|
|
359 code_cmp_global()
|
|
360 {
|
|
361 i1 = 1; i2 = -2;
|
|
362 s1 = -1; s2 = -3; us1 = 65535; us2 = 65535;
|
|
363 c1 = -1; c2 = -3; uc1 = 65535; uc2 = 65535;
|
|
364 i1 && printf("code_bool global 1\n");
|
|
365 s1 && printf("code_bool global 2\n");
|
|
366 us1 && printf("code_bool global 3\n");
|
|
367 c1 && printf("code_bool global 4\n");
|
|
368 uc1 && printf("code_bool global 5\n");
|
|
369 #if FLOAT_CODE
|
|
370 f0 = 0.0; f1 = 0.2;
|
|
371 d0 = 10; d1 = 10e10;
|
|
372 f0 && printf("code_bool global 6\n");
|
|
373 d0 && printf("code_bool global 7\n");
|
|
374 #endif
|
|
375 #if LOGNLONG_CODE
|
|
376 l0 = 123123123LL;
|
|
377 l1 = 123123123LL;
|
|
378 ul0 = 123123123LL;
|
|
379 ul1 = 123123123LL;
|
|
380 l0 && printf("code_bool global 8\n");
|
|
381 ul0 && printf("code_bool global 9\n");
|
|
382 #endif
|
|
383 }
|
|
384
|
|
385 void
|
|
386 code_cmp_register()
|
|
387 {
|
|
388 register char c1,c2;
|
|
389 register unsigned char uc1,uc2;
|
|
390 register int i1,i2;
|
|
391 register short s1,s2;
|
|
392 register unsinged short us1,us2;
|
|
393 #if FLOAT_CODE
|
|
394 register float f0,f1;
|
|
395 register double d0,d1;
|
|
396 #endif
|
|
397 #if LONGLONG_CODE
|
|
398 register long long l0,l1;
|
|
399 register unsigned long long ul0,ul1;
|
|
400 #endif
|
|
401 i1 = 1; i2 = -2;
|
|
402 s1 = -1; s2 = -3; us1 = 65535; us2 = 65535;
|
|
403 c1 = -1; c2 = -3; uc1 = 65535; uc2 = 65535;
|
|
404 i1 && printf("code_bool register 1\n");
|
|
405 s1 && printf("code_bool register 2\n");
|
|
406 us1 && printf("code_bool register 3\n");
|
|
407 c1 && printf("code_bool register 4\n");
|
|
408 uc1 && printf("code_bool register 5\n");
|
|
409 #if FLOAT_CODE
|
|
410 f0 = 0.0; f1 = 0.2;
|
|
411 d0 = 10; d1 = 10e10;
|
|
412 f0 && printf("code_bool register 6\n");
|
|
413 d0 && printf("code_bool register 7\n");
|
|
414 #endif
|
|
415 #if LOGNLONG_CODE
|
|
416 l0 = 123123123LL;
|
|
417 l1 = 123123123LL;
|
|
418 ul0 = 123123123LL;
|
|
419 ul1 = 123123123LL;
|
|
420 l0 && printf("code_bool register 8\n");
|
|
421 ul0 && printf("code_bool register 9\n");
|
|
422 #endif
|
|
423
|
|
424 }
|
|
425
|
|
426
|
196
|
427 // code_string(int e1,int creg)
|
197
|
428
|
|
429 void
|
|
430 code_string(int e1,int creg)
|
|
431 {
|
|
432 printf("code_string test\n");
|
|
433 }
|
|
434
|
196
|
435 // struct_push(int e4,int t,int arg)
|
197
|
436
|
|
437 struct aa
|
|
438 struct_push0(int i,struct aa a)
|
|
439 {
|
|
440 a.a[55]++;
|
|
441 if (i==0) {
|
|
442 return struct_push(1,a0);
|
|
443 }
|
|
444 return a0;
|
|
445 }
|
|
446
|
|
447 void
|
|
448 struct_push()
|
|
449 {
|
|
450 a0.a[55]=3;
|
|
451 a0 = struct_push0(0,a0);
|
|
452 printf("struct_push %d\n",a0.a[55]);
|
|
453 }
|
|
454
|
196
|
455 // code_jmp(char *s)
|
|
456 // code_indirect_jmp(int e2)
|
197
|
457
|
196
|
458 // code_rindirect(int e1, int offset, int us);
|
197
|
459 void
|
|
460 code_rindirect()
|
|
461 {
|
|
462 int i1,i2;
|
|
463 unsigned int ui1,ui2;
|
|
464 int *pi1,*pi2;
|
|
465 unsigned int *pui1,*pui2;
|
|
466
|
|
467 i1 = -555; i2= 555;
|
|
468 ui1 = 632423423; ui2= 32394234;
|
|
469 pi1 = &i1;
|
|
470 pi2 = &i2;
|
|
471 pui1 = &ui1;
|
|
472 pui2 = &ui2;
|
|
473 printf("code_rindirect %d %d %u %u\n",*pi1,*pi2,*pui1,*pui2);
|
|
474 }
|
|
475
|
196
|
476 // code_crindirect(int e1, int offset, int us);
|
197
|
477 void
|
|
478 code_crindirect()
|
|
479 {
|
|
480 char i1,i2;
|
|
481 unsigned char ui1,ui2;
|
|
482 char *pi1,*pi2;
|
|
483 unsigned char *pui1,*pui2;
|
|
484
|
|
485 i1 = -55; i2= 55;
|
|
486 ui1 = 200; ui2= 128;
|
|
487 pi1 = &i1;
|
|
488 pi2 = &i2;
|
|
489 pui1 = &ui1;
|
|
490 pui2 = &ui2;
|
|
491 printf("code_cindirect %d %d %u %u\n",*pi1,*pi2,*pui1,*pui2);
|
|
492 }
|
|
493
|
196
|
494 // code_srindirect(int e1, int offset, int us);
|
197
|
495 void
|
|
496 code_srindirect()
|
|
497 {
|
|
498 short i1,i2;
|
|
499 unsigned short ui1,ui2;
|
|
500 short *pi1,*pi2;
|
|
501 unsigned short *pui1,*pui2;
|
|
502
|
|
503 i1 = -55; i2= 55;
|
|
504 ui1 = 200; ui2= 128;
|
|
505 pi1 = &i1;
|
|
506 pi2 = &i2;
|
|
507 pui1 = &ui1;
|
|
508 pui2 = &ui2;
|
|
509 printf("code_sindirect %d %d %u %u\n",*pi1,*pi2,*pui1,*pui2);
|
|
510 }
|
|
511
|
196
|
512 #if FLOAT_CODE
|
|
513 // code_drindirect(int e1, int offset, int d);
|
197
|
514 void
|
|
515 code_drindirect()
|
|
516 {
|
|
517 float i1,i2;
|
|
518 double ui1,ui2;
|
|
519 float *pi1,*pi2;
|
|
520 double *pui1,*pui2;
|
|
521
|
|
522 i1 = -55; i2= 55;
|
|
523 ui1 = 200; ui2= 128;
|
|
524 pi1 = &i1;
|
|
525 pi2 = &i2;
|
|
526 pui1 = &ui1;
|
|
527 pui2 = &ui2;
|
|
528 printf("code_dindirect %g %g %g %g\n",*pi1,*pi2,*pui1,*pui2);
|
|
529 }
|
|
530
|
196
|
531 #endif
|
197
|
532
|
196
|
533 #if LONGLONG_CODE
|
|
534 // code_lrindirect(int e1, int offset, int us);
|
197
|
535 void
|
|
536 code_lrindirect()
|
|
537 {
|
|
538 long long i1,i2;
|
|
539 unsigned long long ui1,ui2;
|
|
540 long long *pi1,*pi2;
|
|
541 unsigned long long *pui1,*pui2;
|
|
542
|
|
543 i1 = -55; i2= 55;
|
|
544 ui1 = 200; ui2= 128;
|
|
545 pi1 = &i1;
|
|
546 pi2 = &i2;
|
|
547 pui1 = &ui1;
|
|
548 pui2 = &ui2;
|
|
549 printf("code_lrindirect %lld %lld %llu %llu\n",*pi1,*pi2,*pui1,*pui2);
|
|
550 }
|
|
551
|
196
|
552 #endif
|
|
553
|
|
554
|
|
555 // code_assign_gvar(int e2,int creg,int byte)
|
|
556 // code_assign_lvar(int e2,int creg,int byte)
|
|
557 // code_assign_register(int e2,int byte,int creg)
|
|
558 // code_assign(int e2,int byte,int creg)
|
|
559 // code_register_assop(int e2,int op,int byte)
|
|
560 // code_assop(int op,int byte,int sign)
|
|
561 // tosop(int op,int oreg)
|
|
562 // case LSHIFT:
|
|
563 // case ULSHIFT:
|
|
564 // case RSHIFT:
|
|
565 // case URSHIFT:
|
|
566 // case ADD:
|
|
567 // case SUB:
|
|
568 // case CMP:
|
|
569 // case BAND:
|
|
570 // case EOR:
|
|
571 // case BOR:
|
|
572 // case MUL:
|
|
573 // case UMUL:
|
|
574 // case DIV:
|
|
575 // case UDIV:
|
|
576 // case MOD:
|
|
577 // case UMOD:
|
|
578
|
|
579 // oprtc(int op,int v)
|
|
580
|
|
581 // ld_indexx(int byte, int n, int xreg,int sign)
|
|
582
|
|
583 // rexpr(int e1, int l1, char *s,int t)
|
|
584
|
|
585 // jcond(int l, char cond)
|
|
586
|
|
587 // jmp(int l)
|
|
588 // code_enter(char *name)
|
|
589
|
|
590 #if FLOAT_CODE
|
|
591 // code_cmp_dregister(int e2,int d)
|
|
592 // code_dregister(int e2,int freg,int d)
|
|
593 // code_dassign_gvar(int e2,int freg,int d)
|
|
594 // code_dassign_lvar(int e2,int freg,int d)
|
|
595 // code_dassign(int e2,int freg,int d)
|
|
596 // code_dassign_dregister(int e2,int d,int freg)
|
|
597 // code_dconst(int e2,int freg,int d)
|
|
598 // code_dneg(int freg,int d)
|
|
599 // code_d2i(int freg0)
|
|
600 // code_i2d(int creg0)
|
|
601 // code_d2u(int freg0)
|
|
602 // code_u2d(int creg0)
|
|
603 // code_d2f(int freg)
|
|
604 // code_f2d(int freg)
|
|
605 // code_f2i(int freg) code_d2i(freg);
|
|
606 // code_f2u(int freg) code_d2u(freg);
|
|
607 // code_i2f(int creg) code_i2d(creg);
|
|
608 // code_u2f(int creg) code_u2d(creg);
|
|
609
|
|
610 // code_drgvar(int e2,int d,int freg)
|
|
611 // code_drlvar(int e2,int d,int freg)
|
|
612 // code_cmp_drgvar(int e2,int d)
|
|
613 // code_cmp_drlvar(int e2,int d)
|
|
614 // dtosop(int op,int e1)
|
|
615 // case FADD:
|
|
616 // case DADD: opn="fadd"; break;
|
|
617 // case FSUB:
|
|
618 // case DSUB: opn="fsub"; break;
|
|
619 // case FDIV:
|
|
620 // case DDIV: opn="fdiv"; break;
|
|
621 // case FMUL:
|
|
622 // case DMUL: opn="fmul"; break;
|
|
623 // case FCMP:
|
|
624 // case DCMP:
|
|
625 // case FCMPGE:
|
|
626 // case DCMPGE:
|
|
627
|
|
628 // code_dassop(int op,int d)
|
|
629 // code_dpreinc(int e1,int e2,int d,int reg)
|
|
630 // code_dpostinc(int e1,int e2,int d,int reg)
|
|
631 // drexpr(int e1, int e2,int l1, int op)
|
|
632
|
|
633 // case DOP+GE:
|
|
634 // case FOP+GE:
|
|
635 // case DOP+GT:
|
|
636 // case FOP+GT:
|
|
637 // case DOP+EQ:
|
|
638 // case FOP+EQ:
|
|
639 // case DOP+NEQ:
|
|
640 // case FOP+NEQ:
|
|
641 #endif
|
|
642
|
|
643 #if LONGLONG_CODE
|
|
644 // lrexpr(int e1, int e2,int l1, int op)
|
|
645 // int lpop_register()
|
|
646 // code_lregister(int e2,int reg)
|
|
647 // code_cmp_lregister(int reg)
|
|
648 // code_cmp_lrgvar(int e1,int e2)
|
|
649 // code_cmp_lrlvar(int e1,int e2)
|
|
650 // code_lassign(int e1,int e2)
|
|
651 // code_lassign_gvar(int e1,int e2)
|
|
652 // code_lassign_lvar(int e1,int e2)
|
|
653 // code_lassign_lregister(int e2,int reg)
|
|
654 // code_lconst(int e1,int e2)
|
|
655 // code_lneg(int e1,int e2)
|
|
656 // code_lrgvar(int e1,int e2)
|
|
657 // code_lrlvar(int e1,int e2)
|
|
658 // ltosop(int e1,int e2)
|
|
659 // code_i2ll(int creg)
|
|
660 // code_i2ull(int creg)
|
|
661 // code_u2ll(int creg)
|
|
662 // code_u2ull(int creg)
|
|
663 // code_ll2i(int creg)
|
|
664 // code_ll2u(int creg)
|
|
665 // code_ull2i(int creg)
|
|
666 // code_ull2u(int creg)
|
|
667 #if FLOAT_CODE
|
|
668 // code_d2ll(int creg)
|
|
669 // code_d2ull(int creg)
|
|
670 // code_f2ll(int creg)
|
|
671 // code_f2ull(int creg)
|
|
672 // code_ll2d(int creg)
|
|
673 // code_ll2f(int creg)
|
|
674 // code_ull2d(int creg)
|
|
675 // code_ull2f(int creg)
|
|
676 // code_ull2ll(int creg)
|
|
677 // code_ull2ull(int creg)
|
|
678 #endif
|
|
679
|
|
680 #if LONGLONG_CODE
|
|
681
|
|
682 // code_lpreinc(int e1,int e2,int reg)
|
|
683 // code_lpostinc(int e1,int e2,int reg)
|
|
684 // code_lassop(int op)
|
|
685
|
|
686 #endif
|
|
687 /* end */
|
|
688
|