Skip to content

Commit 73bc678

Browse files
committed
Fix exception priority for RV32E JAL/JALR
1 parent 5efbfcb commit 73bc678

File tree

3 files changed

+3
-0
lines changed

3 files changed

+3
-0
lines changed

riscv/decode_macros.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
#define RS2 READ_REG(insn.rs2())
2323
#define RS3 READ_REG(insn.rs3())
2424
#define WRITE_RD(value) WRITE_REG(insn.rd(), value)
25+
#define CHECK_RD() CHECK_REG(insn.rd())
2526

2627
/* 0 : int
2728
* 1 : floating

riscv/insns/jal.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
CHECK_RD();
12
reg_t tmp = npc;
23
set_pc(JUMP_TARGET);
34
WRITE_RD(tmp);

riscv/insns/jalr.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
CHECK_RD();
12
reg_t tmp = npc;
23
set_pc((RS1 + insn.i_imm()) & ~reg_t(1));
34
WRITE_RD(tmp);

0 commit comments

Comments
 (0)