changeset 495:b6c10a4c0367

*** empty log message ***
author kono
date Wed, 21 Dec 2005 23:29:41 +0900
parents 07fdc5bf5e96
children 5640fb7a270d
files Changes Makefile.mips mc-code-powerpc.c
diffstat 3 files changed, 135 insertions(+), 15 deletions(-) [+]
line wrap: on
line diff
--- a/Changes	Wed Dec 21 20:26:52 2005 +0900
+++ b/Changes	Wed Dec 21 23:29:41 2005 +0900
@@ -7446,3 +7446,4 @@
 
 来年は64bit version だな。
 
+今の実装でできるの?
--- a/Makefile.mips	Wed Dec 21 20:26:52 2005 +0900
+++ b/Makefile.mips	Wed Dec 21 23:29:41 2005 +0900
@@ -1,4 +1,4 @@
-CC = gcc
+# CC = gcc -std=c99
 # -O3
 CFLAGS = -g -Wall -I.
 # CFLAGS = -g -Wall -I. -pg -fprofile-arcs -ftest-coverage
@@ -31,6 +31,7 @@
 		mc-macro.c \
 		mc-parse.c mc-tree.c mc-switch.c mc-switch.h \
 		mc.h conv/c.c conv/c.h \
+		mc-inline.h mc-inline.c \
 		conv/conv.h conv/convdef.h conv/null.c
 
 mc-powerpc : mc-code-powerpc.o $(COMPLIB) $(CONVERTER)
@@ -45,15 +46,15 @@
 mc-arm : mc-code-arm.o $(COMPLIB) $(CONVERTER)
 	$(CC) $(LDFLAGS) -g mc-code-arm.o $(COMPLIB) $(CONVERTER) -o $@
 
-conv/conv.h: conv_func.tbl conv_func.pl
-	perl conv_func.pl
-conv/convdef.h: conv_func.tbl conv_func.pl
-	perl conv_func.pl
-conv/null.c: conv_func.tbl conv_func.pl
-	perl conv_func.pl
+conv/conv.h: conv_func.tbl tools/conv_func.pl
+	perl tools/conv_func.pl
+conv/convdef.h: conv_func.tbl tools/conv_func.pl
+	perl tools/conv_func.pl
+conv/null.c: conv_func.tbl tools/conv_func.pl
+	perl tools/conv_func.pl
 
 mc.h-new:
-	perl mc-h-renum.pl mc.h > mc.h.1
+	perl tools/mc-h-renum.pl mc.h > mc.h.1
 	mv mc.h.1 mc.h
 
 check-all:  check-all-c check-all-code
@@ -93,6 +94,8 @@
 	make check TARGET=test/cext
 	make check TARGET=test/const
 	make check TARGET=test/void_code
+	make check TARGET=test/inline
+	make check TARGET=test/putenemy
 #	make check TARGET=test/scope STDFLAG="-std=gnu99"
 #MK =-make
 MK=
@@ -104,11 +107,11 @@
 	make check-code$(MK) TARGET=test/fact
 	make check-code$(MK) TARGET=test/goto
 	make check-code$(MK) TARGET=test/test1
+	make check-code$(MK) TARGET=test/tmpa
 	make check-code$(MK) TARGET=test/tmp1
 	make check-code$(MK) TARGET=test/tmp2
 	make check-code$(MK) TARGET=test/tmp4
 	make check-code$(MK) TARGET=test/tmp6
-        make check-code$(MK) TARGET=test/tmpa
 	make check-code$(MK) TARGET=test/scope
 
 check-nkf:
@@ -120,26 +123,29 @@
 #	-./$(MC) -Itest/ -s $(TARGET).c
 
 check: $(MC) $(TARGET).c
-	-gcc $(CFLAGS1) $(STDFLAG) $(TARGET).c -o b.out $(MLIB)
+	-$(CC) $(CFLAGS1) $(STDFLAG) $(TARGET).c -o b.out $(MLIB)
 	-./b.out > $(TARGET).gcc.out
 	-./$(MC) -s $(TARGET).c
-	-gcc $(TARGET).s $(MLIB)
+	-$(CC) $(TARGET).s $(MLIB)
 	-./a.out > $(TARGET).$(MC).out
 	-diff $(TARGET).gcc.out $(TARGET).$(MC).out
 
 check-code: $(MC)
 	-./$(MC) -s $(TARGET).c
-	-gcc $(TARGET).s $(MLIB)
+	-$(CC) $(TARGET).s $(MLIB)
 	-./a.out > $(TARGET).$(MC).out
 	-diff  $(TARGET).code-out $(TARGET).$(MC).out
 check-code-make: $(MC)
 	-./$(MC) -s $(TARGET).c
-	-gcc $(TARGET).s $(MLIB)
+	-$(CC) $(TARGET).s $(MLIB)
 	-./a.out > $(TARGET).code-out
 
 test/code-gen-all.c: test/code-gen.pl test/code-gen.c
 	perl test/code-gen.pl < test/code-gen.c > test/code-gen-all.c
 
+incpri:
+	perl tools/incpri.pl test/*.c
+
 tags:   tags-$(ARCH)
 
 tags-$(ARCH):  
@@ -167,7 +173,7 @@
 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 mc-inline.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)
@@ -218,3 +224,116 @@
 	-diff b04.s b24.s
 
 
+# DO NOT DELETE
+
+mc-code-ia32.o: /usr/include/stdio.h /usr/include/features.h
+mc-code-ia32.o: /usr/include/sys/cdefs.h /usr/include/gnu/stubs.h
+mc-code-ia32.o: /usr/lib/gcc-lib/mipsEEel-linux/2.95.2/include/stddef.h
+mc-code-ia32.o: /usr/include/bits/types.h /usr/include/bits/pthreadtypes.h
+mc-code-ia32.o: /usr/include/bits/sched.h /usr/include/libio.h
+mc-code-ia32.o: /usr/include/_G_config.h /usr/include/wchar.h
+mc-code-ia32.o: /usr/include/bits/wchar.h /usr/include/gconv.h
+mc-code-ia32.o: /usr/lib/gcc-lib/mipsEEel-linux/2.95.2/include/stdarg.h
+mc-code-ia32.o: /usr/lib/gcc-lib/mipsEEel-linux/2.95.2/include/va-mips.h
+mc-code-ia32.o: /usr/include/bits/stdio_lim.h mc.h mc-parse.h mc-codegen.h
+mc-code-ia32.o: mc-code.h
+mc-codegen.o: /usr/include/stdio.h /usr/include/features.h
+mc-codegen.o: /usr/include/sys/cdefs.h /usr/include/gnu/stubs.h
+mc-codegen.o: /usr/lib/gcc-lib/mipsEEel-linux/2.95.2/include/stddef.h
+mc-codegen.o: /usr/include/bits/types.h /usr/include/bits/pthreadtypes.h
+mc-codegen.o: /usr/include/bits/sched.h /usr/include/libio.h
+mc-codegen.o: /usr/include/_G_config.h /usr/include/wchar.h
+mc-codegen.o: /usr/include/bits/wchar.h /usr/include/gconv.h
+mc-codegen.o: /usr/lib/gcc-lib/mipsEEel-linux/2.95.2/include/stdarg.h
+mc-codegen.o: /usr/lib/gcc-lib/mipsEEel-linux/2.95.2/include/va-mips.h
+mc-codegen.o: /usr/include/bits/stdio_lim.h mc.h mc-parse.h mc-codegen.h
+mc-codegen.o: mc-code.h mc-switch.h mc-inline.h
+mc-parse.o: /usr/include/stdio.h /usr/include/features.h
+mc-parse.o: /usr/include/sys/cdefs.h /usr/include/gnu/stubs.h
+mc-parse.o: /usr/lib/gcc-lib/mipsEEel-linux/2.95.2/include/stddef.h
+mc-parse.o: /usr/include/bits/types.h /usr/include/bits/pthreadtypes.h
+mc-parse.o: /usr/include/bits/sched.h /usr/include/libio.h
+mc-parse.o: /usr/include/_G_config.h /usr/include/wchar.h
+mc-parse.o: /usr/include/bits/wchar.h /usr/include/gconv.h
+mc-parse.o: /usr/lib/gcc-lib/mipsEEel-linux/2.95.2/include/stdarg.h
+mc-parse.o: /usr/lib/gcc-lib/mipsEEel-linux/2.95.2/include/va-mips.h
+mc-parse.o: /usr/include/bits/stdio_lim.h mc.h mc-parse.h mc-codegen.h
+mc-parse.o: mc-switch.h mc-macro.h mc-inline.h conv/conv.h
+mc-tree.o: /usr/include/stdio.h /usr/include/features.h
+mc-tree.o: /usr/include/sys/cdefs.h /usr/include/gnu/stubs.h
+mc-tree.o: /usr/lib/gcc-lib/mipsEEel-linux/2.95.2/include/stddef.h
+mc-tree.o: /usr/include/bits/types.h /usr/include/bits/pthreadtypes.h
+mc-tree.o: /usr/include/bits/sched.h /usr/include/libio.h
+mc-tree.o: /usr/include/_G_config.h /usr/include/wchar.h
+mc-tree.o: /usr/include/bits/wchar.h /usr/include/gconv.h
+mc-tree.o: /usr/lib/gcc-lib/mipsEEel-linux/2.95.2/include/stdarg.h
+mc-tree.o: /usr/lib/gcc-lib/mipsEEel-linux/2.95.2/include/va-mips.h
+mc-tree.o: /usr/include/bits/stdio_lim.h mc.h mc-parse.h
+mc-switch.o: /usr/include/stdio.h /usr/include/features.h
+mc-switch.o: /usr/include/sys/cdefs.h /usr/include/gnu/stubs.h
+mc-switch.o: /usr/lib/gcc-lib/mipsEEel-linux/2.95.2/include/stddef.h
+mc-switch.o: /usr/include/bits/types.h /usr/include/bits/pthreadtypes.h
+mc-switch.o: /usr/include/bits/sched.h /usr/include/libio.h
+mc-switch.o: /usr/include/_G_config.h /usr/include/wchar.h
+mc-switch.o: /usr/include/bits/wchar.h /usr/include/gconv.h
+mc-switch.o: /usr/lib/gcc-lib/mipsEEel-linux/2.95.2/include/stdarg.h
+mc-switch.o: /usr/lib/gcc-lib/mipsEEel-linux/2.95.2/include/va-mips.h
+mc-switch.o: /usr/include/bits/stdio_lim.h mc.h mc-parse.h mc-codegen.h
+mc-switch.o: mc-code.h
+mc-macro.o: /usr/include/stdio.h /usr/include/features.h
+mc-macro.o: /usr/include/sys/cdefs.h /usr/include/gnu/stubs.h
+mc-macro.o: /usr/lib/gcc-lib/mipsEEel-linux/2.95.2/include/stddef.h
+mc-macro.o: /usr/include/bits/types.h /usr/include/bits/pthreadtypes.h
+mc-macro.o: /usr/include/bits/sched.h /usr/include/libio.h
+mc-macro.o: /usr/include/_G_config.h /usr/include/wchar.h
+mc-macro.o: /usr/include/bits/wchar.h /usr/include/gconv.h
+mc-macro.o: /usr/lib/gcc-lib/mipsEEel-linux/2.95.2/include/stdarg.h
+mc-macro.o: /usr/lib/gcc-lib/mipsEEel-linux/2.95.2/include/va-mips.h
+mc-macro.o: /usr/include/bits/stdio_lim.h mc.h mc-parse.h mc-macro.h
+mc-macro.o: mc-codegen.h mc-code.h
+conv/c.o: /usr/include/stdio.h /usr/include/features.h
+conv/c.o: /usr/include/sys/cdefs.h /usr/include/gnu/stubs.h
+conv/c.o: /usr/lib/gcc-lib/mipsEEel-linux/2.95.2/include/stddef.h
+conv/c.o: /usr/include/bits/types.h /usr/include/bits/pthreadtypes.h
+conv/c.o: /usr/include/bits/sched.h /usr/include/libio.h
+conv/c.o: /usr/include/_G_config.h /usr/include/wchar.h
+conv/c.o: /usr/include/bits/wchar.h /usr/include/gconv.h
+conv/c.o: /usr/lib/gcc-lib/mipsEEel-linux/2.95.2/include/stdarg.h
+conv/c.o: /usr/lib/gcc-lib/mipsEEel-linux/2.95.2/include/va-mips.h
+conv/c.o: /usr/include/bits/stdio_lim.h mc.h mc-parse.h conv/conv.h
+conv/c.o: conv/convdef.h conv/c.h
+conv/c2cbc.o: mc.h
+conv/cbc2c.o: mc.h
+conv/null.o: /usr/include/stdio.h /usr/include/features.h
+conv/null.o: /usr/include/sys/cdefs.h /usr/include/gnu/stubs.h
+conv/null.o: /usr/lib/gcc-lib/mipsEEel-linux/2.95.2/include/stddef.h
+conv/null.o: /usr/include/bits/types.h /usr/include/bits/pthreadtypes.h
+conv/null.o: /usr/include/bits/sched.h /usr/include/libio.h
+conv/null.o: /usr/include/_G_config.h /usr/include/wchar.h
+conv/null.o: /usr/include/bits/wchar.h /usr/include/gconv.h
+conv/null.o: /usr/lib/gcc-lib/mipsEEel-linux/2.95.2/include/stdarg.h
+conv/null.o: /usr/lib/gcc-lib/mipsEEel-linux/2.95.2/include/va-mips.h
+conv/null.o: /usr/include/bits/stdio_lim.h mc.h mc-parse.h conv/conv.h
+conv/null.o: conv/convdef.h conv/null.h
+mc-code-powerpc.o: /usr/include/stdio.h /usr/include/features.h
+mc-code-powerpc.o: /usr/include/sys/cdefs.h /usr/include/gnu/stubs.h
+mc-code-powerpc.o: /usr/lib/gcc-lib/mipsEEel-linux/2.95.2/include/stddef.h
+mc-code-powerpc.o: /usr/include/bits/types.h /usr/include/bits/pthreadtypes.h
+mc-code-powerpc.o: /usr/include/bits/sched.h /usr/include/libio.h
+mc-code-powerpc.o: /usr/include/_G_config.h /usr/include/wchar.h
+mc-code-powerpc.o: /usr/include/bits/wchar.h /usr/include/gconv.h
+mc-code-powerpc.o: /usr/lib/gcc-lib/mipsEEel-linux/2.95.2/include/stdarg.h
+mc-code-powerpc.o: /usr/lib/gcc-lib/mipsEEel-linux/2.95.2/include/va-mips.h
+mc-code-powerpc.o: /usr/include/bits/stdio_lim.h mc.h mc-parse.h mc-code.h
+mc-code-powerpc.o: mc-codegen.h
+mc-code-mips.o: /usr/include/stdio.h /usr/include/features.h
+mc-code-mips.o: /usr/include/sys/cdefs.h /usr/include/gnu/stubs.h
+mc-code-mips.o: /usr/lib/gcc-lib/mipsEEel-linux/2.95.2/include/stddef.h
+mc-code-mips.o: /usr/include/bits/types.h /usr/include/bits/pthreadtypes.h
+mc-code-mips.o: /usr/include/bits/sched.h /usr/include/libio.h
+mc-code-mips.o: /usr/include/_G_config.h /usr/include/wchar.h
+mc-code-mips.o: /usr/include/bits/wchar.h /usr/include/gconv.h
+mc-code-mips.o: /usr/lib/gcc-lib/mipsEEel-linux/2.95.2/include/stdarg.h
+mc-code-mips.o: /usr/lib/gcc-lib/mipsEEel-linux/2.95.2/include/va-mips.h
+mc-code-mips.o: /usr/include/bits/stdio_lim.h mc.h mc-parse.h mc-code.h
+mc-code-mips.o: mc-codegen.h
--- a/mc-code-powerpc.c	Wed Dec 21 20:26:52 2005 +0900
+++ b/mc-code-powerpc.c	Wed Dec 21 23:29:41 2005 +0900
@@ -2121,7 +2121,7 @@
 			    INT,INT), arg_assign);
 		}
 	    }
-	    if (dots && freg_arg>=4 && freg_arg<MAX_INPUT_DREGISTER_VAR) { 
+	    if (dots && freg_arg>=3 && freg_arg<MAX_INPUT_DREGISTER_VAR) { 
 		/* oh my god! 
                    it requires integer register and floating register and
                    stack value. You are crazy.