aboutsummaryrefslogtreecommitdiff
path: root/riscv/insns/c_add.h
diff options
context:
space:
mode:
Diffstat (limited to 'riscv/insns/c_add.h')
-rw-r--r--riscv/insns/c_add.h13
1 files changed, 2 insertions, 11 deletions
diff --git a/riscv/insns/c_add.h b/riscv/insns/c_add.h
index c13385e..ab7d4d4 100644
--- a/riscv/insns/c_add.h
+++ b/riscv/insns/c_add.h
@@ -1,12 +1,3 @@
require_extension('C');
-if (insn.rvc_rs2() == 0) {
- if (insn.rvc_rs1() == 0) { // c.ebreak
- throw trap_breakpoint();
- } else { // c.jalr
- reg_t tmp = npc;
- set_pc(RVC_RS1 & ~reg_t(1));
- WRITE_REG(X_RA, tmp);
- }
-} else {
- WRITE_RD(sext_xlen(RVC_RS1 + RVC_RS2));
-}
+require(insn.rvc_rs2() != 0);
+WRITE_RD(sext_xlen(RVC_RS1 + RVC_RS2));