# HG changeset patch # User kono # Date 1131453860 -32400 # Node ID 034436187add0e82c99baae996261198ec41c260 # Parent ec4046c9d34fa5c7d7b263347fce9c95dc6b0ebc *** empty log message *** diff -r ec4046c9d34f -r 034436187add Makefile.linuxzaurus --- a/Makefile.linuxzaurus Tue Nov 08 21:21:57 2005 +0900 +++ b/Makefile.linuxzaurus Tue Nov 08 21:44:20 2005 +0900 @@ -15,7 +15,7 @@ PRINTF= # printf.c CONVERTER=conv/c.o conv/null.o # conv/c2cbc.o conv/cbc2c.o -COMPLIB = mc-parse.o mc-codegen.o mc-switch.o mc-macro.o mc-tree.o +COMPLIB = mc-parse.o mc-codegen.o mc-switch.o mc-macro.o mc-tree.o mc-inline.o # CODE=mc-code-ia32.c CODE=mc-code-$(ARCH).c # @@ -163,11 +163,11 @@ clean : -rm -f mc mc-ia32 mc-powerpc mc-mips mc-arm *.bak *.s *.o *.cc mc mc1 mc2 a.out *~ core* */*.o *.bak test/*.s test/*.cc test/*.o test/*.bak test/*~ conv/*.s conv/*.cc conv/*.o conv/*.bak conv/*~ *.out */*.out *.i */*.i -mc1 : b00.s b01.s mc-codegen.o mc-tree.o mc-switch.o mc-macro.o $(CONVERTER) - $(CC) -g -o $@ $(PRINTF) b00.s b01.s mc-codegen.o mc-tree.o mc-switch.o mc-macro.o $(CONVERTER) +mc1 : b00.s b01.s mc-codegen.o mc-tree.o mc-switch.o mc-macro.o mc-inline.o $(CONVERTER) + $(CC) -g -o $@ $(PRINTF) b00.s b01.s mc-codegen.o mc-tree.o mc-switch.o mc-macro.o mc-inline.o $(CONVERTER) -mc2 : b00.s b01.s b02.s b03.s mc-macro.o $(CONVERTER) - $(CC) -g -o $@ $(PRINTF) b00.s b01.s b02.s b03.s b04.s mc-macro.o $(CONVERTER) +mc2 : b00.s b01.s b02.s b03.s mc-macro.o mc-inline.o $(CONVERTER) + $(CC) -g -o $@ $(PRINTF) b00.s b01.s b02.s b03.s b04.s mc-macro.o mc-inline.o $(CONVERTER) b00.s : mc-parse.c $(MC) ./$(MC) -s -ob00.s mc-parse.c diff -r ec4046c9d34f -r 034436187add Makefile.mips --- a/Makefile.mips Tue Nov 08 21:21:57 2005 +0900 +++ b/Makefile.mips Tue Nov 08 21:44:20 2005 +0900 @@ -163,11 +163,11 @@ clean : -rm -f mc mc-ia32 mc-powerpc mc-mips mc-arm *.bak *.s *.o *.cc mc mc1 mc2 a.out *~ core* */*.o *.bak test/*.s test/*.cc test/*.o test/*.bak test/*~ conv/*.s conv/*.cc conv/*.o conv/*.bak conv/*~ *.out */*.out *.i */*.i -mc1 : b00.s b01.s mc-codegen.o mc-tree.o mc-switch.o mc-macro.o $(CONVERTER) - $(CC) -g -o $@ $(PRINTF) b00.s b01.s mc-codegen.o mc-tree.o mc-switch.o mc-macro.o $(CONVERTER) +mc1 : b00.s b01.s mc-codegen.o mc-tree.o mc-switch.o mc-macro.o mc-inline.o $(CONVERTER) + $(CC) -g -o $@ $(PRINTF) b00.s b01.s mc-codegen.o mc-tree.o mc-switch.o mc-macro.o mc-inline.o $(CONVERTER) -mc2 : b00.s b01.s b02.s b03.s mc-macro.o $(CONVERTER) - $(CC) -g -o $@ $(PRINTF) b00.s b01.s b02.s b03.s b04.s mc-macro.o $(CONVERTER) +mc2 : b00.s b01.s b02.s b03.s mc-macro.o mc-inline.o $(CONVERTER) + $(CC) -g -o $@ $(PRINTF) b00.s b01.s b02.s b03.s b04.s mc-macro.o mc-inline.o $(CONVERTER) b00.s : mc-parse.c $(MC) ./$(MC) -s -ob00.s mc-parse.c diff -r ec4046c9d34f -r 034436187add mc-code-ia32.c --- a/mc-code-ia32.c Tue Nov 08 21:21:57 2005 +0900 +++ b/mc-code-ia32.c Tue Nov 08 21:44:20 2005 +0900 @@ -1138,7 +1138,9 @@ printf("\tpopl %%edi\n"); printf("\tpopl %%esi\n"); if(length%4) { - emit_copy(from,to,length,offset+length/SIZE_OF_INT,0,det); + offset = offset+length/SIZE_OF_INT; + length=length%4; + emit_copy(from,to,length,offset,0,det); } } else { printf("\tmovl $%d,%%ecx\n",length/4); @@ -1147,7 +1149,9 @@ printf("\tpopl %%edi\n"); printf("\tpopl %%esi\n"); if(length%4) { - emit_copy(from,to,length,offset+length/SIZE_OF_INT,0,det); + offset = offset+length/SIZE_OF_INT; + length=length%4; + emit_copy(from,to,length,offset,0,det); } } }