aboutsummaryrefslogtreecommitdiff
path: root/rv64_i
diff options
context:
space:
mode:
authorAndrew Waterman <andrew@sifive.com>2023-01-12 13:20:38 -0800
committerAndrew Waterman <andrew@sifive.com>2023-01-12 13:25:03 -0800
commit37a0ce0f931ebae564a20878126b15530a3f2cc4 (patch)
tree24fac6e1004aaa14329b9209a324b00380d57a07 /rv64_i
parente96108394230fe7d5c8952e518713dbf88dd2d4f (diff)
downloadriscv-opcodes-37a0ce0f931ebae564a20878126b15530a3f2cc4.zip
riscv-opcodes-37a0ce0f931ebae564a20878126b15530a3f2cc4.tar.gz
riscv-opcodes-37a0ce0f931ebae564a20878126b15530a3f2cc4.tar.bz2
Fix backwards incompatibility introduced by RV128 opcodes in #112
Adding RV128 shift opcodes changed what metadata we emit for SLLI, SRLI, and SRAI. Thus, downstream tooling that relies on these to connote the RV64 variants of these instructions is semantically affected. Fix by reverting SLLI etc. to being the RV64 variants.
Diffstat (limited to 'rv64_i')
-rw-r--r--rv64_i6
1 files changed, 3 insertions, 3 deletions
diff --git a/rv64_i b/rv64_i
index 4d2617d..3fad043 100644
--- a/rv64_i
+++ b/rv64_i
@@ -4,9 +4,9 @@ lwu rd rs1 imm12 14..12=6 6..2=0x00 1..0=3
ld rd rs1 imm12 14..12=3 6..2=0x00 1..0=3
sd imm12hi rs1 rs2 imm12lo 14..12=3 6..2=0x08 1..0=3
-$pseudo_op rv128_i::slli slli rd rs1 31..26=0 shamtd 14..12=1 6..2=0x04 1..0=3
-$pseudo_op rv128_i::srli srli rd rs1 31..26=0 shamtd 14..12=5 6..2=0x04 1..0=3
-$pseudo_op rv128_i::srai srai rd rs1 31..26=16 shamtd 14..12=5 6..2=0x04 1..0=3
+slli rd rs1 31..26=0 shamtd 14..12=1 6..2=0x04 1..0=3
+srli rd rs1 31..26=0 shamtd 14..12=5 6..2=0x04 1..0=3
+srai rd rs1 31..26=16 shamtd 14..12=5 6..2=0x04 1..0=3
addiw rd rs1 imm12 14..12=0 6..2=0x06 1..0=3
slliw rd rs1 31..25=0 shamtw 14..12=1 6..2=0x06 1..0=3