Mercurial > hg > CbC > old > device
view test/code-gen.c @ 748:c2c709727221
i64 continue... basic.s assembled.
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Sat, 13 Nov 2010 22:39:40 +0900 |
parents | d4bc10fe7362 |
children | e333c95586bd |
line wrap: on
line source
/* Micro-C Code Generator Checker */ #define FLOAT_CODE 1 #define LONGLONG_CODE 1 #define LONG_DOUBLE_CODE 0 #ifdef INLINE #else #define INLINE #endif // code_lvar(int e2,int creg) extern int printf(const char *fmt,...); INLINE void code_endian() { union { unsigned char a[8]; unsigned short s; unsigned int i; unsigned long l; unsigned long long ll; } u; u.ll = 0; printf("#0027:sizeof(char)=%ld\n",sizeof(char)); printf("#0028:sizeof(short)=%ld\n",sizeof(short)); printf("#0029:sizeof(int)=%ld\n",sizeof(int)); printf("#0030:sizeof(long)=%ld\n",sizeof(long)); printf("#0031:sizeof(int*)=%ld\n",sizeof(int*)); printf("#0032:sizeof(long long)=%ld\n",sizeof(long long)); printf("#0033:sizeof(float)=%ld\n",sizeof(float)); printf("#0034:sizeof(double)=%ld\n",sizeof(double)); printf("#0035:sizeof(long double)=%ld\n",sizeof(long double)); u.s = 0x0123; printf("#0037:endian s : %02x %02x\n",u.a[0],u.a[1]); u.i = 0x01234567; printf("#0039:endian i : %02x %02x %02x %02x\n",u.a[0],u.a[1],u.a[2],u.a[3]); #if 1 u.l = 0x01234567L; printf("#0042:endian l : %02x %02x %02x %02x\n",u.a[0],u.a[1],u.a[2],u.a[3]); #else u.l = 0x0123456789abcdefULL; printf("#0045:endian l : %02x %02x %02x %02x\n",u.a[0],u.a[1],u.a[2],u.a[3]); printf("#0046:endian l : %02x %02x %02x %02x\n",u.a[4],u.a[5],u.a[6],u.a[7]); #endif u.ll = 0x0123456789abcdefULL; printf("#0049:endian ll: %02x %02x %02x %02x\n",u.a[0],u.a[1],u.a[2],u.a[3]); printf("#0050:endian ll: %02x %02x %02x %02x\n",u.a[4],u.a[5],u.a[6],u.a[7]); } INLINE void code_lvar() { char c1,c2; unsigned char uc1,uc2; int i1,i2; short s1,s2; unsigned short us1,us2; long l1,l2; unsigned long ul1,ul2; l1 = 1; l2 = -2; ul1 = 1L<<(sizeof(long)*8-1); ul2 = 1L<<(sizeof(long)*8-1); i1 = 1; i2 = -2; s1 = -1; s2 = -3; us1 = 65535; us2 = 65535; printf("#0068:code_lvar %d %d %d %d %u %u\n",i1,i2,s1,s2,us1,us2); printf("#0069:code_lvar %ld %ld %lu %lu\n",l1,l2,ul1,ul2); c1 = -1; c2 = -3; uc1 = 200; uc2 = 202; printf("#0071:code_lvar %d %d %u %u\n",c1,c2,uc1,uc2); } INLINE void code_lvar_address() { char c1,c2,*p; unsigned char uc1,uc2,*up; int i1,i2,*ip; short s1,s2,*sp; unsigned short us1,us2,*usp; ip = &i1; *ip = 1; ip = &i2 ; *ip = -2; sp = &s1 ; *sp = -1; sp = &s2 ; *sp = -3; usp = &us1 ; *usp = 65535; usp = &us2 ; *usp = 65535; printf("#0086:code_lvar %d %d %d %d %u %u\n",i1,i2,s1,s2,us1,us2); p = &c1; *p = -1; p = &c2; *p = -3; up = &uc1; *up = 200; up=&uc2; *up = 202; printf("#0089:code_lvar %d %d %u %u\n",c1,c2,uc1,uc2); } // code_label(int labelno) INLINE void code_label() { goto hoge; hage: goto hage; hoge: printf("#0100:code_label done\n"); } // code_label(int labelno) INLINE void code_label1() { goto hoge; hage: goto hage; hoge: printf("#0111:code_label1 done\n"); } // code_gvar(int e1,int creg) // code_rgvar(int e1,int creg) // code_crgvar(int e1,int creg,int sign,int sz) char c1,c2; unsigned char uc1,uc2; static char s_c1,s_c2; static unsigned char s_uc1,s_uc2; int i1,i2; unsigned int ui1,ui2; short s1,s2; unsigned short us1,us2; static int s_i1,s_i2; static short s_s1,s_s2; static unsigned short s_us1,s_us2; #if FLOAT_CODE float f0,f1; double d0,d1; static float s_f0,s_f1; static double s_d0,s_d1; #endif #if LONGLONG_CODE long long l0,l1; unsigned long long ul0,ul1; static long long s_l0,s_l1; static unsigned long long s_ul0,s_ul1; #endif INLINE void code_gvar() { i1 = 1; i2 = -2; s1 = -1; s2 = -3; us1 = 65535; us2 = 65535; printf("#0147:code_gvar a %d %d %u %u %u %u\n",i1,i2,s1,s2,us1,us2); c1 = -1; c2 = -3; uc1 = 200; uc2 = 202; printf("#0149:code_gvar b %d %d %u %u\n",c1,c2,uc1,uc2); s_i1 = 1; s_i2 = 2; s_s1 = -1; s_s2 = -3; s_us1 = 65535; s_us2 = 65535; printf("#0153:code_gvar c %d %d %u %u %u %u\n",s_i1,s_i2,s1,s_s2,s_us1,s_us2); s_c1 = -1; s_c2 = -3; s_uc1 = 200; s_uc2 = 202; printf("#0155:code_gvar d %d %d %u %u\n",s_c1,s_c2,s_uc1,s_uc2); s_i1 = 1; s_i2 = -2; } // code_register(int e2,int creg) INLINE void code_register() { register char c1,c2; register unsigned char uc1,uc2; register int i1,i2; register short s1,s2; register unsigned short us1,us2; s_i1 = 1; s_i2 = -2; // check ptr cache clear i1 = 1; i2 = -2; s1 = -1; s2 = -3; us1 = 65535; us2 = 65535; printf("#0174:code_lvar r %d %d %u %u %u %u\n",i1,i2,s1,s2,us1,us2); c1 = -1; c2 = -3; uc1 = 200; uc2 = 202; printf("#0176:code_gvar r %d %d %u %u\n",c1,c2,uc1,uc2); } // code_fname(NMTBL *n,int creg) extern void exit(); INLINE void code_fname() { long i,j,k; i = (long)code_fname; j = (long)code_register; k = (long)exit; printf("#0189:code_fname %d %d\n",i==j,i==k); } // code_neg(int creg) INLINE void code_neg() { int i,j; i = 123123123;j = -32423; printf("#0199:code_neg %d %d\n",-i,-j); } // code_not(int creg) INLINE void code_not() { int i,j; i = 123123123;j = 0; printf("#0208:code_neg %d %d\n",~i,~j); } // code_lnot(int creg) INLINE void code_lnot() { int i,j; i = 123123123;j = 0; printf("#0217:code_neg %d %d\n",!i,!j); } // code_preinc(int e1,int e2,int dir,int sign,int sz,int reg) INLINE void code_preinc() { int i,j; i = 123123123;j = 0; printf("#0226:code_preinc i %d %d",++i,--j); printf("#0227: %d %d\n",i,j); } // code_postinc(int e1,int e2,int dir,int sign,int sz,int reg) INLINE void code_upostinc() { unsigned int i,j; i = 123123123;j = 0; printf("#0236:code_upreinc u %d %d",i++,j--); printf("#0237: %d %d\n",i,j); } // code_postinc(int e1,int e2,int dir,int sign,int sz,int reg) INLINE void code_postinc() { int i,j; i = 123123123;j = 0; printf("#0246:code_postinc i %d %d",i++,j--); printf("#0247: %d %d\n",i,j); } // code_preinc(int e1,int e2,int dir,int sign,int sz,int reg) INLINE void code_upreinc() { unsigned int i,j; i = 123123123;j = 0; printf("#0256:code_upreinc u %d %d",++i,--j); printf("#0257: %d %d\n",i,j); } // code_preinc(int e1,int e2,int dir,int sign,int sz,int reg) INLINE void code_register_preinc() { register int i,j; i = 123123123;j = 0; printf("#0266:code_preinc i r %d %d",++i,--j); printf("#0267: %d %d\n",i,j); } // code_postinc(int e1,int e2,int dir,int sign,int sz,int reg) INLINE void code_register_upostinc() { register unsigned int i,j; i = 123123123;j = 0; printf("#0276:code_upreinc u r %d %d",i++,j--); printf("#0277: %d %d\n",i,j); } // code_postinc(int e1,int e2,int dir,int sign,int sz,int reg) INLINE void code_register_postinc() { register int i,j; i = 123123123;j = 0; printf("#0286:code_postinc i r %d %d",i++,j--); printf("#0287: %d %d\n",i,j); } // code_register_preinc(int e1,int e2,int dir,int sign,int sz,int reg) INLINE void code_register_upreinc() { register unsigned int i,j; i = 123123123;j = 0; printf("#0296:code_upreinc u r %d %d",++i,--j); printf("#0297: %d %d\n",i,j); } // code_return(int creg) INLINE int code_return_int0() { return 1; } INLINE void code_return_int() { printf("#0311:code_return_int %d\n",code_return_int0()); } #if FLOAT_CODE INLINE float code_return_float0() { return 1.0; } INLINE void code_return_float() { printf("#0323:code_return_float %g\n",code_return_float0()); } INLINE double code_return_double0() { return 1.0; } #if LONG_DOUBLE_CODE INLINE long double code_return_long_double0() { return 1.0; } #endif INLINE void code_return_double() { printf("#0341:code_return_double %g\n",code_return_double0()); #if LONG_DOUBLE_CODE printf("#0343:code_return_double %Lg\n",code_return_long_double0()); #endif } #endif #if LONGLONG_CODE INLINE long long code_return_longlong0() { return 10LL; } INLINE void code_return_longlong() { printf("#0359:code_return_longlong %lld\n",code_return_longlong0()); } #endif struct aa { char a[100]; } a0; INLINE struct aa code_return_struct0(/*int j*/) { a0.a[55]=3; return a0; } INLINE void code_return_struct1() { int i = code_return_struct0(/*1*/).a[55]; // int i; // i = code_return_struct0(i).a[55]; printf("#0378:code_return_struct %d\n", i); } INLINE void code_return_struct() { printf("#0384:code_return_struct %d\n", code_return_struct0().a[55]); } // code_gt(int cond) INLINE void code_gt() { int reg,mthree=-3,seven=7,mtwo=-2,zero=0,three=3; if (i1>i2) printf("#0394:code_gt 1\n"); else printf("#0396:code_gt 0\n"); for (reg=-3;reg<7;reg++) { if (0<reg && reg<3) printf("#0399:reg=%d code_gt 0<reg && reg <3\n",reg); } for (reg=-3;reg<7;reg++) { if (-2<reg && reg<0) printf("#0403:reg=%d code_gt -2<reg && reg <0\n",reg); } for (reg=mthree;reg<seven;reg++) { if (zero<reg && reg<three) printf("#0407:reg=%d code_gt 0<reg && reg <3\n",reg); } for (reg=mthree;reg<seven;reg++) { if (mtwo<reg && reg<zero) printf("#0411:reg=%d code_gt -2<reg && reg <0\n",reg); } } // code_ugt(int cond) INLINE void code_ugt() { unsigned reg,zero=0,one=1,seven=7,three=3,five=5; if (ui1>ui2) printf("#0422:code_ugt 1\n"); else printf("#0424:code_ugt 0\n"); for (reg=0;reg<7;reg++) { if (0<reg && reg<3) printf("#0427:reg=%d code_ugt 0<reg && reg <3\n",reg); } for (reg=0;reg<7;reg++) { if (1<reg && reg<5) printf("#0431:reg=%d code_ugt 1<reg && reg <5\n",reg); } for (reg=zero;reg<seven;reg++) { if (zero<reg && reg<three) printf("#0435:reg=%d code_ugt 0<reg && reg <3\n",reg); } for (reg=zero;reg<seven;reg++) { if (one<reg && reg<five) printf("#0439:reg=%d code_ugt 1<reg && reg <5\n",reg); } } // code_ge(int cond) INLINE void code_ge() { int reg,mthree=-3,seven=7,mtwo=-2,zero=0,three=3; if (i1>=i2) printf("#0449:code_ge 1\n"); else printf("#0451:code_ge 0\n"); for (reg=-3;reg<7;reg++) { if (0<=reg && reg<=3) printf("#0454:reg=%d code_ge 0<=reg && reg <=3\n",reg); } for (reg=-3;reg<7;reg++) { if (-2<=reg && reg<=0) printf("#0458:reg=%d code_ge -2<=reg && reg <=0\n",reg); } for (reg=mthree;reg<seven;reg++) { if (zero<=reg && reg<=three) printf("#0462:reg=%d code_ge 0<=reg && reg <=3\n",reg); } for (reg=mthree;reg<seven;reg++) { if (mtwo<=reg && reg<=zero) printf("#0466:reg=%d code_ge -2<=reg && reg <=0\n",reg); } } // code_uge(int cond) INLINE void code_uge() { unsigned reg,zero=0,one=1,seven=7,three=3,five=5; if (ui1>=ui2) printf("#0476:code_uge 1\n"); else printf("#0478:code_uge 0\n"); for (reg=0;reg<7;reg++) { if (0<=reg && reg<=3) printf("#0481:reg=%d code_uge 0<=reg && reg <=3\n",reg); } for (reg=0;reg<7;reg++) { if (1<=reg && reg<=5) printf("#0485:reg=%d code_uge 1<=reg && reg <=5\n",reg); } for (reg=zero;reg<seven;reg++) { if (zero<=reg && reg<=three) printf("#0489:reg=%d code_uge 0<=reg && reg <=3\n",reg); } for (reg=zero;reg<seven;reg++) { if (one<=reg && reg<=five) printf("#0493:reg=%d code_uge 1<=reg && reg <=5\n",reg); } } // code_eq(int cond) INLINE void code_eq() { unsigned int ui3 = 3; int i3 = 3; if (ui1==ui2) printf("#0505:code_eq 1\n"); else printf("#0507:code_eq 0\n"); if (i1!=i2) printf("#0509:code_neq 1\n"); else printf("#0511:code_neq 0\n"); if (3==ui3) printf("#0514:code_eq 1\n"); else printf("#0516:code_eq 0\n"); if (3!=i3) printf("#0518:code_neq 1\n"); else printf("#0520:code_neq 0\n"); } // code_bool(int e1) INLINE void code_bool() { int i1l,i2l; unsigned int ui1l,ui2l; ui2 = ui1-3; for(i2=i1-3;i2<i1+3;i2++) { printf("#0533:code_bool %d>%d gvar %d\n",i1,i2,i1>i2); printf("#0534:code_bool %u>%u gvar %d u\n",ui1,ui2,ui1>ui2); printf("#0535:code_bool %d>=%d gvar %d\n",i1,i2,i1>=i2); printf("#0536:code_bool %u>=%u gvar %d u\n",ui1,ui2,ui1>=ui2); printf("#0537:code_bool %d<%d gvar %d\n",i1,i2,i1<i2); printf("#0538:code_bool %u<%u gvar %d u\n",ui1,ui2,ui1<ui2); printf("#0539:code_bool %d<=%d gvar %d\n",i1,i2,i1<=i2); printf("#0540:code_bool %u<=%u gvar %d u\n",ui1,ui2,ui1<=ui2); printf("#0541:code_bool %u==%u gvar %d u\n",ui1,ui2,ui1==ui2); printf("#0542:code_bool %u!=%u gvar %d\n",i1,i2,i1!=i2); ui2++; } ui1l = ui1; i1l = i1; ui2l = ui1-3; for(i2l=i1-3;i2l<i1l+3;i2l++) { printf("#0549:code_bool %d>%d lvar %d\n",i1l,i2l,i1l>i2l); printf("#0550:code_bool %u>%u lvar %d u\n",ui1l,ui2l,ui1l>ui2l); printf("#0551:code_bool %d>=%d lvar %d\n",i1l,i2l,i1l>=i2l); printf("#0552:code_bool %u>=%u lvar %d u\n",ui1l,ui2l,ui1l>=ui2l); printf("#0553:code_bool %d<%d lvar %d\n",i1l,i2l,i1l<i2l); printf("#0554:code_bool %u<%u lvar %d u\n",ui1l,ui2l,ui1l<ui2l); printf("#0555:code_bool %d<=%d lvar %d\n",i1l,i2l,i1l<=i2l); printf("#0556:code_bool %u<=%u lvar %d u\n",ui1l,ui2l,ui1l<=ui2l); printf("#0557:code_bool %u==%u lvar %d u\n",ui1l,ui2l,ui1l==ui2l); printf("#0558:code_bool %u!=%u lvar %d\n",i1l,i2l,i1l!=i2l); ui2l++; } } INLINE void code_bool_const() { int i1l,i2l; unsigned int ui1l,ui2l; ui2 = ui1-3; for(i2=i1-3;i2<i1+3;i2++) { printf("#0571:code_bool_const %d>%d gvar %d\n",-4,i2,-4>i2); printf("#0572:code_bool_const %u>%u gvar %d u\n",0,ui2,0>ui2); printf("#0573:code_bool_const %d>=%d gvar %d\n",-4,i2,-4>=i2); printf("#0574:code_bool_const %u>=%u gvar %d u\n",0,ui2,0>=ui2); printf("#0575:code_bool_const %d<%d gvar %d\n",-4,i2,-4<i2); printf("#0576:code_bool_const %u<%u gvar %d u\n",0,ui2,0<ui2); printf("#0577:code_bool_const %d<=%d gvar %d\n",-4,i2,-4<=i2); printf("#0578:code_bool_const %u<=%u gvar %d u\n",0,ui2,0<=ui2); printf("#0579:code_bool_const %u==%u gvar %d u\n",0,ui2,0==ui2); printf("#0580:code_bool_const %u!=%u gvar %d\n",-4,i2,-4!=i2); printf("#0581:code_bool_const %d>%d gvar %d\n",-3,i2,-3>i2); printf("#0582:code_bool_const %u>%u gvar %d u\n",1,ui2,1>ui2); printf("#0583:code_bool_const %d>=%d gvar %d\n",-3,i2,-3>=i2); printf("#0584:code_bool_const %u>=%u gvar %d u\n",1,ui2,1>=ui2); printf("#0585:code_bool_const %d<%d gvar %d\n",-3,i2,-3<i2); printf("#0586:code_bool_const %u<%u gvar %d u\n",1,ui2,1<ui2); printf("#0587:code_bool_const %d<=%d gvar %d\n",-3,i2,-3<=i2); printf("#0588:code_bool_const %u<=%u gvar %d u\n",1,ui2,1<=ui2); printf("#0589:code_bool_const %u==%u gvar %d u\n",1,ui2,1==ui2); printf("#0590:code_bool_const %u!=%u gvar %d\n",-3,i2,-3!=i2); printf("#0591:code_bool_const %d>%d gvar %d\n",-2,i2,-2>i2); printf("#0592:code_bool_const %u>%u gvar %d u\n",2,ui2,2>ui2); printf("#0593:code_bool_const %d>=%d gvar %d\n",-2,i2,-2>=i2); printf("#0594:code_bool_const %u>=%u gvar %d u\n",2,ui2,2>=ui2); printf("#0595:code_bool_const %d<%d gvar %d\n",-2,i2,-2<i2); printf("#0596:code_bool_const %u<%u gvar %d u\n",2,ui2,2<ui2); printf("#0597:code_bool_const %d<=%d gvar %d\n",-2,i2,-2<=i2); printf("#0598:code_bool_const %u<=%u gvar %d u\n",2,ui2,2<=ui2); printf("#0599:code_bool_const %u==%u gvar %d u\n",2,ui2,2==ui2); printf("#0600:code_bool_const %u!=%u gvar %d\n",-2,i2,-2!=i2); printf("#0601:code_bool_const %d>%d gvar %d\n",-1,i2,-1>i2); printf("#0602:code_bool_const %u>%u gvar %d u\n",3,ui2,3>ui2); printf("#0603:code_bool_const %d>=%d gvar %d\n",-1,i2,-1>=i2); printf("#0604:code_bool_const %u>=%u gvar %d u\n",3,ui2,3>=ui2); printf("#0605:code_bool_const %d<%d gvar %d\n",-1,i2,-1<i2); printf("#0606:code_bool_const %u<%u gvar %d u\n",3,ui2,3<ui2); printf("#0607:code_bool_const %d<=%d gvar %d\n",-1,i2,-1<=i2); printf("#0608:code_bool_const %u<=%u gvar %d u\n",3,ui2,3<=ui2); printf("#0609:code_bool_const %u==%u gvar %d u\n",3,ui2,3==ui2); printf("#0610:code_bool_const %u!=%u gvar %d\n",-1,i2,-1!=i2); printf("#0611:code_bool_const %d>%d gvar %d\n",0,i2,0>i2); printf("#0612:code_bool_const %u>%u gvar %d u\n",4,ui2,4>ui2); printf("#0613:code_bool_const %d>=%d gvar %d\n",0,i2,0>=i2); printf("#0614:code_bool_const %u>=%u gvar %d u\n",4,ui2,4>=ui2); printf("#0615:code_bool_const %d<%d gvar %d\n",0,i2,0<i2); printf("#0616:code_bool_const %u<%u gvar %d u\n",4,ui2,4<ui2); printf("#0617:code_bool_const %d<=%d gvar %d\n",0,i2,0<=i2); printf("#0618:code_bool_const %u<=%u gvar %d u\n",4,ui2,4<=ui2); printf("#0619:code_bool_const %u==%u gvar %d u\n",4,ui2,4==ui2); printf("#0620:code_bool_const %u!=%u gvar %d\n",0,i2,0!=i2); printf("#0621:code_bool_const %d>%d gvar %d\n",1,i2,1>i2); printf("#0622:code_bool_const %u>%u gvar %d u\n",5,ui2,5>ui2); printf("#0623:code_bool_const %d>=%d gvar %d\n",1,i2,1>=i2); printf("#0624:code_bool_const %u>=%u gvar %d u\n",5,ui2,5>=ui2); printf("#0625:code_bool_const %d<%d gvar %d\n",1,i2,1<i2); printf("#0626:code_bool_const %u<%u gvar %d u\n",5,ui2,5<ui2); printf("#0627:code_bool_const %d<=%d gvar %d\n",1,i2,1<=i2); printf("#0628:code_bool_const %u<=%u gvar %d u\n",5,ui2,5<=ui2); printf("#0629:code_bool_const %u==%u gvar %d u\n",5,ui2,5==ui2); printf("#0630:code_bool_const %u!=%u gvar %d\n",1,i2,1!=i2); printf("#0631:code_bool_const %d>%d gvar %d\n",2,i2,2>i2); printf("#0632:code_bool_const %u>%u gvar %d u\n",6,ui2,6>ui2); printf("#0633:code_bool_const %d>=%d gvar %d\n",2,i2,2>=i2); printf("#0634:code_bool_const %u>=%u gvar %d u\n",6,ui2,6>=ui2); printf("#0635:code_bool_const %d<%d gvar %d\n",2,i2,2<i2); printf("#0636:code_bool_const %u<%u gvar %d u\n",6,ui2,6<ui2); printf("#0637:code_bool_const %d<=%d gvar %d\n",2,i2,2<=i2); printf("#0638:code_bool_const %u<=%u gvar %d u\n",6,ui2,6<=ui2); printf("#0639:code_bool_const %u==%u gvar %d u\n",6,ui2,6==ui2); printf("#0640:code_bool_const %u!=%u gvar %d\n",2,i2,2!=i2); printf("#0641:code_bool_const %d>%d gvar %d\n",3,i2,3>i2); printf("#0642:code_bool_const %u>%u gvar %d u\n",7,ui2,7>ui2); printf("#0643:code_bool_const %d>=%d gvar %d\n",3,i2,3>=i2); printf("#0644:code_bool_const %u>=%u gvar %d u\n",7,ui2,7>=ui2); printf("#0645:code_bool_const %d<%d gvar %d\n",3,i2,3<i2); printf("#0646:code_bool_const %u<%u gvar %d u\n",7,ui2,7<ui2); printf("#0647:code_bool_const %d<=%d gvar %d\n",3,i2,3<=i2); printf("#0648:code_bool_const %u<=%u gvar %d u\n",7,ui2,7<=ui2); printf("#0649:code_bool_const %u==%u gvar %d u\n",7,ui2,7==ui2); printf("#0650:code_bool_const %u!=%u gvar %d\n",3,i2,3!=i2); ui2++; } ui1l = ui1; i1l = i1; ui2l = ui1-3; for(i2l=i1-3;i2l<i1l+3;i2l++) { printf("#0657:code_bool_const %d>%d gvar %d\n",-4,i2l,-4>i2l); printf("#0658:code_bool_const %u>%u gvar %d u\n",0,ui2l,0>ui2l); printf("#0659:code_bool_const %d>=%d gvar %d\n",-4,i2l,-4>=i2l); printf("#0660:code_bool_const %u>=%u gvar %d u\n",0,ui2l,0>=ui2l); printf("#0661:code_bool_const %d<%d gvar %d\n",-4,i2l,-4<i2l); printf("#0662:code_bool_const %u<%u gvar %d u\n",0,ui2l,0<ui2l); printf("#0663:code_bool_const %d<=%d gvar %d\n",-4,i2l,-4<=i2l); printf("#0664:code_bool_const %u<=%u gvar %d u\n",0,ui2l,0<=ui2l); printf("#0665:code_bool_const %u==%u gvar %d u\n",0,ui2l,0==ui2l); printf("#0666:code_bool_const %u!=%u gvar %d\n",-4,i2l,-4!=i2l); printf("#0667:code_bool_const %d>%d gvar %d\n",-3,i2l,-3>i2l); printf("#0668:code_bool_const %u>%u gvar %d u\n",1,ui2l,1>ui2l); printf("#0669:code_bool_const %d>=%d gvar %d\n",-3,i2l,-3>=i2l); printf("#0670:code_bool_const %u>=%u gvar %d u\n",1,ui2l,1>=ui2l); printf("#0671:code_bool_const %d<%d gvar %d\n",-3,i2l,-3<i2l); printf("#0672:code_bool_const %u<%u gvar %d u\n",1,ui2l,1<ui2l); printf("#0673:code_bool_const %d<=%d gvar %d\n",-3,i2l,-3<=i2l); printf("#0674:code_bool_const %u<=%u gvar %d u\n",1,ui2l,1<=ui2l); printf("#0675:code_bool_const %u==%u gvar %d u\n",1,ui2l,1==ui2l); printf("#0676:code_bool_const %u!=%u gvar %d\n",-3,i2l,-3!=i2l); printf("#0677:code_bool_const %d>%d gvar %d\n",-2,i2l,-2>i2l); printf("#0678:code_bool_const %u>%u gvar %d u\n",2,ui2l,2>ui2l); printf("#0679:code_bool_const %d>=%d gvar %d\n",-2,i2l,-2>=i2l); printf("#0680:code_bool_const %u>=%u gvar %d u\n",2,ui2l,2>=ui2l); printf("#0681:code_bool_const %d<%d gvar %d\n",-2,i2l,-2<i2l); printf("#0682:code_bool_const %u<%u gvar %d u\n",2,ui2l,2<ui2l); printf("#0683:code_bool_const %d<=%d gvar %d\n",-2,i2l,-2<=i2l); printf("#0684:code_bool_const %u<=%u gvar %d u\n",2,ui2l,2<=ui2l); printf("#0685:code_bool_const %u==%u gvar %d u\n",2,ui2l,2==ui2l); printf("#0686:code_bool_const %u!=%u gvar %d\n",-2,i2l,-2!=i2l); printf("#0687:code_bool_const %d>%d gvar %d\n",-1,i2l,-1>i2l); printf("#0688:code_bool_const %u>%u gvar %d u\n",3,ui2l,3>ui2l); printf("#0689:code_bool_const %d>=%d gvar %d\n",-1,i2l,-1>=i2l); printf("#0690:code_bool_const %u>=%u gvar %d u\n",3,ui2l,3>=ui2l); printf("#0691:code_bool_const %d<%d gvar %d\n",-1,i2l,-1<i2l); printf("#0692:code_bool_const %u<%u gvar %d u\n",3,ui2l,3<ui2l); printf("#0693:code_bool_const %d<=%d gvar %d\n",-1,i2l,-1<=i2l); printf("#0694:code_bool_const %u<=%u gvar %d u\n",3,ui2l,3<=ui2l); printf("#0695:code_bool_const %u==%u gvar %d u\n",3,ui2l,3==ui2l); printf("#0696:code_bool_const %u!=%u gvar %d\n",-1,i2l,-1!=i2l); printf("#0697:code_bool_const %d>%d gvar %d\n",0,i2l,0>i2l); printf("#0698:code_bool_const %u>%u gvar %d u\n",4,ui2l,4>ui2l); printf("#0699:code_bool_const %d>=%d gvar %d\n",0,i2l,0>=i2l); printf("#0700:code_bool_const %u>=%u gvar %d u\n",4,ui2l,4>=ui2l); printf("#0701:code_bool_const %d<%d gvar %d\n",0,i2l,0<i2l); printf("#0702:code_bool_const %u<%u gvar %d u\n",4,ui2l,4<ui2l); printf("#0703:code_bool_const %d<=%d gvar %d\n",0,i2l,0<=i2l); printf("#0704:code_bool_const %u<=%u gvar %d u\n",4,ui2l,4<=ui2l); printf("#0705:code_bool_const %u==%u gvar %d u\n",4,ui2l,4==ui2l); printf("#0706:code_bool_const %u!=%u gvar %d\n",0,i2l,0!=i2l); printf("#0707:code_bool_const %d>%d gvar %d\n",1,i2l,1>i2l); printf("#0708:code_bool_const %u>%u gvar %d u\n",5,ui2l,5>ui2l); printf("#0709:code_bool_const %d>=%d gvar %d\n",1,i2l,1>=i2l); printf("#0710:code_bool_const %u>=%u gvar %d u\n",5,ui2l,5>=ui2l); printf("#0711:code_bool_const %d<%d gvar %d\n",1,i2l,1<i2l); printf("#0712:code_bool_const %u<%u gvar %d u\n",5,ui2l,5<ui2l); printf("#0713:code_bool_const %d<=%d gvar %d\n",1,i2l,1<=i2l); printf("#0714:code_bool_const %u<=%u gvar %d u\n",5,ui2l,5<=ui2l); printf("#0715:code_bool_const %u==%u gvar %d u\n",5,ui2l,5==ui2l); printf("#0716:code_bool_const %u!=%u gvar %d\n",1,i2l,1!=i2l); printf("#0717:code_bool_const %d>%d gvar %d\n",2,i2l,2>i2l); printf("#0718:code_bool_const %u>%u gvar %d u\n",6,ui2l,6>ui2l); printf("#0719:code_bool_const %d>=%d gvar %d\n",2,i2l,2>=i2l); printf("#0720:code_bool_const %u>=%u gvar %d u\n",6,ui2l,6>=ui2l); printf("#0721:code_bool_const %d<%d gvar %d\n",2,i2l,2<i2l); printf("#0722:code_bool_const %u<%u gvar %d u\n",6,ui2l,6<ui2l); printf("#0723:code_bool_const %d<=%d gvar %d\n",2,i2l,2<=i2l); printf("#0724:code_bool_const %u<=%u gvar %d u\n",6,ui2l,6<=ui2l); printf("#0725:code_bool_const %u==%u gvar %d u\n",6,ui2l,6==ui2l); printf("#0726:code_bool_const %u!=%u gvar %d\n",2,i2l,2!=i2l); printf("#0727:code_bool_const %d>%d gvar %d\n",3,i2l,3>i2l); printf("#0728:code_bool_const %u>%u gvar %d u\n",7,ui2l,7>ui2l); printf("#0729:code_bool_const %d>=%d gvar %d\n",3,i2l,3>=i2l); printf("#0730:code_bool_const %u>=%u gvar %d u\n",7,ui2l,7>=ui2l); printf("#0731:code_bool_const %d<%d gvar %d\n",3,i2l,3<i2l); printf("#0732:code_bool_const %u<%u gvar %d u\n",7,ui2l,7<ui2l); printf("#0733:code_bool_const %d<=%d gvar %d\n",3,i2l,3<=i2l); printf("#0734:code_bool_const %u<=%u gvar %d u\n",7,ui2l,7<=ui2l); printf("#0735:code_bool_const %u==%u gvar %d u\n",7,ui2l,7==ui2l); printf("#0736:code_bool_const %u!=%u gvar %d\n",3,i2l,3!=i2l); ui2l++; } } INLINE void code_cmp() { char c1,c2; unsigned char uc1,uc2; int i1,i2; short s1,s2; unsigned short us1,us2; i1 = 1; i2 = -2; s1 = -1; s2 = -3; us1 = 65535; us2 = 65535; c1 = -1; c2 = -3; uc1 = 200; uc2 = 202; if(i1 ) printf("#0753:code_bool local 1\n"); if(s1 ) printf("#0754:code_bool local 2\n"); if(us1 ) printf("#0755:code_bool local 3\n"); if(c1 ) printf("#0756:code_bool local 4\n"); if(uc1 ) printf("#0757:code_bool local 5\n"); } INLINE void code_cmp_global() { i1 = 1; i2 = -2; s1 = -1; s2 = -3; us1 = 65535; us2 = 65535; c1 = -1; c2 = -3; uc1 = 200; uc2 = 202; if(i1 ) printf("#0766:code_bool global 1\n"); if(s1 ) printf("#0767:code_bool global 2\n"); if(us1 ) printf("#0768:code_bool global 3\n"); if(c1 ) printf("#0769:code_bool global 4\n"); if(uc1 ) printf("#0770:code_bool global 5\n"); } INLINE void code_cmp_register() { register char c1,c2; register unsigned char uc1,uc2; register int i1,i2; register short s1,s2; register unsigned short us1,us2; i1 = 1; i2 = -2; s1 = -1; s2 = -3; us1 = 65535; us2 = 65535; c1 = -1; c2 = -3; uc1 = 200; uc2 = 202; if(i1 ) printf("#0785:code_bool register 1\n"); if(s1 ) printf("#0786:code_bool register 2\n"); if(us1 ) printf("#0787:code_bool register 3\n"); if(c1 ) printf("#0788:code_bool register 4\n"); if(uc1 ) printf("#0789:code_bool register 5\n"); } // code_string(int e1,int creg) INLINE void code_string() { printf("#0799:code_string test\n"); } // struct_push(int e4,int t,int arg) INLINE struct aa struct_push0(int i,struct aa a) { a.a[55]++; if (i==0) { return struct_push0(1,a0); } return a0; } INLINE void struct_push() { a0.a[55]=3; a0 = struct_push0(0,a0); printf("#0818:struct_push %d\n",a0.a[55]); } // code_jmp(char *s) // code_indirect_jmp(int e2) // code_rindirect(int e1, int offset, int us); INLINE void code_rindirect() { int i1,i2; unsigned int ui1,ui2; int *pi1,*pi2; unsigned int *pui1,*pui2; i1 = -555; i2= 555; ui1 = 632423423; ui2= 32394234; pi1 = &i1; pi2 = &i2; pui1 = &ui1; pui2 = &ui2; printf("#0839:code_rindirect %d %d %u %u\n",*pi1,*pi2,*pui1,*pui2); } // code_crindirect(int e1, int offset, int us); INLINE void code_crindirect() { char i1,i2; unsigned char ui1,ui2; char *pi1,*pi2; unsigned char *pui1,*pui2; long l1,l2; unsigned long ul1,ul2; i1 = -55; i2= 55; ui1 = 200; ui2= 128; pi1 = &i1; pi2 = &i2; pui1 = &ui1; pui2 = &ui2; printf("#0859:code_cindirect %d %d %u %u\n",*pi1,*pi2,*pui1,*pui2); l1 = *pi1; l2 = *pi2; ul1 = *pui1; ul2 = *pui2; printf("#0865:code_cindirect %ld %ld %lu %lu\n",l1,l2,ul1,ul2); } // code_srindirect(int e1, int offset, int us); INLINE void code_srindirect() { short i1,i2; unsigned short ui1,ui2; short *pi1,*pi2; unsigned short *pui1,*pui2; long l1,l2; unsigned long ul1,ul2; i1 = -55; i2= 55; ui1 = 200; ui2= 128; pi1 = &i1; pi2 = &i2; pui1 = &ui1; pui2 = &ui2; printf("#0886:code_sindirect %d %d %u %u\n",*pi1,*pi2,*pui1,*pui2); l1 = *pi1; l2 = *pi2; ul1 = *pui1; ul2 = *pui2; printf("#0891:code_cindirect %ld %ld %lu %lu\n",l1,l2,ul1,ul2); } #if FLOAT_CODE // code_drindirect(int e1, int offset, int d); INLINE void code_drindirect() { float i1,i2; double ui1,ui2; double di1,di2; float *pi1,*pi2; double *pui1,*pui2; long l1,l2; long ul1,ul2; #if LONG_DOUBLE_CODE long double *pdi1,*pdi2; #endif i1 = -55; i2= 55; ui1 = 200; ui2= 128; di1 = 200; di2= 128; pi1 = &i1; pi2 = &i2; pui1 = &ui1; pui2 = &ui2; printf("#0917:code_dindirect %g %g %g %g\n",*pi1,*pi2,*pui1,*pui2); #if LONG_DOUBLE_CODE pdi1 = &di1; pdi2 = &di2; printf("#0921:code_dindirect %Lg %Lg\n",*pdi1,*pdi2); #endif l1 = *pi1; l2 = *pi2; ul1 = *pui1; ul2 = *pui2; printf("#0927:code_cindirect %ld %ld %ld %ld\n",l1,l2,ul1,ul2); } #endif #if LONGLONG_CODE // code_lrindirect(int e1, int offset, int us); INLINE void code_lrindirect() { long long i1,i2; unsigned long long ui1,ui2; long long *pi1,*pi2; unsigned long long *pui1,*pui2; i1 = -55; i2= 55; ui1 = 200; ui2= 128; pi1 = &i1; pi2 = &i2; pui1 = &ui1; pui2 = &ui2; printf("#0948:code_lrindirect %llx %llx %llx %llx\n",*pi1,*pi2,*pui1,*pui2); printf("#0949:code_lrindirect %lld %lld %llu %llu\n",*pi1,*pi2,*pui1,*pui2); } #endif // code_assign_gvar(int e2,int creg,int byte) // code_assign_lvar(int e2,int creg,int byte) // code_assign_register(int e2,int byte,int creg) // code_assign(int e2,int byte,int creg) INLINE void code_assign() { int i1,i2; unsigned int ui1,ui2; int *pi1,*pi2; unsigned int *pui1,*pui2; i1 = -555; i2= 555; ui1 = 632423423; ui2= 32394234; pi1 = &i1; pi2 = &i2; pui1 = &ui1; pui2 = &ui2; *(pi2+i1+i2) = 3; *(pui2+i1+i2) = 3; printf("#0976:code_rindirect %d %d %u %u\n",*pi1,*pi2,*pui1,*pui2); } INLINE void code_assign_register() { int i1,i2; unsigned int ui1,ui2; register int *pi1,*pi2; register unsigned int *pui1,*pui2; i1 = -555; i2= 555; ui1 = 632423423; ui2= 32394234; pi1 = &i1; pi2 = &i2; pui1 = &ui1; pui2 = &ui2; *(pi2+i1+i2) = 3; *(pui2+i1+i2) = 3; printf("#0996:code_rindirect %d %d %u %u\n",*pi1,*pi2,*pui1,*pui2); } // code_register_assop(int e2,int op,int byte) INLINE void code_register_assop() { register int i1; register unsigned int ui1; int a = 3; i1 = -555; ui1 = 632423423; i1 += a; printf("#1010:code_assop 1 %d\n",i1); i1 -= a; printf("#1012:code_assop 2 %d\n",i1); i1 /= a; printf("#1014:code_assop 3 %d\n",i1); i1 *= a; printf("#1016:code_assop 4 %d\n",i1); i1 |= a; printf("#1018:code_assop 5 %d\n",i1); i1 &= a; printf("#1020:code_assop 6 %d\n",i1); i1 ^= a; printf("#1022:code_assop 7 %d\n",i1); i1 <<= a; printf("#1024:code_assop 8 %d\n",i1); i1 >>= a; printf("#1026:code_assop 9 %d\n",i1); ui1 += a; printf("#1029:code_assop 1 %u\n",ui1); ui1 -= a; printf("#1031:code_assop 2 %u\n",ui1); ui1 /= a; printf("#1033:code_assop 3 %u\n",ui1); ui1 *= a; printf("#1035:code_assop 4 %u\n",ui1); ui1 |= a; printf("#1037:code_assop 5 %u\n",ui1); ui1 &= a; printf("#1039:code_assop 6 %u\n",ui1); ui1 ^= a; printf("#1041:code_assop 7 %u\n",ui1); ui1 <<= a; printf("#1043:code_assop 8 %u\n",ui1); ui1 >>= a; printf("#1045:code_assop 9 %u\n",ui1); } // iassop_l(int op,int byte,int sign) INLINE void code_iassop_l() { struct hoge { int i1,i2; unsigned int ui1,ui2; } s, *p; int a = 3; p = &s; p->i1 = -555; p->i2= 555; p->ui1 = 632423423; p->ui2= 32394234; p->i1 += a; printf("#1062:iassop 1 %d\n",p->i1); p->i1 -= a; printf("#1064:iassop 2 %d\n",p->i1); p->i1 /= a; printf("#1066:iassop 3 %d\n",p->i1); p->i1 *= a; printf("#1068:iassop 4 %d\n",p->i1); p->i1 |= a; printf("#1070:iassop 5 %d\n",p->i1); p->i1 &= a; printf("#1072:iassop 6 %d\n",p->i1); p->i1 ^= a; printf("#1074:iassop 7 %d\n",p->i1); p->i1 <<= a; printf("#1076:iassop 8 %d\n",p->i1); p->i1 >>= a; printf("#1078:iassop 9 %d\n",p->i1); p->ui1 += a; printf("#1081:iassop 1 %u\n",p->ui1); p->ui1 -= a; printf("#1083:iassop 2 %u\n",p->ui1); p->ui1 /= a; printf("#1085:iassop 3 %u\n",p->ui1); p->ui1 *= a; printf("#1087:iassop 4 %u\n",p->ui1); p->ui1 |= a; printf("#1089:iassop 5 %u\n",p->ui1); p->ui1 &= a; printf("#1091:iassop 6 %u\n",p->ui1); p->ui1 ^= a; printf("#1093:iassop 7 %u\n",p->ui1); p->ui1 <<= a; printf("#1095:iassop 8 %u\n",p->ui1); p->ui1 >>= a; printf("#1097:iassop 9 %u\n",p->ui1); } // iassop_l(int op,int byte,int sign) struct ghoge { int i1,i2; unsigned int ui1,ui2; } gs, *gp; INLINE void code_iassop_g() { int a = 3; gp = &gs; gp->i1 = -555; gp->i2= 555; gp->ui1 = 632423423; gp->ui2= 32394234; gp->i1 += a; printf("#1116:iassop 1 %d\n",gp->i1); gp->i1 -= a; printf("#1118:iassop 2 %d\n",gp->i1); gp->i1 /= a; printf("#1120:iassop 3 %d\n",gp->i1); gp->i1 *= a; printf("#1122:iassop 4 %d\n",gp->i1); gp->i1 |= a; printf("#1124:iassop 5 %d\n",gp->i1); gp->i1 &= a; printf("#1126:iassop 6 %d\n",gp->i1); gp->i1 ^= a; printf("#1128:iassop 7 %d\n",gp->i1); gp->i1 <<= a; printf("#1130:iassop 8 %d\n",gp->i1); gp->i1 >>= a; printf("#1132:iassop 9 %d\n",gp->i1); gp->ui1 += a; printf("#1135:iassop 1 %u\n",gp->ui1); gp->ui1 -= a; printf("#1137:iassop 2 %u\n",gp->ui1); gp->ui1 /= a; printf("#1139:iassop 3 %u\n",gp->ui1); gp->ui1 *= a; printf("#1141:iassop 4 %u\n",gp->ui1); gp->ui1 |= a; printf("#1143:iassop 5 %u\n",gp->ui1); gp->ui1 &= a; printf("#1145:iassop 6 %u\n",gp->ui1); gp->ui1 ^= a; printf("#1147:iassop 7 %u\n",gp->ui1); gp->ui1 <<= a; printf("#1149:iassop 8 %u\n",gp->ui1); gp->ui1 >>= a; printf("#1151:iassop 9 %u\n",gp->ui1); } INLINE void code_iassop_g_c() { const int a = 3; gp = &gs; gp->i1 = -555; gp->i2= 555; gp->ui1 = 632423423; gp->ui2= 32394234; gp->i1 += a; printf("#1164:iassop 1 %d\n",gp->i1); gp->i1 -= a; printf("#1166:iassop 2 %d\n",gp->i1); gp->i1 /= a; printf("#1168:iassop 3 %d\n",gp->i1); gp->i1 *= a; printf("#1170:iassop 4 %d\n",gp->i1); gp->i1 |= a; printf("#1172:iassop 5 %d\n",gp->i1); gp->i1 &= a; printf("#1174:iassop 6 %d\n",gp->i1); gp->i1 ^= a; printf("#1176:iassop 7 %d\n",gp->i1); gp->i1 <<= a; printf("#1178:iassop 8 %d\n",gp->i1); gp->i1 >>= a; printf("#1180:iassop 9 %d\n",gp->i1); gp->ui1 += a; printf("#1183:iassop 1 %u\n",gp->ui1); gp->ui1 -= a; printf("#1185:iassop 2 %u\n",gp->ui1); gp->ui1 /= a; printf("#1187:iassop 3 %u\n",gp->ui1); gp->ui1 *= a; printf("#1189:iassop 4 %u\n",gp->ui1); gp->ui1 |= a; printf("#1191:iassop 5 %u\n",gp->ui1); gp->ui1 &= a; printf("#1193:iassop 6 %u\n",gp->ui1); gp->ui1 ^= a; printf("#1195:iassop 7 %u\n",gp->ui1); gp->ui1 <<= a; printf("#1197:iassop 8 %u\n",gp->ui1); gp->ui1 >>= a; printf("#1199:iassop 9 %u\n",gp->ui1); } // code_assop(int op,int byte,int sign) INLINE void code_assop() { int i1,i2; unsigned int ui1,ui2; int a = 3; i1 = -555; i2= 555; ui1 = 632423423; ui2= 32394234; i1 += a; printf("#1214:code_assop 1 %d\n",i1); i1 -= a; printf("#1216:code_assop 2 %d\n",i1); i1 /= a; printf("#1218:code_assop 3 %d\n",i1); i1 *= a; printf("#1220:code_assop 4 %d\n",i1); i1 |= a; printf("#1222:code_assop 5 %d\n",i1); i1 &= a; printf("#1224:code_assop 6 %d\n",i1); i1 ^= a; printf("#1226:code_assop 7 %d\n",i1); i1 <<= a; printf("#1228:code_assop 8 %d\n",i1); i1 >>= a; printf("#1230:code_assop 9 %d\n",i1); ui1 += a; printf("#1233:code_assop 1 %u\n",ui1); ui1 -= a; printf("#1235:code_assop 2 %u\n",ui1); ui1 /= a; printf("#1237:code_assop 3 %u\n",ui1); ui1 *= a; printf("#1239:code_assop 4 %u\n",ui1); ui1 |= a; printf("#1241:code_assop 5 %u\n",ui1); ui1 &= a; printf("#1243:code_assop 6 %u\n",ui1); ui1 ^= a; printf("#1245:code_assop 7 %u\n",ui1); ui1 <<= a; printf("#1247:code_assop 8 %u\n",ui1); ui1 >>= a; printf("#1249:code_assop 9 %u\n",ui1); } // code_register_assop(int e2,int op,int byte) INLINE void code_register_assop_const() { register int i1; register unsigned int ui1; i1 = -555; ui1 = 632423423; i1 += 3; printf("#1263:code_assop c 1 %d\n",i1); i1 -= 3; printf("#1265:code_assop c 2 %d\n",i1); i1 /= 3; printf("#1267:code_assop c 3 %d\n",i1); i1 *= 3; printf("#1269:code_assop c 4 %d\n",i1); i1 |= 234; printf("#1271:code_assop c 5 %d\n",i1); i1 &= 23244234; printf("#1273:code_assop c 6 %d\n",i1); i1 ^= 55244234; printf("#1275:code_assop c 7 %d\n",i1); i1 <<= 3; printf("#1277:code_assop c 8 %d\n",i1); i1 >>= 3; printf("#1279:code_assop c 9 %d\n",i1); ui1 += 3; printf("#1282:code_assop c 1 %u\n",ui1); ui1 -= 3; printf("#1284:code_assop c 2 %u\n",ui1); ui1 /= 3; printf("#1286:code_assop c 3 %u\n",ui1); ui1 *= 3; printf("#1288:code_assop c 4 %u\n",ui1); ui1 |= 234; printf("#1290:code_assop c 5 %u\n",ui1); ui1 &= 23234234; printf("#1292:code_assop c 6 %u\n",ui1); ui1 ^= 55234234; printf("#1294:code_assop c 7 %u\n",ui1); ui1 <<= 3; printf("#1296:code_assop c 8 %u\n",ui1); ui1 >>= 3; printf("#1298:code_assop c 9 %u\n",ui1); } // code_assop(int op,int byte,int sign) INLINE void code_assop_const() { int i1,i2; unsigned int ui1,ui2; i1 = -555; i2= 555; ui1 = 632423423; ui2= 32394234; i1 += 3; printf("#1311:code_assop c 1 %d\n",i1); i1 -= 3; printf("#1313:code_assop c 2 %d\n",i1); i1 /= 3; printf("#1315:code_assop c 3 %d\n",i1); i1 *= 3; printf("#1317:code_assop c 4 %d\n",i1); i1 |= 234; printf("#1319:code_assop c 5 %d\n",i1); i1 &= 23234234; printf("#1321:code_assop c 6 %d\n",i1); i1 ^= 55444234; printf("#1323:code_assop c 7 %d\n",i1); i1 <<= 3; printf("#1325:code_assop c 8 %d\n",i1); i1 >>= 3; printf("#1327:code_assop c 9 %d\n",i1); ui1 += 3; printf("#1330:code_assop c 1 %u\n",ui1); ui1 -= 3; printf("#1332:code_assop c 2 %u\n",ui1); ui1 /= 3; printf("#1334:code_assop c 3 %u\n",ui1); ui1 *= 3; printf("#1336:code_assop c 4 %u\n",ui1); ui1 |= 234; printf("#1338:code_assop c 5 %u\n",ui1); ui1 &= 23234234; printf("#1340:code_assop c 6 %u\n",ui1); ui1 ^= 54234234; printf("#1342:code_assop c 7 %u\n",ui1); ui1 <<= 3; printf("#1344:code_assop c 8 %u\n",ui1); ui1 >>= 3; printf("#1346:code_assop c 9 %u\n",ui1); } // tosop(int op,int oreg) INLINE void tosop() { int i1,i2,i; unsigned int u1,u2,u; i1 = -555; i2= 555; u1 = 632423423; u2= 32394234; i = i1 + i2; printf("#1360:tosop 1 %d\n",i); i = i1 - i2; printf("#1362:tosop 2 %d\n",i); i = i1 / i2; printf("#1364:tosop 3 %d\n",i); i = i1 * i2; printf("#1366:tosop 4 %d\n",i); i = i1 | i2; printf("#1368:tosop 5 %d\n",i); i = i1 & i2; printf("#1370:tosop 6 %d\n",i); i = i1 ^ i2; printf("#1372:tosop 7 %d\n",i); i = i1 << i2; printf("#1374:tosop 8 %d\n",i); i = i1 >> i2; printf("#1376:tosop 9 %d\n",i); i = i1 % i2; printf("#1378:tosop 10 %d\n",i); u = u1 + u2; printf("#1381:tosop 1 %u\n",u); u = u1 - u2; printf("#1383:tosop 2 %u\n",u); u = u1 / u2; printf("#1385:tosop 3 %u\n",u); u = u1 * u2; printf("#1387:tosop 4 %u\n",u); u = u1 | u2; printf("#1389:tosop 5 %u\n",u); u = u1 & u2; printf("#1391:tosop 6 %u\n",u); u = u1 ^ u2; printf("#1393:tosop 7 %u\n",u); u = u1 << u2; printf("#1395:tosop 8 %u\n",u); u = u1 >> u2; printf("#1397:tosop 9 %u\n",u); u = u1 % u2; printf("#1399:tosop 10 %u\n",u); } // oprtc(int op,int v) INLINE void oprtc() { int i1,i; unsigned int u1,u; i1 = -555; u1 = 632423423; i = i1 + 3; printf("#1412:oprtc 1 %d\n",i); i = i1 - 3; printf("#1414:oprtc 2 %d\n",i); i = i1 / 3; printf("#1416:oprtc 3 %d\n",i); i = i1 * 3; printf("#1418:oprtc 4 %d\n",i); i = i1 | 234234234; printf("#1420:oprtc 5 %d\n",i); i = i1 & 23234234; printf("#1422:oprtc 6 %d\n",i); i = i1 ^ 23234234; printf("#1424:oprtc 7 %d\n",i); i = i1 << 5; printf("#1426:oprtc 8 %d\n",i); i = i1 >> 5; printf("#1428:oprtc 9 %d\n",i); i = i1 % 5; printf("#1430:oprtc 10 %d\n",i); u = u1 + 3; printf("#1433:oprtc 1 %u\n",u); u = u1 - 3; printf("#1435:oprtc 2 %u\n",u); u = u1 / 3; printf("#1437:oprtc 3 %u\n",u); u = u1 * 3; printf("#1439:oprtc 4 %u\n",u); u = u1 | 234234234; printf("#1441:oprtc 5 %u\n",u); u = u1 & 234234234; printf("#1443:oprtc 6 %u\n",u); u = u1 ^ 234234234; printf("#1445:oprtc 7 %u\n",u); u = u1 << 5; printf("#1447:oprtc 8 %u\n",u); u = u1 >> 5; printf("#1449:oprtc 9 %u\n",u); u = u1 % 5; printf("#1451:oprtc 10 %u\n",u); } // tosop(int op,int oreg) INLINE void register_tosop() { register int i1,i2,i; register unsigned int u1,u2,u; i1 = -555; i2= 555; u1 = 632423423; u2= 32394234; i = i1 + i2; printf("#1465:tosop r 1 %d\n",i); i = i1 - i2; printf("#1467:tosop r 2 %d\n",i); i = i1 / i2; printf("#1469:tosop r 3 %d\n",i); i = i1 * i2; printf("#1471:tosop r 4 %d\n",i); i = i1 | i2; printf("#1473:tosop r 5 %d\n",i); i = i1 & i2; printf("#1475:tosop r 6 %d\n",i); i = i1 ^ i2; printf("#1477:tosop r 7 %d\n",i); i = i1 << i2; printf("#1479:tosop r 8 %d\n",i); i = i1 >> i2; printf("#1481:tosop r 9 %d\n",i); i = i1 % i2; printf("#1483:tosop r 10 %d\n",i); u = u1 + u2; printf("#1486:tosop r 1 %u\n",u); u = u1 - u2; printf("#1488:tosop r 2 %u\n",u); u = u1 / u2; printf("#1490:tosop r 3 %u\n",u); u = u1 * u2; printf("#1492:tosop r 4 %u\n",u); u = u1 | u2; printf("#1494:tosop r 5 %u\n",u); u = u1 & u2; printf("#1496:tosop r 6 %u\n",u); u = u1 ^ u2; printf("#1498:tosop r 7 %u\n",u); u = u1 << u2; printf("#1500:tosop r 8 %u\n",u); u = u1 >> u2; printf("#1502:tosop r 9 %u\n",u); u = u1 % u2; printf("#1504:tosop r 10 %u\n",u); } // oprtc(int op,int v) INLINE void register_oprtc() { register int i1,i; register unsigned int u1,u; i1 = -555; u1 = 632423423; i = i1 + 3; printf("#1517:oprtc r 1 %d\n",i); i = i1 - 3; printf("#1519:oprtc r 2 %d\n",i); i = i1 / 3; printf("#1521:oprtc r 3 %d\n",i); i = i1 * 3; printf("#1523:oprtc r 4 %d\n",i); i = i1 | 234234234; printf("#1525:oprtc r 5 %d\n",i); i = i1 & 23234234; printf("#1527:oprtc r 6 %d\n",i); i = i1 ^ 23234234; printf("#1529:oprtc r 7 %d\n",i); i = i1 << 5; printf("#1531:oprtc r 8 %d\n",i); i = i1 >> 5; printf("#1533:oprtc r 9 %d\n",i); i = i1 % 5; printf("#1535:oprtc r 10 %d\n",i); u = u1 + 3; printf("#1538:oprtc r 1 %u\n",u); u = u1 - 3; printf("#1540:oprtc r 2 %u\n",u); u = u1 / 3; printf("#1542:oprtc r 3 %u\n",u); u = u1 * 3; printf("#1544:oprtc r 4 %u\n",u); u = u1 | 234234234; printf("#1546:oprtc r 5 %u\n",u); u = u1 & 234234234; printf("#1548:oprtc r 6 %u\n",u); u = u1 ^ 234234234; printf("#1550:oprtc r 7 %u\n",u); u = u1 << 5; printf("#1552:oprtc r 8 %u\n",u); u = u1 >> 5; printf("#1554:oprtc r 9 %u\n",u); u = u1 % 5; printf("#1556:oprtc r 10 %u\n",u); } #if FLOAT_CODE // code_cmp_dregister(int e2,int d) INLINE void code_cmp_dregister() { register float f0,f1; register double d0,d1; f0 = 0.0; f1 = 0.2; d0 = 10; d1 = 10e10; if (f0 ) printf("#1569:code_bool register 6\n"); if (d0 ) printf("#1570:code_bool register 7\n"); } // code_dregister(int e2,int freg,int d) INLINE void code_dregister() { register float f0,f1; register double d0,d1; f0 = 0.0; f1 = 0.2; d0 = 10; d1 = 10e10; printf("#1582:code_lvar float r %f %f %g %g\n",f0,f1,d0,d1); f0 += f1; d0 += d1; printf("#1585:code_lvar float r %f %f %g %g\n",f0,f1,d0,d1); } // code_dassign_gvar(int e2,int freg,int d) // code_dassign_lvar(int e2,int freg,int d) // code_dassign_dregister(int e2,int d,int freg) // code_dassign(int e2,int freg,int d) INLINE void code_dassign() { int i1,i2; float f1,f2; double ui1,ui2; float *pi1,*pi2; double *pui1,*pui2; i1 = -555; i2= 555; f1 = -555; f2= 555; ui1 = 632423423; ui2= 32394234; pi1 = &f1; pi2 = &f2; pui1 = &ui1; pui2 = &ui2; *(pi2+i1+i2) = 3; *(pui2+i1+i2) = 3; printf("#1612:code_dassign %g %g %g %g\n",*pi1,*pi2,*pui1,*pui2); } INLINE void code_register_dassign() { int i1,i2; float f1,f2; double ui1,ui2; register float *pi1,*pi2; register double *pui1,*pui2; i1 = -555; i2= 555; f1 = -555; f2= 555; ui1 = 632423423; ui2= 32394234; pi1 = &f1; pi2 = &f2; pui1 = &ui1; pui2 = &ui2; *(pi2+i1+i2) = 3; *(pui2+i1+i2) = 3; printf("#1634:code_dassign %g %g %g %g\n",*pi1,*pi2,*pui1,*pui2); } // code_dconst(int e2,int freg,int d) // code_dneg(int freg,int d) // code_dneg(int creg) INLINE void code_dneg() { float i,j; double di,dj; i = 123123123;j = -32423; di = 123123123;dj = -32423; printf("#1647:code_dneg %g %g\n",-i,-j); printf("#1648:code_dneg %g %g\n",-di,-dj); } // code_d2i(int freg0) INLINE void code_d2i() { double d,z; int i; d = 0.1; z = 555; i = d; printf("#1660:code_d2i %d\n",i); } // code_i2d(int creg0) INLINE void code_i2d() { double d; int i,z; i = 242342342; z = -1; d = i; printf("#1671:code_i2d %g\n",d); } // code_d2u(int freg0) INLINE void code_d2u() { double d,z; unsigned int i; d = 0.1; z = 555; i = d; printf("#1682:code_d2u %ud\n",i); } // code_u2d(int creg0) INLINE void code_u2d() { double d; unsigned int i,z; i = 242342342; z = 3; d = i; printf("#1693:code_u2d %g\n",d); } // code_f2i(int freg0) INLINE void code_f2i() { float d,z; int i; d = 0.1; z = 555; i = d; printf("#1704:code_d2i %d\n",i); } // code_i2f(int creg0) INLINE void code_i2f() { float d; int i,z; i = 24234342; z = 555; d = i; printf("#1715:code_i2f %g\n",d); } // code_f2u(int freg0) INLINE void code_f2u() { float d,z; unsigned int i; d = 0.1; z = 555; i = d; printf("#1726:code_f2u %ud\n",i); } // code_u2f(int creg0) INLINE void code_u2f() { float d; unsigned int i,z; i = 242342342; z = 555; d = i; printf("#1737:code_u2f %g\n",d); } // code_drgvar(int e2,int d,int freg) INLINE void code_dgvar() { f0 = 0.0; f1 = 0.2; d0 = 10; d1 = 10e10; printf("#1747:code_gvar float 1 %f %f %g %g\n",f0,f1,d0,d1); s_f0 = 0.0; s_f1 = 0.2; s_d0 = 10; s_d1 = 10e10; printf("#1750:code_gvar float 2 %f %f %g %g\n",s_f0,s_f1,s_d0,s_d1); } // code_drlvar(int e2,int d,int freg) INLINE void code_dlvar() { float f0,f1; double d0,d1; f0 = 0.0; f1 = 0.2; d0 = 10; d1 = 10e10; printf("#1761:code_lvar float %f %f %g %g\n",f0,f1,d0,d1); printf("#1762:code_bool > lvar float %d %d %d %d\n", f0>f1,f0>=f1,f0==f1,f0!=f1); printf("#1764:code_bool > lvar double %d %d %d %d\n", d0>d1,d0>=d1,d0==d1,d0!=d1); printf("#1766:code_bool < lvar float %d %d %d %d\n", f0<f1,f0<=f1,f0==f1,f0!=f1); printf("#1768:code_bool < lvar double %d %d %d %d\n", d0<d1,d0<=d1,d0==d1,d0!=d1); } // code_cmp_drgvar(int e2,int d) INLINE void code_cmp_d_global() { f0 = 0.0; f1 = 0.2; d0 = 10; d1 = 10e10; if(f0 ) printf("#1779:code_bool global 6\n"); if(d0 ) printf("#1780:code_bool global 7\n"); } // code_cmp_drlvar(int e2,int d) INLINE void code_cmp_d() { float f0,f1; double d0,d1; f0 = 0.0; f1 = 0.2; d0 = 10; d1 = 10e10; if(f0 ) printf("#1792:code_bool local 6\n"); if(d0 ) printf("#1793:code_bool local 7\n"); } // dtosop(int op,int e1) INLINE void dtosop() { double i1,i2,i; float u1,u2,u; i1 = -555; i2= 555; u1 = 632423423; u2= 32394234; i = i1 + i2; printf("#1806:dtosop 1 %g\n",i); i = i1 - i2; printf("#1808:dtosop 2 %g\n",i); i = i1 / i2; printf("#1810:dtosop 3 %g\n",i); i = i1 * i2; printf("#1812:dtosop 4 %g\n",i); u = u1 + u2; printf("#1814:dtosop 1 %g\n",u); u = u1 - u2; printf("#1816:dtosop 2 %g\n",u); u = u1 / u2; printf("#1818:dtosop 3 %g\n",u); u = u1 * u2; printf("#1820:dtosop 4 %g\n",u); } // dtosop(int op,int e1) INLINE void dtosop_register() { register double i1,i2,i; register float u1,u2,u; i1 = -555; i2= 555; u1 = 632423423; u2= 32394234; i = i1 + i2; printf("#1834:dtosop 1 %g\n",i); i = i1 - i2; printf("#1836:dtosop 2 %g\n",i); i = i1 / i2; printf("#1838:dtosop 3 %g\n",i); i = i1 * i2; printf("#1840:dtosop 4 %g\n",i); u = u1 + u2; printf("#1842:dtosop 1 %g\n",u); u = u1 - u2; printf("#1844:dtosop 2 %g\n",u); u = u1 / u2; printf("#1846:dtosop 3 %g\n",u); u = u1 * u2; printf("#1848:dtosop 4 %g\n",u); } // code_dassop(int op,int d) INLINE void code_dassop() { double i1,i2; float ui1,ui2; i1 = -555; i2= 555; ui1 = 632423423; ui2= 32394234; i1 += 3; printf("#1862:code_dassop 1 %g\n",i1); i1 -= 3; printf("#1864:code_dassop 2 %g\n",i1); i1 /= 3; printf("#1866:code_dassop 3 %g\n",i1); i1 *= 3; printf("#1868:code_dassop 4 %g\n",i1); ui1 += 3; printf("#1871:code_dassop f 1 %g\n",ui1); ui1 -= 3; printf("#1873:code_dassop f 2 %g\n",ui1); ui1 /= 3; printf("#1875:code_dassop f 3 %g\n",ui1); ui1 *= 3; printf("#1877:code_dassop f 4 %g\n",ui1); } // code_dassop(int op,int d) INLINE void code_register_dassop() { register double i1,i2; register float ui1,ui2; i1 = -555; i2= 555; ui1 = 632423423; ui2= 32394234; i1 += 3; printf("#1890:code_dassop r 1 %g\n",i1); i1 -= 3; printf("#1892:code_dassop r 2 %g\n",i1); i1 /= 3; printf("#1894:code_dassop r 3 %g\n",i1); i1 *= 3; printf("#1896:code_dassop r 4 %g\n",i1); ui1 += 3; printf("#1899:code_dassop f r 1 %g\n",ui1); ui1 -= 3; printf("#1901:code_dassop f r 2 %g\n",ui1); ui1 /= 3; printf("#1903:code_dassop f r 3 %g\n",ui1); ui1 *= 3; printf("#1905:code_dassop f r 4 %g\n",ui1); } // code_dpreinc(int e1,int e2,int d,int reg) INLINE void code_dpreinc() { double i,j; float ui,uj; i = 123123123;j = 0; printf("#1916:code_dpreinc d %g %g",++i,--j); printf("#1917: %g %g\n",i,j); ui = 123123123;uj = 0; printf("#1919:code_dpreinc f %g %g",++ui,--uj); printf("#1920: %g %g\n",ui,uj); } // code_dpostinc(int e1,int e2,int d,int reg) INLINE void code_dpostinc() { double i,j; float ui,uj; i = 123123;j = 0; printf("#1930:code_dpostinc d %g %g",i--,j--); printf("#1931: %g %g\n",i,j); ui = 123123;uj = 0; printf("#1933:code_dpostinc f %g %g",ui++,uj--); printf("#1934: %g %g\n",ui,uj); } // code_dpreinc(int e1,int e2,int d,int reg) INLINE void code_register_dpreinc() { register double i,j; register float ui,uj; i = 123123;j = 0; printf("#1944:code_dpreinc r d %g %g",++i,--j); printf("#1945: %g %g\n",i,j); ui = 123123;uj = 0; printf("#1947:code_dpreinc r f %g %g",++ui,--uj); printf("#1948: %g %g\n",ui,uj); } // code_dpostinc(int e1,int e2,int d,int reg) INLINE void code_register_dpostinc() { register double i,j; register float ui,uj; i = 123123;j = 0; printf("#1958:code_dpostinc r d %g %g",i--,j--); printf("#1959: %g %g\n",i,j); ui = 123123;uj = 0; printf("#1961:code_dpostinc r f %g %g",ui++,uj--); printf("#1962: %g %g\n",ui,uj); } // drexpr(int e1, int e2,int l1, int op) // case DOP+GE: // case FOP+GE: // case DOP+GT: // case FOP+GT: // case DOP+EQ: // case FOP+EQ: // case DOP+NEQ: // case FOP+NEQ: // code_gt(int cond) INLINE void code_dgt() { double reg; if (d0>d1) printf("#1982:code_dgt 1\n"); else printf("#1984:code_dgt 0\n"); for (reg=-3;reg<7;reg++) { if (0<reg && reg<3) printf("#1987:reg=%g code_dgt 0<reg && reg <3\n",reg); } for (reg=-3;reg<7;reg++) { if (-2<reg && reg<0) printf("#1991:reg=%g code_dgt -2<reg && reg <0\n",reg); } } // code_ugt(int cond) INLINE void code_fgt() { float reg; if (f0>f1) printf("#2001:code_fgt 1\n"); else printf("#2003:code_fgt 0\n"); for (reg=-3;reg<7;reg++) { if (0<reg && reg<3) printf("#2006:reg=%g code_fgt 0<reg && reg <3\n",reg); } for (reg=-3;reg<7;reg++) { if (-2<reg && reg<0) printf("#2010:reg=%g code_fgt -2<reg && reg <0\n",reg); } } // code_ge(int cond) INLINE void code_dge() { double reg; if (d0>=d1) printf("#2020:code_dge 1\n"); else printf("#2022:code_dge 0\n"); for (reg=-3;reg<7;reg++) { if (0<=reg && reg<=3) printf("#2025:reg=%g code_dge 0<reg && reg <=3\n",reg); } for (reg=-3;reg<7;reg++) { if (-2<=reg && reg<=0) printf("#2029:reg=%g code_dge -2<reg && reg <=0\n",reg); } } // code_uge(int cond) INLINE void code_fge() { float reg; if (f0>=f1) printf("#2039:code_fge 1\n"); else printf("#2041:code_fge 0\n"); for (reg=-3;reg<7;reg++) { if (0<=reg && reg<=3) printf("#2044:reg=%g code_fge 0<=reg && reg <=3\n",reg); } for (reg=-3;reg<7;reg++) { if (-2<=reg && reg<=0) printf("#2048:reg=%g code_fge -2<=reg && reg <=0\n",reg); } } // code_eq(int cond) INLINE void code_deq() { if (f0==f1) printf("#2057:code_feq 1\n"); else printf("#2059:code_feq 0\n"); if (d0!=d1) printf("#2061:code_deq 1\n"); else printf("#2063:code_deq 0\n"); } // code_dbool(int e1) INLINE void code_dbool() { float i1l,i2l; double ui1l,ui2l; d1 = d0-3; for(f1=f0-3;f1<f0+3;f1++) { printf("#2076:code_dbool %g>%g gvar %d\n",f0,f1,f0>f1); printf("#2077:code_dbool %g>%g gvar %d d\n",d0,d1,d0>d1); printf("#2078:code_dbool %g>=%g gvar %d\n",f0,f1,f0>=f1); printf("#2079:code_dbool %g>=%g gvar %d d\n",d0,d1,d0>=d1); printf("#2080:code_dbool %g<%g gvar %d\n",f0,f1,f0<f1); printf("#2081:code_dbool %g<%g gvar %d d\n",d0,d1,d0<d1); printf("#2082:code_dbool %g<=%g gvar %d\n",f0,f1,f0<=f1); printf("#2083:code_dbool %g<=%g gvar %d d\n",d0,d1,d0<=d1); printf("#2084:code_dbool %g==%g gvar %d d\n",d0,d1,d0==d1); printf("#2085:code_dbool %g!=%g gvar %d\n",f0,f1,f0!=f1); d1++; } ui1l = d0; i1l = f0; ui2l = d0-3; for(i2l=f0-3;i2l<i1l+3;i2l++) { printf("#2092:code_dbool %g>%g lvar %d\n",i1l,i2l,i1l>i2l); printf("#2093:code_dbool %g>%g lvar %d d\n",ui1l,ui2l,ui1l>ui2l); printf("#2094:code_dbool %g>=%g lvar %d\n",i1l,i2l,i1l>=i2l); printf("#2095:code_dbool %g>=%g lvar %d d\n",ui1l,ui2l,ui1l>=ui2l); printf("#2096:code_dbool %g<%g lvar %d\n",i1l,i2l,i1l<i2l); printf("#2097:code_dbool %g<%g lvar %d d\n",ui1l,ui2l,ui1l<ui2l); printf("#2098:code_dbool %g<=%g lvar %d\n",i1l,i2l,i1l<=i2l); printf("#2099:code_dbool %g<=%g lvar %d d\n",ui1l,ui2l,ui1l<=ui2l); printf("#2100:code_dbool %g==%g lvar %d d\n",ui1l,ui2l,ui1l==ui2l); printf("#2101:code_dbool %g!=%g lvar %d\n",i1l,i2l,i1l!=i2l); ui2l++; } } #endif #if LONGLONG_CODE // lrexpr(int e1, int e2,int l1, int op) INLINE void code_lbool() { long long l0l,l1l; unsigned long long ul0l,ul1l; printf("#2117:code_bool > long long %d %d %d %d %d %d\n", l1>l0,ul1>ul0,l1>=l0,ul1>=ul0,ul1==ul0,l1!=l0); printf("#2119:code_bool < long long %d %d %d %d %d %d\n", l1<l0,ul1<ul0,l1<=l0,ul1<=ul0,ul1==ul0,l1!=l0); l0l=l1l=l0; ul0l=ul1l=ul0; printf("#2125:code_bool eq > long long %d %d %d %d %d %d\n", l1l>l0l,ul1l>ul0l,l1l>=l0l,ul1l>=ul0l,ul1l==ul0l,l1l!=l0l); printf("#2127:code_bool eq < long long %d %d %d %d %d %d\n", l1l<l0l,ul1l<ul0l,l1l<=l0l,ul1l<=ul0l,ul1l==ul0l,l1l!=l0l); } // int lpop_register() // code_lregister(int e2,int reg) INLINE void code_lregister() { register long long l0,l1; register unsigned long long ul0,ul1; l0 = 123123123LL; l1 = 123123123LL; ul0 = 123123123LL; ul1 = 123123123LL; printf("#2143:code_lvar long long %llu %llu %llu %llu\n",l0,l1,ul0,ul1); } // code_cmp_lregister(int reg) INLINE void code_cmp_lregister() { register long long l0,l1; register unsigned long long ul0,ul1; l0 = 123123123LL; l1 = 123123123LL; ul0 = 123123123LL; ul1 = 123123123LL; if(l0 ) printf("#2156:code_bool register 8\n"); if(ul0 ) printf("#2157:code_bool register 9\n"); } // code_cmp_lrgvar(int e1,int e2) INLINE void code_cmp_lrgvar() { l0 = 123123123LL; l1 = 123123123LL; ul0 = 123123123LL; ul1 = 123123123LL; if(l0 ) printf("#2168:code_bool global 8\n"); if(ul0 ) printf("#2169:code_bool global 9\n"); } // code_cmp_lrlvar(int e1,int e2) INLINE void code_cmp_lrlvar() { long long l0,l1; unsigned long long ul0,ul1; l0 = 123123123LL; l1 = 123123123LL; ul0 = 123123123LL; ul1 = 123123123LL; if(l0 ) printf("#2181:code_bool local 8\n"); if(ul0 ) printf("#2182:code_bool local 9\n"); } // code_lassign(int e1,int e2) // code_lassign_gvar(int e1,int e2) // code_lassign_lvar(int e1,int e2) // code_lassign_lregister(int e2,int reg) INLINE void code_lassign() { long long i1,i2; unsigned long long ui1,ui2; long long *pi1,*pi2; unsigned long long *pui1,*pui2; i1 = -555; i2= 555; ui1 = 632423423; ui2= 32394234; pi1 = &i1; pi2 = &i2; pui1 = &ui1; pui2 = &ui2; *(pi2+i1+i2) = 3; *(pui2+i1+i2) = 3; printf("#2206:code_rindirect %lld %lld %llu %llu\n",*pi1,*pi2,*pui1,*pui2); } INLINE void code_lassign_register() { long long i1,i2; unsigned long long ui1,ui2; register long long *pi1,*pi2; register unsigned long long *pui1,*pui2; i1 = -555; i2= 555; ui1 = 632423423; ui2= 32394234; pi1 = &i1; pi2 = &i2; pui1 = &ui1; pui2 = &ui2; *(pi2+i1+i2) = 3; *(pui2+i1+i2) = 3; printf("#2226:code_rindirect %lld %lld %llu %llu\n",*pi1,*pi2,*pui1,*pui2); } // code_lconst(int e1,int e2) // code_lneg(int e1,int e2) INLINE void code_lneg() { long long i,j; i = 123123123;j = -32423; printf("#2236:code_neg %lld %lld\n",-i,-j); } // code_lrgvar(int e1,int e2) INLINE void code_lrgvar() { l0 = 123123123LL; l1 = 123123123LL; ul0 = 123123123LL; ul1 = 123123123LL; printf("#2247:code_lrgvar long long %lld %lld %llu %llu\n",l0,l1,ul0,ul1); s_l0 = 123123123LL; s_l1 = 123123123LL; s_ul0 = 123123123LL; s_ul1 = 123123123LL; printf("#2252:code_lrgvar long long %lld %lld %llu %llu\n",s_l0,s_l1,s_ul0,s_ul1); } // code_lrlvar(int e1,int e2) INLINE void code_lrlvar() { long long l0,l1; unsigned long long ul0,ul1; l0 = 123123123LL; l1 = 123123123LL; ul0 = 123123123LL; ul1 = 123123123LL; printf("#2265:code_lvar long long %lld %lld %llu %llu\n",l0,l1,ul0,ul1); printf("#2266:code_bool lvar > long long %d %d %d %d %d %d\n", l1>l0,ul1>ul0,l1>=l0,ul1>=ul0,ul1==ul0,l1!=l0); printf("#2268:code_bool lvar < long long %d %d %d %d %d %d\n", l1<l0,ul1<ul0,l1<=l0,ul1<=ul0,ul1==ul0,l1!=l0); } // ltosop(int e1,int e2) INLINE void ltosop() { long long i1,i2,i; unsigned long long u1,u2,u; int ii2; unsigned int uu2; i1 = -555; i2= 555; u1 = 632423423; u2= 32394234; ii2 = -33; uu2 = 33; u = 0; i = i1 + i2; printf("#2287:ltosop 1 %lld\n",i); i = i1 - i2; printf("#2289:ltosop 2 %lld\n",i); i = i1 / i2; printf("#2291:ltosop 3 %lld\n",i); i = i1 * i2; printf("#2293:ltosop 4 %lld\n",i); i = i1 | i2; printf("#2295:ltosop 5 %lld\n",i); i = i1 & i2; printf("#2297:ltosop 6 %lld\n",i); i = i1 ^ i2; printf("#2299:ltosop 7 %lld\n",i); i = i1 << i2; printf("#2301:ltosop 8 %lld\n",i); i = i1 >> i2; printf("#2303:ltosop 9 %lld\n",i); i = i1 % i2; printf("#2305:ltosop 10 %lld\n",i); u = u1 + u2; printf("#2308:ltosop u 1 %llu\n",u); u = u1 - u2; printf("#2310:ltosop u 2 %llu\n",u); u = u1 / u2; printf("#2312:ltosop u 3 %llu\n",u); u = u1 * u2; printf("#2314:ltosop u 4 %llu\n",u); u = u1 | u2; printf("#2316:ltosop u 5 %llu\n",u); u = u1 & u2; printf("#2318:ltosop u 6 %llu\n",u); u = u1 ^ u2; printf("#2320:ltosop u 7 %llu\n",u); u2 = 3; u = u1 << u2; printf("#2323:ltosop u 8 %llu\n",u); u = u1 >> u2; printf("#2325:ltosop u 9 %llu\n",u); u = u1 % u2; printf("#2327:ltosop u 10 %llu\n",u); i = i1 + ii2; printf("#2330:litosop 1 %lld\n",i); i = i1 - ii2; printf("#2332:litosop 2 %lld\n",i); i = i1 / ii2; printf("#2334:litosop 3 %lld\n",i); i = i1 * ii2; printf("#2336:litosop 4 %lld\n",i); i = i1 | ii2; printf("#2338:litosop 5 %lld\n",i); i = i1 & ii2; printf("#2340:litosop 6 %lld\n",i); i = i1 ^ ii2; printf("#2342:litosop 7 %lld\n",i); ii2 = 3; i = i1 << ii2; printf("#2345:litosop 8 %lld\n",i); i = i1 >> ii2; printf("#2347:litosop 9 %lld\n",i); i = i1 % ii2; printf("#2349:litosop 10 %lld\n",i); u = u1 + uu2; printf("#2352:litosop u 1 %llu\n",u); u = u1 - uu2; printf("#2354:litosop u 2 %llu\n",u); u = u1 / uu2; printf("#2356:litosop u 3 %llu\n",u); u = u1 * uu2; printf("#2358:litosop u 4 %llu\n",u); u = u1 | uu2; printf("#2360:litosop u 5 %llu\n",u); u = u1 & uu2; printf("#2362:litosop u 6 %llu\n",u); u = u1 ^ uu2; printf("#2364:litosop u 7 %llu\n",u); uu2 = 3; u = u1 << uu2; printf("#2367:litosop u 8 %llu\n",u); u = u1 >> uu2; printf("#2369:litosop u 9 %llu\n",u); u = u1 % uu2; printf("#2371:litosop u 10 %llu\n",u); } // loprtc(int op,int v) INLINE void loprtc() { long long i1,i; unsigned long long u1,u; i1 = -555; u1 = 632423423; i = i1 + 3; printf("#2384:loprtc 1 %lld\n",i); i = i1 - 3; printf("#2386:loprtc 2 %lld\n",i); i = i1 / 32323423423LL; printf("#2388:loprtc 3 %lld\n",i); i = i1 * 323423423423LL; printf("#2390:loprtc 4 %lld\n",i); i = i1 | 234234234; printf("#2392:loprtc 5 %lld\n",i); i = i1 & 23234234; printf("#2394:loprtc 6 %lld\n",i); i = i1 ^ 23234234; printf("#2396:loprtc 7 %lld\n",i); i = i1 << 5; printf("#2398:loprtc 8 %lld\n",i); i = i1 >> 5; printf("#2400:loprtc 9 %lld\n",i); i = i1 << 38; printf("#2402:loprtc 8 %lld\n",i); i = i1 >> 38; printf("#2404:loprtc 9 %lld\n",i); i = i1 % 5; printf("#2406:loprtc 10 %lld\n",i); i = i1 / 8; printf("#2408:loprtc 3 %lld\n",i); i = i1 / 256; printf("#2410:loprtc 3 %lld\n",i); i = i1 % 8; printf("#2412:loprtc 3 %lld\n",i); i = i1 % 256; printf("#2414:loprtc 3 %lld\n",i); i = i1 * 8; printf("#2416:loprtc 3 %lld\n",i); i = i1 * 256; printf("#2418:loprtc 3 %lld\n",i); u = u1 + 3; printf("#2421:loprtc 1 u %llu\n",u); u = u1 - 3; printf("#2423:loprtc 2 u %llu\n",u); u = u1 / 32342342344234LL; printf("#2425:loprtc 3 u %llu\n",u); u = u1 * 243234234232324LL; printf("#2427:loprtc 4 u %llu\n",u); u = u1 | 234234234; printf("#2429:loprtc 5 u %llu\n",u); u = u1 & 234234234; printf("#2431:loprtc 6 u %llu\n",u); u = u1 ^ 234234234; printf("#2433:loprtc 7 u %llu\n",u); u = u1 << 5; printf("#2435:loprtc 8 u %llu\n",u); u = u1 >> 5; printf("#2437:loprtc 9 u %llu\n",u); u = u1 << 38; printf("#2439:loprtc 8 u %llu\n",u); u = u1 >> 38; printf("#2441:loprtc 9 u %llu\n",u); u = u1 % 5; printf("#2443:loprtc 10 u %llu\n",u); u = u1 / 8; printf("#2445:loprtc 3 %lld\n",i); u = u1 / 256; printf("#2447:loprtc 3 %lld\n",i); u = u1 / 8; printf("#2449:loprtc 3 %lld\n",i); u = u1 / 256; printf("#2451:loprtc 3 %lld\n",i); u = u1 % 8; printf("#2453:loprtc 3 %lld\n",i); u = u1 % 256; printf("#2455:loprtc 3 %lld\n",i); u = u1 * 8; printf("#2457:loprtc 3 %lld\n",i); u = u1 * 256; printf("#2459:loprtc 3 %lld\n",i); } // ltosop(int e1,int e2) INLINE void ltosop_register() { register long long i1,i2,i; register unsigned long long u1,u2,u; register int ii2; register unsigned int uu2; i1 = -555; i2= 555; u1 = 632423423; u2= 32394234; ii2 = -33; uu2 = 33; u = 0; i = i1 + i2; printf("#2478:ltosop r 1 %lld\n",i); i = i1 - i2; printf("#2480:ltosop r 2 %lld\n",i); i = i1 / i2; printf("#2482:ltosop r 3 %lld\n",i); i = i1 * i2; printf("#2484:ltosop r 4 %lld\n",i); i = i1 | i2; printf("#2486:ltosop r 5 %lld\n",i); i = i1 & i2; printf("#2488:ltosop r 6 %lld\n",i); i = i1 ^ i2; printf("#2490:ltosop r 7 %lld\n",i); i2 = 3; i = i1 << i2; printf("#2493:ltosop r 8 %lld\n",i); i = i1 >> i2; printf("#2495:ltosop r 9 %lld\n",i); i = i1 % i2; printf("#2497:ltosop r 10 %lld\n",i); u = u1 + u2; printf("#2500:ltosop r u 1 %llu\n",u); u = u1 - u2; printf("#2502:ltosop r u 2 %llu\n",u); u = u1 / u2; printf("#2504:ltosop r u 3 %llu\n",u); u = u1 * u2; printf("#2506:ltosop r u 4 %llu\n",u); u = u1 | u2; printf("#2508:ltosop r u 5 %llu\n",u); u = u1 & u2; printf("#2510:ltosop r u 6 %llu\n",u); u = u1 ^ u2; printf("#2512:ltosop r u 7 %llu\n",u); u2 = 3; u = u1 << u2; printf("#2515:ltosop r u 8 %llu\n",u); u = u1 >> u2; printf("#2517:ltosop r u 9 %llu\n",u); u = u1 % u2; printf("#2519:ltosop r u 10 %llu\n",u); i = i1 + ii2; printf("#2522:litosop r 1 %lld\n",i); i = i1 - ii2; printf("#2524:litosop r 2 %lld\n",i); i = i1 / ii2; printf("#2526:litosop r 3 %lld\n",i); i = i1 * ii2; printf("#2528:litosop r 4 %lld\n",i); i = i1 | ii2; printf("#2530:litosop r 5 %lld\n",i); i = i1 & ii2; printf("#2532:litosop r 6 %lld\n",i); i = i1 ^ ii2; printf("#2534:litosop r 7 %lld\n",i); ii2 = 3; i = i1 << ii2; printf("#2537:litosop r 8 %lld\n",i); i = i1 >> ii2; printf("#2539:litosop r 9 %lld\n",i); i = i1 % ii2; printf("#2541:litosop r 10 %lld\n",i); u = u1 + uu2; printf("#2544:litosop r u 1 %llu\n",u); u = u1 - uu2; printf("#2546:litosop r u 2 %llu\n",u); u = u1 / uu2; printf("#2548:litosop r u 3 %llu\n",u); u = u1 * uu2; printf("#2550:litosop r u 4 %llu\n",u); u = u1 | uu2; printf("#2552:litosop r u 5 %llu\n",u); u = u1 & uu2; printf("#2554:litosop r u 6 %llu\n",u); u = u1 ^ uu2; printf("#2556:litosop r u 7 %llu\n",u); uu2 = 3; u = u1 << uu2; printf("#2559:litosop r u 8 %llu\n",u); u = u1 >> uu2; printf("#2561:litosop r u 9 %llu\n",u); u = u1 % uu2; printf("#2563:litosop r u 10 %llu\n",u); } // loprtc(int op,int v) INLINE void loprtc_register() { register long long i1,i; register unsigned long long u1,u; i1 = -555; u1 = 632423423; i = i1 + 3; printf("#2576:loprtc r 1 %lld\n",i); i = i1 - 3; printf("#2578:loprtc r 2 %lld\n",i); i = i1 / 32323423423LL; printf("#2580:loprtc r 3 %lld\n",i); i = i1 * 323423423423LL; printf("#2582:loprtc r 4 %lld\n",i); i = i1 | 234234234; printf("#2584:loprtc r 5 %lld\n",i); i = i1 & 23234234; printf("#2586:loprtc r 6 %lld\n",i); i = i1 ^ 23234234; printf("#2588:loprtc r 7 %lld\n",i); i = i1 << 5; printf("#2590:loprtc r 8 %lld\n",i); i = i1 >> 5; printf("#2592:loprtc r 9 %lld\n",i); i = i1 << 38; printf("#2594:loprtc r 8 %lld\n",i); i = i1 >> 38; printf("#2596:loprtc r 9 %lld\n",i); i = i1 % 5; printf("#2598:loprtc r 10 %lld\n",i); i = i1 / 8; printf("#2600:loprtc r 10 %lld\n",i); i = i1 / 256; printf("#2602:loprtc r 10 %lld\n",i); i = i1 * 8; printf("#2604:loprtc r 10 %lld\n",i); i = i1 * 256; printf("#2606:loprtc r 10 %lld\n",i); u = u1 + 3; printf("#2609:loprtc r 1 u %llu\n",u); u = u1 - 3; printf("#2611:loprtc r 2 u %llu\n",u); u = u1 / 32342342344234LL; printf("#2613:loprtc r 3 u %llu\n",u); u = u1 * 243234234232324LL; printf("#2615:loprtc r 4 u %llu\n",u); u = u1 | 234234234; printf("#2617:loprtc r 5 u %llu\n",u); u = u1 & 234234234; printf("#2619:loprtc r 6 u %llu\n",u); u = u1 ^ 234234234; printf("#2621:loprtc r 7 u %llu\n",u); u = u1 << 5; printf("#2623:loprtc r 8 u %llu\n",u); u = u1 >> 5; printf("#2625:loprtc r 9 u %llu\n",u); u = u1 << 38; printf("#2627:loprtc r 8 u %llu\n",u); u = u1 >> 38; printf("#2629:loprtc r 9 u %llu\n",u); u = u1 % 5; printf("#2631:loprtc r 10 u %llu\n",u); u = u1 / 8; printf("#2633:loprtc r 10 u %lld\n",u); u = u1 / 256; printf("#2635:loprtc r 10 u %lld\n",u); u = u1 * 8; printf("#2637:loprtc r 10 u %lld\n",u); u = u1 * 256; printf("#2639:loprtc r 10 u %lld\n",u); } // code_i2ll(int creg) INLINE void code_i2ll() { long long d; int i; i = 23442342; d = i; printf("#2651:code_i2ll %lld\n",d); } // code_i2ull(int creg) INLINE void code_i2ull() { unsigned long long d; int i; i = 23442342; d = i; printf("#2661:code_i2ull %lld\n",d); } // code_u2ll(int creg) INLINE void code_u2ll() { long long d; unsigned int i; i = 23442342; d = i; printf("#2671:code_u2ll %lld\n",d); } // code_u2ull(int creg) INLINE void code_u2ull() { unsigned long long d; unsigned int i; i = 23342342; d = i; printf("#2681:code_u2ull %llu\n",d); } // code_ll2i(int creg) INLINE void code_ll2i() { long long d; int i; d = 2342342342LL; i = d; printf("#2691:code_ll2i %d\n",i); } // code_ll2u(int creg) INLINE void code_ll2u() { long long d; unsigned int i; d = 2342342342LL; i = d; printf("#2701:code_ll2i %ud\n",i); } // code_ull2i(int creg) INLINE void code_ull2i() { unsigned long long d; int i; d = 2342342342LL; i = d; printf("#2711:code_ull2i %d\n",i); } // code_ull2u(int creg) INLINE void code_ull2u() { unsigned long long d; unsigned int i; d = 2342342342LL; i = d; printf("#2721:code_ll2i %ud\n",i); } #if FLOAT_CODE // code_d2ll(int creg) INLINE void code_d2ll() { long long d; double i; i = 2342342342LL; d = i; printf("#2732:code_d2ll %lld\n",d); } // code_d2ull(int creg) INLINE void code_d2ull() { unsigned long long d; double i; i = 2342342342LL; d = i; printf("#2742:code_d2ll %llu\n",d); } // code_f2ll(int creg) INLINE void code_f2ll() { long long d; float i; i = 2342342342LL; d = i; printf("#2752:code_f2ll %lld\n",d); } // code_f2ull(int creg) INLINE void code_f2ull() { unsigned long long d; float i; i = 2342342342LL; d = i; printf("#2762:code_f2ull %llu\n",d); } // code_ll2d(int creg) INLINE void code_ll2d() { long long d; double i; d = 2342342342LL; i = d; printf("#2772:code_ll2d %g\n",i); } // code_ll2f(int creg) INLINE void code_ll2f() { long long d; float i; d = 2342342342LL; i = d; printf("#2782:code_ll2f %g\n",i); } // code_ull2d(int creg) INLINE void code_ull2d() { long long d; double i; d = 2342342342LL; i = d; printf("#2792:code_ull2f %g\n",i); } // code_ull2f(int creg) INLINE void code_ull2f() { long long d; float i; d = 2342342342LL; i = d; printf("#2802:code_ull2f %g\n",i); } #endif // code_lpreinc(int e1,int e2,int reg) INLINE void code_lpreinc() { long long i,j; i = 123123123;j = 0; printf("#2812:code_preinc l %lld %lld",++i,--j); printf("#2813: %lld %lld\n",i,j); } // code_lpostinc(int e1,int e2,int reg) INLINE void code_lpostinc() { long long i,j; i = 123123123;j = 0; printf("#2822:code_postinc l %lld %lld",i++,j--); printf("#2823: %lld %lld\n",i,j); } // code_lpreinc(int e1,int e2,int reg) INLINE void code_lupreinc() { register unsigned long long i,j; i = 123123123;j = 0; printf("#2832:code_preinc l %llu %llu",++i,--j); printf("#2833: %lld %lld\n",i,j); } // code_lpostinc(int e1,int e2,int reg) INLINE void code_lupostinc() { register unsigned long long i,j; i = 123123123;j = 0; printf("#2842:code_postinc lu %llu %llu",i++,j--); printf("#2843: %lld %lld\n",i,j); } // code_lpreinc(int e1,int e2,int reg) INLINE void code_register_lpreinc() { register long long i,j; i = 123123123;j = 0; printf("#2852:code_preinc l r %lld %lld",++i,--j); printf("#2853: %lld %lld\n",i,j); } // code_lpostinc(int e1,int e2,int reg) INLINE void code_register_lpostinc() { register long long i,j; i = 123123123;j = 0; printf("#2862:code_postinc l r %lld %lld",i++,j--); printf("#2863: %lld %lld\n",i,j); } // code_lpreinc(int e1,int e2,int reg) INLINE void code_register_lupreinc() { register unsigned long long i,j; i = 123123123;j = 0; printf("#2872:code_preinc l r %llu %llu",++i,--j); printf("#2873: %lld %lld\n",i,j); } // code_lpostinc(int e1,int e2,int reg) INLINE void code_register_lupostinc() { register unsigned long long i,j; i = 123123123;j = 0; printf("#2882:code_postinc lu r %llu %llu",i++,j--); printf("#2883: %lld %lld\n",i,j); } // code_lassop(int op) // code_register_assop(int e2,int op,int byte) INLINE void code_register_lassop() { register long long i1; register unsigned long long ui1; long long a = 3; i1 = -555; ui1 = 632423423; i1 += a; printf("#2899:code_register_lassop 1 %lld\n",i1); i1 -= a; printf("#2901:code_register_lassop 2 %lld\n",i1); i1 /= a; printf("#2903:code_register_lassop 3 %lld\n",i1); i1 *= a; printf("#2905:code_register_lassop 4 %lld\n",i1); i1 |= a; printf("#2907:code_register_lassop 5 %lld\n",i1); i1 &= a; printf("#2909:code_register_lassop 6 %lld\n",i1); i1 ^= a; printf("#2911:code_register_lassop 7 %lld\n",i1); i1 <<= a; printf("#2913:code_register_lassop 8 %lld\n",i1); i1 >>= a; printf("#2915:code_register_lassop 9 %lld\n",i1); ui1 += a; printf("#2918:code_register_lassop 1 %llu\n",ui1); ui1 -= a; printf("#2920:code_register_lassop 2 %llu\n",ui1); ui1 /= a; printf("#2922:code_register_lassop 3 %llu\n",ui1); ui1 *= a; printf("#2924:code_register_lassop 4 %llu\n",ui1); ui1 |= a; printf("#2926:code_register_lassop 5 %llu\n",ui1); ui1 &= a; printf("#2928:code_register_lassop 6 %llu\n",ui1); ui1 ^= a; printf("#2930:code_register_lassop 7 %llu\n",ui1); ui1 <<= a; printf("#2932:code_register_lassop 8 %llu\n",ui1); ui1 >>= a; printf("#2934:code_register_lassop 9 %llu\n",ui1); } // code_lassop(int op,int byte,int sign) INLINE void code_lassop() { long long i1,i2; unsigned long long ui1,ui2; long long a = 3; i1 = -555; i2= 555; ui1 = 632423423; ui2= 32394234; i1 += a; printf("#2948:code_lassop 1 %lld\n",i1); i1 -= a; printf("#2950:code_lassop 2 %lld\n",i1); i1 /= a; printf("#2952:code_lassop 3 %lld\n",i1); i1 *= a; printf("#2954:code_lassop 4 %lld\n",i1); i1 |= a; printf("#2956:code_lassop 5 %lld\n",i1); i1 &= a; printf("#2958:code_lassop 6 %lld\n",i1); i1 ^= a; printf("#2960:code_lassop 7 %lld\n",i1); i1 <<= a; printf("#2962:code_lassop 8 %lld\n",i1); i1 >>= a; printf("#2964:code_lassop 9 %lld\n",i1); ui1 += a; printf("#2967:code_lassop 1 %llu\n",ui1); ui1 -= a; printf("#2969:code_lassop 2 %llu\n",ui1); ui1 /= a; printf("#2971:code_lassop 3 %llu\n",ui1); ui1 *= a; printf("#2973:code_lassop 4 %llu\n",ui1); ui1 |= a; printf("#2975:code_lassop 5 %llu\n",ui1); ui1 &= a; printf("#2977:code_lassop 6 %llu\n",ui1); ui1 ^= a; printf("#2979:code_lassop 7 %llu\n",ui1); ui1 <<= a; printf("#2981:code_lassop 8 %llu\n",ui1); ui1 >>= a; printf("#2983:code_lassop 9 %llu\n",ui1); } // code_register_assop(int e2,int op,int byte) INLINE void code_register_lassop_const() { register long long i1; register unsigned long long ui1; i1 = -555; ui1 = 632423423; i1 += 3; printf("#2996:code_register_lassop c 1 %lld\n",i1); i1 -= 3; printf("#2998:code_register_lassop c 2 %lld\n",i1); i1 /= 3; printf("#3000:code_register_lassop c 3 %lld\n",i1); i1 *= 3; printf("#3002:code_register_lassop c 4 %lld\n",i1); i1 |= 234; printf("#3004:code_register_lassop c 5 %lld\n",i1); i1 &= 2324234234234234LL; printf("#3006:code_register_lassop c 6 %lld\n",i1); i1 ^= 5523234234234234LL; printf("#3008:code_register_lassop c 7 %lld\n",i1); i1 <<= 3; printf("#3010:code_register_lassop c 8 %lld\n",i1); i1 >>= 3; printf("#3012:code_register_lassop c 9 %lld\n",i1); ui1 += 3; printf("#3015:code_register_lassop c 1 %llu\n",ui1); ui1 -= 3; printf("#3017:code_register_lassop c 2 %llu\n",ui1); ui1 /= 3; printf("#3019:code_register_lassop c 3 %llu\n",ui1); ui1 *= 3; printf("#3021:code_register_lassop c 4 %llu\n",ui1); ui1 |= 234; printf("#3023:code_register_lassop c 5 %llu\n",ui1); ui1 &= 2324234234234234LL; printf("#3025:code_register_lassop c 6 %llu\n",ui1); ui1 ^= 5523234234234234LL; printf("#3027:code_register_lassop c 7 %llu\n",ui1); ui1 <<= 3; printf("#3029:code_register_lassop c 8 %llu\n",ui1); ui1 >>= 3; printf("#3031:code_register_lassop c 9 %llu\n",ui1); } // code_lassop(int op,int byte,int sign) INLINE void code_lassop_const() { long long i1,i2; unsigned long long ui1,ui2; i1 = -555; i2= 555; ui1 = 632423423; ui2= 32394234; i1 += 3; printf("#3044:code_lassop c 1 %lld\n",i1); i1 -= 3; printf("#3046:code_lassop c 2 %lld\n",i1); i1 /= 3; printf("#3048:code_lassop c 3 %lld\n",i1); i1 *= 3; printf("#3050:code_lassop c 4 %lld\n",i1); i1 |= 234; printf("#3052:code_lassop c 5 %lld\n",i1); i1 &= 2324234234234234LL; printf("#3054:code_lassop c 6 %lld\n",i1); i1 ^= 5523234234234234LL; printf("#3056:code_lassop c 7 %lld\n",i1); i1 <<= 3; printf("#3058:code_lassop c 8 %lld\n",i1); i1 >>= 3; printf("#3060:code_lassop c 9 %lld\n",i1); ui1 += 3; printf("#3063:code_lassop c 1 %llu\n",ui1); ui1 -= 3; printf("#3065:code_lassop c 2 %llu\n",ui1); ui1 /= 3; printf("#3067:code_lassop c 3 %llu\n",ui1); ui1 *= 3; printf("#3069:code_lassop c 4 %llu\n",ui1); ui1 |= 234; printf("#3071:code_lassop c 5 %llu\n",ui1); ui1 &= 2324234234234234LL; printf("#3073:code_lassop c 6 %llu\n",ui1); ui1 ^= 5523234234234234LL; printf("#3075:code_lassop c 7 %llu\n",ui1); ui1 <<= 3; printf("#3077:code_lassop c 8 %llu\n",ui1); ui1 >>= 3; printf("#3079:code_lassop c 9 %llu\n",ui1); } // lassop_l(int op,int byte,int sign) INLINE void code_lassop_l() { struct hoge { long long i1,i2; unsigned long long ui1,ui2; } s, *p; long long a = 3; p = &s; p->i1 = -555; p->i2= 555; p->ui1 = 632423423; p->ui2= 32394234; p->i1 += a; printf("#3096:lassop 1 %lld\n",p->i1); p->i1 -= a; printf("#3098:lassop 2 %lld\n",p->i1); p->i1 /= a; printf("#3100:lassop 3 %lld\n",p->i1); p->i1 *= a; printf("#3102:lassop 4 %lld\n",p->i1); p->i1 |= a; printf("#3104:lassop 5 %lld\n",p->i1); p->i1 &= a; printf("#3106:lassop 6 %lld\n",p->i1); p->i1 ^= a; printf("#3108:lassop 7 %lld\n",p->i1); p->i1 <<= a; printf("#3110:lassop 8 %lld\n",p->i1); p->i1 >>= a; printf("#3112:lassop 9 %lld\n",p->i1); p->ui1 += a; printf("#3115:lassop 1 %llu\n",p->ui1); p->ui1 -= a; printf("#3117:lassop 2 %llu\n",p->ui1); p->ui1 /= a; printf("#3119:lassop 3 %llu\n",p->ui1); p->ui1 *= a; printf("#3121:lassop 4 %llu\n",p->ui1); p->ui1 |= a; printf("#3123:lassop 5 %llu\n",p->ui1); p->ui1 &= a; printf("#3125:lassop 6 %llu\n",p->ui1); p->ui1 ^= a; printf("#3127:lassop 7 %llu\n",p->ui1); p->ui1 <<= a; printf("#3129:lassop 8 %llu\n",p->ui1); p->ui1 >>= a; printf("#3131:lassop 9 %llu\n",p->ui1); } // lassop_g(int op,int byte,int sign) struct lghoge { long long i1,i2; unsigned long long ui1,ui2; } gls, *glp; INLINE void code_lassop_g() { long long a = 3; glp = &gls; glp->i1 = -555; glp->i2= 555; glp->ui1 = 632423423; glp->ui2= 32394234; glp->i1 += a; printf("#3150:lassop 1 %lld\n",glp->i1); glp->i1 -= a; printf("#3152:lassop 2 %lld\n",glp->i1); glp->i1 /= a; printf("#3154:lassop 3 %lld\n",glp->i1); glp->i1 *= a; printf("#3156:lassop 4 %lld\n",glp->i1); glp->i1 |= a; printf("#3158:lassop 5 %lld\n",glp->i1); glp->i1 ^= a; printf("#3160:lassop 7 %lld\n",glp->i1); glp->i1 <<= a; printf("#3162:lassop 8 %lld\n",glp->i1); glp->i1 >>= a; printf("#3164:lassop 9 %lld\n",glp->i1); glp->i1 &= a; printf("#3166:lassop 6 %lld\n",glp->i1); glp->ui1 += a; printf("#3169:lassop 1 %llu\n",glp->ui1); glp->ui1 -= a; printf("#3171:lassop 2 %llu\n",glp->ui1); glp->ui1 /= a; printf("#3173:lassop 3 %llu\n",glp->ui1); glp->ui1 *= a; printf("#3175:lassop 4 %llu\n",glp->ui1); glp->ui1 |= a; printf("#3177:lassop 5 %llu\n",glp->ui1); glp->ui1 ^= a; printf("#3179:lassop 7 %llu\n",glp->ui1); glp->ui1 <<= a; printf("#3181:lassop 8 %llu\n",glp->ui1); glp->ui1 >>= a; printf("#3183:lassop 9 %llu\n",glp->ui1); glp->ui1 &= a; printf("#3185:lassop 6 %llu\n",glp->ui1); } INLINE void code_lassop_g_c() { const int a = 3; glp = &gls; glp->i1 = -555; glp->i2= 555; glp->ui1 = 632423423; glp->ui2= 32394234; glp->i1 += a; printf("#3198:lassop_gc 1 %lld\n",glp->i1); glp->i1 -= a; printf("#3200:lassop_gc 2 %lld\n",glp->i1); glp->i1 /= a; printf("#3202:lassop_gc 3 %lld\n",glp->i1); glp->i1 *= a; printf("#3204:lassop_gc 4 %lld\n",glp->i1); glp->i1 |= a; printf("#3206:lassop_gc 5 %lld\n",glp->i1); glp->i1 ^= a; printf("#3208:lassop_gc 7 %lld\n",glp->i1); glp->i1 <<= a; printf("#3210:lassop_gc 8 %lld\n",glp->i1); glp->i1 >>= a; printf("#3212:lassop_gc 9 %lld\n",glp->i1); glp->i1 &= a; printf("#3214:lassop_gc 6 %lld\n",glp->i1); glp->ui1 += a; printf("#3217:lassop_gc 1 %llu\n",glp->ui1); glp->ui1 -= a; printf("#3219:lassop_gc 2 %llu\n",glp->ui1); glp->ui1 /= a; printf("#3221:lassop_gc 3 %llu\n",glp->ui1); glp->ui1 *= a; printf("#3223:lassop_gc 4 %llu\n",glp->ui1); glp->ui1 |= a; printf("#3225:lassop_gc 5 %llu\n",glp->ui1); glp->ui1 ^= a; printf("#3227:lassop_gc 7 %llu\n",glp->ui1); glp->ui1 <<= a; printf("#3229:lassop_gc 8 %llu\n",glp->ui1); glp->ui1 >>= a; printf("#3231:lassop_gc 9 %llu\n",glp->ui1); glp->ui1 &= a; printf("#3233:lassop_gc 6 %llu\n",glp->ui1); } // code_lgt(int cond) INLINE void code_lgt() { long long reg; if (l0>l1) printf("#3244:code_lgt 1\n"); else printf("#3246:code_lgt 0\n"); for (reg=-3;reg<7;reg++) { if (0<reg && reg<3) printf("#3249:reg=%lld code_lgt 0<reg && reg <3\n",reg); } for (reg=-3;reg<7;reg++) { if (-2<reg && reg<0) printf("#3253:reg=%lld code_lgt -2<reg && reg <0\n",reg); } } // code_lugt(int cond) INLINE void code_lugt() { unsigned long long reg; if (ul0>ul1) printf("#3263:code_lugt 1\n"); else printf("#3265:code_lugt 0\n"); for (reg=0;reg<7;reg++) { if (2<reg && reg<4) printf("#3268:reg=%llu code_lugt 2<reg && reg <4\n",reg); } for (reg=0;reg<7;reg++) { if (2<reg && reg<4) printf("#3272:reg=%llu code_lugt 2<reg && reg <4\n",reg); } } // code_lge(int cond) INLINE void code_lge() { long long reg; if (l0>=l1) printf("#3282:code_lge 1\n"); else printf("#3284:code_lge 0\n"); for (reg=-3;reg<7;reg++) { if (0<=reg && reg<=3) printf("#3287:reg=%lld code_lge 0<=reg && reg <=3\n",reg); } for (reg=-3;reg<7;reg++) { if (-2<=reg && reg<=0) printf("#3291:reg=%lld code_lge -2<=reg && reg <=0\n",reg); } } // code_luge(int cond) INLINE void code_luge() { unsigned long long reg; if (ul0>=ul1) printf("#3301:code_luge 1\n"); else printf("#3303:code_luge 0\n"); for (reg=0;reg<7;reg++) { if (2<reg && reg<4) printf("#3306:reg=%llu code_luge 2<reg && reg <4\n",reg); } for (reg=0;reg<7;reg++) { if (2<reg && reg<4) printf("#3310:reg=%llu code_luge 2<reg && reg <4\n",reg); } } // code_leq(int cond) INLINE void code_leq() { if (ul0==ul1) printf("#3319:code_leq 1\n"); else printf("#3321:code_leq 0\n"); if (l0!=l1) printf("#3323:code_lneq 1\n"); else printf("#3325:code_lneq 0\n"); } #if 0 INLINE void code_lswitch() { long long i; for(i=0;i<6;i++) { switch(i) { case 1: printf("#3335:code_lswitch 1 %d\n",i); break; case 2: printf("#3336:code_lswitch 2 %d\n",i); break; case 3: printf("#3337:code_lswitch 3 %d\n",i); case 4: printf("#3338:code_lswitch 4 %d\n",i); break; default: printf("#3339:code_lswitch d %d\n",i); } } } #endif #endif INLINE void code_switch() { int i; for(i=0;i<10;i++) { switch(i) { case 1: printf("#3354:code_switch 1 %d\n",i); break; case 2: printf("#3355:code_switch 2 %d\n",i); break; case 3: printf("#3356:code_switch 3 %d\n",i); case 4: printf("#3357:code_switch 4 %d\n",i); break; case 7: case 5: printf("#3359:code_switch 5 %d\n",i); break; case 6: printf("#3360:code_switch 6 %d\n",i); break; default: printf("#3361:code_switch d %d\n",i); } } for(i=0;i<10;i++) { switch(i) { case 1: printf("#3366:code_switch 1 %d\n",i); break; case 2: i = i* 100; switch(i) { case 100: printf("#3370:code_switch n 1 %d\n",i); break; case 200: for(i=-100;i<10;i++) { switch(i) { case 1234: printf("#3374:code_switch 1 nn %d\n",i); break; case 2233: printf("#3375:code_switch 2 nn %d\n",i); break; case 3333: printf("#3376:code_switch 3 nn %d\n",i); case -200: return; case -4: printf("#3378:code_switch 4 nn %d\n",i); break; case 733: case -5: printf("#3380:code_switch 5 nn %d\n",i); break; case -326: printf("#3381:code_switch 6 nn %d\n",i); } } case 300: printf("#3384:code_switch n 3 %d\n",i); case 400: printf("#3385:code_switch n 4 %d\n",i); break; case 700: case 500: printf("#3387:code_switch n 5 %d\n",i); break; case 600: printf("#3388:code_switch n 6 %d\n",i); break; default: printf("#3389:code_switch n d %d\n",i); } case 3: printf("#3391:code_switch 3 %d\n",i); case 4: printf("#3392:code_switch 4 %d\n",i); break; case 7: case 5: printf("#3394:code_switch 5 %d\n",i); break; case 6: printf("#3395:code_switch 6 %d\n",i); break; default: printf("#3396:code_switch d %d\n",i); } } } INLINE void code_cond_iii() { int i; int j=-4; int k=5; for(i=0;i<2;i++) { k = i==0? -4:4; printf("#3410: cond_iii %d\n",k); printf("#3411: cond_iii %d\n",i==0? -8:8); k = i==0? i:j; printf("#3413: cond_iii %d\n",k); printf("#3414: cond_iii %d\n",i==0? i:j); } } INLINE void code_cond_ii0() { unsigned int i; int j=-4; int k=5; for(i=0;i<2;i++) { k = i==0? -4:4; printf("#3427: cond_ii0 %d\n",k); printf("#3428: cond_ii0 %d\n",i==0? -8:8); k = i==0? i:j; printf("#3430: cond_ii0 %d\n",k); printf("#3431: cond_ii0 %d\n",i==0? i:j); } } INLINE void code_cond_uuu() { unsigned int i; unsigned int j=4; unsigned int k=5; for(i=0;i<2;i++) { k = i==0? -4:4; printf("#3444: cond_uuu %u\n",k); printf("#3445: cond_uuu %u\n",i==0? -8:8); k = i==0? i:j; printf("#3447: cond_uuu %u\n",k); printf("#3448: cond_uuu %u\n",i==0? i:j); } } INLINE void code_cond_uii() { unsigned int i; int j=-4; unsigned int k=5; for(i=0;i<2;i++) { k = i==0? -4:4; printf("#3461: cond_uii %d\n",k); printf("#3462: cond_uii %u\n",i==0? -8:8); k = i==0? i:j; printf("#3464: cond_uii %d\n",k); printf("#3465: cond_uii %u\n",i==0? i:j); } } #if FLOAT_CODE INLINE void code_cond_fff() { float i; float j=-4; float k=5; for(i=0;i<2;i++) { k = i==0? -4:4; printf("#3479: cond_fff %g\n",k); printf("#3480: cond_fff %g\n",i==0? -4.0:4.0); printf("#3481: cond_fff %g\n",(float)(i==0? -4:4)); k = i==0? i:j; printf("#3483: cond_fff %g\n",k); printf("#3484: cond_fff %g\n",i==0? i:j); } } INLINE void code_cond_ddd() { double i; double j=-4; double k=5; for(i=0;i<2;i++) { k = i==0? -4:4; printf("#3497: cond_ddd %g\n",k); printf("#3498: cond_ddd %g\n",i==0? -4.0:4.0); printf("#3499: cond_ddd %g\n",(double)(i==0? -4:4)); k = i==0? i:j; printf("#3501: cond_ddd %g\n",k); printf("#3502: cond_ddd %g\n",i==0? i:j); } } INLINE void code_cond_float() { int i=9; float f=(i>10) ? 4 : -4; printf("#3511:%f\n",f); i=10; f=(i>10) ? 4 : -4; printf("#3514:%f\n",f); i=11; f=(i>10) ? 4 : -4; printf("#3517:%f\n",f); } #endif #if LONGLONG_CODE INLINE void code_cond_lll() { long long i; long long j=-4; long long k=5; for(i=0;i<2;i++) { k = i==0? -4:4; printf("#3532: cond_lll %lld\n",k); printf("#3533: cond_lll %lld\n",i==0? -4LL:4LL); printf("#3534: cond_lll %lld\n",(long long)(i==0? -4:4)); k = i==0? i:j; printf("#3536: cond_lll %lld\n",k); printf("#3537: cond_lll %llu\n",i==0? i:j); } } INLINE void code_cond_ulll() { unsigned long long i; unsigned long long j=4; unsigned long long k=5; for(i=0;i<2;i++) { k = i==0? -4:4; printf("#3550: cond_ulll %llu\n",k); printf("#3551: cond_ulll %llu\n",i==0? -4LL:4LL); printf("#3552: cond_ulll %llu\n",(unsigned long long)(i==0? -4:4)); k = i==0? i:j; printf("#3554: cond_ulll %llu\n",k); printf("#3555: cond_ulll %llu\n",i==0? i:j); } } INLINE void code_cond_luu() { long long i; unsigned long long j=4; long long k=-5; for(i=0;i<2;i++) { k = i==0? -4:4; printf("#3568: cond_luu %lld\n",k); printf("#3569: cond_luu %lld\n",i==0? -4LL:4LL); printf("#3570: cond_luu %lld\n",(unsigned long long)(i==0? -4:4)); k = i==0? i:j; printf("#3572: cond_luu %lld\n",k); printf("#3573: cond_luu %lld\n",i==0? i:j); } } #endif