aboutsummaryrefslogtreecommitdiff
path: root/opcodes-rv64b
diff options
context:
space:
mode:
authorAndrew Waterman <andrew@sifive.com>2020-06-10 02:05:32 -0700
committerAndrew Waterman <andrew@sifive.com>2020-06-10 02:07:12 -0700
commit4f733d70be0d86d3d4a46e87bd7f5231c06d4546 (patch)
tree5ca5db1de5b08b06ae266f40142043f6e19acaf3 /opcodes-rv64b
parentde0aeefcc4c9cf0806b29e03822e2978556feb04 (diff)
downloadriscv-opcodes-4f733d70be0d86d3d4a46e87bd7f5231c06d4546.zip
riscv-opcodes-4f733d70be0d86d3d4a46e87bd7f5231c06d4546.tar.gz
riscv-opcodes-4f733d70be0d86d3d4a46e87bd7f5231c06d4546.tar.bz2
Rebase d242e1ed7 onto master
Diffstat (limited to 'opcodes-rv64b')
-rw-r--r--opcodes-rv64b62
1 files changed, 62 insertions, 0 deletions
diff --git a/opcodes-rv64b b/opcodes-rv64b
new file mode 100644
index 0000000..160dd24
--- /dev/null
+++ b/opcodes-rv64b
@@ -0,0 +1,62 @@
+# RV64B additions to RV32B
+
+bmatflip rd rs1 31..20=0x603 14..12=1 6..2=0x04 1..0=3
+crc32.d rd rs1 31..20=0x613 14..12=1 6..2=0x04 1..0=3
+crc32c.d rd rs1 31..20=0x61B 14..12=1 6..2=0x04 1..0=3
+
+bmator rd rs1 rs2 31..25=4 14..12=3 6..2=0x0C 1..0=3
+bmatxor rd rs1 rs2 31..25=36 14..12=3 6..2=0x0C 1..0=3
+
+addiwu rd rs1 imm12 14..12=4 6..2=0x06 1..0=3
+slliu.w rd rs1 31..26=2 shamt 14..12=1 6..2=0x06 1..0=3
+
+addwu rd rs1 rs2 31..25=5 14..12=0 6..2=0x0E 1..0=3
+subwu rd rs1 rs2 31..25=37 14..12=0 6..2=0x0E 1..0=3
+addu.w rd rs1 rs2 31..25=4 14..12=0 6..2=0x0E 1..0=3
+subu.w rd rs1 rs2 31..25=36 14..12=0 6..2=0x0E 1..0=3
+
+slow rd rs1 rs2 31..25=16 14..12=1 6..2=0x0E 1..0=3
+srow rd rs1 rs2 31..25=16 14..12=5 6..2=0x0E 1..0=3
+rolw rd rs1 rs2 31..25=48 14..12=1 6..2=0x0E 1..0=3
+rorw rd rs1 rs2 31..25=48 14..12=5 6..2=0x0E 1..0=3
+
+sbclrw rd rs1 rs2 31..25=36 14..12=1 6..2=0x0E 1..0=3
+sbsetw rd rs1 rs2 31..25=20 14..12=1 6..2=0x0E 1..0=3
+sbinvw rd rs1 rs2 31..25=52 14..12=1 6..2=0x0E 1..0=3
+sbextw rd rs1 rs2 31..25=36 14..12=5 6..2=0x0E 1..0=3
+gorcw rd rs1 rs2 31..25=20 14..12=5 6..2=0x0E 1..0=3
+grevw rd rs1 rs2 31..25=52 14..12=5 6..2=0x0E 1..0=3
+
+sloiw rd rs1 31..26=8 25=0 shamtw 14..12=1 6..2=0x06 1..0=3
+sroiw rd rs1 31..26=8 25=0 shamtw 14..12=5 6..2=0x06 1..0=3
+roriw rd rs1 31..26=24 25=0 shamtw 14..12=5 6..2=0x06 1..0=3
+
+sbclriw rd rs1 31..26=18 25=0 shamtw 14..12=1 6..2=0x06 1..0=3
+sbsetiw rd rs1 31..26=10 25=0 shamtw 14..12=1 6..2=0x06 1..0=3
+sbinviw rd rs1 31..26=26 25=0 shamtw 14..12=1 6..2=0x06 1..0=3
+gorciw rd rs1 31..26=10 25=0 shamtw 14..12=5 6..2=0x06 1..0=3
+greviw rd rs1 31..26=26 25=0 shamtw 14..12=5 6..2=0x06 1..0=3
+
+fslw rd rs1 rs2 rs3 26..25=2 14..12=1 6..2=0x0E 1..0=3
+fsrw rd rs1 rs2 rs3 26..25=2 14..12=5 6..2=0x0E 1..0=3
+fsriw rd rs1 shamtw rs3 26..25=2 14..12=5 6..2=0x06 1..0=3
+
+clzw rd rs1 31..20=0x600 14..12=1 6..2=0x06 1..0=3
+ctzw rd rs1 31..20=0x601 14..12=1 6..2=0x06 1..0=3
+pcntw rd rs1 31..20=0x602 14..12=1 6..2=0x06 1..0=3
+
+sh1addu.w rd rs1 rs2 31..25=16 14..12=2 6..2=0x0E 1..0=3
+sh2addu.w rd rs1 rs2 31..25=16 14..12=4 6..2=0x0E 1..0=3
+sh3addu.w rd rs1 rs2 31..25=16 14..12=6 6..2=0x0E 1..0=3
+
+clmulw rd rs1 rs2 31..25=5 14..12=1 6..2=0x0E 1..0=3
+clmulrw rd rs1 rs2 31..25=5 14..12=2 6..2=0x0E 1..0=3
+clmulhw rd rs1 rs2 31..25=5 14..12=3 6..2=0x0E 1..0=3
+
+shflw rd rs1 rs2 31..25=4 14..12=1 6..2=0x0E 1..0=3
+unshflw rd rs1 rs2 31..25=4 14..12=5 6..2=0x0E 1..0=3
+bextw rd rs1 rs2 31..25=4 14..12=6 6..2=0x0E 1..0=3
+bdepw rd rs1 rs2 31..25=36 14..12=6 6..2=0x0E 1..0=3
+packw rd rs1 rs2 31..25=4 14..12=4 6..2=0x0E 1..0=3
+packuw rd rs1 rs2 31..25=36 14..12=4 6..2=0x0E 1..0=3
+bfpw rd rs1 rs2 31..25=36 14..12=7 6..2=0x0E 1..0=3