From c61488a21e631bad51116b48f1f9d63232e81ed3 Mon Sep 17 00:00:00 2001 From: umershahidengr Date: Fri, 26 Apr 2024 11:41:43 +0500 Subject: [PATCH] Added nop after every ld --- riscv-test-suite/rv32i_m/F/src/fmul_b9-01.S | 1 + .../rv64i_m/pmp64/pmp64-CSR-access.S | 95 ++++++++++++++++--- .../pmp64/pmp64-NA4-R-priority-level-2.S | 3 +- .../rv64i_m/pmp64/pmp64-NA4-R-priority.S | 3 +- riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-R.S | 3 +- .../pmp64/pmp64-NA4-RW-priority-level-2.S | 3 +- .../rv64i_m/pmp64/pmp64-NA4-RW-priority.S | 3 +- riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-RW.S | 3 +- .../rv64i_m/pmp64/pmp64-NA4-RWX.S | 3 +- .../pmp64/pmp64-NA4-RX-priority-level-2.S | 3 +- .../rv64i_m/pmp64/pmp64-NA4-RX-priority.S | 3 +- riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-RX.S | 3 +- .../pmp64/pmp64-NA4-X-priority-level-2.S | 3 +- .../rv64i_m/pmp64/pmp64-NA4-X-priority.S | 3 +- riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-X.S | 3 +- .../pmp64/pmp64-NAPOT-R-priority-level-2.S | 3 +- .../rv64i_m/pmp64/pmp64-NAPOT-R-priority.S | 3 +- .../rv64i_m/pmp64/pmp64-NAPOT-R.S | 1 + .../pmp64/pmp64-NAPOT-RW-priority-level-2.S | 3 +- .../rv64i_m/pmp64/pmp64-NAPOT-RW-priority.S | 3 +- .../rv64i_m/pmp64/pmp64-NAPOT-RW.S | 3 +- .../rv64i_m/pmp64/pmp64-NAPOT-RWX.S | 3 +- .../pmp64/pmp64-NAPOT-RX-priority-level-2.S | 3 +- .../rv64i_m/pmp64/pmp64-NAPOT-RX-priority.S | 3 +- .../rv64i_m/pmp64/pmp64-NAPOT-RX.S | 3 +- .../pmp64/pmp64-NAPOT-X-priority-level-2.S | 3 +- .../rv64i_m/pmp64/pmp64-NAPOT-X-priority.S | 3 +- .../rv64i_m/pmp64/pmp64-NAPOT-X.S | 3 +- .../pmp64/pmp64-TOR-R-priority-level-2.S | 3 +- .../rv64i_m/pmp64/pmp64-TOR-R-priority.S | 3 +- riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-R.S | 3 +- .../pmp64/pmp64-TOR-RW-priority-level-2..S | 3 +- .../rv64i_m/pmp64/pmp64-TOR-RW-priority.S | 3 +- riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-RW.S | 3 +- .../pmp64/pmp64-TOR-RWX-priority-level-2.S | 3 +- .../rv64i_m/pmp64/pmp64-TOR-RWX.S | 3 +- .../pmp64/pmp64-TOR-RX-priority-level-2.S | 3 +- .../rv64i_m/pmp64/pmp64-TOR-RX-priority.S | 3 +- riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-RX.S | 3 +- .../pmp64/pmp64-TOR-X-priority-level-2.S | 3 +- .../rv64i_m/pmp64/pmp64-TOR-X-priority.S | 3 +- riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-X.S | 3 +- 42 files changed, 161 insertions(+), 53 deletions(-) diff --git a/riscv-test-suite/rv32i_m/F/src/fmul_b9-01.S b/riscv-test-suite/rv32i_m/F/src/fmul_b9-01.S index cf9c09266..e31ceb6b4 100644 --- a/riscv-test-suite/rv32i_m/F/src/fmul_b9-01.S +++ b/riscv-test-suite/rv32i_m/F/src/fmul_b9-01.S @@ -30,6 +30,7 @@ RVTEST_CODE_BEGIN #ifdef TEST_CASE_1 RVTEST_CASE(0,"//check ISA:=regex(.*I.*F.*);def TEST_CASE_1=True;",fmul_b9) +RVTEST_CASE(1,"//check ISA:=regex(.*E.*F.*);def TEST_CASE_1=True;",fmul_b9) RVTEST_FP_ENABLE() RVTEST_VALBASEUPD(x3,test_dataset_0) diff --git a/riscv-test-suite/rv64i_m/pmp64/pmp64-CSR-access.S b/riscv-test-suite/rv64i_m/pmp64/pmp64-CSR-access.S index 9b4086bf5..03a1af71f 100644 --- a/riscv-test-suite/rv64i_m/pmp64/pmp64-CSR-access.S +++ b/riscv-test-suite/rv64i_m/pmp64/pmp64-CSR-access.S @@ -57,14 +57,23 @@ main: RVTEST_SIGUPD(x13,a4) // Storing into signature file .set pmpaddri, pmpaddri+1 // increment variable pmpaddri to the next pmpaddr reg .endr // END OF LOOP BODY +// WRITING pmpaddr in M-mode ///////////////////////////////////////// + LI(a4,0x01) // RANDOM VALUE + .set pmpaddri, PMPADDR0 // Initialize an iterating variable with the address of pmpaddr0 + .rept 16 // START OF LOOP + csrw pmpaddri, a4 // WRITING pmpaddri (i is from 0-15) + nop // Added nop in case of trap + RVTEST_SIGUPD(x13,a4) // Storing into signature file + .set pmpaddri, pmpaddri+1 // increment variable pmpaddri to the next pmpaddr reg + .endr // END OF LOOP BODY // WRITING pmpcfg registers ////////////////////////////////////////// // Write in M-mode will be valid, Write in other modes will cause trap LI(a5, PMP_R| PMP_W | PMP_X | PMP_TOR) // LOCKED BIT IS NOT SET // Loop to Write ALL pmpcfg regs .set pmpcfgi, PMPCFG0 // Initialize an iterating variable with the address of pmpcfg0 .rept 2 // START OF LOOP - csrw pmpcfgi, a5 // Write pmpcfgi - nop // Added nop in case of trap + csrw pmpcfgi, a5 // Write pmpcfgi + nop // Added nop in case of trap .set pmpcfgi, pmpcfgi+2 // increment variable to next pmpcfg reg .endr // END OF LOOP BODY //////////////// VERIFICATION ///////////////////////////////////////// @@ -93,13 +102,43 @@ main: // REPEATING THE SAME TEST ////////////////////////////////////////// // IN Smode now /////////////////// TEST 01 //////////////////////////////////////////// -// WRITING pmpaddr registers ////////////////////////////////////////// -// Write in M-mode will be valid, Write in other modes will cause trap - csrw pmpaddr0, x2 // Write pmpaddr0 in S mode (TRAP) - nop // Added nop in case of trap // READING pmpaddr in S-mode ///////////////////////////////////////// - csrr a4, pmpaddr0 // Reading pmpaddr0 in S mode (TRAP) + .set pmpaddri, PMPADDR0 // Initialize an iterating variable with the address of pmpaddr0 + .rept 4 // START OF LOOP + csrr a4, pmpaddri // READING pmpaddri (i is from 0-15) + nop // Added nop in case of trap + RVTEST_SIGUPD(x13,a4) // Storing into signature file + .set pmpaddri, pmpaddri+1 // increment variable pmpaddri to the next pmpaddr reg + .endr // END OF LOOP BODY +// WRITING pmpaddr in S-mode ///////////////////////////////////////// + LI(a4,0x01) // RANDOM VALUE + .set pmpaddri, PMPADDR0 // Initialize an iterating variable with the address of pmpaddr0 + .rept 4 // START OF LOOP + csrw pmpaddri, a4 // WRITING pmpaddri (i is from 0-15) + nop // Added nop in case of trap + RVTEST_SIGUPD(x13,a4) // Storing into signature file + .set pmpaddri, pmpaddri+1 // increment variable pmpaddri to the next pmpaddr reg + .endr // END OF LOOP BODY +// WRITING pmpcfg registers ////////////////////////////////////////// +// Write in M-mode will be valid, Write in other modes will cause trap + LI(a5, PMP_R| PMP_W | PMP_X | PMP_TOR) // LOCKED BIT IS NOT SET + // Loop to Write ALL pmpcfg regs + .set pmpcfgi, PMPCFG0 // Initialize an iterating variable with the address of pmpcfg0 + .rept 2 // START OF LOOP + csrw pmpcfgi, a5 // Write pmpcfgi + nop // Added nop in case of trap + .set pmpcfgi, pmpcfgi+2 // increment variable to next pmpcfg reg + .endr // END OF LOOP BODY +//////////////// VERIFICATION ///////////////////////////////////////// +// READING pmpcfg in S-mode ///////////////////////////////////////// + // Loop to verify the contents of pmpcfg regs + .set pmpcfgi, PMPCFG0 // Initialize an iterating variable with the address of pmpcfg0 + .rept 2 // START OF LOOP + csrr a4, pmpcfg0 // Read pmpcfg0 nop // Added nop in case of trap + RVTEST_SIGUPD(x13,a4) + .set pmpcfgi, pmpcfgi+2 // increment variable to next pmpcfg reg + .endr // END OF LOOP BODY /////////////////// Switch back to M-mode //////////////////////////////////////////// RVTEST_GOTO_MMODE csrr a4, mstatus // VERIFICATION of M-mode @@ -121,15 +160,43 @@ main: RVTEST_GOTO_LOWER_MODE Umode // REPEATING THE SAME TEST ////////////////////////////////////////// // IN U-mode now -/////////////////// TEST 01 //////////////////////////////////////////// -// WRITING pmpaddr registers ////////////////////////////////////////// -// Write in M-mode will be valid, Write in other modes will cause trap - csrw pmpaddr0, x2 // Write pmpaddr0 in u mode (TRAP) +// READING pmpaddr in U-mode ///////////////////////////////////////// + .set pmpaddri, PMPADDR0 // Initialize an iterating variable with the address of pmpaddr0 + .rept 4 // START OF LOOP + csrr a4, pmpaddri // READING pmpaddri (i is from 0-15) nop // Added nop in case of trap + RVTEST_SIGUPD(x13,a4) // Storing into signature file + .set pmpaddri, pmpaddri+1 // increment variable pmpaddri to the next pmpaddr reg + .endr // END OF LOOP BODY +// WRITING pmpaddr in U-mode ///////////////////////////////////////// + LI(a4,0x01) // RANDOM VALUE + .set pmpaddri, PMPADDR0 // Initialize an iterating variable with the address of pmpaddr0 + .rept 4 // START OF LOOP + csrw pmpaddri, a4 // WRITING pmpaddri (i is from 0-15) + nop // Added nop in case of trap + RVTEST_SIGUPD(x13,a4) // Storing into signature file + .set pmpaddri, pmpaddri+1 // increment variable pmpaddri to the next pmpaddr reg + .endr // END OF LOOP BODY +// WRITING pmpcfg registers ////////////////////////////////////////// +// Write in M-mode will be valid, Write in other modes will cause trap + LI(a5, PMP_R| PMP_W | PMP_X | PMP_TOR) // LOCKED BIT IS NOT SET + // Loop to Write ALL pmpcfg regs + .set pmpcfgi, PMPCFG0 // Initialize an iterating variable with the address of pmpcfg0 + .rept 2 // START OF LOOP + csrw pmpcfgi, a5 // Write pmpcfgi + nop // Added nop in case of trap + .set pmpcfgi, pmpcfgi+2 // increment variable to next pmpcfg reg + .endr // END OF LOOP BODY //////////////// VERIFICATION ///////////////////////////////////////// -// READING pmpaddr in S-mode ///////////////////////////////////////// - csrr a4, pmpaddr0 // Reading pmpaddr0 in U mode (TRAP) +// READING pmpcfg in U-mode ///////////////////////////////////////// + // Loop to verify the contents of pmpcfg regs + .set pmpcfgi, PMPCFG0 // Initialize an iterating variable with the address of pmpcfg0 + .rept 2 // START OF LOOP + csrr a4, pmpcfg0 // Read pmpcfg0 nop // Added nop in case of trap + RVTEST_SIGUPD(x13,a4) + .set pmpcfgi, pmpcfgi+2 // increment variable to next pmpcfg reg + .endr // END OF LOOP BODY #endif @@ -161,7 +228,7 @@ signature_x13_1: tsig_begin_canary: CANARY; mtrap_sigptr: - .fill 64*(XLEN/32),4,0xdeadbeef + .fill 256*(XLEN/32),4,0xdeadbeef tsig_end_canary: CANARY; diff --git a/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-R-priority-level-2.S b/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-R-priority-level-2.S index 80e89eed9..95d705567 100644 --- a/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-R-priority-level-2.S +++ b/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-R-priority-level-2.S @@ -49,7 +49,8 @@ RVTEST_SIGBASE( x13,signature_x13_1) nop nop ld a4,0(a5) // Reload for verification (CHECK IF DATA HAS BEEN UPDATED SUCCESSFULLY) - jal \ADDRESS // Test for execution, an instruction is placed at this address + nop +jal \ADDRESS // Test for execution, an instruction is placed at this address .endm main: diff --git a/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-R-priority.S b/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-R-priority.S index 5b1c98707..c057e39ef 100644 --- a/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-R-priority.S +++ b/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-R-priority.S @@ -51,7 +51,8 @@ RVTEST_SIGBASE( x13,signature_x13_1) nop nop ld a4,0(a5) // Reload for verification (CHECK IF DATA HAS BEEN UPDATED SUCCESSFULLY) - jal \ADDRESS // Test for execution, an instruction is placed at this address + nop +jal \ADDRESS // Test for execution, an instruction is placed at this address .endm main: diff --git a/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-R.S b/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-R.S index 08e8b92be..661b62312 100644 --- a/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-R.S +++ b/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-R.S @@ -53,7 +53,8 @@ RVTEST_SIGBASE( x13,signature_x13_1) nop nop ld a4,0(a5) // Reload for verification (CHECK IF DATA HAS BEEN UPDATED SUCCESSFULLY) - jal \ADDRESS // Test for execution, an instruction is placed at this address + nop +jal \ADDRESS // Test for execution, an instruction is placed at this address .endm main: diff --git a/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-RW-priority-level-2.S b/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-RW-priority-level-2.S index c33edc50d..54abfc286 100644 --- a/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-RW-priority-level-2.S +++ b/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-RW-priority-level-2.S @@ -49,7 +49,8 @@ RVTEST_SIGBASE( x13,signature_x13_1) nop nop ld a4,0(a5) // Reload for verification (CHECK IF DATA HAS BEEN UPDATED SUCCESSFULLY) - jal \ADDRESS // Test for execution, an instruction is placed at this address + nop +jal \ADDRESS // Test for execution, an instruction is placed at this address .endm main: diff --git a/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-RW-priority.S b/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-RW-priority.S index d744d08e4..d46633a58 100644 --- a/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-RW-priority.S +++ b/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-RW-priority.S @@ -50,7 +50,8 @@ RVTEST_SIGBASE( x13,signature_x13_1) nop nop ld a4,0(a5) // Reload for verification (CHECK IF DATA HAS BEEN UPDATED SUCCESSFULLY) - jal \ADDRESS // Test for execution, an instruction is placed at this address + nop +jal \ADDRESS // Test for execution, an instruction is placed at this address .endm main: diff --git a/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-RW.S b/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-RW.S index c79af4133..eb527aaf9 100644 --- a/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-RW.S +++ b/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-RW.S @@ -55,7 +55,8 @@ RVTEST_SIGBASE( x13,signature_x13_1) nop nop ld a4,0(a5) // Reload for verification (CHECK IF DATA HAS BEEN UPDATED SUCCESSFULLY) - jal \ADDRESS // Test for execution, an instruction is placed at this address + nop +jal \ADDRESS // Test for execution, an instruction is placed at this address .endm main: diff --git a/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-RWX.S b/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-RWX.S index ff18423dd..284d4f85e 100644 --- a/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-RWX.S +++ b/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-RWX.S @@ -53,7 +53,8 @@ RVTEST_SIGBASE( x13,signature_x13_1) nop nop ld a4,0(a5) // Reload for verification (CHECK IF DATA HAS BEEN UPDATED SUCCESSFULLY) - jal \ADDRESS // Test for execution, an instruction is placed at this address + nop +jal \ADDRESS // Test for execution, an instruction is placed at this address .endm main: diff --git a/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-RX-priority-level-2.S b/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-RX-priority-level-2.S index 9a4cc5147..86e9d8714 100644 --- a/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-RX-priority-level-2.S +++ b/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-RX-priority-level-2.S @@ -49,7 +49,8 @@ RVTEST_SIGBASE( x13,signature_x13_1) nop nop ld a4,0(a5) // Reload for verification (CHECK IF DATA HAS BEEN UPDATED SUCCESSFULLY) - jal \ADDRESS // Test for execution, an instruction is placed at this address + nop +jal \ADDRESS // Test for execution, an instruction is placed at this address .endm main: diff --git a/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-RX-priority.S b/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-RX-priority.S index 4ee6889d9..89c837047 100644 --- a/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-RX-priority.S +++ b/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-RX-priority.S @@ -50,7 +50,8 @@ RVTEST_SIGBASE( x13,signature_x13_1) nop nop ld a4,0(a5) // Reload for verification (CHECK IF DATA HAS BEEN UPDATED SUCCESSFULLY) - jal \ADDRESS // Test for execution, an instruction is placed at this address + nop +jal \ADDRESS // Test for execution, an instruction is placed at this address .endm main: diff --git a/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-RX.S b/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-RX.S index 63658a281..f51135d6e 100644 --- a/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-RX.S +++ b/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-RX.S @@ -53,7 +53,8 @@ RVTEST_SIGBASE( x13,signature_x13_1) nop nop ld a4,0(a5) // Reload for verification (CHECK IF DATA HAS BEEN UPDATED SUCCESSFULLY) - jal \ADDRESS // Test for execution, an instruction is placed at this address + nop +jal \ADDRESS // Test for execution, an instruction is placed at this address .endm main: diff --git a/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-X-priority-level-2.S b/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-X-priority-level-2.S index 21ae30a51..2b1c9f213 100644 --- a/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-X-priority-level-2.S +++ b/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-X-priority-level-2.S @@ -49,7 +49,8 @@ RVTEST_SIGBASE( x13,signature_x13_1) nop nop ld a4,0(a5) // Reload for verification (CHECK IF DATA HAS BEEN UPDATED SUCCESSFULLY) - jal \ADDRESS // Test for execution, an instruction is placed at this address + nop +jal \ADDRESS // Test for execution, an instruction is placed at this address .endm main: diff --git a/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-X-priority.S b/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-X-priority.S index fb79b202d..cea1a448c 100644 --- a/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-X-priority.S +++ b/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-X-priority.S @@ -50,7 +50,8 @@ RVTEST_SIGBASE( x13,signature_x13_1) nop nop ld a4,0(a5) // Reload for verification (CHECK IF DATA HAS BEEN UPDATED SUCCESSFULLY) - jal \ADDRESS // Test for execution, an instruction is placed at this address + nop +jal \ADDRESS // Test for execution, an instruction is placed at this address .endm main: diff --git a/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-X.S b/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-X.S index ec2a31b21..28725ca9f 100644 --- a/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-X.S +++ b/riscv-test-suite/rv64i_m/pmp64/pmp64-NA4-X.S @@ -53,7 +53,8 @@ RVTEST_SIGBASE( x13,signature_x13_1) nop nop ld a4,0(a5) // Reload for verification (CHECK IF DATA HAS BEEN UPDATED SUCCESSFULLY) - jal \ADDRESS // Test for execution, an instruction is placed at this address + nop +jal \ADDRESS // Test for execution, an instruction is placed at this address .endm main: diff --git a/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-R-priority-level-2.S b/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-R-priority-level-2.S index 0211b2ff7..96d47e938 100644 --- a/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-R-priority-level-2.S +++ b/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-R-priority-level-2.S @@ -49,7 +49,8 @@ RVTEST_SIGBASE( x13,signature_x13_1) nop nop ld a4,0(a5) // Reload for verification (CHECK IF DATA HAS BEEN UPDATED SUCCESSFULLY) - jal \ADDRESS // Test for execution, an instruction is placed at this address + nop +jal \ADDRESS // Test for execution, an instruction is placed at this address .endm main: diff --git a/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-R-priority.S b/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-R-priority.S index 31ed0389c..de1d99339 100644 --- a/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-R-priority.S +++ b/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-R-priority.S @@ -50,7 +50,8 @@ RVTEST_SIGBASE( x13,signature_x13_1) nop nop ld a4,0(a5) // Reload for verification (CHECK IF DATA HAS BEEN UPDATED SUCCESSFULLY) - jal \ADDRESS // Test for execution, an instruction is placed at this address + nop +jal \ADDRESS // Test for execution, an instruction is placed at this address .endm main: diff --git a/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-R.S b/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-R.S index c6a413ceb..1570f25f7 100644 --- a/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-R.S +++ b/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-R.S @@ -54,6 +54,7 @@ RVTEST_SIGBASE( x13,signature_x13_1) nop nop ld a4,0(a5) // Reload for verification (CHECK IF DATA HAS BEEN UPDATED SUCCESSFULLY) + nop jal \ADDRESS // Test for execution, an instruction is placed at this address .endm diff --git a/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-RW-priority-level-2.S b/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-RW-priority-level-2.S index 1e4aa7f77..6fae368c5 100644 --- a/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-RW-priority-level-2.S +++ b/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-RW-priority-level-2.S @@ -49,7 +49,8 @@ RVTEST_SIGBASE( x13,signature_x13_1) nop nop ld a4,0(a5) // Reload for verification (CHECK IF DATA HAS BEEN UPDATED SUCCESSFULLY) - jal \ADDRESS // Test for execution, an instruction is placed at this address + nop +jal \ADDRESS // Test for execution, an instruction is placed at this address .endm main: diff --git a/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-RW-priority.S b/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-RW-priority.S index a49ffa428..a15669b37 100644 --- a/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-RW-priority.S +++ b/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-RW-priority.S @@ -50,7 +50,8 @@ RVTEST_SIGBASE( x13,signature_x13_1) nop nop ld a4,0(a5) // Reload for verification (CHECK IF DATA HAS BEEN UPDATED SUCCESSFULLY) - jal \ADDRESS // Test for execution, an instruction is placed at this address + nop +jal \ADDRESS // Test for execution, an instruction is placed at this address .endm main: diff --git a/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-RW.S b/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-RW.S index 28bbdd9ba..4deedb4c4 100644 --- a/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-RW.S +++ b/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-RW.S @@ -54,7 +54,8 @@ RVTEST_SIGBASE( x13,signature_x13_1) nop nop ld a4,0(a5) // Reload for verification (CHECK IF DATA HAS BEEN UPDATED SUCCESSFULLY) - jal \ADDRESS // Test for execution, an instruction is placed at this address + nop +jal \ADDRESS // Test for execution, an instruction is placed at this address .endm main: diff --git a/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-RWX.S b/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-RWX.S index 407bb3794..c32d06e9a 100644 --- a/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-RWX.S +++ b/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-RWX.S @@ -54,7 +54,8 @@ RVTEST_SIGBASE( x13,signature_x13_1) nop nop ld a4,0(a5) // Reload for verification (CHECK IF DATA HAS BEEN UPDATED SUCCESSFULLY) - jal \ADDRESS // Test for execution, an instruction is placed at this address + nop +jal \ADDRESS // Test for execution, an instruction is placed at this address .endm main: diff --git a/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-RX-priority-level-2.S b/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-RX-priority-level-2.S index 9038f0a39..6cd4173e7 100644 --- a/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-RX-priority-level-2.S +++ b/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-RX-priority-level-2.S @@ -49,7 +49,8 @@ RVTEST_SIGBASE( x13,signature_x13_1) nop nop ld a4,0(a5) // Reload for verification (CHECK IF DATA HAS BEEN UPDATED SUCCESSFULLY) - jal \ADDRESS // Test for execution, an instruction is placed at this address + nop +jal \ADDRESS // Test for execution, an instruction is placed at this address .endm main: diff --git a/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-RX-priority.S b/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-RX-priority.S index e281d4f59..934bdadfa 100644 --- a/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-RX-priority.S +++ b/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-RX-priority.S @@ -50,7 +50,8 @@ RVTEST_SIGBASE( x13,signature_x13_1) nop nop ld a4,0(a5) // Reload for verification (CHECK IF DATA HAS BEEN UPDATED SUCCESSFULLY) - jal \ADDRESS // Test for execution, an instruction is placed at this address + nop +jal \ADDRESS // Test for execution, an instruction is placed at this address .endm main: diff --git a/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-RX.S b/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-RX.S index 8b386baaa..0efa98663 100644 --- a/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-RX.S +++ b/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-RX.S @@ -54,7 +54,8 @@ RVTEST_SIGBASE( x13,signature_x13_1) nop nop ld a4,0(a5) // Reload for verification (CHECK IF DATA HAS BEEN UPDATED SUCCESSFULLY) - jal \ADDRESS // Test for execution, an instruction is placed at this address + nop +jal \ADDRESS // Test for execution, an instruction is placed at this address .endm main: diff --git a/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-X-priority-level-2.S b/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-X-priority-level-2.S index 0d4b2ddd9..1c509f6d1 100644 --- a/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-X-priority-level-2.S +++ b/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-X-priority-level-2.S @@ -49,7 +49,8 @@ RVTEST_SIGBASE( x13,signature_x13_1) nop nop ld a4,0(a5) // Reload for verification (CHECK IF DATA HAS BEEN UPDATED SUCCESSFULLY) - jal \ADDRESS // Test for execution, an instruction is placed at this address + nop +jal \ADDRESS // Test for execution, an instruction is placed at this address .endm main: diff --git a/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-X-priority.S b/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-X-priority.S index b2bd9ded7..e662a6be3 100644 --- a/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-X-priority.S +++ b/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-X-priority.S @@ -50,7 +50,8 @@ RVTEST_SIGBASE( x13,signature_x13_1) nop nop ld a4,0(a5) // Reload for verification (CHECK IF DATA HAS BEEN UPDATED SUCCESSFULLY) - jal \ADDRESS // Test for execution, an instruction is placed at this address + nop +jal \ADDRESS // Test for execution, an instruction is placed at this address .endm main: diff --git a/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-X.S b/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-X.S index 180ede079..64324734b 100644 --- a/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-X.S +++ b/riscv-test-suite/rv64i_m/pmp64/pmp64-NAPOT-X.S @@ -54,7 +54,8 @@ RVTEST_SIGBASE( x13,signature_x13_1) nop nop ld a4,0(a5) // Reload for verification (CHECK IF DATA HAS BEEN UPDATED SUCCESSFULLY) - jal \ADDRESS // Test for execution, an instruction is placed at this address + nop +jal \ADDRESS // Test for execution, an instruction is placed at this address .endm main: diff --git a/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-R-priority-level-2.S b/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-R-priority-level-2.S index e7be2319e..db2141b8f 100644 --- a/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-R-priority-level-2.S +++ b/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-R-priority-level-2.S @@ -49,7 +49,8 @@ RVTEST_SIGBASE( x13,signature_x13_1) nop nop ld a4,0(a5) // Reload for verification (CHECK IF DATA HAS BEEN UPDATED SUCCESSFULLY) - jal \ADDRESS // Test for execution, an instruction is placed at this address + nop +jal \ADDRESS // Test for execution, an instruction is placed at this address .endm main: diff --git a/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-R-priority.S b/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-R-priority.S index 08d87e636..d66aa19cf 100644 --- a/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-R-priority.S +++ b/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-R-priority.S @@ -49,7 +49,8 @@ RVTEST_SIGBASE( x13,signature_x13_1) nop nop ld a4,0(a5) // Reload for verification (CHECK IF DATA HAS BEEN UPDATED SUCCESSFULLY) - jal \ADDRESS // Test for execution, an instruction is placed at this address + nop +jal \ADDRESS // Test for execution, an instruction is placed at this address .endm main: diff --git a/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-R.S b/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-R.S index 3ecb707b1..6865aff6a 100644 --- a/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-R.S +++ b/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-R.S @@ -55,7 +55,8 @@ RVTEST_SIGBASE( x13,signature_x13_1) nop nop ld a4,0(a5) // Reload for verification (CHECK IF DATA HAS BEEN UPDATED SUCCESSFULLY) - jal \ADDRESS // Test for execution, an instruction is placed at this address + nop +jal \ADDRESS // Test for execution, an instruction is placed at this address .endm main: diff --git a/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-RW-priority-level-2..S b/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-RW-priority-level-2..S index 0aa08360a..6b200139c 100644 --- a/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-RW-priority-level-2..S +++ b/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-RW-priority-level-2..S @@ -49,7 +49,8 @@ RVTEST_SIGBASE( x13,signature_x13_1) nop nop ld a4,0(a5) // Reload for verification (CHECK IF DATA HAS BEEN UPDATED SUCCESSFULLY) - jal \ADDRESS // Test for execution, an instruction is placed at this address + nop +jal \ADDRESS // Test for execution, an instruction is placed at this address .endm main: diff --git a/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-RW-priority.S b/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-RW-priority.S index 602f76c31..25d443d88 100644 --- a/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-RW-priority.S +++ b/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-RW-priority.S @@ -49,7 +49,8 @@ RVTEST_SIGBASE( x13,signature_x13_1) nop nop ld a4,0(a5) // Reload for verification (CHECK IF DATA HAS BEEN UPDATED SUCCESSFULLY) - jal \ADDRESS // Test for execution, an instruction is placed at this address + nop +jal \ADDRESS // Test for execution, an instruction is placed at this address .endm main: diff --git a/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-RW.S b/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-RW.S index 829adbae4..f0ac5ea43 100644 --- a/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-RW.S +++ b/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-RW.S @@ -55,7 +55,8 @@ RVTEST_SIGBASE( x13,signature_x13_1) nop nop ld a4,0(a5) // Reload for verification (CHECK IF DATA HAS BEEN UPDATED SUCCESSFULLY) - jal \ADDRESS // Test for execution, an instruction is placed at this address + nop +jal \ADDRESS // Test for execution, an instruction is placed at this address .endm main: diff --git a/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-RWX-priority-level-2.S b/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-RWX-priority-level-2.S index 214c5fe47..c02caf8dc 100644 --- a/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-RWX-priority-level-2.S +++ b/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-RWX-priority-level-2.S @@ -49,7 +49,8 @@ RVTEST_SIGBASE( x13,signature_x13_1) nop nop ld a4,0(a5) // Reload for verification (CHECK IF DATA HAS BEEN UPDATED SUCCESSFULLY) - jal \ADDRESS // Test for execution, an instruction is placed at this address + nop +jal \ADDRESS // Test for execution, an instruction is placed at this address .endm main: diff --git a/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-RWX.S b/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-RWX.S index a1680355f..a105928f7 100644 --- a/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-RWX.S +++ b/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-RWX.S @@ -55,7 +55,8 @@ RVTEST_SIGBASE( x13,signature_x13_1) nop nop ld a4,0(a5) // Reload for verification (CHECK IF DATA HAS BEEN UPDATED SUCCESSFULLY) - jal \ADDRESS // Test for execution, an instruction is placed at this address + nop +jal \ADDRESS // Test for execution, an instruction is placed at this address .endm main: diff --git a/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-RX-priority-level-2.S b/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-RX-priority-level-2.S index 03eecb0b8..e664cd296 100644 --- a/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-RX-priority-level-2.S +++ b/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-RX-priority-level-2.S @@ -49,7 +49,8 @@ RVTEST_SIGBASE( x13,signature_x13_1) nop nop ld a4,0(a5) // Reload for verification (CHECK IF DATA HAS BEEN UPDATED SUCCESSFULLY) - jal \ADDRESS // Test for execution, an instruction is placed at this address + nop +jal \ADDRESS // Test for execution, an instruction is placed at this address .endm main: diff --git a/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-RX-priority.S b/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-RX-priority.S index 1067bdb5e..fa13e8f34 100644 --- a/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-RX-priority.S +++ b/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-RX-priority.S @@ -49,7 +49,8 @@ RVTEST_SIGBASE( x13,signature_x13_1) nop nop ld a4,0(a5) // Reload for verification (CHECK IF DATA HAS BEEN UPDATED SUCCESSFULLY) - jal \ADDRESS // Test for execution, an instruction is placed at this address + nop +jal \ADDRESS // Test for execution, an instruction is placed at this address .endm main: diff --git a/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-RX.S b/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-RX.S index 575451c9a..59c30a5d5 100644 --- a/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-RX.S +++ b/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-RX.S @@ -55,7 +55,8 @@ RVTEST_SIGBASE( x13,signature_x13_1) nop nop ld a4,0(a5) // Reload for verification (CHECK IF DATA HAS BEEN UPDATED SUCCESSFULLY) - jal \ADDRESS // Test for execution, an instruction is placed at this address + nop +jal \ADDRESS // Test for execution, an instruction is placed at this address .endm main: diff --git a/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-X-priority-level-2.S b/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-X-priority-level-2.S index ed7cad5f7..01e1f9a73 100644 --- a/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-X-priority-level-2.S +++ b/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-X-priority-level-2.S @@ -49,7 +49,8 @@ RVTEST_SIGBASE( x13,signature_x13_1) nop nop ld a4,0(a5) // Reload for verification (CHECK IF DATA HAS BEEN UPDATED SUCCESSFULLY) - jal \ADDRESS // Test for execution, an instruction is placed at this address + nop +jal \ADDRESS // Test for execution, an instruction is placed at this address .endm main: diff --git a/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-X-priority.S b/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-X-priority.S index 975165fb1..1ebf503bb 100644 --- a/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-X-priority.S +++ b/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-X-priority.S @@ -49,7 +49,8 @@ RVTEST_SIGBASE( x13,signature_x13_1) nop nop ld a4,0(a5) // Reload for verification (CHECK IF DATA HAS BEEN UPDATED SUCCESSFULLY) - jal \ADDRESS // Test for execution, an instruction is placed at this address + nop +jal \ADDRESS // Test for execution, an instruction is placed at this address .endm main: diff --git a/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-X.S b/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-X.S index e5e523919..2cf079988 100644 --- a/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-X.S +++ b/riscv-test-suite/rv64i_m/pmp64/pmp64-TOR-X.S @@ -55,7 +55,8 @@ RVTEST_SIGBASE( x13,signature_x13_1) nop nop ld a4,0(a5) // Reload for verification (CHECK IF DATA HAS BEEN UPDATED SUCCESSFULLY) - jal \ADDRESS // Test for execution, an instruction is placed at this address + nop +jal \ADDRESS // Test for execution, an instruction is placed at this address .endm main: