diff --git a/pipelined/regression/regression-wally b/pipelined/regression/regression-wally index b47aa7b6..2e9e123f 100755 --- a/pipelined/regression/regression-wally +++ b/pipelined/regression/regression-wally @@ -62,7 +62,7 @@ tc = TestCase( grepstr="400100000 instructions") configs.append(tc) -tests64gc = ["arch64i", "arch64priv", "arch64c", "arch64m", "arch64d", "imperas64i", "imperas64f", "imperas64d", "imperas64m", "wally64a", "imperas64c", "wally64priv"] # , "imperas64mmu" "wally64i", #, "testsBP64"] +tests64gc = ["arch64i", "arch64priv", "arch64c", "arch64m", "arch64d", "imperas64i", "imperas64f", "imperas64d", "imperas64m", "wally64a", "imperas64c", "wally64priv", "wally64periph"] # , "imperas64mmu" "wally64i", #, "testsBP64"] for test in tests64gc: tc = TestCase( name=test, diff --git a/pipelined/testbench/tests.vh b/pipelined/testbench/tests.vh index 7bcb22c3..ca472207 100644 --- a/pipelined/testbench/tests.vh +++ b/pipelined/testbench/tests.vh @@ -1466,7 +1466,6 @@ string imperas32f[] = '{ "rv64i_m/privilege/WALLY-MSTATUS", "002070", "rv64i_m/privilege/WALLY-MTVEC", "002070", "rv64i_m/privilege/WALLY-MVENDORID", "003070", - "rv64i_m/privilege/WALLY-PERIPH", "0020f0", "rv64i_m/privilege/WALLY-PMA", "004080", "rv64i_m/privilege/WALLY-PMP", "004080", "rv64i_m/privilege/WALLY-SCAUSE", "002070", @@ -1478,7 +1477,7 @@ string imperas32f[] = '{ string wally64periph[] = '{ `WALLYTEST, - "rv64i_m/privilege/WALLY-PERIPH", "3110" + "rv64i_m/privilege/WALLY-PERIPH", "22f0" }; string wally32e[] = '{ diff --git a/tests/wally-riscv-arch-test/riscv-test-suite/rv64i_m/privilege/src/WALLY-PERIPH.S b/tests/wally-riscv-arch-test/riscv-test-suite/rv64i_m/privilege/src/WALLY-PERIPH.S index de9e671b..9a42f219 100644 --- a/tests/wally-riscv-arch-test/riscv-test-suite/rv64i_m/privilege/src/WALLY-PERIPH.S +++ b/tests/wally-riscv-arch-test/riscv-test-suite/rv64i_m/privilege/src/WALLY-PERIPH.S @@ -33,7 +33,8 @@ RVTEST_CODE_BEGIN # --------------------------------------------------------------------------------------------- j main_code - +# Thanks to MTVEC[1:0], trap handler addresses need to be aligned to a 4-byte boundary +.align 2 ################### ################### trap_handler: ##### @@ -801,13 +802,6 @@ RVTEST_DATA_BEGIN .align 3 stack: .fill 16, 8, 0xdeadbeef -RVTEST_DATA_END - -RVMODEL_DATA_BEGIN -# signature output -wally_signature: -.fill 0x200, 8, 0x00000000 - #ifdef rvtest_mtrap_routine mtrap_sigptr: .fill 64*(XLEN/32),4,0xdeadbeef @@ -817,4 +811,10 @@ mtrap_sigptr: gpr_save: .fill 32*(XLEN/32),4,0xdeadbeef #endif +RVTEST_DATA_END + +RVMODEL_DATA_BEGIN +# signature output +wally_signature: +.fill 0x200, 8, 0x00000000 RVMODEL_DATA_END