Mercurial > hg > CbC > old > device
changeset 218:2d64e82437d2
*** empty log message ***
author | kono |
---|---|
date | Sat, 24 Apr 2004 21:56:53 +0900 |
parents | a4d3818f5353 |
children | 6190d24e178c |
files | .gdbinit mc-code-powerpc.c mc-code.h mc-codegen.c |
diffstat | 4 files changed, 20 insertions(+), 19 deletions(-) [+] |
line wrap: on
line diff
--- a/.gdbinit Sat Apr 24 21:44:50 2004 +0900 +++ b/.gdbinit Sat Apr 24 21:56:53 2004 +0900 @@ -1,7 +1,7 @@ tb main -run -s -ob00.s test/int.c +# run -s -ob00.s test/int.c # run -s -ob00.s mc-parse.c -# run -s -Itest/ test/code-gen-all.c +run -s -Itest/ test/code-gen-all.c define regs printf "pc =%08x lr =%08x r0 =%08x r1 =%08x r3= %08x r4= %08x\n",$pc,$lr,$r0,$r1,$r3,$r4 printf "r10=%08x r11=%08x r12=%08x r13=%08x r14=%08x r15=%08x\n",$r10,$r11,$r12,$r13,$r14,$r15
--- a/mc-code-powerpc.c Sat Apr 24 21:44:50 2004 +0900 +++ b/mc-code-powerpc.c Sat Apr 24 21:56:53 2004 +0900 @@ -3427,6 +3427,7 @@ } #if FLOAT_CODE +#if 0 static int d2ll_lib_used=0; static char *d2ll_lib[] = { }; @@ -3450,6 +3451,7 @@ static int ll2f_lib_used=0; static char *ll2f_lib[] = { }; +#endif #endif @@ -3660,7 +3662,7 @@ grn = register_name(greg); printf("\tsrwi %s,%s,%d\n",grn,crn_h,32-v); printf("\tslwi %s,%s,%d\n",crn_l,crn_l,v); - printf("\tor %s,%s,%d\n",crn_l,grn,crn_l); + printf("\tor %s,%s,%s\n",crn_l,grn,crn_l); printf("\tslwi %s,%s,%d\n",crn_h,crn_h,v); free_register(greg); return; @@ -3678,7 +3680,7 @@ grn = register_name(greg); printf("\tslwi %s,%s,%d\n",grn,crn_l,32-v); printf("\tsrwi %s,%s,%d\n",crn_l,crn_h,v); - printf("\tor %s,%s,%d\n",crn_h,grn,crn_h); + printf("\tor %s,%s,%s\n",crn_h,grn,crn_h); printf("\tsrwi %s,%s,%d\n",crn_l,crn_l,v); free_register(greg); return; @@ -3724,7 +3726,7 @@ char *crn,*crn_h,*crn_l; int creg0; crn = register_name(creg); - creg = use_lognlong(creg0=creg); + creg = use_longlong(creg0=creg); crn_h = lregister_name_high(creg); crn_l = lregister_name_low(creg); if (creg0!=regv_l(creg)) @@ -3744,7 +3746,7 @@ int creg0; char *crn,*crn_h,*crn_l; crn = register_name(creg); - creg = use_lognlong(creg0=creg); + creg = use_longlong(creg0=creg); crn_h = lregister_name_high(creg); crn_l = lregister_name_low(creg); if (creg0!=regv_l(creg)) @@ -3761,10 +3763,11 @@ void code_ll2i(int creg) { - char *crn = lregister_name_low(creg); + int creg0; + char *crn_l = lregister_name_low(creg); creg = use_int(creg0=creg); if (creg!=regv_l(creg0)) - printf("\tmr %s,%s\n",crn,crn_l); + printf("\tmr %s,%s\n",register_name(creg),crn_l); } void @@ -3791,7 +3794,7 @@ code_d2ll(int creg) { // fixdfdi$stub - set_freg(RET_DREGISTER,1); + set_freg(RET_FREGISTER,1); extern_conv("_fixdfdi"); set_lreg(RET_LREGISTER,0); } @@ -3799,7 +3802,7 @@ void code_d2ull(int creg) { - set_freg(RET_DREGISTER,1); + set_freg(RET_FREGISTER,1); extern_conv("_fixunsdfdi"); set_lreg(RET_LREGISTER,0); } @@ -3807,7 +3810,7 @@ void code_f2ll(int creg) { - set_freg(RET_DREGISTER,1); + set_freg(RET_FREGISTER,1); extern_conv("_fixdfdi"); set_lreg(RET_LREGISTER,0); } @@ -3815,7 +3818,7 @@ void code_f2ull(int creg) { - set_freg(RET_DREGISTER,1); + set_freg(RET_FREGISTER,1); extern_conv("_fixsfdi"); set_lreg(RET_LREGISTER,0); } @@ -3825,7 +3828,7 @@ { set_lreg(RET_LREGISTER,1); extern_conv("_floatdidf"); - set_freg(RET_DREGISTER,0); + set_freg(RET_FREGISTER,0); } @@ -3834,7 +3837,7 @@ { set_lreg(RET_LREGISTER,1); extern_conv("_floatdisf"); - set_freg(RET_DREGISTER,0); + set_freg(RET_FREGISTER,0); } void @@ -4002,7 +4005,7 @@ if (i2d_lib_used) emit_lib(i2d_lib); #endif #if LONGLONG_CODE - if (asld_lib_used) emit_lib(d2u_lib); + if (asld_lib_used) emit_lib(asld_lib); if (lumod_lib_used) emit_lib(lumod_lib); if (lmod_lib_used) emit_lib(lmod_lib); if (ludiv_lib_used) emit_lib(ludiv_lib); @@ -4010,6 +4013,7 @@ if (lsrd_lib_used) emit_lib(lsrd_lib); if (asrd_lib_used) emit_lib(asrd_lib); #if FLOAT_CODE +#if 0 if (dl2ll_lib_used) emit_lib(dl2ll_lib); if (d2ull_lib_used) emit_lib(d2ull_lib); if (f2ll_lib_used) emit_lib(f2ll_lib); @@ -4018,6 +4022,7 @@ if (ll2f_lib_used) emit_lib(ll2f_lib); #endif #endif +#endif global_table(); /* printf("\t.ident \"Micro-C compiled\"\n"); */ }
--- a/mc-code.h Sat Apr 24 21:44:50 2004 +0900 +++ b/mc-code.h Sat Apr 24 21:56:53 2004 +0900 @@ -188,8 +188,6 @@ extern void code_ll2f(int creg); extern void code_ull2d(int creg); extern void code_ull2f(int creg); -extern void code_ull2ll(int creg); -extern void code_ull2ull(int creg); #endif
--- a/mc-codegen.c Sat Apr 24 21:44:50 2004 +0900 +++ b/mc-codegen.c Sat Apr 24 21:56:53 2004 +0900 @@ -313,8 +313,6 @@ case LL2F: code_ll2f(creg); return FLOAT; case ULL2D: code_ull2d(creg); return DOUBLE; case ULL2F: code_ull2f(creg); return FLOAT; - case ULL2LL: code_ull2ll(creg); return LONGLONG; - case ULL2ULL: code_ull2ull(creg); return ULONGLONG; #endif #endif