BUGFIX - CPI off by a factor of 10 X
[yari.git] / testcases / Makefile
blobfc08fec30560a293bc30e701b3968e59d7003946
1 #mips-elf-gcc -Tmymips.ld -msoft-float $< -o $@
3 HEAD=# | head -2048
4 SIM=../yarisim/sim
5 OBJDUMP_FLAGS=-S -D -M reg-names=numeric
6 TINYMON=../firmware/tinymon-prom
7 PROG=showtime
8 VERB=--verb
10 all: cosim
12 working: hw.txt sieve.txt fib.txt lievaart2.txt
14 # testall.data testicache.data testeret-prom.data \
15 # gdbstub-prom.data showtime.mips letters.mips sramtester.mips
17 broken: stalls.mif \
18 fail.mips test0.data test1.data testlwsw.data sieve.data sieve.mif \
19 serialout_nowait.mif muldiv.mif # monitor.mif tests.data
21 try0: test0.mips $(SIM)
22 $(SIM) --elf --simple --verb test0.mips
24 #%.o: %.c
25 # mips-elf-gcc -msoft-float -Tmymips.ld -g -O $< -o $@
27 promote: $(PROG)-prom.data $(PROG)-prom.mif
28 cp $(PROG)-prom.data ../rtl/initmem.data
29 cp $(PROG)-prom.mif ../rtl/initmem.mif
31 gdbstub-prom.mips: ../gdbstub/gdbstub.mips
32 cp ../gdbstub/gdbstub.mips gdbstub-prom.mips
34 %-prom.mips: %.o
35 mips-elf-ld -Tprom.ld $< -o $@
37 %-prom.data: %-prom.mips %-prom.mif $(SIM)
38 $(SIM) --data $< > $@
40 bootloader.mips: bootloader.o
41 mips-elf-ld -Tprom.ld $< -o $@
42 -mips-elf-objdump $(OBJDUMP_FLAGS) $@ > $(basename $@).dis
43 mips-elf-nm $@ | sort > $(basename $@).nm
45 bootloader.data: bootloader.mips $(SIM)
46 $(SIM) --data $< > $@
48 spinscreen.mips: spinscreen.o
49 mips-elf-ld -Tprom.ld $< -o $@
50 -mips-elf-objdump $(OBJDUMP_FLAGS) $@ > $(basename $@).dis
52 sramtester.mips: sramtester.o
53 mips-elf-ld -Tsram.ld $< -o $@
54 -mips-elf-objdump $(OBJDUMP_FLAGS) $@ > $(basename $@).dis
56 spinscreen.data: spinscreen.mips $(SIM)
57 $(SIM) --data $< > $@
59 testall.mips: testall.o
60 mips-elf-ld -Tsram.ld testall.o -o $@
62 testall-prom.mips: testall.o
63 mips-elf-ld -Tprom.ld $< -o $@
65 testall-prom.data: testall-prom.mips $(SIM)
66 $(SIM) --data $< > $@
68 testicache.mips: testicache.o
69 mips-elf-ld -Tsram.ld testicache.o -o $@
71 testicache-prom.mips: testicache.o
72 mips-elf-ld -Tprom.ld $< -o $@
74 testicache-prom.data: testicache-prom.mips $(SIM)
75 $(SIM) --data $< > $@
77 # cpp $< > $(basename $<).s DON'T DO THIS!!! IT BREAKS TERRIBLY WHEN THE DIRECTORY IS SMB :-(
78 %.o: %.S
79 gcc -E $< > $(basename $<)._s
80 mips-elf-as $(basename $<)._s -o $@
82 # I think this might be causing trouble because the files are on a samba file system
83 #%.o: %.s
84 # mips-elf-as $< -o $@
86 %.o: %.c stdio.h
87 mips-elf-gcc -fno-builtin -I. -DSTANDALONE -msoft-float -g -O -c $< -o $@
89 .PRECIOUS: %.dis %.mips %.data %.mif
91 %.dis: %.mips
92 -mips-elf-objdump $(OBJDUMP_FLAGS) $< > $@
94 crt0.o: crt0.S
96 %.mips: %.o Makefile crt0.o
97 mips-elf-ld -Tsram.ld crt0.o $< -o $@
98 -mips-elf-objdump -d -M reg-names=numeric $@ > $(basename $@).dis
99 -mips-elf-nm $@ | sort > $(basename $@).nm
101 %.mif: %.mips $(SIM)
102 -$(SIM) --mif $< > $@
104 %.data: %.mips $(SIM)
105 -$(SIM) --data $< $(HEAD) > $@
107 #%.data: %.mips %.dis %.mif bootloader.data
108 # -$(SIM) --data $< $(HEAD) > $@
110 show: test0.mips
111 mips-elf-objdump -D test0.mips
113 muldiv.mips: muldiv.c
114 mips-elf-gcc -DSTANDALONE -msoft-float -O -c muldiv.c
115 mips-elf-ld -Tstandalone.ld muldiv.o -o muldiv.mips
117 hello.mips: hello.c
118 mips-elf-gcc -DSTANDALONE -msoft-float -O -c hello.c
119 mips-elf-ld -Tstandalone.ld hello.o -o hello.mips
121 hello2.mips: hello2.c
122 mips-elf-gcc -DSTANDALONE -msoft-float -O -c hello2.c
123 mips-elf-ld -Tstandalone.ld hello2.o -o hello2.mips
125 testshifts.mips: testshifts.c
126 mips-elf-gcc -DSTANDALONE -msoft-float -O -c testshifts.c
127 mips-elf-ld -Tstandalone.ld testshifts.o -o testshifts.mips
129 stalls.mips: stalls.c
130 mips-elf-gcc -DSTANDALONE -msoft-float -O -c stalls.c
131 mips-elf-ld -Tstandalone.ld stalls.o -o stalls.mips
133 testvga.mips: testvga.c
134 mips-elf-gcc -DSTANDALONE -msoft-float -O -c testvga.c
135 mips-elf-ld -Tstandalone.ld testvga.o -o testvga.mips
137 testifsram.mips: testifsram.c
138 mips-elf-gcc -DSTANDALONE -msoft-float -O -c testifsram.c
139 mips-elf-ld -Tstandalone.ld testifsram.o -o testifsram.mips
141 sermon.mips: sermon.c
142 mips-elf-gcc -DSTANDALONE -msoft-float -O -c sermon.c
143 mips-elf-ld -Tstandalone.ld sermon.o -o sermon.mips
145 #memorytester.mips: memorytester.c
146 # mips-elf-gcc -DSTANDALONE -msoft-float -O -c memorytester.c
147 # mips-elf-ld -Tstandalone.ld memorytester.o -o memorytester.mips
149 #$(SIM) --simp sieve.mips
150 #make sieve.data
151 #$(SIM) --simp --verb sieve.mips > sieve.trace
153 %.txt: %.mips $(SIM)
154 $(SIM) --tiny $< > $@
156 hw2.mips: hw2.S
157 mips-elf-gcc -DSTANDALONE -msoft-float -O -c hw2.S
158 mips-elf-ld -Tsram.ld hw2.o -o hw2.mips
160 rtlsim: $(PROG).txt $(PROG).data $(TINYMON).data
161 grep -A99999 ^e $< > ../rtl/target/Icarus/input.txt
162 make -C ../rtl/target/Icarus TESTPROG=../$(TINYMON).data SRAM_INIT=../../../testcases/$(PROG) simulate
164 isasim: $(PROG).txt $(SIM) $(TINYMON).mips
165 grep -A99999 ^e $< > input.txt
166 make -C ../yarisim FLAGS="-i ../testcases/input.txt "$(VERB) FIRMWARE=$(TINYMON).mips TESTPROG=../testcases/$(PROG).mips run
168 cosim: $(PROG).txt $(PROG).data $(SIM) $(TINYMON).mips $(TINYMON).data
169 grep -A99999 ^e $< > ../rtl/target/Icarus/input.txt
170 grep -A99999 ^e $< > input.txt
171 make -C ../rtl/target/Icarus TESTPROG=../$(TINYMON).data SRAM_INIT=../../../testcases/$(PROG) simulate | \
172 make -C ../yarisim FLAGS="-i ../testcases/input.txt --cosim $(VERB)" FIRMWARE=$(TINYMON).mips TESTPROG=../testcases/$(PROG).mips run
174 $(SIM):
175 make -C ../yarisim
177 $(TINYMON).mips:
178 make -C ../firmware
180 $(TINYMON).data:
181 make -C ../firmware
183 clean:
184 -rm *.o *._s *.mips *.txt *.dis *.nm
186 realclean: clean
187 -rm *~ a.out *.mif *.data *.s