aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Waterman <waterman@s141.Millennium.Berkeley.EDU>2011-05-13 14:56:57 -0700
committerAndrew Waterman <waterman@s141.Millennium.Berkeley.EDU>2011-05-13 14:56:57 -0700
commit84ae9f2862f26b24877a42ba6e05d1dcec6c525e (patch)
treebbff32f64bed9b34301cd0faee2d8bc4982591d7
parent8a5f662532f4fae850b686b87573b25289b024b3 (diff)
downloadriscv-pk-84ae9f2862f26b24877a42ba6e05d1dcec6c525e.zip
riscv-pk-84ae9f2862f26b24877a42ba6e05d1dcec6c525e.tar.gz
riscv-pk-84ae9f2862f26b24877a42ba6e05d1dcec6c525e.tar.bz2
tweaked encoding of rdcycle & cousins
-rw-r--r--pk/riscv-opc.h20
1 files changed, 13 insertions, 7 deletions
diff --git a/pk/riscv-opc.h b/pk/riscv-opc.h
index 04bde62..138b892 100644
--- a/pk/riscv-opc.h
+++ b/pk/riscv-opc.h
@@ -36,13 +36,13 @@
#define MATCH_LH 0x83
#define MASK_LH 0x3ff
#define MATCH_FCVT_D_W 0xe0d3
-#define MASK_FCVT_D_W 0x3fffff
+#define MASK_FCVT_D_W 0x3ff1ff
#define MATCH_LW 0x103
#define MASK_LW 0x3ff
#define MATCH_ADD 0x33
#define MASK_ADD 0x1ffff
#define MATCH_FCVT_D_S 0x100d3
-#define MASK_FCVT_D_S 0x3fffff
+#define MASK_FCVT_D_S 0x3ff1ff
#define MATCH_FENCE_G_V 0x2af
#define MASK_FENCE_G_V 0x3ff
#define MATCH_MFPCR 0x17b
@@ -55,8 +55,8 @@
#define MASK_SBSEG_V 0x1ffff
#define MATCH_BNE 0xe3
#define MASK_BNE 0x3ff
-#define MATCH_MTPCR 0x1fb
-#define MASK_MTPCR 0xf801ffff
+#define MATCH_RDCYCLE 0x277
+#define MASK_RDCYCLE 0x7ffffff
#define MATCH_FCVT_S_D 0x11053
#define MASK_FCVT_S_D 0x3ff1ff
#define MATCH_C_BNE 0x11
@@ -71,8 +71,8 @@
#define MASK_DI 0x7ffffff
#define MATCH_SLTIU 0x193
#define MASK_SLTIU 0x3ff
-#define MATCH_C_ADD 0x1a
-#define MASK_C_ADD 0x801f
+#define MATCH_MTPCR 0x1fb
+#define MASK_MTPCR 0xf801ffff
#define MATCH_C_SWSP 0x8
#define MASK_C_SWSP 0x1f
#define MATCH_C_LD 0x9
@@ -258,9 +258,11 @@
#define MATCH_FEQ_D 0x150d3
#define MASK_FEQ_D 0x1ffff
#define MATCH_FCVT_D_WU 0xf0d3
-#define MASK_FCVT_D_WU 0x3fffff
+#define MASK_FCVT_D_WU 0x3ff1ff
#define MATCH_OR 0x333
#define MASK_OR 0x1ffff
+#define MATCH_RDINSTRET 0xa77
+#define MASK_RDINSTRET 0x7ffffff
#define MATCH_FCVT_WU_D 0xb0d3
#define MASK_FCVT_WU_D 0x3ff1ff
#define MATCH_SUBW 0x1003b
@@ -289,6 +291,8 @@
#define MASK_LHU_V 0x3fffff
#define MATCH_MOV_US 0x1018b
#define MASK_MOV_US 0x1ffff
+#define MATCH_RDTIME 0x677
+#define MASK_RDTIME 0x7ffffff
#define MATCH_ANDI 0x393
#define MASK_ANDI 0x3ff
#define MATCH_FSW_V 0xd0b
@@ -447,6 +451,8 @@
#define MASK_SHSEG_V 0x1ffff
#define MATCH_FMOV_US 0x1818b
#define MASK_FMOV_US 0x1ffff
+#define MATCH_C_ADD 0x1a
+#define MASK_C_ADD 0x801f
#define MATCH_FCVT_LU_D 0x90d3
#define MASK_FCVT_LU_D 0x3ff1ff
#define MATCH_LHUSEG_V 0x228b