xref: /XiangShan/debug/Makefile (revision 3802dba502b91d813c1e563035b876c4e6288166)
1ARCH = ARCH=riscv64-noop
2NANOS_HOME ?= $(AM_HOME)/../nanos-lite
3SINGLETEST = ALL=min3
4
5B ?= 0
6E ?= 0
7V ?= OFF
8#V ?= OFF
9EMU_ARGS = B=$(B) E=$(E) V=$(V)
10
11# ------------------------------------------------------------------
12# bulid CPU and run dummy test
13# ------------------------------------------------------------------
14
15cache:
16	$(MAKE) -C $(AM_HOME)/tests/cachetest $(ARCH) ALL=loader $(EMU_ARGS) run
17	#2>&1 | tee > loader.log
18	#2>&1 | tee > loader.log
19
20cpu:
21	$(MAKE) -C $(AM_HOME)/tests/cputest $(ARCH) ALL=dummy $(EMU_ARGS) run 2>&1
22
23# ------------------------------------------------------------------
24# run different test sets
25# ------------------------------------------------------------------
26
27cputest:
28	bash cputest.sh
29
30# bputest:
31# 	$(MAKE) -C $(AM_HOME)/tests/bputest $(ARCH) run 2>&1 | tee > bpu.log
32# 	cat bpu.log | grep different
33bputest:
34	$(MAKE) -C $(AM_HOME)/tests/bputest $(ARCH) run 2 > bpu.log
35	cat bpu.log | grep Mbp
36
37amtest:
38	$(MAKE) -C $(AM_HOME)/tests/cputest $(ARCH) $(SINGLETEST) run 2 > test.log
39	cat test.log | grep different
40	cat test.log | grep ISU > isu.log
41
42microbench:
43	$(MAKE) -C $(AM_HOME)/apps/microbench $(ARCH) $(EMU_ARGS) mainargs=test run
44	#2>&1 | tee > microbench.log
45	#2 > microbench.log
46	cat microbench.log | grep IPC
47
48microbench_train:
49	$(MAKE) -C $(AM_HOME)/apps/microbench $(ARCH) $(EMU_ARGS) mainargs=train run 2 > microbench.log
50	cat microbench.log | grep IPC
51
52coremark:
53	$(MAKE) -C $(AM_HOME)/apps/coremark $(ARCH) $(EMU_ARGS) mainargs=test run
54	#2 > coremark.log
55	cat coremark.log | grep IPC
56
57dhrystone:
58	$(MAKE) -C $(AM_HOME)/apps/dhrystone $(ARCH) $(EMU_ARGS) mainargs=test run 2 > dhrystone.log
59	cat dhrystone.log | grep IPC
60
61xj:
62	$(MAKE) -C $(NANOS_HOME) $(ARCH) $(EMU_ARGS) run
63
64xjnemu:
65	$(MAKE) -C $(NANOS_HOME) ARCH=riscv64-nemu run
66
67rttos:
68	$(MAKE) -C $(RTTOS_HOME)/bsp/riscv64-noop run
69
70rttos-debug:
71	$(MAKE) -C $(RTTOS_HOME)/bsp/riscv64-noop run 2>&1 | tee > rttos.log
72
73freertos:
74	$(MAKE) -C $(FREERTOS_HOME)/Demo/riscv64-noop noop_run
75
76xv6:
77	$(MAKE) -C $(XV6_HOME) noop
78
79xv6-debug:
80	$(MAKE) -C $(XV6_HOME) noop 2>&1 | tee > xv6.log
81
82linux:
83	$(MAKE) -C $(BBL_LINUX_HOME) $(EMU_ARGS) noop
84# ------------------------------------------------------------------
85# get disassembled test src
86# ------------------------------------------------------------------
87
88disassemble-rttos:
89	cp $(RTTOS_HOME)/bsp/riscv64-noop/build/code.txt ./d-rttos.log
90
91disassemble-freertos:
92	cp $(FREERTOS_HOME)/Demo/riscv64-noop/build/FreeRTOS-simple.elf.txt ./d-freertos.log
93
94disassemble-xv6:
95	cp $(XV6_HOME)/build/code.txt ./d-xv6.log
96
97
98SUITE = cache.L2CacheTest
99
100unit-test:
101	cd .. && mill XiangShan.test.testOnly -o -s $(SUITE)
102
103unit-test-all:
104	cd .. && mill XiangShan.test.test -P$(P)
105
106# ------------------------------------------------------------------
107# chore
108# ------------------------------------------------------------------
109
110clean:
111	$(MAKE) -C .. clean
112