From 84c9c26b9bd04876f624cad680145432d8130aaf Mon Sep 17 00:00:00 2001 From: Chun-Ping Chung Date: Mon, 1 Feb 2021 19:38:01 +0800 Subject: RVP: v0.9.1 support --- opcodes-rvp | 46 +++++++++++++++++++++++----------------------- parse_opcodes | 3 --- 2 files changed, 23 insertions(+), 26 deletions(-) diff --git a/opcodes-rvp b/opcodes-rvp index f301433..b061319 100644 --- a/opcodes-rvp +++ b/opcodes-rvp @@ -4,8 +4,8 @@ add64 31..25=0b1100000 rs2 rs1 14..12=0b001 rd 6..0=0b1111111 ave 31..25=0b1110000 rs2 rs1 14..12=0b000 rd 6..0=0b1111111 bitrev 31..25=0b1110011 rs2 rs1 14..12=0b000 rd 6..0=0b1111111 bitrevi 31..26=0b111010 imm6 rs1 14..12=0b000 rd 6..0=0b1111111 -bpick 31..30=0b11 rc rs2 rs1 14..12=0b010 rd 6..0=0b1111111 -clrov 31..20=0b100000000001 19..15=0b00001 14..12=0b111 rd 6..0=0b1110011 +bpick rs3 26..25=0b00 rs2 rs1 14..12=0b011 rd 6..0=0b1111111 +clrov 31..20=0b000000001001 19..15=0b00001 14..12=0b111 rd 6..0=0b1110011 clrs8 31..25=0b1010111 24..20=0b00000 rs1 14..12=0b000 rd 6..0=0b1111111 clrs16 31..25=0b1010111 24..20=0b01000 rs1 14..12=0b000 rd 6..0=0b1111111 clrs32 31..25=0b1010111 24..20=0b11000 rs1 14..12=0b000 rd 6..0=0b1111111 @@ -85,8 +85,8 @@ kslra16 31..25=0b0101011 rs2 rs1 14..12=0b000 rd 6..0=0b1111111 kslra16.u 31..25=0b0110011 rs2 rs1 14..12=0b000 rd 6..0=0b1111111 kslraw 31..25=0b0110111 rs2 rs1 14..12=0b001 rd 6..0=0b1111111 kslraw.u 31..25=0b0111111 rs2 rs1 14..12=0b001 rd 6..0=0b1111111 -kstas16 31..25=0b0001010 rs2 rs1 14..12=0b011 rd 6..0=0b1111111 -kstsa16 31..25=0b0001011 rs2 rs1 14..12=0b011 rd 6..0=0b1111111 +kstas16 31..25=0b1100010 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 +kstsa16 31..25=0b1100011 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 ksub8 31..25=0b0001101 rs2 rs1 14..12=0b000 rd 6..0=0b1111111 ksub16 31..25=0b0001001 rs2 rs1 14..12=0b000 rd 6..0=0b1111111 ksub64 31..25=0b1001001 rs2 rs1 14..12=0b001 rd 6..0=0b1111111 @@ -112,9 +112,9 @@ radd64 31..25=0b1000000 rs2 rs1 14..12=0b001 rd 6..0=0b1111111 raddw 31..25=0b0010000 rs2 rs1 14..12=0b001 rd 6..0=0b1111111 rcras16 31..25=0b0000010 rs2 rs1 14..12=0b000 rd 6..0=0b1111111 rcrsa16 31..25=0b0000011 rs2 rs1 14..12=0b000 rd 6..0=0b1111111 -rdov 31..20=0b100000000001 19..15=0b00000 14..12=0b010 rd 6..0=0b1110011 -rstas16 31..25=0b0000010 rs2 rs1 14..12=0b011 rd 6..0=0b1111111 -rstsa16 31..25=0b0000011 rs2 rs1 14..12=0b011 rd 6..0=0b1111111 +rdov 31..20=0b000000001001 19..15=0b00000 14..12=0b010 rd 6..0=0b1110011 +rstas16 31..25=0b1011010 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 +rstsa16 31..25=0b1011011 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 rsub8 31..25=0b0000101 rs2 rs1 14..12=0b000 rd 6..0=0b1111111 rsub16 31..25=0b0000001 rs2 rs1 14..12=0b000 rd 6..0=0b1111111 rsub64 31..25=0b1000001 rs2 rs1 14..12=0b001 rd 6..0=0b1111111 @@ -183,8 +183,8 @@ srl16 31..25=0b0101001 rs2 rs1 14..12=0b000 rd 6..0=0b1111111 srl16.u 31..25=0b0110001 rs2 rs1 14..12=0b000 rd 6..0=0b1111111 srli16 31..25=0b0111001 24=0b0 imm4 rs1 14..12=0b000 rd 6..0=0b1111111 srli16.u 31..25=0b0111001 24=0b1 imm4 rs1 14..12=0b000 rd 6..0=0b1111111 -stas16 31..25=0b0100010 rs2 rs1 14..12=0b011 rd 6..0=0b1111111 -stsa16 31..25=0b0100011 rs2 rs1 14..12=0b011 rd 6..0=0b1111111 +stas16 31..25=0b1111010 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 +stsa16 31..25=0b1111011 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 sub8 31..25=0b0100101 rs2 rs1 14..12=0b000 rd 6..0=0b1111111 sub16 31..25=0b0100001 rs2 rs1 14..12=0b000 rd 6..0=0b1111111 sub64 31..25=0b1100001 rs2 rs1 14..12=0b001 rd 6..0=0b1111111 @@ -211,8 +211,8 @@ ukcras16 31..25=0b0011010 rs2 rs1 14..12=0b000 rd 6..0=0b1111111 ukcrsa16 31..25=0b0011011 rs2 rs1 14..12=0b000 rd 6..0=0b1111111 ukmar64 31..25=0b1011010 rs2 rs1 14..12=0b001 rd 6..0=0b1111111 ukmsr64 31..25=0b1011011 rs2 rs1 14..12=0b001 rd 6..0=0b1111111 -ukstas16 31..25=0b0011010 rs2 rs1 14..12=0b011 rd 6..0=0b1111111 -ukstsa16 31..25=0b0011011 rs2 rs1 14..12=0b011 rd 6..0=0b1111111 +ukstas16 31..25=0b1110010 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 +ukstsa16 31..25=0b1110011 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 uksub8 31..25=0b0011101 rs2 rs1 14..12=0b000 rd 6..0=0b1111111 uksub16 31..25=0b0011001 rs2 rs1 14..12=0b000 rd 6..0=0b1111111 uksub64 31..25=0b1011001 rs2 rs1 14..12=0b001 rd 6..0=0b1111111 @@ -235,8 +235,8 @@ uradd64 31..25=0b1010000 rs2 rs1 14..12=0b001 rd 6..0=0b1111111 uraddw 31..25=0b0011000 rs2 rs1 14..12=0b001 rd 6..0=0b1111111 urcras16 31..25=0b0010010 rs2 rs1 14..12=0b000 rd 6..0=0b1111111 urcrsa16 31..25=0b0010011 rs2 rs1 14..12=0b000 rd 6..0=0b1111111 -urstas16 31..25=0b0010010 rs2 rs1 14..12=0b011 rd 6..0=0b1111111 -urstsa16 31..25=0b0010011 rs2 rs1 14..12=0b011 rd 6..0=0b1111111 +urstas16 31..25=0b1101010 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 +urstsa16 31..25=0b1101011 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 ursub8 31..25=0b0010101 rs2 rs1 14..12=0b000 rd 6..0=0b1111111 ursub16 31..25=0b0010001 rs2 rs1 14..12=0b000 rd 6..0=0b1111111 ursub64 31..25=0b1010001 rs2 rs1 14..12=0b001 rd 6..0=0b1111111 @@ -279,8 +279,8 @@ ksll32 31..25=0b0110010 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 kslli32 31..25=0b1000010 imm5 rs1 14..12=0b010 rd 6..0=0b1111111 kslra32 31..25=0b0101011 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 kslra32.u 31..25=0b0110011 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 -kstas32 31..25=0b0001000 rs2 rs1 14..12=0b011 rd 6..0=0b1111111 -kstsa32 31..25=0b0001001 rs2 rs1 14..12=0b011 rd 6..0=0b1111111 +kstas32 31..25=0b1100000 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 +kstsa32 31..25=0b1100001 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 ksub32 31..25=0b0001001 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 pkbb32 31..25=0b0000111 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 pkbt32 31..25=0b0001111 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 @@ -289,8 +289,8 @@ pktb32 31..25=0b0011111 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 radd32 31..25=0b0000000 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 rcras32 31..25=0b0000010 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 rcrsa32 31..25=0b0000011 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 -rstas32 31..25=0b0000000 rs2 rs1 14..12=0b011 rd 6..0=0b1111111 -rstsa32 31..25=0b0000001 rs2 rs1 14..12=0b011 rd 6..0=0b1111111 +rstas32 31..25=0b1011000 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 +rstsa32 31..25=0b1011001 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 rsub32 31..25=0b0000001 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 sll32 31..25=0b0101010 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 slli32 31..25=0b0111010 imm5 rs1 14..12=0b010 rd 6..0=0b1111111 @@ -310,20 +310,20 @@ srl32 31..25=0b0101001 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 srl32.u 31..25=0b0110001 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 srli32 31..25=0b0111001 imm5 rs1 14..12=0b010 rd 6..0=0b1111111 srli32.u 31..25=0b1000001 imm5 rs1 14..12=0b010 rd 6..0=0b1111111 -stas32 31..25=0b0100000 rs2 rs1 14..12=0b011 rd 6..0=0b1111111 -stsa32 31..25=0b0100001 rs2 rs1 14..12=0b011 rd 6..0=0b1111111 +stas32 31..25=0b1111000 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 +stsa32 31..25=0b1111001 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 sub32 31..25=0b0100001 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 ukadd32 31..25=0b0011000 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 ukcras32 31..25=0b0011010 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 ukcrsa32 31..25=0b0011011 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 -ukstas32 31..25=0b0011000 rs2 rs1 14..12=0b011 rd 6..0=0b1111111 -ukstsa32 31..25=0b0011001 rs2 rs1 14..12=0b011 rd 6..0=0b1111111 +ukstas32 31..25=0b1110000 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 +ukstsa32 31..25=0b1110001 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 uksub32 31..25=0b0011001 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 umax32 31..25=0b1010001 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 umin32 31..25=0b1010000 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 uradd32 31..25=0b0010000 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 urcras32 31..25=0b0010010 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 urcrsa32 31..25=0b0010011 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 -urstas32 31..25=0b0010000 rs2 rs1 14..12=0b011 rd 6..0=0b1111111 -urstsa32 31..25=0b0010001 rs2 rs1 14..12=0b011 rd 6..0=0b1111111 +urstas32 31..25=0b1101000 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 +urstsa32 31..25=0b1101001 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 ursub32 31..25=0b0010001 rs2 rs1 14..12=0b010 rd 6..0=0b1111111 diff --git a/parse_opcodes b/parse_opcodes index 905bc32..bec7250 100755 --- a/parse_opcodes +++ b/parse_opcodes @@ -300,9 +300,6 @@ csrs = [ (0x33D, 'mhpmevent29'), (0x33E, 'mhpmevent30'), (0x33F, 'mhpmevent31'), - - # rvp - (0x801, 'ucode'), # Standard Machine RO (0xF11, 'mvendorid'), -- cgit v1.1