aboutsummaryrefslogtreecommitdiff
path: root/machine/encoding.h
diff options
context:
space:
mode:
authorAndrew Waterman <waterman@cs.berkeley.edu>2016-04-29 10:55:07 -0700
committerAndrew Waterman <waterman@cs.berkeley.edu>2016-04-29 10:55:07 -0700
commitb535cd6dc878ce775766766a10e0ed43a8911ebd (patch)
tree59ce302e88065003eae17d2fb97e0e00bc1f8efd /machine/encoding.h
parent66776bbc3efce7fb4176ca03fb949f556c2c2d57 (diff)
downloadriscv-pk-b535cd6dc878ce775766766a10e0ed43a8911ebd.zip
riscv-pk-b535cd6dc878ce775766766a10e0ed43a8911ebd.tar.gz
riscv-pk-b535cd6dc878ce775766766a10e0ed43a8911ebd.tar.bz2
ERET -> MRET
Diffstat (limited to 'machine/encoding.h')
-rw-r--r--machine/encoding.h21
1 files changed, 15 insertions, 6 deletions
diff --git a/machine/encoding.h b/machine/encoding.h
index 6668932..b219309 100644
--- a/machine/encoding.h
+++ b/machine/encoding.h
@@ -345,12 +345,18 @@
#define MASK_LR_D 0xf9f0707f
#define MATCH_SC_D 0x1800302f
#define MASK_SC_D 0xf800707f
-#define MATCH_SCALL 0x73
-#define MASK_SCALL 0xffffffff
-#define MATCH_SBREAK 0x100073
-#define MASK_SBREAK 0xffffffff
+#define MATCH_ECALL 0x73
+#define MASK_ECALL 0xffffffff
+#define MATCH_EBREAK 0x100073
+#define MASK_EBREAK 0xffffffff
+#define MATCH_URET 0x200073
+#define MASK_URET 0xffffffff
#define MATCH_SRET 0x10200073
#define MASK_SRET 0xffffffff
+#define MATCH_HRET 0x20200073
+#define MASK_HRET 0xffffffff
+#define MATCH_MRET 0x30200073
+#define MASK_MRET 0xffffffff
#define MATCH_SFENCE_VM 0x10400073
#define MASK_SFENCE_VM 0xfff07fff
#define MATCH_WFI 0x10500073
@@ -783,9 +789,12 @@ DECLARE_INSN(amomaxu_d, MATCH_AMOMAXU_D, MASK_AMOMAXU_D)
DECLARE_INSN(amoswap_d, MATCH_AMOSWAP_D, MASK_AMOSWAP_D)
DECLARE_INSN(lr_d, MATCH_LR_D, MASK_LR_D)
DECLARE_INSN(sc_d, MATCH_SC_D, MASK_SC_D)
-DECLARE_INSN(scall, MATCH_SCALL, MASK_SCALL)
-DECLARE_INSN(sbreak, MATCH_SBREAK, MASK_SBREAK)
+DECLARE_INSN(ecall, MATCH_ECALL, MASK_ECALL)
+DECLARE_INSN(ebreak, MATCH_EBREAK, MASK_EBREAK)
+DECLARE_INSN(uret, MATCH_URET, MASK_URET)
DECLARE_INSN(sret, MATCH_SRET, MASK_SRET)
+DECLARE_INSN(hret, MATCH_HRET, MASK_HRET)
+DECLARE_INSN(mret, MATCH_MRET, MASK_MRET)
DECLARE_INSN(sfence_vm, MATCH_SFENCE_VM, MASK_SFENCE_VM)
DECLARE_INSN(wfi, MATCH_WFI, MASK_WFI)
DECLARE_INSN(csrrw, MATCH_CSRRW, MASK_CSRRW)