aboutsummaryrefslogtreecommitdiff
path: root/riscv/encoding.h
diff options
context:
space:
mode:
authorAndrew Waterman <waterman@eecs.berkeley.edu>2014-03-06 18:23:38 -0800
committerAndrew Waterman <waterman@eecs.berkeley.edu>2014-03-06 18:23:38 -0800
commitab14719919d55c1be902c9c723710f1c2c93ecf6 (patch)
tree3907820326c345edde059c6210e96d5c2e0e1e91 /riscv/encoding.h
parente4a605049ae7066004acbdce65d6e87ced84a398 (diff)
downloadspike-ab14719919d55c1be902c9c723710f1c2c93ecf6.zip
spike-ab14719919d55c1be902c9c723710f1c2c93ecf6.tar.gz
spike-ab14719919d55c1be902c9c723710f1c2c93ecf6.tar.bz2
Add fclass.{s|d} instructions
Diffstat (limited to 'riscv/encoding.h')
-rw-r--r--riscv/encoding.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/riscv/encoding.h b/riscv/encoding.h
index 8a4a342..74f72bd 100644
--- a/riscv/encoding.h
+++ b/riscv/encoding.h
@@ -145,6 +145,8 @@
#define MASK_SLTIU 0x707f
#define MATCH_FADD_S 0x53
#define MASK_FADD_S 0xfe00007f
+#define MATCH_FCLASS_D 0xea000053
+#define MASK_FCLASS_D 0xfff0707f
#define MATCH_FCVT_S_W 0x70000053
#define MASK_FCVT_S_W 0xfff0007f
#define MATCH_MUL 0x2000033
@@ -197,6 +199,8 @@
#define MASK_BLT 0x707f
#define MATCH_SCALL 0x73
#define MASK_SCALL 0xffffffff
+#define MATCH_FCLASS_S 0xe8000053
+#define MASK_FCLASS_S 0xfff0707f
#define MATCH_SC_W 0x1800202f
#define MASK_SC_W 0xf800707f
#define MATCH_REM 0x2006033
@@ -487,6 +491,7 @@ DECLARE_INSN(bgeu, MATCH_BGEU, MASK_BGEU)
DECLARE_INSN(fadd_d, MATCH_FADD_D, MASK_FADD_D)
DECLARE_INSN(sltiu, MATCH_SLTIU, MASK_SLTIU)
DECLARE_INSN(fadd_s, MATCH_FADD_S, MASK_FADD_S)
+DECLARE_INSN(fclass_d, MATCH_FCLASS_D, MASK_FCLASS_D)
DECLARE_INSN(fcvt_s_w, MATCH_FCVT_S_W, MASK_FCVT_S_W)
DECLARE_INSN(mul, MATCH_MUL, MASK_MUL)
DECLARE_INSN(amominu_d, MATCH_AMOMINU_D, MASK_AMOMINU_D)
@@ -513,6 +518,7 @@ DECLARE_INSN(xor, MATCH_XOR, MASK_XOR)
DECLARE_INSN(sub, MATCH_SUB, MASK_SUB)
DECLARE_INSN(blt, MATCH_BLT, MASK_BLT)
DECLARE_INSN(scall, MATCH_SCALL, MASK_SCALL)
+DECLARE_INSN(fclass_s, MATCH_FCLASS_S, MASK_FCLASS_S)
DECLARE_INSN(sc_w, MATCH_SC_W, MASK_SC_W)
DECLARE_INSN(rem, MATCH_REM, MASK_REM)
DECLARE_INSN(srliw, MATCH_SRLIW, MASK_SRLIW)