Mercurial > hg > CbC > old > device
comparison mc-code-ia32.c @ 840:1547193bddde
minor fix
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Sat, 04 Dec 2010 13:02:51 +0900 |
parents | 425768eb5e9e |
children | c005a392e27e |
comparison
equal
deleted
inserted
replaced
839:aed9be3c8b78 | 840:1547193bddde |
---|---|
3645 } | 3645 } |
3646 } | 3646 } |
3647 | 3647 |
3648 void code_cmp_lregister(int reg,int label,int cond) | 3648 void code_cmp_lregister(int reg,int label,int cond) |
3649 { | 3649 { |
3650 char *crn; | 3650 use_longlong(reg); |
3651 use_int(reg); | 3651 if (reg==REG_L) { |
3652 crn = register_name(reg,0); | 3652 char *crn; |
3653 printf("\tmovl %%esi,%s\n",crn); | 3653 reg = get_register(); |
3654 printf("\torl %%edi,%s\n",crn); | 3654 crn = register_name(reg,0); |
3655 printf("\ttestl %s,%s\n",crn,crn); | 3655 printf("\tmovl %%esi,%s\n",crn); |
3656 printf("\torl %%edi,%s\n",crn); | |
3657 printf("\ttestl %s,%s\n",crn,crn); | |
3658 free_register(reg); | |
3659 } else { | |
3660 printf("\torl %s,%s\n",l_edx(reg),l_eax(reg)); | |
3661 printf("\ttestl %s,%s\n",l_eax(reg),l_eax(reg)); | |
3662 } | |
3656 jcond(label,cond); | 3663 jcond(label,cond); |
3657 } | 3664 } |
3658 | 3665 |
3659 void code_cmp_lrgvar(int e1,int e2,int label,int cond) | 3666 void code_cmp_lrgvar(int e1,int e2,int label,int cond) |
3660 { | 3667 { |