1c6d43980SLemover#*************************************************************************************** 2c6d43980SLemover# Copyright (c) 2020-2021 Institute of Computing Technology, Chinese Academy of Sciences 3f320e0f0SYinan Xu# Copyright (c) 2020-2021 Peng Cheng Laboratory 4c6d43980SLemover# 5c6d43980SLemover# XiangShan is licensed under Mulan PSL v2. 6c6d43980SLemover# You can use this software according to the terms and conditions of the Mulan PSL v2. 7c6d43980SLemover# You may obtain a copy of Mulan PSL v2 at: 8c6d43980SLemover# http://license.coscl.org.cn/MulanPSL2 9c6d43980SLemover# 10c6d43980SLemover# THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND, 11c6d43980SLemover# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT, 12c6d43980SLemover# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE. 13c6d43980SLemover# 14c6d43980SLemover# See the Mulan PSL v2 for more details. 15c6d43980SLemover#*************************************************************************************** 16c6d43980SLemover 17a3e87608SWilliam WangARCH = ARCH=riscv64-xs 18e8a976fcSZihao YuNANOS_HOME ?= $(AM_HOME)/../nanos-lite 19da180052SWilliam WangSINGLETEST = ALL=min3 20e8a976fcSZihao Yu 214b703cecSLinJiaweiB ?= 0 223802dba5SWilliam WangE ?= 0 236f763b2dSjinyue110V ?= OFF 245172f157Sjinyue110#V ?= OFF 25ff899225SLinJiaweiEMU_ARGS = B=$(B) E=$(E) V=$(V) 264b703cecSLinJiawei 27aa02bbc7SWilliam Wang# ------------------------------------------------------------------ 28aa02bbc7SWilliam Wang# bulid CPU and run dummy test 29aa02bbc7SWilliam Wang# ------------------------------------------------------------------ 30aa02bbc7SWilliam Wang 3123814de3Sjinyue110cache: 32598e480fSjinyue110 $(MAKE) -C $(AM_HOME)/tests/cachetest $(ARCH) ALL=loader $(EMU_ARGS) run 33598e480fSjinyue110 #2>&1 | tee > loader.log 3423814de3Sjinyue110 #2>&1 | tee > loader.log 3523814de3Sjinyue110 364d317394SWilliam Wangcpu: 373802dba5SWilliam Wang $(MAKE) -C $(AM_HOME)/tests/cputest $(ARCH) ALL=dummy $(EMU_ARGS) run 2>&1 38e8a976fcSZihao Yu 39aa02bbc7SWilliam Wang# ------------------------------------------------------------------ 40aa02bbc7SWilliam Wang# run different test sets 41aa02bbc7SWilliam Wang# ------------------------------------------------------------------ 42aa02bbc7SWilliam Wang 43e8a976fcSZihao Yucputest: 44e1f91fc1SWilliam Wang bash cputest.sh 45e8a976fcSZihao Yu 46da180052SWilliam Wang# bputest: 47da180052SWilliam Wang# $(MAKE) -C $(AM_HOME)/tests/bputest $(ARCH) run 2>&1 | tee > bpu.log 48da180052SWilliam Wang# cat bpu.log | grep different 49da180052SWilliam Wangbputest: 50ae7c6cedSWilliam Wang $(MAKE) -C $(AM_HOME)/tests/bputest $(ARCH) run 2 > bpu.log 51da180052SWilliam Wang cat bpu.log | grep Mbp 52da180052SWilliam Wang 53fc85214eSLinJiaweiamtest: 54ae7c6cedSWilliam Wang $(MAKE) -C $(AM_HOME)/tests/cputest $(ARCH) $(SINGLETEST) run 2 > test.log 555b1b5e6fSWilliam Wang cat test.log | grep different 565b1b5e6fSWilliam Wang cat test.log | grep ISU > isu.log 575b1b5e6fSWilliam Wang 584d317394SWilliam Wangmicrobench: 594e4bcef1Sjinyue110 $(MAKE) -C $(AM_HOME)/apps/microbench $(ARCH) $(EMU_ARGS) mainargs=test run 603c20517cSjinyue110 #2>&1 | tee > microbench.log 614e4bcef1Sjinyue110 #2 > microbench.log 624d317394SWilliam Wang cat microbench.log | grep IPC 634d317394SWilliam Wang 64cd551cc7SWilliam Wangmicrobench_train: 65ae7c6cedSWilliam Wang $(MAKE) -C $(AM_HOME)/apps/microbench $(ARCH) $(EMU_ARGS) mainargs=train run 2 > microbench.log 664d317394SWilliam Wang cat microbench.log | grep IPC 674d317394SWilliam Wang 684d317394SWilliam Wangcoremark: 694e4bcef1Sjinyue110 $(MAKE) -C $(AM_HOME)/apps/coremark $(ARCH) $(EMU_ARGS) mainargs=test run 704e4bcef1Sjinyue110 #2 > coremark.log 714d317394SWilliam Wang cat coremark.log | grep IPC 724d317394SWilliam Wang 734d317394SWilliam Wangdhrystone: 74ae7c6cedSWilliam Wang $(MAKE) -C $(AM_HOME)/apps/dhrystone $(ARCH) $(EMU_ARGS) mainargs=test run 2 > dhrystone.log 754d317394SWilliam Wang cat dhrystone.log | grep IPC 76e8a976fcSZihao Yu 77e8a976fcSZihao Yuxj: 78ae7c6cedSWilliam Wang $(MAKE) -C $(NANOS_HOME) $(ARCH) $(EMU_ARGS) run 79a207cd54SWilliam Wang 805c98f425SWilliam Wangxjnemu: 815c98f425SWilliam Wang $(MAKE) -C $(NANOS_HOME) ARCH=riscv64-nemu run 82aa02bbc7SWilliam Wang 83cd551cc7SWilliam Wangrttos: 84cd551cc7SWilliam Wang $(MAKE) -C $(RTTOS_HOME)/bsp/riscv64-noop run 85cd551cc7SWilliam Wang 861c919a5fSWilliam Wangrttos-debug: 871c919a5fSWilliam Wang $(MAKE) -C $(RTTOS_HOME)/bsp/riscv64-noop run 2>&1 | tee > rttos.log 881c919a5fSWilliam Wang 89aa02bbc7SWilliam Wangfreertos: 9095a15ae8SWilliam Wang $(MAKE) -C $(FREERTOS_HOME)/Demo/riscv64-noop noop_run 91aa02bbc7SWilliam Wang 92e0501435SWilliam Wangxv6: 93e0501435SWilliam Wang $(MAKE) -C $(XV6_HOME) noop 94e0501435SWilliam Wang 95217c27a7SWilliam Wangxv6-debug: 96217c27a7SWilliam Wang $(MAKE) -C $(XV6_HOME) noop 2>&1 | tee > xv6.log 97217c27a7SWilliam Wang 989ba7b869SWilliam Wanglinux: 99ae7c6cedSWilliam Wang $(MAKE) -C $(BBL_LINUX_HOME) $(EMU_ARGS) noop 100aa02bbc7SWilliam Wang# ------------------------------------------------------------------ 101aa02bbc7SWilliam Wang# get disassembled test src 102aa02bbc7SWilliam Wang# ------------------------------------------------------------------ 103aa02bbc7SWilliam Wang 104aa02bbc7SWilliam Wangdisassemble-rttos: 105aa02bbc7SWilliam Wang cp $(RTTOS_HOME)/bsp/riscv64-noop/build/code.txt ./d-rttos.log 106aa02bbc7SWilliam Wang 107aa02bbc7SWilliam Wangdisassemble-freertos: 10895a15ae8SWilliam Wang cp $(FREERTOS_HOME)/Demo/riscv64-noop/build/FreeRTOS-simple.elf.txt ./d-freertos.log 109aa02bbc7SWilliam Wang 110e0501435SWilliam Wangdisassemble-xv6: 111e0501435SWilliam Wang cp $(XV6_HOME)/build/code.txt ./d-xv6.log 112fc85214eSLinJiawei 113fc85214eSLinJiawei 114903af6a2SLinJiaweiSUITE = cache.L2CacheTest 115fc85214eSLinJiawei 116fc85214eSLinJiaweiunit-test: 117903af6a2SLinJiawei cd .. && mill XiangShan.test.testOnly -o -s $(SUITE) 118fc85214eSLinJiawei 119ab3aa7eeSBigWhiteDogtlc-test: 120ab3aa7eeSBigWhiteDog cd .. && mill XiangShan.test.testOnly -o -s cache.TLCTest.TLCCacheTest 121ab3aa7eeSBigWhiteDog 122b086c6daSBigWhiteDogl1-test: 123b086c6daSBigWhiteDog cd .. && mill XiangShan.test.testOnly -o -s cache.L1DTest.L1DCacheTest 124b086c6daSBigWhiteDog 125*a58e3351SLi Qianruoint-divider-test: 126*a58e3351SLi Qianruo cd .. && mill XiangShan.test.testOnly -o -s futest.IntDividerTest 127*a58e3351SLi Qianruo 128fc85214eSLinJiaweiunit-test-all: 129d7fd0e77SLinJiawei cd .. && mill XiangShan.test.test -P$(P) 130950887cbSWilliam Wang 131950887cbSWilliam Wang# ------------------------------------------------------------------ 132950887cbSWilliam Wang# chore 133950887cbSWilliam Wang# ------------------------------------------------------------------ 134950887cbSWilliam Wang 135950887cbSWilliam Wangclean: 136950887cbSWilliam Wang $(MAKE) -C .. clean 137