diff --git a/benchmarks/riscv-coremark/Makefile b/benchmarks/riscv-coremark/Makefile index 1e886940..2100b784 100644 --- a/benchmarks/riscv-coremark/Makefile +++ b/benchmarks/riscv-coremark/Makefile @@ -6,8 +6,10 @@ sources=$(cmbase)/core_main.c $(cmbase)/core_list_join.c $(cmbase)/coremark.h \ $(PORT_DIR)/core_portme.h $(PORT_DIR)/core_portme.c $(PORT_DIR)/core_portme.mak \ $(PORT_DIR)/crt.S $(PORT_DIR)/encoding.h $(PORT_DIR)/util.h $(PORT_DIR)/syscalls.c -work/coremark.bare.riscv.memfile: work/coremark.bare.riscv +work/coremark.bare.riscv.elf.memfile: work/coremark.bare.riscv + riscv64-unknown-elf-objdump -D $< > $<.elf.objdump riscv64-unknown-elf-elf2hex --bit-width 64 --input $< --output $@ + extractFunctionRadix.sh $<.elf.objdump work/coremark.bare.riscv.objdump: work/coremark.bare.riscv riscv64-unknown-elf-objdump -D work/coremark.bare.riscv > work/coremark.bare.riscv.objdump diff --git a/pipelined/regression/Makefile b/pipelined/regression/Makefile index 8bcb403c..9c66ce50 100644 --- a/pipelined/regression/Makefile +++ b/pipelined/regression/Makefile @@ -14,18 +14,21 @@ make all: make -C ../../tests/imperas-riscv-tests make -C ../../tests/imperas-riscv-tests XLEN=64 cd ../../tests/imperas-riscv-tests; exe2memfile.pl work/*/*.elf + cd ../../tests/imperas-riscv-tests; extractFunctionRadix.sh work/*/*.elf # Build riscv-arch-test 64 and 32-bit versions make -C ../../addins/riscv-arch-test make -C ../../addins/riscv-arch-test XLEN=32 cd ../../addins/riscv-arch-test; elf2hex.sh + cd ../../addins/riscv-arch-test; extractFunctionRadix.sh work/*/*/*.elf # extractFunctionRadix. *** # Build wally-riscv-arch-test make -C ../../tests/wally-riscv-arch-test/ make -C ../../tests/wally-riscv-arch-test/ XLEN=32 cd ../../tests/wally-riscv-arch-test; elf2hex.sh + cd ../../tests/wally-riscv-arch-test; extractFunctionRadix.sh work/*/*/*.elf # ***extractFunctionRadix # Only compile Imperas tests if they are installed locally. diff --git a/pipelined/testbench/common/function_radix.sv b/pipelined/testbench/common/functionName.sv similarity index 95% rename from pipelined/testbench/common/function_radix.sv rename to pipelined/testbench/common/functionName.sv index d8c0eaff..45a11e8c 100644 --- a/pipelined/testbench/common/function_radix.sv +++ b/pipelined/testbench/common/functionName.sv @@ -164,20 +164,11 @@ module FunctionName(reset, clk, ProgramAddrMapFile, ProgramLabelMapFile); end logic OrReducedAdr, AnyUnknown; - - assign OrReducedAdr = |ProgramAddrIndex; assign AnyUnknown = (OrReducedAdr === 1'bx) ? 1'b1 : 1'b0; - initial ProgramAddrIndexQ = '0; initial ProgramAddrIndex = '0; - always @(posedge clk) begin - if(reset) - ProgramAddrIndexQ <= '0; - if(AnyUnknown == 1'b0) - ProgramAddrIndexQ <= ProgramAddrIndex; - end - assign FunctionName = ProgramLabelMapMemory[AnyUnknown ? ProgramAddrIndexQ : ProgramAddrIndex]; + assign FunctionName = AnyUnknown ? "Unknown!" : ProgramLabelMapMemory[ProgramAddrIndex]; endmodule // function_radix