Steve Tell fixed a nested for-loop bug in the PIC Port
[fw/sdcc] / src / regression / Makefile
index eb1b16c134020e187e5b21f28281537930f0c197..9cf8dae670fbda289c2e33fa7f6950c040d1f59a 100644 (file)
@@ -1,5 +1,10 @@
 # Regression testing Makefile for Pic Port of SDCC
 #
+# note that this regression suite was started before
+# the one in sdcc/regression. The regression suite in
+# sdcc/regression is better suited for testing mature
+# ports.
+#
 # GPL'd
 #
 # T. Scott Dattalo scott@dattalo.com
@@ -42,6 +47,8 @@
 
 CC = ../../bin/sdcc
 
+HEADER=/usr/local/share/gpasm/header
+
 .SUFFIXES: .asm .c .cod .stc
 
 # Results of the test are placed here:
@@ -56,15 +63,35 @@ SIMULATE = simulate
 # List the C files to be test here:
 SRC = b.c \
        add.c \
+       add2.c \
+       add3.c \
+       and1.c \
        bool1.c \
+       bool2.c \
+       bool3.c \
        call1.c \
        compare.c \
        compare2.c \
        compare3.c \
+       compare4.c \
+       compare5.c \
+       compare6.c \
        for.c \
+       nestfor.c \
+       or1.c \
+       rotate1.c \
+       rotate2.c \
+       rotate3.c \
+       rotate4.c \
+       rotate5.c \
        struct1.c \
        sub.c \
-       while.c
+       sub2.c \
+       switch1.c \
+       while.c \
+       xor.c
+
+#      mul1.c \
 
 COD := $(patsubst %.c, %.cod, $(SRC))
 ASM := $(patsubst %.c, %.asm, $(SRC))
@@ -75,16 +102,17 @@ all:       test
 
 # The asm files are generated by sdcc
 .c.asm:
-       $(CC) -mpic14 -c $*.c
+       $(CC) -mpic14 -S $*.c
 
 # The .cod files are generated by gpasm
 # these get loaded by gpsim.
 .asm.cod:
-       gpasm $*.asm
+       gpasm -c -I $(HEADER) $*.asm
 
 # The .stc files are script files for gpsim
 .cod.stc:
        ./$(CREATESTC) $*.cod $*.stc
+       ./$(SIMULATE) $*.stc $(LOGFILE)
 
 # this will also make .stc files
 #%.stc : %.cod
@@ -100,12 +128,6 @@ asm : $(ASM)
 stc : $(STC)
 
 test:  $(STC)
-       if [ -n "$(STC)" ]; then \
-       stcfiles="$(STC)" ; \
-       for f in $$stcfiles ; do \
-         ./$(SIMULATE) $$f $(LOGFILE); \
-       done ; \
-       fi
        echo "Done - Results are in $(LOGFILE)"
 
 cleancod: