view test/code-gen.c @ 585:a5b902b20300 ia32-no-rname

ia32 reconfigure end (correct?)
author kono
date Wed, 18 Jan 2006 12:26:48 +0900
parents df60b120675d
children d3067773659c
line wrap: on
line source

/* Micro-C Code Generator Checker */
/* $Id$ */

#define FLOAT_CODE 1
#define LONGLONG_CODE 1

#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 long l;
    } u;
    u.s = 0x0123;
    printf("#0025:endian s : %02x %02x\n",u.a[0],u.a[1]);
    u.i = 0x01234567;
    printf("#0027:endian i : %02x %02x %02x %02x\n",u.a[0],u.a[1],u.a[2],u.a[3]);
    u.l = 0x0123456789abcdefULL;
    printf("#0029:endian l : %02x %02x %02x %02x\n",u.a[0],u.a[1],u.a[2],u.a[3]);
    printf("#0030:endian l : %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; 

    i1 = 1; i2 = -2; 
    s1 = -1; s2 = -3; us1 = 65535; us2 = 65535;
    printf("#0044:code_lvar %d %d %d %d %u %u\n",i1,i2,s1,s2,us1,us2);
    c1 = -1; c2 = -3; uc1 = 200; uc2 = 202;
    printf("#0046: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("#0061: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("#0064: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("#0075:code_label done\n");
}

// code_label(int labelno)
INLINE void
code_label1()
{
    goto hoge;
hage:
    goto hage;
hoge:
    printf("#0086: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("#0122: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("#0124: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("#0128: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("#0130: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("#0149: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("#0151:code_gvar r %d %d %u %u\n",c1,c2,uc1,uc2);
}

// code_fname(NMTBL *n,int creg) 

INLINE void
code_fname()
{
    int i,j;
    i = (int)code_fname;
    j = (int)code_register;
    printf("#0162:code_fname %d\n",i==j);
}


// code_neg(int creg) 
INLINE void
code_neg()
{
    int i,j;
    i = 123123123;j = -32423;
    printf("#0172:code_neg %d %d\n",-i,-j);
}

// code_not(int creg) 
INLINE void
code_not()
{
    int i,j;
    i = 123123123;j = 0;
    printf("#0181:code_neg %d %d\n",~i,~j);
}

// code_lnot(int creg) 
INLINE void
code_lnot()
{
    int i,j;
    i = 123123123;j = 0;
    printf("#0190: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("#0199:code_preinc i %d %d",++i,--j);
    printf("#0200: %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("#0209:code_upreinc u %d %d",i++,j--);
    printf("#0210: %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("#0219:code_postinc i %d %d",i++,j--);
    printf("#0220: %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("#0229:code_upreinc u %d %d",++i,--j);
    printf("#0230: %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("#0239:code_preinc i r %d %d",++i,--j);
    printf("#0240: %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("#0249:code_upreinc u r %d %d",i++,j--);
    printf("#0250: %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("#0259:code_postinc i r %d %d",i++,j--);
    printf("#0260: %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("#0269:code_upreinc u r %d %d",++i,--j);
    printf("#0270: %d %d\n",i,j);
}

// code_return(int creg) 


INLINE int
 code_return_int0()
{
    return 1;
}
INLINE void
code_return_int()
{
    printf("#0284: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("#0296:code_return_float %g\n",code_return_float0());
}

INLINE double
 code_return_double0()
{
    return 1.0;
}
INLINE void
code_return_double()
{
    printf("#0307:code_return_double %g\n",code_return_double0());
}

#endif

#if LONGLONG_CODE
INLINE long long
 code_return_longlong0()
{
    return 10LL;
}
INLINE void
code_return_longlong()
{
    printf("#0321: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("#0340:code_return_struct %d\n", i);
}

INLINE void
code_return_struct()
{
    printf("#0346: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("#0356:code_gt 1\n");
    else
	printf("#0358:code_gt 0\n");
    for (reg=-3;reg<7;reg++) {
        if (0<reg && reg<3)
	   printf("#0361:reg=%d code_gt  0<reg && reg <3\n",reg);
    }
    for (reg=-3;reg<7;reg++) {
        if (-2<reg && reg<0)
	   printf("#0365:reg=%d code_gt -2<reg && reg <0\n",reg);
    }
    for (reg=mthree;reg<seven;reg++) {
        if (zero<reg && reg<three)
	   printf("#0369:reg=%d code_gt  0<reg && reg <3\n",reg);
    }
    for (reg=mthree;reg<seven;reg++) {
        if (mtwo<reg && reg<zero)
	   printf("#0373: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("#0384:code_ugt 1\n");
    else
	printf("#0386:code_ugt 0\n");
    for (reg=0;reg<7;reg++) {
        if (0<reg && reg<3)
	   printf("#0389:reg=%d code_ugt  0<reg && reg <3\n",reg);
    }
    for (reg=0;reg<7;reg++) {
        if (1<reg && reg<5)
	   printf("#0393:reg=%d code_ugt  1<reg && reg <5\n",reg);
    }
    for (reg=zero;reg<seven;reg++) {
        if (zero<reg && reg<three)
	   printf("#0397:reg=%d code_ugt  0<reg && reg <3\n",reg);
    }
    for (reg=zero;reg<seven;reg++) {
        if (one<reg && reg<five)
	   printf("#0401: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("#0411:code_ge 1\n");
    else
	printf("#0413:code_ge 0\n");
    for (reg=-3;reg<7;reg++) {
        if (0<=reg && reg<=3)
	   printf("#0416:reg=%d code_ge  0<=reg && reg <=3\n",reg);
    }
    for (reg=-3;reg<7;reg++) {
        if (-2<=reg && reg<=0)
	   printf("#0420:reg=%d code_ge -2<=reg && reg <=0\n",reg);
    }
    for (reg=mthree;reg<seven;reg++) {
        if (zero<=reg && reg<=three)
	   printf("#0424:reg=%d code_ge  0<=reg && reg <=3\n",reg);
    }
    for (reg=mthree;reg<seven;reg++) {
        if (mtwo<=reg && reg<=zero)
	   printf("#0428: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("#0438:code_uge 1\n");
    else
	printf("#0440:code_uge 0\n");
    for (reg=0;reg<7;reg++) {
        if (0<=reg && reg<=3)
           printf("#0443:reg=%d code_uge  0<=reg && reg <=3\n",reg);
    }
    for (reg=0;reg<7;reg++) {
        if (1<=reg && reg<=5)
           printf("#0447:reg=%d code_uge  1<=reg && reg <=5\n",reg);
    }
    for (reg=zero;reg<seven;reg++) {
        if (zero<=reg && reg<=three)
	   printf("#0451:reg=%d code_uge  0<=reg && reg <=3\n",reg);
    }
    for (reg=zero;reg<seven;reg++) {
        if (one<=reg && reg<=five)
	   printf("#0455: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("#0467:code_eq 1\n");
    else
	printf("#0469:code_eq 0\n");
    if (i1!=i2)
	printf("#0471:code_neq 1\n");
    else
	printf("#0473:code_neq 0\n");

    if (3==ui3)
	printf("#0476:code_eq 1\n");
    else
	printf("#0478:code_eq 0\n");
    if (3!=i3)
	printf("#0480:code_neq 1\n");
    else
	printf("#0482: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("#0495:code_bool %d>%d gvar %d\n",i1,i2,i1>i2);
	printf("#0496:code_bool %u>%u gvar %d u\n",ui1,ui2,ui1>ui2);
	printf("#0497:code_bool %d>=%d gvar %d\n",i1,i2,i1>=i2);
	printf("#0498:code_bool %u>=%u gvar %d u\n",ui1,ui2,ui1>=ui2);
	printf("#0499:code_bool %d<%d gvar %d\n",i1,i2,i1<i2);
	printf("#0500:code_bool %u<%u gvar %d u\n",ui1,ui2,ui1<ui2);
	printf("#0501:code_bool %d<=%d gvar %d\n",i1,i2,i1<=i2);
	printf("#0502:code_bool %u<=%u gvar %d u\n",ui1,ui2,ui1<=ui2);
	printf("#0503:code_bool %u==%u gvar %d u\n",ui1,ui2,ui1==ui2);
	printf("#0504: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("#0511:code_bool %d>%d lvar %d\n",i1l,i2l,i1l>i2l);
	printf("#0512:code_bool %u>%u lvar %d u\n",ui1l,ui2l,ui1l>ui2l);
	printf("#0513:code_bool %d>=%d lvar %d\n",i1l,i2l,i1l>=i2l);
	printf("#0514:code_bool %u>=%u lvar %d u\n",ui1l,ui2l,ui1l>=ui2l);
	printf("#0515:code_bool %d<%d lvar %d\n",i1l,i2l,i1l<i2l);
	printf("#0516:code_bool %u<%u lvar %d u\n",ui1l,ui2l,ui1l<ui2l);
	printf("#0517:code_bool %d<=%d lvar %d\n",i1l,i2l,i1l<=i2l);
	printf("#0518:code_bool %u<=%u lvar %d u\n",ui1l,ui2l,ui1l<=ui2l);
	printf("#0519:code_bool %u==%u lvar %d u\n",ui1l,ui2l,ui1l==ui2l);
	printf("#0520: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("#0533:code_bool_const %d>%d gvar %d\n",-4,i2,-4>i2);
	printf("#0534:code_bool_const %u>%u gvar %d u\n",0,ui2,0>ui2);
	printf("#0535:code_bool_const %d>=%d gvar %d\n",-4,i2,-4>=i2);
	printf("#0536:code_bool_const %u>=%u gvar %d u\n",0,ui2,0>=ui2);
	printf("#0537:code_bool_const %d<%d gvar %d\n",-4,i2,-4<i2);
	printf("#0538:code_bool_const %u<%u gvar %d u\n",0,ui2,0<ui2);
	printf("#0539:code_bool_const %d<=%d gvar %d\n",-4,i2,-4<=i2);
	printf("#0540:code_bool_const %u<=%u gvar %d u\n",0,ui2,0<=ui2);
	printf("#0541:code_bool_const %u==%u gvar %d u\n",0,ui2,0==ui2);
	printf("#0542:code_bool_const %u!=%u gvar %d\n",-4,i2,-4!=i2);
	printf("#0543:code_bool_const %d>%d gvar %d\n",-3,i2,-3>i2);
	printf("#0544:code_bool_const %u>%u gvar %d u\n",1,ui2,1>ui2);
	printf("#0545:code_bool_const %d>=%d gvar %d\n",-3,i2,-3>=i2);
	printf("#0546:code_bool_const %u>=%u gvar %d u\n",1,ui2,1>=ui2);
	printf("#0547:code_bool_const %d<%d gvar %d\n",-3,i2,-3<i2);
	printf("#0548:code_bool_const %u<%u gvar %d u\n",1,ui2,1<ui2);
	printf("#0549:code_bool_const %d<=%d gvar %d\n",-3,i2,-3<=i2);
	printf("#0550:code_bool_const %u<=%u gvar %d u\n",1,ui2,1<=ui2);
	printf("#0551:code_bool_const %u==%u gvar %d u\n",1,ui2,1==ui2);
	printf("#0552:code_bool_const %u!=%u gvar %d\n",-3,i2,-3!=i2);
	printf("#0553:code_bool_const %d>%d gvar %d\n",-2,i2,-2>i2);
	printf("#0554:code_bool_const %u>%u gvar %d u\n",2,ui2,2>ui2);
	printf("#0555:code_bool_const %d>=%d gvar %d\n",-2,i2,-2>=i2);
	printf("#0556:code_bool_const %u>=%u gvar %d u\n",2,ui2,2>=ui2);
	printf("#0557:code_bool_const %d<%d gvar %d\n",-2,i2,-2<i2);
	printf("#0558:code_bool_const %u<%u gvar %d u\n",2,ui2,2<ui2);
	printf("#0559:code_bool_const %d<=%d gvar %d\n",-2,i2,-2<=i2);
	printf("#0560:code_bool_const %u<=%u gvar %d u\n",2,ui2,2<=ui2);
	printf("#0561:code_bool_const %u==%u gvar %d u\n",2,ui2,2==ui2);
	printf("#0562:code_bool_const %u!=%u gvar %d\n",-2,i2,-2!=i2);
	printf("#0563:code_bool_const %d>%d gvar %d\n",-1,i2,-1>i2);
	printf("#0564:code_bool_const %u>%u gvar %d u\n",3,ui2,3>ui2);
	printf("#0565:code_bool_const %d>=%d gvar %d\n",-1,i2,-1>=i2);
	printf("#0566:code_bool_const %u>=%u gvar %d u\n",3,ui2,3>=ui2);
	printf("#0567:code_bool_const %d<%d gvar %d\n",-1,i2,-1<i2);
	printf("#0568:code_bool_const %u<%u gvar %d u\n",3,ui2,3<ui2);
	printf("#0569:code_bool_const %d<=%d gvar %d\n",-1,i2,-1<=i2);
	printf("#0570:code_bool_const %u<=%u gvar %d u\n",3,ui2,3<=ui2);
	printf("#0571:code_bool_const %u==%u gvar %d u\n",3,ui2,3==ui2);
	printf("#0572:code_bool_const %u!=%u gvar %d\n",-1,i2,-1!=i2);
	printf("#0573:code_bool_const %d>%d gvar %d\n",0,i2,0>i2);
	printf("#0574:code_bool_const %u>%u gvar %d u\n",4,ui2,4>ui2);
	printf("#0575:code_bool_const %d>=%d gvar %d\n",0,i2,0>=i2);
	printf("#0576:code_bool_const %u>=%u gvar %d u\n",4,ui2,4>=ui2);
	printf("#0577:code_bool_const %d<%d gvar %d\n",0,i2,0<i2);
	printf("#0578:code_bool_const %u<%u gvar %d u\n",4,ui2,4<ui2);
	printf("#0579:code_bool_const %d<=%d gvar %d\n",0,i2,0<=i2);
	printf("#0580:code_bool_const %u<=%u gvar %d u\n",4,ui2,4<=ui2);
	printf("#0581:code_bool_const %u==%u gvar %d u\n",4,ui2,4==ui2);
	printf("#0582:code_bool_const %u!=%u gvar %d\n",0,i2,0!=i2);
	printf("#0583:code_bool_const %d>%d gvar %d\n",1,i2,1>i2);
	printf("#0584:code_bool_const %u>%u gvar %d u\n",5,ui2,5>ui2);
	printf("#0585:code_bool_const %d>=%d gvar %d\n",1,i2,1>=i2);
	printf("#0586:code_bool_const %u>=%u gvar %d u\n",5,ui2,5>=ui2);
	printf("#0587:code_bool_const %d<%d gvar %d\n",1,i2,1<i2);
	printf("#0588:code_bool_const %u<%u gvar %d u\n",5,ui2,5<ui2);
	printf("#0589:code_bool_const %d<=%d gvar %d\n",1,i2,1<=i2);
	printf("#0590:code_bool_const %u<=%u gvar %d u\n",5,ui2,5<=ui2);
	printf("#0591:code_bool_const %u==%u gvar %d u\n",5,ui2,5==ui2);
	printf("#0592:code_bool_const %u!=%u gvar %d\n",1,i2,1!=i2);
	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",6,ui2,6>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",6,ui2,6>=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",6,ui2,6<ui2);
	printf("#0599:code_bool_const %d<=%d gvar %d\n",2,i2,2<=i2);
	printf("#0600:code_bool_const %u<=%u gvar %d u\n",6,ui2,6<=ui2);
	printf("#0601:code_bool_const %u==%u gvar %d u\n",6,ui2,6==ui2);
	printf("#0602:code_bool_const %u!=%u gvar %d\n",2,i2,2!=i2);
	printf("#0603:code_bool_const %d>%d gvar %d\n",3,i2,3>i2);
	printf("#0604:code_bool_const %u>%u gvar %d u\n",7,ui2,7>ui2);
	printf("#0605:code_bool_const %d>=%d gvar %d\n",3,i2,3>=i2);
	printf("#0606:code_bool_const %u>=%u gvar %d u\n",7,ui2,7>=ui2);
	printf("#0607:code_bool_const %d<%d gvar %d\n",3,i2,3<i2);
	printf("#0608:code_bool_const %u<%u gvar %d u\n",7,ui2,7<ui2);
	printf("#0609:code_bool_const %d<=%d gvar %d\n",3,i2,3<=i2);
	printf("#0610:code_bool_const %u<=%u gvar %d u\n",7,ui2,7<=ui2);
	printf("#0611:code_bool_const %u==%u gvar %d u\n",7,ui2,7==ui2);
	printf("#0612: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("#0619:code_bool_const %d>%d gvar %d\n",-4,i2l,-4>i2l);
	printf("#0620:code_bool_const %u>%u gvar %d u\n",0,ui2l,0>ui2l);
	printf("#0621:code_bool_const %d>=%d gvar %d\n",-4,i2l,-4>=i2l);
	printf("#0622:code_bool_const %u>=%u gvar %d u\n",0,ui2l,0>=ui2l);
	printf("#0623:code_bool_const %d<%d gvar %d\n",-4,i2l,-4<i2l);
	printf("#0624:code_bool_const %u<%u gvar %d u\n",0,ui2l,0<ui2l);
	printf("#0625:code_bool_const %d<=%d gvar %d\n",-4,i2l,-4<=i2l);
	printf("#0626:code_bool_const %u<=%u gvar %d u\n",0,ui2l,0<=ui2l);
	printf("#0627:code_bool_const %u==%u gvar %d u\n",0,ui2l,0==ui2l);
	printf("#0628:code_bool_const %u!=%u gvar %d\n",-4,i2l,-4!=i2l);
	printf("#0629:code_bool_const %d>%d gvar %d\n",-3,i2l,-3>i2l);
	printf("#0630:code_bool_const %u>%u gvar %d u\n",1,ui2l,1>ui2l);
	printf("#0631:code_bool_const %d>=%d gvar %d\n",-3,i2l,-3>=i2l);
	printf("#0632:code_bool_const %u>=%u gvar %d u\n",1,ui2l,1>=ui2l);
	printf("#0633:code_bool_const %d<%d gvar %d\n",-3,i2l,-3<i2l);
	printf("#0634:code_bool_const %u<%u gvar %d u\n",1,ui2l,1<ui2l);
	printf("#0635:code_bool_const %d<=%d gvar %d\n",-3,i2l,-3<=i2l);
	printf("#0636:code_bool_const %u<=%u gvar %d u\n",1,ui2l,1<=ui2l);
	printf("#0637:code_bool_const %u==%u gvar %d u\n",1,ui2l,1==ui2l);
	printf("#0638:code_bool_const %u!=%u gvar %d\n",-3,i2l,-3!=i2l);
	printf("#0639:code_bool_const %d>%d gvar %d\n",-2,i2l,-2>i2l);
	printf("#0640:code_bool_const %u>%u gvar %d u\n",2,ui2l,2>ui2l);
	printf("#0641:code_bool_const %d>=%d gvar %d\n",-2,i2l,-2>=i2l);
	printf("#0642:code_bool_const %u>=%u gvar %d u\n",2,ui2l,2>=ui2l);
	printf("#0643:code_bool_const %d<%d gvar %d\n",-2,i2l,-2<i2l);
	printf("#0644:code_bool_const %u<%u gvar %d u\n",2,ui2l,2<ui2l);
	printf("#0645:code_bool_const %d<=%d gvar %d\n",-2,i2l,-2<=i2l);
	printf("#0646:code_bool_const %u<=%u gvar %d u\n",2,ui2l,2<=ui2l);
	printf("#0647:code_bool_const %u==%u gvar %d u\n",2,ui2l,2==ui2l);
	printf("#0648:code_bool_const %u!=%u gvar %d\n",-2,i2l,-2!=i2l);
	printf("#0649:code_bool_const %d>%d gvar %d\n",-1,i2l,-1>i2l);
	printf("#0650:code_bool_const %u>%u gvar %d u\n",3,ui2l,3>ui2l);
	printf("#0651:code_bool_const %d>=%d gvar %d\n",-1,i2l,-1>=i2l);
	printf("#0652:code_bool_const %u>=%u gvar %d u\n",3,ui2l,3>=ui2l);
	printf("#0653:code_bool_const %d<%d gvar %d\n",-1,i2l,-1<i2l);
	printf("#0654:code_bool_const %u<%u gvar %d u\n",3,ui2l,3<ui2l);
	printf("#0655:code_bool_const %d<=%d gvar %d\n",-1,i2l,-1<=i2l);
	printf("#0656:code_bool_const %u<=%u gvar %d u\n",3,ui2l,3<=ui2l);
	printf("#0657:code_bool_const %u==%u gvar %d u\n",3,ui2l,3==ui2l);
	printf("#0658:code_bool_const %u!=%u gvar %d\n",-1,i2l,-1!=i2l);
	printf("#0659:code_bool_const %d>%d gvar %d\n",0,i2l,0>i2l);
	printf("#0660:code_bool_const %u>%u gvar %d u\n",4,ui2l,4>ui2l);
	printf("#0661:code_bool_const %d>=%d gvar %d\n",0,i2l,0>=i2l);
	printf("#0662:code_bool_const %u>=%u gvar %d u\n",4,ui2l,4>=ui2l);
	printf("#0663:code_bool_const %d<%d gvar %d\n",0,i2l,0<i2l);
	printf("#0664:code_bool_const %u<%u gvar %d u\n",4,ui2l,4<ui2l);
	printf("#0665:code_bool_const %d<=%d gvar %d\n",0,i2l,0<=i2l);
	printf("#0666:code_bool_const %u<=%u gvar %d u\n",4,ui2l,4<=ui2l);
	printf("#0667:code_bool_const %u==%u gvar %d u\n",4,ui2l,4==ui2l);
	printf("#0668:code_bool_const %u!=%u gvar %d\n",0,i2l,0!=i2l);
	printf("#0669:code_bool_const %d>%d gvar %d\n",1,i2l,1>i2l);
	printf("#0670:code_bool_const %u>%u gvar %d u\n",5,ui2l,5>ui2l);
	printf("#0671:code_bool_const %d>=%d gvar %d\n",1,i2l,1>=i2l);
	printf("#0672:code_bool_const %u>=%u gvar %d u\n",5,ui2l,5>=ui2l);
	printf("#0673:code_bool_const %d<%d gvar %d\n",1,i2l,1<i2l);
	printf("#0674:code_bool_const %u<%u gvar %d u\n",5,ui2l,5<ui2l);
	printf("#0675:code_bool_const %d<=%d gvar %d\n",1,i2l,1<=i2l);
	printf("#0676:code_bool_const %u<=%u gvar %d u\n",5,ui2l,5<=ui2l);
	printf("#0677:code_bool_const %u==%u gvar %d u\n",5,ui2l,5==ui2l);
	printf("#0678:code_bool_const %u!=%u gvar %d\n",1,i2l,1!=i2l);
	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",6,ui2l,6>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",6,ui2l,6>=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",6,ui2l,6<ui2l);
	printf("#0685:code_bool_const %d<=%d gvar %d\n",2,i2l,2<=i2l);
	printf("#0686:code_bool_const %u<=%u gvar %d u\n",6,ui2l,6<=ui2l);
	printf("#0687:code_bool_const %u==%u gvar %d u\n",6,ui2l,6==ui2l);
	printf("#0688:code_bool_const %u!=%u gvar %d\n",2,i2l,2!=i2l);
	printf("#0689:code_bool_const %d>%d gvar %d\n",3,i2l,3>i2l);
	printf("#0690:code_bool_const %u>%u gvar %d u\n",7,ui2l,7>ui2l);
	printf("#0691:code_bool_const %d>=%d gvar %d\n",3,i2l,3>=i2l);
	printf("#0692:code_bool_const %u>=%u gvar %d u\n",7,ui2l,7>=ui2l);
	printf("#0693:code_bool_const %d<%d gvar %d\n",3,i2l,3<i2l);
	printf("#0694:code_bool_const %u<%u gvar %d u\n",7,ui2l,7<ui2l);
	printf("#0695:code_bool_const %d<=%d gvar %d\n",3,i2l,3<=i2l);
	printf("#0696:code_bool_const %u<=%u gvar %d u\n",7,ui2l,7<=ui2l);
	printf("#0697:code_bool_const %u==%u gvar %d u\n",7,ui2l,7==ui2l);
	printf("#0698: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;
    i1 && printf("#0715:code_bool local 1\n");
    s1 && printf("#0716:code_bool local 2\n");
    us1 && printf("#0717:code_bool local 3\n");
    c1 && printf("#0718:code_bool local 4\n");
    uc1 && printf("#0719: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;
    i1 && printf("#0728:code_bool global 1\n");
    s1 && printf("#0729:code_bool global 2\n");
    us1 && printf("#0730:code_bool global 3\n");
    c1 && printf("#0731:code_bool global 4\n");
    uc1 && printf("#0732: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;
    i1 && printf("#0747:code_bool register 1\n");
    s1 && printf("#0748:code_bool register 2\n");
    us1 && printf("#0749:code_bool register 3\n");
    c1 && printf("#0750:code_bool register 4\n");
    uc1 && printf("#0751:code_bool register 5\n");

}


// code_string(int e1,int creg)

INLINE void
code_string()
{
    printf("#0761: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("#0780: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("#0801: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; 

    i1 = -55; i2= 55;
    ui1 = 200; ui2= 128;
    pi1 = &i1;
    pi2 = &i2;
    pui1 = &ui1;
    pui2 = &ui2;
    printf("#0819:code_cindirect %d %d %u %u\n",*pi1,*pi2,*pui1,*pui2);
}

// 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; 

    i1 = -55; i2= 55;
    ui1 = 200; ui2= 128;
    pi1 = &i1;
    pi2 = &i2;
    pui1 = &ui1;
    pui2 = &ui2;
    printf("#0837:code_sindirect %d %d %u %u\n",*pi1,*pi2,*pui1,*pui2);
}

#if FLOAT_CODE
// code_drindirect(int e1, int offset, int d);
INLINE void
code_drindirect()
{
    float i1,i2; 
    double ui1,ui2; 
    float *pi1,*pi2; 
    double *pui1,*pui2; 

    i1 = -55; i2= 55;
    ui1 = 200; ui2= 128;
    pi1 = &i1;
    pi2 = &i2;
    pui1 = &ui1;
    pui2 = &ui2;
    printf("#0856:code_dindirect %g %g %g %g\n",*pi1,*pi2,*pui1,*pui2);
}

#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("#0877:code_lrindirect %llx %llx %llx %llx\n",*pi1,*pi2,*pui1,*pui2);
    printf("#0878: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("#0905: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("#0925: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("#0939:code_assop 1 %d\n",i1);
    i1 -= a;
    printf("#0941:code_assop 2 %d\n",i1);
    i1 /= a;
    printf("#0943:code_assop 3 %d\n",i1);
    i1 *= a;
    printf("#0945:code_assop 4 %d\n",i1);
    i1 |= a;
    printf("#0947:code_assop 5 %d\n",i1);
    i1 &= a;
    printf("#0949:code_assop 6 %d\n",i1);
    i1 ^= a;
    printf("#0951:code_assop 7 %d\n",i1);
    i1 <<= a;
    printf("#0953:code_assop 8 %d\n",i1);
    i1 >>= a;
    printf("#0955:code_assop 9 %d\n",i1);

    ui1 += a;
    printf("#0958:code_assop 1 %u\n",ui1);
    ui1 -= a;
    printf("#0960:code_assop 2 %u\n",ui1);
    ui1 /= a;
    printf("#0962:code_assop 3 %u\n",ui1);
    ui1 *= a;
    printf("#0964:code_assop 4 %u\n",ui1);
    ui1 |= a;
    printf("#0966:code_assop 5 %u\n",ui1);
    ui1 &= a;
    printf("#0968:code_assop 6 %u\n",ui1);
    ui1 ^= a;
    printf("#0970:code_assop 7 %u\n",ui1);
    ui1 <<= a;
    printf("#0972:code_assop 8 %u\n",ui1);
    ui1 >>= a;
    printf("#0974: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("#0991:iassop 1 %d\n",p->i1);
    p->i1 -= a;
    printf("#0993:iassop 2 %d\n",p->i1);
    p->i1 /= a;
    printf("#0995:iassop 3 %d\n",p->i1);
    p->i1 *= a;
    printf("#0997:iassop 4 %d\n",p->i1);
    p->i1 |= a;
    printf("#0999:iassop 5 %d\n",p->i1);
    p->i1 &= a;
    printf("#1001:iassop 6 %d\n",p->i1);
    p->i1 ^= a;
    printf("#1003:iassop 7 %d\n",p->i1);
    p->i1 <<= a;
    printf("#1005:iassop 8 %d\n",p->i1);
    p->i1 >>= a;
    printf("#1007:iassop 9 %d\n",p->i1);

    p->ui1 += a;
    printf("#1010:iassop 1 %u\n",p->ui1);
    p->ui1 -= a;
    printf("#1012:iassop 2 %u\n",p->ui1);
    p->ui1 /= a;
    printf("#1014:iassop 3 %u\n",p->ui1);
    p->ui1 *= a;
    printf("#1016:iassop 4 %u\n",p->ui1);
    p->ui1 |= a;
    printf("#1018:iassop 5 %u\n",p->ui1);
    p->ui1 &= a;
    printf("#1020:iassop 6 %u\n",p->ui1);
    p->ui1 ^= a;
    printf("#1022:iassop 7 %u\n",p->ui1);
    p->ui1 <<= a;
    printf("#1024:iassop 8 %u\n",p->ui1);
    p->ui1 >>= a;
    printf("#1026: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("#1045:iassop 1 %d\n",gp->i1);
    gp->i1 -= a;
    printf("#1047:iassop 2 %d\n",gp->i1);
    gp->i1 /= a;
    printf("#1049:iassop 3 %d\n",gp->i1);
    gp->i1 *= a;
    printf("#1051:iassop 4 %d\n",gp->i1);
    gp->i1 |= a;
    printf("#1053:iassop 5 %d\n",gp->i1);
    gp->i1 &= a;
    printf("#1055:iassop 6 %d\n",gp->i1);
    gp->i1 ^= a;
    printf("#1057:iassop 7 %d\n",gp->i1);
    gp->i1 <<= a;
    printf("#1059:iassop 8 %d\n",gp->i1);
    gp->i1 >>= a;
    printf("#1061:iassop 9 %d\n",gp->i1);

    gp->ui1 += a;
    printf("#1064:iassop 1 %u\n",gp->ui1);
    gp->ui1 -= a;
    printf("#1066:iassop 2 %u\n",gp->ui1);
    gp->ui1 /= a;
    printf("#1068:iassop 3 %u\n",gp->ui1);
    gp->ui1 *= a;
    printf("#1070:iassop 4 %u\n",gp->ui1);
    gp->ui1 |= a;
    printf("#1072:iassop 5 %u\n",gp->ui1);
    gp->ui1 &= a;
    printf("#1074:iassop 6 %u\n",gp->ui1);
    gp->ui1 ^= a;
    printf("#1076:iassop 7 %u\n",gp->ui1);
    gp->ui1 <<= a;
    printf("#1078:iassop 8 %u\n",gp->ui1);
    gp->ui1 >>= a;
    printf("#1080: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("#1093:iassop 1 %d\n",gp->i1);
    gp->i1 -= a;
    printf("#1095:iassop 2 %d\n",gp->i1);
    gp->i1 /= a;
    printf("#1097:iassop 3 %d\n",gp->i1);
    gp->i1 *= a;
    printf("#1099:iassop 4 %d\n",gp->i1);
    gp->i1 |= a;
    printf("#1101:iassop 5 %d\n",gp->i1);
    gp->i1 &= a;
    printf("#1103:iassop 6 %d\n",gp->i1);
    gp->i1 ^= a;
    printf("#1105:iassop 7 %d\n",gp->i1);
    gp->i1 <<= a;
    printf("#1107:iassop 8 %d\n",gp->i1);
    gp->i1 >>= a;
    printf("#1109:iassop 9 %d\n",gp->i1);

    gp->ui1 += a;
    printf("#1112:iassop 1 %u\n",gp->ui1);
    gp->ui1 -= a;
    printf("#1114:iassop 2 %u\n",gp->ui1);
    gp->ui1 /= a;
    printf("#1116:iassop 3 %u\n",gp->ui1);
    gp->ui1 *= a;
    printf("#1118:iassop 4 %u\n",gp->ui1);
    gp->ui1 |= a;
    printf("#1120:iassop 5 %u\n",gp->ui1);
    gp->ui1 &= a;
    printf("#1122:iassop 6 %u\n",gp->ui1);
    gp->ui1 ^= a;
    printf("#1124:iassop 7 %u\n",gp->ui1);
    gp->ui1 <<= a;
    printf("#1126:iassop 8 %u\n",gp->ui1);
    gp->ui1 >>= a;
    printf("#1128: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("#1143:code_assop 1 %d\n",i1);
    i1 -= a;
    printf("#1145:code_assop 2 %d\n",i1);
    i1 /= a;
    printf("#1147:code_assop 3 %d\n",i1);
    i1 *= a;
    printf("#1149:code_assop 4 %d\n",i1);
    i1 |= a;
    printf("#1151:code_assop 5 %d\n",i1);
    i1 &= a;
    printf("#1153:code_assop 6 %d\n",i1);
    i1 ^= a;
    printf("#1155:code_assop 7 %d\n",i1);
    i1 <<= a;
    printf("#1157:code_assop 8 %d\n",i1);
    i1 >>= a;
    printf("#1159:code_assop 9 %d\n",i1);

    ui1 += a;
    printf("#1162:code_assop 1 %u\n",ui1);
    ui1 -= a;
    printf("#1164:code_assop 2 %u\n",ui1);
    ui1 /= a;
    printf("#1166:code_assop 3 %u\n",ui1);
    ui1 *= a;
    printf("#1168:code_assop 4 %u\n",ui1);
    ui1 |= a;
    printf("#1170:code_assop 5 %u\n",ui1);
    ui1 &= a;
    printf("#1172:code_assop 6 %u\n",ui1);
    ui1 ^= a;
    printf("#1174:code_assop 7 %u\n",ui1);
    ui1 <<= a;
    printf("#1176:code_assop 8 %u\n",ui1);
    ui1 >>= a;
    printf("#1178: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("#1192:code_assop c 1 %d\n",i1);
    i1 -= 3;
    printf("#1194:code_assop c 2 %d\n",i1);
    i1 /= 3;
    printf("#1196:code_assop c 3 %d\n",i1);
    i1 *= 3;
    printf("#1198:code_assop c 4 %d\n",i1);
    i1 |= 234;
    printf("#1200:code_assop c 5 %d\n",i1);
    i1 &= 23244234;
    printf("#1202:code_assop c 6 %d\n",i1);
    i1 ^= 55244234;
    printf("#1204:code_assop c 7 %d\n",i1);
    i1 <<= 3;
    printf("#1206:code_assop c 8 %d\n",i1);
    i1 >>= 3;
    printf("#1208:code_assop c 9 %d\n",i1);

    ui1 += 3;
    printf("#1211:code_assop c 1 %u\n",ui1);
    ui1 -= 3;
    printf("#1213:code_assop c 2 %u\n",ui1);
    ui1 /= 3;
    printf("#1215:code_assop c 3 %u\n",ui1);
    ui1 *= 3;
    printf("#1217:code_assop c 4 %u\n",ui1);
    ui1 |= 234;
    printf("#1219:code_assop c 5 %u\n",ui1);
    ui1 &= 23234234;
    printf("#1221:code_assop c 6 %u\n",ui1);
    ui1 ^= 55234234;
    printf("#1223:code_assop c 7 %u\n",ui1);
    ui1 <<= 3;
    printf("#1225:code_assop c 8 %u\n",ui1);
    ui1 >>= 3;
    printf("#1227: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("#1240:code_assop c 1 %d\n",i1);
    i1 -= 3;
    printf("#1242:code_assop c 2 %d\n",i1);
    i1 /= 3;
    printf("#1244:code_assop c 3 %d\n",i1);
    i1 *= 3;
    printf("#1246:code_assop c 4 %d\n",i1);
    i1 |= 234;
    printf("#1248:code_assop c 5 %d\n",i1);
    i1 &= 23234234;
    printf("#1250:code_assop c 6 %d\n",i1);
    i1 ^= 55444234;
    printf("#1252:code_assop c 7 %d\n",i1);
    i1 <<= 3;
    printf("#1254:code_assop c 8 %d\n",i1);
    i1 >>= 3;
    printf("#1256:code_assop c 9 %d\n",i1);

    ui1 += 3;
    printf("#1259:code_assop c 1 %u\n",ui1);
    ui1 -= 3;
    printf("#1261:code_assop c 2 %u\n",ui1);
    ui1 /= 3;
    printf("#1263:code_assop c 3 %u\n",ui1);
    ui1 *= 3;
    printf("#1265:code_assop c 4 %u\n",ui1);
    ui1 |= 234;
    printf("#1267:code_assop c 5 %u\n",ui1);
    ui1 &= 23234234;
    printf("#1269:code_assop c 6 %u\n",ui1);
    ui1 ^= 54234234;
    printf("#1271:code_assop c 7 %u\n",ui1);
    ui1 <<= 3;
    printf("#1273:code_assop c 8 %u\n",ui1);
    ui1 >>= 3;
    printf("#1275: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("#1289:tosop 1 %d\n",i);
    i = i1 - i2;
    printf("#1291:tosop 2 %d\n",i);
    i = i1 / i2;
    printf("#1293:tosop 3 %d\n",i);
    i = i1 * i2;
    printf("#1295:tosop 4 %d\n",i);
    i = i1 | i2;
    printf("#1297:tosop 5 %d\n",i);
    i = i1 & i2;
    printf("#1299:tosop 6 %d\n",i);
    i = i1 ^ i2;
    printf("#1301:tosop 7 %d\n",i);
    i = i1 << i2;
    printf("#1303:tosop 8 %d\n",i);
    i = i1 >> i2;
    printf("#1305:tosop 9 %d\n",i);
    i = i1 % i2;
    printf("#1307:tosop 10 %d\n",i);

    u = u1 + u2;
    printf("#1310:tosop 1 %u\n",u);
    u = u1 - u2;
    printf("#1312:tosop 2 %u\n",u);
    u = u1 / u2;
    printf("#1314:tosop 3 %u\n",u);
    u = u1 * u2;
    printf("#1316:tosop 4 %u\n",u);
    u = u1 | u2;
    printf("#1318:tosop 5 %u\n",u);
    u = u1 & u2;
    printf("#1320:tosop 6 %u\n",u);
    u = u1 ^ u2;
    printf("#1322:tosop 7 %u\n",u);
    u = u1 << u2;
    printf("#1324:tosop 8 %u\n",u);
    u = u1 >> u2;
    printf("#1326:tosop 9 %u\n",u);
    u = u1 % u2;
    printf("#1328: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("#1341:oprtc 1 %d\n",i);
    i = i1 - 3;
    printf("#1343:oprtc 2 %d\n",i);
    i = i1 / 3;
    printf("#1345:oprtc 3 %d\n",i);
    i = i1 * 3;
    printf("#1347:oprtc 4 %d\n",i);
    i = i1 | 234234234;
    printf("#1349:oprtc 5 %d\n",i);
    i = i1 & 23234234;
    printf("#1351:oprtc 6 %d\n",i);
    i = i1 ^ 23234234;
    printf("#1353:oprtc 7 %d\n",i);
    i = i1 << 5;
    printf("#1355:oprtc 8 %d\n",i);
    i = i1 >> 5;
    printf("#1357:oprtc 9 %d\n",i);
    i = i1 % 5;
    printf("#1359:oprtc 10 %d\n",i);

    u = u1 + 3;
    printf("#1362:oprtc 1 %u\n",u);
    u = u1 - 3;
    printf("#1364:oprtc 2 %u\n",u);
    u = u1 / 3;
    printf("#1366:oprtc 3 %u\n",u);
    u = u1 * 3;
    printf("#1368:oprtc 4 %u\n",u);
    u = u1 | 234234234;
    printf("#1370:oprtc 5 %u\n",u);
    u = u1 & 234234234;
    printf("#1372:oprtc 6 %u\n",u);
    u = u1 ^ 234234234;
    printf("#1374:oprtc 7 %u\n",u);
    u = u1 << 5;
    printf("#1376:oprtc 8 %u\n",u);
    u = u1 >> 5;
    printf("#1378:oprtc 9 %u\n",u);
    u = u1 % 5;
    printf("#1380: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("#1394:tosop r 1 %d\n",i);
    i = i1 - i2;
    printf("#1396:tosop r 2 %d\n",i);
    i = i1 / i2;
    printf("#1398:tosop r 3 %d\n",i);
    i = i1 * i2;
    printf("#1400:tosop r 4 %d\n",i);
    i = i1 | i2;
    printf("#1402:tosop r 5 %d\n",i);
    i = i1 & i2;
    printf("#1404:tosop r 6 %d\n",i);
    i = i1 ^ i2;
    printf("#1406:tosop r 7 %d\n",i);
    i = i1 << i2;
    printf("#1408:tosop r 8 %d\n",i);
    i = i1 >> i2;
    printf("#1410:tosop r 9 %d\n",i);
    i = i1 % i2;
    printf("#1412:tosop r 10 %d\n",i);

    u = u1 + u2;
    printf("#1415:tosop r 1 %u\n",u);
    u = u1 - u2;
    printf("#1417:tosop r 2 %u\n",u);
    u = u1 / u2;
    printf("#1419:tosop r 3 %u\n",u);
    u = u1 * u2;
    printf("#1421:tosop r 4 %u\n",u);
    u = u1 | u2;
    printf("#1423:tosop r 5 %u\n",u);
    u = u1 & u2;
    printf("#1425:tosop r 6 %u\n",u);
    u = u1 ^ u2;
    printf("#1427:tosop r 7 %u\n",u);
    u = u1 << u2;
    printf("#1429:tosop r 8 %u\n",u);
    u = u1 >> u2;
    printf("#1431:tosop r 9 %u\n",u);
    u = u1 % u2;
    printf("#1433: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("#1446:oprtc r 1 %d\n",i);
    i = i1 - 3;
    printf("#1448:oprtc r 2 %d\n",i);
    i = i1 / 3;
    printf("#1450:oprtc r 3 %d\n",i);
    i = i1 * 3;
    printf("#1452:oprtc r 4 %d\n",i);
    i = i1 | 234234234;
    printf("#1454:oprtc r 5 %d\n",i);
    i = i1 & 23234234;
    printf("#1456:oprtc r 6 %d\n",i);
    i = i1 ^ 23234234;
    printf("#1458:oprtc r 7 %d\n",i);
    i = i1 << 5;
    printf("#1460:oprtc r 8 %d\n",i);
    i = i1 >> 5;
    printf("#1462:oprtc r 9 %d\n",i);
    i = i1 % 5;
    printf("#1464:oprtc r 10 %d\n",i);

    u = u1 + 3;
    printf("#1467:oprtc r 1 %u\n",u);
    u = u1 - 3;
    printf("#1469:oprtc r 2 %u\n",u);
    u = u1 / 3;
    printf("#1471:oprtc r 3 %u\n",u);
    u = u1 * 3;
    printf("#1473:oprtc r 4 %u\n",u);
    u = u1 | 234234234;
    printf("#1475:oprtc r 5 %u\n",u);
    u = u1 & 234234234;
    printf("#1477:oprtc r 6 %u\n",u);
    u = u1 ^ 234234234;
    printf("#1479:oprtc r 7 %u\n",u);
    u = u1 << 5;
    printf("#1481:oprtc r 8 %u\n",u);
    u = u1 >> 5;
    printf("#1483:oprtc r 9 %u\n",u);
    u = u1 % 5;
    printf("#1485: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;
    f0 && printf("#1498:code_bool register 6\n");
    d0 && printf("#1499: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("#1511: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("#1538: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("#1560: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("#1573:code_dneg %g %g\n",-i,-j);
    printf("#1574: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("#1586: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("#1597: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("#1608: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("#1619: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("#1630: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("#1641: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("#1652: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("#1663: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("#1673: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("#1676: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("#1687:code_lvar float %f %f %g %g\n",f0,f1,d0,d1);
    printf("#1688:code_bool > lvar float %d %d %d %d\n",
	f0>f1,f0>=f1,f0==f1,f0!=f1);
    printf("#1690:code_bool > lvar double %d %d %d %d\n",
	d0>d1,d0>=d1,d0==d1,d0!=d1);
    printf("#1692:code_bool < lvar float %d %d %d %d\n",
	f0<f1,f0<=f1,f0==f1,f0!=f1);
    printf("#1694: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;
    f0 && printf("#1705:code_bool global 6\n");
    d0 && printf("#1706: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;
    f0 && printf("#1718:code_bool local 6\n");
    d0 && printf("#1719: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("#1732:dtosop 1 %g\n",i);
    i = i1 - i2;
    printf("#1734:dtosop 2 %g\n",i);
    i = i1 / i2;
    printf("#1736:dtosop 3 %g\n",i);
    i = i1 * i2;
    printf("#1738:dtosop 4 %g\n",i);
    u = u1 + u2;
    printf("#1740:dtosop 1 %g\n",u);
    u = u1 - u2;
    printf("#1742:dtosop 2 %g\n",u);
    u = u1 / u2;
    printf("#1744:dtosop 3 %g\n",u);
    u = u1 * u2;
    printf("#1746: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("#1760:dtosop 1 %g\n",i);
    i = i1 - i2;
    printf("#1762:dtosop 2 %g\n",i);
    i = i1 / i2;
    printf("#1764:dtosop 3 %g\n",i);
    i = i1 * i2;
    printf("#1766:dtosop 4 %g\n",i);
    u = u1 + u2;
    printf("#1768:dtosop 1 %g\n",u);
    u = u1 - u2;
    printf("#1770:dtosop 2 %g\n",u);
    u = u1 / u2;
    printf("#1772:dtosop 3 %g\n",u);
    u = u1 * u2;
    printf("#1774: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("#1788:code_dassop 1 %g\n",i1);
    i1 -= 3;
    printf("#1790:code_dassop 2 %g\n",i1);
    i1 /= 3;
    printf("#1792:code_dassop 3 %g\n",i1);
    i1 *= 3;
    printf("#1794:code_dassop 4 %g\n",i1);

    ui1 += 3;
    printf("#1797:code_dassop f 1 %g\n",ui1);
    ui1 -= 3;
    printf("#1799:code_dassop f 2 %g\n",ui1);
    ui1 /= 3;
    printf("#1801:code_dassop f 3 %g\n",ui1);
    ui1 *= 3;
    printf("#1803: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("#1816:code_dassop r 1 %g\n",i1);
    i1 -= 3;
    printf("#1818:code_dassop r 2 %g\n",i1);
    i1 /= 3;
    printf("#1820:code_dassop r 3 %g\n",i1);
    i1 *= 3;
    printf("#1822:code_dassop r 4 %g\n",i1);

    ui1 += 3;
    printf("#1825:code_dassop f r 1 %g\n",ui1);
    ui1 -= 3;
    printf("#1827:code_dassop f r 2 %g\n",ui1);
    ui1 /= 3;
    printf("#1829:code_dassop f r 3 %g\n",ui1);
    ui1 *= 3;
    printf("#1831: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("#1842:code_dpreinc d %g %g",++i,--j);
    printf("#1843: %g %g\n",i,j);
    ui = 123123123;uj = 0;
    printf("#1845:code_dpreinc f %g %g",++ui,--uj);
    printf("#1846: %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("#1856:code_dpostinc d %g %g",i--,j--);
    printf("#1857: %g %g\n",i,j);
    ui = 123123;uj = 0;
    printf("#1859:code_dpostinc f %g %g",ui++,uj--);
    printf("#1860: %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("#1870:code_dpreinc r d %g %g",++i,--j);
    printf("#1871: %g %g\n",i,j);
    ui = 123123;uj = 0;
    printf("#1873:code_dpreinc r f %g %g",++ui,--uj);
    printf("#1874: %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("#1884:code_dpostinc r d %g %g",i--,j--);
    printf("#1885: %g %g\n",i,j);
    ui = 123123;uj = 0;
    printf("#1887:code_dpostinc r f %g %g",ui++,uj--);
    printf("#1888: %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("#1908:code_dgt 1\n");
    else
	printf("#1910:code_dgt 0\n");
    for (reg=-3;reg<7;reg++) {
        if (0<reg && reg<3)
	   printf("#1913:reg=%g code_dgt  0<reg && reg <3\n",reg);
    }
    for (reg=-3;reg<7;reg++) {
        if (-2<reg && reg<0)
	   printf("#1917:reg=%g code_dgt -2<reg && reg <0\n",reg);
    }
}

// code_ugt(int cond) 
INLINE void
code_fgt()
{
    float reg;
    if (f0>f1)
	printf("#1927:code_fgt 1\n");
    else
	printf("#1929:code_fgt 0\n");
    for (reg=-3;reg<7;reg++) {
        if (0<reg && reg<3)
	   printf("#1932:reg=%g code_fgt  0<reg && reg <3\n",reg);
    }
    for (reg=-3;reg<7;reg++) {
        if (-2<reg && reg<0)
	   printf("#1936:reg=%g code_fgt -2<reg && reg <0\n",reg);
    }
}

// code_ge(int cond) 
INLINE void
code_dge()
{
    double reg;
    if (d0>=d1)
	printf("#1946:code_dge 1\n");
    else
	printf("#1948:code_dge 0\n");
    for (reg=-3;reg<7;reg++) {
        if (0<=reg && reg<=3)
	   printf("#1951:reg=%g code_dge  0<reg && reg <=3\n",reg);
    }
    for (reg=-3;reg<7;reg++) {
        if (-2<=reg && reg<=0)
	   printf("#1955:reg=%g code_dge -2<reg && reg <=0\n",reg);
    }
}

// code_uge(int cond) 
INLINE void
code_fge()
{
    float reg;
    if (f0>=f1)
	printf("#1965:code_fge 1\n");
    else
	printf("#1967:code_fge 0\n");
    for (reg=-3;reg<7;reg++) {
        if (0<=reg && reg<=3)
	   printf("#1970:reg=%g code_fge  0<=reg && reg <=3\n",reg);
    }
    for (reg=-3;reg<7;reg++) {
        if (-2<=reg && reg<=0)
	   printf("#1974:reg=%g code_fge -2<=reg && reg <=0\n",reg);
    }
}

// code_eq(int cond) 
INLINE void
code_deq()
{
    if (f0==f1)
	printf("#1983:code_feq 1\n");
    else
	printf("#1985:code_feq 0\n");
    if (d0!=d1)
	printf("#1987:code_deq 1\n");
    else
	printf("#1989: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("#2002:code_dbool %g>%g gvar %d\n",f0,f1,f0>f1);
	printf("#2003:code_dbool %g>%g gvar %d d\n",d0,d1,d0>d1);
	printf("#2004:code_dbool %g>=%g gvar %d\n",f0,f1,f0>=f1);
	printf("#2005:code_dbool %g>=%g gvar %d d\n",d0,d1,d0>=d1);
	printf("#2006:code_dbool %g<%g gvar %d\n",f0,f1,f0<f1);
	printf("#2007:code_dbool %g<%g gvar %d d\n",d0,d1,d0<d1);
	printf("#2008:code_dbool %g<=%g gvar %d\n",f0,f1,f0<=f1);
	printf("#2009:code_dbool %g<=%g gvar %d d\n",d0,d1,d0<=d1);
	printf("#2010:code_dbool %g==%g gvar %d d\n",d0,d1,d0==d1);
	printf("#2011: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("#2018:code_dbool %g>%g lvar %d\n",i1l,i2l,i1l>i2l);
	printf("#2019:code_dbool %g>%g lvar %d d\n",ui1l,ui2l,ui1l>ui2l);
	printf("#2020:code_dbool %g>=%g lvar %d\n",i1l,i2l,i1l>=i2l);
	printf("#2021:code_dbool %g>=%g lvar %d d\n",ui1l,ui2l,ui1l>=ui2l);
	printf("#2022:code_dbool %g<%g lvar %d\n",i1l,i2l,i1l<i2l);
	printf("#2023:code_dbool %g<%g lvar %d d\n",ui1l,ui2l,ui1l<ui2l);
	printf("#2024:code_dbool %g<=%g lvar %d\n",i1l,i2l,i1l<=i2l);
	printf("#2025:code_dbool %g<=%g lvar %d d\n",ui1l,ui2l,ui1l<=ui2l);
	printf("#2026:code_dbool %g==%g lvar %d d\n",ui1l,ui2l,ui1l==ui2l);
	printf("#2027: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("#2043:code_bool > long long %d %d %d %d %d %d\n",
	l1>l0,ul1>ul0,l1>=l0,ul1>=ul0,ul1==ul0,l1!=l0);
    printf("#2045: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("#2051: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("#2053: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("#2069: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;
    l0 && printf("#2082:code_bool register 8\n");
    ul0 && printf("#2083: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;
    l0 && printf("#2094:code_bool global 8\n");
    ul0 && printf("#2095: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;
    l0 && printf("#2107:code_bool local 8\n");
    ul0 && printf("#2108: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("#2132: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("#2152: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("#2162: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("#2173: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("#2178: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("#2191:code_lvar long long %lld %lld %llu %llu\n",l0,l1,ul0,ul1);
    printf("#2192: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("#2194: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("#2213:ltosop 1 %lld\n",i);
    i = i1 - i2;
    printf("#2215:ltosop 2 %lld\n",i);
    i = i1 / i2;
    printf("#2217:ltosop 3 %lld\n",i);
    i = i1 * i2;
    printf("#2219:ltosop 4 %lld\n",i);
    i = i1 | i2;
    printf("#2221:ltosop 5 %lld\n",i);
    i = i1 & i2;
    printf("#2223:ltosop 6 %lld\n",i);
    i = i1 ^ i2;
    printf("#2225:ltosop 7 %lld\n",i);
    i = i1 << i2;
    printf("#2227:ltosop 8 %lld\n",i);
    i = i1 >> i2;
    printf("#2229:ltosop 9 %lld\n",i);
    i = i1 % i2;
    printf("#2231:ltosop 10 %lld\n",i);

    u = u1 + u2;
    printf("#2234:ltosop u 1 %llu\n",u);
    u = u1 - u2;
    printf("#2236:ltosop u 2 %llu\n",u);
    u = u1 / u2;
    printf("#2238:ltosop u 3 %llu\n",u);
    u = u1 * u2;
    printf("#2240:ltosop u 4 %llu\n",u);
    u = u1 | u2;
    printf("#2242:ltosop u 5 %llu\n",u);
    u = u1 & u2;
    printf("#2244:ltosop u 6 %llu\n",u);
    u = u1 ^ u2;
    printf("#2246:ltosop u 7 %llu\n",u);
    u2 = 3;
    u = u1 << u2;
    printf("#2249:ltosop u 8 %llu\n",u);
    u = u1 >> u2;
    printf("#2251:ltosop u 9 %llu\n",u);
    u = u1 % u2;
    printf("#2253:ltosop u 10 %llu\n",u);

    i = i1 + ii2;
    printf("#2256:litosop 1 %lld\n",i);
    i = i1 - ii2;
    printf("#2258:litosop 2 %lld\n",i);
    i = i1 / ii2;
    printf("#2260:litosop 3 %lld\n",i);
    i = i1 * ii2;
    printf("#2262:litosop 4 %lld\n",i);
    i = i1 | ii2;
    printf("#2264:litosop 5 %lld\n",i);
    i = i1 & ii2;
    printf("#2266:litosop 6 %lld\n",i);
    i = i1 ^ ii2;
    printf("#2268:litosop 7 %lld\n",i);
    ii2 = 3;
    i = i1 << ii2;
    printf("#2271:litosop 8 %lld\n",i);
    i = i1 >> ii2;
    printf("#2273:litosop 9 %lld\n",i);
    i = i1 % ii2;
    printf("#2275:litosop 10 %lld\n",i);

    u = u1 + uu2;
    printf("#2278:litosop u 1 %llu\n",u);
    u = u1 - uu2;
    printf("#2280:litosop u 2 %llu\n",u);
    u = u1 / uu2;
    printf("#2282:litosop u 3 %llu\n",u);
    u = u1 * uu2;
    printf("#2284:litosop u 4 %llu\n",u);
    u = u1 | uu2;
    printf("#2286:litosop u 5 %llu\n",u);
    u = u1 & uu2;
    printf("#2288:litosop u 6 %llu\n",u);
    u = u1 ^ uu2;
    printf("#2290:litosop u 7 %llu\n",u);
    uu2 = 3;
    u = u1 << uu2;
    printf("#2293:litosop u 8 %llu\n",u);
    u = u1 >> uu2;
    printf("#2295:litosop u 9 %llu\n",u);
    u = u1 % uu2;
    printf("#2297: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("#2310:loprtc 1 %lld\n",i);
    i = i1 - 3;
    printf("#2312:loprtc 2 %lld\n",i);
    i = i1 / 32323423423LL;
    printf("#2314:loprtc 3 %lld\n",i);
    i = i1 * 323423423423LL;
    printf("#2316:loprtc 4 %lld\n",i);
    i = i1 | 234234234;
    printf("#2318:loprtc 5 %lld\n",i);
    i = i1 & 23234234;
    printf("#2320:loprtc 6 %lld\n",i);
    i = i1 ^ 23234234;
    printf("#2322:loprtc 7 %lld\n",i);
    i = i1 << 5;
    printf("#2324:loprtc 8 %lld\n",i);
    i = i1 >> 5;
    printf("#2326:loprtc 9 %lld\n",i);
    i = i1 << 38;
    printf("#2328:loprtc 8 %lld\n",i);
    i = i1 >> 38;
    printf("#2330:loprtc 9 %lld\n",i);
    i = i1 % 5;
    printf("#2332:loprtc 10 %lld\n",i);
    i = i1 / 8;
    printf("#2334:loprtc 3 %lld\n",i);
    i = i1 / 256;
    printf("#2336:loprtc 3 %lld\n",i);
    i = i1 % 8;
    printf("#2338:loprtc 3 %lld\n",i);
    i = i1 % 256;
    printf("#2340:loprtc 3 %lld\n",i);
    i = i1 * 8;
    printf("#2342:loprtc 3 %lld\n",i);
    i = i1 * 256;
    printf("#2344:loprtc 3 %lld\n",i);

    u = u1 + 3;
    printf("#2347:loprtc 1 u %llu\n",u);
    u = u1 - 3;
    printf("#2349:loprtc 2 u %llu\n",u);
    u = u1 / 32342342344234LL;
    printf("#2351:loprtc 3 u %llu\n",u);
    u = u1 * 243234234232324LL;
    printf("#2353:loprtc 4 u %llu\n",u);
    u = u1 | 234234234;
    printf("#2355:loprtc 5 u %llu\n",u);
    u = u1 & 234234234;
    printf("#2357:loprtc 6 u %llu\n",u);
    u = u1 ^ 234234234;
    printf("#2359:loprtc 7 u %llu\n",u);
    u = u1 << 5;
    printf("#2361:loprtc 8 u %llu\n",u);
    u = u1 >> 5;
    printf("#2363:loprtc 9 u %llu\n",u);
    u = u1 << 38;
    printf("#2365:loprtc 8 u %llu\n",u);
    u = u1 >> 38;
    printf("#2367:loprtc 9 u %llu\n",u);
    u = u1 % 5;
    printf("#2369:loprtc 10 u %llu\n",u);
    u = u1 / 8;
    printf("#2371:loprtc 3 %lld\n",i);
    u = u1 / 256;
    printf("#2373:loprtc 3 %lld\n",i);
    u = u1 / 8;
    printf("#2375:loprtc 3 %lld\n",i);
    u = u1 / 256;
    printf("#2377:loprtc 3 %lld\n",i);
    u = u1 % 8;
    printf("#2379:loprtc 3 %lld\n",i);
    u = u1 % 256;
    printf("#2381:loprtc 3 %lld\n",i);
    u = u1 * 8;
    printf("#2383:loprtc 3 %lld\n",i);
    u = u1 * 256;
    printf("#2385: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("#2404:ltosop r 1 %lld\n",i);
    i = i1 - i2;
    printf("#2406:ltosop r 2 %lld\n",i);
    i = i1 / i2;
    printf("#2408:ltosop r 3 %lld\n",i);
    i = i1 * i2;
    printf("#2410:ltosop r 4 %lld\n",i);
    i = i1 | i2;
    printf("#2412:ltosop r 5 %lld\n",i);
    i = i1 & i2;
    printf("#2414:ltosop r 6 %lld\n",i);
    i = i1 ^ i2;
    printf("#2416:ltosop r 7 %lld\n",i);
    i2 = 3;
    i = i1 << i2;
    printf("#2419:ltosop r 8 %lld\n",i);
    i = i1 >> i2;
    printf("#2421:ltosop r 9 %lld\n",i);
    i = i1 % i2;
    printf("#2423:ltosop r 10 %lld\n",i);

    u = u1 + u2;
    printf("#2426:ltosop r u 1 %llu\n",u);
    u = u1 - u2;
    printf("#2428:ltosop r u 2 %llu\n",u);
    u = u1 / u2;
    printf("#2430:ltosop r u 3 %llu\n",u);
    u = u1 * u2;
    printf("#2432:ltosop r u 4 %llu\n",u);
    u = u1 | u2;
    printf("#2434:ltosop r u 5 %llu\n",u);
    u = u1 & u2;
    printf("#2436:ltosop r u 6 %llu\n",u);
    u = u1 ^ u2;
    printf("#2438:ltosop r u 7 %llu\n",u);
    u2 = 3;
    u = u1 << u2;
    printf("#2441:ltosop r u 8 %llu\n",u);
    u = u1 >> u2;
    printf("#2443:ltosop r u 9 %llu\n",u);
    u = u1 % u2;
    printf("#2445:ltosop r u 10 %llu\n",u);

    i = i1 + ii2;
    printf("#2448:litosop r 1 %lld\n",i);
    i = i1 - ii2;
    printf("#2450:litosop r 2 %lld\n",i);
    i = i1 / ii2;
    printf("#2452:litosop r 3 %lld\n",i);
    i = i1 * ii2;
    printf("#2454:litosop r 4 %lld\n",i);
    i = i1 | ii2;
    printf("#2456:litosop r 5 %lld\n",i);
    i = i1 & ii2;
    printf("#2458:litosop r 6 %lld\n",i);
    i = i1 ^ ii2;
    printf("#2460:litosop r 7 %lld\n",i);
    ii2 = 3;
    i = i1 << ii2;
    printf("#2463:litosop r 8 %lld\n",i);
    i = i1 >> ii2;
    printf("#2465:litosop r 9 %lld\n",i);
    i = i1 % ii2;
    printf("#2467:litosop r 10 %lld\n",i);

    u = u1 + uu2;
    printf("#2470:litosop r u 1 %llu\n",u);
    u = u1 - uu2;
    printf("#2472:litosop r u 2 %llu\n",u);
    u = u1 / uu2;
    printf("#2474:litosop r u 3 %llu\n",u);
    u = u1 * uu2;
    printf("#2476:litosop r u 4 %llu\n",u);
    u = u1 | uu2;
    printf("#2478:litosop r u 5 %llu\n",u);
    u = u1 & uu2;
    printf("#2480:litosop r u 6 %llu\n",u);
    u = u1 ^ uu2;
    printf("#2482:litosop r u 7 %llu\n",u);
    uu2 = 3;
    u = u1 << uu2;
    printf("#2485:litosop r u 8 %llu\n",u);
    u = u1 >> uu2;
    printf("#2487:litosop r u 9 %llu\n",u);
    u = u1 % uu2;
    printf("#2489: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("#2502:loprtc r 1 %lld\n",i);
    i = i1 - 3;
    printf("#2504:loprtc r 2 %lld\n",i);
    i = i1 / 32323423423LL;
    printf("#2506:loprtc r 3 %lld\n",i);
    i = i1 * 323423423423LL;
    printf("#2508:loprtc r 4 %lld\n",i);
    i = i1 | 234234234;
    printf("#2510:loprtc r 5 %lld\n",i);
    i = i1 & 23234234;
    printf("#2512:loprtc r 6 %lld\n",i);
    i = i1 ^ 23234234;
    printf("#2514:loprtc r 7 %lld\n",i);
    i = i1 << 5;
    printf("#2516:loprtc r 8 %lld\n",i);
    i = i1 >> 5;
    printf("#2518:loprtc r 9 %lld\n",i);
    i = i1 << 38;
    printf("#2520:loprtc r 8 %lld\n",i);
    i = i1 >> 38;
    printf("#2522:loprtc r 9 %lld\n",i);
    i = i1 % 5;
    printf("#2524:loprtc r 10 %lld\n",i);
    i = i1 / 8;
    printf("#2526:loprtc r 10 %lld\n",i);
    i = i1 / 256;
    printf("#2528:loprtc r 10 %lld\n",i);
    i = i1 * 8;
    printf("#2530:loprtc r 10 %lld\n",i);
    i = i1 * 256;
    printf("#2532:loprtc r 10 %lld\n",i);

    u = u1 + 3;
    printf("#2535:loprtc r 1 u %llu\n",u);
    u = u1 - 3;
    printf("#2537:loprtc r 2 u %llu\n",u);
    u = u1 / 32342342344234LL;
    printf("#2539:loprtc r 3 u %llu\n",u);
    u = u1 * 243234234232324LL;
    printf("#2541:loprtc r 4 u %llu\n",u);
    u = u1 | 234234234;
    printf("#2543:loprtc r 5 u %llu\n",u);
    u = u1 & 234234234;
    printf("#2545:loprtc r 6 u %llu\n",u);
    u = u1 ^ 234234234;
    printf("#2547:loprtc r 7 u %llu\n",u);
    u = u1 << 5;
    printf("#2549:loprtc r 8 u %llu\n",u);
    u = u1 >> 5;
    printf("#2551:loprtc r 9 u %llu\n",u);
    u = u1 << 38;
    printf("#2553:loprtc r 8 u %llu\n",u);
    u = u1 >> 38;
    printf("#2555:loprtc r 9 u %llu\n",u);
    u = u1 % 5;
    printf("#2557:loprtc r 10 u %llu\n",u);
    u = u1 / 8;
    printf("#2559:loprtc r 10 u %lld\n",u);
    u = u1 / 256;
    printf("#2561:loprtc r 10 u %lld\n",u);
    u = u1 * 8;
    printf("#2563:loprtc r 10 u %lld\n",u);
    u = u1 * 256;
    printf("#2565: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("#2577:code_i2ll %lld\n",d);
}
// code_i2ull(int creg)
INLINE void
code_i2ull()
{
    unsigned long long d;
    int i;
    i = 23442342;
    d = i;
    printf("#2587:code_i2ull %lld\n",d);
}
// code_u2ll(int creg)
INLINE void
code_u2ll()
{
    long long d;
    unsigned int i;
    i = 23442342;
    d = i;
    printf("#2597: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("#2607:code_u2ull %llu\n",d);
}
// code_ll2i(int creg)
INLINE void
code_ll2i()
{
    long long d;
    int i;
    d = 2342342342LL;
    i = d;
    printf("#2617:code_ll2i %d\n",i);
}
// code_ll2u(int creg)
INLINE void
code_ll2u()
{
    long long d;
    unsigned int i;
    d = 2342342342LL;
    i = d;
    printf("#2627:code_ll2i %ud\n",i);
}
// code_ull2i(int creg)
INLINE void
code_ull2i()
{
    unsigned long long d;
    int i;
    d = 2342342342LL;
    i = d;
    printf("#2637: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("#2647: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("#2658:code_d2ll %lld\n",d);
}
// code_d2ull(int creg)
INLINE void
code_d2ull()
{
    unsigned long long d;
    double i;
    i = 2342342342LL;
    d = i;
    printf("#2668:code_d2ll %llu\n",d);
}
// code_f2ll(int creg)
INLINE void
code_f2ll()
{
    long long d;
    float i;
    i = 2342342342LL;
    d = i;
    printf("#2678:code_f2ll %lld\n",d);
}
// code_f2ull(int creg)
INLINE void
code_f2ull()
{
    unsigned long long d;
    float i;
    i = 2342342342LL;
    d = i;
    printf("#2688:code_f2ull %llu\n",d);
}
// code_ll2d(int creg)
INLINE void
code_ll2d()
{
    long long d;
    double i;
    d = 2342342342LL;
    i = d;
    printf("#2698:code_ll2d %g\n",i);
}
// code_ll2f(int creg)
INLINE void
code_ll2f()
{
    long long d;
    float i;
    d = 2342342342LL;
    i = d;
    printf("#2708:code_ll2f %g\n",i);
}
// code_ull2d(int creg)
INLINE void
code_ull2d()
{
    long long d;
    double i;
    d = 2342342342LL;
    i = d;
    printf("#2718:code_ull2f %g\n",i);
}
// code_ull2f(int creg)
INLINE void
code_ull2f()
{
    long long d;
    float i;
    d = 2342342342LL;
    i = d;
    printf("#2728: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("#2738:code_preinc l %lld %lld",++i,--j);
    printf("#2739: %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("#2748:code_postinc l %lld %lld",i++,j--);
    printf("#2749: %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("#2758:code_preinc l %llu %llu",++i,--j);
    printf("#2759: %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("#2768:code_postinc lu %llu %llu",i++,j--);
    printf("#2769: %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("#2778:code_preinc l r %lld %lld",++i,--j);
    printf("#2779: %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("#2788:code_postinc l r %lld %lld",i++,j--);
    printf("#2789: %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("#2798:code_preinc l r %llu %llu",++i,--j);
    printf("#2799: %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("#2808:code_postinc lu r %llu %llu",i++,j--);
    printf("#2809: %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("#2825:code_register_lassop 1 %lld\n",i1);
    i1 -= a;
    printf("#2827:code_register_lassop 2 %lld\n",i1);
    i1 /= a;
    printf("#2829:code_register_lassop 3 %lld\n",i1);
    i1 *= a;
    printf("#2831:code_register_lassop 4 %lld\n",i1);
    i1 |= a;
    printf("#2833:code_register_lassop 5 %lld\n",i1);
    i1 &= a;
    printf("#2835:code_register_lassop 6 %lld\n",i1);
    i1 ^= a;
    printf("#2837:code_register_lassop 7 %lld\n",i1);
    i1 <<= a;
    printf("#2839:code_register_lassop 8 %lld\n",i1);
    i1 >>= a;
    printf("#2841:code_register_lassop 9 %lld\n",i1);

    ui1 += a;
    printf("#2844:code_register_lassop 1 %llu\n",ui1);
    ui1 -= a;
    printf("#2846:code_register_lassop 2 %llu\n",ui1);
    ui1 /= a;
    printf("#2848:code_register_lassop 3 %llu\n",ui1);
    ui1 *= a;
    printf("#2850:code_register_lassop 4 %llu\n",ui1);
    ui1 |= a;
    printf("#2852:code_register_lassop 5 %llu\n",ui1);
    ui1 &= a;
    printf("#2854:code_register_lassop 6 %llu\n",ui1);
    ui1 ^= a;
    printf("#2856:code_register_lassop 7 %llu\n",ui1);
    ui1 <<= a;
    printf("#2858:code_register_lassop 8 %llu\n",ui1);
    ui1 >>= a;
    printf("#2860: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("#2874:code_lassop 1 %lld\n",i1);
    i1 -= a;
    printf("#2876:code_lassop 2 %lld\n",i1);
    i1 /= a;
    printf("#2878:code_lassop 3 %lld\n",i1);
    i1 *= a;
    printf("#2880:code_lassop 4 %lld\n",i1);
    i1 |= a;
    printf("#2882:code_lassop 5 %lld\n",i1);
    i1 &= a;
    printf("#2884:code_lassop 6 %lld\n",i1);
    i1 ^= a;
    printf("#2886:code_lassop 7 %lld\n",i1);
    i1 <<= a;
    printf("#2888:code_lassop 8 %lld\n",i1);
    i1 >>= a;
    printf("#2890:code_lassop 9 %lld\n",i1);

    ui1 += a;
    printf("#2893:code_lassop 1 %llu\n",ui1);
    ui1 -= a;
    printf("#2895:code_lassop 2 %llu\n",ui1);
    ui1 /= a;
    printf("#2897:code_lassop 3 %llu\n",ui1);
    ui1 *= a;
    printf("#2899:code_lassop 4 %llu\n",ui1);
    ui1 |= a;
    printf("#2901:code_lassop 5 %llu\n",ui1);
    ui1 &= a;
    printf("#2903:code_lassop 6 %llu\n",ui1);
    ui1 ^= a;
    printf("#2905:code_lassop 7 %llu\n",ui1);
    ui1 <<= a;
    printf("#2907:code_lassop 8 %llu\n",ui1);
    ui1 >>= a;
    printf("#2909: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("#2922:code_register_lassop c 1 %lld\n",i1);
    i1 -= 3;
    printf("#2924:code_register_lassop c 2 %lld\n",i1);
    i1 /= 3;
    printf("#2926:code_register_lassop c 3 %lld\n",i1);
    i1 *= 3;
    printf("#2928:code_register_lassop c 4 %lld\n",i1);
    i1 |= 234;
    printf("#2930:code_register_lassop c 5 %lld\n",i1);
    i1 &= 2324234234234234LL;
    printf("#2932:code_register_lassop c 6 %lld\n",i1);
    i1 ^= 5523234234234234LL;
    printf("#2934:code_register_lassop c 7 %lld\n",i1);
    i1 <<= 3;
    printf("#2936:code_register_lassop c 8 %lld\n",i1);
    i1 >>= 3;
    printf("#2938:code_register_lassop c 9 %lld\n",i1);

    ui1 += 3;
    printf("#2941:code_register_lassop c 1 %llu\n",ui1);
    ui1 -= 3;
    printf("#2943:code_register_lassop c 2 %llu\n",ui1);
    ui1 /= 3;
    printf("#2945:code_register_lassop c 3 %llu\n",ui1);
    ui1 *= 3;
    printf("#2947:code_register_lassop c 4 %llu\n",ui1);
    ui1 |= 234;
    printf("#2949:code_register_lassop c 5 %llu\n",ui1);
    ui1 &= 2324234234234234LL;
    printf("#2951:code_register_lassop c 6 %llu\n",ui1);
    ui1 ^= 5523234234234234LL;
    printf("#2953:code_register_lassop c 7 %llu\n",ui1);
    ui1 <<= 3;
    printf("#2955:code_register_lassop c 8 %llu\n",ui1);
    ui1 >>= 3;
    printf("#2957: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("#2970:code_lassop c 1 %lld\n",i1);
    i1 -= 3;
    printf("#2972:code_lassop c 2 %lld\n",i1);
    i1 /= 3;
    printf("#2974:code_lassop c 3 %lld\n",i1);
    i1 *= 3;
    printf("#2976:code_lassop c 4 %lld\n",i1);
    i1 |= 234;
    printf("#2978:code_lassop c 5 %lld\n",i1);
    i1 &= 2324234234234234LL;
    printf("#2980:code_lassop c 6 %lld\n",i1);
    i1 ^= 5523234234234234LL;
    printf("#2982:code_lassop c 7 %lld\n",i1);
    i1 <<= 3;
    printf("#2984:code_lassop c 8 %lld\n",i1);
    i1 >>= 3;
    printf("#2986:code_lassop c 9 %lld\n",i1);

    ui1 += 3;
    printf("#2989:code_lassop c 1 %llu\n",ui1);
    ui1 -= 3;
    printf("#2991:code_lassop c 2 %llu\n",ui1);
    ui1 /= 3;
    printf("#2993:code_lassop c 3 %llu\n",ui1);
    ui1 *= 3;
    printf("#2995:code_lassop c 4 %llu\n",ui1);
    ui1 |= 234;
    printf("#2997:code_lassop c 5 %llu\n",ui1);
    ui1 &= 2324234234234234LL;
    printf("#2999:code_lassop c 6 %llu\n",ui1);
    ui1 ^= 5523234234234234LL;
    printf("#3001:code_lassop c 7 %llu\n",ui1);
    ui1 <<= 3;
    printf("#3003:code_lassop c 8 %llu\n",ui1);
    ui1 >>= 3;
    printf("#3005: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("#3022:lassop 1 %lld\n",p->i1);
    p->i1 -= a;
    printf("#3024:lassop 2 %lld\n",p->i1);
    p->i1 /= a;
    printf("#3026:lassop 3 %lld\n",p->i1);
    p->i1 *= a;
    printf("#3028:lassop 4 %lld\n",p->i1);
    p->i1 |= a;
    printf("#3030:lassop 5 %lld\n",p->i1);
    p->i1 &= a;
    printf("#3032:lassop 6 %lld\n",p->i1);
    p->i1 ^= a;
    printf("#3034:lassop 7 %lld\n",p->i1);
    p->i1 <<= a;
    printf("#3036:lassop 8 %lld\n",p->i1);
    p->i1 >>= a;
    printf("#3038:lassop 9 %lld\n",p->i1);

    p->ui1 += a;
    printf("#3041:lassop 1 %llu\n",p->ui1);
    p->ui1 -= a;
    printf("#3043:lassop 2 %llu\n",p->ui1);
    p->ui1 /= a;
    printf("#3045:lassop 3 %llu\n",p->ui1);
    p->ui1 *= a;
    printf("#3047:lassop 4 %llu\n",p->ui1);
    p->ui1 |= a;
    printf("#3049:lassop 5 %llu\n",p->ui1);
    p->ui1 &= a;
    printf("#3051:lassop 6 %llu\n",p->ui1);
    p->ui1 ^= a;
    printf("#3053:lassop 7 %llu\n",p->ui1);
    p->ui1 <<= a;
    printf("#3055:lassop 8 %llu\n",p->ui1);
    p->ui1 >>= a;
    printf("#3057: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("#3076:lassop 1 %lld\n",glp->i1);
    glp->i1 -= a;
    printf("#3078:lassop 2 %lld\n",glp->i1);
    glp->i1 /= a;
    printf("#3080:lassop 3 %lld\n",glp->i1);
    glp->i1 *= a;
    printf("#3082:lassop 4 %lld\n",glp->i1);
    glp->i1 |= a;
    printf("#3084:lassop 5 %lld\n",glp->i1);
    glp->i1 ^= a;
    printf("#3086:lassop 7 %lld\n",glp->i1);
    glp->i1 <<= a;
    printf("#3088:lassop 8 %lld\n",glp->i1);
    glp->i1 >>= a;
    printf("#3090:lassop 9 %lld\n",glp->i1);
    glp->i1 &= a;
    printf("#3092:lassop 6 %lld\n",glp->i1);

    glp->ui1 += a;
    printf("#3095:lassop 1 %llu\n",glp->ui1);
    glp->ui1 -= a;
    printf("#3097:lassop 2 %llu\n",glp->ui1);
    glp->ui1 /= a;
    printf("#3099:lassop 3 %llu\n",glp->ui1);
    glp->ui1 *= a;
    printf("#3101:lassop 4 %llu\n",glp->ui1);
    glp->ui1 |= a;
    printf("#3103:lassop 5 %llu\n",glp->ui1);
    glp->ui1 ^= a;
    printf("#3105:lassop 7 %llu\n",glp->ui1);
    glp->ui1 <<= a;
    printf("#3107:lassop 8 %llu\n",glp->ui1);
    glp->ui1 >>= a;
    printf("#3109:lassop 9 %llu\n",glp->ui1);
    glp->ui1 &= a;
    printf("#3111: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("#3124:lassop_gc 1 %lld\n",glp->i1);
    glp->i1 -= a;
    printf("#3126:lassop_gc 2 %lld\n",glp->i1);
    glp->i1 /= a;
    printf("#3128:lassop_gc 3 %lld\n",glp->i1);
    glp->i1 *= a;
    printf("#3130:lassop_gc 4 %lld\n",glp->i1);
    glp->i1 |= a;
    printf("#3132:lassop_gc 5 %lld\n",glp->i1);
    glp->i1 ^= a;
    printf("#3134:lassop_gc 7 %lld\n",glp->i1);
    glp->i1 <<= a;
    printf("#3136:lassop_gc 8 %lld\n",glp->i1);
    glp->i1 >>= a;
    printf("#3138:lassop_gc 9 %lld\n",glp->i1);
    glp->i1 &= a;
    printf("#3140:lassop_gc 6 %lld\n",glp->i1);

    glp->ui1 += a;
    printf("#3143:lassop_gc 1 %llu\n",glp->ui1);
    glp->ui1 -= a;
    printf("#3145:lassop_gc 2 %llu\n",glp->ui1);
    glp->ui1 /= a;
    printf("#3147:lassop_gc 3 %llu\n",glp->ui1);
    glp->ui1 *= a;
    printf("#3149:lassop_gc 4 %llu\n",glp->ui1);
    glp->ui1 |= a;
    printf("#3151:lassop_gc 5 %llu\n",glp->ui1);
    glp->ui1 ^= a;
    printf("#3153:lassop_gc 7 %llu\n",glp->ui1);
    glp->ui1 <<= a;
    printf("#3155:lassop_gc 8 %llu\n",glp->ui1);
    glp->ui1 >>= a;
    printf("#3157:lassop_gc 9 %llu\n",glp->ui1);
    glp->ui1 &= a;
    printf("#3159:lassop_gc 6 %llu\n",glp->ui1);
}


// code_lgt(int cond) 

INLINE void
code_lgt()
{
    long long reg;
    if (l0>l1)
	printf("#3170:code_lgt 1\n");
    else
	printf("#3172:code_lgt 0\n");
    for (reg=-3;reg<7;reg++) {
        if (0<reg && reg<3)
	   printf("#3175:reg=%lld code_lgt  0<reg && reg <3\n",reg);
    }
    for (reg=-3;reg<7;reg++) {
        if (-2<reg && reg<0)
	   printf("#3179: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("#3189:code_lugt 1\n");
    else
	printf("#3191:code_lugt 0\n");
    for (reg=0;reg<7;reg++) {
        if (2<reg && reg<4)
	   printf("#3194:reg=%llu code_lugt  2<reg && reg <4\n",reg);
    }
    for (reg=0;reg<7;reg++) {
        if (2<reg && reg<4)
	   printf("#3198: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("#3208:code_lge 1\n");
    else
	printf("#3210:code_lge 0\n");
    for (reg=-3;reg<7;reg++) {
        if (0<=reg && reg<=3)
	   printf("#3213:reg=%lld code_lge  0<=reg && reg <=3\n",reg);
    }
    for (reg=-3;reg<7;reg++) {
        if (-2<=reg && reg<=0)
	   printf("#3217: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("#3227:code_luge 1\n");
    else
	printf("#3229:code_luge 0\n");
    for (reg=0;reg<7;reg++) {
        if (2<reg && reg<4)
	   printf("#3232:reg=%llu code_luge  2<reg && reg <4\n",reg);
    }
    for (reg=0;reg<7;reg++) {
        if (2<reg && reg<4)
	   printf("#3236:reg=%llu code_luge  2<reg && reg <4\n",reg);
    }
}

// code_leq(int cond) 
INLINE void
code_leq()
{
    if (ul0==ul1)
	printf("#3245:code_leq 1\n");
    else
	printf("#3247:code_leq 0\n");
    if (l0!=l1)
	printf("#3249:code_lneq 1\n");
    else
	printf("#3251:code_lneq 0\n");
}

#if 0
INLINE void
code_lswitch()
{
    long long i;
    for(i=0;i<6;i++) {
	switch(i) {
	case 1: printf("#3261:code_lswitch 1 %d\n",i); break;
	case 2: printf("#3262:code_lswitch 2 %d\n",i); break;
	case 3: printf("#3263:code_lswitch 3 %d\n",i);
	case 4: printf("#3264:code_lswitch 4 %d\n",i); break;
	default: printf("#3265: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("#3280:code_switch 1 %d\n",i); break;
	case 2: printf("#3281:code_switch 2 %d\n",i); break;
	case 3: printf("#3282:code_switch 3 %d\n",i);
	case 4: printf("#3283:code_switch 4 %d\n",i); break;
        case 7:
	case 5: printf("#3285:code_switch 5 %d\n",i); break;
	case 6: printf("#3286:code_switch 6 %d\n",i); break;
	default: printf("#3287:code_switch d %d\n",i);
	}
    }
    for(i=0;i<10;i++) {
	switch(i) {
	case 1: printf("#3292:code_switch 1 %d\n",i); break;
	case 2: 
	    i = i* 100;
	    switch(i) {
	    case 100: printf("#3296:code_switch n 1 %d\n",i); break;
	    case 200: 
    for(i=-100;i<10;i++) {
	switch(i) {
	case 1234: printf("#3300:code_switch 1 nn %d\n",i); break;
	case 2233: printf("#3301:code_switch 2 nn %d\n",i); break;
	case 3333: printf("#3302:code_switch 3 nn %d\n",i);
        case -200: return;
	case -4: printf("#3304:code_switch 4 nn %d\n",i); break;
        case 733:
	case -5: printf("#3306:code_switch 5 nn %d\n",i); break;
	case -326: printf("#3307:code_switch 6 nn %d\n",i); 
	}
    }
	    case 300: printf("#3310:code_switch n 3 %d\n",i);
	    case 400: printf("#3311:code_switch n 4 %d\n",i); break;
	    case 700:
	    case 500: printf("#3313:code_switch n 5 %d\n",i); break;
	    case 600: printf("#3314:code_switch n 6 %d\n",i); break;
	    default: printf("#3315:code_switch n d %d\n",i);
	    }
	case 3: printf("#3317:code_switch 3 %d\n",i);
	case 4: printf("#3318:code_switch 4 %d\n",i); break;
        case 7:
	case 5: printf("#3320:code_switch 5 %d\n",i); break;
	case 6: printf("#3321:code_switch 6 %d\n",i); break;
	default: printf("#3322: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("#3336: cond_iii %d\n",k);
	printf("#3337: cond_iii %d\n",i==0? -8:8);
	k = i==0? i:j;
	printf("#3339: cond_iii %d\n",k);
	printf("#3340: 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("#3353: cond_ii0 %d\n",k);
	printf("#3354: cond_ii0 %d\n",i==0? -8:8);
	k = i==0? i:j;
	printf("#3356: cond_ii0 %d\n",k);
	printf("#3357: 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("#3370: cond_uuu %u\n",k);
	printf("#3371: cond_uuu %u\n",i==0? -8:8);
	k = i==0? i:j;
	printf("#3373: cond_uuu %u\n",k);
	printf("#3374: 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("#3387: cond_uii %d\n",k);
	printf("#3388: cond_uii %u\n",i==0? -8:8);
	k = i==0? i:j;
	printf("#3390: cond_uii %d\n",k);
	printf("#3391: 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("#3405: cond_fff %g\n",k);
	printf("#3406: cond_fff %g\n",i==0? -4.0:4.0);
	printf("#3407: cond_fff %g\n",(float)(i==0? -4:4));
	k = i==0? i:j;
	printf("#3409: cond_fff %g\n",k);
	printf("#3410: 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("#3423: cond_ddd %g\n",k);
	printf("#3424: cond_ddd %g\n",i==0? -4.0:4.0);
	printf("#3425: cond_ddd %g\n",(double)(i==0? -4:4));
	k = i==0? i:j;
	printf("#3427: cond_ddd %g\n",k);
	printf("#3428: cond_ddd %g\n",i==0? i:j);
    }
}

INLINE void
code_cond_float()
{
     int i=9;
     float f=(i>10) ? 4 : -4;
     printf("#3437:%f\n",f);
     i=10;
     f=(i>10) ? 4 : -4;
     printf("#3440:%f\n",f);
     i=11;
     f=(i>10) ? 4 : -4;
     printf("#3443:%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("#3458: cond_lll %lld\n",k);
	printf("#3459: cond_lll %lld\n",i==0? -4LL:4LL);
	printf("#3460: cond_lll %lld\n",(long long)(i==0? -4:4));
	k = i==0? i:j;
	printf("#3462: cond_lll %lld\n",k);
	printf("#3463: 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("#3476: cond_ulll %llu\n",k);
	printf("#3477: cond_ulll %llu\n",i==0? -4LL:4LL);
	printf("#3478: cond_ulll %llu\n",(unsigned long long)(i==0? -4:4));
	k = i==0? i:j;
	printf("#3480: cond_ulll %llu\n",k);
	printf("#3481: 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("#3494: cond_luu %lld\n",k);
	printf("#3495: cond_luu %lld\n",i==0? -4LL:4LL);
	printf("#3496: cond_luu %lld\n",(unsigned long long)(i==0? -4:4));
	k = i==0? i:j;
	printf("#3498: cond_luu %lld\n",k);
	printf("#3499: cond_luu %lld\n",i==0? i:j);
    }
}

#endif