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