micro-C base Continuation based C
Revision | 4aa276299cbe04afe8958c671912b8cab47281ce (tree) |
---|---|
Zeit | 2006-11-01 20:01:01 |
Autor | shinji_kono |
Commiter | shinji_kono |
*** empty log message ***
@@ -1,3529 +0,0 @@ | ||
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) | |
8 | - | |
9 | -extern int printf(const char *fmt,...); | |
10 | - | |
11 | -void | |
12 | -inline code_endian(){ | |
13 | - union { | |
14 | - unsigned char a[8]; | |
15 | - unsigned short s; | |
16 | - unsigned int i; | |
17 | - unsigned long long l; | |
18 | - } u; | |
19 | - u.s = 0x0123; | |
20 | - printf("#0019:endian s : %02x %02x\n",u.a[0],u.a[1]); | |
21 | - u.i = 0x01234567; | |
22 | - printf("#0021:endian i : %02x %02x %02x %02x\n",u.a[0],u.a[1],u.a[2],u.a[3]); | |
23 | - u.l = 0x0123456789abcdefULL; | |
24 | - printf("#0023:endian l : %02x %02x %02x %02x\n",u.a[0],u.a[1],u.a[2],u.a[3]); | |
25 | - printf("#0024:endian l : %02x %02x %02x %02x\n",u.a[4],u.a[5],u.a[6],u.a[7]); | |
26 | -} | |
27 | - | |
28 | -void | |
29 | -inline code_lvar(){ | |
30 | - char c1,c2; | |
31 | - unsigned char uc1,uc2; | |
32 | - int i1,i2; | |
33 | - short s1,s2; | |
34 | - unsigned short us1,us2; | |
35 | - | |
36 | - i1 = 1; i2 = -2; | |
37 | - s1 = -1; s2 = -3; us1 = 65535; us2 = 65535; | |
38 | - printf("#0037:code_lvar %d %d %d %d %u %u\n",i1,i2,s1,s2,us1,us2); | |
39 | - c1 = -1; c2 = -3; uc1 = 200; uc2 = 202; | |
40 | - printf("#0039:code_lvar %d %d %u %u\n",c1,c2,uc1,uc2); | |
41 | -} | |
42 | - | |
43 | -void | |
44 | -inline code_lvar_address(){ | |
45 | - char c1,c2,*p; | |
46 | - unsigned char uc1,uc2,*up; | |
47 | - int i1,i2,*ip; | |
48 | - short s1,s2,*sp; | |
49 | - unsigned short us1,us2,*usp; | |
50 | - | |
51 | - ip = &i1; *ip = 1; ip = &i2 ; *ip = -2; | |
52 | - sp = &s1 ; *sp = -1; sp = &s2 ; *sp = -3; | |
53 | - usp = &us1 ; *usp = 65535; usp = &us2 ; *usp = 65535; | |
54 | - printf("#0053:code_lvar %d %d %d %d %u %u\n",i1,i2,s1,s2,us1,us2); | |
55 | - p = &c1; | |
56 | - *p = -1; p = &c2; *p = -3; up = &uc1; *up = 200; up=&uc2; *up = 202; | |
57 | - printf("#0056:code_lvar %d %d %u %u\n",c1,c2,uc1,uc2); | |
58 | -} | |
59 | - | |
60 | -// code_label(int labelno) | |
61 | -void | |
62 | -inline code_label(){ | |
63 | - goto hoge; | |
64 | -hage: | |
65 | - goto hage; | |
66 | -hoge: | |
67 | - printf("#0066:code_label done\n"); | |
68 | -} | |
69 | - | |
70 | -// code_label(int labelno) | |
71 | -void | |
72 | -inline code_label1(){ | |
73 | - goto hoge; | |
74 | -hage: | |
75 | - goto hage; | |
76 | -hoge: | |
77 | - printf("#0076:code_label1 done\n"); | |
78 | -} | |
79 | - | |
80 | -// code_gvar(int e1,int creg) | |
81 | -// code_rgvar(int e1,int creg) | |
82 | -// code_crgvar(int e1,int creg,int sign,int sz) | |
83 | - | |
84 | -char c1,c2; | |
85 | -unsigned char uc1,uc2; | |
86 | -static char s_c1,s_c2; | |
87 | -static unsigned char s_uc1,s_uc2; | |
88 | -int i1,i2; | |
89 | -unsigned int ui1,ui2; | |
90 | -short s1,s2; | |
91 | -unsigned short us1,us2; | |
92 | -static int s_i1,s_i2; | |
93 | -static short s_s1,s_s2; | |
94 | -static unsigned short s_us1,s_us2; | |
95 | -#if FLOAT_CODE | |
96 | -float f0,f1; | |
97 | -double d0,d1; | |
98 | -static float s_f0,s_f1; | |
99 | -static double s_d0,s_d1; | |
100 | -#endif | |
101 | -#if LONGLONG_CODE | |
102 | -long long l0,l1; | |
103 | -unsigned long long ul0,ul1; | |
104 | -static long long s_l0,s_l1; | |
105 | -static unsigned long long s_ul0,s_ul1; | |
106 | -#endif | |
107 | - | |
108 | -void | |
109 | -inline code_gvar(){ | |
110 | - i1 = 1; i2 = -2; | |
111 | - s1 = -1; s2 = -3; us1 = 65535; us2 = 65535; | |
112 | - printf("#0111:code_gvar a %d %d %u %u %u %u\n",i1,i2,s1,s2,us1,us2); | |
113 | - c1 = -1; c2 = -3; uc1 = 200; uc2 = 202; | |
114 | - printf("#0113:code_gvar b %d %d %u %u\n",c1,c2,uc1,uc2); | |
115 | - | |
116 | - s_i1 = 1; s_i2 = 2; | |
117 | - s_s1 = -1; s_s2 = -3; s_us1 = 65535; s_us2 = 65535; | |
118 | - printf("#0117:code_gvar c %d %d %u %u %u %u\n",s_i1,s_i2,s1,s_s2,s_us1,s_us2); | |
119 | - s_c1 = -1; s_c2 = -3; s_uc1 = 200; s_uc2 = 202; | |
120 | - printf("#0119:code_gvar d %d %d %u %u\n",s_c1,s_c2,s_uc1,s_uc2); | |
121 | - s_i1 = 1; s_i2 = -2; | |
122 | -} | |
123 | - | |
124 | -// code_register(int e2,int creg) | |
125 | - | |
126 | -void | |
127 | -inline code_register(){ | |
128 | - register char c1,c2; | |
129 | - register unsigned char uc1,uc2; | |
130 | - register int i1,i2; | |
131 | - register short s1,s2; | |
132 | - register unsigned short us1,us2; | |
133 | - | |
134 | - s_i1 = 1; s_i2 = -2; // check ptr cache clear | |
135 | - | |
136 | - i1 = 1; i2 = -2; | |
137 | - s1 = -1; s2 = -3; us1 = 65535; us2 = 65535; | |
138 | - printf("#0137:code_lvar r %d %d %u %u %u %u\n",i1,i2,s1,s2,us1,us2); | |
139 | - c1 = -1; c2 = -3; uc1 = 200; uc2 = 202; | |
140 | - printf("#0139:code_gvar r %d %d %u %u\n",c1,c2,uc1,uc2); | |
141 | -} | |
142 | - | |
143 | -// code_fname(NMTBL *n,int creg) | |
144 | - | |
145 | -void | |
146 | -inline code_fname(){ | |
147 | - int i,j; | |
148 | - i = (int)code_fname; | |
149 | - j = (int)code_register; | |
150 | - printf("#0149:code_fname %d\n",i==j); | |
151 | -} | |
152 | - | |
153 | - | |
154 | -// code_neg(int creg) | |
155 | -void | |
156 | -inline code_neg(){ | |
157 | - int i,j; | |
158 | - i = 123123123;j = -32423; | |
159 | - printf("#0158:code_neg %d %d\n",-i,-j); | |
160 | -} | |
161 | - | |
162 | -// code_not(int creg) | |
163 | -void | |
164 | -inline code_not(){ | |
165 | - int i,j; | |
166 | - i = 123123123;j = 0; | |
167 | - printf("#0166:code_neg %d %d\n",~i,~j); | |
168 | -} | |
169 | - | |
170 | -// code_lnot(int creg) | |
171 | -void | |
172 | -inline code_lnot(){ | |
173 | - int i,j; | |
174 | - i = 123123123;j = 0; | |
175 | - printf("#0174:code_neg %d %d\n",!i,!j); | |
176 | -} | |
177 | - | |
178 | -// code_preinc(int e1,int e2,int dir,int sign,int sz,int reg) | |
179 | -void | |
180 | -inline code_preinc(){ | |
181 | - int i,j; | |
182 | - i = 123123123;j = 0; | |
183 | - printf("#0182:code_preinc i %d %d",++i,--j); | |
184 | - printf("#0183: %d %d\n",i,j); | |
185 | -} | |
186 | - | |
187 | -// code_postinc(int e1,int e2,int dir,int sign,int sz,int reg) | |
188 | -void | |
189 | -inline code_upostinc(){ | |
190 | - unsigned int i,j; | |
191 | - i = 123123123;j = 0; | |
192 | - printf("#0191:code_upreinc u %d %d",i++,j--); | |
193 | - printf("#0192: %d %d\n",i,j); | |
194 | -} | |
195 | - | |
196 | -// code_postinc(int e1,int e2,int dir,int sign,int sz,int reg) | |
197 | -void | |
198 | -inline code_postinc(){ | |
199 | - int i,j; | |
200 | - i = 123123123;j = 0; | |
201 | - printf("#0200:code_postinc i %d %d",i++,j--); | |
202 | - printf("#0201: %d %d\n",i,j); | |
203 | -} | |
204 | - | |
205 | -// code_preinc(int e1,int e2,int dir,int sign,int sz,int reg) | |
206 | -void | |
207 | -inline code_upreinc(){ | |
208 | - unsigned int i,j; | |
209 | - i = 123123123;j = 0; | |
210 | - printf("#0209:code_upreinc u %d %d",++i,--j); | |
211 | - printf("#0210: %d %d\n",i,j); | |
212 | -} | |
213 | - | |
214 | -// code_preinc(int e1,int e2,int dir,int sign,int sz,int reg) | |
215 | -void | |
216 | -inline code_register_preinc(){ | |
217 | - register int i,j; | |
218 | - i = 123123123;j = 0; | |
219 | - printf("#0218:code_preinc i r %d %d",++i,--j); | |
220 | - printf("#0219: %d %d\n",i,j); | |
221 | -} | |
222 | - | |
223 | -// code_postinc(int e1,int e2,int dir,int sign,int sz,int reg) | |
224 | -void | |
225 | -inline code_register_upostinc(){ | |
226 | - register unsigned int i,j; | |
227 | - i = 123123123;j = 0; | |
228 | - printf("#0227:code_upreinc u r %d %d",i++,j--); | |
229 | - printf("#0228: %d %d\n",i,j); | |
230 | -} | |
231 | - | |
232 | -// code_postinc(int e1,int e2,int dir,int sign,int sz,int reg) | |
233 | -void | |
234 | -inline code_register_postinc(){ | |
235 | - register int i,j; | |
236 | - i = 123123123;j = 0; | |
237 | - printf("#0236:code_postinc i r %d %d",i++,j--); | |
238 | - printf("#0237: %d %d\n",i,j); | |
239 | -} | |
240 | - | |
241 | -// code_register_preinc(int e1,int e2,int dir,int sign,int sz,int reg) | |
242 | -void | |
243 | -inline code_register_upreinc(){ | |
244 | - register unsigned int i,j; | |
245 | - i = 123123123;j = 0; | |
246 | - printf("#0245:code_upreinc u r %d %d",++i,--j); | |
247 | - printf("#0246: %d %d\n",i,j); | |
248 | -} | |
249 | - | |
250 | -// code_return(int creg) | |
251 | - | |
252 | - | |
253 | -int | |
254 | - code_return_int0() | |
255 | -{ | |
256 | - return 1; | |
257 | -} | |
258 | -void | |
259 | -inline code_return_int(){ | |
260 | - printf("#0259:code_return_int %d\n",code_return_int0()); | |
261 | -} | |
262 | - | |
263 | -#if FLOAT_CODE | |
264 | -float | |
265 | - code_return_float0() | |
266 | -{ | |
267 | - return 1.0; | |
268 | -} | |
269 | -void | |
270 | -inline code_return_float(){ | |
271 | - printf("#0270:code_return_float %g\n",code_return_float0()); | |
272 | -} | |
273 | - | |
274 | -double | |
275 | - code_return_double0() | |
276 | -{ | |
277 | - return 1.0; | |
278 | -} | |
279 | -void | |
280 | -inline code_return_double(){ | |
281 | - printf("#0280:code_return_double %g\n",code_return_double0()); | |
282 | -} | |
283 | - | |
284 | -#endif | |
285 | - | |
286 | -#if LONGLONG_CODE | |
287 | -long long | |
288 | - code_return_longlong0() | |
289 | -{ | |
290 | - return 10LL; | |
291 | -} | |
292 | -void | |
293 | -inline code_return_longlong(){ | |
294 | - printf("#0293:code_return_longlong %lld\n",code_return_longlong0()); | |
295 | -} | |
296 | - | |
297 | -#endif | |
298 | - | |
299 | -struct aa { char a[100]; } a0; | |
300 | -struct aa | |
301 | - code_return_struct0(/*int j*/) | |
302 | -{ | |
303 | - a0.a[55]=3; | |
304 | - return a0; | |
305 | -} | |
306 | - | |
307 | -void | |
308 | -inline code_return_struct1(){ | |
309 | - int i = code_return_struct0(/*1*/).a[55]; | |
310 | - // int i; | |
311 | - // i = code_return_struct0(i).a[55]; | |
312 | - printf("#0311:code_return_struct %d\n", i); | |
313 | -} | |
314 | - | |
315 | -void | |
316 | -inline code_return_struct(){ | |
317 | - printf("#0316:code_return_struct %d\n", code_return_struct0().a[55]); | |
318 | -} | |
319 | - | |
320 | -// code_gt(int cond) | |
321 | - | |
322 | -void | |
323 | -inline code_gt(){ | |
324 | - int reg,mthree=-3,seven=7,mtwo=-2,zero=0,three=3; | |
325 | - if (i1>i2) | |
326 | - printf("#0325:code_gt 1\n"); | |
327 | - else | |
328 | - printf("#0327:code_gt 0\n"); | |
329 | - for (reg=-3;reg<7;reg++) { | |
330 | - if (0<reg && reg<3) | |
331 | - printf("#0330:reg=%d code_gt 0<reg && reg <3\n",reg); | |
332 | - } | |
333 | - for (reg=-3;reg<7;reg++) { | |
334 | - if (-2<reg && reg<0) | |
335 | - printf("#0334:reg=%d code_gt -2<reg && reg <0\n",reg); | |
336 | - } | |
337 | - for (reg=mthree;reg<seven;reg++) { | |
338 | - if (zero<reg && reg<three) | |
339 | - printf("#0338:reg=%d code_gt 0<reg && reg <3\n",reg); | |
340 | - } | |
341 | - for (reg=mthree;reg<seven;reg++) { | |
342 | - if (mtwo<reg && reg<zero) | |
343 | - printf("#0342:reg=%d code_gt -2<reg && reg <0\n",reg); | |
344 | - } | |
345 | - | |
346 | -} | |
347 | - | |
348 | -// code_ugt(int cond) | |
349 | -void | |
350 | -inline code_ugt(){ | |
351 | - unsigned reg,zero=0,one=1,seven=7,three=3,five=5; | |
352 | - if (ui1>ui2) | |
353 | - printf("#0352:code_ugt 1\n"); | |
354 | - else | |
355 | - printf("#0354:code_ugt 0\n"); | |
356 | - for (reg=0;reg<7;reg++) { | |
357 | - if (0<reg && reg<3) | |
358 | - printf("#0357:reg=%d code_ugt 0<reg && reg <3\n",reg); | |
359 | - } | |
360 | - for (reg=0;reg<7;reg++) { | |
361 | - if (1<reg && reg<5) | |
362 | - printf("#0361:reg=%d code_ugt 1<reg && reg <5\n",reg); | |
363 | - } | |
364 | - for (reg=zero;reg<seven;reg++) { | |
365 | - if (zero<reg && reg<three) | |
366 | - printf("#0365:reg=%d code_ugt 0<reg && reg <3\n",reg); | |
367 | - } | |
368 | - for (reg=zero;reg<seven;reg++) { | |
369 | - if (one<reg && reg<five) | |
370 | - printf("#0369:reg=%d code_ugt 1<reg && reg <5\n",reg); | |
371 | - } | |
372 | -} | |
373 | - | |
374 | -// code_ge(int cond) | |
375 | -void | |
376 | -inline code_ge(){ | |
377 | - int reg,mthree=-3,seven=7,mtwo=-2,zero=0,three=3; | |
378 | - if (i1>=i2) | |
379 | - printf("#0378:code_ge 1\n"); | |
380 | - else | |
381 | - printf("#0380:code_ge 0\n"); | |
382 | - for (reg=-3;reg<7;reg++) { | |
383 | - if (0<=reg && reg<=3) | |
384 | - printf("#0383:reg=%d code_ge 0<=reg && reg <=3\n",reg); | |
385 | - } | |
386 | - for (reg=-3;reg<7;reg++) { | |
387 | - if (-2<=reg && reg<=0) | |
388 | - printf("#0387:reg=%d code_ge -2<=reg && reg <=0\n",reg); | |
389 | - } | |
390 | - for (reg=mthree;reg<seven;reg++) { | |
391 | - if (zero<=reg && reg<=three) | |
392 | - printf("#0391:reg=%d code_ge 0<=reg && reg <=3\n",reg); | |
393 | - } | |
394 | - for (reg=mthree;reg<seven;reg++) { | |
395 | - if (mtwo<=reg && reg<=zero) | |
396 | - printf("#0395:reg=%d code_ge -2<=reg && reg <=0\n",reg); | |
397 | - } | |
398 | -} | |
399 | - | |
400 | -// code_uge(int cond) | |
401 | -void | |
402 | -inline code_uge(){ | |
403 | - unsigned reg,zero=0,one=1,seven=7,three=3,five=5; | |
404 | - if (ui1>=ui2) | |
405 | - printf("#0404:code_uge 1\n"); | |
406 | - else | |
407 | - printf("#0406:code_uge 0\n"); | |
408 | - for (reg=0;reg<7;reg++) { | |
409 | - if (0<=reg && reg<=3) | |
410 | - printf("#0409:reg=%d code_uge 0<=reg && reg <=3\n",reg); | |
411 | - } | |
412 | - for (reg=0;reg<7;reg++) { | |
413 | - if (1<=reg && reg<=5) | |
414 | - printf("#0413:reg=%d code_uge 1<=reg && reg <=5\n",reg); | |
415 | - } | |
416 | - for (reg=zero;reg<seven;reg++) { | |
417 | - if (zero<=reg && reg<=three) | |
418 | - printf("#0417:reg=%d code_uge 0<=reg && reg <=3\n",reg); | |
419 | - } | |
420 | - for (reg=zero;reg<seven;reg++) { | |
421 | - if (one<=reg && reg<=five) | |
422 | - printf("#0421:reg=%d code_uge 1<=reg && reg <=5\n",reg); | |
423 | - } | |
424 | -} | |
425 | - | |
426 | -// code_eq(int cond) | |
427 | -void | |
428 | -inline code_eq(){ | |
429 | - unsigned int ui3 = 3; | |
430 | - int i3 = 3; | |
431 | - | |
432 | - if (ui1==ui2) | |
433 | - printf("#0432:code_eq 1\n"); | |
434 | - else | |
435 | - printf("#0434:code_eq 0\n"); | |
436 | - if (i1!=i2) | |
437 | - printf("#0436:code_neq 1\n"); | |
438 | - else | |
439 | - printf("#0438:code_neq 0\n"); | |
440 | - | |
441 | - if (3==ui3) | |
442 | - printf("#0441:code_eq 1\n"); | |
443 | - else | |
444 | - printf("#0443:code_eq 0\n"); | |
445 | - if (3!=i3) | |
446 | - printf("#0445:code_neq 1\n"); | |
447 | - else | |
448 | - printf("#0447:code_neq 0\n"); | |
449 | -} | |
450 | - | |
451 | -// code_bool(int e1) | |
452 | - | |
453 | -void | |
454 | -inline code_bool(){ | |
455 | - int i1l,i2l; | |
456 | - unsigned int ui1l,ui2l; | |
457 | - | |
458 | - ui2 = ui1-3; | |
459 | - for(i2=i1-3;i2<i1+3;i2++) { | |
460 | - printf("#0459:code_bool %d>%d gvar %d\n",i1,i2,i1>i2); | |
461 | - printf("#0460:code_bool %u>%u gvar %d u\n",ui1,ui2,ui1>ui2); | |
462 | - printf("#0461:code_bool %d>=%d gvar %d\n",i1,i2,i1>=i2); | |
463 | - printf("#0462:code_bool %u>=%u gvar %d u\n",ui1,ui2,ui1>=ui2); | |
464 | - printf("#0463:code_bool %d<%d gvar %d\n",i1,i2,i1<i2); | |
465 | - printf("#0464:code_bool %u<%u gvar %d u\n",ui1,ui2,ui1<ui2); | |
466 | - printf("#0465:code_bool %d<=%d gvar %d\n",i1,i2,i1<=i2); | |
467 | - printf("#0466:code_bool %u<=%u gvar %d u\n",ui1,ui2,ui1<=ui2); | |
468 | - printf("#0467:code_bool %u==%u gvar %d u\n",ui1,ui2,ui1==ui2); | |
469 | - printf("#0468:code_bool %u!=%u gvar %d\n",i1,i2,i1!=i2); | |
470 | - ui2++; | |
471 | - } | |
472 | - ui1l = ui1; | |
473 | - i1l = i1; | |
474 | - ui2l = ui1-3; | |
475 | - for(i2l=i1-3;i2l<i1l+3;i2l++) { | |
476 | - printf("#0475:code_bool %d>%d lvar %d\n",i1l,i2l,i1l>i2l); | |
477 | - printf("#0476:code_bool %u>%u lvar %d u\n",ui1l,ui2l,ui1l>ui2l); | |
478 | - printf("#0477:code_bool %d>=%d lvar %d\n",i1l,i2l,i1l>=i2l); | |
479 | - printf("#0478:code_bool %u>=%u lvar %d u\n",ui1l,ui2l,ui1l>=ui2l); | |
480 | - printf("#0479:code_bool %d<%d lvar %d\n",i1l,i2l,i1l<i2l); | |
481 | - printf("#0480:code_bool %u<%u lvar %d u\n",ui1l,ui2l,ui1l<ui2l); | |
482 | - printf("#0481:code_bool %d<=%d lvar %d\n",i1l,i2l,i1l<=i2l); | |
483 | - printf("#0482:code_bool %u<=%u lvar %d u\n",ui1l,ui2l,ui1l<=ui2l); | |
484 | - printf("#0483:code_bool %u==%u lvar %d u\n",ui1l,ui2l,ui1l==ui2l); | |
485 | - printf("#0484:code_bool %u!=%u lvar %d\n",i1l,i2l,i1l!=i2l); | |
486 | - ui2l++; | |
487 | - } | |
488 | -} | |
489 | - | |
490 | -void | |
491 | -inline code_bool_const(){ | |
492 | - int i1l,i2l; | |
493 | - unsigned int ui1l,ui2l; | |
494 | - | |
495 | - ui2 = ui1-3; | |
496 | - for(i2=i1-3;i2<i1+3;i2++) { | |
497 | - printf("#0496:code_bool_const %d>%d gvar %d\n",-4,i2,-4>i2); | |
498 | - printf("#0497:code_bool_const %u>%u gvar %d u\n",0,ui2,0>ui2); | |
499 | - printf("#0498:code_bool_const %d>=%d gvar %d\n",-4,i2,-4>=i2); | |
500 | - printf("#0499:code_bool_const %u>=%u gvar %d u\n",0,ui2,0>=ui2); | |
501 | - printf("#0500:code_bool_const %d<%d gvar %d\n",-4,i2,-4<i2); | |
502 | - printf("#0501:code_bool_const %u<%u gvar %d u\n",0,ui2,0<ui2); | |
503 | - printf("#0502:code_bool_const %d<=%d gvar %d\n",-4,i2,-4<=i2); | |
504 | - printf("#0503:code_bool_const %u<=%u gvar %d u\n",0,ui2,0<=ui2); | |
505 | - printf("#0504:code_bool_const %u==%u gvar %d u\n",0,ui2,0==ui2); | |
506 | - printf("#0505:code_bool_const %u!=%u gvar %d\n",-4,i2,-4!=i2); | |
507 | - printf("#0506:code_bool_const %d>%d gvar %d\n",-3,i2,-3>i2); | |
508 | - printf("#0507:code_bool_const %u>%u gvar %d u\n",1,ui2,1>ui2); | |
509 | - printf("#0508:code_bool_const %d>=%d gvar %d\n",-3,i2,-3>=i2); | |
510 | - printf("#0509:code_bool_const %u>=%u gvar %d u\n",1,ui2,1>=ui2); | |
511 | - printf("#0510:code_bool_const %d<%d gvar %d\n",-3,i2,-3<i2); | |
512 | - printf("#0511:code_bool_const %u<%u gvar %d u\n",1,ui2,1<ui2); | |
513 | - printf("#0512:code_bool_const %d<=%d gvar %d\n",-3,i2,-3<=i2); | |
514 | - printf("#0513:code_bool_const %u<=%u gvar %d u\n",1,ui2,1<=ui2); | |
515 | - printf("#0514:code_bool_const %u==%u gvar %d u\n",1,ui2,1==ui2); | |
516 | - printf("#0515:code_bool_const %u!=%u gvar %d\n",-3,i2,-3!=i2); | |
517 | - printf("#0516:code_bool_const %d>%d gvar %d\n",-2,i2,-2>i2); | |
518 | - printf("#0517:code_bool_const %u>%u gvar %d u\n",2,ui2,2>ui2); | |
519 | - printf("#0518:code_bool_const %d>=%d gvar %d\n",-2,i2,-2>=i2); | |
520 | - printf("#0519:code_bool_const %u>=%u gvar %d u\n",2,ui2,2>=ui2); | |
521 | - printf("#0520:code_bool_const %d<%d gvar %d\n",-2,i2,-2<i2); | |
522 | - printf("#0521:code_bool_const %u<%u gvar %d u\n",2,ui2,2<ui2); | |
523 | - printf("#0522:code_bool_const %d<=%d gvar %d\n",-2,i2,-2<=i2); | |
524 | - printf("#0523:code_bool_const %u<=%u gvar %d u\n",2,ui2,2<=ui2); | |
525 | - printf("#0524:code_bool_const %u==%u gvar %d u\n",2,ui2,2==ui2); | |
526 | - printf("#0525:code_bool_const %u!=%u gvar %d\n",-2,i2,-2!=i2); | |
527 | - printf("#0526:code_bool_const %d>%d gvar %d\n",-1,i2,-1>i2); | |
528 | - printf("#0527:code_bool_const %u>%u gvar %d u\n",3,ui2,3>ui2); | |
529 | - printf("#0528:code_bool_const %d>=%d gvar %d\n",-1,i2,-1>=i2); | |
530 | - printf("#0529:code_bool_const %u>=%u gvar %d u\n",3,ui2,3>=ui2); | |
531 | - printf("#0530:code_bool_const %d<%d gvar %d\n",-1,i2,-1<i2); | |
532 | - printf("#0531:code_bool_const %u<%u gvar %d u\n",3,ui2,3<ui2); | |
533 | - printf("#0532:code_bool_const %d<=%d gvar %d\n",-1,i2,-1<=i2); | |
534 | - printf("#0533:code_bool_const %u<=%u gvar %d u\n",3,ui2,3<=ui2); | |
535 | - printf("#0534:code_bool_const %u==%u gvar %d u\n",3,ui2,3==ui2); | |
536 | - printf("#0535:code_bool_const %u!=%u gvar %d\n",-1,i2,-1!=i2); | |
537 | - printf("#0536:code_bool_const %d>%d gvar %d\n",0,i2,0>i2); | |
538 | - printf("#0537:code_bool_const %u>%u gvar %d u\n",4,ui2,4>ui2); | |
539 | - printf("#0538:code_bool_const %d>=%d gvar %d\n",0,i2,0>=i2); | |
540 | - printf("#0539:code_bool_const %u>=%u gvar %d u\n",4,ui2,4>=ui2); | |
541 | - printf("#0540:code_bool_const %d<%d gvar %d\n",0,i2,0<i2); | |
542 | - printf("#0541:code_bool_const %u<%u gvar %d u\n",4,ui2,4<ui2); | |
543 | - printf("#0542:code_bool_const %d<=%d gvar %d\n",0,i2,0<=i2); | |
544 | - printf("#0543:code_bool_const %u<=%u gvar %d u\n",4,ui2,4<=ui2); | |
545 | - printf("#0544:code_bool_const %u==%u gvar %d u\n",4,ui2,4==ui2); | |
546 | - printf("#0545:code_bool_const %u!=%u gvar %d\n",0,i2,0!=i2); | |
547 | - printf("#0546:code_bool_const %d>%d gvar %d\n",1,i2,1>i2); | |
548 | - printf("#0547:code_bool_const %u>%u gvar %d u\n",5,ui2,5>ui2); | |
549 | - printf("#0548:code_bool_const %d>=%d gvar %d\n",1,i2,1>=i2); | |
550 | - printf("#0549:code_bool_const %u>=%u gvar %d u\n",5,ui2,5>=ui2); | |
551 | - printf("#0550:code_bool_const %d<%d gvar %d\n",1,i2,1<i2); | |
552 | - printf("#0551:code_bool_const %u<%u gvar %d u\n",5,ui2,5<ui2); | |
553 | - printf("#0552:code_bool_const %d<=%d gvar %d\n",1,i2,1<=i2); | |
554 | - printf("#0553:code_bool_const %u<=%u gvar %d u\n",5,ui2,5<=ui2); | |
555 | - printf("#0554:code_bool_const %u==%u gvar %d u\n",5,ui2,5==ui2); | |
556 | - printf("#0555:code_bool_const %u!=%u gvar %d\n",1,i2,1!=i2); | |
557 | - printf("#0556:code_bool_const %d>%d gvar %d\n",2,i2,2>i2); | |
558 | - printf("#0557:code_bool_const %u>%u gvar %d u\n",6,ui2,6>ui2); | |
559 | - printf("#0558:code_bool_const %d>=%d gvar %d\n",2,i2,2>=i2); | |
560 | - printf("#0559:code_bool_const %u>=%u gvar %d u\n",6,ui2,6>=ui2); | |
561 | - printf("#0560:code_bool_const %d<%d gvar %d\n",2,i2,2<i2); | |
562 | - printf("#0561:code_bool_const %u<%u gvar %d u\n",6,ui2,6<ui2); | |
563 | - printf("#0562:code_bool_const %d<=%d gvar %d\n",2,i2,2<=i2); | |
564 | - printf("#0563:code_bool_const %u<=%u gvar %d u\n",6,ui2,6<=ui2); | |
565 | - printf("#0564:code_bool_const %u==%u gvar %d u\n",6,ui2,6==ui2); | |
566 | - printf("#0565:code_bool_const %u!=%u gvar %d\n",2,i2,2!=i2); | |
567 | - printf("#0566:code_bool_const %d>%d gvar %d\n",3,i2,3>i2); | |
568 | - printf("#0567:code_bool_const %u>%u gvar %d u\n",7,ui2,7>ui2); | |
569 | - printf("#0568:code_bool_const %d>=%d gvar %d\n",3,i2,3>=i2); | |
570 | - printf("#0569:code_bool_const %u>=%u gvar %d u\n",7,ui2,7>=ui2); | |
571 | - printf("#0570:code_bool_const %d<%d gvar %d\n",3,i2,3<i2); | |
572 | - printf("#0571:code_bool_const %u<%u gvar %d u\n",7,ui2,7<ui2); | |
573 | - printf("#0572:code_bool_const %d<=%d gvar %d\n",3,i2,3<=i2); | |
574 | - printf("#0573:code_bool_const %u<=%u gvar %d u\n",7,ui2,7<=ui2); | |
575 | - printf("#0574:code_bool_const %u==%u gvar %d u\n",7,ui2,7==ui2); | |
576 | - printf("#0575:code_bool_const %u!=%u gvar %d\n",3,i2,3!=i2); | |
577 | - ui2++; | |
578 | - } | |
579 | - ui1l = ui1; | |
580 | - i1l = i1; | |
581 | - ui2l = ui1-3; | |
582 | - for(i2l=i1-3;i2l<i1l+3;i2l++) { | |
583 | - printf("#0582:code_bool_const %d>%d gvar %d\n",-4,i2l,-4>i2l); | |
584 | - printf("#0583:code_bool_const %u>%u gvar %d u\n",0,ui2l,0>ui2l); | |
585 | - printf("#0584:code_bool_const %d>=%d gvar %d\n",-4,i2l,-4>=i2l); | |
586 | - printf("#0585:code_bool_const %u>=%u gvar %d u\n",0,ui2l,0>=ui2l); | |
587 | - printf("#0586:code_bool_const %d<%d gvar %d\n",-4,i2l,-4<i2l); | |
588 | - printf("#0587:code_bool_const %u<%u gvar %d u\n",0,ui2l,0<ui2l); | |
589 | - printf("#0588:code_bool_const %d<=%d gvar %d\n",-4,i2l,-4<=i2l); | |
590 | - printf("#0589:code_bool_const %u<=%u gvar %d u\n",0,ui2l,0<=ui2l); | |
591 | - printf("#0590:code_bool_const %u==%u gvar %d u\n",0,ui2l,0==ui2l); | |
592 | - printf("#0591:code_bool_const %u!=%u gvar %d\n",-4,i2l,-4!=i2l); | |
593 | - printf("#0592:code_bool_const %d>%d gvar %d\n",-3,i2l,-3>i2l); | |
594 | - printf("#0593:code_bool_const %u>%u gvar %d u\n",1,ui2l,1>ui2l); | |
595 | - printf("#0594:code_bool_const %d>=%d gvar %d\n",-3,i2l,-3>=i2l); | |
596 | - printf("#0595:code_bool_const %u>=%u gvar %d u\n",1,ui2l,1>=ui2l); | |
597 | - printf("#0596:code_bool_const %d<%d gvar %d\n",-3,i2l,-3<i2l); | |
598 | - printf("#0597:code_bool_const %u<%u gvar %d u\n",1,ui2l,1<ui2l); | |
599 | - printf("#0598:code_bool_const %d<=%d gvar %d\n",-3,i2l,-3<=i2l); | |
600 | - printf("#0599:code_bool_const %u<=%u gvar %d u\n",1,ui2l,1<=ui2l); | |
601 | - printf("#0600:code_bool_const %u==%u gvar %d u\n",1,ui2l,1==ui2l); | |
602 | - printf("#0601:code_bool_const %u!=%u gvar %d\n",-3,i2l,-3!=i2l); | |
603 | - printf("#0602:code_bool_const %d>%d gvar %d\n",-2,i2l,-2>i2l); | |
604 | - printf("#0603:code_bool_const %u>%u gvar %d u\n",2,ui2l,2>ui2l); | |
605 | - printf("#0604:code_bool_const %d>=%d gvar %d\n",-2,i2l,-2>=i2l); | |
606 | - printf("#0605:code_bool_const %u>=%u gvar %d u\n",2,ui2l,2>=ui2l); | |
607 | - printf("#0606:code_bool_const %d<%d gvar %d\n",-2,i2l,-2<i2l); | |
608 | - printf("#0607:code_bool_const %u<%u gvar %d u\n",2,ui2l,2<ui2l); | |
609 | - printf("#0608:code_bool_const %d<=%d gvar %d\n",-2,i2l,-2<=i2l); | |
610 | - printf("#0609:code_bool_const %u<=%u gvar %d u\n",2,ui2l,2<=ui2l); | |
611 | - printf("#0610:code_bool_const %u==%u gvar %d u\n",2,ui2l,2==ui2l); | |
612 | - printf("#0611:code_bool_const %u!=%u gvar %d\n",-2,i2l,-2!=i2l); | |
613 | - printf("#0612:code_bool_const %d>%d gvar %d\n",-1,i2l,-1>i2l); | |
614 | - printf("#0613:code_bool_const %u>%u gvar %d u\n",3,ui2l,3>ui2l); | |
615 | - printf("#0614:code_bool_const %d>=%d gvar %d\n",-1,i2l,-1>=i2l); | |
616 | - printf("#0615:code_bool_const %u>=%u gvar %d u\n",3,ui2l,3>=ui2l); | |
617 | - printf("#0616:code_bool_const %d<%d gvar %d\n",-1,i2l,-1<i2l); | |
618 | - printf("#0617:code_bool_const %u<%u gvar %d u\n",3,ui2l,3<ui2l); | |
619 | - printf("#0618:code_bool_const %d<=%d gvar %d\n",-1,i2l,-1<=i2l); | |
620 | - printf("#0619:code_bool_const %u<=%u gvar %d u\n",3,ui2l,3<=ui2l); | |
621 | - printf("#0620:code_bool_const %u==%u gvar %d u\n",3,ui2l,3==ui2l); | |
622 | - printf("#0621:code_bool_const %u!=%u gvar %d\n",-1,i2l,-1!=i2l); | |
623 | - printf("#0622:code_bool_const %d>%d gvar %d\n",0,i2l,0>i2l); | |
624 | - printf("#0623:code_bool_const %u>%u gvar %d u\n",4,ui2l,4>ui2l); | |
625 | - printf("#0624:code_bool_const %d>=%d gvar %d\n",0,i2l,0>=i2l); | |
626 | - printf("#0625:code_bool_const %u>=%u gvar %d u\n",4,ui2l,4>=ui2l); | |
627 | - printf("#0626:code_bool_const %d<%d gvar %d\n",0,i2l,0<i2l); | |
628 | - printf("#0627:code_bool_const %u<%u gvar %d u\n",4,ui2l,4<ui2l); | |
629 | - printf("#0628:code_bool_const %d<=%d gvar %d\n",0,i2l,0<=i2l); | |
630 | - printf("#0629:code_bool_const %u<=%u gvar %d u\n",4,ui2l,4<=ui2l); | |
631 | - printf("#0630:code_bool_const %u==%u gvar %d u\n",4,ui2l,4==ui2l); | |
632 | - printf("#0631:code_bool_const %u!=%u gvar %d\n",0,i2l,0!=i2l); | |
633 | - printf("#0632:code_bool_const %d>%d gvar %d\n",1,i2l,1>i2l); | |
634 | - printf("#0633:code_bool_const %u>%u gvar %d u\n",5,ui2l,5>ui2l); | |
635 | - printf("#0634:code_bool_const %d>=%d gvar %d\n",1,i2l,1>=i2l); | |
636 | - printf("#0635:code_bool_const %u>=%u gvar %d u\n",5,ui2l,5>=ui2l); | |
637 | - printf("#0636:code_bool_const %d<%d gvar %d\n",1,i2l,1<i2l); | |
638 | - printf("#0637:code_bool_const %u<%u gvar %d u\n",5,ui2l,5<ui2l); | |
639 | - printf("#0638:code_bool_const %d<=%d gvar %d\n",1,i2l,1<=i2l); | |
640 | - printf("#0639:code_bool_const %u<=%u gvar %d u\n",5,ui2l,5<=ui2l); | |
641 | - printf("#0640:code_bool_const %u==%u gvar %d u\n",5,ui2l,5==ui2l); | |
642 | - printf("#0641:code_bool_const %u!=%u gvar %d\n",1,i2l,1!=i2l); | |
643 | - printf("#0642:code_bool_const %d>%d gvar %d\n",2,i2l,2>i2l); | |
644 | - printf("#0643:code_bool_const %u>%u gvar %d u\n",6,ui2l,6>ui2l); | |
645 | - printf("#0644:code_bool_const %d>=%d gvar %d\n",2,i2l,2>=i2l); | |
646 | - printf("#0645:code_bool_const %u>=%u gvar %d u\n",6,ui2l,6>=ui2l); | |
647 | - printf("#0646:code_bool_const %d<%d gvar %d\n",2,i2l,2<i2l); | |
648 | - printf("#0647:code_bool_const %u<%u gvar %d u\n",6,ui2l,6<ui2l); | |
649 | - printf("#0648:code_bool_const %d<=%d gvar %d\n",2,i2l,2<=i2l); | |
650 | - printf("#0649:code_bool_const %u<=%u gvar %d u\n",6,ui2l,6<=ui2l); | |
651 | - printf("#0650:code_bool_const %u==%u gvar %d u\n",6,ui2l,6==ui2l); | |
652 | - printf("#0651:code_bool_const %u!=%u gvar %d\n",2,i2l,2!=i2l); | |
653 | - printf("#0652:code_bool_const %d>%d gvar %d\n",3,i2l,3>i2l); | |
654 | - printf("#0653:code_bool_const %u>%u gvar %d u\n",7,ui2l,7>ui2l); | |
655 | - printf("#0654:code_bool_const %d>=%d gvar %d\n",3,i2l,3>=i2l); | |
656 | - printf("#0655:code_bool_const %u>=%u gvar %d u\n",7,ui2l,7>=ui2l); | |
657 | - printf("#0656:code_bool_const %d<%d gvar %d\n",3,i2l,3<i2l); | |
658 | - printf("#0657:code_bool_const %u<%u gvar %d u\n",7,ui2l,7<ui2l); | |
659 | - printf("#0658:code_bool_const %d<=%d gvar %d\n",3,i2l,3<=i2l); | |
660 | - printf("#0659:code_bool_const %u<=%u gvar %d u\n",7,ui2l,7<=ui2l); | |
661 | - printf("#0660:code_bool_const %u==%u gvar %d u\n",7,ui2l,7==ui2l); | |
662 | - printf("#0661:code_bool_const %u!=%u gvar %d\n",3,i2l,3!=i2l); | |
663 | - ui2l++; | |
664 | - } | |
665 | -} | |
666 | - | |
667 | -void | |
668 | -inline code_cmp(){ | |
669 | - char c1,c2; | |
670 | - unsigned char uc1,uc2; | |
671 | - int i1,i2; | |
672 | - short s1,s2; | |
673 | - unsigned short us1,us2; | |
674 | - | |
675 | - i1 = 1; i2 = -2; | |
676 | - s1 = -1; s2 = -3; us1 = 65535; us2 = 65535; | |
677 | - c1 = -1; c2 = -3; uc1 = 200; uc2 = 202; | |
678 | - i1 && printf("#0677:code_bool local 1\n"); | |
679 | - s1 && printf("#0678:code_bool local 2\n"); | |
680 | - us1 && printf("#0679:code_bool local 3\n"); | |
681 | - c1 && printf("#0680:code_bool local 4\n"); | |
682 | - uc1 && printf("#0681:code_bool local 5\n"); | |
683 | - | |
684 | -} | |
685 | -void | |
686 | -inline code_cmp_global(){ | |
687 | - i1 = 1; i2 = -2; | |
688 | - s1 = -1; s2 = -3; us1 = 65535; us2 = 65535; | |
689 | - c1 = -1; c2 = -3; uc1 = 200; uc2 = 202; | |
690 | - i1 && printf("#0689:code_bool global 1\n"); | |
691 | - s1 && printf("#0690:code_bool global 2\n"); | |
692 | - us1 && printf("#0691:code_bool global 3\n"); | |
693 | - c1 && printf("#0692:code_bool global 4\n"); | |
694 | - uc1 && printf("#0693:code_bool global 5\n"); | |
695 | -} | |
696 | - | |
697 | -void | |
698 | -inline code_cmp_register(){ | |
699 | - register char c1,c2; | |
700 | - register unsigned char uc1,uc2; | |
701 | - register int i1,i2; | |
702 | - register short s1,s2; | |
703 | - register unsigned short us1,us2; | |
704 | - | |
705 | - i1 = 1; i2 = -2; | |
706 | - s1 = -1; s2 = -3; us1 = 65535; us2 = 65535; | |
707 | - c1 = -1; c2 = -3; uc1 = 200; uc2 = 202; | |
708 | - i1 && printf("#0707:code_bool register 1\n"); | |
709 | - s1 && printf("#0708:code_bool register 2\n"); | |
710 | - us1 && printf("#0709:code_bool register 3\n"); | |
711 | - c1 && printf("#0710:code_bool register 4\n"); | |
712 | - uc1 && printf("#0711:code_bool register 5\n"); | |
713 | - | |
714 | -} | |
715 | - | |
716 | - | |
717 | -// code_string(int e1,int creg) | |
718 | - | |
719 | -void | |
720 | -inline code_string(){ | |
721 | - printf("#0720:code_string test\n"); | |
722 | -} | |
723 | - | |
724 | -// struct_push(int e4,int t,int arg) | |
725 | - | |
726 | -struct aa | |
727 | - struct_push0(int i,struct aa a) | |
728 | -{ | |
729 | - a.a[55]++; | |
730 | - if (i==0) { | |
731 | - return struct_push0(1,a0); | |
732 | - } | |
733 | - return a0; | |
734 | -} | |
735 | - | |
736 | -void | |
737 | -inline struct_push(){ | |
738 | - a0.a[55]=3; | |
739 | - a0 = struct_push0(0,a0); | |
740 | - printf("#0739:struct_push %d\n",a0.a[55]); | |
741 | -} | |
742 | - | |
743 | -// code_jmp(char *s) | |
744 | -// code_indirect_jmp(int e2) | |
745 | - | |
746 | -// code_rindirect(int e1, int offset, int us); | |
747 | -void | |
748 | -inline code_rindirect(){ | |
749 | - int i1,i2; | |
750 | - unsigned int ui1,ui2; | |
751 | - int *pi1,*pi2; | |
752 | - unsigned int *pui1,*pui2; | |
753 | - | |
754 | - i1 = -555; i2= 555; | |
755 | - ui1 = 632423423; ui2= 32394234; | |
756 | - pi1 = &i1; | |
757 | - pi2 = &i2; | |
758 | - pui1 = &ui1; | |
759 | - pui2 = &ui2; | |
760 | - printf("#0759:code_rindirect %d %d %u %u\n",*pi1,*pi2,*pui1,*pui2); | |
761 | -} | |
762 | - | |
763 | -// code_crindirect(int e1, int offset, int us); | |
764 | -void | |
765 | -inline code_crindirect(){ | |
766 | - char i1,i2; | |
767 | - unsigned char ui1,ui2; | |
768 | - char *pi1,*pi2; | |
769 | - unsigned char *pui1,*pui2; | |
770 | - | |
771 | - i1 = -55; i2= 55; | |
772 | - ui1 = 200; ui2= 128; | |
773 | - pi1 = &i1; | |
774 | - pi2 = &i2; | |
775 | - pui1 = &ui1; | |
776 | - pui2 = &ui2; | |
777 | - printf("#0776:code_cindirect %d %d %u %u\n",*pi1,*pi2,*pui1,*pui2); | |
778 | -} | |
779 | - | |
780 | -// code_srindirect(int e1, int offset, int us); | |
781 | -void | |
782 | -inline code_srindirect(){ | |
783 | - short i1,i2; | |
784 | - unsigned short ui1,ui2; | |
785 | - short *pi1,*pi2; | |
786 | - unsigned short *pui1,*pui2; | |
787 | - | |
788 | - i1 = -55; i2= 55; | |
789 | - ui1 = 200; ui2= 128; | |
790 | - pi1 = &i1; | |
791 | - pi2 = &i2; | |
792 | - pui1 = &ui1; | |
793 | - pui2 = &ui2; | |
794 | - printf("#0793:code_sindirect %d %d %u %u\n",*pi1,*pi2,*pui1,*pui2); | |
795 | -} | |
796 | - | |
797 | -#if FLOAT_CODE | |
798 | -// code_drindirect(int e1, int offset, int d); | |
799 | -void | |
800 | -inline code_drindirect(){ | |
801 | - float i1,i2; | |
802 | - double ui1,ui2; | |
803 | - float *pi1,*pi2; | |
804 | - double *pui1,*pui2; | |
805 | - | |
806 | - i1 = -55; i2= 55; | |
807 | - ui1 = 200; ui2= 128; | |
808 | - pi1 = &i1; | |
809 | - pi2 = &i2; | |
810 | - pui1 = &ui1; | |
811 | - pui2 = &ui2; | |
812 | - printf("#0811:code_dindirect %g %g %g %g\n",*pi1,*pi2,*pui1,*pui2); | |
813 | -} | |
814 | - | |
815 | -#endif | |
816 | - | |
817 | -#if LONGLONG_CODE | |
818 | -// code_lrindirect(int e1, int offset, int us); | |
819 | -void | |
820 | -inline code_lrindirect(){ | |
821 | - long long i1,i2; | |
822 | - unsigned long long ui1,ui2; | |
823 | - long long *pi1,*pi2; | |
824 | - unsigned long long *pui1,*pui2; | |
825 | - | |
826 | - i1 = -55; i2= 55; | |
827 | - ui1 = 200; ui2= 128; | |
828 | - pi1 = &i1; | |
829 | - pi2 = &i2; | |
830 | - pui1 = &ui1; | |
831 | - pui2 = &ui2; | |
832 | - printf("#0831:code_lrindirect %llx %llx %llx %llx\n",*pi1,*pi2,*pui1,*pui2); | |
833 | - printf("#0832:code_lrindirect %lld %lld %llu %llu\n",*pi1,*pi2,*pui1,*pui2); | |
834 | -} | |
835 | - | |
836 | -#endif | |
837 | - | |
838 | -// code_assign_gvar(int e2,int creg,int byte) | |
839 | -// code_assign_lvar(int e2,int creg,int byte) | |
840 | -// code_assign_register(int e2,int byte,int creg) | |
841 | -// code_assign(int e2,int byte,int creg) | |
842 | - | |
843 | -void | |
844 | -inline code_assign(){ | |
845 | - int i1,i2; | |
846 | - unsigned int ui1,ui2; | |
847 | - int *pi1,*pi2; | |
848 | - unsigned int *pui1,*pui2; | |
849 | - | |
850 | - i1 = -555; i2= 555; | |
851 | - ui1 = 632423423; ui2= 32394234; | |
852 | - pi1 = &i1; | |
853 | - pi2 = &i2; | |
854 | - pui1 = &ui1; | |
855 | - pui2 = &ui2; | |
856 | - | |
857 | - *(pi2+i1+i2) = 3; | |
858 | - *(pui2+i1+i2) = 3; | |
859 | - printf("#0858:code_rindirect %d %d %u %u\n",*pi1,*pi2,*pui1,*pui2); | |
860 | -} | |
861 | - | |
862 | -void | |
863 | -inline code_assign_register(){ | |
864 | - int i1,i2; | |
865 | - unsigned int ui1,ui2; | |
866 | - register int *pi1,*pi2; | |
867 | - register unsigned int *pui1,*pui2; | |
868 | - | |
869 | - i1 = -555; i2= 555; | |
870 | - ui1 = 632423423; ui2= 32394234; | |
871 | - pi1 = &i1; | |
872 | - pi2 = &i2; | |
873 | - pui1 = &ui1; | |
874 | - pui2 = &ui2; | |
875 | - | |
876 | - *(pi2+i1+i2) = 3; | |
877 | - *(pui2+i1+i2) = 3; | |
878 | - printf("#0877:code_rindirect %d %d %u %u\n",*pi1,*pi2,*pui1,*pui2); | |
879 | -} | |
880 | - | |
881 | -// code_register_assop(int e2,int op,int byte) | |
882 | -void | |
883 | -inline code_register_assop(){ | |
884 | - register int i1; | |
885 | - register unsigned int ui1; | |
886 | - int a = 3; | |
887 | - i1 = -555; | |
888 | - ui1 = 632423423; | |
889 | - | |
890 | - i1 += a; | |
891 | - printf("#0890:code_assop 1 %d\n",i1); | |
892 | - i1 -= a; | |
893 | - printf("#0892:code_assop 2 %d\n",i1); | |
894 | - i1 /= a; | |
895 | - printf("#0894:code_assop 3 %d\n",i1); | |
896 | - i1 *= a; | |
897 | - printf("#0896:code_assop 4 %d\n",i1); | |
898 | - i1 |= a; | |
899 | - printf("#0898:code_assop 5 %d\n",i1); | |
900 | - i1 &= a; | |
901 | - printf("#0900:code_assop 6 %d\n",i1); | |
902 | - i1 ^= a; | |
903 | - printf("#0902:code_assop 7 %d\n",i1); | |
904 | - i1 <<= a; | |
905 | - printf("#0904:code_assop 8 %d\n",i1); | |
906 | - i1 >>= a; | |
907 | - printf("#0906:code_assop 9 %d\n",i1); | |
908 | - | |
909 | - ui1 += a; | |
910 | - printf("#0909:code_assop 1 %u\n",ui1); | |
911 | - ui1 -= a; | |
912 | - printf("#0911:code_assop 2 %u\n",ui1); | |
913 | - ui1 /= a; | |
914 | - printf("#0913:code_assop 3 %u\n",ui1); | |
915 | - ui1 *= a; | |
916 | - printf("#0915:code_assop 4 %u\n",ui1); | |
917 | - ui1 |= a; | |
918 | - printf("#0917:code_assop 5 %u\n",ui1); | |
919 | - ui1 &= a; | |
920 | - printf("#0919:code_assop 6 %u\n",ui1); | |
921 | - ui1 ^= a; | |
922 | - printf("#0921:code_assop 7 %u\n",ui1); | |
923 | - ui1 <<= a; | |
924 | - printf("#0923:code_assop 8 %u\n",ui1); | |
925 | - ui1 >>= a; | |
926 | - printf("#0925:code_assop 9 %u\n",ui1); | |
927 | -} | |
928 | - | |
929 | -// iassop_l(int op,int byte,int sign) | |
930 | -void | |
931 | -inline code_iassop_l(){ | |
932 | - struct hoge { int i1,i2; | |
933 | - unsigned int ui1,ui2; | |
934 | - } s, *p; | |
935 | - int a = 3; | |
936 | - p = &s; | |
937 | - | |
938 | - p->i1 = -555; p->i2= 555; | |
939 | - p->ui1 = 632423423; p->ui2= 32394234; | |
940 | - | |
941 | - p->i1 += a; | |
942 | - printf("#0941:iassop 1 %d\n",p->i1); | |
943 | - p->i1 -= a; | |
944 | - printf("#0943:iassop 2 %d\n",p->i1); | |
945 | - p->i1 /= a; | |
946 | - printf("#0945:iassop 3 %d\n",p->i1); | |
947 | - p->i1 *= a; | |
948 | - printf("#0947:iassop 4 %d\n",p->i1); | |
949 | - p->i1 |= a; | |
950 | - printf("#0949:iassop 5 %d\n",p->i1); | |
951 | - p->i1 &= a; | |
952 | - printf("#0951:iassop 6 %d\n",p->i1); | |
953 | - p->i1 ^= a; | |
954 | - printf("#0953:iassop 7 %d\n",p->i1); | |
955 | - p->i1 <<= a; | |
956 | - printf("#0955:iassop 8 %d\n",p->i1); | |
957 | - p->i1 >>= a; | |
958 | - printf("#0957:iassop 9 %d\n",p->i1); | |
959 | - | |
960 | - p->ui1 += a; | |
961 | - printf("#0960:iassop 1 %u\n",p->ui1); | |
962 | - p->ui1 -= a; | |
963 | - printf("#0962:iassop 2 %u\n",p->ui1); | |
964 | - p->ui1 /= a; | |
965 | - printf("#0964:iassop 3 %u\n",p->ui1); | |
966 | - p->ui1 *= a; | |
967 | - printf("#0966:iassop 4 %u\n",p->ui1); | |
968 | - p->ui1 |= a; | |
969 | - printf("#0968:iassop 5 %u\n",p->ui1); | |
970 | - p->ui1 &= a; | |
971 | - printf("#0970:iassop 6 %u\n",p->ui1); | |
972 | - p->ui1 ^= a; | |
973 | - printf("#0972:iassop 7 %u\n",p->ui1); | |
974 | - p->ui1 <<= a; | |
975 | - printf("#0974:iassop 8 %u\n",p->ui1); | |
976 | - p->ui1 >>= a; | |
977 | - printf("#0976:iassop 9 %u\n",p->ui1); | |
978 | -} | |
979 | - | |
980 | -// iassop_l(int op,int byte,int sign) | |
981 | - | |
982 | -struct ghoge { int i1,i2; | |
983 | - unsigned int ui1,ui2; | |
984 | -} gs, *gp; | |
985 | - | |
986 | -void | |
987 | -inline code_iassop_g(){ | |
988 | - int a = 3; | |
989 | - gp = &gs; | |
990 | - | |
991 | - gp->i1 = -555; gp->i2= 555; | |
992 | - gp->ui1 = 632423423; gp->ui2= 32394234; | |
993 | - | |
994 | - gp->i1 += a; | |
995 | - printf("#0994:iassop 1 %d\n",gp->i1); | |
996 | - gp->i1 -= a; | |
997 | - printf("#0996:iassop 2 %d\n",gp->i1); | |
998 | - gp->i1 /= a; | |
999 | - printf("#0998:iassop 3 %d\n",gp->i1); | |
1000 | - gp->i1 *= a; | |
1001 | - printf("#1000:iassop 4 %d\n",gp->i1); | |
1002 | - gp->i1 |= a; | |
1003 | - printf("#1002:iassop 5 %d\n",gp->i1); | |
1004 | - gp->i1 &= a; | |
1005 | - printf("#1004:iassop 6 %d\n",gp->i1); | |
1006 | - gp->i1 ^= a; | |
1007 | - printf("#1006:iassop 7 %d\n",gp->i1); | |
1008 | - gp->i1 <<= a; | |
1009 | - printf("#1008:iassop 8 %d\n",gp->i1); | |
1010 | - gp->i1 >>= a; | |
1011 | - printf("#1010:iassop 9 %d\n",gp->i1); | |
1012 | - | |
1013 | - gp->ui1 += a; | |
1014 | - printf("#1013:iassop 1 %u\n",gp->ui1); | |
1015 | - gp->ui1 -= a; | |
1016 | - printf("#1015:iassop 2 %u\n",gp->ui1); | |
1017 | - gp->ui1 /= a; | |
1018 | - printf("#1017:iassop 3 %u\n",gp->ui1); | |
1019 | - gp->ui1 *= a; | |
1020 | - printf("#1019:iassop 4 %u\n",gp->ui1); | |
1021 | - gp->ui1 |= a; | |
1022 | - printf("#1021:iassop 5 %u\n",gp->ui1); | |
1023 | - gp->ui1 &= a; | |
1024 | - printf("#1023:iassop 6 %u\n",gp->ui1); | |
1025 | - gp->ui1 ^= a; | |
1026 | - printf("#1025:iassop 7 %u\n",gp->ui1); | |
1027 | - gp->ui1 <<= a; | |
1028 | - printf("#1027:iassop 8 %u\n",gp->ui1); | |
1029 | - gp->ui1 >>= a; | |
1030 | - printf("#1029:iassop 9 %u\n",gp->ui1); | |
1031 | -} | |
1032 | - | |
1033 | -void | |
1034 | -inline code_iassop_g_c(){ | |
1035 | - const int a = 3; | |
1036 | - gp = &gs; | |
1037 | - | |
1038 | - gp->i1 = -555; gp->i2= 555; | |
1039 | - gp->ui1 = 632423423; gp->ui2= 32394234; | |
1040 | - | |
1041 | - gp->i1 += a; | |
1042 | - printf("#1041:iassop 1 %d\n",gp->i1); | |
1043 | - gp->i1 -= a; | |
1044 | - printf("#1043:iassop 2 %d\n",gp->i1); | |
1045 | - gp->i1 /= a; | |
1046 | - printf("#1045:iassop 3 %d\n",gp->i1); | |
1047 | - gp->i1 *= a; | |
1048 | - printf("#1047:iassop 4 %d\n",gp->i1); | |
1049 | - gp->i1 |= a; | |
1050 | - printf("#1049:iassop 5 %d\n",gp->i1); | |
1051 | - gp->i1 &= a; | |
1052 | - printf("#1051:iassop 6 %d\n",gp->i1); | |
1053 | - gp->i1 ^= a; | |
1054 | - printf("#1053:iassop 7 %d\n",gp->i1); | |
1055 | - gp->i1 <<= a; | |
1056 | - printf("#1055:iassop 8 %d\n",gp->i1); | |
1057 | - gp->i1 >>= a; | |
1058 | - printf("#1057:iassop 9 %d\n",gp->i1); | |
1059 | - | |
1060 | - gp->ui1 += a; | |
1061 | - printf("#1060:iassop 1 %u\n",gp->ui1); | |
1062 | - gp->ui1 -= a; | |
1063 | - printf("#1062:iassop 2 %u\n",gp->ui1); | |
1064 | - gp->ui1 /= a; | |
1065 | - printf("#1064:iassop 3 %u\n",gp->ui1); | |
1066 | - gp->ui1 *= a; | |
1067 | - printf("#1066:iassop 4 %u\n",gp->ui1); | |
1068 | - gp->ui1 |= a; | |
1069 | - printf("#1068:iassop 5 %u\n",gp->ui1); | |
1070 | - gp->ui1 &= a; | |
1071 | - printf("#1070:iassop 6 %u\n",gp->ui1); | |
1072 | - gp->ui1 ^= a; | |
1073 | - printf("#1072:iassop 7 %u\n",gp->ui1); | |
1074 | - gp->ui1 <<= a; | |
1075 | - printf("#1074:iassop 8 %u\n",gp->ui1); | |
1076 | - gp->ui1 >>= a; | |
1077 | - printf("#1076:iassop 9 %u\n",gp->ui1); | |
1078 | -} | |
1079 | - | |
1080 | - | |
1081 | -// code_assop(int op,int byte,int sign) | |
1082 | -void | |
1083 | -inline code_assop(){ | |
1084 | - int i1,i2; | |
1085 | - unsigned int ui1,ui2; | |
1086 | - int a = 3; | |
1087 | - i1 = -555; i2= 555; | |
1088 | - ui1 = 632423423; ui2= 32394234; | |
1089 | - | |
1090 | - i1 += a; | |
1091 | - printf("#1090:code_assop 1 %d\n",i1); | |
1092 | - i1 -= a; | |
1093 | - printf("#1092:code_assop 2 %d\n",i1); | |
1094 | - i1 /= a; | |
1095 | - printf("#1094:code_assop 3 %d\n",i1); | |
1096 | - i1 *= a; | |
1097 | - printf("#1096:code_assop 4 %d\n",i1); | |
1098 | - i1 |= a; | |
1099 | - printf("#1098:code_assop 5 %d\n",i1); | |
1100 | - i1 &= a; | |
1101 | - printf("#1100:code_assop 6 %d\n",i1); | |
1102 | - i1 ^= a; | |
1103 | - printf("#1102:code_assop 7 %d\n",i1); | |
1104 | - i1 <<= a; | |
1105 | - printf("#1104:code_assop 8 %d\n",i1); | |
1106 | - i1 >>= a; | |
1107 | - printf("#1106:code_assop 9 %d\n",i1); | |
1108 | - | |
1109 | - ui1 += a; | |
1110 | - printf("#1109:code_assop 1 %u\n",ui1); | |
1111 | - ui1 -= a; | |
1112 | - printf("#1111:code_assop 2 %u\n",ui1); | |
1113 | - ui1 /= a; | |
1114 | - printf("#1113:code_assop 3 %u\n",ui1); | |
1115 | - ui1 *= a; | |
1116 | - printf("#1115:code_assop 4 %u\n",ui1); | |
1117 | - ui1 |= a; | |
1118 | - printf("#1117:code_assop 5 %u\n",ui1); | |
1119 | - ui1 &= a; | |
1120 | - printf("#1119:code_assop 6 %u\n",ui1); | |
1121 | - ui1 ^= a; | |
1122 | - printf("#1121:code_assop 7 %u\n",ui1); | |
1123 | - ui1 <<= a; | |
1124 | - printf("#1123:code_assop 8 %u\n",ui1); | |
1125 | - ui1 >>= a; | |
1126 | - printf("#1125:code_assop 9 %u\n",ui1); | |
1127 | -} | |
1128 | - | |
1129 | - | |
1130 | -// code_register_assop(int e2,int op,int byte) | |
1131 | -void | |
1132 | -inline code_register_assop_const(){ | |
1133 | - register int i1; | |
1134 | - register unsigned int ui1; | |
1135 | - i1 = -555; | |
1136 | - ui1 = 632423423; | |
1137 | - | |
1138 | - i1 += 3; | |
1139 | - printf("#1138:code_assop c 1 %d\n",i1); | |
1140 | - i1 -= 3; | |
1141 | - printf("#1140:code_assop c 2 %d\n",i1); | |
1142 | - i1 /= 3; | |
1143 | - printf("#1142:code_assop c 3 %d\n",i1); | |
1144 | - i1 *= 3; | |
1145 | - printf("#1144:code_assop c 4 %d\n",i1); | |
1146 | - i1 |= 234; | |
1147 | - printf("#1146:code_assop c 5 %d\n",i1); | |
1148 | - i1 &= 23244234; | |
1149 | - printf("#1148:code_assop c 6 %d\n",i1); | |
1150 | - i1 ^= 55244234; | |
1151 | - printf("#1150:code_assop c 7 %d\n",i1); | |
1152 | - i1 <<= 3; | |
1153 | - printf("#1152:code_assop c 8 %d\n",i1); | |
1154 | - i1 >>= 3; | |
1155 | - printf("#1154:code_assop c 9 %d\n",i1); | |
1156 | - | |
1157 | - ui1 += 3; | |
1158 | - printf("#1157:code_assop c 1 %u\n",ui1); | |
1159 | - ui1 -= 3; | |
1160 | - printf("#1159:code_assop c 2 %u\n",ui1); | |
1161 | - ui1 /= 3; | |
1162 | - printf("#1161:code_assop c 3 %u\n",ui1); | |
1163 | - ui1 *= 3; | |
1164 | - printf("#1163:code_assop c 4 %u\n",ui1); | |
1165 | - ui1 |= 234; | |
1166 | - printf("#1165:code_assop c 5 %u\n",ui1); | |
1167 | - ui1 &= 23234234; | |
1168 | - printf("#1167:code_assop c 6 %u\n",ui1); | |
1169 | - ui1 ^= 55234234; | |
1170 | - printf("#1169:code_assop c 7 %u\n",ui1); | |
1171 | - ui1 <<= 3; | |
1172 | - printf("#1171:code_assop c 8 %u\n",ui1); | |
1173 | - ui1 >>= 3; | |
1174 | - printf("#1173:code_assop c 9 %u\n",ui1); | |
1175 | -} | |
1176 | - | |
1177 | -// code_assop(int op,int byte,int sign) | |
1178 | -void | |
1179 | -inline code_assop_const(){ | |
1180 | - int i1,i2; | |
1181 | - unsigned int ui1,ui2; | |
1182 | - i1 = -555; i2= 555; | |
1183 | - ui1 = 632423423; ui2= 32394234; | |
1184 | - | |
1185 | - i1 += 3; | |
1186 | - printf("#1185:code_assop c 1 %d\n",i1); | |
1187 | - i1 -= 3; | |
1188 | - printf("#1187:code_assop c 2 %d\n",i1); | |
1189 | - i1 /= 3; | |
1190 | - printf("#1189:code_assop c 3 %d\n",i1); | |
1191 | - i1 *= 3; | |
1192 | - printf("#1191:code_assop c 4 %d\n",i1); | |
1193 | - i1 |= 234; | |
1194 | - printf("#1193:code_assop c 5 %d\n",i1); | |
1195 | - i1 &= 23234234; | |
1196 | - printf("#1195:code_assop c 6 %d\n",i1); | |
1197 | - i1 ^= 55444234; | |
1198 | - printf("#1197:code_assop c 7 %d\n",i1); | |
1199 | - i1 <<= 3; | |
1200 | - printf("#1199:code_assop c 8 %d\n",i1); | |
1201 | - i1 >>= 3; | |
1202 | - printf("#1201:code_assop c 9 %d\n",i1); | |
1203 | - | |
1204 | - ui1 += 3; | |
1205 | - printf("#1204:code_assop c 1 %u\n",ui1); | |
1206 | - ui1 -= 3; | |
1207 | - printf("#1206:code_assop c 2 %u\n",ui1); | |
1208 | - ui1 /= 3; | |
1209 | - printf("#1208:code_assop c 3 %u\n",ui1); | |
1210 | - ui1 *= 3; | |
1211 | - printf("#1210:code_assop c 4 %u\n",ui1); | |
1212 | - ui1 |= 234; | |
1213 | - printf("#1212:code_assop c 5 %u\n",ui1); | |
1214 | - ui1 &= 23234234; | |
1215 | - printf("#1214:code_assop c 6 %u\n",ui1); | |
1216 | - ui1 ^= 54234234; | |
1217 | - printf("#1216:code_assop c 7 %u\n",ui1); | |
1218 | - ui1 <<= 3; | |
1219 | - printf("#1218:code_assop c 8 %u\n",ui1); | |
1220 | - ui1 >>= 3; | |
1221 | - printf("#1220:code_assop c 9 %u\n",ui1); | |
1222 | -} | |
1223 | - | |
1224 | - | |
1225 | -// tosop(int op,int oreg) | |
1226 | -void | |
1227 | -inline tosop(){ | |
1228 | - int i1,i2,i; | |
1229 | - unsigned int u1,u2,u; | |
1230 | - i1 = -555; i2= 555; | |
1231 | - u1 = 632423423; u2= 32394234; | |
1232 | - | |
1233 | - i = i1 + i2; | |
1234 | - printf("#1233:tosop 1 %d\n",i); | |
1235 | - i = i1 - i2; | |
1236 | - printf("#1235:tosop 2 %d\n",i); | |
1237 | - i = i1 / i2; | |
1238 | - printf("#1237:tosop 3 %d\n",i); | |
1239 | - i = i1 * i2; | |
1240 | - printf("#1239:tosop 4 %d\n",i); | |
1241 | - i = i1 | i2; | |
1242 | - printf("#1241:tosop 5 %d\n",i); | |
1243 | - i = i1 & i2; | |
1244 | - printf("#1243:tosop 6 %d\n",i); | |
1245 | - i = i1 ^ i2; | |
1246 | - printf("#1245:tosop 7 %d\n",i); | |
1247 | - i = i1 << i2; | |
1248 | - printf("#1247:tosop 8 %d\n",i); | |
1249 | - i = i1 >> i2; | |
1250 | - printf("#1249:tosop 9 %d\n",i); | |
1251 | - i = i1 % i2; | |
1252 | - printf("#1251:tosop 10 %d\n",i); | |
1253 | - | |
1254 | - u = u1 + u2; | |
1255 | - printf("#1254:tosop 1 %u\n",u); | |
1256 | - u = u1 - u2; | |
1257 | - printf("#1256:tosop 2 %u\n",u); | |
1258 | - u = u1 / u2; | |
1259 | - printf("#1258:tosop 3 %u\n",u); | |
1260 | - u = u1 * u2; | |
1261 | - printf("#1260:tosop 4 %u\n",u); | |
1262 | - u = u1 | u2; | |
1263 | - printf("#1262:tosop 5 %u\n",u); | |
1264 | - u = u1 & u2; | |
1265 | - printf("#1264:tosop 6 %u\n",u); | |
1266 | - u = u1 ^ u2; | |
1267 | - printf("#1266:tosop 7 %u\n",u); | |
1268 | - u = u1 << u2; | |
1269 | - printf("#1268:tosop 8 %u\n",u); | |
1270 | - u = u1 >> u2; | |
1271 | - printf("#1270:tosop 9 %u\n",u); | |
1272 | - u = u1 % u2; | |
1273 | - printf("#1272:tosop 10 %u\n",u); | |
1274 | -} | |
1275 | - | |
1276 | -// oprtc(int op,int v) | |
1277 | -void | |
1278 | -inline oprtc(){ | |
1279 | - int i1,i; | |
1280 | - unsigned int u1,u; | |
1281 | - i1 = -555; | |
1282 | - u1 = 632423423; | |
1283 | - | |
1284 | - i = i1 + 3; | |
1285 | - printf("#1284:oprtc 1 %d\n",i); | |
1286 | - i = i1 - 3; | |
1287 | - printf("#1286:oprtc 2 %d\n",i); | |
1288 | - i = i1 / 3; | |
1289 | - printf("#1288:oprtc 3 %d\n",i); | |
1290 | - i = i1 * 3; | |
1291 | - printf("#1290:oprtc 4 %d\n",i); | |
1292 | - i = i1 | 234234234; | |
1293 | - printf("#1292:oprtc 5 %d\n",i); | |
1294 | - i = i1 & 23234234; | |
1295 | - printf("#1294:oprtc 6 %d\n",i); | |
1296 | - i = i1 ^ 23234234; | |
1297 | - printf("#1296:oprtc 7 %d\n",i); | |
1298 | - i = i1 << 5; | |
1299 | - printf("#1298:oprtc 8 %d\n",i); | |
1300 | - i = i1 >> 5; | |
1301 | - printf("#1300:oprtc 9 %d\n",i); | |
1302 | - i = i1 % 5; | |
1303 | - printf("#1302:oprtc 10 %d\n",i); | |
1304 | - | |
1305 | - u = u1 + 3; | |
1306 | - printf("#1305:oprtc 1 %u\n",u); | |
1307 | - u = u1 - 3; | |
1308 | - printf("#1307:oprtc 2 %u\n",u); | |
1309 | - u = u1 / 3; | |
1310 | - printf("#1309:oprtc 3 %u\n",u); | |
1311 | - u = u1 * 3; | |
1312 | - printf("#1311:oprtc 4 %u\n",u); | |
1313 | - u = u1 | 234234234; | |
1314 | - printf("#1313:oprtc 5 %u\n",u); | |
1315 | - u = u1 & 234234234; | |
1316 | - printf("#1315:oprtc 6 %u\n",u); | |
1317 | - u = u1 ^ 234234234; | |
1318 | - printf("#1317:oprtc 7 %u\n",u); | |
1319 | - u = u1 << 5; | |
1320 | - printf("#1319:oprtc 8 %u\n",u); | |
1321 | - u = u1 >> 5; | |
1322 | - printf("#1321:oprtc 9 %u\n",u); | |
1323 | - u = u1 % 5; | |
1324 | - printf("#1323:oprtc 10 %u\n",u); | |
1325 | -} | |
1326 | - | |
1327 | - | |
1328 | -// tosop(int op,int oreg) | |
1329 | -void | |
1330 | -inline register_tosop(){ | |
1331 | - register int i1,i2,i; | |
1332 | - register unsigned int u1,u2,u; | |
1333 | - i1 = -555; i2= 555; | |
1334 | - u1 = 632423423; u2= 32394234; | |
1335 | - | |
1336 | - i = i1 + i2; | |
1337 | - printf("#1336:tosop r 1 %d\n",i); | |
1338 | - i = i1 - i2; | |
1339 | - printf("#1338:tosop r 2 %d\n",i); | |
1340 | - i = i1 / i2; | |
1341 | - printf("#1340:tosop r 3 %d\n",i); | |
1342 | - i = i1 * i2; | |
1343 | - printf("#1342:tosop r 4 %d\n",i); | |
1344 | - i = i1 | i2; | |
1345 | - printf("#1344:tosop r 5 %d\n",i); | |
1346 | - i = i1 & i2; | |
1347 | - printf("#1346:tosop r 6 %d\n",i); | |
1348 | - i = i1 ^ i2; | |
1349 | - printf("#1348:tosop r 7 %d\n",i); | |
1350 | - i = i1 << i2; | |
1351 | - printf("#1350:tosop r 8 %d\n",i); | |
1352 | - i = i1 >> i2; | |
1353 | - printf("#1352:tosop r 9 %d\n",i); | |
1354 | - i = i1 % i2; | |
1355 | - printf("#1354:tosop r 10 %d\n",i); | |
1356 | - | |
1357 | - u = u1 + u2; | |
1358 | - printf("#1357:tosop r 1 %u\n",u); | |
1359 | - u = u1 - u2; | |
1360 | - printf("#1359:tosop r 2 %u\n",u); | |
1361 | - u = u1 / u2; | |
1362 | - printf("#1361:tosop r 3 %u\n",u); | |
1363 | - u = u1 * u2; | |
1364 | - printf("#1363:tosop r 4 %u\n",u); | |
1365 | - u = u1 | u2; | |
1366 | - printf("#1365:tosop r 5 %u\n",u); | |
1367 | - u = u1 & u2; | |
1368 | - printf("#1367:tosop r 6 %u\n",u); | |
1369 | - u = u1 ^ u2; | |
1370 | - printf("#1369:tosop r 7 %u\n",u); | |
1371 | - u = u1 << u2; | |
1372 | - printf("#1371:tosop r 8 %u\n",u); | |
1373 | - u = u1 >> u2; | |
1374 | - printf("#1373:tosop r 9 %u\n",u); | |
1375 | - u = u1 % u2; | |
1376 | - printf("#1375:tosop r 10 %u\n",u); | |
1377 | -} | |
1378 | - | |
1379 | -// oprtc(int op,int v) | |
1380 | -void | |
1381 | -inline register_oprtc(){ | |
1382 | - register int i1,i; | |
1383 | - register unsigned int u1,u; | |
1384 | - i1 = -555; | |
1385 | - u1 = 632423423; | |
1386 | - | |
1387 | - i = i1 + 3; | |
1388 | - printf("#1387:oprtc r 1 %d\n",i); | |
1389 | - i = i1 - 3; | |
1390 | - printf("#1389:oprtc r 2 %d\n",i); | |
1391 | - i = i1 / 3; | |
1392 | - printf("#1391:oprtc r 3 %d\n",i); | |
1393 | - i = i1 * 3; | |
1394 | - printf("#1393:oprtc r 4 %d\n",i); | |
1395 | - i = i1 | 234234234; | |
1396 | - printf("#1395:oprtc r 5 %d\n",i); | |
1397 | - i = i1 & 23234234; | |
1398 | - printf("#1397:oprtc r 6 %d\n",i); | |
1399 | - i = i1 ^ 23234234; | |
1400 | - printf("#1399:oprtc r 7 %d\n",i); | |
1401 | - i = i1 << 5; | |
1402 | - printf("#1401:oprtc r 8 %d\n",i); | |
1403 | - i = i1 >> 5; | |
1404 | - printf("#1403:oprtc r 9 %d\n",i); | |
1405 | - i = i1 % 5; | |
1406 | - printf("#1405:oprtc r 10 %d\n",i); | |
1407 | - | |
1408 | - u = u1 + 3; | |
1409 | - printf("#1408:oprtc r 1 %u\n",u); | |
1410 | - u = u1 - 3; | |
1411 | - printf("#1410:oprtc r 2 %u\n",u); | |
1412 | - u = u1 / 3; | |
1413 | - printf("#1412:oprtc r 3 %u\n",u); | |
1414 | - u = u1 * 3; | |
1415 | - printf("#1414:oprtc r 4 %u\n",u); | |
1416 | - u = u1 | 234234234; | |
1417 | - printf("#1416:oprtc r 5 %u\n",u); | |
1418 | - u = u1 & 234234234; | |
1419 | - printf("#1418:oprtc r 6 %u\n",u); | |
1420 | - u = u1 ^ 234234234; | |
1421 | - printf("#1420:oprtc r 7 %u\n",u); | |
1422 | - u = u1 << 5; | |
1423 | - printf("#1422:oprtc r 8 %u\n",u); | |
1424 | - u = u1 >> 5; | |
1425 | - printf("#1424:oprtc r 9 %u\n",u); | |
1426 | - u = u1 % 5; | |
1427 | - printf("#1426:oprtc r 10 %u\n",u); | |
1428 | -} | |
1429 | - | |
1430 | - | |
1431 | -#if FLOAT_CODE | |
1432 | -// code_cmp_dregister(int e2,int d) | |
1433 | -void | |
1434 | -inline code_cmp_dregister(){ | |
1435 | - register float f0,f1; | |
1436 | - register double d0,d1; | |
1437 | - f0 = 0.0; f1 = 0.2; | |
1438 | - d0 = 10; d1 = 10e10; | |
1439 | - f0 && printf("#1438:code_bool register 6\n"); | |
1440 | - d0 && printf("#1439:code_bool register 7\n"); | |
1441 | - | |
1442 | -} | |
1443 | - | |
1444 | -// code_dregister(int e2,int freg,int d) | |
1445 | -void | |
1446 | -inline code_dregister(){ | |
1447 | - register float f0,f1; | |
1448 | - register double d0,d1; | |
1449 | - f0 = 0.0; f1 = 0.2; | |
1450 | - d0 = 10; d1 = 10e10; | |
1451 | - printf("#1450:code_lvar float r %f %f %g %g\n",f0,f1,d0,d1); | |
1452 | -} | |
1453 | - | |
1454 | -// code_dassign_gvar(int e2,int freg,int d) | |
1455 | -// code_dassign_lvar(int e2,int freg,int d) | |
1456 | -// code_dassign_dregister(int e2,int d,int freg) | |
1457 | - | |
1458 | -// code_dassign(int e2,int freg,int d) | |
1459 | -void | |
1460 | -inline code_dassign(){ | |
1461 | - int i1,i2; | |
1462 | - float f1,f2; | |
1463 | - double ui1,ui2; | |
1464 | - float *pi1,*pi2; | |
1465 | - double *pui1,*pui2; | |
1466 | - | |
1467 | - i1 = -555; i2= 555; | |
1468 | - f1 = -555; f2= 555; | |
1469 | - ui1 = 632423423; ui2= 32394234; | |
1470 | - pi1 = &f1; | |
1471 | - pi2 = &f2; | |
1472 | - pui1 = &ui1; | |
1473 | - pui2 = &ui2; | |
1474 | - | |
1475 | - *(pi2+i1+i2) = 3; | |
1476 | - *(pui2+i1+i2) = 3; | |
1477 | - printf("#1476:code_dassign %g %g %g %g\n",*pi1,*pi2,*pui1,*pui2); | |
1478 | -} | |
1479 | - | |
1480 | -void | |
1481 | -inline code_register_dassign(){ | |
1482 | - int i1,i2; | |
1483 | - float f1,f2; | |
1484 | - double ui1,ui2; | |
1485 | - register float *pi1,*pi2; | |
1486 | - register double *pui1,*pui2; | |
1487 | - | |
1488 | - i1 = -555; i2= 555; | |
1489 | - f1 = -555; f2= 555; | |
1490 | - ui1 = 632423423; ui2= 32394234; | |
1491 | - pi1 = &f1; | |
1492 | - pi2 = &f2; | |
1493 | - pui1 = &ui1; | |
1494 | - pui2 = &ui2; | |
1495 | - | |
1496 | - *(pi2+i1+i2) = 3; | |
1497 | - *(pui2+i1+i2) = 3; | |
1498 | - printf("#1497:code_dassign %g %g %g %g\n",*pi1,*pi2,*pui1,*pui2); | |
1499 | -} | |
1500 | - | |
1501 | -// code_dconst(int e2,int freg,int d) | |
1502 | -// code_dneg(int freg,int d) | |
1503 | -// code_dneg(int creg) | |
1504 | -void | |
1505 | -inline code_dneg(){ | |
1506 | - float i,j; | |
1507 | - double di,dj; | |
1508 | - i = 123123123;j = -32423; | |
1509 | - di = 123123123;dj = -32423; | |
1510 | - printf("#1509:code_dneg %g %g\n",-i,-j); | |
1511 | - printf("#1510:code_dneg %g %g\n",-di,-dj); | |
1512 | -} | |
1513 | - | |
1514 | -// code_d2i(int freg0) | |
1515 | -void | |
1516 | -inline code_d2i(){ | |
1517 | - double d,z; | |
1518 | - int i; | |
1519 | - d = 0.1; | |
1520 | - z = 555; | |
1521 | - i = d; | |
1522 | - printf("#1521:code_d2i %d\n",i); | |
1523 | -} | |
1524 | -// code_i2d(int creg0) | |
1525 | -void | |
1526 | -inline code_i2d(){ | |
1527 | - double d; | |
1528 | - int i,z; | |
1529 | - i = 242342342; | |
1530 | - z = -1; | |
1531 | - d = i; | |
1532 | - printf("#1531:code_i2d %g\n",d); | |
1533 | -} | |
1534 | -// code_d2u(int freg0) | |
1535 | -void | |
1536 | -inline code_d2u(){ | |
1537 | - double d,z; | |
1538 | - unsigned int i; | |
1539 | - d = 0.1; | |
1540 | - z = 555; | |
1541 | - i = d; | |
1542 | - printf("#1541:code_d2u %ud\n",i); | |
1543 | -} | |
1544 | -// code_u2d(int creg0) | |
1545 | -void | |
1546 | -inline code_u2d(){ | |
1547 | - double d; | |
1548 | - unsigned int i,z; | |
1549 | - i = 242342342; | |
1550 | - z = 3; | |
1551 | - d = i; | |
1552 | - printf("#1551:code_u2d %g\n",d); | |
1553 | -} | |
1554 | -// code_f2i(int freg0) | |
1555 | -void | |
1556 | -inline code_f2i(){ | |
1557 | - float d,z; | |
1558 | - int i; | |
1559 | - d = 0.1; | |
1560 | - z = 555; | |
1561 | - i = d; | |
1562 | - printf("#1561:code_d2i %d\n",i); | |
1563 | -} | |
1564 | -// code_i2f(int creg0) | |
1565 | -void | |
1566 | -inline code_i2f(){ | |
1567 | - float d; | |
1568 | - int i,z; | |
1569 | - i = 24234342; | |
1570 | - z = 555; | |
1571 | - d = i; | |
1572 | - printf("#1571:code_i2f %g\n",d); | |
1573 | -} | |
1574 | -// code_f2u(int freg0) | |
1575 | -void | |
1576 | -inline code_f2u(){ | |
1577 | - float d,z; | |
1578 | - unsigned int i; | |
1579 | - d = 0.1; | |
1580 | - z = 555; | |
1581 | - i = d; | |
1582 | - printf("#1581:code_f2u %ud\n",i); | |
1583 | -} | |
1584 | -// code_u2f(int creg0) | |
1585 | -void | |
1586 | -inline code_u2f(){ | |
1587 | - float d; | |
1588 | - unsigned int i,z; | |
1589 | - i = 242342342; | |
1590 | - z = 555; | |
1591 | - d = i; | |
1592 | - printf("#1591:code_u2f %g\n",d); | |
1593 | -} | |
1594 | - | |
1595 | - | |
1596 | -// code_drgvar(int e2,int d,int freg) | |
1597 | -void | |
1598 | -inline code_dgvar(){ | |
1599 | - f0 = 0.0; f1 = 0.2; | |
1600 | - d0 = 10; d1 = 10e10; | |
1601 | - printf("#1600:code_gvar float 1 %f %f %g %g\n",f0,f1,d0,d1); | |
1602 | - s_f0 = 0.0; s_f1 = 0.2; | |
1603 | - s_d0 = 10; s_d1 = 10e10; | |
1604 | - printf("#1603:code_gvar float 2 %f %f %g %g\n",s_f0,s_f1,s_d0,s_d1); | |
1605 | -} | |
1606 | - | |
1607 | -// code_drlvar(int e2,int d,int freg) | |
1608 | -void | |
1609 | -inline code_dlvar(){ | |
1610 | - float f0,f1; | |
1611 | - double d0,d1; | |
1612 | - f0 = 0.0; f1 = 0.2; | |
1613 | - d0 = 10; d1 = 10e10; | |
1614 | - printf("#1613:code_lvar float %f %f %g %g\n",f0,f1,d0,d1); | |
1615 | - printf("#1614:code_bool > lvar float %d %d %d %d\n", | |
1616 | - f0>f1,f0>=f1,f0==f1,f0!=f1); | |
1617 | - printf("#1616:code_bool > lvar double %d %d %d %d\n", | |
1618 | - d0>d1,d0>=d1,d0==d1,d0!=d1); | |
1619 | - printf("#1618:code_bool < lvar float %d %d %d %d\n", | |
1620 | - f0<f1,f0<=f1,f0==f1,f0!=f1); | |
1621 | - printf("#1620:code_bool < lvar double %d %d %d %d\n", | |
1622 | - d0<d1,d0<=d1,d0==d1,d0!=d1); | |
1623 | -} | |
1624 | - | |
1625 | - | |
1626 | -// code_cmp_drgvar(int e2,int d) | |
1627 | -void | |
1628 | -inline code_cmp_d_global(){ | |
1629 | - f0 = 0.0; f1 = 0.2; | |
1630 | - d0 = 10; d1 = 10e10; | |
1631 | - f0 && printf("#1630:code_bool global 6\n"); | |
1632 | - d0 && printf("#1631:code_bool global 7\n"); | |
1633 | -} | |
1634 | - | |
1635 | - | |
1636 | -// code_cmp_drlvar(int e2,int d) | |
1637 | -void | |
1638 | -inline code_cmp_d(){ | |
1639 | - float f0,f1; | |
1640 | - double d0,d1; | |
1641 | - f0 = 0.0; f1 = 0.2; | |
1642 | - d0 = 10; d1 = 10e10; | |
1643 | - f0 && printf("#1642:code_bool local 6\n"); | |
1644 | - d0 && printf("#1643:code_bool local 7\n"); | |
1645 | -} | |
1646 | - | |
1647 | -// dtosop(int op,int e1) | |
1648 | -void | |
1649 | -inline dtosop(){ | |
1650 | - double i1,i2,i; | |
1651 | - float u1,u2,u; | |
1652 | - i1 = -555; i2= 555; | |
1653 | - u1 = 632423423; u2= 32394234; | |
1654 | - | |
1655 | - i = i1 + i2; | |
1656 | - printf("#1655:dtosop 1 %g\n",i); | |
1657 | - i = i1 - i2; | |
1658 | - printf("#1657:dtosop 2 %g\n",i); | |
1659 | - i = i1 / i2; | |
1660 | - printf("#1659:dtosop 3 %g\n",i); | |
1661 | - i = i1 * i2; | |
1662 | - printf("#1661:dtosop 4 %g\n",i); | |
1663 | - u = u1 + u2; | |
1664 | - printf("#1663:dtosop 1 %g\n",u); | |
1665 | - u = u1 - u2; | |
1666 | - printf("#1665:dtosop 2 %g\n",u); | |
1667 | - u = u1 / u2; | |
1668 | - printf("#1667:dtosop 3 %g\n",u); | |
1669 | - u = u1 * u2; | |
1670 | - printf("#1669:dtosop 4 %g\n",u); | |
1671 | -} | |
1672 | - | |
1673 | - | |
1674 | -// dtosop(int op,int e1) | |
1675 | -void | |
1676 | -inline dtosop_register(){ | |
1677 | - register double i1,i2,i; | |
1678 | - register float u1,u2,u; | |
1679 | - i1 = -555; i2= 555; | |
1680 | - u1 = 632423423; u2= 32394234; | |
1681 | - | |
1682 | - i = i1 + i2; | |
1683 | - printf("#1682:dtosop 1 %g\n",i); | |
1684 | - i = i1 - i2; | |
1685 | - printf("#1684:dtosop 2 %g\n",i); | |
1686 | - i = i1 / i2; | |
1687 | - printf("#1686:dtosop 3 %g\n",i); | |
1688 | - i = i1 * i2; | |
1689 | - printf("#1688:dtosop 4 %g\n",i); | |
1690 | - u = u1 + u2; | |
1691 | - printf("#1690:dtosop 1 %g\n",u); | |
1692 | - u = u1 - u2; | |
1693 | - printf("#1692:dtosop 2 %g\n",u); | |
1694 | - u = u1 / u2; | |
1695 | - printf("#1694:dtosop 3 %g\n",u); | |
1696 | - u = u1 * u2; | |
1697 | - printf("#1696:dtosop 4 %g\n",u); | |
1698 | -} | |
1699 | - | |
1700 | - | |
1701 | -// code_dassop(int op,int d) | |
1702 | -void | |
1703 | -inline code_dassop(){ | |
1704 | - double i1,i2; | |
1705 | - float ui1,ui2; | |
1706 | - i1 = -555; i2= 555; | |
1707 | - ui1 = 632423423; ui2= 32394234; | |
1708 | - | |
1709 | - i1 += 3; | |
1710 | - printf("#1709:code_dassop 1 %g\n",i1); | |
1711 | - i1 -= 3; | |
1712 | - printf("#1711:code_dassop 2 %g\n",i1); | |
1713 | - i1 /= 3; | |
1714 | - printf("#1713:code_dassop 3 %g\n",i1); | |
1715 | - i1 *= 3; | |
1716 | - printf("#1715:code_dassop 4 %g\n",i1); | |
1717 | - | |
1718 | - ui1 += 3; | |
1719 | - printf("#1718:code_dassop f 1 %g\n",ui1); | |
1720 | - ui1 -= 3; | |
1721 | - printf("#1720:code_dassop f 2 %g\n",ui1); | |
1722 | - ui1 /= 3; | |
1723 | - printf("#1722:code_dassop f 3 %g\n",ui1); | |
1724 | - ui1 *= 3; | |
1725 | - printf("#1724:code_dassop f 4 %g\n",ui1); | |
1726 | -} | |
1727 | - | |
1728 | -// code_dassop(int op,int d) | |
1729 | -void | |
1730 | -inline code_register_dassop(){ | |
1731 | - register double i1,i2; | |
1732 | - register float ui1,ui2; | |
1733 | - i1 = -555; i2= 555; | |
1734 | - ui1 = 632423423; ui2= 32394234; | |
1735 | - | |
1736 | - i1 += 3; | |
1737 | - printf("#1736:code_dassop r 1 %g\n",i1); | |
1738 | - i1 -= 3; | |
1739 | - printf("#1738:code_dassop r 2 %g\n",i1); | |
1740 | - i1 /= 3; | |
1741 | - printf("#1740:code_dassop r 3 %g\n",i1); | |
1742 | - i1 *= 3; | |
1743 | - printf("#1742:code_dassop r 4 %g\n",i1); | |
1744 | - | |
1745 | - ui1 += 3; | |
1746 | - printf("#1745:code_dassop f r 1 %g\n",ui1); | |
1747 | - ui1 -= 3; | |
1748 | - printf("#1747:code_dassop f r 2 %g\n",ui1); | |
1749 | - ui1 /= 3; | |
1750 | - printf("#1749:code_dassop f r 3 %g\n",ui1); | |
1751 | - ui1 *= 3; | |
1752 | - printf("#1751:code_dassop f r 4 %g\n",ui1); | |
1753 | -} | |
1754 | - | |
1755 | - | |
1756 | -// code_dpreinc(int e1,int e2,int d,int reg) | |
1757 | -void | |
1758 | -inline code_dpreinc(){ | |
1759 | - double i,j; | |
1760 | - float ui,uj; | |
1761 | - i = 123123123;j = 0; | |
1762 | - printf("#1761:code_dpreinc d %g %g",++i,--j); | |
1763 | - printf("#1762: %g %g\n",i,j); | |
1764 | - ui = 123123123;uj = 0; | |
1765 | - printf("#1764:code_dpreinc f %g %g",++ui,--uj); | |
1766 | - printf("#1765: %g %g\n",ui,uj); | |
1767 | -} | |
1768 | - | |
1769 | -// code_dpostinc(int e1,int e2,int d,int reg) | |
1770 | -void | |
1771 | -inline code_dpostinc(){ | |
1772 | - double i,j; | |
1773 | - float ui,uj; | |
1774 | - i = 123123;j = 0; | |
1775 | - printf("#1774:code_dpostinc d %g %g",i--,j--); | |
1776 | - printf("#1775: %g %g\n",i,j); | |
1777 | - ui = 123123;uj = 0; | |
1778 | - printf("#1777:code_dpostinc f %g %g",ui++,uj--); | |
1779 | - printf("#1778: %g %g\n",ui,uj); | |
1780 | -} | |
1781 | - | |
1782 | -// code_dpreinc(int e1,int e2,int d,int reg) | |
1783 | -void | |
1784 | -inline code_register_dpreinc(){ | |
1785 | - register double i,j; | |
1786 | - register float ui,uj; | |
1787 | - i = 123123;j = 0; | |
1788 | - printf("#1787:code_dpreinc r d %g %g",++i,--j); | |
1789 | - printf("#1788: %g %g\n",i,j); | |
1790 | - ui = 123123;uj = 0; | |
1791 | - printf("#1790:code_dpreinc r f %g %g",++ui,--uj); | |
1792 | - printf("#1791: %g %g\n",ui,uj); | |
1793 | -} | |
1794 | - | |
1795 | -// code_dpostinc(int e1,int e2,int d,int reg) | |
1796 | -void | |
1797 | -inline code_register_dpostinc(){ | |
1798 | - register double i,j; | |
1799 | - register float ui,uj; | |
1800 | - i = 123123;j = 0; | |
1801 | - printf("#1800:code_dpostinc r d %g %g",i--,j--); | |
1802 | - printf("#1801: %g %g\n",i,j); | |
1803 | - ui = 123123;uj = 0; | |
1804 | - printf("#1803:code_dpostinc r f %g %g",ui++,uj--); | |
1805 | - printf("#1804: %g %g\n",ui,uj); | |
1806 | -} | |
1807 | - | |
1808 | -// drexpr(int e1, int e2,int l1, int op) | |
1809 | - | |
1810 | -// case DOP+GE: | |
1811 | -// case FOP+GE: | |
1812 | -// case DOP+GT: | |
1813 | -// case FOP+GT: | |
1814 | -// case DOP+EQ: | |
1815 | -// case FOP+EQ: | |
1816 | -// case DOP+NEQ: | |
1817 | -// case FOP+NEQ: | |
1818 | -// code_gt(int cond) | |
1819 | - | |
1820 | -void | |
1821 | -inline code_dgt(){ | |
1822 | - double reg; | |
1823 | - if (d0>d1) | |
1824 | - printf("#1823:code_dgt 1\n"); | |
1825 | - else | |
1826 | - printf("#1825:code_dgt 0\n"); | |
1827 | - for (reg=-3;reg<7;reg++) { | |
1828 | - if (0<reg && reg<3) | |
1829 | - printf("#1828:reg=%g code_dgt 0<reg && reg <3\n",reg); | |
1830 | - } | |
1831 | - for (reg=-3;reg<7;reg++) { | |
1832 | - if (-2<reg && reg<0) | |
1833 | - printf("#1832:reg=%g code_dgt -2<reg && reg <0\n",reg); | |
1834 | - } | |
1835 | -} | |
1836 | - | |
1837 | -// code_ugt(int cond) | |
1838 | -void | |
1839 | -inline code_fgt(){ | |
1840 | - float reg; | |
1841 | - if (f0>f1) | |
1842 | - printf("#1841:code_fgt 1\n"); | |
1843 | - else | |
1844 | - printf("#1843:code_fgt 0\n"); | |
1845 | - for (reg=-3;reg<7;reg++) { | |
1846 | - if (0<reg && reg<3) | |
1847 | - printf("#1846:reg=%g code_fgt 0<reg && reg <3\n",reg); | |
1848 | - } | |
1849 | - for (reg=-3;reg<7;reg++) { | |
1850 | - if (-2<reg && reg<0) | |
1851 | - printf("#1850:reg=%g code_fgt -2<reg && reg <0\n",reg); | |
1852 | - } | |
1853 | -} | |
1854 | - | |
1855 | -// code_ge(int cond) | |
1856 | -void | |
1857 | -inline code_dge(){ | |
1858 | - double reg; | |
1859 | - if (d0>=d1) | |
1860 | - printf("#1859:code_dge 1\n"); | |
1861 | - else | |
1862 | - printf("#1861:code_dge 0\n"); | |
1863 | - for (reg=-3;reg<7;reg++) { | |
1864 | - if (0<=reg && reg<=3) | |
1865 | - printf("#1864:reg=%g code_dge 0<reg && reg <=3\n",reg); | |
1866 | - } | |
1867 | - for (reg=-3;reg<7;reg++) { | |
1868 | - if (-2<=reg && reg<=0) | |
1869 | - printf("#1868:reg=%g code_dge -2<reg && reg <=0\n",reg); | |
1870 | - } | |
1871 | -} | |
1872 | - | |
1873 | -// code_uge(int cond) | |
1874 | -void | |
1875 | -inline code_fge(){ | |
1876 | - float reg; | |
1877 | - if (f0>=f1) | |
1878 | - printf("#1877:code_fge 1\n"); | |
1879 | - else | |
1880 | - printf("#1879:code_fge 0\n"); | |
1881 | - for (reg=-3;reg<7;reg++) { | |
1882 | - if (0<=reg && reg<=3) | |
1883 | - printf("#1882:reg=%g code_fge 0<=reg && reg <=3\n",reg); | |
1884 | - } | |
1885 | - for (reg=-3;reg<7;reg++) { | |
1886 | - if (-2<=reg && reg<=0) | |
1887 | - printf("#1886:reg=%g code_fge -2<=reg && reg <=0\n",reg); | |
1888 | - } | |
1889 | -} | |
1890 | - | |
1891 | -// code_eq(int cond) | |
1892 | -void | |
1893 | -inline code_deq(){ | |
1894 | - if (f0==f1) | |
1895 | - printf("#1894:code_feq 1\n"); | |
1896 | - else | |
1897 | - printf("#1896:code_feq 0\n"); | |
1898 | - if (d0!=d1) | |
1899 | - printf("#1898:code_deq 1\n"); | |
1900 | - else | |
1901 | - printf("#1900:code_deq 0\n"); | |
1902 | -} | |
1903 | - | |
1904 | -// code_dbool(int e1) | |
1905 | - | |
1906 | -void | |
1907 | -inline code_dbool(){ | |
1908 | - float i1l,i2l; | |
1909 | - double ui1l,ui2l; | |
1910 | - | |
1911 | - d1 = d0-3; | |
1912 | - for(f1=f0-3;f1<f0+3;f1++) { | |
1913 | - printf("#1912:code_dbool %g>%g gvar %d\n",f0,f1,f0>f1); | |
1914 | - printf("#1913:code_dbool %g>%g gvar %d d\n",d0,d1,d0>d1); | |
1915 | - printf("#1914:code_dbool %g>=%g gvar %d\n",f0,f1,f0>=f1); | |
1916 | - printf("#1915:code_dbool %g>=%g gvar %d d\n",d0,d1,d0>=d1); | |
1917 | - printf("#1916:code_dbool %g<%g gvar %d\n",f0,f1,f0<f1); | |
1918 | - printf("#1917:code_dbool %g<%g gvar %d d\n",d0,d1,d0<d1); | |
1919 | - printf("#1918:code_dbool %g<=%g gvar %d\n",f0,f1,f0<=f1); | |
1920 | - printf("#1919:code_dbool %g<=%g gvar %d d\n",d0,d1,d0<=d1); | |
1921 | - printf("#1920:code_dbool %g==%g gvar %d d\n",d0,d1,d0==d1); | |
1922 | - printf("#1921:code_dbool %g!=%g gvar %d\n",f0,f1,f0!=f1); | |
1923 | - d1++; | |
1924 | - } | |
1925 | - ui1l = d0; | |
1926 | - i1l = f0; | |
1927 | - ui2l = d0-3; | |
1928 | - for(i2l=f0-3;i2l<i1l+3;i2l++) { | |
1929 | - printf("#1928:code_dbool %g>%g lvar %d\n",i1l,i2l,i1l>i2l); | |
1930 | - printf("#1929:code_dbool %g>%g lvar %d d\n",ui1l,ui2l,ui1l>ui2l); | |
1931 | - printf("#1930:code_dbool %g>=%g lvar %d\n",i1l,i2l,i1l>=i2l); | |
1932 | - printf("#1931:code_dbool %g>=%g lvar %d d\n",ui1l,ui2l,ui1l>=ui2l); | |
1933 | - printf("#1932:code_dbool %g<%g lvar %d\n",i1l,i2l,i1l<i2l); | |
1934 | - printf("#1933:code_dbool %g<%g lvar %d d\n",ui1l,ui2l,ui1l<ui2l); | |
1935 | - printf("#1934:code_dbool %g<=%g lvar %d\n",i1l,i2l,i1l<=i2l); | |
1936 | - printf("#1935:code_dbool %g<=%g lvar %d d\n",ui1l,ui2l,ui1l<=ui2l); | |
1937 | - printf("#1936:code_dbool %g==%g lvar %d d\n",ui1l,ui2l,ui1l==ui2l); | |
1938 | - printf("#1937:code_dbool %g!=%g lvar %d\n",i1l,i2l,i1l!=i2l); | |
1939 | - ui2l++; | |
1940 | - } | |
1941 | -} | |
1942 | - | |
1943 | -#endif | |
1944 | - | |
1945 | - | |
1946 | -#if LONGLONG_CODE | |
1947 | -// lrexpr(int e1, int e2,int l1, int op) | |
1948 | -void | |
1949 | -inline code_lbool(){ | |
1950 | - long long l0l,l1l; | |
1951 | - unsigned long long ul0l,ul1l; | |
1952 | - | |
1953 | - printf("#1952:code_bool > long long %d %d %d %d %d %d\n", | |
1954 | - l1>l0,ul1>ul0,l1>=l0,ul1>=ul0,ul1==ul0,l1!=l0); | |
1955 | - printf("#1954:code_bool < long long %d %d %d %d %d %d\n", | |
1956 | - l1<l0,ul1<ul0,l1<=l0,ul1<=ul0,ul1==ul0,l1!=l0); | |
1957 | - | |
1958 | - l0l=l1l=l0; | |
1959 | - ul0l=ul1l=ul0; | |
1960 | - | |
1961 | - printf("#1960:code_bool eq > long long %d %d %d %d %d %d\n", | |
1962 | - l1l>l0l,ul1l>ul0l,l1l>=l0l,ul1l>=ul0l,ul1l==ul0l,l1l!=l0l); | |
1963 | - printf("#1962:code_bool eq < long long %d %d %d %d %d %d\n", | |
1964 | - l1l<l0l,ul1l<ul0l,l1l<=l0l,ul1l<=ul0l,ul1l==ul0l,l1l!=l0l); | |
1965 | - | |
1966 | -} | |
1967 | - | |
1968 | -// int lpop_register() | |
1969 | -// code_lregister(int e2,int reg) | |
1970 | -void | |
1971 | -inline code_lregister(){ | |
1972 | - register long long l0,l1; | |
1973 | - register unsigned long long ul0,ul1; | |
1974 | - l0 = 123123123LL; | |
1975 | - l1 = 123123123LL; | |
1976 | - ul0 = 123123123LL; | |
1977 | - ul1 = 123123123LL; | |
1978 | - printf("#1977:code_lvar long long %llu %llu %llu %llu\n",l0,l1,ul0,ul1); | |
1979 | -} | |
1980 | - | |
1981 | -// code_cmp_lregister(int reg) | |
1982 | -void | |
1983 | -inline code_cmp_lregister(){ | |
1984 | - register long long l0,l1; | |
1985 | - register unsigned long long ul0,ul1; | |
1986 | - l0 = 123123123LL; | |
1987 | - l1 = 123123123LL; | |
1988 | - ul0 = 123123123LL; | |
1989 | - ul1 = 123123123LL; | |
1990 | - l0 && printf("#1989:code_bool register 8\n"); | |
1991 | - ul0 && printf("#1990:code_bool register 9\n"); | |
1992 | -} | |
1993 | - | |
1994 | -// code_cmp_lrgvar(int e1,int e2) | |
1995 | -void | |
1996 | -inline code_cmp_lrgvar(){ | |
1997 | - l0 = 123123123LL; | |
1998 | - l1 = 123123123LL; | |
1999 | - ul0 = 123123123LL; | |
2000 | - ul1 = 123123123LL; | |
2001 | - l0 && printf("#2000:code_bool global 8\n"); | |
2002 | - ul0 && printf("#2001:code_bool global 9\n"); | |
2003 | -} | |
2004 | -// code_cmp_lrlvar(int e1,int e2) | |
2005 | -void | |
2006 | -inline code_cmp_lrlvar(){ | |
2007 | - long long l0,l1; | |
2008 | - unsigned long long ul0,ul1; | |
2009 | - l0 = 123123123LL; | |
2010 | - l1 = 123123123LL; | |
2011 | - ul0 = 123123123LL; | |
2012 | - ul1 = 123123123LL; | |
2013 | - l0 && printf("#2012:code_bool local 8\n"); | |
2014 | - ul0 && printf("#2013:code_bool local 9\n"); | |
2015 | -} | |
2016 | - | |
2017 | -// code_lassign(int e1,int e2) | |
2018 | -// code_lassign_gvar(int e1,int e2) | |
2019 | -// code_lassign_lvar(int e1,int e2) | |
2020 | -// code_lassign_lregister(int e2,int reg) | |
2021 | -void | |
2022 | -inline code_lassign(){ | |
2023 | - long long i1,i2; | |
2024 | - unsigned long long ui1,ui2; | |
2025 | - long long *pi1,*pi2; | |
2026 | - unsigned long long *pui1,*pui2; | |
2027 | - | |
2028 | - i1 = -555; i2= 555; | |
2029 | - ui1 = 632423423; ui2= 32394234; | |
2030 | - pi1 = &i1; | |
2031 | - pi2 = &i2; | |
2032 | - pui1 = &ui1; | |
2033 | - pui2 = &ui2; | |
2034 | - | |
2035 | - *(pi2+i1+i2) = 3; | |
2036 | - *(pui2+i1+i2) = 3; | |
2037 | - printf("#2036:code_rindirect %lld %lld %llu %llu\n",*pi1,*pi2,*pui1,*pui2); | |
2038 | -} | |
2039 | - | |
2040 | -void | |
2041 | -inline code_lassign_register(){ | |
2042 | - long long i1,i2; | |
2043 | - unsigned long long ui1,ui2; | |
2044 | - register long long *pi1,*pi2; | |
2045 | - register unsigned long long *pui1,*pui2; | |
2046 | - | |
2047 | - i1 = -555; i2= 555; | |
2048 | - ui1 = 632423423; ui2= 32394234; | |
2049 | - pi1 = &i1; | |
2050 | - pi2 = &i2; | |
2051 | - pui1 = &ui1; | |
2052 | - pui2 = &ui2; | |
2053 | - | |
2054 | - *(pi2+i1+i2) = 3; | |
2055 | - *(pui2+i1+i2) = 3; | |
2056 | - printf("#2055:code_rindirect %lld %lld %llu %llu\n",*pi1,*pi2,*pui1,*pui2); | |
2057 | -} | |
2058 | - | |
2059 | -// code_lconst(int e1,int e2) | |
2060 | -// code_lneg(int e1,int e2) | |
2061 | -void | |
2062 | -inline code_lneg(){ | |
2063 | - long long i,j; | |
2064 | - i = 123123123;j = -32423; | |
2065 | - printf("#2064:code_neg %lld %lld\n",-i,-j); | |
2066 | -} | |
2067 | - | |
2068 | -// code_lrgvar(int e1,int e2) | |
2069 | -void | |
2070 | -inline code_lrgvar(){ | |
2071 | - l0 = 123123123LL; | |
2072 | - l1 = 123123123LL; | |
2073 | - ul0 = 123123123LL; | |
2074 | - ul1 = 123123123LL; | |
2075 | - printf("#2074:code_lrgvar long long %lld %lld %llu %llu\n",l0,l1,ul0,ul1); | |
2076 | - s_l0 = 123123123LL; | |
2077 | - s_l1 = 123123123LL; | |
2078 | - s_ul0 = 123123123LL; | |
2079 | - s_ul1 = 123123123LL; | |
2080 | - printf("#2079:code_lrgvar long long %lld %lld %llu %llu\n",s_l0,s_l1,s_ul0,s_ul1); | |
2081 | -} | |
2082 | - | |
2083 | -// code_lrlvar(int e1,int e2) | |
2084 | -void | |
2085 | -inline code_lrlvar(){ | |
2086 | - long long l0,l1; | |
2087 | - unsigned long long ul0,ul1; | |
2088 | - l0 = 123123123LL; | |
2089 | - l1 = 123123123LL; | |
2090 | - ul0 = 123123123LL; | |
2091 | - ul1 = 123123123LL; | |
2092 | - printf("#2091:code_lvar long long %lld %lld %llu %llu\n",l0,l1,ul0,ul1); | |
2093 | - printf("#2092:code_bool lvar > long long %d %d %d %d %d %d\n", | |
2094 | - l1>l0,ul1>ul0,l1>=l0,ul1>=ul0,ul1==ul0,l1!=l0); | |
2095 | - printf("#2094:code_bool lvar < long long %d %d %d %d %d %d\n", | |
2096 | - l1<l0,ul1<ul0,l1<=l0,ul1<=ul0,ul1==ul0,l1!=l0); | |
2097 | -} | |
2098 | - | |
2099 | -// ltosop(int e1,int e2) | |
2100 | -void | |
2101 | -inline ltosop(){ | |
2102 | - long long i1,i2,i; | |
2103 | - unsigned long long u1,u2,u; | |
2104 | - int ii2; | |
2105 | - unsigned int uu2; | |
2106 | - i1 = -555; i2= 555; | |
2107 | - u1 = 632423423; u2= 32394234; | |
2108 | - ii2 = -33; | |
2109 | - uu2 = 33; | |
2110 | - u = 0; | |
2111 | - | |
2112 | - i = i1 + i2; | |
2113 | - printf("#2112:ltosop 1 %lld\n",i); | |
2114 | - i = i1 - i2; | |
2115 | - printf("#2114:ltosop 2 %lld\n",i); | |
2116 | - i = i1 / i2; | |
2117 | - printf("#2116:ltosop 3 %lld\n",i); | |
2118 | - i = i1 * i2; | |
2119 | - printf("#2118:ltosop 4 %lld\n",i); | |
2120 | - i = i1 | i2; | |
2121 | - printf("#2120:ltosop 5 %lld\n",i); | |
2122 | - i = i1 & i2; | |
2123 | - printf("#2122:ltosop 6 %lld\n",i); | |
2124 | - i = i1 ^ i2; | |
2125 | - printf("#2124:ltosop 7 %lld\n",i); | |
2126 | - i = i1 << i2; | |
2127 | - printf("#2126:ltosop 8 %lld\n",i); | |
2128 | - i = i1 >> i2; | |
2129 | - printf("#2128:ltosop 9 %lld\n",i); | |
2130 | - i = i1 % i2; | |
2131 | - printf("#2130:ltosop 10 %lld\n",i); | |
2132 | - | |
2133 | - u = u1 + u2; | |
2134 | - printf("#2133:ltosop u 1 %llu\n",u); | |
2135 | - u = u1 - u2; | |
2136 | - printf("#2135:ltosop u 2 %llu\n",u); | |
2137 | - u = u1 / u2; | |
2138 | - printf("#2137:ltosop u 3 %llu\n",u); | |
2139 | - u = u1 * u2; | |
2140 | - printf("#2139:ltosop u 4 %llu\n",u); | |
2141 | - u = u1 | u2; | |
2142 | - printf("#2141:ltosop u 5 %llu\n",u); | |
2143 | - u = u1 & u2; | |
2144 | - printf("#2143:ltosop u 6 %llu\n",u); | |
2145 | - u = u1 ^ u2; | |
2146 | - printf("#2145:ltosop u 7 %llu\n",u); | |
2147 | - u2 = 3; | |
2148 | - u = u1 << u2; | |
2149 | - printf("#2148:ltosop u 8 %llu\n",u); | |
2150 | - u = u1 >> u2; | |
2151 | - printf("#2150:ltosop u 9 %llu\n",u); | |
2152 | - u = u1 % u2; | |
2153 | - printf("#2152:ltosop u 10 %llu\n",u); | |
2154 | - | |
2155 | - i = i1 + ii2; | |
2156 | - printf("#2155:litosop 1 %lld\n",i); | |
2157 | - i = i1 - ii2; | |
2158 | - printf("#2157:litosop 2 %lld\n",i); | |
2159 | - i = i1 / ii2; | |
2160 | - printf("#2159:litosop 3 %lld\n",i); | |
2161 | - i = i1 * ii2; | |
2162 | - printf("#2161:litosop 4 %lld\n",i); | |
2163 | - i = i1 | ii2; | |
2164 | - printf("#2163:litosop 5 %lld\n",i); | |
2165 | - i = i1 & ii2; | |
2166 | - printf("#2165:litosop 6 %lld\n",i); | |
2167 | - i = i1 ^ ii2; | |
2168 | - printf("#2167:litosop 7 %lld\n",i); | |
2169 | - ii2 = 3; | |
2170 | - i = i1 << ii2; | |
2171 | - printf("#2170:litosop 8 %lld\n",i); | |
2172 | - i = i1 >> ii2; | |
2173 | - printf("#2172:litosop 9 %lld\n",i); | |
2174 | - i = i1 % ii2; | |
2175 | - printf("#2174:litosop 10 %lld\n",i); | |
2176 | - | |
2177 | - u = u1 + uu2; | |
2178 | - printf("#2177:litosop u 1 %llu\n",u); | |
2179 | - u = u1 - uu2; | |
2180 | - printf("#2179:litosop u 2 %llu\n",u); | |
2181 | - u = u1 / uu2; | |
2182 | - printf("#2181:litosop u 3 %llu\n",u); | |
2183 | - u = u1 * uu2; | |
2184 | - printf("#2183:litosop u 4 %llu\n",u); | |
2185 | - u = u1 | uu2; | |
2186 | - printf("#2185:litosop u 5 %llu\n",u); | |
2187 | - u = u1 & uu2; | |
2188 | - printf("#2187:litosop u 6 %llu\n",u); | |
2189 | - u = u1 ^ uu2; | |
2190 | - printf("#2189:litosop u 7 %llu\n",u); | |
2191 | - uu2 = 3; | |
2192 | - u = u1 << uu2; | |
2193 | - printf("#2192:litosop u 8 %llu\n",u); | |
2194 | - u = u1 >> uu2; | |
2195 | - printf("#2194:litosop u 9 %llu\n",u); | |
2196 | - u = u1 % uu2; | |
2197 | - printf("#2196:litosop u 10 %llu\n",u); | |
2198 | -} | |
2199 | - | |
2200 | -// loprtc(int op,int v) | |
2201 | -void | |
2202 | -inline loprtc(){ | |
2203 | - long long i1,i; | |
2204 | - unsigned long long u1,u; | |
2205 | - i1 = -555; | |
2206 | - u1 = 632423423; | |
2207 | - | |
2208 | - i = i1 + 3; | |
2209 | - printf("#2208:loprtc 1 %lld\n",i); | |
2210 | - i = i1 - 3; | |
2211 | - printf("#2210:loprtc 2 %lld\n",i); | |
2212 | - i = i1 / 32323423423LL; | |
2213 | - printf("#2212:loprtc 3 %lld\n",i); | |
2214 | - i = i1 * 323423423423LL; | |
2215 | - printf("#2214:loprtc 4 %lld\n",i); | |
2216 | - i = i1 | 234234234; | |
2217 | - printf("#2216:loprtc 5 %lld\n",i); | |
2218 | - i = i1 & 23234234; | |
2219 | - printf("#2218:loprtc 6 %lld\n",i); | |
2220 | - i = i1 ^ 23234234; | |
2221 | - printf("#2220:loprtc 7 %lld\n",i); | |
2222 | - i = i1 << 5; | |
2223 | - printf("#2222:loprtc 8 %lld\n",i); | |
2224 | - i = i1 >> 5; | |
2225 | - printf("#2224:loprtc 9 %lld\n",i); | |
2226 | - i = i1 << 38; | |
2227 | - printf("#2226:loprtc 8 %lld\n",i); | |
2228 | - i = i1 >> 38; | |
2229 | - printf("#2228:loprtc 9 %lld\n",i); | |
2230 | - i = i1 % 5; | |
2231 | - printf("#2230:loprtc 10 %lld\n",i); | |
2232 | - i = i1 / 8; | |
2233 | - printf("#2232:loprtc 3 %lld\n",i); | |
2234 | - i = i1 / 256; | |
2235 | - printf("#2234:loprtc 3 %lld\n",i); | |
2236 | - i = i1 % 8; | |
2237 | - printf("#2236:loprtc 3 %lld\n",i); | |
2238 | - i = i1 % 256; | |
2239 | - printf("#2238:loprtc 3 %lld\n",i); | |
2240 | - i = i1 * 8; | |
2241 | - printf("#2240:loprtc 3 %lld\n",i); | |
2242 | - i = i1 * 256; | |
2243 | - printf("#2242:loprtc 3 %lld\n",i); | |
2244 | - | |
2245 | - u = u1 + 3; | |
2246 | - printf("#2245:loprtc 1 u %llu\n",u); | |
2247 | - u = u1 - 3; | |
2248 | - printf("#2247:loprtc 2 u %llu\n",u); | |
2249 | - u = u1 / 32342342344234LL; | |
2250 | - printf("#2249:loprtc 3 u %llu\n",u); | |
2251 | - u = u1 * 243234234232324LL; | |
2252 | - printf("#2251:loprtc 4 u %llu\n",u); | |
2253 | - u = u1 | 234234234; | |
2254 | - printf("#2253:loprtc 5 u %llu\n",u); | |
2255 | - u = u1 & 234234234; | |
2256 | - printf("#2255:loprtc 6 u %llu\n",u); | |
2257 | - u = u1 ^ 234234234; | |
2258 | - printf("#2257:loprtc 7 u %llu\n",u); | |
2259 | - u = u1 << 5; | |
2260 | - printf("#2259:loprtc 8 u %llu\n",u); | |
2261 | - u = u1 >> 5; | |
2262 | - printf("#2261:loprtc 9 u %llu\n",u); | |
2263 | - u = u1 << 38; | |
2264 | - printf("#2263:loprtc 8 u %llu\n",u); | |
2265 | - u = u1 >> 38; | |
2266 | - printf("#2265:loprtc 9 u %llu\n",u); | |
2267 | - u = u1 % 5; | |
2268 | - printf("#2267:loprtc 10 u %llu\n",u); | |
2269 | - u = u1 / 8; | |
2270 | - printf("#2269:loprtc 3 %lld\n",i); | |
2271 | - u = u1 / 256; | |
2272 | - printf("#2271:loprtc 3 %lld\n",i); | |
2273 | - u = u1 / 8; | |
2274 | - printf("#2273:loprtc 3 %lld\n",i); | |
2275 | - u = u1 / 256; | |
2276 | - printf("#2275:loprtc 3 %lld\n",i); | |
2277 | - u = u1 % 8; | |
2278 | - printf("#2277:loprtc 3 %lld\n",i); | |
2279 | - u = u1 % 256; | |
2280 | - printf("#2279:loprtc 3 %lld\n",i); | |
2281 | - u = u1 * 8; | |
2282 | - printf("#2281:loprtc 3 %lld\n",i); | |
2283 | - u = u1 * 256; | |
2284 | - printf("#2283:loprtc 3 %lld\n",i); | |
2285 | -} | |
2286 | - | |
2287 | - | |
2288 | -// ltosop(int e1,int e2) | |
2289 | -void | |
2290 | -inline ltosop_register(){ | |
2291 | - register long long i1,i2,i; | |
2292 | - register unsigned long long u1,u2,u; | |
2293 | - register int ii2; | |
2294 | - register unsigned int uu2; | |
2295 | - i1 = -555; i2= 555; | |
2296 | - u1 = 632423423; u2= 32394234; | |
2297 | - ii2 = -33; | |
2298 | - uu2 = 33; | |
2299 | - u = 0; | |
2300 | - | |
2301 | - i = i1 + i2; | |
2302 | - printf("#2301:ltosop r 1 %lld\n",i); | |
2303 | - i = i1 - i2; | |
2304 | - printf("#2303:ltosop r 2 %lld\n",i); | |
2305 | - i = i1 / i2; | |
2306 | - printf("#2305:ltosop r 3 %lld\n",i); | |
2307 | - i = i1 * i2; | |
2308 | - printf("#2307:ltosop r 4 %lld\n",i); | |
2309 | - i = i1 | i2; | |
2310 | - printf("#2309:ltosop r 5 %lld\n",i); | |
2311 | - i = i1 & i2; | |
2312 | - printf("#2311:ltosop r 6 %lld\n",i); | |
2313 | - i = i1 ^ i2; | |
2314 | - printf("#2313:ltosop r 7 %lld\n",i); | |
2315 | - i2 = 3; | |
2316 | - i = i1 << i2; | |
2317 | - printf("#2316:ltosop r 8 %lld\n",i); | |
2318 | - i = i1 >> i2; | |
2319 | - printf("#2318:ltosop r 9 %lld\n",i); | |
2320 | - i = i1 % i2; | |
2321 | - printf("#2320:ltosop r 10 %lld\n",i); | |
2322 | - | |
2323 | - u = u1 + u2; | |
2324 | - printf("#2323:ltosop r u 1 %llu\n",u); | |
2325 | - u = u1 - u2; | |
2326 | - printf("#2325:ltosop r u 2 %llu\n",u); | |
2327 | - u = u1 / u2; | |
2328 | - printf("#2327:ltosop r u 3 %llu\n",u); | |
2329 | - u = u1 * u2; | |
2330 | - printf("#2329:ltosop r u 4 %llu\n",u); | |
2331 | - u = u1 | u2; | |
2332 | - printf("#2331:ltosop r u 5 %llu\n",u); | |
2333 | - u = u1 & u2; | |
2334 | - printf("#2333:ltosop r u 6 %llu\n",u); | |
2335 | - u = u1 ^ u2; | |
2336 | - printf("#2335:ltosop r u 7 %llu\n",u); | |
2337 | - u2 = 3; | |
2338 | - u = u1 << u2; | |
2339 | - printf("#2338:ltosop r u 8 %llu\n",u); | |
2340 | - u = u1 >> u2; | |
2341 | - printf("#2340:ltosop r u 9 %llu\n",u); | |
2342 | - u = u1 % u2; | |
2343 | - printf("#2342:ltosop r u 10 %llu\n",u); | |
2344 | - | |
2345 | - i = i1 + ii2; | |
2346 | - printf("#2345:litosop r 1 %lld\n",i); | |
2347 | - i = i1 - ii2; | |
2348 | - printf("#2347:litosop r 2 %lld\n",i); | |
2349 | - i = i1 / ii2; | |
2350 | - printf("#2349:litosop r 3 %lld\n",i); | |
2351 | - i = i1 * ii2; | |
2352 | - printf("#2351:litosop r 4 %lld\n",i); | |
2353 | - i = i1 | ii2; | |
2354 | - printf("#2353:litosop r 5 %lld\n",i); | |
2355 | - i = i1 & ii2; | |
2356 | - printf("#2355:litosop r 6 %lld\n",i); | |
2357 | - i = i1 ^ ii2; | |
2358 | - printf("#2357:litosop r 7 %lld\n",i); | |
2359 | - ii2 = 3; | |
2360 | - i = i1 << ii2; | |
2361 | - printf("#2360:litosop r 8 %lld\n",i); | |
2362 | - i = i1 >> ii2; | |
2363 | - printf("#2362:litosop r 9 %lld\n",i); | |
2364 | - i = i1 % ii2; | |
2365 | - printf("#2364:litosop r 10 %lld\n",i); | |
2366 | - | |
2367 | - u = u1 + uu2; | |
2368 | - printf("#2367:litosop r u 1 %llu\n",u); | |
2369 | - u = u1 - uu2; | |
2370 | - printf("#2369:litosop r u 2 %llu\n",u); | |
2371 | - u = u1 / uu2; | |
2372 | - printf("#2371:litosop r u 3 %llu\n",u); | |
2373 | - u = u1 * uu2; | |
2374 | - printf("#2373:litosop r u 4 %llu\n",u); | |
2375 | - u = u1 | uu2; | |
2376 | - printf("#2375:litosop r u 5 %llu\n",u); | |
2377 | - u = u1 & uu2; | |
2378 | - printf("#2377:litosop r u 6 %llu\n",u); | |
2379 | - u = u1 ^ uu2; | |
2380 | - printf("#2379:litosop r u 7 %llu\n",u); | |
2381 | - uu2 = 3; | |
2382 | - u = u1 << uu2; | |
2383 | - printf("#2382:litosop r u 8 %llu\n",u); | |
2384 | - u = u1 >> uu2; | |
2385 | - printf("#2384:litosop r u 9 %llu\n",u); | |
2386 | - u = u1 % uu2; | |
2387 | - printf("#2386:litosop r u 10 %llu\n",u); | |
2388 | -} | |
2389 | - | |
2390 | -// loprtc(int op,int v) | |
2391 | -void | |
2392 | -inline loprtc_register(){ | |
2393 | - register long long i1,i; | |
2394 | - register unsigned long long u1,u; | |
2395 | - i1 = -555; | |
2396 | - u1 = 632423423; | |
2397 | - | |
2398 | - i = i1 + 3; | |
2399 | - printf("#2398:loprtc r 1 %lld\n",i); | |
2400 | - i = i1 - 3; | |
2401 | - printf("#2400:loprtc r 2 %lld\n",i); | |
2402 | - i = i1 / 32323423423LL; | |
2403 | - printf("#2402:loprtc r 3 %lld\n",i); | |
2404 | - i = i1 * 323423423423LL; | |
2405 | - printf("#2404:loprtc r 4 %lld\n",i); | |
2406 | - i = i1 | 234234234; | |
2407 | - printf("#2406:loprtc r 5 %lld\n",i); | |
2408 | - i = i1 & 23234234; | |
2409 | - printf("#2408:loprtc r 6 %lld\n",i); | |
2410 | - i = i1 ^ 23234234; | |
2411 | - printf("#2410:loprtc r 7 %lld\n",i); | |
2412 | - i = i1 << 5; | |
2413 | - printf("#2412:loprtc r 8 %lld\n",i); | |
2414 | - i = i1 >> 5; | |
2415 | - printf("#2414:loprtc r 9 %lld\n",i); | |
2416 | - i = i1 << 38; | |
2417 | - printf("#2416:loprtc r 8 %lld\n",i); | |
2418 | - i = i1 >> 38; | |
2419 | - printf("#2418:loprtc r 9 %lld\n",i); | |
2420 | - i = i1 % 5; | |
2421 | - printf("#2420:loprtc r 10 %lld\n",i); | |
2422 | - i = i1 / 8; | |
2423 | - printf("#2422:loprtc r 10 %lld\n",i); | |
2424 | - i = i1 / 256; | |
2425 | - printf("#2424:loprtc r 10 %lld\n",i); | |
2426 | - i = i1 * 8; | |
2427 | - printf("#2426:loprtc r 10 %lld\n",i); | |
2428 | - i = i1 * 256; | |
2429 | - printf("#2428:loprtc r 10 %lld\n",i); | |
2430 | - | |
2431 | - u = u1 + 3; | |
2432 | - printf("#2431:loprtc r 1 u %llu\n",u); | |
2433 | - u = u1 - 3; | |
2434 | - printf("#2433:loprtc r 2 u %llu\n",u); | |
2435 | - u = u1 / 32342342344234LL; | |
2436 | - printf("#2435:loprtc r 3 u %llu\n",u); | |
2437 | - u = u1 * 243234234232324LL; | |
2438 | - printf("#2437:loprtc r 4 u %llu\n",u); | |
2439 | - u = u1 | 234234234; | |
2440 | - printf("#2439:loprtc r 5 u %llu\n",u); | |
2441 | - u = u1 & 234234234; | |
2442 | - printf("#2441:loprtc r 6 u %llu\n",u); | |
2443 | - u = u1 ^ 234234234; | |
2444 | - printf("#2443:loprtc r 7 u %llu\n",u); | |
2445 | - u = u1 << 5; | |
2446 | - printf("#2445:loprtc r 8 u %llu\n",u); | |
2447 | - u = u1 >> 5; | |
2448 | - printf("#2447:loprtc r 9 u %llu\n",u); | |
2449 | - u = u1 << 38; | |
2450 | - printf("#2449:loprtc r 8 u %llu\n",u); | |
2451 | - u = u1 >> 38; | |
2452 | - printf("#2451:loprtc r 9 u %llu\n",u); | |
2453 | - u = u1 % 5; | |
2454 | - printf("#2453:loprtc r 10 u %llu\n",u); | |
2455 | - u = u1 / 8; | |
2456 | - printf("#2455:loprtc r 10 u %lld\n",u); | |
2457 | - u = u1 / 256; | |
2458 | - printf("#2457:loprtc r 10 u %lld\n",u); | |
2459 | - u = u1 * 8; | |
2460 | - printf("#2459:loprtc r 10 u %lld\n",u); | |
2461 | - u = u1 * 256; | |
2462 | - printf("#2461:loprtc r 10 u %lld\n",u); | |
2463 | -} | |
2464 | - | |
2465 | - | |
2466 | -// code_i2ll(int creg) | |
2467 | -void | |
2468 | -inline code_i2ll(){ | |
2469 | - long long d; | |
2470 | - int i; | |
2471 | - i = 23442342; | |
2472 | - d = i; | |
2473 | - printf("#2472:code_i2ll %lld\n",d); | |
2474 | -} | |
2475 | -// code_i2ull(int creg) | |
2476 | -void | |
2477 | -inline code_i2ull(){ | |
2478 | - unsigned long long d; | |
2479 | - int i; | |
2480 | - i = 23442342; | |
2481 | - d = i; | |
2482 | - printf("#2481:code_i2ull %lld\n",d); | |
2483 | -} | |
2484 | -// code_u2ll(int creg) | |
2485 | -void | |
2486 | -inline code_u2ll(){ | |
2487 | - long long d; | |
2488 | - unsigned int i; | |
2489 | - i = 23442342; | |
2490 | - d = i; | |
2491 | - printf("#2490:code_u2ll %lld\n",d); | |
2492 | -} | |
2493 | -// code_u2ull(int creg) | |
2494 | -void | |
2495 | -inline code_u2ull(){ | |
2496 | - unsigned long long d; | |
2497 | - unsigned int i; | |
2498 | - i = 23342342; | |
2499 | - d = i; | |
2500 | - printf("#2499:code_u2ull %llu\n",d); | |
2501 | -} | |
2502 | -// code_ll2i(int creg) | |
2503 | -void | |
2504 | -inline code_ll2i(){ | |
2505 | - long long d; | |
2506 | - int i; | |
2507 | - d = 2342342342LL; | |
2508 | - i = d; | |
2509 | - printf("#2508:code_ll2i %d\n",i); | |
2510 | -} | |
2511 | -// code_ll2u(int creg) | |
2512 | -void | |
2513 | -inline code_ll2u(){ | |
2514 | - long long d; | |
2515 | - unsigned int i; | |
2516 | - d = 2342342342LL; | |
2517 | - i = d; | |
2518 | - printf("#2517:code_ll2i %ud\n",i); | |
2519 | -} | |
2520 | -// code_ull2i(int creg) | |
2521 | -void | |
2522 | -inline code_ull2i(){ | |
2523 | - unsigned long long d; | |
2524 | - int i; | |
2525 | - d = 2342342342LL; | |
2526 | - i = d; | |
2527 | - printf("#2526:code_ull2i %d\n",i); | |
2528 | -} | |
2529 | -// code_ull2u(int creg) | |
2530 | -void | |
2531 | -inline code_ull2u(){ | |
2532 | - unsigned long long d; | |
2533 | - unsigned int i; | |
2534 | - d = 2342342342LL; | |
2535 | - i = d; | |
2536 | - printf("#2535:code_ll2i %ud\n",i); | |
2537 | -} | |
2538 | -#if FLOAT_CODE | |
2539 | -// code_d2ll(int creg) | |
2540 | -void | |
2541 | -inline code_d2ll(){ | |
2542 | - long long d; | |
2543 | - double i; | |
2544 | - i = 2342342342LL; | |
2545 | - d = i; | |
2546 | - printf("#2545:code_d2ll %lld\n",d); | |
2547 | -} | |
2548 | -// code_d2ull(int creg) | |
2549 | -void | |
2550 | -inline code_d2ull(){ | |
2551 | - unsigned long long d; | |
2552 | - double i; | |
2553 | - i = 2342342342LL; | |
2554 | - d = i; | |
2555 | - printf("#2554:code_d2ll %llu\n",d); | |
2556 | -} | |
2557 | -// code_f2ll(int creg) | |
2558 | -void | |
2559 | -inline code_f2ll(){ | |
2560 | - long long d; | |
2561 | - float i; | |
2562 | - i = 2342342342LL; | |
2563 | - d = i; | |
2564 | - printf("#2563:code_f2ll %lld\n",d); | |
2565 | -} | |
2566 | -// code_f2ull(int creg) | |
2567 | -void | |
2568 | -inline code_f2ull(){ | |
2569 | - unsigned long long d; | |
2570 | - float i; | |
2571 | - i = 2342342342LL; | |
2572 | - d = i; | |
2573 | - printf("#2572:code_f2ull %llu\n",d); | |
2574 | -} | |
2575 | -// code_ll2d(int creg) | |
2576 | -void | |
2577 | -inline code_ll2d(){ | |
2578 | - long long d; | |
2579 | - double i; | |
2580 | - d = 2342342342LL; | |
2581 | - i = d; | |
2582 | - printf("#2581:code_ll2d %g\n",i); | |
2583 | -} | |
2584 | -// code_ll2f(int creg) | |
2585 | -void | |
2586 | -inline code_ll2f(){ | |
2587 | - long long d; | |
2588 | - float i; | |
2589 | - d = 2342342342LL; | |
2590 | - i = d; | |
2591 | - printf("#2590:code_ll2f %g\n",i); | |
2592 | -} | |
2593 | -// code_ull2d(int creg) | |
2594 | -void | |
2595 | -inline code_ull2d(){ | |
2596 | - long long d; | |
2597 | - double i; | |
2598 | - d = 2342342342LL; | |
2599 | - i = d; | |
2600 | - printf("#2599:code_ull2f %g\n",i); | |
2601 | -} | |
2602 | -// code_ull2f(int creg) | |
2603 | -void | |
2604 | -inline code_ull2f(){ | |
2605 | - long long d; | |
2606 | - float i; | |
2607 | - d = 2342342342LL; | |
2608 | - i = d; | |
2609 | - printf("#2608:code_ull2f %g\n",i); | |
2610 | -} | |
2611 | -#endif | |
2612 | - | |
2613 | -// code_lpreinc(int e1,int e2,int reg) | |
2614 | -void | |
2615 | -inline code_lpreinc(){ | |
2616 | - long long i,j; | |
2617 | - i = 123123123;j = 0; | |
2618 | - printf("#2617:code_preinc l %lld %lld",++i,--j); | |
2619 | - printf("#2618: %lld %lld\n",i,j); | |
2620 | -} | |
2621 | - | |
2622 | -// code_lpostinc(int e1,int e2,int reg) | |
2623 | -void | |
2624 | -inline code_lpostinc(){ | |
2625 | - long long i,j; | |
2626 | - i = 123123123;j = 0; | |
2627 | - printf("#2626:code_postinc l %lld %lld",i++,j--); | |
2628 | - printf("#2627: %lld %lld\n",i,j); | |
2629 | -} | |
2630 | - | |
2631 | -// code_lpreinc(int e1,int e2,int reg) | |
2632 | -void | |
2633 | -inline code_lupreinc(){ | |
2634 | - register unsigned long long i,j; | |
2635 | - i = 123123123;j = 0; | |
2636 | - printf("#2635:code_preinc l %llu %llu",++i,--j); | |
2637 | - printf("#2636: %lld %lld\n",i,j); | |
2638 | -} | |
2639 | - | |
2640 | -// code_lpostinc(int e1,int e2,int reg) | |
2641 | -void | |
2642 | -inline code_lupostinc(){ | |
2643 | - register unsigned long long i,j; | |
2644 | - i = 123123123;j = 0; | |
2645 | - printf("#2644:code_postinc lu %llu %llu",i++,j--); | |
2646 | - printf("#2645: %lld %lld\n",i,j); | |
2647 | -} | |
2648 | - | |
2649 | -// code_lpreinc(int e1,int e2,int reg) | |
2650 | -void | |
2651 | -inline code_register_lpreinc(){ | |
2652 | - register long long i,j; | |
2653 | - i = 123123123;j = 0; | |
2654 | - printf("#2653:code_preinc l r %lld %lld",++i,--j); | |
2655 | - printf("#2654: %lld %lld\n",i,j); | |
2656 | -} | |
2657 | - | |
2658 | -// code_lpostinc(int e1,int e2,int reg) | |
2659 | -void | |
2660 | -inline code_register_lpostinc(){ | |
2661 | - register long long i,j; | |
2662 | - i = 123123123;j = 0; | |
2663 | - printf("#2662:code_postinc l r %lld %lld",i++,j--); | |
2664 | - printf("#2663: %lld %lld\n",i,j); | |
2665 | -} | |
2666 | - | |
2667 | -// code_lpreinc(int e1,int e2,int reg) | |
2668 | -void | |
2669 | -inline code_register_lupreinc(){ | |
2670 | - register unsigned long long i,j; | |
2671 | - i = 123123123;j = 0; | |
2672 | - printf("#2671:code_preinc l r %llu %llu",++i,--j); | |
2673 | - printf("#2672: %lld %lld\n",i,j); | |
2674 | -} | |
2675 | - | |
2676 | -// code_lpostinc(int e1,int e2,int reg) | |
2677 | -void | |
2678 | -inline code_register_lupostinc(){ | |
2679 | - register unsigned long long i,j; | |
2680 | - i = 123123123;j = 0; | |
2681 | - printf("#2680:code_postinc lu r %llu %llu",i++,j--); | |
2682 | - printf("#2681: %lld %lld\n",i,j); | |
2683 | -} | |
2684 | - | |
2685 | -// code_lassop(int op) | |
2686 | - | |
2687 | -// code_register_assop(int e2,int op,int byte) | |
2688 | -void | |
2689 | -inline code_register_lassop(){ | |
2690 | - register long long i1; | |
2691 | - register unsigned long long ui1; | |
2692 | - long long a = 3; | |
2693 | - i1 = -555; | |
2694 | - ui1 = 632423423; | |
2695 | - | |
2696 | - i1 += a; | |
2697 | - printf("#2696:code_register_lassop 1 %lld\n",i1); | |
2698 | - i1 -= a; | |
2699 | - printf("#2698:code_register_lassop 2 %lld\n",i1); | |
2700 | - i1 /= a; | |
2701 | - printf("#2700:code_register_lassop 3 %lld\n",i1); | |
2702 | - i1 *= a; | |
2703 | - printf("#2702:code_register_lassop 4 %lld\n",i1); | |
2704 | - i1 |= a; | |
2705 | - printf("#2704:code_register_lassop 5 %lld\n",i1); | |
2706 | - i1 &= a; | |
2707 | - printf("#2706:code_register_lassop 6 %lld\n",i1); | |
2708 | - i1 ^= a; | |
2709 | - printf("#2708:code_register_lassop 7 %lld\n",i1); | |
2710 | - i1 <<= a; | |
2711 | - printf("#2710:code_register_lassop 8 %lld\n",i1); | |
2712 | - i1 >>= a; | |
2713 | - printf("#2712:code_register_lassop 9 %lld\n",i1); | |
2714 | - | |
2715 | - ui1 += a; | |
2716 | - printf("#2715:code_register_lassop 1 %llu\n",ui1); | |
2717 | - ui1 -= a; | |
2718 | - printf("#2717:code_register_lassop 2 %llu\n",ui1); | |
2719 | - ui1 /= a; | |
2720 | - printf("#2719:code_register_lassop 3 %llu\n",ui1); | |
2721 | - ui1 *= a; | |
2722 | - printf("#2721:code_register_lassop 4 %llu\n",ui1); | |
2723 | - ui1 |= a; | |
2724 | - printf("#2723:code_register_lassop 5 %llu\n",ui1); | |
2725 | - ui1 &= a; | |
2726 | - printf("#2725:code_register_lassop 6 %llu\n",ui1); | |
2727 | - ui1 ^= a; | |
2728 | - printf("#2727:code_register_lassop 7 %llu\n",ui1); | |
2729 | - ui1 <<= a; | |
2730 | - printf("#2729:code_register_lassop 8 %llu\n",ui1); | |
2731 | - ui1 >>= a; | |
2732 | - printf("#2731:code_register_lassop 9 %llu\n",ui1); | |
2733 | -} | |
2734 | - | |
2735 | -// code_lassop(int op,int byte,int sign) | |
2736 | -void | |
2737 | -inline code_lassop(){ | |
2738 | - long long i1,i2; | |
2739 | - unsigned long long ui1,ui2; | |
2740 | - long long a = 3; | |
2741 | - i1 = -555; i2= 555; | |
2742 | - ui1 = 632423423; ui2= 32394234; | |
2743 | - | |
2744 | - i1 += a; | |
2745 | - printf("#2744:code_lassop 1 %lld\n",i1); | |
2746 | - i1 -= a; | |
2747 | - printf("#2746:code_lassop 2 %lld\n",i1); | |
2748 | - i1 /= a; | |
2749 | - printf("#2748:code_lassop 3 %lld\n",i1); | |
2750 | - i1 *= a; | |
2751 | - printf("#2750:code_lassop 4 %lld\n",i1); | |
2752 | - i1 |= a; | |
2753 | - printf("#2752:code_lassop 5 %lld\n",i1); | |
2754 | - i1 &= a; | |
2755 | - printf("#2754:code_lassop 6 %lld\n",i1); | |
2756 | - i1 ^= a; | |
2757 | - printf("#2756:code_lassop 7 %lld\n",i1); | |
2758 | - i1 <<= a; | |
2759 | - printf("#2758:code_lassop 8 %lld\n",i1); | |
2760 | - i1 >>= a; | |
2761 | - printf("#2760:code_lassop 9 %lld\n",i1); | |
2762 | - | |
2763 | - ui1 += a; | |
2764 | - printf("#2763:code_lassop 1 %llu\n",ui1); | |
2765 | - ui1 -= a; | |
2766 | - printf("#2765:code_lassop 2 %llu\n",ui1); | |
2767 | - ui1 /= a; | |
2768 | - printf("#2767:code_lassop 3 %llu\n",ui1); | |
2769 | - ui1 *= a; | |
2770 | - printf("#2769:code_lassop 4 %llu\n",ui1); | |
2771 | - ui1 |= a; | |
2772 | - printf("#2771:code_lassop 5 %llu\n",ui1); | |
2773 | - ui1 &= a; | |
2774 | - printf("#2773:code_lassop 6 %llu\n",ui1); | |
2775 | - ui1 ^= a; | |
2776 | - printf("#2775:code_lassop 7 %llu\n",ui1); | |
2777 | - ui1 <<= a; | |
2778 | - printf("#2777:code_lassop 8 %llu\n",ui1); | |
2779 | - ui1 >>= a; | |
2780 | - printf("#2779:code_lassop 9 %llu\n",ui1); | |
2781 | -} | |
2782 | - | |
2783 | -// code_register_assop(int e2,int op,int byte) | |
2784 | -void | |
2785 | -inline code_register_lassop_const(){ | |
2786 | - register long long i1; | |
2787 | - register unsigned long long ui1; | |
2788 | - i1 = -555; | |
2789 | - ui1 = 632423423; | |
2790 | - | |
2791 | - i1 += 3; | |
2792 | - printf("#2791:code_register_lassop c 1 %lld\n",i1); | |
2793 | - i1 -= 3; | |
2794 | - printf("#2793:code_register_lassop c 2 %lld\n",i1); | |
2795 | - i1 /= 3; | |
2796 | - printf("#2795:code_register_lassop c 3 %lld\n",i1); | |
2797 | - i1 *= 3; | |
2798 | - printf("#2797:code_register_lassop c 4 %lld\n",i1); | |
2799 | - i1 |= 234; | |
2800 | - printf("#2799:code_register_lassop c 5 %lld\n",i1); | |
2801 | - i1 &= 2324234234234234LL; | |
2802 | - printf("#2801:code_register_lassop c 6 %lld\n",i1); | |
2803 | - i1 ^= 5523234234234234LL; | |
2804 | - printf("#2803:code_register_lassop c 7 %lld\n",i1); | |
2805 | - i1 <<= 3; | |
2806 | - printf("#2805:code_register_lassop c 8 %lld\n",i1); | |
2807 | - i1 >>= 3; | |
2808 | - printf("#2807:code_register_lassop c 9 %lld\n",i1); | |
2809 | - | |
2810 | - ui1 += 3; | |
2811 | - printf("#2810:code_register_lassop c 1 %llu\n",ui1); | |
2812 | - ui1 -= 3; | |
2813 | - printf("#2812:code_register_lassop c 2 %llu\n",ui1); | |
2814 | - ui1 /= 3; | |
2815 | - printf("#2814:code_register_lassop c 3 %llu\n",ui1); | |
2816 | - ui1 *= 3; | |
2817 | - printf("#2816:code_register_lassop c 4 %llu\n",ui1); | |
2818 | - ui1 |= 234; | |
2819 | - printf("#2818:code_register_lassop c 5 %llu\n",ui1); | |
2820 | - ui1 &= 2324234234234234LL; | |
2821 | - printf("#2820:code_register_lassop c 6 %llu\n",ui1); | |
2822 | - ui1 ^= 5523234234234234LL; | |
2823 | - printf("#2822:code_register_lassop c 7 %llu\n",ui1); | |
2824 | - ui1 <<= 3; | |
2825 | - printf("#2824:code_register_lassop c 8 %llu\n",ui1); | |
2826 | - ui1 >>= 3; | |
2827 | - printf("#2826:code_register_lassop c 9 %llu\n",ui1); | |
2828 | -} | |
2829 | - | |
2830 | -// code_lassop(int op,int byte,int sign) | |
2831 | -void | |
2832 | -inline code_lassop_const(){ | |
2833 | - long long i1,i2; | |
2834 | - unsigned long long ui1,ui2; | |
2835 | - i1 = -555; i2= 555; | |
2836 | - ui1 = 632423423; ui2= 32394234; | |
2837 | - | |
2838 | - i1 += 3; | |
2839 | - printf("#2838:code_lassop c 1 %lld\n",i1); | |
2840 | - i1 -= 3; | |
2841 | - printf("#2840:code_lassop c 2 %lld\n",i1); | |
2842 | - i1 /= 3; | |
2843 | - printf("#2842:code_lassop c 3 %lld\n",i1); | |
2844 | - i1 *= 3; | |
2845 | - printf("#2844:code_lassop c 4 %lld\n",i1); | |
2846 | - i1 |= 234; | |
2847 | - printf("#2846:code_lassop c 5 %lld\n",i1); | |
2848 | - i1 &= 2324234234234234LL; | |
2849 | - printf("#2848:code_lassop c 6 %lld\n",i1); | |
2850 | - i1 ^= 5523234234234234LL; | |
2851 | - printf("#2850:code_lassop c 7 %lld\n",i1); | |
2852 | - i1 <<= 3; | |
2853 | - printf("#2852:code_lassop c 8 %lld\n",i1); | |
2854 | - i1 >>= 3; | |
2855 | - printf("#2854:code_lassop c 9 %lld\n",i1); | |
2856 | - | |
2857 | - ui1 += 3; | |
2858 | - printf("#2857:code_lassop c 1 %llu\n",ui1); | |
2859 | - ui1 -= 3; | |
2860 | - printf("#2859:code_lassop c 2 %llu\n",ui1); | |
2861 | - ui1 /= 3; | |
2862 | - printf("#2861:code_lassop c 3 %llu\n",ui1); | |
2863 | - ui1 *= 3; | |
2864 | - printf("#2863:code_lassop c 4 %llu\n",ui1); | |
2865 | - ui1 |= 234; | |
2866 | - printf("#2865:code_lassop c 5 %llu\n",ui1); | |
2867 | - ui1 &= 2324234234234234LL; | |
2868 | - printf("#2867:code_lassop c 6 %llu\n",ui1); | |
2869 | - ui1 ^= 5523234234234234LL; | |
2870 | - printf("#2869:code_lassop c 7 %llu\n",ui1); | |
2871 | - ui1 <<= 3; | |
2872 | - printf("#2871:code_lassop c 8 %llu\n",ui1); | |
2873 | - ui1 >>= 3; | |
2874 | - printf("#2873:code_lassop c 9 %llu\n",ui1); | |
2875 | -} | |
2876 | - | |
2877 | -// lassop_l(int op,int byte,int sign) | |
2878 | -void | |
2879 | -inline code_lassop_l(){ | |
2880 | - struct hoge { long long i1,i2; | |
2881 | - unsigned long long ui1,ui2; | |
2882 | - } s, *p; | |
2883 | - long long a = 3; | |
2884 | - p = &s; | |
2885 | - | |
2886 | - p->i1 = -555; p->i2= 555; | |
2887 | - p->ui1 = 632423423; p->ui2= 32394234; | |
2888 | - | |
2889 | - p->i1 += a; | |
2890 | - printf("#2889:lassop 1 %lld\n",p->i1); | |
2891 | - p->i1 -= a; | |
2892 | - printf("#2891:lassop 2 %lld\n",p->i1); | |
2893 | - p->i1 /= a; | |
2894 | - printf("#2893:lassop 3 %lld\n",p->i1); | |
2895 | - p->i1 *= a; | |
2896 | - printf("#2895:lassop 4 %lld\n",p->i1); | |
2897 | - p->i1 |= a; | |
2898 | - printf("#2897:lassop 5 %lld\n",p->i1); | |
2899 | - p->i1 &= a; | |
2900 | - printf("#2899:lassop 6 %lld\n",p->i1); | |
2901 | - p->i1 ^= a; | |
2902 | - printf("#2901:lassop 7 %lld\n",p->i1); | |
2903 | - p->i1 <<= a; | |
2904 | - printf("#2903:lassop 8 %lld\n",p->i1); | |
2905 | - p->i1 >>= a; | |
2906 | - printf("#2905:lassop 9 %lld\n",p->i1); | |
2907 | - | |
2908 | - p->ui1 += a; | |
2909 | - printf("#2908:lassop 1 %llu\n",p->ui1); | |
2910 | - p->ui1 -= a; | |
2911 | - printf("#2910:lassop 2 %llu\n",p->ui1); | |
2912 | - p->ui1 /= a; | |
2913 | - printf("#2912:lassop 3 %llu\n",p->ui1); | |
2914 | - p->ui1 *= a; | |
2915 | - printf("#2914:lassop 4 %llu\n",p->ui1); | |
2916 | - p->ui1 |= a; | |
2917 | - printf("#2916:lassop 5 %llu\n",p->ui1); | |
2918 | - p->ui1 &= a; | |
2919 | - printf("#2918:lassop 6 %llu\n",p->ui1); | |
2920 | - p->ui1 ^= a; | |
2921 | - printf("#2920:lassop 7 %llu\n",p->ui1); | |
2922 | - p->ui1 <<= a; | |
2923 | - printf("#2922:lassop 8 %llu\n",p->ui1); | |
2924 | - p->ui1 >>= a; | |
2925 | - printf("#2924:lassop 9 %llu\n",p->ui1); | |
2926 | -} | |
2927 | - | |
2928 | -// lassop_g(int op,int byte,int sign) | |
2929 | - | |
2930 | -struct lghoge { long long i1,i2; | |
2931 | - unsigned long long ui1,ui2; | |
2932 | -} gls, *glp; | |
2933 | - | |
2934 | -void | |
2935 | -inline code_lassop_g(){ | |
2936 | - long long a = 3; | |
2937 | - glp = &gls; | |
2938 | - | |
2939 | - glp->i1 = -555; glp->i2= 555; | |
2940 | - glp->ui1 = 632423423; glp->ui2= 32394234; | |
2941 | - | |
2942 | - glp->i1 += a; | |
2943 | - printf("#2942:lassop 1 %lld\n",glp->i1); | |
2944 | - glp->i1 -= a; | |
2945 | - printf("#2944:lassop 2 %lld\n",glp->i1); | |
2946 | - glp->i1 /= a; | |
2947 | - printf("#2946:lassop 3 %lld\n",glp->i1); | |
2948 | - glp->i1 *= a; | |
2949 | - printf("#2948:lassop 4 %lld\n",glp->i1); | |
2950 | - glp->i1 |= a; | |
2951 | - printf("#2950:lassop 5 %lld\n",glp->i1); | |
2952 | - glp->i1 ^= a; | |
2953 | - printf("#2952:lassop 7 %lld\n",glp->i1); | |
2954 | - glp->i1 <<= a; | |
2955 | - printf("#2954:lassop 8 %lld\n",glp->i1); | |
2956 | - glp->i1 >>= a; | |
2957 | - printf("#2956:lassop 9 %lld\n",glp->i1); | |
2958 | - glp->i1 &= a; | |
2959 | - printf("#2958:lassop 6 %lld\n",glp->i1); | |
2960 | - | |
2961 | - glp->ui1 += a; | |
2962 | - printf("#2961:lassop 1 %llu\n",glp->ui1); | |
2963 | - glp->ui1 -= a; | |
2964 | - printf("#2963:lassop 2 %llu\n",glp->ui1); | |
2965 | - glp->ui1 /= a; | |
2966 | - printf("#2965:lassop 3 %llu\n",glp->ui1); | |
2967 | - glp->ui1 *= a; | |
2968 | - printf("#2967:lassop 4 %llu\n",glp->ui1); | |
2969 | - glp->ui1 |= a; | |
2970 | - printf("#2969:lassop 5 %llu\n",glp->ui1); | |
2971 | - glp->ui1 ^= a; | |
2972 | - printf("#2971:lassop 7 %llu\n",glp->ui1); | |
2973 | - glp->ui1 <<= a; | |
2974 | - printf("#2973:lassop 8 %llu\n",glp->ui1); | |
2975 | - glp->ui1 >>= a; | |
2976 | - printf("#2975:lassop 9 %llu\n",glp->ui1); | |
2977 | - glp->ui1 &= a; | |
2978 | - printf("#2977:lassop 6 %llu\n",glp->ui1); | |
2979 | -} | |
2980 | - | |
2981 | -void | |
2982 | -inline code_lassop_g_c(){ | |
2983 | - const int a = 3; | |
2984 | - glp = &gls; | |
2985 | - | |
2986 | - glp->i1 = -555; glp->i2= 555; | |
2987 | - glp->ui1 = 632423423; glp->ui2= 32394234; | |
2988 | - | |
2989 | - glp->i1 += a; | |
2990 | - printf("#2989:lassop_gc 1 %lld\n",glp->i1); | |
2991 | - glp->i1 -= a; | |
2992 | - printf("#2991:lassop_gc 2 %lld\n",glp->i1); | |
2993 | - glp->i1 /= a; | |
2994 | - printf("#2993:lassop_gc 3 %lld\n",glp->i1); | |
2995 | - glp->i1 *= a; | |
2996 | - printf("#2995:lassop_gc 4 %lld\n",glp->i1); | |
2997 | - glp->i1 |= a; | |
2998 | - printf("#2997:lassop_gc 5 %lld\n",glp->i1); | |
2999 | - glp->i1 ^= a; | |
3000 | - printf("#2999:lassop_gc 7 %lld\n",glp->i1); | |
3001 | - glp->i1 <<= a; | |
3002 | - printf("#3001:lassop_gc 8 %lld\n",glp->i1); | |
3003 | - glp->i1 >>= a; | |
3004 | - printf("#3003:lassop_gc 9 %lld\n",glp->i1); | |
3005 | - glp->i1 &= a; | |
3006 | - printf("#3005:lassop_gc 6 %lld\n",glp->i1); | |
3007 | - | |
3008 | - glp->ui1 += a; | |
3009 | - printf("#3008:lassop_gc 1 %llu\n",glp->ui1); | |
3010 | - glp->ui1 -= a; | |
3011 | - printf("#3010:lassop_gc 2 %llu\n",glp->ui1); | |
3012 | - glp->ui1 /= a; | |
3013 | - printf("#3012:lassop_gc 3 %llu\n",glp->ui1); | |
3014 | - glp->ui1 *= a; | |
3015 | - printf("#3014:lassop_gc 4 %llu\n",glp->ui1); | |
3016 | - glp->ui1 |= a; | |
3017 | - printf("#3016:lassop_gc 5 %llu\n",glp->ui1); | |
3018 | - glp->ui1 ^= a; | |
3019 | - printf("#3018:lassop_gc 7 %llu\n",glp->ui1); | |
3020 | - glp->ui1 <<= a; | |
3021 | - printf("#3020:lassop_gc 8 %llu\n",glp->ui1); | |
3022 | - glp->ui1 >>= a; | |
3023 | - printf("#3022:lassop_gc 9 %llu\n",glp->ui1); | |
3024 | - glp->ui1 &= a; | |
3025 | - printf("#3024:lassop_gc 6 %llu\n",glp->ui1); | |
3026 | -} | |
3027 | - | |
3028 | - | |
3029 | -// code_lgt(int cond) | |
3030 | - | |
3031 | -void | |
3032 | -inline code_lgt(){ | |
3033 | - long long reg; | |
3034 | - if (l0>l1) | |
3035 | - printf("#3034:code_lgt 1\n"); | |
3036 | - else | |
3037 | - printf("#3036:code_lgt 0\n"); | |
3038 | - for (reg=-3;reg<7;reg++) { | |
3039 | - if (0<reg && reg<3) | |
3040 | - printf("#3039:reg=%lld code_lgt 0<reg && reg <3\n",reg); | |
3041 | - } | |
3042 | - for (reg=-3;reg<7;reg++) { | |
3043 | - if (-2<reg && reg<0) | |
3044 | - printf("#3043:reg=%lld code_lgt -2<reg && reg <0\n",reg); | |
3045 | - } | |
3046 | -} | |
3047 | - | |
3048 | -// code_lugt(int cond) | |
3049 | -void | |
3050 | -inline code_lugt(){ | |
3051 | - unsigned long long reg; | |
3052 | - if (ul0>ul1) | |
3053 | - printf("#3052:code_lugt 1\n"); | |
3054 | - else | |
3055 | - printf("#3054:code_lugt 0\n"); | |
3056 | - for (reg=0;reg<7;reg++) { | |
3057 | - if (2<reg && reg<4) | |
3058 | - printf("#3057:reg=%llu code_lugt 2<reg && reg <4\n",reg); | |
3059 | - } | |
3060 | - for (reg=0;reg<7;reg++) { | |
3061 | - if (2<reg && reg<4) | |
3062 | - printf("#3061:reg=%llu code_lugt 2<reg && reg <4\n",reg); | |
3063 | - } | |
3064 | -} | |
3065 | - | |
3066 | -// code_lge(int cond) | |
3067 | -void | |
3068 | -inline code_lge(){ | |
3069 | - long long reg; | |
3070 | - if (l0>=l1) | |
3071 | - printf("#3070:code_lge 1\n"); | |
3072 | - else | |
3073 | - printf("#3072:code_lge 0\n"); | |
3074 | - for (reg=-3;reg<7;reg++) { | |
3075 | - if (0<=reg && reg<=3) | |
3076 | - printf("#3075:reg=%lld code_lge 0<=reg && reg <=3\n",reg); | |
3077 | - } | |
3078 | - for (reg=-3;reg<7;reg++) { | |
3079 | - if (-2<=reg && reg<=0) | |
3080 | - printf("#3079:reg=%lld code_lge -2<=reg && reg <=0\n",reg); | |
3081 | - } | |
3082 | -} | |
3083 | - | |
3084 | -// code_luge(int cond) | |
3085 | -void | |
3086 | -inline code_luge(){ | |
3087 | - unsigned long long reg; | |
3088 | - if (ul0>=ul1) | |
3089 | - printf("#3088:code_luge 1\n"); | |
3090 | - else | |
3091 | - printf("#3090:code_luge 0\n"); | |
3092 | - for (reg=0;reg<7;reg++) { | |
3093 | - if (2<reg && reg<4) | |
3094 | - printf("#3093:reg=%llu code_luge 2<reg && reg <4\n",reg); | |
3095 | - } | |
3096 | - for (reg=0;reg<7;reg++) { | |
3097 | - if (2<reg && reg<4) | |
3098 | - printf("#3097:reg=%llu code_luge 2<reg && reg <4\n",reg); | |
3099 | - } | |
3100 | -} | |
3101 | - | |
3102 | -// code_leq(int cond) | |
3103 | -void | |
3104 | -inline code_leq(){ | |
3105 | - if (ul0==ul1) | |
3106 | - printf("#3105:code_leq 1\n"); | |
3107 | - else | |
3108 | - printf("#3107:code_leq 0\n"); | |
3109 | - if (l0!=l1) | |
3110 | - printf("#3109:code_lneq 1\n"); | |
3111 | - else | |
3112 | - printf("#3111:code_lneq 0\n"); | |
3113 | -} | |
3114 | - | |
3115 | -#if 0 | |
3116 | -void | |
3117 | -inline code_lswitch(){ | |
3118 | - long long i; | |
3119 | - for(i=0;i<6;i++) { | |
3120 | - switch(i) { | |
3121 | - case 1: printf("#3120:code_lswitch 1 %d\n",i); break; | |
3122 | - case 2: printf("#3121:code_lswitch 2 %d\n",i); break; | |
3123 | - case 3: printf("#3122:code_lswitch 3 %d\n",i); | |
3124 | - case 4: printf("#3123:code_lswitch 4 %d\n",i); break; | |
3125 | - default: printf("#3124:code_lswitch d %d\n",i); | |
3126 | - } | |
3127 | - } | |
3128 | -} | |
3129 | -#endif | |
3130 | - | |
3131 | - | |
3132 | -#endif | |
3133 | - | |
3134 | -void | |
3135 | -inline code_switch(){ | |
3136 | - int i; | |
3137 | - for(i=0;i<10;i++) { | |
3138 | - switch(i) { | |
3139 | - case 1: printf("#3138:code_switch 1 %d\n",i); break; | |
3140 | - case 2: printf("#3139:code_switch 2 %d\n",i); break; | |
3141 | - case 3: printf("#3140:code_switch 3 %d\n",i); | |
3142 | - case 4: printf("#3141:code_switch 4 %d\n",i); break; | |
3143 | - case 7: | |
3144 | - case 5: printf("#3143:code_switch 5 %d\n",i); break; | |
3145 | - case 6: printf("#3144:code_switch 6 %d\n",i); break; | |
3146 | - default: printf("#3145:code_switch d %d\n",i); | |
3147 | - } | |
3148 | - } | |
3149 | - for(i=0;i<10;i++) { | |
3150 | - switch(i) { | |
3151 | - case 1: printf("#3150:code_switch 1 %d\n",i); break; | |
3152 | - case 2: | |
3153 | - i = i* 100; | |
3154 | - switch(i) { | |
3155 | - case 100: printf("#3154:code_switch n 1 %d\n",i); break; | |
3156 | - case 200: | |
3157 | - for(i=-100;i<10;i++) { | |
3158 | - switch(i) { | |
3159 | - case 1234: printf("#3158:code_switch 1 nn %d\n",i); break; | |
3160 | - case 2233: printf("#3159:code_switch 2 nn %d\n",i); break; | |
3161 | - case 3333: printf("#3160:code_switch 3 nn %d\n",i); | |
3162 | - case -200: return; | |
3163 | - case -4: printf("#3162:code_switch 4 nn %d\n",i); break; | |
3164 | - case 733: | |
3165 | - case -5: printf("#3164:code_switch 5 nn %d\n",i); break; | |
3166 | - case -326: printf("#3165:code_switch 6 nn %d\n",i); | |
3167 | - } | |
3168 | - } | |
3169 | - case 300: printf("#3168:code_switch n 3 %d\n",i); | |
3170 | - case 400: printf("#3169:code_switch n 4 %d\n",i); break; | |
3171 | - case 700: | |
3172 | - case 500: printf("#3171:code_switch n 5 %d\n",i); break; | |
3173 | - case 600: printf("#3172:code_switch n 6 %d\n",i); break; | |
3174 | - default: printf("#3173:code_switch n d %d\n",i); | |
3175 | - } | |
3176 | - case 3: printf("#3175:code_switch 3 %d\n",i); | |
3177 | - case 4: printf("#3176:code_switch 4 %d\n",i); break; | |
3178 | - case 7: | |
3179 | - case 5: printf("#3178:code_switch 5 %d\n",i); break; | |
3180 | - case 6: printf("#3179:code_switch 6 %d\n",i); break; | |
3181 | - default: printf("#3180:code_switch d %d\n",i); | |
3182 | - } | |
3183 | - } | |
3184 | -} | |
3185 | - | |
3186 | -void | |
3187 | -inline code_cond_iii(){ | |
3188 | - int i; | |
3189 | - int j=-4; | |
3190 | - int k=5; | |
3191 | - | |
3192 | - for(i=0;i<2;i++) { | |
3193 | - k = i==0? -4:4; | |
3194 | - printf("#3193: cond_iii %d\n",k); | |
3195 | - printf("#3194: cond_iii %d\n",i==0? -8:8); | |
3196 | - k = i==0? i:j; | |
3197 | - printf("#3196: cond_iii %d\n",k); | |
3198 | - printf("#3197: cond_iii %d\n",i==0? i:j); | |
3199 | - } | |
3200 | -} | |
3201 | - | |
3202 | -void | |
3203 | -inline code_cond_ii0(){ | |
3204 | - unsigned int i; | |
3205 | - int j=-4; | |
3206 | - int k=5; | |
3207 | - | |
3208 | - for(i=0;i<2;i++) { | |
3209 | - k = i==0? -4:4; | |
3210 | - printf("#3209: cond_ii0 %d\n",k); | |
3211 | - printf("#3210: cond_ii0 %d\n",i==0? -8:8); | |
3212 | - k = i==0? i:j; | |
3213 | - printf("#3212: cond_ii0 %d\n",k); | |
3214 | - printf("#3213: cond_ii0 %d\n",i==0? i:j); | |
3215 | - } | |
3216 | -} | |
3217 | - | |
3218 | -void | |
3219 | -inline code_cond_uuu(){ | |
3220 | - unsigned int i; | |
3221 | - unsigned int j=4; | |
3222 | - unsigned int k=5; | |
3223 | - | |
3224 | - for(i=0;i<2;i++) { | |
3225 | - k = i==0? -4:4; | |
3226 | - printf("#3225: cond_uuu %u\n",k); | |
3227 | - printf("#3226: cond_uuu %u\n",i==0? -8:8); | |
3228 | - k = i==0? i:j; | |
3229 | - printf("#3228: cond_uuu %u\n",k); | |
3230 | - printf("#3229: cond_uuu %u\n",i==0? i:j); | |
3231 | - } | |
3232 | -} | |
3233 | - | |
3234 | -void | |
3235 | -inline code_cond_uii(){ | |
3236 | - unsigned int i; | |
3237 | - int j=-4; | |
3238 | - unsigned int k=5; | |
3239 | - | |
3240 | - for(i=0;i<2;i++) { | |
3241 | - k = i==0? -4:4; | |
3242 | - printf("#3241: cond_uii %d\n",k); | |
3243 | - printf("#3242: cond_uii %u\n",i==0? -8:8); | |
3244 | - k = i==0? i:j; | |
3245 | - printf("#3244: cond_uii %d\n",k); | |
3246 | - printf("#3245: cond_uii %u\n",i==0? i:j); | |
3247 | - } | |
3248 | -} | |
3249 | - | |
3250 | -#if FLOAT_CODE | |
3251 | -void | |
3252 | -inline code_cond_fff(){ | |
3253 | - float i; | |
3254 | - float j=-4; | |
3255 | - float k=5; | |
3256 | - | |
3257 | - for(i=0;i<2;i++) { | |
3258 | - k = i==0? -4:4; | |
3259 | - printf("#3258: cond_fff %g\n",k); | |
3260 | - printf("#3259: cond_fff %g\n",i==0? -4.0:4.0); | |
3261 | - printf("#3260: cond_fff %g\n",(float)(i==0? -4:4)); | |
3262 | - k = i==0? i:j; | |
3263 | - printf("#3262: cond_fff %g\n",k); | |
3264 | - printf("#3263: cond_fff %g\n",i==0? i:j); | |
3265 | - } | |
3266 | -} | |
3267 | - | |
3268 | -void | |
3269 | -inline code_cond_ddd(){ | |
3270 | - double i; | |
3271 | - double j=-4; | |
3272 | - double k=5; | |
3273 | - | |
3274 | - for(i=0;i<2;i++) { | |
3275 | - k = i==0? -4:4; | |
3276 | - printf("#3275: cond_ddd %g\n",k); | |
3277 | - printf("#3276: cond_ddd %g\n",i==0? -4.0:4.0); | |
3278 | - printf("#3277: cond_ddd %g\n",(double)(i==0? -4:4)); | |
3279 | - k = i==0? i:j; | |
3280 | - printf("#3279: cond_ddd %g\n",k); | |
3281 | - printf("#3280: cond_ddd %g\n",i==0? i:j); | |
3282 | - } | |
3283 | -} | |
3284 | - | |
3285 | -void | |
3286 | -inline code_cond_float(){ | |
3287 | - int i=9; | |
3288 | - float f=(i>10) ? 4 : -4; | |
3289 | - printf("#3288:%f\n",f); | |
3290 | - i=10; | |
3291 | - f=(i>10) ? 4 : -4; | |
3292 | - printf("#3291:%f\n",f); | |
3293 | - i=11; | |
3294 | - f=(i>10) ? 4 : -4; | |
3295 | - printf("#3294:%f\n",f); | |
3296 | -} | |
3297 | - | |
3298 | -#endif | |
3299 | - | |
3300 | -#if LONGLONG_CODE | |
3301 | -void | |
3302 | -inline code_cond_lll(){ | |
3303 | - long long i; | |
3304 | - long long j=-4; | |
3305 | - long long k=5; | |
3306 | - | |
3307 | - for(i=0;i<2;i++) { | |
3308 | - k = i==0? -4:4; | |
3309 | - printf("#3308: cond_lll %lld\n",k); | |
3310 | - printf("#3309: cond_lll %lld\n",i==0? -4LL:4LL); | |
3311 | - printf("#3310: cond_lll %lld\n",(long long)(i==0? -4:4)); | |
3312 | - k = i==0? i:j; | |
3313 | - printf("#3312: cond_lll %lld\n",k); | |
3314 | - printf("#3313: cond_lll %llu\n",i==0? i:j); | |
3315 | - } | |
3316 | -} | |
3317 | - | |
3318 | -void | |
3319 | -inline code_cond_ulll(){ | |
3320 | - unsigned long long i; | |
3321 | - unsigned long long j=4; | |
3322 | - unsigned long long k=5; | |
3323 | - | |
3324 | - for(i=0;i<2;i++) { | |
3325 | - k = i==0? -4:4; | |
3326 | - printf("#3325: cond_ulll %llu\n",k); | |
3327 | - printf("#3326: cond_ulll %llu\n",i==0? -4LL:4LL); | |
3328 | - printf("#3327: cond_ulll %llu\n",(unsigned long long)(i==0? -4:4)); | |
3329 | - k = i==0? i:j; | |
3330 | - printf("#3329: cond_ulll %llu\n",k); | |
3331 | - printf("#3330: cond_ulll %llu\n",i==0? i:j); | |
3332 | - } | |
3333 | -} | |
3334 | - | |
3335 | -void | |
3336 | -inline code_cond_luu(){ | |
3337 | - long long i; | |
3338 | - unsigned long long j=4; | |
3339 | - long long k=-5; | |
3340 | - | |
3341 | - for(i=0;i<2;i++) { | |
3342 | - k = i==0? -4:4; | |
3343 | - printf("#3342: cond_luu %lld\n",k); | |
3344 | - printf("#3343: cond_luu %lld\n",i==0? -4LL:4LL); | |
3345 | - printf("#3344: cond_luu %lld\n",(unsigned long long)(i==0? -4:4)); | |
3346 | - k = i==0? i:j; | |
3347 | - printf("#3346: cond_luu %lld\n",k); | |
3348 | - printf("#3347: cond_luu %lld\n",i==0? i:j); | |
3349 | - } | |
3350 | -} | |
3351 | - | |
3352 | -#endif | |
3353 | - | |
3354 | -int main() { | |
3355 | -#define FLOAT_CODE 1 | |
3356 | -#define LONGLONG_CODE 1 | |
3357 | - code_endian(); | |
3358 | - code_lvar(); | |
3359 | - code_lvar_address(); | |
3360 | - code_label(); | |
3361 | - code_label1(); | |
3362 | -#if FLOAT_CODE | |
3363 | -#endif | |
3364 | -#if LONGLONG_CODE | |
3365 | -#endif | |
3366 | - code_gvar(); | |
3367 | - code_register(); | |
3368 | - code_fname(); | |
3369 | - code_neg(); | |
3370 | - code_not(); | |
3371 | - code_lnot(); | |
3372 | - code_preinc(); | |
3373 | - code_upostinc(); | |
3374 | - code_postinc(); | |
3375 | - code_upreinc(); | |
3376 | - code_register_preinc(); | |
3377 | - code_register_upostinc(); | |
3378 | - code_register_postinc(); | |
3379 | - code_register_upreinc(); | |
3380 | - code_return_int(); | |
3381 | -#if FLOAT_CODE | |
3382 | - code_return_float(); | |
3383 | - code_return_double(); | |
3384 | -#endif | |
3385 | -#if LONGLONG_CODE | |
3386 | - code_return_longlong(); | |
3387 | -#endif | |
3388 | - code_return_struct1(); | |
3389 | - code_return_struct(); | |
3390 | - code_gt(); | |
3391 | - code_ugt(); | |
3392 | - code_ge(); | |
3393 | - code_uge(); | |
3394 | - code_eq(); | |
3395 | - code_bool(); | |
3396 | - code_bool_const(); | |
3397 | - code_cmp(); | |
3398 | - code_cmp_global(); | |
3399 | - code_cmp_register(); | |
3400 | - code_string(); | |
3401 | - struct_push(); | |
3402 | - code_rindirect(); | |
3403 | - code_crindirect(); | |
3404 | - code_srindirect(); | |
3405 | -#if FLOAT_CODE | |
3406 | - code_drindirect(); | |
3407 | -#endif | |
3408 | -#if LONGLONG_CODE | |
3409 | - code_lrindirect(); | |
3410 | -#endif | |
3411 | - code_assign(); | |
3412 | - code_assign_register(); | |
3413 | - code_register_assop(); | |
3414 | - code_iassop_l(); | |
3415 | - code_iassop_g(); | |
3416 | - code_iassop_g_c(); | |
3417 | - code_assop(); | |
3418 | - code_register_assop_const(); | |
3419 | - code_assop_const(); | |
3420 | - tosop(); | |
3421 | - oprtc(); | |
3422 | - register_tosop(); | |
3423 | - register_oprtc(); | |
3424 | -#if FLOAT_CODE | |
3425 | - code_cmp_dregister(); | |
3426 | - code_dregister(); | |
3427 | - code_dassign(); | |
3428 | - code_register_dassign(); | |
3429 | - code_dneg(); | |
3430 | - code_d2i(); | |
3431 | - code_i2d(); | |
3432 | - code_d2u(); | |
3433 | - code_u2d(); | |
3434 | - code_f2i(); | |
3435 | - code_i2f(); | |
3436 | - code_f2u(); | |
3437 | - code_u2f(); | |
3438 | - code_dgvar(); | |
3439 | - code_dlvar(); | |
3440 | - code_cmp_d_global(); | |
3441 | - code_cmp_d(); | |
3442 | - dtosop(); | |
3443 | - dtosop_register(); | |
3444 | - code_dassop(); | |
3445 | - code_register_dassop(); | |
3446 | - code_dpreinc(); | |
3447 | - code_dpostinc(); | |
3448 | - code_register_dpreinc(); | |
3449 | - code_register_dpostinc(); | |
3450 | - code_dgt(); | |
3451 | - code_fgt(); | |
3452 | - code_dge(); | |
3453 | - code_fge(); | |
3454 | - code_deq(); | |
3455 | - code_dbool(); | |
3456 | -#endif | |
3457 | -#if LONGLONG_CODE | |
3458 | - code_lbool(); | |
3459 | - code_lregister(); | |
3460 | - code_cmp_lregister(); | |
3461 | - code_cmp_lrgvar(); | |
3462 | - code_cmp_lrlvar(); | |
3463 | - code_lassign(); | |
3464 | - code_lassign_register(); | |
3465 | - code_lneg(); | |
3466 | - code_lrgvar(); | |
3467 | - code_lrlvar(); | |
3468 | - ltosop(); | |
3469 | - loprtc(); | |
3470 | - ltosop_register(); | |
3471 | - loprtc_register(); | |
3472 | - code_i2ll(); | |
3473 | - code_i2ull(); | |
3474 | - code_u2ll(); | |
3475 | - code_u2ull(); | |
3476 | - code_ll2i(); | |
3477 | - code_ll2u(); | |
3478 | - code_ull2i(); | |
3479 | - code_ull2u(); | |
3480 | -#if FLOAT_CODE | |
3481 | - code_d2ll(); | |
3482 | - code_d2ull(); | |
3483 | - code_f2ll(); | |
3484 | - code_f2ull(); | |
3485 | - code_ll2d(); | |
3486 | - code_ll2f(); | |
3487 | - code_ull2d(); | |
3488 | - code_ull2f(); | |
3489 | -#endif | |
3490 | - code_lpreinc(); | |
3491 | - code_lpostinc(); | |
3492 | - code_lupreinc(); | |
3493 | - code_lupostinc(); | |
3494 | - code_register_lpreinc(); | |
3495 | - code_register_lpostinc(); | |
3496 | - code_register_lupreinc(); | |
3497 | - code_register_lupostinc(); | |
3498 | - code_register_lassop(); | |
3499 | - code_lassop(); | |
3500 | - code_register_lassop_const(); | |
3501 | - code_lassop_const(); | |
3502 | - code_lassop_l(); | |
3503 | - code_lassop_g(); | |
3504 | - code_lassop_g_c(); | |
3505 | - code_lgt(); | |
3506 | - code_lugt(); | |
3507 | - code_lge(); | |
3508 | - code_luge(); | |
3509 | - code_leq(); | |
3510 | -#if 0 | |
3511 | - code_lswitch(); | |
3512 | -#endif | |
3513 | -#endif | |
3514 | - code_switch(); | |
3515 | - code_cond_iii(); | |
3516 | - code_cond_ii0(); | |
3517 | - code_cond_uuu(); | |
3518 | - code_cond_uii(); | |
3519 | -#if FLOAT_CODE | |
3520 | - code_cond_fff(); | |
3521 | - code_cond_ddd(); | |
3522 | - code_cond_float(); | |
3523 | -#endif | |
3524 | -#if LONGLONG_CODE | |
3525 | - code_cond_lll(); | |
3526 | - code_cond_ulll(); | |
3527 | - code_cond_luu(); | |
3528 | -#endif | |
3529 | -return 0; } |