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