From 3f860c6d6d34a85e7e712f696959d902a6f24266 Mon Sep 17 00:00:00 2001 From: Brian Date: Thu, 28 Nov 2024 22:46:03 -0700 Subject: [PATCH 01/33] Draft riscv-opcodes generator --- opcodes_maker/generate_instr_dict.py | 148 + opcodes_maker/instr_dict.json | 15446 +++++++++++++++++++++++++ opcodes_maker/sorter.py | 28 + 3 files changed, 15622 insertions(+) create mode 100644 opcodes_maker/generate_instr_dict.py create mode 100644 opcodes_maker/instr_dict.json create mode 100644 opcodes_maker/sorter.py diff --git a/opcodes_maker/generate_instr_dict.py b/opcodes_maker/generate_instr_dict.py new file mode 100644 index 000000000..3560cbb93 --- /dev/null +++ b/opcodes_maker/generate_instr_dict.py @@ -0,0 +1,148 @@ +from typing import List, Dict +import os +import yaml +import json + + +def range_size(range_str: str) -> int: + try: + end, start = map(int, range_str.split('-')) + return abs(end - start) + 1 + except ValueError: + return 0; + +reg_names = {'qs1', 'qs2', 'qd', + 'fs1', 'fs2', 'fd'} + +def GetVariables(vars: List[Dict[str, str]]): + var_names = [] + for var in vars: + var_name = var['name'] + if var_name in reg_names: + # Since strings are immutable. + lst_var_name = list(var_name) + lst_var_name[0] = 'r' + var_name = "".join(lst_var_name) + elif var_name == "shamt": + size = range_size(var['location']) + if size == 5: + var_name = "shamtw" + elif size == 6: + var_name = "shamtd" + var_names.append(var_name) + var_names.reverse() + + return var_names + +def BitStringToHex(bit_str: str) -> str: + new_bit_str = "" + for bit in bit_str: + if bit == '-': + new_bit_str += '0' + else: + new_bit_str += bit + return hex(int(new_bit_str, 2)) + +def GetMask(bit_str: str) -> str: + mask_str = "" + for bit in bit_str: + if bit == '-': + mask_str += '0' + else: + mask_str += '1' + return hex(int(mask_str, 2)) + +def GetExtension(ext, base): + prefix = f'rv{base}_' + final_extensions = [] + + if isinstance(ext, str): + final_extensions.append(prefix + ext.lower()) + elif isinstance(ext, dict): + for _, extensions in ext.items(): + for extension in extensions: + final_extensions.append(prefix + extension.lower()) + final_extensions.reverse() + + return final_extensions + +def find_first_match(data): + if isinstance(data, dict): + for key, value in data.items(): + if key == "match": + return value + elif isinstance(value, (dict, list)): + result = find_first_match(value) + if result is not None: + return result + elif isinstance(data, list): + for item in data: + result = find_first_match(item) + if result is not None: + return result + return "" + +def GetEncodings(enc: str): + n = len(enc) + if n < 32: + return '-' * (32-n) + enc + return enc + +def convert(file_dir: str, json_out): + with open(file_dir, 'r') as file: + data = yaml.safe_load(file) + instr_name = data['name'].replace('.', '_') + + print(instr_name) + encodings = data['encoding'] + + # USE RV_64 + rv64_flag = False + if 'RV64' in encodings: + encodings = encodings['RV64'] + rv64_flag = True + enc_match = GetEncodings(encodings['match']) + + var_names = [] + if 'variables' in encodings: + var_names = GetVariables(encodings['variables']) + + extension = [] + prefix = "" + if rv64_flag: + prefix = "64" + if "base" in data: + extension = GetExtension(data["definedBy"], data["base"]) + else: + extension = GetExtension(data["definedBy"], prefix) + + match_hex = BitStringToHex(enc_match) + match_mask = GetMask(enc_match) + + json_out[instr_name] = { + "encoding": enc_match, + "variable_fields": var_names, + "extension": extension, + "match": match_hex, + "mask": match_mask + } + +def read_yaml_insts(path: str): + yaml_files = [] + for root, _, files in os.walk(path): + for file in files: + if file.endswith('.yaml') or file.endswith('.yml'): + yaml_files.append(os.path.join(root, file)) + return yaml_files + +def main(): + directory = "../arch/inst/" + insts = read_yaml_insts(directory) + + inst_dict = {} + with open('data.json', 'w') as outfile: + for inst_dir in insts: + convert(inst_dir, inst_dict) + json.dump(inst_dict, outfile, indent=4) +main() + diff --git a/opcodes_maker/instr_dict.json b/opcodes_maker/instr_dict.json new file mode 100644 index 000000000..61d282169 --- /dev/null +++ b/opcodes_maker/instr_dict.json @@ -0,0 +1,15446 @@ +{ + "vsm3c_vi": { + "encoding": "1010111----------010-----1110111", + "variable_fields": [ + "vs2", + "zimm5", + "vd" + ], + "extension": [ + "rv_zvksh", + "rv_zvks" + ], + "match": "0xae002077", + "mask": "0xfe00707f" + }, + "vsm3me_vv": { + "encoding": "1000001----------010-----1110111", + "variable_fields": [ + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_zvksh", + "rv_zvks" + ], + "match": "0x82002077", + "mask": "0xfe00707f" + }, + "vsm4k_vi": { + "encoding": "1000011----------010-----1110111", + "variable_fields": [ + "vs2", + "zimm5", + "vd" + ], + "extension": [ + "rv_zvksed", + "rv_zvks" + ], + "match": "0x86002077", + "mask": "0xfe00707f" + }, + "vsm4r_vv": { + "encoding": "1010001-----10000010-----1110111", + "variable_fields": [ + "vs2", + "vd" + ], + "extension": [ + "rv_zvksed", + "rv_zvks" + ], + "match": "0xa2082077", + "mask": "0xfe0ff07f" + }, + "vsm4r_vs": { + "encoding": "1010011-----10000010-----1110111", + "variable_fields": [ + "vs2", + "vd" + ], + "extension": [ + "rv_zvksed", + "rv_zvks" + ], + "match": "0xa6082077", + "mask": "0xfe0ff07f" + }, + "vsha2ms_vv": { + "encoding": "1011011----------010-----1110111", + "variable_fields": [ + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_zvknha", + "rv_zvknhb", + "rv_zvkn" + ], + "match": "0xb6002077", + "mask": "0xfe00707f" + }, + "vsha2ch_vv": { + "encoding": "1011101----------010-----1110111", + "variable_fields": [ + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_zvknha", + "rv_zvknhb", + "rv_zvkn" + ], + "match": "0xba002077", + "mask": "0xfe00707f" + }, + "vsha2cl_vv": { + "encoding": "1011111----------010-----1110111", + "variable_fields": [ + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_zvknha", + "rv_zvknhb", + "rv_zvkn" + ], + "match": "0xbe002077", + "mask": "0xfe00707f" + }, + "vaesdf_vv": { + "encoding": "1010001-----00001010-----1110111", + "variable_fields": [ + "vs2", + "vd" + ], + "extension": [ + "rv_zvkned", + "rv_zvkn" + ], + "match": "0xa200a077", + "mask": "0xfe0ff07f" + }, + "vaesdf_vs": { + "encoding": "1010011-----00001010-----1110111", + "variable_fields": [ + "vs2", + "vd" + ], + "extension": [ + "rv_zvkned", + "rv_zvkn" + ], + "match": "0xa600a077", + "mask": "0xfe0ff07f" + }, + "vaesdm_vv": { + "encoding": "1010001-----00000010-----1110111", + "variable_fields": [ + "vs2", + "vd" + ], + "extension": [ + "rv_zvkned", + "rv_zvkn" + ], + "match": "0xa2002077", + "mask": "0xfe0ff07f" + }, + "vaesdm_vs": { + "encoding": "1010011-----00000010-----1110111", + "variable_fields": [ + "vs2", + "vd" + ], + "extension": [ + "rv_zvkned", + "rv_zvkn" + ], + "match": "0xa6002077", + "mask": "0xfe0ff07f" + }, + "vaesef_vv": { + "encoding": "1010001-----00011010-----1110111", + "variable_fields": [ + "vs2", + "vd" + ], + "extension": [ + "rv_zvkned", + "rv_zvkn" + ], + "match": "0xa201a077", + "mask": "0xfe0ff07f" + }, + "vaesef_vs": { + "encoding": "1010011-----00011010-----1110111", + "variable_fields": [ + "vs2", + "vd" + ], + "extension": [ + "rv_zvkned", + "rv_zvkn" + ], + "match": "0xa601a077", + "mask": "0xfe0ff07f" + }, + "vaesem_vv": { + "encoding": "1010001-----00010010-----1110111", + "variable_fields": [ + "vs2", + "vd" + ], + "extension": [ + "rv_zvkned", + "rv_zvkn" + ], + "match": "0xa2012077", + "mask": "0xfe0ff07f" + }, + "vaesem_vs": { + "encoding": "1010011-----00010010-----1110111", + "variable_fields": [ + "vs2", + "vd" + ], + "extension": [ + "rv_zvkned", + "rv_zvkn" + ], + "match": "0xa6012077", + "mask": "0xfe0ff07f" + }, + "vaesz_vs": { + "encoding": "1010011-----00111010-----1110111", + "variable_fields": [ + "vs2", + "vd" + ], + "extension": [ + "rv_zvkned", + "rv_zvkn" + ], + "match": "0xa603a077", + "mask": "0xfe0ff07f" + }, + "vaeskf1_vi": { + "encoding": "1000101----------010-----1110111", + "variable_fields": [ + "vs2", + "zimm5", + "vd" + ], + "extension": [ + "rv_zvkned", + "rv_zvkn" + ], + "match": "0x8a002077", + "mask": "0xfe00707f" + }, + "vaeskf2_vi": { + "encoding": "1010101----------010-----1110111", + "variable_fields": [ + "vs2", + "zimm5", + "vd" + ], + "extension": [ + "rv_zvkned", + "rv_zvkn" + ], + "match": "0xaa002077", + "mask": "0xfe00707f" + }, + "vgmul_vv": { + "encoding": "1010001-----10001010-----1110111", + "variable_fields": [ + "vs2", + "vd" + ], + "extension": [ + "rv_zvkg" + ], + "match": "0xa208a077", + "mask": "0xfe0ff07f" + }, + "vghsh_vv": { + "encoding": "1011001----------010-----1110111", + "variable_fields": [ + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_zvkg" + ], + "match": "0xb2002077", + "mask": "0xfe00707f" + }, + "vfwmaccbf16_vv": { + "encoding": "111011-----------001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_zvfbfwma" + ], + "match": "0xec001057", + "mask": "0xfc00707f" + }, + "vfwmaccbf16_vf": { + "encoding": "111011-----------101-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_zvfbfwma" + ], + "match": "0xec005057", + "mask": "0xfc00707f" + }, + "vfncvtbf16_f_f_w": { + "encoding": "010010------11101001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vd" + ], + "extension": [ + "rv_zvfbfmin" + ], + "match": "0x480e9057", + "mask": "0xfc0ff07f" + }, + "vfwcvtbf16_f_f_v": { + "encoding": "010010------01101001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vd" + ], + "extension": [ + "rv_zvfbfmin" + ], + "match": "0x48069057", + "mask": "0xfc0ff07f" + }, + "vclmul_vv": { + "encoding": "001100-----------010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_zvbc", + "rv_zvks", + "rv_zvkn" + ], + "match": "0x30002057", + "mask": "0xfc00707f" + }, + "vclmul_vx": { + "encoding": "001100-----------110-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_zvbc", + "rv_zvks", + "rv_zvkn" + ], + "match": "0x30006057", + "mask": "0xfc00707f" + }, + "vclmulh_vv": { + "encoding": "001101-----------010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_zvbc", + "rv_zvks", + "rv_zvkn" + ], + "match": "0x34002057", + "mask": "0xfc00707f" + }, + "vclmulh_vx": { + "encoding": "001101-----------110-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_zvbc", + "rv_zvks", + "rv_zvkn" + ], + "match": "0x34006057", + "mask": "0xfc00707f" + }, + "vandn_vv": { + "encoding": "000001-----------000-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_zvbb", + "rv_zvks", + "rv_zvkn" + ], + "match": "0x4000057", + "mask": "0xfc00707f" + }, + "vandn_vx": { + "encoding": "000001-----------100-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_zvbb", + "rv_zvks", + "rv_zvkn" + ], + "match": "0x4004057", + "mask": "0xfc00707f" + }, + "vbrev_v": { + "encoding": "010010------01010010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vd" + ], + "extension": [ + "rv_zvbb", + "rv_zvks", + "rv_zvkn" + ], + "match": "0x48052057", + "mask": "0xfc0ff07f" + }, + "vbrev8_v": { + "encoding": "010010------01000010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vd" + ], + "extension": [ + "rv_zvbb", + "rv_zvks", + "rv_zvkn" + ], + "match": "0x48042057", + "mask": "0xfc0ff07f" + }, + "vrev8_v": { + "encoding": "010010------01001010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vd" + ], + "extension": [ + "rv_zvbb", + "rv_zvks", + "rv_zvkn" + ], + "match": "0x4804a057", + "mask": "0xfc0ff07f" + }, + "vclz_v": { + "encoding": "010010------01100010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vd" + ], + "extension": [ + "rv_zvbb", + "rv_zvks", + "rv_zvkn" + ], + "match": "0x48062057", + "mask": "0xfc0ff07f" + }, + "vctz_v": { + "encoding": "010010------01101010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vd" + ], + "extension": [ + "rv_zvbb", + "rv_zvks", + "rv_zvkn" + ], + "match": "0x4806a057", + "mask": "0xfc0ff07f" + }, + "vcpop_v": { + "encoding": "010010------01110010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vd" + ], + "extension": [ + "rv_zvbb", + "rv_zvks", + "rv_zvkn" + ], + "match": "0x48072057", + "mask": "0xfc0ff07f" + }, + "vrol_vv": { + "encoding": "010101-----------000-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_zvbb", + "rv_zvks", + "rv_zvkn" + ], + "match": "0x54000057", + "mask": "0xfc00707f" + }, + "vrol_vx": { + "encoding": "010101-----------100-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_zvbb", + "rv_zvks", + "rv_zvkn" + ], + "match": "0x54004057", + "mask": "0xfc00707f" + }, + "vror_vv": { + "encoding": "010100-----------000-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_zvbb", + "rv_zvks", + "rv_zvkn" + ], + "match": "0x50000057", + "mask": "0xfc00707f" + }, + "vror_vx": { + "encoding": "010100-----------100-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_zvbb", + "rv_zvks", + "rv_zvkn" + ], + "match": "0x50004057", + "mask": "0xfc00707f" + }, + "vror_vi": { + "encoding": "01010------------011-----1010111", + "variable_fields": [ + "zimm6hi", + "vm", + "vs2", + "zimm6lo", + "vd" + ], + "extension": [ + "rv_zvbb", + "rv_zvks", + "rv_zvkn" + ], + "match": "0x50003057", + "mask": "0xf800707f" + }, + "vwsll_vv": { + "encoding": "110101-----------000-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_zvbb", + "rv_zvks", + "rv_zvkn" + ], + "match": "0xd4000057", + "mask": "0xfc00707f" + }, + "vwsll_vx": { + "encoding": "110101-----------100-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_zvbb", + "rv_zvks", + "rv_zvkn" + ], + "match": "0xd4004057", + "mask": "0xfc00707f" + }, + "vwsll_vi": { + "encoding": "110101-----------011-----1010111", + "variable_fields": [ + "vm", + "vs2", + "zimm5", + "vd" + ], + "extension": [ + "rv_zvbb", + "rv_zvks", + "rv_zvkn" + ], + "match": "0xd4003057", + "mask": "0xfc00707f" + }, + "sm3p0": { + "encoding": "000100001000-----001-----0010011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv_zksh", + "rv_zks" + ], + "match": "0x10801013", + "mask": "0xfff0707f" + }, + "sm3p1": { + "encoding": "000100001001-----001-----0010011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv_zksh", + "rv_zks" + ], + "match": "0x10901013", + "mask": "0xfff0707f" + }, + "sm4ed": { + "encoding": "--11000----------000-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "bs" + ], + "extension": [ + "rv_zksed", + "rv_zks" + ], + "match": "0x30000033", + "mask": "0x3e00707f" + }, + "sm4ks": { + "encoding": "--11010----------000-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "bs" + ], + "extension": [ + "rv_zksed", + "rv_zks" + ], + "match": "0x34000033", + "mask": "0x3e00707f" + }, + "sha256sum0": { + "encoding": "000100000000-----001-----0010011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv_zknh", + "rv_zkn", + "rv_zk" + ], + "match": "0x10001013", + "mask": "0xfff0707f" + }, + "sha256sum1": { + "encoding": "000100000001-----001-----0010011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv_zknh", + "rv_zkn", + "rv_zk" + ], + "match": "0x10101013", + "mask": "0xfff0707f" + }, + "sha256sig0": { + "encoding": "000100000010-----001-----0010011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv_zknh", + "rv_zkn", + "rv_zk" + ], + "match": "0x10201013", + "mask": "0xfff0707f" + }, + "sha256sig1": { + "encoding": "000100000011-----001-----0010011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv_zknh", + "rv_zkn", + "rv_zk" + ], + "match": "0x10301013", + "mask": "0xfff0707f" + }, + "mop_r_N": { + "encoding": "1-00--0111-------100-----1110011", + "variable_fields": [ + "mop_r_t_30", + "mop_r_t_27_26", + "mop_r_t_21_20", + "rd", + "rs1" + ], + "extension": [ + "rv_zimop" + ], + "match": "0x81c04073", + "mask": "0xb3c0707f" + }, + "mop_rr_N": { + "encoding": "1-00--1----------100-----1110011", + "variable_fields": [ + "mop_rr_t_30", + "mop_rr_t_27_26", + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_zimop" + ], + "match": "0x82004073", + "mask": "0xb200707f" + }, + "fence_i": { + "encoding": "-----------------001-----0001111", + "variable_fields": [ + "imm12", + "rs1", + "rd" + ], + "extension": [ + "rv_zifencei" + ], + "match": "0x100f", + "mask": "0x707f" + }, + "csrrw": { + "encoding": "-----------------001-----1110011", + "variable_fields": [ + "rd", + "rs1", + "csr" + ], + "extension": [ + "rv_zicsr" + ], + "match": "0x1073", + "mask": "0x707f" + }, + "csrrs": { + "encoding": "-----------------010-----1110011", + "variable_fields": [ + "rd", + "rs1", + "csr" + ], + "extension": [ + "rv_zicsr" + ], + "match": "0x2073", + "mask": "0x707f" + }, + "csrrc": { + "encoding": "-----------------011-----1110011", + "variable_fields": [ + "rd", + "rs1", + "csr" + ], + "extension": [ + "rv_zicsr" + ], + "match": "0x3073", + "mask": "0x707f" + }, + "csrrwi": { + "encoding": "-----------------101-----1110011", + "variable_fields": [ + "rd", + "csr", + "zimm" + ], + "extension": [ + "rv_zicsr" + ], + "match": "0x5073", + "mask": "0x707f" + }, + "csrrsi": { + "encoding": "-----------------110-----1110011", + "variable_fields": [ + "rd", + "csr", + "zimm" + ], + "extension": [ + "rv_zicsr" + ], + "match": "0x6073", + "mask": "0x707f" + }, + "csrrci": { + "encoding": "-----------------111-----1110011", + "variable_fields": [ + "rd", + "csr", + "zimm" + ], + "extension": [ + "rv_zicsr" + ], + "match": "0x7073", + "mask": "0x707f" + }, + "czero_eqz": { + "encoding": "0000111----------101-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_zicond" + ], + "match": "0xe005033", + "mask": "0xfe00707f" + }, + "czero_nez": { + "encoding": "0000111----------111-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_zicond" + ], + "match": "0xe007033", + "mask": "0xfe00707f" + }, + "ssamoswap_w": { + "encoding": "01001------------010-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv_zicfiss" + ], + "match": "0x4800202f", + "mask": "0xf800707f" + }, + "ssamoswap_d": { + "encoding": "01001------------011-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv_zicfiss" + ], + "match": "0x4800302f", + "mask": "0xf800707f" + }, + "cbo_clean": { + "encoding": "000000000001-----010000000001111", + "variable_fields": [ + "rs1" + ], + "extension": [ + "rv_zicbo" + ], + "match": "0x10200f", + "mask": "0xfff07fff" + }, + "cbo_flush": { + "encoding": "000000000010-----010000000001111", + "variable_fields": [ + "rs1" + ], + "extension": [ + "rv_zicbo" + ], + "match": "0x20200f", + "mask": "0xfff07fff" + }, + "cbo_inval": { + "encoding": "000000000000-----010000000001111", + "variable_fields": [ + "rs1" + ], + "extension": [ + "rv_zicbo" + ], + "match": "0x200f", + "mask": "0xfff07fff" + }, + "cbo_zero": { + "encoding": "000000000100-----010000000001111", + "variable_fields": [ + "rs1" + ], + "extension": [ + "rv_zicbo" + ], + "match": "0x40200f", + "mask": "0xfff07fff" + }, + "fli_h": { + "encoding": "111101000001-----000-----1010011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv_zfh_zfa" + ], + "match": "0xf4100053", + "mask": "0xfff0707f" + }, + "fminm_h": { + "encoding": "0010110----------010-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_zfh_zfa" + ], + "match": "0x2c002053", + "mask": "0xfe00707f" + }, + "fmaxm_h": { + "encoding": "0010110----------011-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_zfh_zfa" + ], + "match": "0x2c003053", + "mask": "0xfe00707f" + }, + "fround_h": { + "encoding": "010001000100-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv_zfh_zfa" + ], + "match": "0x44400053", + "mask": "0xfff0007f" + }, + "froundnx_h": { + "encoding": "010001000101-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv_zfh_zfa" + ], + "match": "0x44500053", + "mask": "0xfff0007f" + }, + "fleq_h": { + "encoding": "1010010----------100-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_zfh_zfa" + ], + "match": "0xa4004053", + "mask": "0xfe00707f" + }, + "fltq_h": { + "encoding": "1010010----------101-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_zfh_zfa" + ], + "match": "0xa4005053", + "mask": "0xfe00707f" + }, + "flh": { + "encoding": "-----------------001-----0000111", + "variable_fields": [ + "rd", + "rs1", + "imm12" + ], + "extension": [ + "rv_zfh" + ], + "match": "0x1007", + "mask": "0x707f" + }, + "fsh": { + "encoding": "-----------------001-----0100111", + "variable_fields": [ + "imm12hi", + "rs1", + "rs2", + "imm12lo" + ], + "extension": [ + "rv_zfh" + ], + "match": "0x1027", + "mask": "0x707f" + }, + "fmadd_h": { + "encoding": "-----10------------------1000011", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "rs3", + "rm" + ], + "extension": [ + "rv_zfh" + ], + "match": "0x4000043", + "mask": "0x600007f" + }, + "fmsub_h": { + "encoding": "-----10------------------1000111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "rs3", + "rm" + ], + "extension": [ + "rv_zfh" + ], + "match": "0x4000047", + "mask": "0x600007f" + }, + "fnmsub_h": { + "encoding": "-----10------------------1001011", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "rs3", + "rm" + ], + "extension": [ + "rv_zfh" + ], + "match": "0x400004b", + "mask": "0x600007f" + }, + "fnmadd_h": { + "encoding": "-----10------------------1001111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "rs3", + "rm" + ], + "extension": [ + "rv_zfh" + ], + "match": "0x400004f", + "mask": "0x600007f" + }, + "fadd_h": { + "encoding": "0000010------------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "rm" + ], + "extension": [ + "rv_zfh" + ], + "match": "0x4000053", + "mask": "0xfe00007f" + }, + "fsub_h": { + "encoding": "0000110------------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "rm" + ], + "extension": [ + "rv_zfh" + ], + "match": "0xc000053", + "mask": "0xfe00007f" + }, + "fmul_h": { + "encoding": "0001010------------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "rm" + ], + "extension": [ + "rv_zfh" + ], + "match": "0x14000053", + "mask": "0xfe00007f" + }, + "fdiv_h": { + "encoding": "0001110------------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "rm" + ], + "extension": [ + "rv_zfh" + ], + "match": "0x1c000053", + "mask": "0xfe00007f" + }, + "fsqrt_h": { + "encoding": "010111000000-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv_zfh" + ], + "match": "0x5c000053", + "mask": "0xfff0007f" + }, + "fsgnj_h": { + "encoding": "0010010----------000-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_zfh" + ], + "match": "0x24000053", + "mask": "0xfe00707f" + }, + "fsgnjn_h": { + "encoding": "0010010----------001-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_zfh" + ], + "match": "0x24001053", + "mask": "0xfe00707f" + }, + "fsgnjx_h": { + "encoding": "0010010----------010-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_zfh" + ], + "match": "0x24002053", + "mask": "0xfe00707f" + }, + "fmin_h": { + "encoding": "0010110----------000-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_zfh" + ], + "match": "0x2c000053", + "mask": "0xfe00707f" + }, + "fmax_h": { + "encoding": "0010110----------001-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_zfh" + ], + "match": "0x2c001053", + "mask": "0xfe00707f" + }, + "fcvt_s_h": { + "encoding": "010000000010-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv_zfh" + ], + "match": "0x40200053", + "mask": "0xfff0007f" + }, + "fcvt_h_s": { + "encoding": "010001000000-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv_zfh" + ], + "match": "0x44000053", + "mask": "0xfff0007f" + }, + "feq_h": { + "encoding": "1010010----------010-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_zfh" + ], + "match": "0xa4002053", + "mask": "0xfe00707f" + }, + "flt_h": { + "encoding": "1010010----------001-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_zfh" + ], + "match": "0xa4001053", + "mask": "0xfe00707f" + }, + "fle_h": { + "encoding": "1010010----------000-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_zfh" + ], + "match": "0xa4000053", + "mask": "0xfe00707f" + }, + "fclass_h": { + "encoding": "111001000000-----001-----1010011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv_zfh" + ], + "match": "0xe4001053", + "mask": "0xfff0707f" + }, + "fcvt_w_h": { + "encoding": "110001000000-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv_zfh" + ], + "match": "0xc4000053", + "mask": "0xfff0007f" + }, + "fcvt_wu_h": { + "encoding": "110001000001-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv_zfh" + ], + "match": "0xc4100053", + "mask": "0xfff0007f" + }, + "fmv_x_h": { + "encoding": "111001000000-----000-----1010011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv_zfh" + ], + "match": "0xe4000053", + "mask": "0xfff0707f" + }, + "fcvt_h_w": { + "encoding": "110101000000-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv_zfh" + ], + "match": "0xd4000053", + "mask": "0xfff0007f" + }, + "fcvt_h_wu": { + "encoding": "110101000001-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv_zfh" + ], + "match": "0xd4100053", + "mask": "0xfff0007f" + }, + "fmv_h_x": { + "encoding": "111101000000-----000-----1010011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv_zfh" + ], + "match": "0xf4000053", + "mask": "0xfff0707f" + }, + "fcvt_bf16_s": { + "encoding": "010001001000-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv_zfbfmin" + ], + "match": "0x44800053", + "mask": "0xfff0007f" + }, + "fcvt_s_bf16": { + "encoding": "010000000110-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv_zfbfmin" + ], + "match": "0x40600053", + "mask": "0xfff0007f" + }, + "cm_jalt": { + "encoding": "----------------101000--------10", + "variable_fields": [ + "c_index" + ], + "extension": [ + "rv_zcmt" + ], + "match": "0xa002", + "mask": "0xfc03" + }, + "cm_push": { + "encoding": "----------------10111000------10", + "variable_fields": [ + "c_rlist", + "c_spimm" + ], + "extension": [ + "rv_zcmp" + ], + "match": "0xb802", + "mask": "0xff03" + }, + "cm_pop": { + "encoding": "----------------10111010------10", + "variable_fields": [ + "c_rlist", + "c_spimm" + ], + "extension": [ + "rv_zcmp" + ], + "match": "0xba02", + "mask": "0xff03" + }, + "cm_popretz": { + "encoding": "----------------10111100------10", + "variable_fields": [ + "c_rlist", + "c_spimm" + ], + "extension": [ + "rv_zcmp" + ], + "match": "0xbc02", + "mask": "0xff03" + }, + "cm_popret": { + "encoding": "----------------10111110------10", + "variable_fields": [ + "c_rlist", + "c_spimm" + ], + "extension": [ + "rv_zcmp" + ], + "match": "0xbe02", + "mask": "0xff03" + }, + "cm_mvsa01": { + "encoding": "----------------101011---01---10", + "variable_fields": [ + "c_sreg1", + "c_sreg2" + ], + "extension": [ + "rv_zcmp" + ], + "match": "0xac22", + "mask": "0xfc63" + }, + "cm_mva01s": { + "encoding": "----------------101011---11---10", + "variable_fields": [ + "c_sreg1", + "c_sreg2" + ], + "extension": [ + "rv_zcmp" + ], + "match": "0xac62", + "mask": "0xfc63" + }, + "c_mop_N": { + "encoding": "----------------01100---10000001", + "variable_fields": [ + "c_mop_t" + ], + "extension": [ + "rv_zcmop" + ], + "match": "0x6081", + "mask": "0xf8ff" + }, + "c_lbu": { + "encoding": "----------------100000--------00", + "variable_fields": [ + "rd_p", + "rs1_p", + "c_uimm2" + ], + "extension": [ + "rv_zcb" + ], + "match": "0x8000", + "mask": "0xfc03" + }, + "c_lhu": { + "encoding": "----------------100001---0----00", + "variable_fields": [ + "rd_p", + "rs1_p", + "c_uimm1" + ], + "extension": [ + "rv_zcb" + ], + "match": "0x8400", + "mask": "0xfc43" + }, + "c_lh": { + "encoding": "----------------100001---1----00", + "variable_fields": [ + "rd_p", + "rs1_p", + "c_uimm1" + ], + "extension": [ + "rv_zcb" + ], + "match": "0x8440", + "mask": "0xfc43" + }, + "c_sb": { + "encoding": "----------------100010--------00", + "variable_fields": [ + "rs2_p", + "rs1_p", + "c_uimm2" + ], + "extension": [ + "rv_zcb" + ], + "match": "0x8800", + "mask": "0xfc03" + }, + "c_sh": { + "encoding": "----------------100011---0----00", + "variable_fields": [ + "rs2_p", + "rs1_p", + "c_uimm1" + ], + "extension": [ + "rv_zcb" + ], + "match": "0x8c00", + "mask": "0xfc43" + }, + "c_zext_b": { + "encoding": "----------------100111---1100001", + "variable_fields": [ + "rd_rs1_p" + ], + "extension": [ + "rv_zcb" + ], + "match": "0x9c61", + "mask": "0xfc7f" + }, + "c_sext_b": { + "encoding": "----------------100111---1100101", + "variable_fields": [ + "rd_rs1_p" + ], + "extension": [ + "rv_zcb" + ], + "match": "0x9c65", + "mask": "0xfc7f" + }, + "c_zext_h": { + "encoding": "----------------100111---1101001", + "variable_fields": [ + "rd_rs1_p" + ], + "extension": [ + "rv_zcb" + ], + "match": "0x9c69", + "mask": "0xfc7f" + }, + "c_sext_h": { + "encoding": "----------------100111---1101101", + "variable_fields": [ + "rd_rs1_p" + ], + "extension": [ + "rv_zcb" + ], + "match": "0x9c6d", + "mask": "0xfc7f" + }, + "c_not": { + "encoding": "----------------100111---1110101", + "variable_fields": [ + "rd_rs1_p" + ], + "extension": [ + "rv_zcb" + ], + "match": "0x9c75", + "mask": "0xfc7f" + }, + "c_mul": { + "encoding": "----------------100111---10---01", + "variable_fields": [ + "rd_rs1_p", + "rs2_p" + ], + "extension": [ + "rv_zcb" + ], + "match": "0x9c41", + "mask": "0xfc63" + }, + "bclr": { + "encoding": "0100100----------001-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_zbs" + ], + "match": "0x48001033", + "mask": "0xfe00707f" + }, + "bext": { + "encoding": "0100100----------101-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_zbs" + ], + "match": "0x48005033", + "mask": "0xfe00707f" + }, + "binv": { + "encoding": "0110100----------001-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_zbs" + ], + "match": "0x68001033", + "mask": "0xfe00707f" + }, + "bset": { + "encoding": "0010100----------001-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_zbs" + ], + "match": "0x28001033", + "mask": "0xfe00707f" + }, + "xperm4": { + "encoding": "0010100----------010-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_zbkx", + "rv_zks", + "rv_zkn", + "rv_zk" + ], + "match": "0x28002033", + "mask": "0xfe00707f" + }, + "xperm8": { + "encoding": "0010100----------100-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_zbkx", + "rv_zks", + "rv_zkn", + "rv_zk" + ], + "match": "0x28004033", + "mask": "0xfe00707f" + }, + "pack": { + "encoding": "0000100----------100-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_zbkb", + "rv_zks", + "rv_zkn", + "rv_zk" + ], + "match": "0x8004033", + "mask": "0xfe00707f" + }, + "packh": { + "encoding": "0000100----------111-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_zbkb", + "rv_zks", + "rv_zkn", + "rv_zk" + ], + "match": "0x8007033", + "mask": "0xfe00707f" + }, + "clmul": { + "encoding": "0000101----------001-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_zbc", + "rv_zks", + "rv_zkn", + "rv_zk", + "rv_zbkc" + ], + "match": "0xa001033", + "mask": "0xfe00707f" + }, + "clmulr": { + "encoding": "0000101----------010-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_zbc" + ], + "match": "0xa002033", + "mask": "0xfe00707f" + }, + "clmulh": { + "encoding": "0000101----------011-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_zbc", + "rv_zks", + "rv_zkn", + "rv_zk", + "rv_zbkc" + ], + "match": "0xa003033", + "mask": "0xfe00707f" + }, + "andn": { + "encoding": "0100000----------111-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_zbb", + "rv_zks", + "rv_zkn", + "rv_zk", + "rv_zbkb" + ], + "match": "0x40007033", + "mask": "0xfe00707f" + }, + "orn": { + "encoding": "0100000----------110-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_zbb", + "rv_zks", + "rv_zkn", + "rv_zk", + "rv_zbkb" + ], + "match": "0x40006033", + "mask": "0xfe00707f" + }, + "xnor": { + "encoding": "0100000----------100-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_zbb", + "rv_zks", + "rv_zkn", + "rv_zk", + "rv_zbkb" + ], + "match": "0x40004033", + "mask": "0xfe00707f" + }, + "clz": { + "encoding": "011000000000-----001-----0010011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv_zbb" + ], + "match": "0x60001013", + "mask": "0xfff0707f" + }, + "ctz": { + "encoding": "011000000001-----001-----0010011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv_zbb" + ], + "match": "0x60101013", + "mask": "0xfff0707f" + }, + "cpop": { + "encoding": "011000000010-----001-----0010011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv_zbb" + ], + "match": "0x60201013", + "mask": "0xfff0707f" + }, + "max": { + "encoding": "0000101----------110-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_zbb" + ], + "match": "0xa006033", + "mask": "0xfe00707f" + }, + "maxu": { + "encoding": "0000101----------111-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_zbb" + ], + "match": "0xa007033", + "mask": "0xfe00707f" + }, + "min": { + "encoding": "0000101----------100-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_zbb" + ], + "match": "0xa004033", + "mask": "0xfe00707f" + }, + "minu": { + "encoding": "0000101----------101-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_zbb" + ], + "match": "0xa005033", + "mask": "0xfe00707f" + }, + "sext_b": { + "encoding": "011000000100-----001-----0010011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv_zbb" + ], + "match": "0x60401013", + "mask": "0xfff0707f" + }, + "sext_h": { + "encoding": "011000000101-----001-----0010011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv_zbb" + ], + "match": "0x60501013", + "mask": "0xfff0707f" + }, + "rol": { + "encoding": "0110000----------001-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_zbb", + "rv_zks", + "rv_zkn", + "rv_zk", + "rv_zbkb" + ], + "match": "0x60001033", + "mask": "0xfe00707f" + }, + "ror": { + "encoding": "0110000----------101-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_zbb", + "rv_zks", + "rv_zkn", + "rv_zk", + "rv_zbkb" + ], + "match": "0x60005033", + "mask": "0xfe00707f" + }, + "sh1add": { + "encoding": "0010000----------010-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_zba" + ], + "match": "0x20002033", + "mask": "0xfe00707f" + }, + "sh2add": { + "encoding": "0010000----------100-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_zba" + ], + "match": "0x20004033", + "mask": "0xfe00707f" + }, + "sh3add": { + "encoding": "0010000----------110-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_zba" + ], + "match": "0x20006033", + "mask": "0xfe00707f" + }, + "wrs_nto": { + "encoding": "00000000110100000000000001110011", + "variable_fields": [], + "extension": [ + "rv_zawrs" + ], + "match": "0xd00073", + "mask": "0xffffffff" + }, + "wrs_sto": { + "encoding": "00000001110100000000000001110011", + "variable_fields": [], + "extension": [ + "rv_zawrs" + ], + "match": "0x1d00073", + "mask": "0xffffffff" + }, + "amocas_w": { + "encoding": "00101------------010-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv_zacas" + ], + "match": "0x2800202f", + "mask": "0xf800707f" + }, + "amocas_d": { + "encoding": "00101------------011-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv_zacas" + ], + "match": "0x2800302f", + "mask": "0xf800707f" + }, + "amoswap_b": { + "encoding": "00001------------000-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv_zabha" + ], + "match": "0x800002f", + "mask": "0xf800707f" + }, + "amoadd_b": { + "encoding": "00000------------000-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv_zabha" + ], + "match": "0x2f", + "mask": "0xf800707f" + }, + "amoxor_b": { + "encoding": "00100------------000-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv_zabha" + ], + "match": "0x2000002f", + "mask": "0xf800707f" + }, + "amoand_b": { + "encoding": "01100------------000-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv_zabha" + ], + "match": "0x6000002f", + "mask": "0xf800707f" + }, + "amoor_b": { + "encoding": "01000------------000-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv_zabha" + ], + "match": "0x4000002f", + "mask": "0xf800707f" + }, + "amomin_b": { + "encoding": "10000------------000-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv_zabha" + ], + "match": "0x8000002f", + "mask": "0xf800707f" + }, + "amomax_b": { + "encoding": "10100------------000-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv_zabha" + ], + "match": "0xa000002f", + "mask": "0xf800707f" + }, + "amominu_b": { + "encoding": "11000------------000-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv_zabha" + ], + "match": "0xc000002f", + "mask": "0xf800707f" + }, + "amomaxu_b": { + "encoding": "11100------------000-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv_zabha" + ], + "match": "0xe000002f", + "mask": "0xf800707f" + }, + "amocas_b": { + "encoding": "00101------------000-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv_zabha" + ], + "match": "0x2800002f", + "mask": "0xf800707f" + }, + "amoswap_h": { + "encoding": "00001------------001-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv_zabha" + ], + "match": "0x800102f", + "mask": "0xf800707f" + }, + "amoadd_h": { + "encoding": "00000------------001-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv_zabha" + ], + "match": "0x102f", + "mask": "0xf800707f" + }, + "amoxor_h": { + "encoding": "00100------------001-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv_zabha" + ], + "match": "0x2000102f", + "mask": "0xf800707f" + }, + "amoand_h": { + "encoding": "01100------------001-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv_zabha" + ], + "match": "0x6000102f", + "mask": "0xf800707f" + }, + "amoor_h": { + "encoding": "01000------------001-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv_zabha" + ], + "match": "0x4000102f", + "mask": "0xf800707f" + }, + "amomin_h": { + "encoding": "10000------------001-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv_zabha" + ], + "match": "0x8000102f", + "mask": "0xf800707f" + }, + "amomax_h": { + "encoding": "10100------------001-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv_zabha" + ], + "match": "0xa000102f", + "mask": "0xf800707f" + }, + "amominu_h": { + "encoding": "11000------------001-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv_zabha" + ], + "match": "0xc000102f", + "mask": "0xf800707f" + }, + "amomaxu_h": { + "encoding": "11100------------001-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv_zabha" + ], + "match": "0xe000102f", + "mask": "0xf800707f" + }, + "amocas_h": { + "encoding": "00101------------001-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv_zabha" + ], + "match": "0x2800102f", + "mask": "0xf800707f" + }, + "vsetivli": { + "encoding": "11---------------111-----1010111", + "variable_fields": [ + "zimm10", + "zimm", + "rd" + ], + "extension": [ + "rv_v" + ], + "match": "0xc0007057", + "mask": "0xc000707f" + }, + "vsetvli": { + "encoding": "0----------------111-----1010111", + "variable_fields": [ + "zimm11", + "rs1", + "rd" + ], + "extension": [ + "rv_v" + ], + "match": "0x7057", + "mask": "0x8000707f" + }, + "vsetvl": { + "encoding": "1000000----------111-----1010111", + "variable_fields": [ + "rs2", + "rs1", + "rd" + ], + "extension": [ + "rv_v" + ], + "match": "0x80007057", + "mask": "0xfe00707f" + }, + "vlm_v": { + "encoding": "000000101011-----000-----0000111", + "variable_fields": [ + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x2b00007", + "mask": "0xfff0707f" + }, + "vsm_v": { + "encoding": "000000101011-----000-----0100111", + "variable_fields": [ + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x2b00027", + "mask": "0xfff0707f" + }, + "vle8_v": { + "encoding": "000000-00000-----000-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x7", + "mask": "0xfdf0707f" + }, + "vlseg2e8_v": { + "encoding": "001000-00000-----000-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x20000007", + "mask": "0xfdf0707f" + }, + "vlseg3e8_v": { + "encoding": "010000-00000-----000-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x40000007", + "mask": "0xfdf0707f" + }, + "vlseg4e8_v": { + "encoding": "011000-00000-----000-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x60000007", + "mask": "0xfdf0707f" + }, + "vlseg5e8_v": { + "encoding": "100000-00000-----000-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x80000007", + "mask": "0xfdf0707f" + }, + "vlseg6e8_v": { + "encoding": "101000-00000-----000-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xa0000007", + "mask": "0xfdf0707f" + }, + "vlseg7e8_v": { + "encoding": "110000-00000-----000-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xc0000007", + "mask": "0xfdf0707f" + }, + "vlseg8e8_v": { + "encoding": "111000-00000-----000-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xe0000007", + "mask": "0xfdf0707f" + }, + "vle16_v": { + "encoding": "000000-00000-----101-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x5007", + "mask": "0xfdf0707f" + }, + "vlseg2e16_v": { + "encoding": "001000-00000-----101-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x20005007", + "mask": "0xfdf0707f" + }, + "vlseg3e16_v": { + "encoding": "010000-00000-----101-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x40005007", + "mask": "0xfdf0707f" + }, + "vlseg4e16_v": { + "encoding": "011000-00000-----101-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x60005007", + "mask": "0xfdf0707f" + }, + "vlseg5e16_v": { + "encoding": "100000-00000-----101-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x80005007", + "mask": "0xfdf0707f" + }, + "vlseg6e16_v": { + "encoding": "101000-00000-----101-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xa0005007", + "mask": "0xfdf0707f" + }, + "vlseg7e16_v": { + "encoding": "110000-00000-----101-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xc0005007", + "mask": "0xfdf0707f" + }, + "vlseg8e16_v": { + "encoding": "111000-00000-----101-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xe0005007", + "mask": "0xfdf0707f" + }, + "vle32_v": { + "encoding": "000000-00000-----110-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x6007", + "mask": "0xfdf0707f" + }, + "vlseg2e32_v": { + "encoding": "001000-00000-----110-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x20006007", + "mask": "0xfdf0707f" + }, + "vlseg3e32_v": { + "encoding": "010000-00000-----110-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x40006007", + "mask": "0xfdf0707f" + }, + "vlseg4e32_v": { + "encoding": "011000-00000-----110-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x60006007", + "mask": "0xfdf0707f" + }, + "vlseg5e32_v": { + "encoding": "100000-00000-----110-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x80006007", + "mask": "0xfdf0707f" + }, + "vlseg6e32_v": { + "encoding": "101000-00000-----110-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xa0006007", + "mask": "0xfdf0707f" + }, + "vlseg7e32_v": { + "encoding": "110000-00000-----110-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xc0006007", + "mask": "0xfdf0707f" + }, + "vlseg8e32_v": { + "encoding": "111000-00000-----110-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xe0006007", + "mask": "0xfdf0707f" + }, + "vle64_v": { + "encoding": "000000-00000-----111-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x7007", + "mask": "0xfdf0707f" + }, + "vlseg2e64_v": { + "encoding": "001000-00000-----111-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x20007007", + "mask": "0xfdf0707f" + }, + "vlseg3e64_v": { + "encoding": "010000-00000-----111-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x40007007", + "mask": "0xfdf0707f" + }, + "vlseg4e64_v": { + "encoding": "011000-00000-----111-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x60007007", + "mask": "0xfdf0707f" + }, + "vlseg5e64_v": { + "encoding": "100000-00000-----111-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x80007007", + "mask": "0xfdf0707f" + }, + "vlseg6e64_v": { + "encoding": "101000-00000-----111-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xa0007007", + "mask": "0xfdf0707f" + }, + "vlseg7e64_v": { + "encoding": "110000-00000-----111-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xc0007007", + "mask": "0xfdf0707f" + }, + "vlseg8e64_v": { + "encoding": "111000-00000-----111-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xe0007007", + "mask": "0xfdf0707f" + }, + "vse8_v": { + "encoding": "000000-00000-----000-----0100111", + "variable_fields": [ + "vm", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x27", + "mask": "0xfdf0707f" + }, + "vsseg2e8_v": { + "encoding": "001000-00000-----000-----0100111", + "variable_fields": [ + "vm", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x20000027", + "mask": "0xfdf0707f" + }, + "vsseg3e8_v": { + "encoding": "010000-00000-----000-----0100111", + "variable_fields": [ + "vm", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x40000027", + "mask": "0xfdf0707f" + }, + "vsseg4e8_v": { + "encoding": "011000-00000-----000-----0100111", + "variable_fields": [ + "vm", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x60000027", + "mask": "0xfdf0707f" + }, + "vsseg5e8_v": { + "encoding": "100000-00000-----000-----0100111", + "variable_fields": [ + "vm", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x80000027", + "mask": "0xfdf0707f" + }, + "vsseg6e8_v": { + "encoding": "101000-00000-----000-----0100111", + "variable_fields": [ + "vm", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xa0000027", + "mask": "0xfdf0707f" + }, + "vsseg7e8_v": { + "encoding": "110000-00000-----000-----0100111", + "variable_fields": [ + "vm", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xc0000027", + "mask": "0xfdf0707f" + }, + "vsseg8e8_v": { + "encoding": "111000-00000-----000-----0100111", + "variable_fields": [ + "vm", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xe0000027", + "mask": "0xfdf0707f" + }, + "vse16_v": { + "encoding": "000000-00000-----101-----0100111", + "variable_fields": [ + "vm", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x5027", + "mask": "0xfdf0707f" + }, + "vsseg2e16_v": { + "encoding": "001000-00000-----101-----0100111", + "variable_fields": [ + "vm", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x20005027", + "mask": "0xfdf0707f" + }, + "vsseg3e16_v": { + "encoding": "010000-00000-----101-----0100111", + "variable_fields": [ + "vm", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x40005027", + "mask": "0xfdf0707f" + }, + "vsseg4e16_v": { + "encoding": "011000-00000-----101-----0100111", + "variable_fields": [ + "vm", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x60005027", + "mask": "0xfdf0707f" + }, + "vsseg5e16_v": { + "encoding": "100000-00000-----101-----0100111", + "variable_fields": [ + "vm", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x80005027", + "mask": "0xfdf0707f" + }, + "vsseg6e16_v": { + "encoding": "101000-00000-----101-----0100111", + "variable_fields": [ + "vm", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xa0005027", + "mask": "0xfdf0707f" + }, + "vsseg7e16_v": { + "encoding": "110000-00000-----101-----0100111", + "variable_fields": [ + "vm", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xc0005027", + "mask": "0xfdf0707f" + }, + "vsseg8e16_v": { + "encoding": "111000-00000-----101-----0100111", + "variable_fields": [ + "vm", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xe0005027", + "mask": "0xfdf0707f" + }, + "vse32_v": { + "encoding": "000000-00000-----110-----0100111", + "variable_fields": [ + "vm", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x6027", + "mask": "0xfdf0707f" + }, + "vsseg2e32_v": { + "encoding": "001000-00000-----110-----0100111", + "variable_fields": [ + "vm", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x20006027", + "mask": "0xfdf0707f" + }, + "vsseg3e32_v": { + "encoding": "010000-00000-----110-----0100111", + "variable_fields": [ + "vm", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x40006027", + "mask": "0xfdf0707f" + }, + "vsseg4e32_v": { + "encoding": "011000-00000-----110-----0100111", + "variable_fields": [ + "vm", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x60006027", + "mask": "0xfdf0707f" + }, + "vsseg5e32_v": { + "encoding": "100000-00000-----110-----0100111", + "variable_fields": [ + "vm", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x80006027", + "mask": "0xfdf0707f" + }, + "vsseg6e32_v": { + "encoding": "101000-00000-----110-----0100111", + "variable_fields": [ + "vm", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xa0006027", + "mask": "0xfdf0707f" + }, + "vsseg7e32_v": { + "encoding": "110000-00000-----110-----0100111", + "variable_fields": [ + "vm", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xc0006027", + "mask": "0xfdf0707f" + }, + "vsseg8e32_v": { + "encoding": "111000-00000-----110-----0100111", + "variable_fields": [ + "vm", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xe0006027", + "mask": "0xfdf0707f" + }, + "vse64_v": { + "encoding": "000000-00000-----111-----0100111", + "variable_fields": [ + "vm", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x7027", + "mask": "0xfdf0707f" + }, + "vsseg2e64_v": { + "encoding": "001000-00000-----111-----0100111", + "variable_fields": [ + "vm", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x20007027", + "mask": "0xfdf0707f" + }, + "vsseg3e64_v": { + "encoding": "010000-00000-----111-----0100111", + "variable_fields": [ + "vm", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x40007027", + "mask": "0xfdf0707f" + }, + "vsseg4e64_v": { + "encoding": "011000-00000-----111-----0100111", + "variable_fields": [ + "vm", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x60007027", + "mask": "0xfdf0707f" + }, + "vsseg5e64_v": { + "encoding": "100000-00000-----111-----0100111", + "variable_fields": [ + "vm", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x80007027", + "mask": "0xfdf0707f" + }, + "vsseg6e64_v": { + "encoding": "101000-00000-----111-----0100111", + "variable_fields": [ + "vm", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xa0007027", + "mask": "0xfdf0707f" + }, + "vsseg7e64_v": { + "encoding": "110000-00000-----111-----0100111", + "variable_fields": [ + "vm", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xc0007027", + "mask": "0xfdf0707f" + }, + "vsseg8e64_v": { + "encoding": "111000-00000-----111-----0100111", + "variable_fields": [ + "vm", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xe0007027", + "mask": "0xfdf0707f" + }, + "vluxei8_v": { + "encoding": "000001-----------000-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x4000007", + "mask": "0xfc00707f" + }, + "vluxseg2ei8_v": { + "encoding": "001001-----------000-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x24000007", + "mask": "0xfc00707f" + }, + "vluxseg3ei8_v": { + "encoding": "010001-----------000-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x44000007", + "mask": "0xfc00707f" + }, + "vluxseg4ei8_v": { + "encoding": "011001-----------000-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x64000007", + "mask": "0xfc00707f" + }, + "vluxseg5ei8_v": { + "encoding": "100001-----------000-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x84000007", + "mask": "0xfc00707f" + }, + "vluxseg6ei8_v": { + "encoding": "101001-----------000-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xa4000007", + "mask": "0xfc00707f" + }, + "vluxseg7ei8_v": { + "encoding": "110001-----------000-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xc4000007", + "mask": "0xfc00707f" + }, + "vluxseg8ei8_v": { + "encoding": "111001-----------000-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xe4000007", + "mask": "0xfc00707f" + }, + "vluxei16_v": { + "encoding": "000001-----------101-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x4005007", + "mask": "0xfc00707f" + }, + "vluxseg2ei16_v": { + "encoding": "001001-----------101-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x24005007", + "mask": "0xfc00707f" + }, + "vluxseg3ei16_v": { + "encoding": "010001-----------101-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x44005007", + "mask": "0xfc00707f" + }, + "vluxseg4ei16_v": { + "encoding": "011001-----------101-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x64005007", + "mask": "0xfc00707f" + }, + "vluxseg5ei16_v": { + "encoding": "100001-----------101-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x84005007", + "mask": "0xfc00707f" + }, + "vluxseg6ei16_v": { + "encoding": "101001-----------101-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xa4005007", + "mask": "0xfc00707f" + }, + "vluxseg7ei16_v": { + "encoding": "110001-----------101-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xc4005007", + "mask": "0xfc00707f" + }, + "vluxseg8ei16_v": { + "encoding": "111001-----------101-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xe4005007", + "mask": "0xfc00707f" + }, + "vluxei32_v": { + "encoding": "000001-----------110-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x4006007", + "mask": "0xfc00707f" + }, + "vluxseg2ei32_v": { + "encoding": "001001-----------110-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x24006007", + "mask": "0xfc00707f" + }, + "vluxseg3ei32_v": { + "encoding": "010001-----------110-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x44006007", + "mask": "0xfc00707f" + }, + "vluxseg4ei32_v": { + "encoding": "011001-----------110-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x64006007", + "mask": "0xfc00707f" + }, + "vluxseg5ei32_v": { + "encoding": "100001-----------110-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x84006007", + "mask": "0xfc00707f" + }, + "vluxseg6ei32_v": { + "encoding": "101001-----------110-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xa4006007", + "mask": "0xfc00707f" + }, + "vluxseg7ei32_v": { + "encoding": "110001-----------110-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xc4006007", + "mask": "0xfc00707f" + }, + "vluxseg8ei32_v": { + "encoding": "111001-----------110-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xe4006007", + "mask": "0xfc00707f" + }, + "vluxei64_v": { + "encoding": "000001-----------111-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x4007007", + "mask": "0xfc00707f" + }, + "vluxseg2ei64_v": { + "encoding": "001001-----------111-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x24007007", + "mask": "0xfc00707f" + }, + "vluxseg3ei64_v": { + "encoding": "010001-----------111-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x44007007", + "mask": "0xfc00707f" + }, + "vluxseg4ei64_v": { + "encoding": "011001-----------111-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x64007007", + "mask": "0xfc00707f" + }, + "vluxseg5ei64_v": { + "encoding": "100001-----------111-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x84007007", + "mask": "0xfc00707f" + }, + "vluxseg6ei64_v": { + "encoding": "101001-----------111-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xa4007007", + "mask": "0xfc00707f" + }, + "vluxseg7ei64_v": { + "encoding": "110001-----------111-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xc4007007", + "mask": "0xfc00707f" + }, + "vluxseg8ei64_v": { + "encoding": "111001-----------111-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xe4007007", + "mask": "0xfc00707f" + }, + "vsuxei8_v": { + "encoding": "000001-----------000-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x4000027", + "mask": "0xfc00707f" + }, + "vsuxseg2ei8_v": { + "encoding": "001001-----------000-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x24000027", + "mask": "0xfc00707f" + }, + "vsuxseg3ei8_v": { + "encoding": "010001-----------000-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x44000027", + "mask": "0xfc00707f" + }, + "vsuxseg4ei8_v": { + "encoding": "011001-----------000-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x64000027", + "mask": "0xfc00707f" + }, + "vsuxseg5ei8_v": { + "encoding": "100001-----------000-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x84000027", + "mask": "0xfc00707f" + }, + "vsuxseg6ei8_v": { + "encoding": "101001-----------000-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xa4000027", + "mask": "0xfc00707f" + }, + "vsuxseg7ei8_v": { + "encoding": "110001-----------000-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xc4000027", + "mask": "0xfc00707f" + }, + "vsuxseg8ei8_v": { + "encoding": "111001-----------000-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xe4000027", + "mask": "0xfc00707f" + }, + "vsuxei16_v": { + "encoding": "000001-----------101-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x4005027", + "mask": "0xfc00707f" + }, + "vsuxseg2ei16_v": { + "encoding": "001001-----------101-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x24005027", + "mask": "0xfc00707f" + }, + "vsuxseg3ei16_v": { + "encoding": "010001-----------101-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x44005027", + "mask": "0xfc00707f" + }, + "vsuxseg4ei16_v": { + "encoding": "011001-----------101-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x64005027", + "mask": "0xfc00707f" + }, + "vsuxseg5ei16_v": { + "encoding": "100001-----------101-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x84005027", + "mask": "0xfc00707f" + }, + "vsuxseg6ei16_v": { + "encoding": "101001-----------101-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xa4005027", + "mask": "0xfc00707f" + }, + "vsuxseg7ei16_v": { + "encoding": "110001-----------101-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xc4005027", + "mask": "0xfc00707f" + }, + "vsuxseg8ei16_v": { + "encoding": "111001-----------101-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xe4005027", + "mask": "0xfc00707f" + }, + "vsuxei32_v": { + "encoding": "000001-----------110-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x4006027", + "mask": "0xfc00707f" + }, + "vsuxseg2ei32_v": { + "encoding": "001001-----------110-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x24006027", + "mask": "0xfc00707f" + }, + "vsuxseg3ei32_v": { + "encoding": "010001-----------110-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x44006027", + "mask": "0xfc00707f" + }, + "vsuxseg4ei32_v": { + "encoding": "011001-----------110-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x64006027", + "mask": "0xfc00707f" + }, + "vsuxseg5ei32_v": { + "encoding": "100001-----------110-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x84006027", + "mask": "0xfc00707f" + }, + "vsuxseg6ei32_v": { + "encoding": "101001-----------110-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xa4006027", + "mask": "0xfc00707f" + }, + "vsuxseg7ei32_v": { + "encoding": "110001-----------110-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xc4006027", + "mask": "0xfc00707f" + }, + "vsuxseg8ei32_v": { + "encoding": "111001-----------110-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xe4006027", + "mask": "0xfc00707f" + }, + "vsuxei64_v": { + "encoding": "000001-----------111-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x4007027", + "mask": "0xfc00707f" + }, + "vsuxseg2ei64_v": { + "encoding": "001001-----------111-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x24007027", + "mask": "0xfc00707f" + }, + "vsuxseg3ei64_v": { + "encoding": "010001-----------111-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x44007027", + "mask": "0xfc00707f" + }, + "vsuxseg4ei64_v": { + "encoding": "011001-----------111-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x64007027", + "mask": "0xfc00707f" + }, + "vsuxseg5ei64_v": { + "encoding": "100001-----------111-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x84007027", + "mask": "0xfc00707f" + }, + "vsuxseg6ei64_v": { + "encoding": "101001-----------111-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xa4007027", + "mask": "0xfc00707f" + }, + "vsuxseg7ei64_v": { + "encoding": "110001-----------111-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xc4007027", + "mask": "0xfc00707f" + }, + "vsuxseg8ei64_v": { + "encoding": "111001-----------111-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xe4007027", + "mask": "0xfc00707f" + }, + "vlse8_v": { + "encoding": "000010-----------000-----0000111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x8000007", + "mask": "0xfc00707f" + }, + "vlsseg2e8_v": { + "encoding": "001010-----------000-----0000111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x28000007", + "mask": "0xfc00707f" + }, + "vlsseg3e8_v": { + "encoding": "010010-----------000-----0000111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x48000007", + "mask": "0xfc00707f" + }, + "vlsseg4e8_v": { + "encoding": "011010-----------000-----0000111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x68000007", + "mask": "0xfc00707f" + }, + "vlsseg5e8_v": { + "encoding": "100010-----------000-----0000111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x88000007", + "mask": "0xfc00707f" + }, + "vlsseg6e8_v": { + "encoding": "101010-----------000-----0000111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xa8000007", + "mask": "0xfc00707f" + }, + "vlsseg7e8_v": { + "encoding": "110010-----------000-----0000111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xc8000007", + "mask": "0xfc00707f" + }, + "vlsseg8e8_v": { + "encoding": "111010-----------000-----0000111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xe8000007", + "mask": "0xfc00707f" + }, + "vlse16_v": { + "encoding": "000010-----------101-----0000111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x8005007", + "mask": "0xfc00707f" + }, + "vlsseg2e16_v": { + "encoding": "001010-----------101-----0000111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x28005007", + "mask": "0xfc00707f" + }, + "vlsseg3e16_v": { + "encoding": "010010-----------101-----0000111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x48005007", + "mask": "0xfc00707f" + }, + "vlsseg4e16_v": { + "encoding": "011010-----------101-----0000111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x68005007", + "mask": "0xfc00707f" + }, + "vlsseg5e16_v": { + "encoding": "100010-----------101-----0000111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x88005007", + "mask": "0xfc00707f" + }, + "vlsseg6e16_v": { + "encoding": "101010-----------101-----0000111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xa8005007", + "mask": "0xfc00707f" + }, + "vlsseg7e16_v": { + "encoding": "110010-----------101-----0000111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xc8005007", + "mask": "0xfc00707f" + }, + "vlsseg8e16_v": { + "encoding": "111010-----------101-----0000111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xe8005007", + "mask": "0xfc00707f" + }, + "vlse32_v": { + "encoding": "000010-----------110-----0000111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x8006007", + "mask": "0xfc00707f" + }, + "vlsseg2e32_v": { + "encoding": "001010-----------110-----0000111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x28006007", + "mask": "0xfc00707f" + }, + "vlsseg3e32_v": { + "encoding": "010010-----------110-----0000111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x48006007", + "mask": "0xfc00707f" + }, + "vlsseg4e32_v": { + "encoding": "011010-----------110-----0000111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x68006007", + "mask": "0xfc00707f" + }, + "vlsseg5e32_v": { + "encoding": "100010-----------110-----0000111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x88006007", + "mask": "0xfc00707f" + }, + "vlsseg6e32_v": { + "encoding": "101010-----------110-----0000111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xa8006007", + "mask": "0xfc00707f" + }, + "vlsseg7e32_v": { + "encoding": "110010-----------110-----0000111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xc8006007", + "mask": "0xfc00707f" + }, + "vlsseg8e32_v": { + "encoding": "111010-----------110-----0000111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xe8006007", + "mask": "0xfc00707f" + }, + "vlse64_v": { + "encoding": "000010-----------111-----0000111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x8007007", + "mask": "0xfc00707f" + }, + "vlsseg2e64_v": { + "encoding": "001010-----------111-----0000111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x28007007", + "mask": "0xfc00707f" + }, + "vlsseg3e64_v": { + "encoding": "010010-----------111-----0000111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x48007007", + "mask": "0xfc00707f" + }, + "vlsseg4e64_v": { + "encoding": "011010-----------111-----0000111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x68007007", + "mask": "0xfc00707f" + }, + "vlsseg5e64_v": { + "encoding": "100010-----------111-----0000111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x88007007", + "mask": "0xfc00707f" + }, + "vlsseg6e64_v": { + "encoding": "101010-----------111-----0000111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xa8007007", + "mask": "0xfc00707f" + }, + "vlsseg7e64_v": { + "encoding": "110010-----------111-----0000111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xc8007007", + "mask": "0xfc00707f" + }, + "vlsseg8e64_v": { + "encoding": "111010-----------111-----0000111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xe8007007", + "mask": "0xfc00707f" + }, + "vsse8_v": { + "encoding": "000010-----------000-----0100111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x8000027", + "mask": "0xfc00707f" + }, + "vssseg2e8_v": { + "encoding": "001010-----------000-----0100111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x28000027", + "mask": "0xfc00707f" + }, + "vssseg3e8_v": { + "encoding": "010010-----------000-----0100111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x48000027", + "mask": "0xfc00707f" + }, + "vssseg4e8_v": { + "encoding": "011010-----------000-----0100111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x68000027", + "mask": "0xfc00707f" + }, + "vssseg5e8_v": { + "encoding": "100010-----------000-----0100111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x88000027", + "mask": "0xfc00707f" + }, + "vssseg6e8_v": { + "encoding": "101010-----------000-----0100111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xa8000027", + "mask": "0xfc00707f" + }, + "vssseg7e8_v": { + "encoding": "110010-----------000-----0100111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xc8000027", + "mask": "0xfc00707f" + }, + "vssseg8e8_v": { + "encoding": "111010-----------000-----0100111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xe8000027", + "mask": "0xfc00707f" + }, + "vsse16_v": { + "encoding": "000010-----------101-----0100111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x8005027", + "mask": "0xfc00707f" + }, + "vssseg2e16_v": { + "encoding": "001010-----------101-----0100111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x28005027", + "mask": "0xfc00707f" + }, + "vssseg3e16_v": { + "encoding": "010010-----------101-----0100111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x48005027", + "mask": "0xfc00707f" + }, + "vssseg4e16_v": { + "encoding": "011010-----------101-----0100111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x68005027", + "mask": "0xfc00707f" + }, + "vssseg5e16_v": { + "encoding": "100010-----------101-----0100111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x88005027", + "mask": "0xfc00707f" + }, + "vssseg6e16_v": { + "encoding": "101010-----------101-----0100111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xa8005027", + "mask": "0xfc00707f" + }, + "vssseg7e16_v": { + "encoding": "110010-----------101-----0100111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xc8005027", + "mask": "0xfc00707f" + }, + "vssseg8e16_v": { + "encoding": "111010-----------101-----0100111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xe8005027", + "mask": "0xfc00707f" + }, + "vsse32_v": { + "encoding": "000010-----------110-----0100111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x8006027", + "mask": "0xfc00707f" + }, + "vssseg2e32_v": { + "encoding": "001010-----------110-----0100111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x28006027", + "mask": "0xfc00707f" + }, + "vssseg3e32_v": { + "encoding": "010010-----------110-----0100111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x48006027", + "mask": "0xfc00707f" + }, + "vssseg4e32_v": { + "encoding": "011010-----------110-----0100111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x68006027", + "mask": "0xfc00707f" + }, + "vssseg5e32_v": { + "encoding": "100010-----------110-----0100111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x88006027", + "mask": "0xfc00707f" + }, + "vssseg6e32_v": { + "encoding": "101010-----------110-----0100111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xa8006027", + "mask": "0xfc00707f" + }, + "vssseg7e32_v": { + "encoding": "110010-----------110-----0100111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xc8006027", + "mask": "0xfc00707f" + }, + "vssseg8e32_v": { + "encoding": "111010-----------110-----0100111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xe8006027", + "mask": "0xfc00707f" + }, + "vsse64_v": { + "encoding": "000010-----------111-----0100111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x8007027", + "mask": "0xfc00707f" + }, + "vssseg2e64_v": { + "encoding": "001010-----------111-----0100111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x28007027", + "mask": "0xfc00707f" + }, + "vssseg3e64_v": { + "encoding": "010010-----------111-----0100111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x48007027", + "mask": "0xfc00707f" + }, + "vssseg4e64_v": { + "encoding": "011010-----------111-----0100111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x68007027", + "mask": "0xfc00707f" + }, + "vssseg5e64_v": { + "encoding": "100010-----------111-----0100111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x88007027", + "mask": "0xfc00707f" + }, + "vssseg6e64_v": { + "encoding": "101010-----------111-----0100111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xa8007027", + "mask": "0xfc00707f" + }, + "vssseg7e64_v": { + "encoding": "110010-----------111-----0100111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xc8007027", + "mask": "0xfc00707f" + }, + "vssseg8e64_v": { + "encoding": "111010-----------111-----0100111", + "variable_fields": [ + "vm", + "rs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xe8007027", + "mask": "0xfc00707f" + }, + "vloxei8_v": { + "encoding": "000011-----------000-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xc000007", + "mask": "0xfc00707f" + }, + "vloxseg2ei8_v": { + "encoding": "001011-----------000-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x2c000007", + "mask": "0xfc00707f" + }, + "vloxseg3ei8_v": { + "encoding": "010011-----------000-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x4c000007", + "mask": "0xfc00707f" + }, + "vloxseg4ei8_v": { + "encoding": "011011-----------000-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x6c000007", + "mask": "0xfc00707f" + }, + "vloxseg5ei8_v": { + "encoding": "100011-----------000-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x8c000007", + "mask": "0xfc00707f" + }, + "vloxseg6ei8_v": { + "encoding": "101011-----------000-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xac000007", + "mask": "0xfc00707f" + }, + "vloxseg7ei8_v": { + "encoding": "110011-----------000-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xcc000007", + "mask": "0xfc00707f" + }, + "vloxseg8ei8_v": { + "encoding": "111011-----------000-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xec000007", + "mask": "0xfc00707f" + }, + "vloxei16_v": { + "encoding": "000011-----------101-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xc005007", + "mask": "0xfc00707f" + }, + "vloxseg2ei16_v": { + "encoding": "001011-----------101-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x2c005007", + "mask": "0xfc00707f" + }, + "vloxseg3ei16_v": { + "encoding": "010011-----------101-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x4c005007", + "mask": "0xfc00707f" + }, + "vloxseg4ei16_v": { + "encoding": "011011-----------101-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x6c005007", + "mask": "0xfc00707f" + }, + "vloxseg5ei16_v": { + "encoding": "100011-----------101-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x8c005007", + "mask": "0xfc00707f" + }, + "vloxseg6ei16_v": { + "encoding": "101011-----------101-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xac005007", + "mask": "0xfc00707f" + }, + "vloxseg7ei16_v": { + "encoding": "110011-----------101-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xcc005007", + "mask": "0xfc00707f" + }, + "vloxseg8ei16_v": { + "encoding": "111011-----------101-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xec005007", + "mask": "0xfc00707f" + }, + "vloxei32_v": { + "encoding": "000011-----------110-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xc006007", + "mask": "0xfc00707f" + }, + "vloxseg2ei32_v": { + "encoding": "001011-----------110-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x2c006007", + "mask": "0xfc00707f" + }, + "vloxseg3ei32_v": { + "encoding": "010011-----------110-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x4c006007", + "mask": "0xfc00707f" + }, + "vloxseg4ei32_v": { + "encoding": "011011-----------110-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x6c006007", + "mask": "0xfc00707f" + }, + "vloxseg5ei32_v": { + "encoding": "100011-----------110-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x8c006007", + "mask": "0xfc00707f" + }, + "vloxseg6ei32_v": { + "encoding": "101011-----------110-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xac006007", + "mask": "0xfc00707f" + }, + "vloxseg7ei32_v": { + "encoding": "110011-----------110-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xcc006007", + "mask": "0xfc00707f" + }, + "vloxseg8ei32_v": { + "encoding": "111011-----------110-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xec006007", + "mask": "0xfc00707f" + }, + "vloxei64_v": { + "encoding": "000011-----------111-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xc007007", + "mask": "0xfc00707f" + }, + "vloxseg2ei64_v": { + "encoding": "001011-----------111-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x2c007007", + "mask": "0xfc00707f" + }, + "vloxseg3ei64_v": { + "encoding": "010011-----------111-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x4c007007", + "mask": "0xfc00707f" + }, + "vloxseg4ei64_v": { + "encoding": "011011-----------111-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x6c007007", + "mask": "0xfc00707f" + }, + "vloxseg5ei64_v": { + "encoding": "100011-----------111-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x8c007007", + "mask": "0xfc00707f" + }, + "vloxseg6ei64_v": { + "encoding": "101011-----------111-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xac007007", + "mask": "0xfc00707f" + }, + "vloxseg7ei64_v": { + "encoding": "110011-----------111-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xcc007007", + "mask": "0xfc00707f" + }, + "vloxseg8ei64_v": { + "encoding": "111011-----------111-----0000111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xec007007", + "mask": "0xfc00707f" + }, + "vsoxei8_v": { + "encoding": "000011-----------000-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xc000027", + "mask": "0xfc00707f" + }, + "vsoxseg2ei8_v": { + "encoding": "001011-----------000-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x2c000027", + "mask": "0xfc00707f" + }, + "vsoxseg3ei8_v": { + "encoding": "010011-----------000-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x4c000027", + "mask": "0xfc00707f" + }, + "vsoxseg4ei8_v": { + "encoding": "011011-----------000-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x6c000027", + "mask": "0xfc00707f" + }, + "vsoxseg5ei8_v": { + "encoding": "100011-----------000-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x8c000027", + "mask": "0xfc00707f" + }, + "vsoxseg6ei8_v": { + "encoding": "101011-----------000-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xac000027", + "mask": "0xfc00707f" + }, + "vsoxseg7ei8_v": { + "encoding": "110011-----------000-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xcc000027", + "mask": "0xfc00707f" + }, + "vsoxseg8ei8_v": { + "encoding": "111011-----------000-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xec000027", + "mask": "0xfc00707f" + }, + "vsoxei16_v": { + "encoding": "000011-----------101-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xc005027", + "mask": "0xfc00707f" + }, + "vsoxseg2ei16_v": { + "encoding": "001011-----------101-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x2c005027", + "mask": "0xfc00707f" + }, + "vsoxseg3ei16_v": { + "encoding": "010011-----------101-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x4c005027", + "mask": "0xfc00707f" + }, + "vsoxseg4ei16_v": { + "encoding": "011011-----------101-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x6c005027", + "mask": "0xfc00707f" + }, + "vsoxseg5ei16_v": { + "encoding": "100011-----------101-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x8c005027", + "mask": "0xfc00707f" + }, + "vsoxseg6ei16_v": { + "encoding": "101011-----------101-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xac005027", + "mask": "0xfc00707f" + }, + "vsoxseg7ei16_v": { + "encoding": "110011-----------101-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xcc005027", + "mask": "0xfc00707f" + }, + "vsoxseg8ei16_v": { + "encoding": "111011-----------101-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xec005027", + "mask": "0xfc00707f" + }, + "vsoxei32_v": { + "encoding": "000011-----------110-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xc006027", + "mask": "0xfc00707f" + }, + "vsoxseg2ei32_v": { + "encoding": "001011-----------110-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x2c006027", + "mask": "0xfc00707f" + }, + "vsoxseg3ei32_v": { + "encoding": "010011-----------110-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x4c006027", + "mask": "0xfc00707f" + }, + "vsoxseg4ei32_v": { + "encoding": "011011-----------110-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x6c006027", + "mask": "0xfc00707f" + }, + "vsoxseg5ei32_v": { + "encoding": "100011-----------110-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x8c006027", + "mask": "0xfc00707f" + }, + "vsoxseg6ei32_v": { + "encoding": "101011-----------110-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xac006027", + "mask": "0xfc00707f" + }, + "vsoxseg7ei32_v": { + "encoding": "110011-----------110-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xcc006027", + "mask": "0xfc00707f" + }, + "vsoxseg8ei32_v": { + "encoding": "111011-----------110-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xec006027", + "mask": "0xfc00707f" + }, + "vsoxei64_v": { + "encoding": "000011-----------111-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xc007027", + "mask": "0xfc00707f" + }, + "vsoxseg2ei64_v": { + "encoding": "001011-----------111-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x2c007027", + "mask": "0xfc00707f" + }, + "vsoxseg3ei64_v": { + "encoding": "010011-----------111-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x4c007027", + "mask": "0xfc00707f" + }, + "vsoxseg4ei64_v": { + "encoding": "011011-----------111-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x6c007027", + "mask": "0xfc00707f" + }, + "vsoxseg5ei64_v": { + "encoding": "100011-----------111-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x8c007027", + "mask": "0xfc00707f" + }, + "vsoxseg6ei64_v": { + "encoding": "101011-----------111-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xac007027", + "mask": "0xfc00707f" + }, + "vsoxseg7ei64_v": { + "encoding": "110011-----------111-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xcc007027", + "mask": "0xfc00707f" + }, + "vsoxseg8ei64_v": { + "encoding": "111011-----------111-----0100111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xec007027", + "mask": "0xfc00707f" + }, + "vle8ff_v": { + "encoding": "000000-10000-----000-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x1000007", + "mask": "0xfdf0707f" + }, + "vlseg2e8ff_v": { + "encoding": "001000-10000-----000-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x21000007", + "mask": "0xfdf0707f" + }, + "vlseg3e8ff_v": { + "encoding": "010000-10000-----000-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x41000007", + "mask": "0xfdf0707f" + }, + "vlseg4e8ff_v": { + "encoding": "011000-10000-----000-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x61000007", + "mask": "0xfdf0707f" + }, + "vlseg5e8ff_v": { + "encoding": "100000-10000-----000-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x81000007", + "mask": "0xfdf0707f" + }, + "vlseg6e8ff_v": { + "encoding": "101000-10000-----000-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xa1000007", + "mask": "0xfdf0707f" + }, + "vlseg7e8ff_v": { + "encoding": "110000-10000-----000-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xc1000007", + "mask": "0xfdf0707f" + }, + "vlseg8e8ff_v": { + "encoding": "111000-10000-----000-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xe1000007", + "mask": "0xfdf0707f" + }, + "vle16ff_v": { + "encoding": "000000-10000-----101-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x1005007", + "mask": "0xfdf0707f" + }, + "vlseg2e16ff_v": { + "encoding": "001000-10000-----101-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x21005007", + "mask": "0xfdf0707f" + }, + "vlseg3e16ff_v": { + "encoding": "010000-10000-----101-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x41005007", + "mask": "0xfdf0707f" + }, + "vlseg4e16ff_v": { + "encoding": "011000-10000-----101-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x61005007", + "mask": "0xfdf0707f" + }, + "vlseg5e16ff_v": { + "encoding": "100000-10000-----101-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x81005007", + "mask": "0xfdf0707f" + }, + "vlseg6e16ff_v": { + "encoding": "101000-10000-----101-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xa1005007", + "mask": "0xfdf0707f" + }, + "vlseg7e16ff_v": { + "encoding": "110000-10000-----101-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xc1005007", + "mask": "0xfdf0707f" + }, + "vlseg8e16ff_v": { + "encoding": "111000-10000-----101-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xe1005007", + "mask": "0xfdf0707f" + }, + "vle32ff_v": { + "encoding": "000000-10000-----110-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x1006007", + "mask": "0xfdf0707f" + }, + "vlseg2e32ff_v": { + "encoding": "001000-10000-----110-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x21006007", + "mask": "0xfdf0707f" + }, + "vlseg3e32ff_v": { + "encoding": "010000-10000-----110-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x41006007", + "mask": "0xfdf0707f" + }, + "vlseg4e32ff_v": { + "encoding": "011000-10000-----110-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x61006007", + "mask": "0xfdf0707f" + }, + "vlseg5e32ff_v": { + "encoding": "100000-10000-----110-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x81006007", + "mask": "0xfdf0707f" + }, + "vlseg6e32ff_v": { + "encoding": "101000-10000-----110-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xa1006007", + "mask": "0xfdf0707f" + }, + "vlseg7e32ff_v": { + "encoding": "110000-10000-----110-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xc1006007", + "mask": "0xfdf0707f" + }, + "vlseg8e32ff_v": { + "encoding": "111000-10000-----110-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xe1006007", + "mask": "0xfdf0707f" + }, + "vle64ff_v": { + "encoding": "000000-10000-----111-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x1007007", + "mask": "0xfdf0707f" + }, + "vlseg2e64ff_v": { + "encoding": "001000-10000-----111-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x21007007", + "mask": "0xfdf0707f" + }, + "vlseg3e64ff_v": { + "encoding": "010000-10000-----111-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x41007007", + "mask": "0xfdf0707f" + }, + "vlseg4e64ff_v": { + "encoding": "011000-10000-----111-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x61007007", + "mask": "0xfdf0707f" + }, + "vlseg5e64ff_v": { + "encoding": "100000-10000-----111-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x81007007", + "mask": "0xfdf0707f" + }, + "vlseg6e64ff_v": { + "encoding": "101000-10000-----111-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xa1007007", + "mask": "0xfdf0707f" + }, + "vlseg7e64ff_v": { + "encoding": "110000-10000-----111-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xc1007007", + "mask": "0xfdf0707f" + }, + "vlseg8e64ff_v": { + "encoding": "111000-10000-----111-----0000111", + "variable_fields": [ + "vm", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xe1007007", + "mask": "0xfdf0707f" + }, + "vl1re8_v": { + "encoding": "000000101000-----000-----0000111", + "variable_fields": [ + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x2800007", + "mask": "0xfff0707f" + }, + "vl1re16_v": { + "encoding": "000000101000-----101-----0000111", + "variable_fields": [ + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x2805007", + "mask": "0xfff0707f" + }, + "vl1re32_v": { + "encoding": "000000101000-----110-----0000111", + "variable_fields": [ + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x2806007", + "mask": "0xfff0707f" + }, + "vl1re64_v": { + "encoding": "000000101000-----111-----0000111", + "variable_fields": [ + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x2807007", + "mask": "0xfff0707f" + }, + "vl2re8_v": { + "encoding": "001000101000-----000-----0000111", + "variable_fields": [ + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x22800007", + "mask": "0xfff0707f" + }, + "vl2re16_v": { + "encoding": "001000101000-----101-----0000111", + "variable_fields": [ + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x22805007", + "mask": "0xfff0707f" + }, + "vl2re32_v": { + "encoding": "001000101000-----110-----0000111", + "variable_fields": [ + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x22806007", + "mask": "0xfff0707f" + }, + "vl2re64_v": { + "encoding": "001000101000-----111-----0000111", + "variable_fields": [ + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x22807007", + "mask": "0xfff0707f" + }, + "vl4re8_v": { + "encoding": "011000101000-----000-----0000111", + "variable_fields": [ + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x62800007", + "mask": "0xfff0707f" + }, + "vl4re16_v": { + "encoding": "011000101000-----101-----0000111", + "variable_fields": [ + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x62805007", + "mask": "0xfff0707f" + }, + "vl4re32_v": { + "encoding": "011000101000-----110-----0000111", + "variable_fields": [ + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x62806007", + "mask": "0xfff0707f" + }, + "vl4re64_v": { + "encoding": "011000101000-----111-----0000111", + "variable_fields": [ + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x62807007", + "mask": "0xfff0707f" + }, + "vl8re8_v": { + "encoding": "111000101000-----000-----0000111", + "variable_fields": [ + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xe2800007", + "mask": "0xfff0707f" + }, + "vl8re16_v": { + "encoding": "111000101000-----101-----0000111", + "variable_fields": [ + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xe2805007", + "mask": "0xfff0707f" + }, + "vl8re32_v": { + "encoding": "111000101000-----110-----0000111", + "variable_fields": [ + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xe2806007", + "mask": "0xfff0707f" + }, + "vl8re64_v": { + "encoding": "111000101000-----111-----0000111", + "variable_fields": [ + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xe2807007", + "mask": "0xfff0707f" + }, + "vs1r_v": { + "encoding": "000000101000-----000-----0100111", + "variable_fields": [ + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x2800027", + "mask": "0xfff0707f" + }, + "vs2r_v": { + "encoding": "001000101000-----000-----0100111", + "variable_fields": [ + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x22800027", + "mask": "0xfff0707f" + }, + "vs4r_v": { + "encoding": "011000101000-----000-----0100111", + "variable_fields": [ + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0x62800027", + "mask": "0xfff0707f" + }, + "vs8r_v": { + "encoding": "111000101000-----000-----0100111", + "variable_fields": [ + "rs1", + "vs3" + ], + "extension": [ + "rv_v" + ], + "match": "0xe2800027", + "mask": "0xfff0707f" + }, + "vfadd_vf": { + "encoding": "000000-----------101-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x5057", + "mask": "0xfc00707f" + }, + "vfsub_vf": { + "encoding": "000010-----------101-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x8005057", + "mask": "0xfc00707f" + }, + "vfmin_vf": { + "encoding": "000100-----------101-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x10005057", + "mask": "0xfc00707f" + }, + "vfmax_vf": { + "encoding": "000110-----------101-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x18005057", + "mask": "0xfc00707f" + }, + "vfsgnj_vf": { + "encoding": "001000-----------101-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x20005057", + "mask": "0xfc00707f" + }, + "vfsgnjn_vf": { + "encoding": "001001-----------101-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x24005057", + "mask": "0xfc00707f" + }, + "vfsgnjx_vf": { + "encoding": "001010-----------101-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x28005057", + "mask": "0xfc00707f" + }, + "vfslide1up_vf": { + "encoding": "001110-----------101-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x38005057", + "mask": "0xfc00707f" + }, + "vfslide1down_vf": { + "encoding": "001111-----------101-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x3c005057", + "mask": "0xfc00707f" + }, + "vfmv_s_f": { + "encoding": "010000100000-----101-----1010111", + "variable_fields": [ + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x42005057", + "mask": "0xfff0707f" + }, + "vfmerge_vfm": { + "encoding": "0101110----------101-----1010111", + "variable_fields": [ + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x5c005057", + "mask": "0xfe00707f" + }, + "vfmv_v_f": { + "encoding": "010111100000-----101-----1010111", + "variable_fields": [ + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x5e005057", + "mask": "0xfff0707f" + }, + "vmfeq_vf": { + "encoding": "011000-----------101-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x60005057", + "mask": "0xfc00707f" + }, + "vmfle_vf": { + "encoding": "011001-----------101-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x64005057", + "mask": "0xfc00707f" + }, + "vmflt_vf": { + "encoding": "011011-----------101-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x6c005057", + "mask": "0xfc00707f" + }, + "vmfne_vf": { + "encoding": "011100-----------101-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x70005057", + "mask": "0xfc00707f" + }, + "vmfgt_vf": { + "encoding": "011101-----------101-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x74005057", + "mask": "0xfc00707f" + }, + "vmfge_vf": { + "encoding": "011111-----------101-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x7c005057", + "mask": "0xfc00707f" + }, + "vfdiv_vf": { + "encoding": "100000-----------101-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x80005057", + "mask": "0xfc00707f" + }, + "vfrdiv_vf": { + "encoding": "100001-----------101-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x84005057", + "mask": "0xfc00707f" + }, + "vfmul_vf": { + "encoding": "100100-----------101-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x90005057", + "mask": "0xfc00707f" + }, + "vfrsub_vf": { + "encoding": "100111-----------101-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x9c005057", + "mask": "0xfc00707f" + }, + "vfmadd_vf": { + "encoding": "101000-----------101-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xa0005057", + "mask": "0xfc00707f" + }, + "vfnmadd_vf": { + "encoding": "101001-----------101-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xa4005057", + "mask": "0xfc00707f" + }, + "vfmsub_vf": { + "encoding": "101010-----------101-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xa8005057", + "mask": "0xfc00707f" + }, + "vfnmsub_vf": { + "encoding": "101011-----------101-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xac005057", + "mask": "0xfc00707f" + }, + "vfmacc_vf": { + "encoding": "101100-----------101-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xb0005057", + "mask": "0xfc00707f" + }, + "vfnmacc_vf": { + "encoding": "101101-----------101-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xb4005057", + "mask": "0xfc00707f" + }, + "vfmsac_vf": { + "encoding": "101110-----------101-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xb8005057", + "mask": "0xfc00707f" + }, + "vfnmsac_vf": { + "encoding": "101111-----------101-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xbc005057", + "mask": "0xfc00707f" + }, + "vfwadd_vf": { + "encoding": "110000-----------101-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xc0005057", + "mask": "0xfc00707f" + }, + "vfwsub_vf": { + "encoding": "110010-----------101-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xc8005057", + "mask": "0xfc00707f" + }, + "vfwadd_wf": { + "encoding": "110100-----------101-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xd0005057", + "mask": "0xfc00707f" + }, + "vfwsub_wf": { + "encoding": "110110-----------101-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xd8005057", + "mask": "0xfc00707f" + }, + "vfwmul_vf": { + "encoding": "111000-----------101-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xe0005057", + "mask": "0xfc00707f" + }, + "vfwmacc_vf": { + "encoding": "111100-----------101-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xf0005057", + "mask": "0xfc00707f" + }, + "vfwnmacc_vf": { + "encoding": "111101-----------101-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xf4005057", + "mask": "0xfc00707f" + }, + "vfwmsac_vf": { + "encoding": "111110-----------101-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xf8005057", + "mask": "0xfc00707f" + }, + "vfwnmsac_vf": { + "encoding": "111111-----------101-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xfc005057", + "mask": "0xfc00707f" + }, + "vfadd_vv": { + "encoding": "000000-----------001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x1057", + "mask": "0xfc00707f" + }, + "vfredusum_vs": { + "encoding": "000001-----------001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x4001057", + "mask": "0xfc00707f" + }, + "vfsub_vv": { + "encoding": "000010-----------001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x8001057", + "mask": "0xfc00707f" + }, + "vfredosum_vs": { + "encoding": "000011-----------001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xc001057", + "mask": "0xfc00707f" + }, + "vfmin_vv": { + "encoding": "000100-----------001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x10001057", + "mask": "0xfc00707f" + }, + "vfredmin_vs": { + "encoding": "000101-----------001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x14001057", + "mask": "0xfc00707f" + }, + "vfmax_vv": { + "encoding": "000110-----------001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x18001057", + "mask": "0xfc00707f" + }, + "vfredmax_vs": { + "encoding": "000111-----------001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x1c001057", + "mask": "0xfc00707f" + }, + "vfsgnj_vv": { + "encoding": "001000-----------001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x20001057", + "mask": "0xfc00707f" + }, + "vfsgnjn_vv": { + "encoding": "001001-----------001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x24001057", + "mask": "0xfc00707f" + }, + "vfsgnjx_vv": { + "encoding": "001010-----------001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x28001057", + "mask": "0xfc00707f" + }, + "vfmv_f_s": { + "encoding": "0100001-----00000001-----1010111", + "variable_fields": [ + "vs2", + "rd" + ], + "extension": [ + "rv_v" + ], + "match": "0x42001057", + "mask": "0xfe0ff07f" + }, + "vmfeq_vv": { + "encoding": "011000-----------001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x60001057", + "mask": "0xfc00707f" + }, + "vmfle_vv": { + "encoding": "011001-----------001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x64001057", + "mask": "0xfc00707f" + }, + "vmflt_vv": { + "encoding": "011011-----------001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x6c001057", + "mask": "0xfc00707f" + }, + "vmfne_vv": { + "encoding": "011100-----------001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x70001057", + "mask": "0xfc00707f" + }, + "vfdiv_vv": { + "encoding": "100000-----------001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x80001057", + "mask": "0xfc00707f" + }, + "vfmul_vv": { + "encoding": "100100-----------001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x90001057", + "mask": "0xfc00707f" + }, + "vfmadd_vv": { + "encoding": "101000-----------001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xa0001057", + "mask": "0xfc00707f" + }, + "vfnmadd_vv": { + "encoding": "101001-----------001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xa4001057", + "mask": "0xfc00707f" + }, + "vfmsub_vv": { + "encoding": "101010-----------001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xa8001057", + "mask": "0xfc00707f" + }, + "vfnmsub_vv": { + "encoding": "101011-----------001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xac001057", + "mask": "0xfc00707f" + }, + "vfmacc_vv": { + "encoding": "101100-----------001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xb0001057", + "mask": "0xfc00707f" + }, + "vfnmacc_vv": { + "encoding": "101101-----------001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xb4001057", + "mask": "0xfc00707f" + }, + "vfmsac_vv": { + "encoding": "101110-----------001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xb8001057", + "mask": "0xfc00707f" + }, + "vfnmsac_vv": { + "encoding": "101111-----------001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xbc001057", + "mask": "0xfc00707f" + }, + "vfcvt_xu_f_v": { + "encoding": "010010------00000001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x48001057", + "mask": "0xfc0ff07f" + }, + "vfcvt_x_f_v": { + "encoding": "010010------00001001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x48009057", + "mask": "0xfc0ff07f" + }, + "vfcvt_f_xu_v": { + "encoding": "010010------00010001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x48011057", + "mask": "0xfc0ff07f" + }, + "vfcvt_f_x_v": { + "encoding": "010010------00011001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x48019057", + "mask": "0xfc0ff07f" + }, + "vfcvt_rtz_xu_f_v": { + "encoding": "010010------00110001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x48031057", + "mask": "0xfc0ff07f" + }, + "vfcvt_rtz_x_f_v": { + "encoding": "010010------00111001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x48039057", + "mask": "0xfc0ff07f" + }, + "vfwcvt_xu_f_v": { + "encoding": "010010------01000001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x48041057", + "mask": "0xfc0ff07f" + }, + "vfwcvt_x_f_v": { + "encoding": "010010------01001001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x48049057", + "mask": "0xfc0ff07f" + }, + "vfwcvt_f_xu_v": { + "encoding": "010010------01010001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x48051057", + "mask": "0xfc0ff07f" + }, + "vfwcvt_f_x_v": { + "encoding": "010010------01011001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x48059057", + "mask": "0xfc0ff07f" + }, + "vfwcvt_f_f_v": { + "encoding": "010010------01100001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x48061057", + "mask": "0xfc0ff07f" + }, + "vfwcvt_rtz_xu_f_v": { + "encoding": "010010------01110001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x48071057", + "mask": "0xfc0ff07f" + }, + "vfwcvt_rtz_x_f_v": { + "encoding": "010010------01111001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x48079057", + "mask": "0xfc0ff07f" + }, + "vfncvt_xu_f_w": { + "encoding": "010010------10000001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x48081057", + "mask": "0xfc0ff07f" + }, + "vfncvt_x_f_w": { + "encoding": "010010------10001001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x48089057", + "mask": "0xfc0ff07f" + }, + "vfncvt_f_xu_w": { + "encoding": "010010------10010001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x48091057", + "mask": "0xfc0ff07f" + }, + "vfncvt_f_x_w": { + "encoding": "010010------10011001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x48099057", + "mask": "0xfc0ff07f" + }, + "vfncvt_f_f_w": { + "encoding": "010010------10100001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x480a1057", + "mask": "0xfc0ff07f" + }, + "vfncvt_rod_f_f_w": { + "encoding": "010010------10101001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x480a9057", + "mask": "0xfc0ff07f" + }, + "vfncvt_rtz_xu_f_w": { + "encoding": "010010------10110001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x480b1057", + "mask": "0xfc0ff07f" + }, + "vfncvt_rtz_x_f_w": { + "encoding": "010010------10111001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x480b9057", + "mask": "0xfc0ff07f" + }, + "vfsqrt_v": { + "encoding": "010011------00000001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x4c001057", + "mask": "0xfc0ff07f" + }, + "vfrsqrt7_v": { + "encoding": "010011------00100001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x4c021057", + "mask": "0xfc0ff07f" + }, + "vfrec7_v": { + "encoding": "010011------00101001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x4c029057", + "mask": "0xfc0ff07f" + }, + "vfclass_v": { + "encoding": "010011------10000001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x4c081057", + "mask": "0xfc0ff07f" + }, + "vfwadd_vv": { + "encoding": "110000-----------001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xc0001057", + "mask": "0xfc00707f" + }, + "vfwredusum_vs": { + "encoding": "110001-----------001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xc4001057", + "mask": "0xfc00707f" + }, + "vfwsub_vv": { + "encoding": "110010-----------001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xc8001057", + "mask": "0xfc00707f" + }, + "vfwredosum_vs": { + "encoding": "110011-----------001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xcc001057", + "mask": "0xfc00707f" + }, + "vfwadd_wv": { + "encoding": "110100-----------001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xd0001057", + "mask": "0xfc00707f" + }, + "vfwsub_wv": { + "encoding": "110110-----------001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xd8001057", + "mask": "0xfc00707f" + }, + "vfwmul_vv": { + "encoding": "111000-----------001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xe0001057", + "mask": "0xfc00707f" + }, + "vfwmacc_vv": { + "encoding": "111100-----------001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xf0001057", + "mask": "0xfc00707f" + }, + "vfwnmacc_vv": { + "encoding": "111101-----------001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xf4001057", + "mask": "0xfc00707f" + }, + "vfwmsac_vv": { + "encoding": "111110-----------001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xf8001057", + "mask": "0xfc00707f" + }, + "vfwnmsac_vv": { + "encoding": "111111-----------001-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xfc001057", + "mask": "0xfc00707f" + }, + "vadd_vx": { + "encoding": "000000-----------100-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x4057", + "mask": "0xfc00707f" + }, + "vsub_vx": { + "encoding": "000010-----------100-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x8004057", + "mask": "0xfc00707f" + }, + "vrsub_vx": { + "encoding": "000011-----------100-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xc004057", + "mask": "0xfc00707f" + }, + "vminu_vx": { + "encoding": "000100-----------100-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x10004057", + "mask": "0xfc00707f" + }, + "vmin_vx": { + "encoding": "000101-----------100-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x14004057", + "mask": "0xfc00707f" + }, + "vmaxu_vx": { + "encoding": "000110-----------100-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x18004057", + "mask": "0xfc00707f" + }, + "vmax_vx": { + "encoding": "000111-----------100-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x1c004057", + "mask": "0xfc00707f" + }, + "vand_vx": { + "encoding": "001001-----------100-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x24004057", + "mask": "0xfc00707f" + }, + "vor_vx": { + "encoding": "001010-----------100-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x28004057", + "mask": "0xfc00707f" + }, + "vxor_vx": { + "encoding": "001011-----------100-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x2c004057", + "mask": "0xfc00707f" + }, + "vrgather_vx": { + "encoding": "001100-----------100-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x30004057", + "mask": "0xfc00707f" + }, + "vslideup_vx": { + "encoding": "001110-----------100-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x38004057", + "mask": "0xfc00707f" + }, + "vslidedown_vx": { + "encoding": "001111-----------100-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x3c004057", + "mask": "0xfc00707f" + }, + "vadc_vxm": { + "encoding": "0100000----------100-----1010111", + "variable_fields": [ + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x40004057", + "mask": "0xfe00707f" + }, + "vmadc_vxm": { + "encoding": "0100010----------100-----1010111", + "variable_fields": [ + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x44004057", + "mask": "0xfe00707f" + }, + "vmadc_vx": { + "encoding": "0100011----------100-----1010111", + "variable_fields": [ + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x46004057", + "mask": "0xfe00707f" + }, + "vsbc_vxm": { + "encoding": "0100100----------100-----1010111", + "variable_fields": [ + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x48004057", + "mask": "0xfe00707f" + }, + "vmsbc_vxm": { + "encoding": "0100110----------100-----1010111", + "variable_fields": [ + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x4c004057", + "mask": "0xfe00707f" + }, + "vmsbc_vx": { + "encoding": "0100111----------100-----1010111", + "variable_fields": [ + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x4e004057", + "mask": "0xfe00707f" + }, + "vmerge_vxm": { + "encoding": "0101110----------100-----1010111", + "variable_fields": [ + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x5c004057", + "mask": "0xfe00707f" + }, + "vmv_v_x": { + "encoding": "010111100000-----100-----1010111", + "variable_fields": [ + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x5e004057", + "mask": "0xfff0707f" + }, + "vmseq_vx": { + "encoding": "011000-----------100-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x60004057", + "mask": "0xfc00707f" + }, + "vmsne_vx": { + "encoding": "011001-----------100-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x64004057", + "mask": "0xfc00707f" + }, + "vmsltu_vx": { + "encoding": "011010-----------100-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x68004057", + "mask": "0xfc00707f" + }, + "vmslt_vx": { + "encoding": "011011-----------100-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x6c004057", + "mask": "0xfc00707f" + }, + "vmsleu_vx": { + "encoding": "011100-----------100-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x70004057", + "mask": "0xfc00707f" + }, + "vmsle_vx": { + "encoding": "011101-----------100-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x74004057", + "mask": "0xfc00707f" + }, + "vmsgtu_vx": { + "encoding": "011110-----------100-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x78004057", + "mask": "0xfc00707f" + }, + "vmsgt_vx": { + "encoding": "011111-----------100-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x7c004057", + "mask": "0xfc00707f" + }, + "vsaddu_vx": { + "encoding": "100000-----------100-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x80004057", + "mask": "0xfc00707f" + }, + "vsadd_vx": { + "encoding": "100001-----------100-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x84004057", + "mask": "0xfc00707f" + }, + "vssubu_vx": { + "encoding": "100010-----------100-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x88004057", + "mask": "0xfc00707f" + }, + "vssub_vx": { + "encoding": "100011-----------100-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x8c004057", + "mask": "0xfc00707f" + }, + "vsll_vx": { + "encoding": "100101-----------100-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x94004057", + "mask": "0xfc00707f" + }, + "vsmul_vx": { + "encoding": "100111-----------100-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x9c004057", + "mask": "0xfc00707f" + }, + "vsrl_vx": { + "encoding": "101000-----------100-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xa0004057", + "mask": "0xfc00707f" + }, + "vsra_vx": { + "encoding": "101001-----------100-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xa4004057", + "mask": "0xfc00707f" + }, + "vssrl_vx": { + "encoding": "101010-----------100-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xa8004057", + "mask": "0xfc00707f" + }, + "vssra_vx": { + "encoding": "101011-----------100-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xac004057", + "mask": "0xfc00707f" + }, + "vnsrl_wx": { + "encoding": "101100-----------100-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xb0004057", + "mask": "0xfc00707f" + }, + "vnsra_wx": { + "encoding": "101101-----------100-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xb4004057", + "mask": "0xfc00707f" + }, + "vnclipu_wx": { + "encoding": "101110-----------100-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xb8004057", + "mask": "0xfc00707f" + }, + "vnclip_wx": { + "encoding": "101111-----------100-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xbc004057", + "mask": "0xfc00707f" + }, + "vadd_vv": { + "encoding": "000000-----------000-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x57", + "mask": "0xfc00707f" + }, + "vsub_vv": { + "encoding": "000010-----------000-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x8000057", + "mask": "0xfc00707f" + }, + "vminu_vv": { + "encoding": "000100-----------000-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x10000057", + "mask": "0xfc00707f" + }, + "vmin_vv": { + "encoding": "000101-----------000-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x14000057", + "mask": "0xfc00707f" + }, + "vmaxu_vv": { + "encoding": "000110-----------000-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x18000057", + "mask": "0xfc00707f" + }, + "vmax_vv": { + "encoding": "000111-----------000-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x1c000057", + "mask": "0xfc00707f" + }, + "vand_vv": { + "encoding": "001001-----------000-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x24000057", + "mask": "0xfc00707f" + }, + "vor_vv": { + "encoding": "001010-----------000-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x28000057", + "mask": "0xfc00707f" + }, + "vxor_vv": { + "encoding": "001011-----------000-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x2c000057", + "mask": "0xfc00707f" + }, + "vrgather_vv": { + "encoding": "001100-----------000-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x30000057", + "mask": "0xfc00707f" + }, + "vrgatherei16_vv": { + "encoding": "001110-----------000-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x38000057", + "mask": "0xfc00707f" + }, + "vadc_vvm": { + "encoding": "0100000----------000-----1010111", + "variable_fields": [ + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x40000057", + "mask": "0xfe00707f" + }, + "vmadc_vvm": { + "encoding": "0100010----------000-----1010111", + "variable_fields": [ + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x44000057", + "mask": "0xfe00707f" + }, + "vmadc_vv": { + "encoding": "0100011----------000-----1010111", + "variable_fields": [ + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x46000057", + "mask": "0xfe00707f" + }, + "vsbc_vvm": { + "encoding": "0100100----------000-----1010111", + "variable_fields": [ + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x48000057", + "mask": "0xfe00707f" + }, + "vmsbc_vvm": { + "encoding": "0100110----------000-----1010111", + "variable_fields": [ + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x4c000057", + "mask": "0xfe00707f" + }, + "vmsbc_vv": { + "encoding": "0100111----------000-----1010111", + "variable_fields": [ + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x4e000057", + "mask": "0xfe00707f" + }, + "vmerge_vvm": { + "encoding": "0101110----------000-----1010111", + "variable_fields": [ + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x5c000057", + "mask": "0xfe00707f" + }, + "vmv_v_v": { + "encoding": "010111100000-----000-----1010111", + "variable_fields": [ + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x5e000057", + "mask": "0xfff0707f" + }, + "vmseq_vv": { + "encoding": "011000-----------000-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x60000057", + "mask": "0xfc00707f" + }, + "vmsne_vv": { + "encoding": "011001-----------000-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x64000057", + "mask": "0xfc00707f" + }, + "vmsltu_vv": { + "encoding": "011010-----------000-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x68000057", + "mask": "0xfc00707f" + }, + "vmslt_vv": { + "encoding": "011011-----------000-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x6c000057", + "mask": "0xfc00707f" + }, + "vmsleu_vv": { + "encoding": "011100-----------000-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x70000057", + "mask": "0xfc00707f" + }, + "vmsle_vv": { + "encoding": "011101-----------000-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x74000057", + "mask": "0xfc00707f" + }, + "vsaddu_vv": { + "encoding": "100000-----------000-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x80000057", + "mask": "0xfc00707f" + }, + "vsadd_vv": { + "encoding": "100001-----------000-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x84000057", + "mask": "0xfc00707f" + }, + "vssubu_vv": { + "encoding": "100010-----------000-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x88000057", + "mask": "0xfc00707f" + }, + "vssub_vv": { + "encoding": "100011-----------000-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x8c000057", + "mask": "0xfc00707f" + }, + "vsll_vv": { + "encoding": "100101-----------000-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x94000057", + "mask": "0xfc00707f" + }, + "vsmul_vv": { + "encoding": "100111-----------000-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x9c000057", + "mask": "0xfc00707f" + }, + "vsrl_vv": { + "encoding": "101000-----------000-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xa0000057", + "mask": "0xfc00707f" + }, + "vsra_vv": { + "encoding": "101001-----------000-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xa4000057", + "mask": "0xfc00707f" + }, + "vssrl_vv": { + "encoding": "101010-----------000-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xa8000057", + "mask": "0xfc00707f" + }, + "vssra_vv": { + "encoding": "101011-----------000-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xac000057", + "mask": "0xfc00707f" + }, + "vnsrl_wv": { + "encoding": "101100-----------000-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xb0000057", + "mask": "0xfc00707f" + }, + "vnsra_wv": { + "encoding": "101101-----------000-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xb4000057", + "mask": "0xfc00707f" + }, + "vnclipu_wv": { + "encoding": "101110-----------000-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xb8000057", + "mask": "0xfc00707f" + }, + "vnclip_wv": { + "encoding": "101111-----------000-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xbc000057", + "mask": "0xfc00707f" + }, + "vwredsumu_vs": { + "encoding": "110000-----------000-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xc0000057", + "mask": "0xfc00707f" + }, + "vwredsum_vs": { + "encoding": "110001-----------000-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xc4000057", + "mask": "0xfc00707f" + }, + "vadd_vi": { + "encoding": "000000-----------011-----1010111", + "variable_fields": [ + "vm", + "vs2", + "simm5", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x3057", + "mask": "0xfc00707f" + }, + "vrsub_vi": { + "encoding": "000011-----------011-----1010111", + "variable_fields": [ + "vm", + "vs2", + "simm5", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xc003057", + "mask": "0xfc00707f" + }, + "vand_vi": { + "encoding": "001001-----------011-----1010111", + "variable_fields": [ + "vm", + "vs2", + "simm5", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x24003057", + "mask": "0xfc00707f" + }, + "vor_vi": { + "encoding": "001010-----------011-----1010111", + "variable_fields": [ + "vm", + "vs2", + "simm5", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x28003057", + "mask": "0xfc00707f" + }, + "vxor_vi": { + "encoding": "001011-----------011-----1010111", + "variable_fields": [ + "vm", + "vs2", + "simm5", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x2c003057", + "mask": "0xfc00707f" + }, + "vrgather_vi": { + "encoding": "001100-----------011-----1010111", + "variable_fields": [ + "vm", + "vs2", + "simm5", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x30003057", + "mask": "0xfc00707f" + }, + "vslideup_vi": { + "encoding": "001110-----------011-----1010111", + "variable_fields": [ + "vm", + "vs2", + "simm5", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x38003057", + "mask": "0xfc00707f" + }, + "vslidedown_vi": { + "encoding": "001111-----------011-----1010111", + "variable_fields": [ + "vm", + "vs2", + "simm5", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x3c003057", + "mask": "0xfc00707f" + }, + "vadc_vim": { + "encoding": "0100000----------011-----1010111", + "variable_fields": [ + "vs2", + "simm5", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x40003057", + "mask": "0xfe00707f" + }, + "vmadc_vim": { + "encoding": "0100010----------011-----1010111", + "variable_fields": [ + "vs2", + "simm5", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x44003057", + "mask": "0xfe00707f" + }, + "vmadc_vi": { + "encoding": "0100011----------011-----1010111", + "variable_fields": [ + "vs2", + "simm5", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x46003057", + "mask": "0xfe00707f" + }, + "vmerge_vim": { + "encoding": "0101110----------011-----1010111", + "variable_fields": [ + "vs2", + "simm5", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x5c003057", + "mask": "0xfe00707f" + }, + "vmv_v_i": { + "encoding": "010111100000-----011-----1010111", + "variable_fields": [ + "simm5", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x5e003057", + "mask": "0xfff0707f" + }, + "vmseq_vi": { + "encoding": "011000-----------011-----1010111", + "variable_fields": [ + "vm", + "vs2", + "simm5", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x60003057", + "mask": "0xfc00707f" + }, + "vmsne_vi": { + "encoding": "011001-----------011-----1010111", + "variable_fields": [ + "vm", + "vs2", + "simm5", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x64003057", + "mask": "0xfc00707f" + }, + "vmsleu_vi": { + "encoding": "011100-----------011-----1010111", + "variable_fields": [ + "vm", + "vs2", + "simm5", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x70003057", + "mask": "0xfc00707f" + }, + "vmsle_vi": { + "encoding": "011101-----------011-----1010111", + "variable_fields": [ + "vm", + "vs2", + "simm5", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x74003057", + "mask": "0xfc00707f" + }, + "vmsgtu_vi": { + "encoding": "011110-----------011-----1010111", + "variable_fields": [ + "vm", + "vs2", + "simm5", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x78003057", + "mask": "0xfc00707f" + }, + "vmsgt_vi": { + "encoding": "011111-----------011-----1010111", + "variable_fields": [ + "vm", + "vs2", + "simm5", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x7c003057", + "mask": "0xfc00707f" + }, + "vsaddu_vi": { + "encoding": "100000-----------011-----1010111", + "variable_fields": [ + "vm", + "vs2", + "simm5", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x80003057", + "mask": "0xfc00707f" + }, + "vsadd_vi": { + "encoding": "100001-----------011-----1010111", + "variable_fields": [ + "vm", + "vs2", + "simm5", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x84003057", + "mask": "0xfc00707f" + }, + "vsll_vi": { + "encoding": "100101-----------011-----1010111", + "variable_fields": [ + "vm", + "vs2", + "simm5", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x94003057", + "mask": "0xfc00707f" + }, + "vmv1r_v": { + "encoding": "1001111-----00000011-----1010111", + "variable_fields": [ + "vs2", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x9e003057", + "mask": "0xfe0ff07f" + }, + "vmv2r_v": { + "encoding": "1001111-----00001011-----1010111", + "variable_fields": [ + "vs2", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x9e00b057", + "mask": "0xfe0ff07f" + }, + "vmv4r_v": { + "encoding": "1001111-----00011011-----1010111", + "variable_fields": [ + "vs2", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x9e01b057", + "mask": "0xfe0ff07f" + }, + "vmv8r_v": { + "encoding": "1001111-----00111011-----1010111", + "variable_fields": [ + "vs2", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x9e03b057", + "mask": "0xfe0ff07f" + }, + "vsrl_vi": { + "encoding": "101000-----------011-----1010111", + "variable_fields": [ + "vm", + "vs2", + "simm5", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xa0003057", + "mask": "0xfc00707f" + }, + "vsra_vi": { + "encoding": "101001-----------011-----1010111", + "variable_fields": [ + "vm", + "vs2", + "simm5", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xa4003057", + "mask": "0xfc00707f" + }, + "vssrl_vi": { + "encoding": "101010-----------011-----1010111", + "variable_fields": [ + "vm", + "vs2", + "simm5", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xa8003057", + "mask": "0xfc00707f" + }, + "vssra_vi": { + "encoding": "101011-----------011-----1010111", + "variable_fields": [ + "vm", + "vs2", + "simm5", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xac003057", + "mask": "0xfc00707f" + }, + "vnsrl_wi": { + "encoding": "101100-----------011-----1010111", + "variable_fields": [ + "vm", + "vs2", + "simm5", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xb0003057", + "mask": "0xfc00707f" + }, + "vnsra_wi": { + "encoding": "101101-----------011-----1010111", + "variable_fields": [ + "vm", + "vs2", + "simm5", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xb4003057", + "mask": "0xfc00707f" + }, + "vnclipu_wi": { + "encoding": "101110-----------011-----1010111", + "variable_fields": [ + "vm", + "vs2", + "simm5", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xb8003057", + "mask": "0xfc00707f" + }, + "vnclip_wi": { + "encoding": "101111-----------011-----1010111", + "variable_fields": [ + "vm", + "vs2", + "simm5", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xbc003057", + "mask": "0xfc00707f" + }, + "vredsum_vs": { + "encoding": "000000-----------010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x2057", + "mask": "0xfc00707f" + }, + "vredand_vs": { + "encoding": "000001-----------010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x4002057", + "mask": "0xfc00707f" + }, + "vredor_vs": { + "encoding": "000010-----------010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x8002057", + "mask": "0xfc00707f" + }, + "vredxor_vs": { + "encoding": "000011-----------010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xc002057", + "mask": "0xfc00707f" + }, + "vredminu_vs": { + "encoding": "000100-----------010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x10002057", + "mask": "0xfc00707f" + }, + "vredmin_vs": { + "encoding": "000101-----------010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x14002057", + "mask": "0xfc00707f" + }, + "vredmaxu_vs": { + "encoding": "000110-----------010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x18002057", + "mask": "0xfc00707f" + }, + "vredmax_vs": { + "encoding": "000111-----------010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x1c002057", + "mask": "0xfc00707f" + }, + "vaaddu_vv": { + "encoding": "001000-----------010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x20002057", + "mask": "0xfc00707f" + }, + "vaadd_vv": { + "encoding": "001001-----------010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x24002057", + "mask": "0xfc00707f" + }, + "vasubu_vv": { + "encoding": "001010-----------010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x28002057", + "mask": "0xfc00707f" + }, + "vasub_vv": { + "encoding": "001011-----------010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x2c002057", + "mask": "0xfc00707f" + }, + "vmv_x_s": { + "encoding": "0100001-----00000010-----1010111", + "variable_fields": [ + "vs2", + "rd" + ], + "extension": [ + "rv_v" + ], + "match": "0x42002057", + "mask": "0xfe0ff07f" + }, + "vzext_vf8": { + "encoding": "010010------00010010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x48012057", + "mask": "0xfc0ff07f" + }, + "vsext_vf8": { + "encoding": "010010------00011010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x4801a057", + "mask": "0xfc0ff07f" + }, + "vzext_vf4": { + "encoding": "010010------00100010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x48022057", + "mask": "0xfc0ff07f" + }, + "vsext_vf4": { + "encoding": "010010------00101010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x4802a057", + "mask": "0xfc0ff07f" + }, + "vzext_vf2": { + "encoding": "010010------00110010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x48032057", + "mask": "0xfc0ff07f" + }, + "vsext_vf2": { + "encoding": "010010------00111010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x4803a057", + "mask": "0xfc0ff07f" + }, + "vcompress_vm": { + "encoding": "0101111----------010-----1010111", + "variable_fields": [ + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x5e002057", + "mask": "0xfe00707f" + }, + "vmandn_mm": { + "encoding": "0110001----------010-----1010111", + "variable_fields": [ + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x62002057", + "mask": "0xfe00707f" + }, + "vmand_mm": { + "encoding": "0110011----------010-----1010111", + "variable_fields": [ + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x66002057", + "mask": "0xfe00707f" + }, + "vmor_mm": { + "encoding": "0110101----------010-----1010111", + "variable_fields": [ + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x6a002057", + "mask": "0xfe00707f" + }, + "vmxor_mm": { + "encoding": "0110111----------010-----1010111", + "variable_fields": [ + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x6e002057", + "mask": "0xfe00707f" + }, + "vmorn_mm": { + "encoding": "0111001----------010-----1010111", + "variable_fields": [ + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x72002057", + "mask": "0xfe00707f" + }, + "vmnand_mm": { + "encoding": "0111011----------010-----1010111", + "variable_fields": [ + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x76002057", + "mask": "0xfe00707f" + }, + "vmnor_mm": { + "encoding": "0111101----------010-----1010111", + "variable_fields": [ + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x7a002057", + "mask": "0xfe00707f" + }, + "vmxnor_mm": { + "encoding": "0111111----------010-----1010111", + "variable_fields": [ + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x7e002057", + "mask": "0xfe00707f" + }, + "vmsbf_m": { + "encoding": "010100------00001010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x5000a057", + "mask": "0xfc0ff07f" + }, + "vmsof_m": { + "encoding": "010100------00010010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x50012057", + "mask": "0xfc0ff07f" + }, + "vmsif_m": { + "encoding": "010100------00011010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x5001a057", + "mask": "0xfc0ff07f" + }, + "viota_m": { + "encoding": "010100------10000010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x50082057", + "mask": "0xfc0ff07f" + }, + "vid_v": { + "encoding": "010100-0000010001010-----1010111", + "variable_fields": [ + "vm", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x5008a057", + "mask": "0xfdfff07f" + }, + "vcpop_m": { + "encoding": "010000------10000010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rd" + ], + "extension": [ + "rv_v" + ], + "match": "0x40082057", + "mask": "0xfc0ff07f" + }, + "vfirst_m": { + "encoding": "010000------10001010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rd" + ], + "extension": [ + "rv_v" + ], + "match": "0x4008a057", + "mask": "0xfc0ff07f" + }, + "vdivu_vv": { + "encoding": "100000-----------010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x80002057", + "mask": "0xfc00707f" + }, + "vdiv_vv": { + "encoding": "100001-----------010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x84002057", + "mask": "0xfc00707f" + }, + "vremu_vv": { + "encoding": "100010-----------010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x88002057", + "mask": "0xfc00707f" + }, + "vrem_vv": { + "encoding": "100011-----------010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x8c002057", + "mask": "0xfc00707f" + }, + "vmulhu_vv": { + "encoding": "100100-----------010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x90002057", + "mask": "0xfc00707f" + }, + "vmul_vv": { + "encoding": "100101-----------010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x94002057", + "mask": "0xfc00707f" + }, + "vmulhsu_vv": { + "encoding": "100110-----------010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x98002057", + "mask": "0xfc00707f" + }, + "vmulh_vv": { + "encoding": "100111-----------010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x9c002057", + "mask": "0xfc00707f" + }, + "vmadd_vv": { + "encoding": "101001-----------010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xa4002057", + "mask": "0xfc00707f" + }, + "vnmsub_vv": { + "encoding": "101011-----------010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xac002057", + "mask": "0xfc00707f" + }, + "vmacc_vv": { + "encoding": "101101-----------010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xb4002057", + "mask": "0xfc00707f" + }, + "vnmsac_vv": { + "encoding": "101111-----------010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xbc002057", + "mask": "0xfc00707f" + }, + "vwaddu_vv": { + "encoding": "110000-----------010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xc0002057", + "mask": "0xfc00707f" + }, + "vwadd_vv": { + "encoding": "110001-----------010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xc4002057", + "mask": "0xfc00707f" + }, + "vwsubu_vv": { + "encoding": "110010-----------010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xc8002057", + "mask": "0xfc00707f" + }, + "vwsub_vv": { + "encoding": "110011-----------010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xcc002057", + "mask": "0xfc00707f" + }, + "vwaddu_wv": { + "encoding": "110100-----------010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xd0002057", + "mask": "0xfc00707f" + }, + "vwadd_wv": { + "encoding": "110101-----------010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xd4002057", + "mask": "0xfc00707f" + }, + "vwsubu_wv": { + "encoding": "110110-----------010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xd8002057", + "mask": "0xfc00707f" + }, + "vwsub_wv": { + "encoding": "110111-----------010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xdc002057", + "mask": "0xfc00707f" + }, + "vwmulu_vv": { + "encoding": "111000-----------010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xe0002057", + "mask": "0xfc00707f" + }, + "vwmulsu_vv": { + "encoding": "111010-----------010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xe8002057", + "mask": "0xfc00707f" + }, + "vwmul_vv": { + "encoding": "111011-----------010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xec002057", + "mask": "0xfc00707f" + }, + "vwmaccu_vv": { + "encoding": "111100-----------010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xf0002057", + "mask": "0xfc00707f" + }, + "vwmacc_vv": { + "encoding": "111101-----------010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xf4002057", + "mask": "0xfc00707f" + }, + "vwmaccsu_vv": { + "encoding": "111111-----------010-----1010111", + "variable_fields": [ + "vm", + "vs2", + "vs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xfc002057", + "mask": "0xfc00707f" + }, + "vaaddu_vx": { + "encoding": "001000-----------110-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x20006057", + "mask": "0xfc00707f" + }, + "vaadd_vx": { + "encoding": "001001-----------110-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x24006057", + "mask": "0xfc00707f" + }, + "vasubu_vx": { + "encoding": "001010-----------110-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x28006057", + "mask": "0xfc00707f" + }, + "vasub_vx": { + "encoding": "001011-----------110-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x2c006057", + "mask": "0xfc00707f" + }, + "vmv_s_x": { + "encoding": "010000100000-----110-----1010111", + "variable_fields": [ + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x42006057", + "mask": "0xfff0707f" + }, + "vslide1up_vx": { + "encoding": "001110-----------110-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x38006057", + "mask": "0xfc00707f" + }, + "vslide1down_vx": { + "encoding": "001111-----------110-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x3c006057", + "mask": "0xfc00707f" + }, + "vdivu_vx": { + "encoding": "100000-----------110-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x80006057", + "mask": "0xfc00707f" + }, + "vdiv_vx": { + "encoding": "100001-----------110-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x84006057", + "mask": "0xfc00707f" + }, + "vremu_vx": { + "encoding": "100010-----------110-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x88006057", + "mask": "0xfc00707f" + }, + "vrem_vx": { + "encoding": "100011-----------110-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x8c006057", + "mask": "0xfc00707f" + }, + "vmulhu_vx": { + "encoding": "100100-----------110-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x90006057", + "mask": "0xfc00707f" + }, + "vmul_vx": { + "encoding": "100101-----------110-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x94006057", + "mask": "0xfc00707f" + }, + "vmulhsu_vx": { + "encoding": "100110-----------110-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x98006057", + "mask": "0xfc00707f" + }, + "vmulh_vx": { + "encoding": "100111-----------110-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0x9c006057", + "mask": "0xfc00707f" + }, + "vmadd_vx": { + "encoding": "101001-----------110-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xa4006057", + "mask": "0xfc00707f" + }, + "vnmsub_vx": { + "encoding": "101011-----------110-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xac006057", + "mask": "0xfc00707f" + }, + "vmacc_vx": { + "encoding": "101101-----------110-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xb4006057", + "mask": "0xfc00707f" + }, + "vnmsac_vx": { + "encoding": "101111-----------110-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xbc006057", + "mask": "0xfc00707f" + }, + "vwaddu_vx": { + "encoding": "110000-----------110-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xc0006057", + "mask": "0xfc00707f" + }, + "vwadd_vx": { + "encoding": "110001-----------110-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xc4006057", + "mask": "0xfc00707f" + }, + "vwsubu_vx": { + "encoding": "110010-----------110-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xc8006057", + "mask": "0xfc00707f" + }, + "vwsub_vx": { + "encoding": "110011-----------110-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xcc006057", + "mask": "0xfc00707f" + }, + "vwaddu_wx": { + "encoding": "110100-----------110-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xd0006057", + "mask": "0xfc00707f" + }, + "vwadd_wx": { + "encoding": "110101-----------110-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xd4006057", + "mask": "0xfc00707f" + }, + "vwsubu_wx": { + "encoding": "110110-----------110-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xd8006057", + "mask": "0xfc00707f" + }, + "vwsub_wx": { + "encoding": "110111-----------110-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xdc006057", + "mask": "0xfc00707f" + }, + "vwmulu_vx": { + "encoding": "111000-----------110-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xe0006057", + "mask": "0xfc00707f" + }, + "vwmulsu_vx": { + "encoding": "111010-----------110-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xe8006057", + "mask": "0xfc00707f" + }, + "vwmul_vx": { + "encoding": "111011-----------110-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xec006057", + "mask": "0xfc00707f" + }, + "vwmaccu_vx": { + "encoding": "111100-----------110-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xf0006057", + "mask": "0xfc00707f" + }, + "vwmacc_vx": { + "encoding": "111101-----------110-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xf4006057", + "mask": "0xfc00707f" + }, + "vwmaccus_vx": { + "encoding": "111110-----------110-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xf8006057", + "mask": "0xfc00707f" + }, + "vwmaccsu_vx": { + "encoding": "111111-----------110-----1010111", + "variable_fields": [ + "vm", + "vs2", + "rs1", + "vd" + ], + "extension": [ + "rv_v" + ], + "match": "0xfc006057", + "mask": "0xfc00707f" + }, + "mret": { + "encoding": "00110000001000000000000001110011", + "variable_fields": [], + "extension": [ + "rv_system" + ], + "match": "0x30200073", + "mask": "0xffffffff" + }, + "wfi": { + "encoding": "00010000010100000000000001110011", + "variable_fields": [], + "extension": [ + "rv_system" + ], + "match": "0x10500073", + "mask": "0xffffffff" + }, + "hinval_vvma": { + "encoding": "0010011----------000000001110011", + "variable_fields": [ + "rs1", + "rs2" + ], + "extension": [ + "rv_svinval_h" + ], + "match": "0x26000073", + "mask": "0xfe007fff" + }, + "hinval_gvma": { + "encoding": "0110011----------000000001110011", + "variable_fields": [ + "rs1", + "rs2" + ], + "extension": [ + "rv_svinval_h" + ], + "match": "0x66000073", + "mask": "0xfe007fff" + }, + "sinval_vma": { + "encoding": "0001011----------000000001110011", + "variable_fields": [ + "rs1", + "rs2" + ], + "extension": [ + "rv_svinval" + ], + "match": "0x16000073", + "mask": "0xfe007fff" + }, + "sfence_w_inval": { + "encoding": "00011000000000000000000001110011", + "variable_fields": [], + "extension": [ + "rv_svinval" + ], + "match": "0x18000073", + "mask": "0xffffffff" + }, + "sfence_inval_ir": { + "encoding": "00011000000100000000000001110011", + "variable_fields": [], + "extension": [ + "rv_svinval" + ], + "match": "0x18100073", + "mask": "0xffffffff" + }, + "mnret": { + "encoding": "01110000001000000000000001110011", + "variable_fields": [], + "extension": [ + "rv_smrnmi" + ], + "match": "0x70200073", + "mask": "0xffffffff" + }, + "sctrclr": { + "encoding": "00010000010000000000000001110011", + "variable_fields": [], + "extension": [ + "rv_smdbltrp" + ], + "match": "0x10400073", + "mask": "0xffffffff" + }, + "dret": { + "encoding": "01111011001000000000000001110011", + "variable_fields": [], + "extension": [ + "rv_sdext" + ], + "match": "0x7b200073", + "mask": "0xffffffff" + }, + "sfence_vma": { + "encoding": "0001001----------000000001110011", + "variable_fields": [ + "rs1", + "rs2" + ], + "extension": [ + "rv_s" + ], + "match": "0x12000073", + "mask": "0xfe007fff" + }, + "sret": { + "encoding": "00010000001000000000000001110011", + "variable_fields": [], + "extension": [ + "rv_s" + ], + "match": "0x10200073", + "mask": "0xffffffff" + }, + "fcvt_q_h": { + "encoding": "010001100010-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv_q_zfh" + ], + "match": "0x46200053", + "mask": "0xfff0007f" + }, + "fcvt_h_q": { + "encoding": "010001000011-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv_q_zfh" + ], + "match": "0x44300053", + "mask": "0xfff0007f" + }, + "fli_q": { + "encoding": "111101100001-----000-----1010011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv_q_zfa" + ], + "match": "0xf6100053", + "mask": "0xfff0707f" + }, + "fminm_q": { + "encoding": "0010111----------010-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_q_zfa" + ], + "match": "0x2e002053", + "mask": "0xfe00707f" + }, + "fmaxm_q": { + "encoding": "0010111----------011-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_q_zfa" + ], + "match": "0x2e003053", + "mask": "0xfe00707f" + }, + "fround_q": { + "encoding": "010001100100-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv_q_zfa" + ], + "match": "0x46400053", + "mask": "0xfff0007f" + }, + "froundnx_q": { + "encoding": "010001100101-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv_q_zfa" + ], + "match": "0x46500053", + "mask": "0xfff0007f" + }, + "fleq_q": { + "encoding": "1010011----------100-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_q_zfa" + ], + "match": "0xa6004053", + "mask": "0xfe00707f" + }, + "fltq_q": { + "encoding": "1010011----------101-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_q_zfa" + ], + "match": "0xa6005053", + "mask": "0xfe00707f" + }, + "flq": { + "encoding": "-----------------100-----0000111", + "variable_fields": [ + "rd", + "rs1", + "imm12" + ], + "extension": [ + "rv_q" + ], + "match": "0x4007", + "mask": "0x707f" + }, + "fsq": { + "encoding": "-----------------100-----0100111", + "variable_fields": [ + "imm12hi", + "rs1", + "rs2", + "imm12lo" + ], + "extension": [ + "rv_q" + ], + "match": "0x4027", + "mask": "0x707f" + }, + "fmadd_q": { + "encoding": "-----11------------------1000011", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "rs3", + "rm" + ], + "extension": [ + "rv_q" + ], + "match": "0x6000043", + "mask": "0x600007f" + }, + "fmsub_q": { + "encoding": "-----11------------------1000111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "rs3", + "rm" + ], + "extension": [ + "rv_q" + ], + "match": "0x6000047", + "mask": "0x600007f" + }, + "fnmsub_q": { + "encoding": "-----11------------------1001011", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "rs3", + "rm" + ], + "extension": [ + "rv_q" + ], + "match": "0x600004b", + "mask": "0x600007f" + }, + "fnmadd_q": { + "encoding": "-----11------------------1001111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "rs3", + "rm" + ], + "extension": [ + "rv_q" + ], + "match": "0x600004f", + "mask": "0x600007f" + }, + "fadd_q": { + "encoding": "0000011------------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "rm" + ], + "extension": [ + "rv_q" + ], + "match": "0x6000053", + "mask": "0xfe00007f" + }, + "fsub_q": { + "encoding": "0000111------------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "rm" + ], + "extension": [ + "rv_q" + ], + "match": "0xe000053", + "mask": "0xfe00007f" + }, + "fmul_q": { + "encoding": "0001011------------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "rm" + ], + "extension": [ + "rv_q" + ], + "match": "0x16000053", + "mask": "0xfe00007f" + }, + "fdiv_q": { + "encoding": "0001111------------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "rm" + ], + "extension": [ + "rv_q" + ], + "match": "0x1e000053", + "mask": "0xfe00007f" + }, + "fsqrt_q": { + "encoding": "010111100000-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv_q" + ], + "match": "0x5e000053", + "mask": "0xfff0007f" + }, + "fsgnj_q": { + "encoding": "0010011----------000-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_q" + ], + "match": "0x26000053", + "mask": "0xfe00707f" + }, + "fsgnjn_q": { + "encoding": "0010011----------001-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_q" + ], + "match": "0x26001053", + "mask": "0xfe00707f" + }, + "fsgnjx_q": { + "encoding": "0010011----------010-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_q" + ], + "match": "0x26002053", + "mask": "0xfe00707f" + }, + "fmin_q": { + "encoding": "0010111----------000-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_q" + ], + "match": "0x2e000053", + "mask": "0xfe00707f" + }, + "fmax_q": { + "encoding": "0010111----------001-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_q" + ], + "match": "0x2e001053", + "mask": "0xfe00707f" + }, + "fcvt_s_q": { + "encoding": "010000000011-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv_q" + ], + "match": "0x40300053", + "mask": "0xfff0007f" + }, + "fcvt_q_s": { + "encoding": "010001100000-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv_q" + ], + "match": "0x46000053", + "mask": "0xfff0007f" + }, + "fcvt_d_q": { + "encoding": "010000100011-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv_q" + ], + "match": "0x42300053", + "mask": "0xfff0007f" + }, + "fcvt_q_d": { + "encoding": "010001100001-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv_q" + ], + "match": "0x46100053", + "mask": "0xfff0007f" + }, + "feq_q": { + "encoding": "1010011----------010-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_q" + ], + "match": "0xa6002053", + "mask": "0xfe00707f" + }, + "flt_q": { + "encoding": "1010011----------001-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_q" + ], + "match": "0xa6001053", + "mask": "0xfe00707f" + }, + "fle_q": { + "encoding": "1010011----------000-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_q" + ], + "match": "0xa6000053", + "mask": "0xfe00707f" + }, + "fclass_q": { + "encoding": "111001100000-----001-----1010011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv_q" + ], + "match": "0xe6001053", + "mask": "0xfff0707f" + }, + "fcvt_w_q": { + "encoding": "110001100000-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv_q" + ], + "match": "0xc6000053", + "mask": "0xfff0007f" + }, + "fcvt_wu_q": { + "encoding": "110001100001-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv_q" + ], + "match": "0xc6100053", + "mask": "0xfff0007f" + }, + "fcvt_q_w": { + "encoding": "110101100000-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv_q" + ], + "match": "0xd6000053", + "mask": "0xfff0007f" + }, + "fcvt_q_wu": { + "encoding": "110101100001-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv_q" + ], + "match": "0xd6100053", + "mask": "0xfff0007f" + }, + "mul": { + "encoding": "0000001----------000-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_m" + ], + "match": "0x2000033", + "mask": "0xfe00707f" + }, + "mulh": { + "encoding": "0000001----------001-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_m" + ], + "match": "0x2001033", + "mask": "0xfe00707f" + }, + "mulhsu": { + "encoding": "0000001----------010-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_m" + ], + "match": "0x2002033", + "mask": "0xfe00707f" + }, + "mulhu": { + "encoding": "0000001----------011-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_m" + ], + "match": "0x2003033", + "mask": "0xfe00707f" + }, + "div": { + "encoding": "0000001----------100-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_m" + ], + "match": "0x2004033", + "mask": "0xfe00707f" + }, + "divu": { + "encoding": "0000001----------101-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_m" + ], + "match": "0x2005033", + "mask": "0xfe00707f" + }, + "rem": { + "encoding": "0000001----------110-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_m" + ], + "match": "0x2006033", + "mask": "0xfe00707f" + }, + "remu": { + "encoding": "0000001----------111-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_m" + ], + "match": "0x2007033", + "mask": "0xfe00707f" + }, + "lui": { + "encoding": "-------------------------0110111", + "variable_fields": [ + "rd", + "imm20" + ], + "extension": [ + "rv_i" + ], + "match": "0x37", + "mask": "0x7f" + }, + "auipc": { + "encoding": "-------------------------0010111", + "variable_fields": [ + "rd", + "imm20" + ], + "extension": [ + "rv_i" + ], + "match": "0x17", + "mask": "0x7f" + }, + "jal": { + "encoding": "-------------------------1101111", + "variable_fields": [ + "rd", + "jimm20" + ], + "extension": [ + "rv_i" + ], + "match": "0x6f", + "mask": "0x7f" + }, + "jalr": { + "encoding": "-----------------000-----1100111", + "variable_fields": [ + "rd", + "rs1", + "imm12" + ], + "extension": [ + "rv_i" + ], + "match": "0x67", + "mask": "0x707f" + }, + "beq": { + "encoding": "-----------------000-----1100011", + "variable_fields": [ + "bimm12hi", + "rs1", + "rs2", + "bimm12lo" + ], + "extension": [ + "rv_i" + ], + "match": "0x63", + "mask": "0x707f" + }, + "bne": { + "encoding": "-----------------001-----1100011", + "variable_fields": [ + "bimm12hi", + "rs1", + "rs2", + "bimm12lo" + ], + "extension": [ + "rv_i" + ], + "match": "0x1063", + "mask": "0x707f" + }, + "blt": { + "encoding": "-----------------100-----1100011", + "variable_fields": [ + "bimm12hi", + "rs1", + "rs2", + "bimm12lo" + ], + "extension": [ + "rv_i" + ], + "match": "0x4063", + "mask": "0x707f" + }, + "bge": { + "encoding": "-----------------101-----1100011", + "variable_fields": [ + "bimm12hi", + "rs1", + "rs2", + "bimm12lo" + ], + "extension": [ + "rv_i" + ], + "match": "0x5063", + "mask": "0x707f" + }, + "bltu": { + "encoding": "-----------------110-----1100011", + "variable_fields": [ + "bimm12hi", + "rs1", + "rs2", + "bimm12lo" + ], + "extension": [ + "rv_i" + ], + "match": "0x6063", + "mask": "0x707f" + }, + "bgeu": { + "encoding": "-----------------111-----1100011", + "variable_fields": [ + "bimm12hi", + "rs1", + "rs2", + "bimm12lo" + ], + "extension": [ + "rv_i" + ], + "match": "0x7063", + "mask": "0x707f" + }, + "lb": { + "encoding": "-----------------000-----0000011", + "variable_fields": [ + "rd", + "rs1", + "imm12" + ], + "extension": [ + "rv_i" + ], + "match": "0x3", + "mask": "0x707f" + }, + "lh": { + "encoding": "-----------------001-----0000011", + "variable_fields": [ + "rd", + "rs1", + "imm12" + ], + "extension": [ + "rv_i" + ], + "match": "0x1003", + "mask": "0x707f" + }, + "lw": { + "encoding": "-----------------010-----0000011", + "variable_fields": [ + "rd", + "rs1", + "imm12" + ], + "extension": [ + "rv_i" + ], + "match": "0x2003", + "mask": "0x707f" + }, + "lbu": { + "encoding": "-----------------100-----0000011", + "variable_fields": [ + "rd", + "rs1", + "imm12" + ], + "extension": [ + "rv_i" + ], + "match": "0x4003", + "mask": "0x707f" + }, + "lhu": { + "encoding": "-----------------101-----0000011", + "variable_fields": [ + "rd", + "rs1", + "imm12" + ], + "extension": [ + "rv_i" + ], + "match": "0x5003", + "mask": "0x707f" + }, + "sb": { + "encoding": "-----------------000-----0100011", + "variable_fields": [ + "imm12hi", + "rs1", + "rs2", + "imm12lo" + ], + "extension": [ + "rv_i" + ], + "match": "0x23", + "mask": "0x707f" + }, + "sh": { + "encoding": "-----------------001-----0100011", + "variable_fields": [ + "imm12hi", + "rs1", + "rs2", + "imm12lo" + ], + "extension": [ + "rv_i" + ], + "match": "0x1023", + "mask": "0x707f" + }, + "sw": { + "encoding": "-----------------010-----0100011", + "variable_fields": [ + "imm12hi", + "rs1", + "rs2", + "imm12lo" + ], + "extension": [ + "rv_i" + ], + "match": "0x2023", + "mask": "0x707f" + }, + "addi": { + "encoding": "-----------------000-----0010011", + "variable_fields": [ + "rd", + "rs1", + "imm12" + ], + "extension": [ + "rv_i" + ], + "match": "0x13", + "mask": "0x707f" + }, + "slti": { + "encoding": "-----------------010-----0010011", + "variable_fields": [ + "rd", + "rs1", + "imm12" + ], + "extension": [ + "rv_i" + ], + "match": "0x2013", + "mask": "0x707f" + }, + "sltiu": { + "encoding": "-----------------011-----0010011", + "variable_fields": [ + "rd", + "rs1", + "imm12" + ], + "extension": [ + "rv_i" + ], + "match": "0x3013", + "mask": "0x707f" + }, + "xori": { + "encoding": "-----------------100-----0010011", + "variable_fields": [ + "rd", + "rs1", + "imm12" + ], + "extension": [ + "rv_i" + ], + "match": "0x4013", + "mask": "0x707f" + }, + "ori": { + "encoding": "-----------------110-----0010011", + "variable_fields": [ + "rd", + "rs1", + "imm12" + ], + "extension": [ + "rv_i" + ], + "match": "0x6013", + "mask": "0x707f" + }, + "andi": { + "encoding": "-----------------111-----0010011", + "variable_fields": [ + "rd", + "rs1", + "imm12" + ], + "extension": [ + "rv_i" + ], + "match": "0x7013", + "mask": "0x707f" + }, + "add": { + "encoding": "0000000----------000-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_i" + ], + "match": "0x33", + "mask": "0xfe00707f" + }, + "sub": { + "encoding": "0100000----------000-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_i" + ], + "match": "0x40000033", + "mask": "0xfe00707f" + }, + "sll": { + "encoding": "0000000----------001-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_i" + ], + "match": "0x1033", + "mask": "0xfe00707f" + }, + "slt": { + "encoding": "0000000----------010-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_i" + ], + "match": "0x2033", + "mask": "0xfe00707f" + }, + "sltu": { + "encoding": "0000000----------011-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_i" + ], + "match": "0x3033", + "mask": "0xfe00707f" + }, + "xor": { + "encoding": "0000000----------100-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_i" + ], + "match": "0x4033", + "mask": "0xfe00707f" + }, + "srl": { + "encoding": "0000000----------101-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_i" + ], + "match": "0x5033", + "mask": "0xfe00707f" + }, + "sra": { + "encoding": "0100000----------101-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_i" + ], + "match": "0x40005033", + "mask": "0xfe00707f" + }, + "or": { + "encoding": "0000000----------110-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_i" + ], + "match": "0x6033", + "mask": "0xfe00707f" + }, + "and": { + "encoding": "0000000----------111-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_i" + ], + "match": "0x7033", + "mask": "0xfe00707f" + }, + "fence": { + "encoding": "-----------------000-----0001111", + "variable_fields": [ + "fm", + "pred", + "succ", + "rs1", + "rd" + ], + "extension": [ + "rv_i" + ], + "match": "0xf", + "mask": "0x707f" + }, + "ecall": { + "encoding": "00000000000000000000000001110011", + "variable_fields": [], + "extension": [ + "rv_i" + ], + "match": "0x73", + "mask": "0xffffffff" + }, + "ebreak": { + "encoding": "00000000000100000000000001110011", + "variable_fields": [], + "extension": [ + "rv_i" + ], + "match": "0x100073", + "mask": "0xffffffff" + }, + "hfence_vvma": { + "encoding": "0010001----------000000001110011", + "variable_fields": [ + "rs1", + "rs2" + ], + "extension": [ + "rv_h" + ], + "match": "0x22000073", + "mask": "0xfe007fff" + }, + "hfence_gvma": { + "encoding": "0110001----------000000001110011", + "variable_fields": [ + "rs1", + "rs2" + ], + "extension": [ + "rv_h" + ], + "match": "0x62000073", + "mask": "0xfe007fff" + }, + "hlv_b": { + "encoding": "011000000000-----100-----1110011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv_h" + ], + "match": "0x60004073", + "mask": "0xfff0707f" + }, + "hlv_bu": { + "encoding": "011000000001-----100-----1110011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv_h" + ], + "match": "0x60104073", + "mask": "0xfff0707f" + }, + "hlv_h": { + "encoding": "011001000000-----100-----1110011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv_h" + ], + "match": "0x64004073", + "mask": "0xfff0707f" + }, + "hlv_hu": { + "encoding": "011001000001-----100-----1110011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv_h" + ], + "match": "0x64104073", + "mask": "0xfff0707f" + }, + "hlvx_hu": { + "encoding": "011001000011-----100-----1110011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv_h" + ], + "match": "0x64304073", + "mask": "0xfff0707f" + }, + "hlv_w": { + "encoding": "011010000000-----100-----1110011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv_h" + ], + "match": "0x68004073", + "mask": "0xfff0707f" + }, + "hlvx_wu": { + "encoding": "011010000011-----100-----1110011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv_h" + ], + "match": "0x68304073", + "mask": "0xfff0707f" + }, + "hsv_b": { + "encoding": "0110001----------100000001110011", + "variable_fields": [ + "rs1", + "rs2" + ], + "extension": [ + "rv_h" + ], + "match": "0x62004073", + "mask": "0xfe007fff" + }, + "hsv_h": { + "encoding": "0110011----------100000001110011", + "variable_fields": [ + "rs1", + "rs2" + ], + "extension": [ + "rv_h" + ], + "match": "0x66004073", + "mask": "0xfe007fff" + }, + "hsv_w": { + "encoding": "0110101----------100000001110011", + "variable_fields": [ + "rs1", + "rs2" + ], + "extension": [ + "rv_h" + ], + "match": "0x6a004073", + "mask": "0xfe007fff" + }, + "fli_s": { + "encoding": "111100000001-----000-----1010011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv_f_zfa" + ], + "match": "0xf0100053", + "mask": "0xfff0707f" + }, + "fminm_s": { + "encoding": "0010100----------010-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_f_zfa" + ], + "match": "0x28002053", + "mask": "0xfe00707f" + }, + "fmaxm_s": { + "encoding": "0010100----------011-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_f_zfa" + ], + "match": "0x28003053", + "mask": "0xfe00707f" + }, + "fround_s": { + "encoding": "010000000100-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv_f_zfa" + ], + "match": "0x40400053", + "mask": "0xfff0007f" + }, + "froundnx_s": { + "encoding": "010000000101-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv_f_zfa" + ], + "match": "0x40500053", + "mask": "0xfff0007f" + }, + "fleq_s": { + "encoding": "1010000----------100-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_f_zfa" + ], + "match": "0xa0004053", + "mask": "0xfe00707f" + }, + "fltq_s": { + "encoding": "1010000----------101-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_f_zfa" + ], + "match": "0xa0005053", + "mask": "0xfe00707f" + }, + "flw": { + "encoding": "-----------------010-----0000111", + "variable_fields": [ + "rd", + "rs1", + "imm12" + ], + "extension": [ + "rv_f" + ], + "match": "0x2007", + "mask": "0x707f" + }, + "fsw": { + "encoding": "-----------------010-----0100111", + "variable_fields": [ + "imm12hi", + "rs1", + "rs2", + "imm12lo" + ], + "extension": [ + "rv_f" + ], + "match": "0x2027", + "mask": "0x707f" + }, + "fmadd_s": { + "encoding": "-----00------------------1000011", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "rs3", + "rm" + ], + "extension": [ + "rv_f" + ], + "match": "0x43", + "mask": "0x600007f" + }, + "fmsub_s": { + "encoding": "-----00------------------1000111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "rs3", + "rm" + ], + "extension": [ + "rv_f" + ], + "match": "0x47", + "mask": "0x600007f" + }, + "fnmsub_s": { + "encoding": "-----00------------------1001011", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "rs3", + "rm" + ], + "extension": [ + "rv_f" + ], + "match": "0x4b", + "mask": "0x600007f" + }, + "fnmadd_s": { + "encoding": "-----00------------------1001111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "rs3", + "rm" + ], + "extension": [ + "rv_f" + ], + "match": "0x4f", + "mask": "0x600007f" + }, + "fadd_s": { + "encoding": "0000000------------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "rm" + ], + "extension": [ + "rv_f" + ], + "match": "0x53", + "mask": "0xfe00007f" + }, + "fsub_s": { + "encoding": "0000100------------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "rm" + ], + "extension": [ + "rv_f" + ], + "match": "0x8000053", + "mask": "0xfe00007f" + }, + "fmul_s": { + "encoding": "0001000------------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "rm" + ], + "extension": [ + "rv_f" + ], + "match": "0x10000053", + "mask": "0xfe00007f" + }, + "fdiv_s": { + "encoding": "0001100------------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "rm" + ], + "extension": [ + "rv_f" + ], + "match": "0x18000053", + "mask": "0xfe00007f" + }, + "fsqrt_s": { + "encoding": "010110000000-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv_f" + ], + "match": "0x58000053", + "mask": "0xfff0007f" + }, + "fsgnj_s": { + "encoding": "0010000----------000-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_f" + ], + "match": "0x20000053", + "mask": "0xfe00707f" + }, + "fsgnjn_s": { + "encoding": "0010000----------001-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_f" + ], + "match": "0x20001053", + "mask": "0xfe00707f" + }, + "fsgnjx_s": { + "encoding": "0010000----------010-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_f" + ], + "match": "0x20002053", + "mask": "0xfe00707f" + }, + "fmin_s": { + "encoding": "0010100----------000-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_f" + ], + "match": "0x28000053", + "mask": "0xfe00707f" + }, + "fmax_s": { + "encoding": "0010100----------001-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_f" + ], + "match": "0x28001053", + "mask": "0xfe00707f" + }, + "fcvt_w_s": { + "encoding": "110000000000-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv_f" + ], + "match": "0xc0000053", + "mask": "0xfff0007f" + }, + "fcvt_wu_s": { + "encoding": "110000000001-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv_f" + ], + "match": "0xc0100053", + "mask": "0xfff0007f" + }, + "fmv_x_w": { + "encoding": "111000000000-----000-----1010011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv_f" + ], + "match": "0xe0000053", + "mask": "0xfff0707f" + }, + "feq_s": { + "encoding": "1010000----------010-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_f" + ], + "match": "0xa0002053", + "mask": "0xfe00707f" + }, + "flt_s": { + "encoding": "1010000----------001-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_f" + ], + "match": "0xa0001053", + "mask": "0xfe00707f" + }, + "fle_s": { + "encoding": "1010000----------000-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_f" + ], + "match": "0xa0000053", + "mask": "0xfe00707f" + }, + "fclass_s": { + "encoding": "111000000000-----001-----1010011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv_f" + ], + "match": "0xe0001053", + "mask": "0xfff0707f" + }, + "fcvt_s_w": { + "encoding": "110100000000-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv_f" + ], + "match": "0xd0000053", + "mask": "0xfff0007f" + }, + "fcvt_s_wu": { + "encoding": "110100000001-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv_f" + ], + "match": "0xd0100053", + "mask": "0xfff0007f" + }, + "fmv_w_x": { + "encoding": "111100000000-----000-----1010011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv_f" + ], + "match": "0xf0000053", + "mask": "0xfff0707f" + }, + "fcvt_d_h": { + "encoding": "010000100010-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv_d_zfh" + ], + "match": "0x42200053", + "mask": "0xfff0007f" + }, + "fcvt_h_d": { + "encoding": "010001000001-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv_d_zfh" + ], + "match": "0x44100053", + "mask": "0xfff0007f" + }, + "fli_d": { + "encoding": "111100100001-----000-----1010011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv_d_zfa" + ], + "match": "0xf2100053", + "mask": "0xfff0707f" + }, + "fminm_d": { + "encoding": "0010101----------010-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_d_zfa" + ], + "match": "0x2a002053", + "mask": "0xfe00707f" + }, + "fmaxm_d": { + "encoding": "0010101----------011-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_d_zfa" + ], + "match": "0x2a003053", + "mask": "0xfe00707f" + }, + "fround_d": { + "encoding": "010000100100-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv_d_zfa" + ], + "match": "0x42400053", + "mask": "0xfff0007f" + }, + "froundnx_d": { + "encoding": "010000100101-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv_d_zfa" + ], + "match": "0x42500053", + "mask": "0xfff0007f" + }, + "fcvtmod_w_d": { + "encoding": "110000101000-----001-----1010011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv_d_zfa" + ], + "match": "0xc2801053", + "mask": "0xfff0707f" + }, + "fleq_d": { + "encoding": "1010001----------100-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_d_zfa" + ], + "match": "0xa2004053", + "mask": "0xfe00707f" + }, + "fltq_d": { + "encoding": "1010001----------101-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_d_zfa" + ], + "match": "0xa2005053", + "mask": "0xfe00707f" + }, + "fld": { + "encoding": "-----------------011-----0000111", + "variable_fields": [ + "rd", + "rs1", + "imm12" + ], + "extension": [ + "rv_d" + ], + "match": "0x3007", + "mask": "0x707f" + }, + "fsd": { + "encoding": "-----------------011-----0100111", + "variable_fields": [ + "imm12hi", + "rs1", + "rs2", + "imm12lo" + ], + "extension": [ + "rv_d" + ], + "match": "0x3027", + "mask": "0x707f" + }, + "fmadd_d": { + "encoding": "-----01------------------1000011", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "rs3", + "rm" + ], + "extension": [ + "rv_d" + ], + "match": "0x2000043", + "mask": "0x600007f" + }, + "fmsub_d": { + "encoding": "-----01------------------1000111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "rs3", + "rm" + ], + "extension": [ + "rv_d" + ], + "match": "0x2000047", + "mask": "0x600007f" + }, + "fnmsub_d": { + "encoding": "-----01------------------1001011", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "rs3", + "rm" + ], + "extension": [ + "rv_d" + ], + "match": "0x200004b", + "mask": "0x600007f" + }, + "fnmadd_d": { + "encoding": "-----01------------------1001111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "rs3", + "rm" + ], + "extension": [ + "rv_d" + ], + "match": "0x200004f", + "mask": "0x600007f" + }, + "fadd_d": { + "encoding": "0000001------------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "rm" + ], + "extension": [ + "rv_d" + ], + "match": "0x2000053", + "mask": "0xfe00007f" + }, + "fsub_d": { + "encoding": "0000101------------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "rm" + ], + "extension": [ + "rv_d" + ], + "match": "0xa000053", + "mask": "0xfe00007f" + }, + "fmul_d": { + "encoding": "0001001------------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "rm" + ], + "extension": [ + "rv_d" + ], + "match": "0x12000053", + "mask": "0xfe00007f" + }, + "fdiv_d": { + "encoding": "0001101------------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "rm" + ], + "extension": [ + "rv_d" + ], + "match": "0x1a000053", + "mask": "0xfe00007f" + }, + "fsqrt_d": { + "encoding": "010110100000-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv_d" + ], + "match": "0x5a000053", + "mask": "0xfff0007f" + }, + "fsgnj_d": { + "encoding": "0010001----------000-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_d" + ], + "match": "0x22000053", + "mask": "0xfe00707f" + }, + "fsgnjn_d": { + "encoding": "0010001----------001-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_d" + ], + "match": "0x22001053", + "mask": "0xfe00707f" + }, + "fsgnjx_d": { + "encoding": "0010001----------010-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_d" + ], + "match": "0x22002053", + "mask": "0xfe00707f" + }, + "fmin_d": { + "encoding": "0010101----------000-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_d" + ], + "match": "0x2a000053", + "mask": "0xfe00707f" + }, + "fmax_d": { + "encoding": "0010101----------001-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_d" + ], + "match": "0x2a001053", + "mask": "0xfe00707f" + }, + "fcvt_s_d": { + "encoding": "010000000001-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv_d" + ], + "match": "0x40100053", + "mask": "0xfff0007f" + }, + "fcvt_d_s": { + "encoding": "010000100000-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv_d" + ], + "match": "0x42000053", + "mask": "0xfff0007f" + }, + "feq_d": { + "encoding": "1010001----------010-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_d" + ], + "match": "0xa2002053", + "mask": "0xfe00707f" + }, + "flt_d": { + "encoding": "1010001----------001-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_d" + ], + "match": "0xa2001053", + "mask": "0xfe00707f" + }, + "fle_d": { + "encoding": "1010001----------000-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_d" + ], + "match": "0xa2000053", + "mask": "0xfe00707f" + }, + "fclass_d": { + "encoding": "111000100000-----001-----1010011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv_d" + ], + "match": "0xe2001053", + "mask": "0xfff0707f" + }, + "fcvt_w_d": { + "encoding": "110000100000-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv_d" + ], + "match": "0xc2000053", + "mask": "0xfff0007f" + }, + "fcvt_wu_d": { + "encoding": "110000100001-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv_d" + ], + "match": "0xc2100053", + "mask": "0xfff0007f" + }, + "fcvt_d_w": { + "encoding": "110100100000-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv_d" + ], + "match": "0xd2000053", + "mask": "0xfff0007f" + }, + "fcvt_d_wu": { + "encoding": "110100100001-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv_d" + ], + "match": "0xd2100053", + "mask": "0xfff0007f" + }, + "c_fld": { + "encoding": "----------------001-----------00", + "variable_fields": [ + "rd_p", + "rs1_p", + "c_uimm8lo", + "c_uimm8hi" + ], + "extension": [ + "rv_c_d" + ], + "match": "0x2000", + "mask": "0xe003" + }, + "c_fsd": { + "encoding": "----------------101-----------00", + "variable_fields": [ + "rs1_p", + "rs2_p", + "c_uimm8lo", + "c_uimm8hi" + ], + "extension": [ + "rv_c_d" + ], + "match": "0xa000", + "mask": "0xe003" + }, + "c_fldsp": { + "encoding": "----------------001-----------10", + "variable_fields": [ + "rd", + "c_uimm9sphi", + "c_uimm9splo" + ], + "extension": [ + "rv_c_d" + ], + "match": "0x2002", + "mask": "0xe003" + }, + "c_fsdsp": { + "encoding": "----------------101-----------10", + "variable_fields": [ + "c_rs2", + "c_uimm9sp_s" + ], + "extension": [ + "rv_c_d" + ], + "match": "0xa002", + "mask": "0xe003" + }, + "c_addi4spn": { + "encoding": "----------------000-----------00", + "variable_fields": [ + "rd_p", + "c_nzuimm10" + ], + "extension": [ + "rv_c" + ], + "match": "0x0", + "mask": "0xe003" + }, + "c_lw": { + "encoding": "----------------010-----------00", + "variable_fields": [ + "rd_p", + "rs1_p", + "c_uimm7lo", + "c_uimm7hi" + ], + "extension": [ + "rv_c" + ], + "match": "0x4000", + "mask": "0xe003" + }, + "c_sw": { + "encoding": "----------------110-----------00", + "variable_fields": [ + "rs1_p", + "rs2_p", + "c_uimm7lo", + "c_uimm7hi" + ], + "extension": [ + "rv_c" + ], + "match": "0xc000", + "mask": "0xe003" + }, + "c_nop": { + "encoding": "----------------000-00000-----01", + "variable_fields": [ + "c_nzimm6hi", + "c_nzimm6lo" + ], + "extension": [ + "rv_c" + ], + "match": "0x1", + "mask": "0xef83" + }, + "c_addi": { + "encoding": "----------------000-----------01", + "variable_fields": [ + "rd_rs1_n0", + "c_nzimm6lo", + "c_nzimm6hi" + ], + "extension": [ + "rv_c" + ], + "match": "0x1", + "mask": "0xe003" + }, + "c_li": { + "encoding": "----------------010-----------01", + "variable_fields": [ + "rd_n0", + "c_imm6lo", + "c_imm6hi" + ], + "extension": [ + "rv_c" + ], + "match": "0x4001", + "mask": "0xe003" + }, + "c_addi16sp": { + "encoding": "----------------011-00010-----01", + "variable_fields": [ + "c_nzimm10hi", + "c_nzimm10lo" + ], + "extension": [ + "rv_c" + ], + "match": "0x6101", + "mask": "0xef83" + }, + "c_lui": { + "encoding": "----------------011-----------01", + "variable_fields": [ + "rd_n2", + "c_nzimm18hi", + "c_nzimm18lo" + ], + "extension": [ + "rv_c" + ], + "match": "0x6001", + "mask": "0xe003" + }, + "c_andi": { + "encoding": "----------------100-10--------01", + "variable_fields": [ + "rd_rs1_p", + "c_imm6hi", + "c_imm6lo" + ], + "extension": [ + "rv_c" + ], + "match": "0x8801", + "mask": "0xec03" + }, + "c_sub": { + "encoding": "----------------100011---00---01", + "variable_fields": [ + "rd_rs1_p", + "rs2_p" + ], + "extension": [ + "rv_c" + ], + "match": "0x8c01", + "mask": "0xfc63" + }, + "c_xor": { + "encoding": "----------------100011---01---01", + "variable_fields": [ + "rd_rs1_p", + "rs2_p" + ], + "extension": [ + "rv_c" + ], + "match": "0x8c21", + "mask": "0xfc63" + }, + "c_or": { + "encoding": "----------------100011---10---01", + "variable_fields": [ + "rd_rs1_p", + "rs2_p" + ], + "extension": [ + "rv_c" + ], + "match": "0x8c41", + "mask": "0xfc63" + }, + "c_and": { + "encoding": "----------------100011---11---01", + "variable_fields": [ + "rd_rs1_p", + "rs2_p" + ], + "extension": [ + "rv_c" + ], + "match": "0x8c61", + "mask": "0xfc63" + }, + "c_j": { + "encoding": "----------------101-----------01", + "variable_fields": [ + "c_imm12" + ], + "extension": [ + "rv_c" + ], + "match": "0xa001", + "mask": "0xe003" + }, + "c_beqz": { + "encoding": "----------------110-----------01", + "variable_fields": [ + "rs1_p", + "c_bimm9lo", + "c_bimm9hi" + ], + "extension": [ + "rv_c" + ], + "match": "0xc001", + "mask": "0xe003" + }, + "c_bnez": { + "encoding": "----------------111-----------01", + "variable_fields": [ + "rs1_p", + "c_bimm9lo", + "c_bimm9hi" + ], + "extension": [ + "rv_c" + ], + "match": "0xe001", + "mask": "0xe003" + }, + "c_lwsp": { + "encoding": "----------------010-----------10", + "variable_fields": [ + "rd_n0", + "c_uimm8sphi", + "c_uimm8splo" + ], + "extension": [ + "rv_c" + ], + "match": "0x4002", + "mask": "0xe003" + }, + "c_jr": { + "encoding": "----------------1000-----0000010", + "variable_fields": [ + "rs1_n0" + ], + "extension": [ + "rv_c" + ], + "match": "0x8002", + "mask": "0xf07f" + }, + "c_mv": { + "encoding": "----------------1000----------10", + "variable_fields": [ + "rd_n0", + "c_rs2_n0" + ], + "extension": [ + "rv_c" + ], + "match": "0x8002", + "mask": "0xf003" + }, + "c_ebreak": { + "encoding": "----------------1001000000000010", + "variable_fields": [], + "extension": [ + "rv_c" + ], + "match": "0x9002", + "mask": "0xffff" + }, + "c_jalr": { + "encoding": "----------------1001-----0000010", + "variable_fields": [ + "c_rs1_n0" + ], + "extension": [ + "rv_c" + ], + "match": "0x9002", + "mask": "0xf07f" + }, + "c_add": { + "encoding": "----------------1001----------10", + "variable_fields": [ + "rd_rs1_n0", + "c_rs2_n0" + ], + "extension": [ + "rv_c" + ], + "match": "0x9002", + "mask": "0xf003" + }, + "c_swsp": { + "encoding": "----------------110-----------10", + "variable_fields": [ + "c_rs2", + "c_uimm8sp_s" + ], + "extension": [ + "rv_c" + ], + "match": "0xc002", + "mask": "0xe003" + }, + "lr_w": { + "encoding": "00010--00000-----010-----0101111", + "variable_fields": [ + "rd", + "rs1", + "aq", + "rl" + ], + "extension": [ + "rv_a" + ], + "match": "0x1000202f", + "mask": "0xf9f0707f" + }, + "sc_w": { + "encoding": "00011------------010-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv_a" + ], + "match": "0x1800202f", + "mask": "0xf800707f" + }, + "amoswap_w": { + "encoding": "00001------------010-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv_a" + ], + "match": "0x800202f", + "mask": "0xf800707f" + }, + "amoadd_w": { + "encoding": "00000------------010-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv_a" + ], + "match": "0x202f", + "mask": "0xf800707f" + }, + "amoxor_w": { + "encoding": "00100------------010-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv_a" + ], + "match": "0x2000202f", + "mask": "0xf800707f" + }, + "amoand_w": { + "encoding": "01100------------010-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv_a" + ], + "match": "0x6000202f", + "mask": "0xf800707f" + }, + "amoor_w": { + "encoding": "01000------------010-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv_a" + ], + "match": "0x4000202f", + "mask": "0xf800707f" + }, + "amomin_w": { + "encoding": "10000------------010-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv_a" + ], + "match": "0x8000202f", + "mask": "0xf800707f" + }, + "amomax_w": { + "encoding": "10100------------010-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv_a" + ], + "match": "0xa000202f", + "mask": "0xf800707f" + }, + "amominu_w": { + "encoding": "11000------------010-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv_a" + ], + "match": "0xc000202f", + "mask": "0xf800707f" + }, + "amomaxu_w": { + "encoding": "11100------------010-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv_a" + ], + "match": "0xe000202f", + "mask": "0xf800707f" + }, + "sha512sum0": { + "encoding": "000100000100-----001-----0010011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv64_zknh", + "rv64_zkn", + "rv64_zk" + ], + "match": "0x10401013", + "mask": "0xfff0707f" + }, + "sha512sum1": { + "encoding": "000100000101-----001-----0010011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv64_zknh", + "rv64_zkn", + "rv64_zk" + ], + "match": "0x10501013", + "mask": "0xfff0707f" + }, + "sha512sig0": { + "encoding": "000100000110-----001-----0010011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv64_zknh", + "rv64_zkn", + "rv64_zk" + ], + "match": "0x10601013", + "mask": "0xfff0707f" + }, + "sha512sig1": { + "encoding": "000100000111-----001-----0010011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv64_zknh", + "rv64_zkn", + "rv64_zk" + ], + "match": "0x10701013", + "mask": "0xfff0707f" + }, + "aes64esm": { + "encoding": "0011011----------000-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv64_zkne", + "rv64_zkn", + "rv64_zk" + ], + "match": "0x36000033", + "mask": "0xfe00707f" + }, + "aes64es": { + "encoding": "0011001----------000-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv64_zkne", + "rv64_zkn", + "rv64_zk" + ], + "match": "0x32000033", + "mask": "0xfe00707f" + }, + "aes64dsm": { + "encoding": "0011111----------000-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv64_zknd", + "rv64_zkn", + "rv64_zk" + ], + "match": "0x3e000033", + "mask": "0xfe00707f" + }, + "aes64ds": { + "encoding": "0011101----------000-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv64_zknd", + "rv64_zkn", + "rv64_zk" + ], + "match": "0x3a000033", + "mask": "0xfe00707f" + }, + "aes64ks1i": { + "encoding": "00110001---------001-----0010011", + "variable_fields": [ + "rd", + "rs1", + "rnum" + ], + "extension": [ + "rv64_zknd", + "rv64_zkne", + "rv64_zkn", + "rv64_zk" + ], + "match": "0x31001013", + "mask": "0xff00707f" + }, + "aes64im": { + "encoding": "001100000000-----001-----0010011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv64_zknd", + "rv64_zkn", + "rv64_zk" + ], + "match": "0x30001013", + "mask": "0xfff0707f" + }, + "aes64ks2": { + "encoding": "0111111----------000-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv64_zknd", + "rv64_zkne", + "rv64_zkn", + "rv64_zk" + ], + "match": "0x7e000033", + "mask": "0xfe00707f" + }, + "fcvt_l_h": { + "encoding": "110001000010-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv64_zfh" + ], + "match": "0xc4200053", + "mask": "0xfff0007f" + }, + "fcvt_lu_h": { + "encoding": "110001000011-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv64_zfh" + ], + "match": "0xc4300053", + "mask": "0xfff0007f" + }, + "fcvt_h_l": { + "encoding": "110101000010-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv64_zfh" + ], + "match": "0xd4200053", + "mask": "0xfff0007f" + }, + "fcvt_h_lu": { + "encoding": "110101000011-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv64_zfh" + ], + "match": "0xd4300053", + "mask": "0xfff0007f" + }, + "c_zext_w": { + "encoding": "----------------100111---1110001", + "variable_fields": [ + "rd_rs1_p" + ], + "extension": [ + "rv64_zcb" + ], + "match": "0x9c71", + "mask": "0xfc7f" + }, + "bclri": { + "encoding": "010010-----------001-----0010011", + "variable_fields": [ + "rd", + "rs1", + "shamtd" + ], + "extension": [ + "rv64_zbs" + ], + "match": "0x48001013", + "mask": "0xfc00707f" + }, + "bexti": { + "encoding": "010010-----------101-----0010011", + "variable_fields": [ + "rd", + "rs1", + "shamtd" + ], + "extension": [ + "rv64_zbs" + ], + "match": "0x48005013", + "mask": "0xfc00707f" + }, + "binvi": { + "encoding": "011010-----------001-----0010011", + "variable_fields": [ + "rd", + "rs1", + "shamtd" + ], + "extension": [ + "rv64_zbs" + ], + "match": "0x68001013", + "mask": "0xfc00707f" + }, + "bseti": { + "encoding": "001010-----------001-----0010011", + "variable_fields": [ + "rd", + "rs1", + "shamtd" + ], + "extension": [ + "rv64_zbs" + ], + "match": "0x28001013", + "mask": "0xfc00707f" + }, + "packw": { + "encoding": "0000100----------100-----0111011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv64_zbkb", + "rv64_zks", + "rv64_zkn", + "rv64_zk" + ], + "match": "0x800403b", + "mask": "0xfe00707f" + }, + "clzw": { + "encoding": "011000000000-----001-----0011011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv64_zbb" + ], + "match": "0x6000101b", + "mask": "0xfff0707f" + }, + "ctzw": { + "encoding": "011000000001-----001-----0011011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv64_zbb" + ], + "match": "0x6010101b", + "mask": "0xfff0707f" + }, + "cpopw": { + "encoding": "011000000010-----001-----0011011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv64_zbb" + ], + "match": "0x6020101b", + "mask": "0xfff0707f" + }, + "rolw": { + "encoding": "0110000----------001-----0111011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv64_zbb", + "rv64_zks", + "rv64_zkn", + "rv64_zk", + "rv64_zbkb" + ], + "match": "0x6000103b", + "mask": "0xfe00707f" + }, + "rorw": { + "encoding": "0110000----------101-----0111011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv64_zbb", + "rv64_zks", + "rv64_zkn", + "rv64_zk", + "rv64_zbkb" + ], + "match": "0x6000503b", + "mask": "0xfe00707f" + }, + "roriw": { + "encoding": "0110000----------101-----0011011", + "variable_fields": [ + "rd", + "rs1", + "shamtw" + ], + "extension": [ + "rv64_zbb", + "rv64_zks", + "rv64_zkn", + "rv64_zk", + "rv64_zbkb" + ], + "match": "0x6000501b", + "mask": "0xfe00707f" + }, + "rori": { + "encoding": "011000-----------101-----0010011", + "variable_fields": [ + "rd", + "rs1", + "shamtd" + ], + "extension": [ + "rv64_zbb", + "rv64_zks", + "rv64_zkn", + "rv64_zk", + "rv64_zbkb" + ], + "match": "0x60005013", + "mask": "0xfc00707f" + }, + "add_uw": { + "encoding": "0000100----------000-----0111011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv64_zba" + ], + "match": "0x800003b", + "mask": "0xfe00707f" + }, + "sh1add_uw": { + "encoding": "0010000----------010-----0111011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv64_zba" + ], + "match": "0x2000203b", + "mask": "0xfe00707f" + }, + "sh2add_uw": { + "encoding": "0010000----------100-----0111011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv64_zba" + ], + "match": "0x2000403b", + "mask": "0xfe00707f" + }, + "sh3add_uw": { + "encoding": "0010000----------110-----0111011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv64_zba" + ], + "match": "0x2000603b", + "mask": "0xfe00707f" + }, + "slli_uw": { + "encoding": "000010-----------001-----0011011", + "variable_fields": [ + "rd", + "rs1", + "shamtd" + ], + "extension": [ + "rv64_zba" + ], + "match": "0x800101b", + "mask": "0xfc00707f" + }, + "amocas_q": { + "encoding": "00101------------100-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv64_zacas" + ], + "match": "0x2800402f", + "mask": "0xf800707f" + }, + "fmvh_x_q": { + "encoding": "111001100001-----000-----1010011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv64_q_zfa" + ], + "match": "0xe6100053", + "mask": "0xfff0707f" + }, + "fmvp_q_x": { + "encoding": "1011011----------000-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv64_q_zfa" + ], + "match": "0xb6000053", + "mask": "0xfe00707f" + }, + "fcvt_l_q": { + "encoding": "110001100010-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv64_q" + ], + "match": "0xc6200053", + "mask": "0xfff0007f" + }, + "fcvt_lu_q": { + "encoding": "110001100011-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv64_q" + ], + "match": "0xc6300053", + "mask": "0xfff0007f" + }, + "fcvt_q_l": { + "encoding": "110101100010-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv64_q" + ], + "match": "0xd6200053", + "mask": "0xfff0007f" + }, + "fcvt_q_lu": { + "encoding": "110101100011-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv64_q" + ], + "match": "0xd6300053", + "mask": "0xfff0007f" + }, + "mulw": { + "encoding": "0000001----------000-----0111011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv64_m" + ], + "match": "0x200003b", + "mask": "0xfe00707f" + }, + "divw": { + "encoding": "0000001----------100-----0111011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv64_m" + ], + "match": "0x200403b", + "mask": "0xfe00707f" + }, + "divuw": { + "encoding": "0000001----------101-----0111011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv64_m" + ], + "match": "0x200503b", + "mask": "0xfe00707f" + }, + "remw": { + "encoding": "0000001----------110-----0111011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv64_m" + ], + "match": "0x200603b", + "mask": "0xfe00707f" + }, + "remuw": { + "encoding": "0000001----------111-----0111011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv64_m" + ], + "match": "0x200703b", + "mask": "0xfe00707f" + }, + "lwu": { + "encoding": "-----------------110-----0000011", + "variable_fields": [ + "rd", + "rs1", + "imm12" + ], + "extension": [ + "rv64_i" + ], + "match": "0x6003", + "mask": "0x707f" + }, + "ld": { + "encoding": "-----------------011-----0000011", + "variable_fields": [ + "rd", + "rs1", + "imm12" + ], + "extension": [ + "rv64_i" + ], + "match": "0x3003", + "mask": "0x707f" + }, + "sd": { + "encoding": "-----------------011-----0100011", + "variable_fields": [ + "imm12hi", + "rs1", + "rs2", + "imm12lo" + ], + "extension": [ + "rv64_i" + ], + "match": "0x3023", + "mask": "0x707f" + }, + "slli": { + "encoding": "000000-----------001-----0010011", + "variable_fields": [ + "rd", + "rs1", + "shamtd" + ], + "extension": [ + "rv64_i" + ], + "match": "0x1013", + "mask": "0xfc00707f" + }, + "srli": { + "encoding": "000000-----------101-----0010011", + "variable_fields": [ + "rd", + "rs1", + "shamtd" + ], + "extension": [ + "rv64_i" + ], + "match": "0x5013", + "mask": "0xfc00707f" + }, + "srai": { + "encoding": "010000-----------101-----0010011", + "variable_fields": [ + "rd", + "rs1", + "shamtd" + ], + "extension": [ + "rv64_i" + ], + "match": "0x40005013", + "mask": "0xfc00707f" + }, + "addiw": { + "encoding": "-----------------000-----0011011", + "variable_fields": [ + "rd", + "rs1", + "imm12" + ], + "extension": [ + "rv64_i" + ], + "match": "0x1b", + "mask": "0x707f" + }, + "slliw": { + "encoding": "0000000----------001-----0011011", + "variable_fields": [ + "rd", + "rs1", + "shamtw" + ], + "extension": [ + "rv64_i" + ], + "match": "0x101b", + "mask": "0xfe00707f" + }, + "srliw": { + "encoding": "0000000----------101-----0011011", + "variable_fields": [ + "rd", + "rs1", + "shamtw" + ], + "extension": [ + "rv64_i" + ], + "match": "0x501b", + "mask": "0xfe00707f" + }, + "sraiw": { + "encoding": "0100000----------101-----0011011", + "variable_fields": [ + "rd", + "rs1", + "shamtw" + ], + "extension": [ + "rv64_i" + ], + "match": "0x4000501b", + "mask": "0xfe00707f" + }, + "addw": { + "encoding": "0000000----------000-----0111011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv64_i" + ], + "match": "0x3b", + "mask": "0xfe00707f" + }, + "subw": { + "encoding": "0100000----------000-----0111011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv64_i" + ], + "match": "0x4000003b", + "mask": "0xfe00707f" + }, + "sllw": { + "encoding": "0000000----------001-----0111011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv64_i" + ], + "match": "0x103b", + "mask": "0xfe00707f" + }, + "srlw": { + "encoding": "0000000----------101-----0111011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv64_i" + ], + "match": "0x503b", + "mask": "0xfe00707f" + }, + "sraw": { + "encoding": "0100000----------101-----0111011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv64_i" + ], + "match": "0x4000503b", + "mask": "0xfe00707f" + }, + "hlv_wu": { + "encoding": "011010000001-----100-----1110011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv64_h" + ], + "match": "0x68104073", + "mask": "0xfff0707f" + }, + "hlv_d": { + "encoding": "011011000000-----100-----1110011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv64_h" + ], + "match": "0x6c004073", + "mask": "0xfff0707f" + }, + "hsv_d": { + "encoding": "0110111----------100000001110011", + "variable_fields": [ + "rs1", + "rs2" + ], + "extension": [ + "rv64_h" + ], + "match": "0x6e004073", + "mask": "0xfe007fff" + }, + "fcvt_l_s": { + "encoding": "110000000010-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv64_f" + ], + "match": "0xc0200053", + "mask": "0xfff0007f" + }, + "fcvt_lu_s": { + "encoding": "110000000011-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv64_f" + ], + "match": "0xc0300053", + "mask": "0xfff0007f" + }, + "fcvt_s_l": { + "encoding": "110100000010-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv64_f" + ], + "match": "0xd0200053", + "mask": "0xfff0007f" + }, + "fcvt_s_lu": { + "encoding": "110100000011-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv64_f" + ], + "match": "0xd0300053", + "mask": "0xfff0007f" + }, + "fcvt_l_d": { + "encoding": "110000100010-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv64_d" + ], + "match": "0xc2200053", + "mask": "0xfff0007f" + }, + "fcvt_lu_d": { + "encoding": "110000100011-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv64_d" + ], + "match": "0xc2300053", + "mask": "0xfff0007f" + }, + "fmv_x_d": { + "encoding": "111000100000-----000-----1010011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv64_d" + ], + "match": "0xe2000053", + "mask": "0xfff0707f" + }, + "fcvt_d_l": { + "encoding": "110100100010-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv64_d" + ], + "match": "0xd2200053", + "mask": "0xfff0007f" + }, + "fcvt_d_lu": { + "encoding": "110100100011-------------1010011", + "variable_fields": [ + "rd", + "rs1", + "rm" + ], + "extension": [ + "rv64_d" + ], + "match": "0xd2300053", + "mask": "0xfff0007f" + }, + "fmv_d_x": { + "encoding": "111100100000-----000-----1010011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv64_d" + ], + "match": "0xf2000053", + "mask": "0xfff0707f" + }, + "c_ld": { + "encoding": "----------------011-----------00", + "variable_fields": [ + "rd_p", + "rs1_p", + "c_uimm8lo", + "c_uimm8hi" + ], + "extension": [ + "rv64_c" + ], + "match": "0x6000", + "mask": "0xe003" + }, + "c_sd": { + "encoding": "----------------111-----------00", + "variable_fields": [ + "rs1_p", + "rs2_p", + "c_uimm8hi", + "c_uimm8lo" + ], + "extension": [ + "rv64_c" + ], + "match": "0xe000", + "mask": "0xe003" + }, + "c_addiw": { + "encoding": "----------------001-----------01", + "variable_fields": [ + "rd_rs1_n0", + "c_imm6lo", + "c_imm6hi" + ], + "extension": [ + "rv64_c" + ], + "match": "0x2001", + "mask": "0xe003" + }, + "c_srli": { + "encoding": "----------------100-00--------01", + "variable_fields": [ + "rd_rs1_p", + "c_nzuimm6lo", + "c_nzuimm6hi" + ], + "extension": [ + "rv64_c" + ], + "match": "0x8001", + "mask": "0xec03" + }, + "c_srai": { + "encoding": "----------------100-01--------01", + "variable_fields": [ + "rd_rs1_p", + "c_nzuimm6lo", + "c_nzuimm6hi" + ], + "extension": [ + "rv64_c" + ], + "match": "0x8401", + "mask": "0xec03" + }, + "c_subw": { + "encoding": "----------------100111---00---01", + "variable_fields": [ + "rd_rs1_p", + "rs2_p" + ], + "extension": [ + "rv64_c" + ], + "match": "0x9c01", + "mask": "0xfc63" + }, + "c_addw": { + "encoding": "----------------100111---01---01", + "variable_fields": [ + "rd_rs1_p", + "rs2_p" + ], + "extension": [ + "rv64_c" + ], + "match": "0x9c21", + "mask": "0xfc63" + }, + "c_slli": { + "encoding": "----------------000-----------10", + "variable_fields": [ + "rd_rs1_n0", + "c_nzuimm6hi", + "c_nzuimm6lo" + ], + "extension": [ + "rv64_c" + ], + "match": "0x2", + "mask": "0xe003" + }, + "c_ldsp": { + "encoding": "----------------011-----------10", + "variable_fields": [ + "rd_n0", + "c_uimm9sphi", + "c_uimm9splo" + ], + "extension": [ + "rv64_c" + ], + "match": "0x6002", + "mask": "0xe003" + }, + "c_sdsp": { + "encoding": "----------------111-----------10", + "variable_fields": [ + "c_rs2", + "c_uimm9sp_s" + ], + "extension": [ + "rv64_c" + ], + "match": "0xe002", + "mask": "0xe003" + }, + "lr_d": { + "encoding": "00010--00000-----011-----0101111", + "variable_fields": [ + "rd", + "rs1", + "aq", + "rl" + ], + "extension": [ + "rv64_a" + ], + "match": "0x1000302f", + "mask": "0xf9f0707f" + }, + "sc_d": { + "encoding": "00011------------011-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv64_a" + ], + "match": "0x1800302f", + "mask": "0xf800707f" + }, + "amoswap_d": { + "encoding": "00001------------011-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv64_a" + ], + "match": "0x800302f", + "mask": "0xf800707f" + }, + "amoadd_d": { + "encoding": "00000------------011-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv64_a" + ], + "match": "0x302f", + "mask": "0xf800707f" + }, + "amoxor_d": { + "encoding": "00100------------011-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv64_a" + ], + "match": "0x2000302f", + "mask": "0xf800707f" + }, + "amoand_d": { + "encoding": "01100------------011-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv64_a" + ], + "match": "0x6000302f", + "mask": "0xf800707f" + }, + "amoor_d": { + "encoding": "01000------------011-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv64_a" + ], + "match": "0x4000302f", + "mask": "0xf800707f" + }, + "amomin_d": { + "encoding": "10000------------011-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv64_a" + ], + "match": "0x8000302f", + "mask": "0xf800707f" + }, + "amomax_d": { + "encoding": "10100------------011-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv64_a" + ], + "match": "0xa000302f", + "mask": "0xf800707f" + }, + "amominu_d": { + "encoding": "11000------------011-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv64_a" + ], + "match": "0xc000302f", + "mask": "0xf800707f" + }, + "amomaxu_d": { + "encoding": "11100------------011-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "aq", + "rl" + ], + "extension": [ + "rv64_a" + ], + "match": "0xe000302f", + "mask": "0xf800707f" + }, + "sha512sum0r": { + "encoding": "0101000----------000-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv32_zknh", + "rv32_zkn", + "rv32_zk" + ], + "match": "0x50000033", + "mask": "0xfe00707f" + }, + "sha512sum1r": { + "encoding": "0101001----------000-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv32_zknh", + "rv32_zkn", + "rv32_zk" + ], + "match": "0x52000033", + "mask": "0xfe00707f" + }, + "sha512sig0l": { + "encoding": "0101010----------000-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv32_zknh", + "rv32_zkn", + "rv32_zk" + ], + "match": "0x54000033", + "mask": "0xfe00707f" + }, + "sha512sig0h": { + "encoding": "0101110----------000-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv32_zknh", + "rv32_zkn", + "rv32_zk" + ], + "match": "0x5c000033", + "mask": "0xfe00707f" + }, + "sha512sig1l": { + "encoding": "0101011----------000-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv32_zknh", + "rv32_zkn", + "rv32_zk" + ], + "match": "0x56000033", + "mask": "0xfe00707f" + }, + "sha512sig1h": { + "encoding": "0101111----------000-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv32_zknh", + "rv32_zkn", + "rv32_zk" + ], + "match": "0x5e000033", + "mask": "0xfe00707f" + }, + "aes32esmi": { + "encoding": "--10011----------000-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "bs" + ], + "extension": [ + "rv32_zkne", + "rv32_zkn", + "rv32_zk" + ], + "match": "0x26000033", + "mask": "0x3e00707f" + }, + "aes32esi": { + "encoding": "--10001----------000-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "bs" + ], + "extension": [ + "rv32_zkne", + "rv32_zkn", + "rv32_zk" + ], + "match": "0x22000033", + "mask": "0x3e00707f" + }, + "aes32dsmi": { + "encoding": "--10111----------000-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "bs" + ], + "extension": [ + "rv32_zknd", + "rv32_zkn", + "rv32_zk" + ], + "match": "0x2e000033", + "mask": "0x3e00707f" + }, + "aes32dsi": { + "encoding": "--10101----------000-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2", + "bs" + ], + "extension": [ + "rv32_zknd", + "rv32_zkn", + "rv32_zk" + ], + "match": "0x2a000033", + "mask": "0x3e00707f" + }, + "fmvh_x_d": { + "encoding": "111000100001-----000-----1010011", + "variable_fields": [ + "rd", + "rs1" + ], + "extension": [ + "rv32_d_zfa" + ], + "match": "0xe2100053", + "mask": "0xfff0707f" + }, + "fmvp_d_x": { + "encoding": "1011001----------000-----1010011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv32_d_zfa" + ], + "match": "0xb2000053", + "mask": "0xfe00707f" + }, + "c_flw": { + "encoding": "----------------011-----------00", + "variable_fields": [ + "rd_p", + "rs1_p", + "c_uimm7lo", + "c_uimm7hi" + ], + "extension": [ + "rv32_c_f" + ], + "match": "0x6000", + "mask": "0xe003" + }, + "c_fsw": { + "encoding": "----------------111-----------00", + "variable_fields": [ + "rs1_p", + "rs2_p", + "c_uimm7lo", + "c_uimm7hi" + ], + "extension": [ + "rv32_c_f" + ], + "match": "0xe000", + "mask": "0xe003" + }, + "c_flwsp": { + "encoding": "----------------011-----------10", + "variable_fields": [ + "rd", + "c_uimm8sphi", + "c_uimm8splo" + ], + "extension": [ + "rv32_c_f" + ], + "match": "0x6002", + "mask": "0xe003" + }, + "c_fswsp": { + "encoding": "----------------111-----------10", + "variable_fields": [ + "c_rs2", + "c_uimm8sp_s" + ], + "extension": [ + "rv32_c_f" + ], + "match": "0xe002", + "mask": "0xe003" + }, + "c_jal": { + "encoding": "----------------001-----------01", + "variable_fields": [ + "c_imm12" + ], + "extension": [ + "rv32_c" + ], + "match": "0x2001", + "mask": "0xe003" + }, + "xperm16": { + "encoding": "0010100----------110-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv_zbp" + ], + "match": "0x28006033", + "mask": "0xfe00707f" + }, + "lb_aq": { + "encoding": "001101-00000-----000-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rl" + ], + "extension": [ + "rv_zalasr" + ], + "match": "0x3400002f", + "mask": "0xfdf0707f" + }, + "lh_aq": { + "encoding": "001101-00000-----001-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rl" + ], + "extension": [ + "rv_zalasr" + ], + "match": "0x3400102f", + "mask": "0xfdf0707f" + }, + "lw_aq": { + "encoding": "001101-00000-----010-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rl" + ], + "extension": [ + "rv_zalasr" + ], + "match": "0x3400202f", + "mask": "0xfdf0707f" + }, + "ld_aq": { + "encoding": "001101-00000-----011-----0101111", + "variable_fields": [ + "rd", + "rs1", + "rl" + ], + "extension": [ + "rv_zalasr" + ], + "match": "0x3400302f", + "mask": "0xfdf0707f" + }, + "sb_rl": { + "encoding": "00111-1----------000000000101111", + "variable_fields": [ + "rs1", + "rs2", + "aq" + ], + "extension": [ + "rv_zalasr" + ], + "match": "0x3a00002f", + "mask": "0xfa007fff" + }, + "sh_rl": { + "encoding": "00111-1----------001000000101111", + "variable_fields": [ + "rs1", + "rs2", + "aq" + ], + "extension": [ + "rv_zalasr" + ], + "match": "0x3a00102f", + "mask": "0xfa007fff" + }, + "sw_rl": { + "encoding": "00111-1----------010000000101111", + "variable_fields": [ + "rs1", + "rs2", + "aq" + ], + "extension": [ + "rv_zalasr" + ], + "match": "0x3a00202f", + "mask": "0xfa007fff" + }, + "sd_rl": { + "encoding": "00111-1----------011000000101111", + "variable_fields": [ + "rs1", + "rs2", + "aq" + ], + "extension": [ + "rv_zalasr" + ], + "match": "0x3a00302f", + "mask": "0xfa007fff" + }, + "grevi": { + "encoding": "011010-----------101-----0010011", + "variable_fields": [ + "rd", + "rs1", + "shamtd" + ], + "extension": [ + "rv64_zbp" + ], + "match": "0x68005013", + "mask": "0xfc00707f" + }, + "gorci": { + "encoding": "001010-----------101-----0010011", + "variable_fields": [ + "rd", + "rs1", + "shamtd" + ], + "extension": [ + "rv64_zbp" + ], + "match": "0x28005013", + "mask": "0xfc00707f" + }, + "shfli": { + "encoding": "0000100----------001-----0010011", + "variable_fields": [ + "rd", + "rs1", + "shamtw" + ], + "extension": [ + "rv64_zbp" + ], + "match": "0x8001013", + "mask": "0xfe00707f" + }, + "unshfli": { + "encoding": "0000100----------101-----0010011", + "variable_fields": [ + "rd", + "rs1", + "shamtw" + ], + "extension": [ + "rv64_zbp" + ], + "match": "0x8005013", + "mask": "0xfe00707f" + }, + "xperm32": { + "encoding": "0010100----------000-----0110011", + "variable_fields": [ + "rd", + "rs1", + "rs2" + ], + "extension": [ + "rv64_zbp" + ], + "match": "0x28000033", + "mask": "0xfe00707f" + } +} \ No newline at end of file diff --git a/opcodes_maker/sorter.py b/opcodes_maker/sorter.py new file mode 100644 index 000000000..f5da4993d --- /dev/null +++ b/opcodes_maker/sorter.py @@ -0,0 +1,28 @@ +import json + +def sort_instr_json(dir_name, outname): + with open(dir_name, 'r') as file: + data = json.load(file) + + sorted_data = {} + for key in sorted(data): + entry = data[key] + if "variable_fields" in entry: + entry["variable_fields"] = sorted(entry["variable_fields"]) + if "extension" in entry: + entry["extension"] = sorted(entry["extension"]) + + # Add the processed entry to the sorted data + sorted_data[key] = entry + + with open(outname, 'w') as file: + json.dump(sorted_data, file, indent=4) + + print(json.dumps(sorted_data, indent=4)) + +def main(): + sort_instr_json("data.json", "udb_sorted_data.json") + sort_instr_json("instr_dict.json", "opcodes_sorted_data.json") + + +main() From 4bfc6b60479f183aefb2fc7a9241e6ee1fe16e9f Mon Sep 17 00:00:00 2001 From: Afonso Oliveira Date: Thu, 30 Jan 2025 13:07:00 +0000 Subject: [PATCH 02/33] Integrate Brian branch with UDB in ext/ folder. Merge the output of the UDB with riscv-opcodes generation process to generate riscv-opcodes outputs. Signed-off-by: Afonso Oliveira --- ext/opcodes_maker/Makefile | 61 ++++++++++ ext/opcodes_maker/generator.py | 186 ++++++++++++++++++++++++++++++ ext/opcodes_maker/sorter.py | 30 +++++ ext/opcodes_maker/yaml_to_json.py | 178 ++++++++++++++++++++++++++++ 4 files changed, 455 insertions(+) create mode 100644 ext/opcodes_maker/Makefile create mode 100644 ext/opcodes_maker/generator.py create mode 100644 ext/opcodes_maker/sorter.py create mode 100644 ext/opcodes_maker/yaml_to_json.py diff --git a/ext/opcodes_maker/Makefile b/ext/opcodes_maker/Makefile new file mode 100644 index 000000000..205e43f3e --- /dev/null +++ b/ext/opcodes_maker/Makefile @@ -0,0 +1,61 @@ +# Directories +YAML_DIR ?= ../../arch/inst +OPCODES_DIR := ../riscv-opcodes +OUTPUT_DIR := output + +# Python scripts +YAML_TO_JSON := yaml_to_json.py +GENERATOR := generator.py + +# Output files +INSTR_DICT := $(OUTPUT_DIR)/instr_dict.json + +# Generated output files +C_OUT := $(OUTPUT_DIR)/encoding.out.h +CHISEL_OUT := $(OUTPUT_DIR)/inst.chisel +SPINALHDL_OUT := $(OUTPUT_DIR)/inst.spinalhdl +SVERILOG_OUT := $(OUTPUT_DIR)/inst.sverilog +RUST_OUT := $(OUTPUT_DIR)/inst.rs +GO_OUT := $(OUTPUT_DIR)/inst.go +LATEX_OUT := $(OUTPUT_DIR)/instr-table.tex +LATEX_PRIV_OUT := $(OUTPUT_DIR)/priv-instr-table.tex +PROCESSED_DICT := $(OUTPUT_DIR)/processed_instr_dict.json + +# Check for required files +REQUIRED_FILES := $(YAML_TO_JSON) $(GENERATOR) +$(foreach file,$(REQUIRED_FILES),\ + $(if $(wildcard $(file)),,$(error Required file $(file) not found))) + +# Default target +all: generate + +# Create output directory +$(OUTPUT_DIR): + mkdir -p $(OUTPUT_DIR) + +# Convert YAML to JSON +$(INSTR_DICT): $(YAML_TO_JSON) | $(OUTPUT_DIR) + python3 $(YAML_TO_JSON) $(YAML_DIR) $(OUTPUT_DIR) + +# Generate all outputs +generate: $(INSTR_DICT) + python3 $(GENERATOR) $(INSTR_DICT) -c -chisel -rust -go -latex + mv encoding.out.h inst.chisel inst.spinalhdl inst.sverilog inst.rs inst.go \ + instr-table.tex priv-instr-table.tex processed_instr_dict.json \ + $(OUTPUT_DIR)/ 2>/dev/null || true + +# Clean generated files +clean: + rm -rf $(OUTPUT_DIR) + +# Help target +help: + @echo "Available targets:" + @echo " all (default) - Run complete pipeline: YAML -> JSON -> generate" + @echo " generate - Generate all output formats from JSON" + @echo " clean - Remove all generated files" + @echo "" + @echo "All output files will be placed in the '$(OUTPUT_DIR)' directory" + @echo "Use YAML_DIR=/path/to/yaml to specify custom YAML input directory" + +.PHONY: all generate clean help diff --git a/ext/opcodes_maker/generator.py b/ext/opcodes_maker/generator.py new file mode 100644 index 000000000..48c3bd210 --- /dev/null +++ b/ext/opcodes_maker/generator.py @@ -0,0 +1,186 @@ +#!/usr/bin/env python3 + +import argparse +import json +import logging +import pprint +import os +import sys +import shutil +from contextlib import contextmanager +from pathlib import Path +from typing import Dict, List, Any + +# Add riscv-opcodes directory to Python path +SCRIPT_DIR = os.path.dirname(os.path.abspath(__file__)) +RISCV_OPCODES_DIR = os.path.join(SCRIPT_DIR, "..", "riscv-opcodes") +sys.path.insert(0, RISCV_OPCODES_DIR) + + +@contextmanager +def working_directory(path): + """Context manager for changing the current working directory""" + prev_cwd = os.getcwd() + os.chdir(path) + try: + yield prev_cwd + finally: + os.chdir(prev_cwd) + + +# Change to riscv-opcodes directory when importing to ensure relative paths work +with working_directory(RISCV_OPCODES_DIR): + from c_utils import make_c + from chisel_utils import make_chisel + from constants import emitted_pseudo_ops + from go_utils import make_go + from latex_utils import make_latex_table, make_priv_latex_table + from rust_utils import make_rust + from sverilog_utils import make_sverilog + +LOG_FORMAT = "%(levelname)s:: %(message)s" +LOG_LEVEL = logging.INFO + +pretty_printer = pprint.PrettyPrinter(indent=2) +logging.basicConfig(level=LOG_LEVEL, format=LOG_FORMAT) + + +def load_instruction_dict(json_path: str) -> Dict[str, Any]: + """ + Load instruction dictionary from a JSON file. + """ + try: + with open(json_path, encoding="utf-8") as f: + return json.load(f) + except FileNotFoundError: + logging.error(f"Input JSON file not found: {json_path}") + raise + except json.JSONDecodeError: + logging.error(f"Invalid JSON format in file: {json_path}") + raise + + +def move_file(src: str, dest_dir: str): + """ + Move a file to the destination directory if it exists. + """ + if os.path.exists(src): + dest = os.path.join(dest_dir, os.path.basename(src)) + shutil.move(src, dest) + + +def generate_outputs( + instr_dict: Dict[str, Any], + include_pseudo: bool, + c: bool, + chisel: bool, + spinalhdl: bool, + sverilog: bool, + rust: bool, + go: bool, + latex: bool, +): + """ + Generate output files based on the instruction dictionary. + """ + # Sort the dictionary for consistent output + instr_dict = dict(sorted(instr_dict.items())) + + # Save the processed dictionary in current directory + with open("processed_instr_dict.json", "w", encoding="utf-8") as outfile: + json.dump(instr_dict, outfile, indent=2) + + # Generate files in riscv-opcodes directory and move them to current directory + with working_directory(RISCV_OPCODES_DIR) as orig_dir: + if c: + # For C output, filter pseudo-ops if needed + if not include_pseudo: + c_dict = { + k: v for k, v in instr_dict.items() if k not in emitted_pseudo_ops + } + else: + c_dict = instr_dict + make_c(c_dict) + move_file("encoding.out.h", orig_dir) + logging.info("encoding.out.h generated successfully") + + if chisel: + make_chisel(instr_dict) + move_file("inst.chisel", orig_dir) + logging.info("inst.chisel generated successfully") + + if spinalhdl: + make_chisel(instr_dict, True) + move_file("inst.spinalhdl", orig_dir) + logging.info("inst.spinalhdl generated successfully") + + if sverilog: + make_sverilog(instr_dict) + move_file("inst.sverilog", orig_dir) + logging.info("inst.sverilog generated successfully") + + if rust: + make_rust(instr_dict) + move_file("inst.rs", orig_dir) + logging.info("inst.rs generated successfully") + + if go: + make_go(instr_dict) + move_file("inst.go", orig_dir) + logging.info("inst.go generated successfully") + + if latex: + make_latex_table() + make_priv_latex_table() + move_file("instr-table.tex", orig_dir) + move_file("priv-instr-table.tex", orig_dir) + logging.info("LaTeX files generated successfully") + + +def main(): + parser = argparse.ArgumentParser( + description="Generate RISC-V constants from JSON input" + ) + parser.add_argument( + "input_json", help="Path to JSON file containing instruction definitions" + ) + parser.add_argument( + "-pseudo", action="store_true", help="Include pseudo-instructions" + ) + parser.add_argument("-c", action="store_true", help="Generate output for C") + parser.add_argument( + "-chisel", action="store_true", help="Generate output for Chisel" + ) + parser.add_argument( + "-spinalhdl", action="store_true", help="Generate output for SpinalHDL" + ) + parser.add_argument( + "-sverilog", action="store_true", help="Generate output for SystemVerilog" + ) + parser.add_argument("-rust", action="store_true", help="Generate output for Rust") + parser.add_argument("-go", action="store_true", help="Generate output for Go") + parser.add_argument("-latex", action="store_true", help="Generate output for Latex") + + args = parser.parse_args() + + # Load instruction dictionary from JSON + instr_dict = load_instruction_dict(args.input_json) + + print(f"Loaded instruction dictionary from: {args.input_json}") + + # Generate outputs based on the loaded dictionary + generate_outputs( + instr_dict, + args.pseudo, + args.c, + args.chisel, + args.spinalhdl, + args.sverilog, + args.rust, + args.go, + args.latex, + ) + + +if __name__ == "__main__": + main() diff --git a/ext/opcodes_maker/sorter.py b/ext/opcodes_maker/sorter.py new file mode 100644 index 000000000..b2b07deac --- /dev/null +++ b/ext/opcodes_maker/sorter.py @@ -0,0 +1,30 @@ +import json + + +def sort_instr_json(dir_name, outname): + with open(dir_name) as file: + data = json.load(file) + + sorted_data = {} + for key in sorted(data): + entry = data[key] + if "variable_fields" in entry: + entry["variable_fields"] = sorted(entry["variable_fields"]) + if "extension" in entry: + entry["extension"] = sorted(entry["extension"]) + + # Add the processed entry to the sorted data + sorted_data[key] = entry + + with open(outname, "w") as file: + json.dump(sorted_data, file, indent=4) + + print(json.dumps(sorted_data, indent=4)) + + +def main(): + sort_instr_json("instr_dict.json", "udb_sorted_data.json") + sort_instr_json("instr_dict.json", "opcodes_sorted_data.json") + + +main() diff --git a/ext/opcodes_maker/yaml_to_json.py b/ext/opcodes_maker/yaml_to_json.py new file mode 100644 index 000000000..2d9c9fbba --- /dev/null +++ b/ext/opcodes_maker/yaml_to_json.py @@ -0,0 +1,178 @@ +from typing import List, Dict +import os +import yaml +import json +import argparse + + +def range_size(range_str: str) -> int: + try: + end, start = map(int, range_str.split("-")) + return abs(end - start) + 1 + except ValueError: + return 0 + + +reg_names = {"qs1", "qs2", "qd", "fs1", "fs2", "fd"} + + +def GetVariables(vars: List[Dict[str, str]]): + var_names = [] + for var in vars: + var_name = var["name"] + if var_name in reg_names: + # Since strings are immutable. + lst_var_name = list(var_name) + lst_var_name[0] = "r" + var_name = "".join(lst_var_name) + elif var_name == "shamt": + size = range_size(var["location"]) + if size == 5: + var_name = "shamtw" + elif size == 6: + var_name = "shamtd" + var_names.append(var_name) + var_names.reverse() + + return var_names + + +def BitStringToHex(bit_str: str) -> str: + new_bit_str = "" + for bit in bit_str: + if bit == "-": + new_bit_str += "0" + else: + new_bit_str += bit + return hex(int(new_bit_str, 2)) + + +def GetMask(bit_str: str) -> str: + mask_str = "" + for bit in bit_str: + if bit == "-": + mask_str += "0" + else: + mask_str += "1" + return hex(int(mask_str, 2)) + + +def GetExtension(ext, base): + prefix = f"rv{base}_" + final_extensions = [] + + if isinstance(ext, str): + final_extensions.append(prefix + ext.lower()) + elif isinstance(ext, dict): + for _, extensions in ext.items(): + for extension in extensions: + final_extensions.append(prefix + extension.lower()) + final_extensions.reverse() + + return final_extensions + + +def find_first_match(data): + if isinstance(data, dict): + for key, value in data.items(): + if key == "match": + return value + elif isinstance(value, (dict, list)): + result = find_first_match(value) + if result is not None: + return result + elif isinstance(data, list): + for item in data: + result = find_first_match(item) + if result is not None: + return result + return "" + + +def GetEncodings(enc: str): + n = len(enc) + if n < 32: + return "-" * (32 - n) + enc + return enc + + +def convert(file_dir: str, json_out): + with open(file_dir) as file: + data = yaml.safe_load(file) + instr_name = data["name"].replace(".", "_") + + print(instr_name) + encodings = data["encoding"] + + # USE RV_64 + rv64_flag = False + if "RV64" in encodings: + encodings = encodings["RV64"] + rv64_flag = True + enc_match = GetEncodings(encodings["match"]) + + var_names = [] + if "variables" in encodings: + var_names = GetVariables(encodings["variables"]) + + extension = [] + prefix = "" + if rv64_flag: + prefix = "64" + if "base" in data: + extension = GetExtension(data["definedBy"], data["base"]) + else: + extension = GetExtension(data["definedBy"], prefix) + + match_hex = BitStringToHex(enc_match) + match_mask = GetMask(enc_match) + + json_out[instr_name] = { + "encoding": enc_match, + "variable_fields": var_names, + "extension": extension, + "match": match_hex, + "mask": match_mask, + } + + +def read_yaml_insts(path: str): + yaml_files = [] + for root, _, files in os.walk(path): + for file in files: + if file.endswith(".yaml") or file.endswith(".yml"): + yaml_files.append(os.path.join(root, file)) + return yaml_files + + +def main(): + parser = argparse.ArgumentParser( + description="Convert YAML instruction files to JSON" + ) + parser.add_argument("input_dir", help="Directory containing YAML instruction files") + parser.add_argument("output_dir", help="Output directory for generated files") + + args = parser.parse_args() + + # Ensure input directory exists + if not os.path.isdir(args.input_dir): + parser.error(f"Input directory does not exist: {args.input_dir}") + + insts = read_yaml_insts(args.input_dir) + if not insts: + parser.error(f"No YAML files found in {args.input_dir}") + + inst_dict = {} + output_file = os.path.join(args.output_dir, "instr_dict.json") + + with open(output_file, "w") as outfile: + for inst_dir in insts: + convert(inst_dir, inst_dict) + json.dump(inst_dict, outfile, indent=4) + + print(f"Successfully processed {len(insts)} YAML files") + print(f"Output written to: {output_file}") + + +if __name__ == "__main__": + main() From 9c0fadceccd2cf0c3c0d9dd2651c2a22e8a5d79e Mon Sep 17 00:00:00 2001 From: Afonso Oliveira Date: Thu, 30 Jan 2025 13:12:11 +0000 Subject: [PATCH 03/33] Add README.md with instruction on how to use this tool. Signed-off-by: Afonso Oliveira --- ext/opcodes_maker/README.md | 89 +++++++++++++++++++++++++++++++++++++ 1 file changed, 89 insertions(+) create mode 100644 ext/opcodes_maker/README.md diff --git a/ext/opcodes_maker/README.md b/ext/opcodes_maker/README.md new file mode 100644 index 000000000..84d5735ae --- /dev/null +++ b/ext/opcodes_maker/README.md @@ -0,0 +1,89 @@ +# RISC-V Instruction Format Generator + +This tool converts RISC-V instruction YAML definitions into various output formats including C headers, Chisel, Rust, Go, and LaTeX documentation. + +## Prerequisites + +- Python 3 +- YAML Python package (`pip install pyyaml`) +- Make + +## Directory Structure + +``` +. +├── yaml_to_json.py # Converts YAML instruction definitions to JSON +├── generator.py # Generates various output formats from JSON +├── output/ # Generated files directory +└── Makefile # Build system configuration +``` + +## Input/Output Format + +### Input +- YAML files containing RISC-V instruction definitions +- Default input directory: `../../arch/inst` +- Can be customized using `YAML_DIR` variable + +### Output +All outputs are generated in the `output` directory: +- `encoding.out.h` - C header definitions +- `inst.chisel` - Chisel implementation +- `inst.spinalhdl` - SpinalHDL implementation +- `inst.sverilog` - SystemVerilog implementation +- `inst.rs` - Rust implementation +- `inst.go` - Go implementation +- `instr-table.tex` - LaTeX instruction table +- `priv-instr-table.tex` - LaTeX privileged instruction table +- `instr_dict.json` - Intermediate JSON representation +- `processed_instr_dict.json` - Final processed JSON + +## Usage + +### Basic Usage +```bash +make # Use default YAML directory +make YAML_DIR=/custom/path # Use custom YAML directory +make clean # Remove all generated files +make help # Show help message +``` + +### Pipeline Steps +1. YAML to JSON conversion (`yaml_to_json.py`) + - Reads YAML instruction definitions + - Creates intermediate JSON representation + +2. Output Generation (`generator.py`) + - Takes JSON input + - Generates all output formats + - Places results in output directory + +### Customization +- Input directory can be changed: + ```bash + make YAML_DIR=/path/to/yaml/files + ``` +- Default paths in Makefile: + ```makefile + YAML_DIR ?= ../../arch/inst + OPCODES_DIR := ../riscv-opcodes + OUTPUT_DIR := output + ``` + +## Error Handling +- Checks for required Python scripts before execution +- Verifies input directory exists +- Creates output directory if missing +- Shows helpful error messages for missing files/directories + +## Cleaning Up +```bash +make clean # Removes all generated files and output directory +``` + +## Dependencies +- Requires access to RISC-V opcodes repository (expected at `../riscv-opcodes`) +- Python scripts use standard libraries plus PyYAML + +## Note +Make sure your input YAML files follow the expected RISC-V instruction definition format. For format details, refer to the RISC-V specification or example YAML files in the arch/inst directory. From ca6ee60fe4dcc35ca6b2bc61506f7bde5f85a301 Mon Sep 17 00:00:00 2001 From: Afonso Oliveira Date: Thu, 30 Jan 2025 13:23:18 +0000 Subject: [PATCH 04/33] Enhance error handling and support for non-default extensions, such as qc_iu Signed-off-by: Afonso Oliveira --- ext/opcodes_maker/yaml_to_json.py | 190 +++++++++++++++++------------- 1 file changed, 110 insertions(+), 80 deletions(-) diff --git a/ext/opcodes_maker/yaml_to_json.py b/ext/opcodes_maker/yaml_to_json.py index 2d9c9fbba..93c55182e 100644 --- a/ext/opcodes_maker/yaml_to_json.py +++ b/ext/opcodes_maker/yaml_to_json.py @@ -1,8 +1,11 @@ -from typing import List, Dict +#!/usr/bin/env python3 + +from typing import List, Dict, Union, Any import os import yaml import json import argparse +import sys def range_size(range_str: str) -> int: @@ -16,7 +19,7 @@ def range_size(range_str: str) -> int: reg_names = {"qs1", "qs2", "qd", "fs1", "fs2", "fd"} -def GetVariables(vars: List[Dict[str, str]]): +def GetVariables(vars: List[Dict[str, str]]) -> List[str]: var_names = [] for var in vars: var_name = var["name"] @@ -33,7 +36,6 @@ def GetVariables(vars: List[Dict[str, str]]): var_name = "shamtd" var_names.append(var_name) var_names.reverse() - return var_names @@ -57,86 +59,105 @@ def GetMask(bit_str: str) -> str: return hex(int(mask_str, 2)) -def GetExtension(ext, base): +def process_extension(ext: Union[str, dict]) -> List[str]: + """Process an extension definition into a list of strings.""" + if isinstance(ext, str): + return [ext.lower()] + elif isinstance(ext, dict): + result = [] + for item in ext.values(): + if isinstance(item, list): + result.extend( + [ + x.lower() if isinstance(x, str) else x["name"].lower() + for x in item + ] + ) + elif isinstance(item, (str, dict)): + if isinstance(item, str): + result.append(item.lower()) + else: + result.append(item["name"].lower()) + return result + return [] + + +def GetExtension(ext: Union[str, dict, list], base: str) -> List[str]: + """Get a list of extensions with proper prefix.""" prefix = f"rv{base}_" final_extensions = [] - if isinstance(ext, str): - final_extensions.append(prefix + ext.lower()) - elif isinstance(ext, dict): - for _, extensions in ext.items(): - for extension in extensions: - final_extensions.append(prefix + extension.lower()) - final_extensions.reverse() - - return final_extensions - - -def find_first_match(data): - if isinstance(data, dict): - for key, value in data.items(): - if key == "match": - return value - elif isinstance(value, (dict, list)): - result = find_first_match(value) - if result is not None: - return result - elif isinstance(data, list): - for item in data: - result = find_first_match(item) - if result is not None: - return result - return "" - - -def GetEncodings(enc: str): + if isinstance(ext, (str, dict)): + extensions = process_extension(ext) + final_extensions.extend(prefix + x for x in extensions) + elif isinstance(ext, list): + for item in ext: + extensions = process_extension(item) + final_extensions.extend(prefix + x for x in extensions) + + # Remove duplicates while preserving order + seen = set() + return [x for x in final_extensions if not (x in seen or seen.add(x))] + + +def GetEncodings(enc: str) -> str: n = len(enc) if n < 32: return "-" * (32 - n) + enc return enc -def convert(file_dir: str, json_out): - with open(file_dir) as file: - data = yaml.safe_load(file) - instr_name = data["name"].replace(".", "_") - - print(instr_name) - encodings = data["encoding"] - - # USE RV_64 - rv64_flag = False - if "RV64" in encodings: - encodings = encodings["RV64"] - rv64_flag = True - enc_match = GetEncodings(encodings["match"]) - - var_names = [] - if "variables" in encodings: - var_names = GetVariables(encodings["variables"]) - - extension = [] - prefix = "" - if rv64_flag: - prefix = "64" - if "base" in data: - extension = GetExtension(data["definedBy"], data["base"]) - else: - extension = GetExtension(data["definedBy"], prefix) - - match_hex = BitStringToHex(enc_match) - match_mask = GetMask(enc_match) - - json_out[instr_name] = { - "encoding": enc_match, - "variable_fields": var_names, - "extension": extension, - "match": match_hex, - "mask": match_mask, - } - - -def read_yaml_insts(path: str): +def convert(file_dir: str, json_out: Dict[str, Any]) -> None: + try: + with open(file_dir) as file: + data = yaml.safe_load(file) + instr_name = data["name"].replace(".", "_") + + print(instr_name) + encodings = data["encoding"] + + # USE RV_64 + rv64_flag = False + if "RV64" in encodings: + encodings = encodings["RV64"] + rv64_flag = True + enc_match = GetEncodings(encodings["match"]) + + var_names = [] + if "variables" in encodings: + var_names = GetVariables(encodings["variables"]) + + extension = [] + prefix = "" + if rv64_flag: + prefix = "64" + try: + if "base" in data: + extension = GetExtension(data["definedBy"], data["base"]) + else: + extension = GetExtension(data["definedBy"], prefix) + except Exception as e: + print( + f"Warning: Error processing extensions for {instr_name}: {str(e)}" + ) + extension = [] + + match_hex = BitStringToHex(enc_match) + match_mask = GetMask(enc_match) + + json_out[instr_name] = { + "encoding": enc_match, + "variable_fields": var_names, + "extension": extension, + "match": match_hex, + "mask": match_mask, + } + except Exception as e: + print(f"Error processing file {file_dir}: {str(e)}") + raise + + +def read_yaml_insts(path: str) -> List[str]: yaml_files = [] for root, _, files in os.walk(path): for file in files: @@ -165,13 +186,22 @@ def main(): inst_dict = {} output_file = os.path.join(args.output_dir, "instr_dict.json") - with open(output_file, "w") as outfile: + try: for inst_dir in insts: - convert(inst_dir, inst_dict) - json.dump(inst_dict, outfile, indent=4) - - print(f"Successfully processed {len(insts)} YAML files") - print(f"Output written to: {output_file}") + try: + convert(inst_dir, inst_dict) + except Exception as e: + print(f"Warning: Failed to process {inst_dir}: {str(e)}") + continue + + with open(output_file, "w") as outfile: + json.dump(inst_dict, outfile, indent=4) + + print(f"Successfully processed {len(insts)} YAML files") + print(f"Output written to: {output_file}") + except Exception as e: + print(f"Error: Failed to process YAML files: {str(e)}") + sys.exit(1) if __name__ == "__main__": From 6fe6eb1c7b19466cd2495a23dc06925fa904094b Mon Sep 17 00:00:00 2001 From: Afonso Oliveira Date: Mon, 3 Feb 2025 12:17:46 +0000 Subject: [PATCH 05/33] Switch directory folder and remove duplicated content Signed-off-by: Afonso Oliveira --- .pre-commit-config.yaml | 0 {ext => backends}/opcodes_maker/Makefile | 0 {ext => backends}/opcodes_maker/README.md | 0 {ext => backends}/opcodes_maker/generator.py | 2 +- {ext => backends}/opcodes_maker/sorter.py | 0 .../opcodes_maker/yaml_to_json.py | 0 opcodes_maker/generate_instr_dict.py | 148 - opcodes_maker/instr_dict.json | 15446 ---------------- opcodes_maker/sorter.py | 28 - 9 files changed, 1 insertion(+), 15623 deletions(-) mode change 100644 => 100755 .pre-commit-config.yaml rename {ext => backends}/opcodes_maker/Makefile (100%) rename {ext => backends}/opcodes_maker/README.md (100%) rename {ext => backends}/opcodes_maker/generator.py (98%) mode change 100644 => 100755 rename {ext => backends}/opcodes_maker/sorter.py (100%) rename {ext => backends}/opcodes_maker/yaml_to_json.py (100%) delete mode 100644 opcodes_maker/generate_instr_dict.py delete mode 100644 opcodes_maker/instr_dict.json delete mode 100644 opcodes_maker/sorter.py diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml old mode 100644 new mode 100755 diff --git a/ext/opcodes_maker/Makefile b/backends/opcodes_maker/Makefile similarity index 100% rename from ext/opcodes_maker/Makefile rename to backends/opcodes_maker/Makefile diff --git a/ext/opcodes_maker/README.md b/backends/opcodes_maker/README.md similarity index 100% rename from ext/opcodes_maker/README.md rename to backends/opcodes_maker/README.md diff --git a/ext/opcodes_maker/generator.py b/backends/opcodes_maker/generator.py old mode 100644 new mode 100755 similarity index 98% rename from ext/opcodes_maker/generator.py rename to backends/opcodes_maker/generator.py index 48c3bd210..e61c51638 --- a/ext/opcodes_maker/generator.py +++ b/backends/opcodes_maker/generator.py @@ -13,7 +13,7 @@ # Add riscv-opcodes directory to Python path SCRIPT_DIR = os.path.dirname(os.path.abspath(__file__)) -RISCV_OPCODES_DIR = os.path.join(SCRIPT_DIR, "..", "riscv-opcodes") +RISCV_OPCODES_DIR = os.path.join(SCRIPT_DIR, "..", "..", "ext", "riscv-opcodes") sys.path.insert(0, RISCV_OPCODES_DIR) diff --git a/ext/opcodes_maker/sorter.py b/backends/opcodes_maker/sorter.py similarity index 100% rename from ext/opcodes_maker/sorter.py rename to backends/opcodes_maker/sorter.py diff --git a/ext/opcodes_maker/yaml_to_json.py b/backends/opcodes_maker/yaml_to_json.py similarity index 100% rename from ext/opcodes_maker/yaml_to_json.py rename to backends/opcodes_maker/yaml_to_json.py diff --git a/opcodes_maker/generate_instr_dict.py b/opcodes_maker/generate_instr_dict.py deleted file mode 100644 index 3560cbb93..000000000 --- a/opcodes_maker/generate_instr_dict.py +++ /dev/null @@ -1,148 +0,0 @@ -from typing import List, Dict -import os -import yaml -import json - - -def range_size(range_str: str) -> int: - try: - end, start = map(int, range_str.split('-')) - return abs(end - start) + 1 - except ValueError: - return 0; - -reg_names = {'qs1', 'qs2', 'qd', - 'fs1', 'fs2', 'fd'} - -def GetVariables(vars: List[Dict[str, str]]): - var_names = [] - for var in vars: - var_name = var['name'] - if var_name in reg_names: - # Since strings are immutable. - lst_var_name = list(var_name) - lst_var_name[0] = 'r' - var_name = "".join(lst_var_name) - elif var_name == "shamt": - size = range_size(var['location']) - if size == 5: - var_name = "shamtw" - elif size == 6: - var_name = "shamtd" - var_names.append(var_name) - var_names.reverse() - - return var_names - -def BitStringToHex(bit_str: str) -> str: - new_bit_str = "" - for bit in bit_str: - if bit == '-': - new_bit_str += '0' - else: - new_bit_str += bit - return hex(int(new_bit_str, 2)) - -def GetMask(bit_str: str) -> str: - mask_str = "" - for bit in bit_str: - if bit == '-': - mask_str += '0' - else: - mask_str += '1' - return hex(int(mask_str, 2)) - -def GetExtension(ext, base): - prefix = f'rv{base}_' - final_extensions = [] - - if isinstance(ext, str): - final_extensions.append(prefix + ext.lower()) - elif isinstance(ext, dict): - for _, extensions in ext.items(): - for extension in extensions: - final_extensions.append(prefix + extension.lower()) - final_extensions.reverse() - - return final_extensions - -def find_first_match(data): - if isinstance(data, dict): - for key, value in data.items(): - if key == "match": - return value - elif isinstance(value, (dict, list)): - result = find_first_match(value) - if result is not None: - return result - elif isinstance(data, list): - for item in data: - result = find_first_match(item) - if result is not None: - return result - return "" - -def GetEncodings(enc: str): - n = len(enc) - if n < 32: - return '-' * (32-n) + enc - return enc - -def convert(file_dir: str, json_out): - with open(file_dir, 'r') as file: - data = yaml.safe_load(file) - instr_name = data['name'].replace('.', '_') - - print(instr_name) - encodings = data['encoding'] - - # USE RV_64 - rv64_flag = False - if 'RV64' in encodings: - encodings = encodings['RV64'] - rv64_flag = True - enc_match = GetEncodings(encodings['match']) - - var_names = [] - if 'variables' in encodings: - var_names = GetVariables(encodings['variables']) - - extension = [] - prefix = "" - if rv64_flag: - prefix = "64" - if "base" in data: - extension = GetExtension(data["definedBy"], data["base"]) - else: - extension = GetExtension(data["definedBy"], prefix) - - match_hex = BitStringToHex(enc_match) - match_mask = GetMask(enc_match) - - json_out[instr_name] = { - "encoding": enc_match, - "variable_fields": var_names, - "extension": extension, - "match": match_hex, - "mask": match_mask - } - -def read_yaml_insts(path: str): - yaml_files = [] - for root, _, files in os.walk(path): - for file in files: - if file.endswith('.yaml') or file.endswith('.yml'): - yaml_files.append(os.path.join(root, file)) - return yaml_files - -def main(): - directory = "../arch/inst/" - insts = read_yaml_insts(directory) - - inst_dict = {} - with open('data.json', 'w') as outfile: - for inst_dir in insts: - convert(inst_dir, inst_dict) - json.dump(inst_dict, outfile, indent=4) -main() - diff --git a/opcodes_maker/instr_dict.json b/opcodes_maker/instr_dict.json deleted file mode 100644 index 61d282169..000000000 --- a/opcodes_maker/instr_dict.json +++ /dev/null @@ -1,15446 +0,0 @@ -{ - "vsm3c_vi": { - "encoding": "1010111----------010-----1110111", - "variable_fields": [ - "vs2", - "zimm5", - "vd" - ], - "extension": [ - "rv_zvksh", - "rv_zvks" - ], - "match": "0xae002077", - "mask": "0xfe00707f" - }, - "vsm3me_vv": { - "encoding": "1000001----------010-----1110111", - "variable_fields": [ - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_zvksh", - "rv_zvks" - ], - "match": "0x82002077", - "mask": "0xfe00707f" - }, - "vsm4k_vi": { - "encoding": "1000011----------010-----1110111", - "variable_fields": [ - "vs2", - "zimm5", - "vd" - ], - "extension": [ - "rv_zvksed", - "rv_zvks" - ], - "match": "0x86002077", - "mask": "0xfe00707f" - }, - "vsm4r_vv": { - "encoding": "1010001-----10000010-----1110111", - "variable_fields": [ - "vs2", - "vd" - ], - "extension": [ - "rv_zvksed", - "rv_zvks" - ], - "match": "0xa2082077", - "mask": "0xfe0ff07f" - }, - "vsm4r_vs": { - "encoding": "1010011-----10000010-----1110111", - "variable_fields": [ - "vs2", - "vd" - ], - "extension": [ - "rv_zvksed", - "rv_zvks" - ], - "match": "0xa6082077", - "mask": "0xfe0ff07f" - }, - "vsha2ms_vv": { - "encoding": "1011011----------010-----1110111", - "variable_fields": [ - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_zvknha", - "rv_zvknhb", - "rv_zvkn" - ], - "match": "0xb6002077", - "mask": "0xfe00707f" - }, - "vsha2ch_vv": { - "encoding": "1011101----------010-----1110111", - "variable_fields": [ - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_zvknha", - "rv_zvknhb", - "rv_zvkn" - ], - "match": "0xba002077", - "mask": "0xfe00707f" - }, - "vsha2cl_vv": { - "encoding": "1011111----------010-----1110111", - "variable_fields": [ - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_zvknha", - "rv_zvknhb", - "rv_zvkn" - ], - "match": "0xbe002077", - "mask": "0xfe00707f" - }, - "vaesdf_vv": { - "encoding": "1010001-----00001010-----1110111", - "variable_fields": [ - "vs2", - "vd" - ], - "extension": [ - "rv_zvkned", - "rv_zvkn" - ], - "match": "0xa200a077", - "mask": "0xfe0ff07f" - }, - "vaesdf_vs": { - "encoding": "1010011-----00001010-----1110111", - "variable_fields": [ - "vs2", - "vd" - ], - "extension": [ - "rv_zvkned", - "rv_zvkn" - ], - "match": "0xa600a077", - "mask": "0xfe0ff07f" - }, - "vaesdm_vv": { - "encoding": "1010001-----00000010-----1110111", - "variable_fields": [ - "vs2", - "vd" - ], - "extension": [ - "rv_zvkned", - "rv_zvkn" - ], - "match": "0xa2002077", - "mask": "0xfe0ff07f" - }, - "vaesdm_vs": { - "encoding": "1010011-----00000010-----1110111", - "variable_fields": [ - "vs2", - "vd" - ], - "extension": [ - "rv_zvkned", - "rv_zvkn" - ], - "match": "0xa6002077", - "mask": "0xfe0ff07f" - }, - "vaesef_vv": { - "encoding": "1010001-----00011010-----1110111", - "variable_fields": [ - "vs2", - "vd" - ], - "extension": [ - "rv_zvkned", - "rv_zvkn" - ], - "match": "0xa201a077", - "mask": "0xfe0ff07f" - }, - "vaesef_vs": { - "encoding": "1010011-----00011010-----1110111", - "variable_fields": [ - "vs2", - "vd" - ], - "extension": [ - "rv_zvkned", - "rv_zvkn" - ], - "match": "0xa601a077", - "mask": "0xfe0ff07f" - }, - "vaesem_vv": { - "encoding": "1010001-----00010010-----1110111", - "variable_fields": [ - "vs2", - "vd" - ], - "extension": [ - "rv_zvkned", - "rv_zvkn" - ], - "match": "0xa2012077", - "mask": "0xfe0ff07f" - }, - "vaesem_vs": { - "encoding": "1010011-----00010010-----1110111", - "variable_fields": [ - "vs2", - "vd" - ], - "extension": [ - "rv_zvkned", - "rv_zvkn" - ], - "match": "0xa6012077", - "mask": "0xfe0ff07f" - }, - "vaesz_vs": { - "encoding": "1010011-----00111010-----1110111", - "variable_fields": [ - "vs2", - "vd" - ], - "extension": [ - "rv_zvkned", - "rv_zvkn" - ], - "match": "0xa603a077", - "mask": "0xfe0ff07f" - }, - "vaeskf1_vi": { - "encoding": "1000101----------010-----1110111", - "variable_fields": [ - "vs2", - "zimm5", - "vd" - ], - "extension": [ - "rv_zvkned", - "rv_zvkn" - ], - "match": "0x8a002077", - "mask": "0xfe00707f" - }, - "vaeskf2_vi": { - "encoding": "1010101----------010-----1110111", - "variable_fields": [ - "vs2", - "zimm5", - "vd" - ], - "extension": [ - "rv_zvkned", - "rv_zvkn" - ], - "match": "0xaa002077", - "mask": "0xfe00707f" - }, - "vgmul_vv": { - "encoding": "1010001-----10001010-----1110111", - "variable_fields": [ - "vs2", - "vd" - ], - "extension": [ - "rv_zvkg" - ], - "match": "0xa208a077", - "mask": "0xfe0ff07f" - }, - "vghsh_vv": { - "encoding": "1011001----------010-----1110111", - "variable_fields": [ - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_zvkg" - ], - "match": "0xb2002077", - "mask": "0xfe00707f" - }, - "vfwmaccbf16_vv": { - "encoding": "111011-----------001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_zvfbfwma" - ], - "match": "0xec001057", - "mask": "0xfc00707f" - }, - "vfwmaccbf16_vf": { - "encoding": "111011-----------101-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_zvfbfwma" - ], - "match": "0xec005057", - "mask": "0xfc00707f" - }, - "vfncvtbf16_f_f_w": { - "encoding": "010010------11101001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vd" - ], - "extension": [ - "rv_zvfbfmin" - ], - "match": "0x480e9057", - "mask": "0xfc0ff07f" - }, - "vfwcvtbf16_f_f_v": { - "encoding": "010010------01101001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vd" - ], - "extension": [ - "rv_zvfbfmin" - ], - "match": "0x48069057", - "mask": "0xfc0ff07f" - }, - "vclmul_vv": { - "encoding": "001100-----------010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_zvbc", - "rv_zvks", - "rv_zvkn" - ], - "match": "0x30002057", - "mask": "0xfc00707f" - }, - "vclmul_vx": { - "encoding": "001100-----------110-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_zvbc", - "rv_zvks", - "rv_zvkn" - ], - "match": "0x30006057", - "mask": "0xfc00707f" - }, - "vclmulh_vv": { - "encoding": "001101-----------010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_zvbc", - "rv_zvks", - "rv_zvkn" - ], - "match": "0x34002057", - "mask": "0xfc00707f" - }, - "vclmulh_vx": { - "encoding": "001101-----------110-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_zvbc", - "rv_zvks", - "rv_zvkn" - ], - "match": "0x34006057", - "mask": "0xfc00707f" - }, - "vandn_vv": { - "encoding": "000001-----------000-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_zvbb", - "rv_zvks", - "rv_zvkn" - ], - "match": "0x4000057", - "mask": "0xfc00707f" - }, - "vandn_vx": { - "encoding": "000001-----------100-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_zvbb", - "rv_zvks", - "rv_zvkn" - ], - "match": "0x4004057", - "mask": "0xfc00707f" - }, - "vbrev_v": { - "encoding": "010010------01010010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vd" - ], - "extension": [ - "rv_zvbb", - "rv_zvks", - "rv_zvkn" - ], - "match": "0x48052057", - "mask": "0xfc0ff07f" - }, - "vbrev8_v": { - "encoding": "010010------01000010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vd" - ], - "extension": [ - "rv_zvbb", - "rv_zvks", - "rv_zvkn" - ], - "match": "0x48042057", - "mask": "0xfc0ff07f" - }, - "vrev8_v": { - "encoding": "010010------01001010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vd" - ], - "extension": [ - "rv_zvbb", - "rv_zvks", - "rv_zvkn" - ], - "match": "0x4804a057", - "mask": "0xfc0ff07f" - }, - "vclz_v": { - "encoding": "010010------01100010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vd" - ], - "extension": [ - "rv_zvbb", - "rv_zvks", - "rv_zvkn" - ], - "match": "0x48062057", - "mask": "0xfc0ff07f" - }, - "vctz_v": { - "encoding": "010010------01101010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vd" - ], - "extension": [ - "rv_zvbb", - "rv_zvks", - "rv_zvkn" - ], - "match": "0x4806a057", - "mask": "0xfc0ff07f" - }, - "vcpop_v": { - "encoding": "010010------01110010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vd" - ], - "extension": [ - "rv_zvbb", - "rv_zvks", - "rv_zvkn" - ], - "match": "0x48072057", - "mask": "0xfc0ff07f" - }, - "vrol_vv": { - "encoding": "010101-----------000-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_zvbb", - "rv_zvks", - "rv_zvkn" - ], - "match": "0x54000057", - "mask": "0xfc00707f" - }, - "vrol_vx": { - "encoding": "010101-----------100-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_zvbb", - "rv_zvks", - "rv_zvkn" - ], - "match": "0x54004057", - "mask": "0xfc00707f" - }, - "vror_vv": { - "encoding": "010100-----------000-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_zvbb", - "rv_zvks", - "rv_zvkn" - ], - "match": "0x50000057", - "mask": "0xfc00707f" - }, - "vror_vx": { - "encoding": "010100-----------100-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_zvbb", - "rv_zvks", - "rv_zvkn" - ], - "match": "0x50004057", - "mask": "0xfc00707f" - }, - "vror_vi": { - "encoding": "01010------------011-----1010111", - "variable_fields": [ - "zimm6hi", - "vm", - "vs2", - "zimm6lo", - "vd" - ], - "extension": [ - "rv_zvbb", - "rv_zvks", - "rv_zvkn" - ], - "match": "0x50003057", - "mask": "0xf800707f" - }, - "vwsll_vv": { - "encoding": "110101-----------000-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_zvbb", - "rv_zvks", - "rv_zvkn" - ], - "match": "0xd4000057", - "mask": "0xfc00707f" - }, - "vwsll_vx": { - "encoding": "110101-----------100-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_zvbb", - "rv_zvks", - "rv_zvkn" - ], - "match": "0xd4004057", - "mask": "0xfc00707f" - }, - "vwsll_vi": { - "encoding": "110101-----------011-----1010111", - "variable_fields": [ - "vm", - "vs2", - "zimm5", - "vd" - ], - "extension": [ - "rv_zvbb", - "rv_zvks", - "rv_zvkn" - ], - "match": "0xd4003057", - "mask": "0xfc00707f" - }, - "sm3p0": { - "encoding": "000100001000-----001-----0010011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv_zksh", - "rv_zks" - ], - "match": "0x10801013", - "mask": "0xfff0707f" - }, - "sm3p1": { - "encoding": "000100001001-----001-----0010011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv_zksh", - "rv_zks" - ], - "match": "0x10901013", - "mask": "0xfff0707f" - }, - "sm4ed": { - "encoding": "--11000----------000-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "bs" - ], - "extension": [ - "rv_zksed", - "rv_zks" - ], - "match": "0x30000033", - "mask": "0x3e00707f" - }, - "sm4ks": { - "encoding": "--11010----------000-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "bs" - ], - "extension": [ - "rv_zksed", - "rv_zks" - ], - "match": "0x34000033", - "mask": "0x3e00707f" - }, - "sha256sum0": { - "encoding": "000100000000-----001-----0010011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv_zknh", - "rv_zkn", - "rv_zk" - ], - "match": "0x10001013", - "mask": "0xfff0707f" - }, - "sha256sum1": { - "encoding": "000100000001-----001-----0010011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv_zknh", - "rv_zkn", - "rv_zk" - ], - "match": "0x10101013", - "mask": "0xfff0707f" - }, - "sha256sig0": { - "encoding": "000100000010-----001-----0010011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv_zknh", - "rv_zkn", - "rv_zk" - ], - "match": "0x10201013", - "mask": "0xfff0707f" - }, - "sha256sig1": { - "encoding": "000100000011-----001-----0010011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv_zknh", - "rv_zkn", - "rv_zk" - ], - "match": "0x10301013", - "mask": "0xfff0707f" - }, - "mop_r_N": { - "encoding": "1-00--0111-------100-----1110011", - "variable_fields": [ - "mop_r_t_30", - "mop_r_t_27_26", - "mop_r_t_21_20", - "rd", - "rs1" - ], - "extension": [ - "rv_zimop" - ], - "match": "0x81c04073", - "mask": "0xb3c0707f" - }, - "mop_rr_N": { - "encoding": "1-00--1----------100-----1110011", - "variable_fields": [ - "mop_rr_t_30", - "mop_rr_t_27_26", - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_zimop" - ], - "match": "0x82004073", - "mask": "0xb200707f" - }, - "fence_i": { - "encoding": "-----------------001-----0001111", - "variable_fields": [ - "imm12", - "rs1", - "rd" - ], - "extension": [ - "rv_zifencei" - ], - "match": "0x100f", - "mask": "0x707f" - }, - "csrrw": { - "encoding": "-----------------001-----1110011", - "variable_fields": [ - "rd", - "rs1", - "csr" - ], - "extension": [ - "rv_zicsr" - ], - "match": "0x1073", - "mask": "0x707f" - }, - "csrrs": { - "encoding": "-----------------010-----1110011", - "variable_fields": [ - "rd", - "rs1", - "csr" - ], - "extension": [ - "rv_zicsr" - ], - "match": "0x2073", - "mask": "0x707f" - }, - "csrrc": { - "encoding": "-----------------011-----1110011", - "variable_fields": [ - "rd", - "rs1", - "csr" - ], - "extension": [ - "rv_zicsr" - ], - "match": "0x3073", - "mask": "0x707f" - }, - "csrrwi": { - "encoding": "-----------------101-----1110011", - "variable_fields": [ - "rd", - "csr", - "zimm" - ], - "extension": [ - "rv_zicsr" - ], - "match": "0x5073", - "mask": "0x707f" - }, - "csrrsi": { - "encoding": "-----------------110-----1110011", - "variable_fields": [ - "rd", - "csr", - "zimm" - ], - "extension": [ - "rv_zicsr" - ], - "match": "0x6073", - "mask": "0x707f" - }, - "csrrci": { - "encoding": "-----------------111-----1110011", - "variable_fields": [ - "rd", - "csr", - "zimm" - ], - "extension": [ - "rv_zicsr" - ], - "match": "0x7073", - "mask": "0x707f" - }, - "czero_eqz": { - "encoding": "0000111----------101-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_zicond" - ], - "match": "0xe005033", - "mask": "0xfe00707f" - }, - "czero_nez": { - "encoding": "0000111----------111-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_zicond" - ], - "match": "0xe007033", - "mask": "0xfe00707f" - }, - "ssamoswap_w": { - "encoding": "01001------------010-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv_zicfiss" - ], - "match": "0x4800202f", - "mask": "0xf800707f" - }, - "ssamoswap_d": { - "encoding": "01001------------011-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv_zicfiss" - ], - "match": "0x4800302f", - "mask": "0xf800707f" - }, - "cbo_clean": { - "encoding": "000000000001-----010000000001111", - "variable_fields": [ - "rs1" - ], - "extension": [ - "rv_zicbo" - ], - "match": "0x10200f", - "mask": "0xfff07fff" - }, - "cbo_flush": { - "encoding": "000000000010-----010000000001111", - "variable_fields": [ - "rs1" - ], - "extension": [ - "rv_zicbo" - ], - "match": "0x20200f", - "mask": "0xfff07fff" - }, - "cbo_inval": { - "encoding": "000000000000-----010000000001111", - "variable_fields": [ - "rs1" - ], - "extension": [ - "rv_zicbo" - ], - "match": "0x200f", - "mask": "0xfff07fff" - }, - "cbo_zero": { - "encoding": "000000000100-----010000000001111", - "variable_fields": [ - "rs1" - ], - "extension": [ - "rv_zicbo" - ], - "match": "0x40200f", - "mask": "0xfff07fff" - }, - "fli_h": { - "encoding": "111101000001-----000-----1010011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv_zfh_zfa" - ], - "match": "0xf4100053", - "mask": "0xfff0707f" - }, - "fminm_h": { - "encoding": "0010110----------010-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_zfh_zfa" - ], - "match": "0x2c002053", - "mask": "0xfe00707f" - }, - "fmaxm_h": { - "encoding": "0010110----------011-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_zfh_zfa" - ], - "match": "0x2c003053", - "mask": "0xfe00707f" - }, - "fround_h": { - "encoding": "010001000100-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv_zfh_zfa" - ], - "match": "0x44400053", - "mask": "0xfff0007f" - }, - "froundnx_h": { - "encoding": "010001000101-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv_zfh_zfa" - ], - "match": "0x44500053", - "mask": "0xfff0007f" - }, - "fleq_h": { - "encoding": "1010010----------100-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_zfh_zfa" - ], - "match": "0xa4004053", - "mask": "0xfe00707f" - }, - "fltq_h": { - "encoding": "1010010----------101-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_zfh_zfa" - ], - "match": "0xa4005053", - "mask": "0xfe00707f" - }, - "flh": { - "encoding": "-----------------001-----0000111", - "variable_fields": [ - "rd", - "rs1", - "imm12" - ], - "extension": [ - "rv_zfh" - ], - "match": "0x1007", - "mask": "0x707f" - }, - "fsh": { - "encoding": "-----------------001-----0100111", - "variable_fields": [ - "imm12hi", - "rs1", - "rs2", - "imm12lo" - ], - "extension": [ - "rv_zfh" - ], - "match": "0x1027", - "mask": "0x707f" - }, - "fmadd_h": { - "encoding": "-----10------------------1000011", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "rs3", - "rm" - ], - "extension": [ - "rv_zfh" - ], - "match": "0x4000043", - "mask": "0x600007f" - }, - "fmsub_h": { - "encoding": "-----10------------------1000111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "rs3", - "rm" - ], - "extension": [ - "rv_zfh" - ], - "match": "0x4000047", - "mask": "0x600007f" - }, - "fnmsub_h": { - "encoding": "-----10------------------1001011", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "rs3", - "rm" - ], - "extension": [ - "rv_zfh" - ], - "match": "0x400004b", - "mask": "0x600007f" - }, - "fnmadd_h": { - "encoding": "-----10------------------1001111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "rs3", - "rm" - ], - "extension": [ - "rv_zfh" - ], - "match": "0x400004f", - "mask": "0x600007f" - }, - "fadd_h": { - "encoding": "0000010------------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "rm" - ], - "extension": [ - "rv_zfh" - ], - "match": "0x4000053", - "mask": "0xfe00007f" - }, - "fsub_h": { - "encoding": "0000110------------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "rm" - ], - "extension": [ - "rv_zfh" - ], - "match": "0xc000053", - "mask": "0xfe00007f" - }, - "fmul_h": { - "encoding": "0001010------------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "rm" - ], - "extension": [ - "rv_zfh" - ], - "match": "0x14000053", - "mask": "0xfe00007f" - }, - "fdiv_h": { - "encoding": "0001110------------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "rm" - ], - "extension": [ - "rv_zfh" - ], - "match": "0x1c000053", - "mask": "0xfe00007f" - }, - "fsqrt_h": { - "encoding": "010111000000-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv_zfh" - ], - "match": "0x5c000053", - "mask": "0xfff0007f" - }, - "fsgnj_h": { - "encoding": "0010010----------000-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_zfh" - ], - "match": "0x24000053", - "mask": "0xfe00707f" - }, - "fsgnjn_h": { - "encoding": "0010010----------001-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_zfh" - ], - "match": "0x24001053", - "mask": "0xfe00707f" - }, - "fsgnjx_h": { - "encoding": "0010010----------010-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_zfh" - ], - "match": "0x24002053", - "mask": "0xfe00707f" - }, - "fmin_h": { - "encoding": "0010110----------000-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_zfh" - ], - "match": "0x2c000053", - "mask": "0xfe00707f" - }, - "fmax_h": { - "encoding": "0010110----------001-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_zfh" - ], - "match": "0x2c001053", - "mask": "0xfe00707f" - }, - "fcvt_s_h": { - "encoding": "010000000010-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv_zfh" - ], - "match": "0x40200053", - "mask": "0xfff0007f" - }, - "fcvt_h_s": { - "encoding": "010001000000-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv_zfh" - ], - "match": "0x44000053", - "mask": "0xfff0007f" - }, - "feq_h": { - "encoding": "1010010----------010-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_zfh" - ], - "match": "0xa4002053", - "mask": "0xfe00707f" - }, - "flt_h": { - "encoding": "1010010----------001-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_zfh" - ], - "match": "0xa4001053", - "mask": "0xfe00707f" - }, - "fle_h": { - "encoding": "1010010----------000-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_zfh" - ], - "match": "0xa4000053", - "mask": "0xfe00707f" - }, - "fclass_h": { - "encoding": "111001000000-----001-----1010011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv_zfh" - ], - "match": "0xe4001053", - "mask": "0xfff0707f" - }, - "fcvt_w_h": { - "encoding": "110001000000-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv_zfh" - ], - "match": "0xc4000053", - "mask": "0xfff0007f" - }, - "fcvt_wu_h": { - "encoding": "110001000001-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv_zfh" - ], - "match": "0xc4100053", - "mask": "0xfff0007f" - }, - "fmv_x_h": { - "encoding": "111001000000-----000-----1010011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv_zfh" - ], - "match": "0xe4000053", - "mask": "0xfff0707f" - }, - "fcvt_h_w": { - "encoding": "110101000000-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv_zfh" - ], - "match": "0xd4000053", - "mask": "0xfff0007f" - }, - "fcvt_h_wu": { - "encoding": "110101000001-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv_zfh" - ], - "match": "0xd4100053", - "mask": "0xfff0007f" - }, - "fmv_h_x": { - "encoding": "111101000000-----000-----1010011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv_zfh" - ], - "match": "0xf4000053", - "mask": "0xfff0707f" - }, - "fcvt_bf16_s": { - "encoding": "010001001000-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv_zfbfmin" - ], - "match": "0x44800053", - "mask": "0xfff0007f" - }, - "fcvt_s_bf16": { - "encoding": "010000000110-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv_zfbfmin" - ], - "match": "0x40600053", - "mask": "0xfff0007f" - }, - "cm_jalt": { - "encoding": "----------------101000--------10", - "variable_fields": [ - "c_index" - ], - "extension": [ - "rv_zcmt" - ], - "match": "0xa002", - "mask": "0xfc03" - }, - "cm_push": { - "encoding": "----------------10111000------10", - "variable_fields": [ - "c_rlist", - "c_spimm" - ], - "extension": [ - "rv_zcmp" - ], - "match": "0xb802", - "mask": "0xff03" - }, - "cm_pop": { - "encoding": "----------------10111010------10", - "variable_fields": [ - "c_rlist", - "c_spimm" - ], - "extension": [ - "rv_zcmp" - ], - "match": "0xba02", - "mask": "0xff03" - }, - "cm_popretz": { - "encoding": "----------------10111100------10", - "variable_fields": [ - "c_rlist", - "c_spimm" - ], - "extension": [ - "rv_zcmp" - ], - "match": "0xbc02", - "mask": "0xff03" - }, - "cm_popret": { - "encoding": "----------------10111110------10", - "variable_fields": [ - "c_rlist", - "c_spimm" - ], - "extension": [ - "rv_zcmp" - ], - "match": "0xbe02", - "mask": "0xff03" - }, - "cm_mvsa01": { - "encoding": "----------------101011---01---10", - "variable_fields": [ - "c_sreg1", - "c_sreg2" - ], - "extension": [ - "rv_zcmp" - ], - "match": "0xac22", - "mask": "0xfc63" - }, - "cm_mva01s": { - "encoding": "----------------101011---11---10", - "variable_fields": [ - "c_sreg1", - "c_sreg2" - ], - "extension": [ - "rv_zcmp" - ], - "match": "0xac62", - "mask": "0xfc63" - }, - "c_mop_N": { - "encoding": "----------------01100---10000001", - "variable_fields": [ - "c_mop_t" - ], - "extension": [ - "rv_zcmop" - ], - "match": "0x6081", - "mask": "0xf8ff" - }, - "c_lbu": { - "encoding": "----------------100000--------00", - "variable_fields": [ - "rd_p", - "rs1_p", - "c_uimm2" - ], - "extension": [ - "rv_zcb" - ], - "match": "0x8000", - "mask": "0xfc03" - }, - "c_lhu": { - "encoding": "----------------100001---0----00", - "variable_fields": [ - "rd_p", - "rs1_p", - "c_uimm1" - ], - "extension": [ - "rv_zcb" - ], - "match": "0x8400", - "mask": "0xfc43" - }, - "c_lh": { - "encoding": "----------------100001---1----00", - "variable_fields": [ - "rd_p", - "rs1_p", - "c_uimm1" - ], - "extension": [ - "rv_zcb" - ], - "match": "0x8440", - "mask": "0xfc43" - }, - "c_sb": { - "encoding": "----------------100010--------00", - "variable_fields": [ - "rs2_p", - "rs1_p", - "c_uimm2" - ], - "extension": [ - "rv_zcb" - ], - "match": "0x8800", - "mask": "0xfc03" - }, - "c_sh": { - "encoding": "----------------100011---0----00", - "variable_fields": [ - "rs2_p", - "rs1_p", - "c_uimm1" - ], - "extension": [ - "rv_zcb" - ], - "match": "0x8c00", - "mask": "0xfc43" - }, - "c_zext_b": { - "encoding": "----------------100111---1100001", - "variable_fields": [ - "rd_rs1_p" - ], - "extension": [ - "rv_zcb" - ], - "match": "0x9c61", - "mask": "0xfc7f" - }, - "c_sext_b": { - "encoding": "----------------100111---1100101", - "variable_fields": [ - "rd_rs1_p" - ], - "extension": [ - "rv_zcb" - ], - "match": "0x9c65", - "mask": "0xfc7f" - }, - "c_zext_h": { - "encoding": "----------------100111---1101001", - "variable_fields": [ - "rd_rs1_p" - ], - "extension": [ - "rv_zcb" - ], - "match": "0x9c69", - "mask": "0xfc7f" - }, - "c_sext_h": { - "encoding": "----------------100111---1101101", - "variable_fields": [ - "rd_rs1_p" - ], - "extension": [ - "rv_zcb" - ], - "match": "0x9c6d", - "mask": "0xfc7f" - }, - "c_not": { - "encoding": "----------------100111---1110101", - "variable_fields": [ - "rd_rs1_p" - ], - "extension": [ - "rv_zcb" - ], - "match": "0x9c75", - "mask": "0xfc7f" - }, - "c_mul": { - "encoding": "----------------100111---10---01", - "variable_fields": [ - "rd_rs1_p", - "rs2_p" - ], - "extension": [ - "rv_zcb" - ], - "match": "0x9c41", - "mask": "0xfc63" - }, - "bclr": { - "encoding": "0100100----------001-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_zbs" - ], - "match": "0x48001033", - "mask": "0xfe00707f" - }, - "bext": { - "encoding": "0100100----------101-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_zbs" - ], - "match": "0x48005033", - "mask": "0xfe00707f" - }, - "binv": { - "encoding": "0110100----------001-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_zbs" - ], - "match": "0x68001033", - "mask": "0xfe00707f" - }, - "bset": { - "encoding": "0010100----------001-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_zbs" - ], - "match": "0x28001033", - "mask": "0xfe00707f" - }, - "xperm4": { - "encoding": "0010100----------010-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_zbkx", - "rv_zks", - "rv_zkn", - "rv_zk" - ], - "match": "0x28002033", - "mask": "0xfe00707f" - }, - "xperm8": { - "encoding": "0010100----------100-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_zbkx", - "rv_zks", - "rv_zkn", - "rv_zk" - ], - "match": "0x28004033", - "mask": "0xfe00707f" - }, - "pack": { - "encoding": "0000100----------100-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_zbkb", - "rv_zks", - "rv_zkn", - "rv_zk" - ], - "match": "0x8004033", - "mask": "0xfe00707f" - }, - "packh": { - "encoding": "0000100----------111-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_zbkb", - "rv_zks", - "rv_zkn", - "rv_zk" - ], - "match": "0x8007033", - "mask": "0xfe00707f" - }, - "clmul": { - "encoding": "0000101----------001-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_zbc", - "rv_zks", - "rv_zkn", - "rv_zk", - "rv_zbkc" - ], - "match": "0xa001033", - "mask": "0xfe00707f" - }, - "clmulr": { - "encoding": "0000101----------010-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_zbc" - ], - "match": "0xa002033", - "mask": "0xfe00707f" - }, - "clmulh": { - "encoding": "0000101----------011-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_zbc", - "rv_zks", - "rv_zkn", - "rv_zk", - "rv_zbkc" - ], - "match": "0xa003033", - "mask": "0xfe00707f" - }, - "andn": { - "encoding": "0100000----------111-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_zbb", - "rv_zks", - "rv_zkn", - "rv_zk", - "rv_zbkb" - ], - "match": "0x40007033", - "mask": "0xfe00707f" - }, - "orn": { - "encoding": "0100000----------110-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_zbb", - "rv_zks", - "rv_zkn", - "rv_zk", - "rv_zbkb" - ], - "match": "0x40006033", - "mask": "0xfe00707f" - }, - "xnor": { - "encoding": "0100000----------100-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_zbb", - "rv_zks", - "rv_zkn", - "rv_zk", - "rv_zbkb" - ], - "match": "0x40004033", - "mask": "0xfe00707f" - }, - "clz": { - "encoding": "011000000000-----001-----0010011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv_zbb" - ], - "match": "0x60001013", - "mask": "0xfff0707f" - }, - "ctz": { - "encoding": "011000000001-----001-----0010011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv_zbb" - ], - "match": "0x60101013", - "mask": "0xfff0707f" - }, - "cpop": { - "encoding": "011000000010-----001-----0010011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv_zbb" - ], - "match": "0x60201013", - "mask": "0xfff0707f" - }, - "max": { - "encoding": "0000101----------110-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_zbb" - ], - "match": "0xa006033", - "mask": "0xfe00707f" - }, - "maxu": { - "encoding": "0000101----------111-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_zbb" - ], - "match": "0xa007033", - "mask": "0xfe00707f" - }, - "min": { - "encoding": "0000101----------100-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_zbb" - ], - "match": "0xa004033", - "mask": "0xfe00707f" - }, - "minu": { - "encoding": "0000101----------101-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_zbb" - ], - "match": "0xa005033", - "mask": "0xfe00707f" - }, - "sext_b": { - "encoding": "011000000100-----001-----0010011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv_zbb" - ], - "match": "0x60401013", - "mask": "0xfff0707f" - }, - "sext_h": { - "encoding": "011000000101-----001-----0010011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv_zbb" - ], - "match": "0x60501013", - "mask": "0xfff0707f" - }, - "rol": { - "encoding": "0110000----------001-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_zbb", - "rv_zks", - "rv_zkn", - "rv_zk", - "rv_zbkb" - ], - "match": "0x60001033", - "mask": "0xfe00707f" - }, - "ror": { - "encoding": "0110000----------101-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_zbb", - "rv_zks", - "rv_zkn", - "rv_zk", - "rv_zbkb" - ], - "match": "0x60005033", - "mask": "0xfe00707f" - }, - "sh1add": { - "encoding": "0010000----------010-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_zba" - ], - "match": "0x20002033", - "mask": "0xfe00707f" - }, - "sh2add": { - "encoding": "0010000----------100-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_zba" - ], - "match": "0x20004033", - "mask": "0xfe00707f" - }, - "sh3add": { - "encoding": "0010000----------110-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_zba" - ], - "match": "0x20006033", - "mask": "0xfe00707f" - }, - "wrs_nto": { - "encoding": "00000000110100000000000001110011", - "variable_fields": [], - "extension": [ - "rv_zawrs" - ], - "match": "0xd00073", - "mask": "0xffffffff" - }, - "wrs_sto": { - "encoding": "00000001110100000000000001110011", - "variable_fields": [], - "extension": [ - "rv_zawrs" - ], - "match": "0x1d00073", - "mask": "0xffffffff" - }, - "amocas_w": { - "encoding": "00101------------010-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv_zacas" - ], - "match": "0x2800202f", - "mask": "0xf800707f" - }, - "amocas_d": { - "encoding": "00101------------011-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv_zacas" - ], - "match": "0x2800302f", - "mask": "0xf800707f" - }, - "amoswap_b": { - "encoding": "00001------------000-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv_zabha" - ], - "match": "0x800002f", - "mask": "0xf800707f" - }, - "amoadd_b": { - "encoding": "00000------------000-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv_zabha" - ], - "match": "0x2f", - "mask": "0xf800707f" - }, - "amoxor_b": { - "encoding": "00100------------000-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv_zabha" - ], - "match": "0x2000002f", - "mask": "0xf800707f" - }, - "amoand_b": { - "encoding": "01100------------000-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv_zabha" - ], - "match": "0x6000002f", - "mask": "0xf800707f" - }, - "amoor_b": { - "encoding": "01000------------000-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv_zabha" - ], - "match": "0x4000002f", - "mask": "0xf800707f" - }, - "amomin_b": { - "encoding": "10000------------000-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv_zabha" - ], - "match": "0x8000002f", - "mask": "0xf800707f" - }, - "amomax_b": { - "encoding": "10100------------000-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv_zabha" - ], - "match": "0xa000002f", - "mask": "0xf800707f" - }, - "amominu_b": { - "encoding": "11000------------000-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv_zabha" - ], - "match": "0xc000002f", - "mask": "0xf800707f" - }, - "amomaxu_b": { - "encoding": "11100------------000-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv_zabha" - ], - "match": "0xe000002f", - "mask": "0xf800707f" - }, - "amocas_b": { - "encoding": "00101------------000-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv_zabha" - ], - "match": "0x2800002f", - "mask": "0xf800707f" - }, - "amoswap_h": { - "encoding": "00001------------001-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv_zabha" - ], - "match": "0x800102f", - "mask": "0xf800707f" - }, - "amoadd_h": { - "encoding": "00000------------001-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv_zabha" - ], - "match": "0x102f", - "mask": "0xf800707f" - }, - "amoxor_h": { - "encoding": "00100------------001-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv_zabha" - ], - "match": "0x2000102f", - "mask": "0xf800707f" - }, - "amoand_h": { - "encoding": "01100------------001-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv_zabha" - ], - "match": "0x6000102f", - "mask": "0xf800707f" - }, - "amoor_h": { - "encoding": "01000------------001-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv_zabha" - ], - "match": "0x4000102f", - "mask": "0xf800707f" - }, - "amomin_h": { - "encoding": "10000------------001-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv_zabha" - ], - "match": "0x8000102f", - "mask": "0xf800707f" - }, - "amomax_h": { - "encoding": "10100------------001-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv_zabha" - ], - "match": "0xa000102f", - "mask": "0xf800707f" - }, - "amominu_h": { - "encoding": "11000------------001-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv_zabha" - ], - "match": "0xc000102f", - "mask": "0xf800707f" - }, - "amomaxu_h": { - "encoding": "11100------------001-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv_zabha" - ], - "match": "0xe000102f", - "mask": "0xf800707f" - }, - "amocas_h": { - "encoding": "00101------------001-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv_zabha" - ], - "match": "0x2800102f", - "mask": "0xf800707f" - }, - "vsetivli": { - "encoding": "11---------------111-----1010111", - "variable_fields": [ - "zimm10", - "zimm", - "rd" - ], - "extension": [ - "rv_v" - ], - "match": "0xc0007057", - "mask": "0xc000707f" - }, - "vsetvli": { - "encoding": "0----------------111-----1010111", - "variable_fields": [ - "zimm11", - "rs1", - "rd" - ], - "extension": [ - "rv_v" - ], - "match": "0x7057", - "mask": "0x8000707f" - }, - "vsetvl": { - "encoding": "1000000----------111-----1010111", - "variable_fields": [ - "rs2", - "rs1", - "rd" - ], - "extension": [ - "rv_v" - ], - "match": "0x80007057", - "mask": "0xfe00707f" - }, - "vlm_v": { - "encoding": "000000101011-----000-----0000111", - "variable_fields": [ - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x2b00007", - "mask": "0xfff0707f" - }, - "vsm_v": { - "encoding": "000000101011-----000-----0100111", - "variable_fields": [ - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x2b00027", - "mask": "0xfff0707f" - }, - "vle8_v": { - "encoding": "000000-00000-----000-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x7", - "mask": "0xfdf0707f" - }, - "vlseg2e8_v": { - "encoding": "001000-00000-----000-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x20000007", - "mask": "0xfdf0707f" - }, - "vlseg3e8_v": { - "encoding": "010000-00000-----000-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x40000007", - "mask": "0xfdf0707f" - }, - "vlseg4e8_v": { - "encoding": "011000-00000-----000-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x60000007", - "mask": "0xfdf0707f" - }, - "vlseg5e8_v": { - "encoding": "100000-00000-----000-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x80000007", - "mask": "0xfdf0707f" - }, - "vlseg6e8_v": { - "encoding": "101000-00000-----000-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xa0000007", - "mask": "0xfdf0707f" - }, - "vlseg7e8_v": { - "encoding": "110000-00000-----000-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xc0000007", - "mask": "0xfdf0707f" - }, - "vlseg8e8_v": { - "encoding": "111000-00000-----000-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xe0000007", - "mask": "0xfdf0707f" - }, - "vle16_v": { - "encoding": "000000-00000-----101-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x5007", - "mask": "0xfdf0707f" - }, - "vlseg2e16_v": { - "encoding": "001000-00000-----101-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x20005007", - "mask": "0xfdf0707f" - }, - "vlseg3e16_v": { - "encoding": "010000-00000-----101-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x40005007", - "mask": "0xfdf0707f" - }, - "vlseg4e16_v": { - "encoding": "011000-00000-----101-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x60005007", - "mask": "0xfdf0707f" - }, - "vlseg5e16_v": { - "encoding": "100000-00000-----101-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x80005007", - "mask": "0xfdf0707f" - }, - "vlseg6e16_v": { - "encoding": "101000-00000-----101-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xa0005007", - "mask": "0xfdf0707f" - }, - "vlseg7e16_v": { - "encoding": "110000-00000-----101-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xc0005007", - "mask": "0xfdf0707f" - }, - "vlseg8e16_v": { - "encoding": "111000-00000-----101-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xe0005007", - "mask": "0xfdf0707f" - }, - "vle32_v": { - "encoding": "000000-00000-----110-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x6007", - "mask": "0xfdf0707f" - }, - "vlseg2e32_v": { - "encoding": "001000-00000-----110-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x20006007", - "mask": "0xfdf0707f" - }, - "vlseg3e32_v": { - "encoding": "010000-00000-----110-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x40006007", - "mask": "0xfdf0707f" - }, - "vlseg4e32_v": { - "encoding": "011000-00000-----110-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x60006007", - "mask": "0xfdf0707f" - }, - "vlseg5e32_v": { - "encoding": "100000-00000-----110-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x80006007", - "mask": "0xfdf0707f" - }, - "vlseg6e32_v": { - "encoding": "101000-00000-----110-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xa0006007", - "mask": "0xfdf0707f" - }, - "vlseg7e32_v": { - "encoding": "110000-00000-----110-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xc0006007", - "mask": "0xfdf0707f" - }, - "vlseg8e32_v": { - "encoding": "111000-00000-----110-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xe0006007", - "mask": "0xfdf0707f" - }, - "vle64_v": { - "encoding": "000000-00000-----111-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x7007", - "mask": "0xfdf0707f" - }, - "vlseg2e64_v": { - "encoding": "001000-00000-----111-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x20007007", - "mask": "0xfdf0707f" - }, - "vlseg3e64_v": { - "encoding": "010000-00000-----111-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x40007007", - "mask": "0xfdf0707f" - }, - "vlseg4e64_v": { - "encoding": "011000-00000-----111-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x60007007", - "mask": "0xfdf0707f" - }, - "vlseg5e64_v": { - "encoding": "100000-00000-----111-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x80007007", - "mask": "0xfdf0707f" - }, - "vlseg6e64_v": { - "encoding": "101000-00000-----111-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xa0007007", - "mask": "0xfdf0707f" - }, - "vlseg7e64_v": { - "encoding": "110000-00000-----111-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xc0007007", - "mask": "0xfdf0707f" - }, - "vlseg8e64_v": { - "encoding": "111000-00000-----111-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xe0007007", - "mask": "0xfdf0707f" - }, - "vse8_v": { - "encoding": "000000-00000-----000-----0100111", - "variable_fields": [ - "vm", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x27", - "mask": "0xfdf0707f" - }, - "vsseg2e8_v": { - "encoding": "001000-00000-----000-----0100111", - "variable_fields": [ - "vm", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x20000027", - "mask": "0xfdf0707f" - }, - "vsseg3e8_v": { - "encoding": "010000-00000-----000-----0100111", - "variable_fields": [ - "vm", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x40000027", - "mask": "0xfdf0707f" - }, - "vsseg4e8_v": { - "encoding": "011000-00000-----000-----0100111", - "variable_fields": [ - "vm", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x60000027", - "mask": "0xfdf0707f" - }, - "vsseg5e8_v": { - "encoding": "100000-00000-----000-----0100111", - "variable_fields": [ - "vm", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x80000027", - "mask": "0xfdf0707f" - }, - "vsseg6e8_v": { - "encoding": "101000-00000-----000-----0100111", - "variable_fields": [ - "vm", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xa0000027", - "mask": "0xfdf0707f" - }, - "vsseg7e8_v": { - "encoding": "110000-00000-----000-----0100111", - "variable_fields": [ - "vm", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xc0000027", - "mask": "0xfdf0707f" - }, - "vsseg8e8_v": { - "encoding": "111000-00000-----000-----0100111", - "variable_fields": [ - "vm", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xe0000027", - "mask": "0xfdf0707f" - }, - "vse16_v": { - "encoding": "000000-00000-----101-----0100111", - "variable_fields": [ - "vm", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x5027", - "mask": "0xfdf0707f" - }, - "vsseg2e16_v": { - "encoding": "001000-00000-----101-----0100111", - "variable_fields": [ - "vm", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x20005027", - "mask": "0xfdf0707f" - }, - "vsseg3e16_v": { - "encoding": "010000-00000-----101-----0100111", - "variable_fields": [ - "vm", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x40005027", - "mask": "0xfdf0707f" - }, - "vsseg4e16_v": { - "encoding": "011000-00000-----101-----0100111", - "variable_fields": [ - "vm", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x60005027", - "mask": "0xfdf0707f" - }, - "vsseg5e16_v": { - "encoding": "100000-00000-----101-----0100111", - "variable_fields": [ - "vm", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x80005027", - "mask": "0xfdf0707f" - }, - "vsseg6e16_v": { - "encoding": "101000-00000-----101-----0100111", - "variable_fields": [ - "vm", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xa0005027", - "mask": "0xfdf0707f" - }, - "vsseg7e16_v": { - "encoding": "110000-00000-----101-----0100111", - "variable_fields": [ - "vm", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xc0005027", - "mask": "0xfdf0707f" - }, - "vsseg8e16_v": { - "encoding": "111000-00000-----101-----0100111", - "variable_fields": [ - "vm", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xe0005027", - "mask": "0xfdf0707f" - }, - "vse32_v": { - "encoding": "000000-00000-----110-----0100111", - "variable_fields": [ - "vm", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x6027", - "mask": "0xfdf0707f" - }, - "vsseg2e32_v": { - "encoding": "001000-00000-----110-----0100111", - "variable_fields": [ - "vm", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x20006027", - "mask": "0xfdf0707f" - }, - "vsseg3e32_v": { - "encoding": "010000-00000-----110-----0100111", - "variable_fields": [ - "vm", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x40006027", - "mask": "0xfdf0707f" - }, - "vsseg4e32_v": { - "encoding": "011000-00000-----110-----0100111", - "variable_fields": [ - "vm", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x60006027", - "mask": "0xfdf0707f" - }, - "vsseg5e32_v": { - "encoding": "100000-00000-----110-----0100111", - "variable_fields": [ - "vm", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x80006027", - "mask": "0xfdf0707f" - }, - "vsseg6e32_v": { - "encoding": "101000-00000-----110-----0100111", - "variable_fields": [ - "vm", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xa0006027", - "mask": "0xfdf0707f" - }, - "vsseg7e32_v": { - "encoding": "110000-00000-----110-----0100111", - "variable_fields": [ - "vm", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xc0006027", - "mask": "0xfdf0707f" - }, - "vsseg8e32_v": { - "encoding": "111000-00000-----110-----0100111", - "variable_fields": [ - "vm", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xe0006027", - "mask": "0xfdf0707f" - }, - "vse64_v": { - "encoding": "000000-00000-----111-----0100111", - "variable_fields": [ - "vm", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x7027", - "mask": "0xfdf0707f" - }, - "vsseg2e64_v": { - "encoding": "001000-00000-----111-----0100111", - "variable_fields": [ - "vm", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x20007027", - "mask": "0xfdf0707f" - }, - "vsseg3e64_v": { - "encoding": "010000-00000-----111-----0100111", - "variable_fields": [ - "vm", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x40007027", - "mask": "0xfdf0707f" - }, - "vsseg4e64_v": { - "encoding": "011000-00000-----111-----0100111", - "variable_fields": [ - "vm", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x60007027", - "mask": "0xfdf0707f" - }, - "vsseg5e64_v": { - "encoding": "100000-00000-----111-----0100111", - "variable_fields": [ - "vm", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x80007027", - "mask": "0xfdf0707f" - }, - "vsseg6e64_v": { - "encoding": "101000-00000-----111-----0100111", - "variable_fields": [ - "vm", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xa0007027", - "mask": "0xfdf0707f" - }, - "vsseg7e64_v": { - "encoding": "110000-00000-----111-----0100111", - "variable_fields": [ - "vm", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xc0007027", - "mask": "0xfdf0707f" - }, - "vsseg8e64_v": { - "encoding": "111000-00000-----111-----0100111", - "variable_fields": [ - "vm", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xe0007027", - "mask": "0xfdf0707f" - }, - "vluxei8_v": { - "encoding": "000001-----------000-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x4000007", - "mask": "0xfc00707f" - }, - "vluxseg2ei8_v": { - "encoding": "001001-----------000-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x24000007", - "mask": "0xfc00707f" - }, - "vluxseg3ei8_v": { - "encoding": "010001-----------000-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x44000007", - "mask": "0xfc00707f" - }, - "vluxseg4ei8_v": { - "encoding": "011001-----------000-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x64000007", - "mask": "0xfc00707f" - }, - "vluxseg5ei8_v": { - "encoding": "100001-----------000-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x84000007", - "mask": "0xfc00707f" - }, - "vluxseg6ei8_v": { - "encoding": "101001-----------000-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xa4000007", - "mask": "0xfc00707f" - }, - "vluxseg7ei8_v": { - "encoding": "110001-----------000-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xc4000007", - "mask": "0xfc00707f" - }, - "vluxseg8ei8_v": { - "encoding": "111001-----------000-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xe4000007", - "mask": "0xfc00707f" - }, - "vluxei16_v": { - "encoding": "000001-----------101-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x4005007", - "mask": "0xfc00707f" - }, - "vluxseg2ei16_v": { - "encoding": "001001-----------101-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x24005007", - "mask": "0xfc00707f" - }, - "vluxseg3ei16_v": { - "encoding": "010001-----------101-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x44005007", - "mask": "0xfc00707f" - }, - "vluxseg4ei16_v": { - "encoding": "011001-----------101-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x64005007", - "mask": "0xfc00707f" - }, - "vluxseg5ei16_v": { - "encoding": "100001-----------101-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x84005007", - "mask": "0xfc00707f" - }, - "vluxseg6ei16_v": { - "encoding": "101001-----------101-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xa4005007", - "mask": "0xfc00707f" - }, - "vluxseg7ei16_v": { - "encoding": "110001-----------101-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xc4005007", - "mask": "0xfc00707f" - }, - "vluxseg8ei16_v": { - "encoding": "111001-----------101-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xe4005007", - "mask": "0xfc00707f" - }, - "vluxei32_v": { - "encoding": "000001-----------110-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x4006007", - "mask": "0xfc00707f" - }, - "vluxseg2ei32_v": { - "encoding": "001001-----------110-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x24006007", - "mask": "0xfc00707f" - }, - "vluxseg3ei32_v": { - "encoding": "010001-----------110-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x44006007", - "mask": "0xfc00707f" - }, - "vluxseg4ei32_v": { - "encoding": "011001-----------110-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x64006007", - "mask": "0xfc00707f" - }, - "vluxseg5ei32_v": { - "encoding": "100001-----------110-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x84006007", - "mask": "0xfc00707f" - }, - "vluxseg6ei32_v": { - "encoding": "101001-----------110-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xa4006007", - "mask": "0xfc00707f" - }, - "vluxseg7ei32_v": { - "encoding": "110001-----------110-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xc4006007", - "mask": "0xfc00707f" - }, - "vluxseg8ei32_v": { - "encoding": "111001-----------110-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xe4006007", - "mask": "0xfc00707f" - }, - "vluxei64_v": { - "encoding": "000001-----------111-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x4007007", - "mask": "0xfc00707f" - }, - "vluxseg2ei64_v": { - "encoding": "001001-----------111-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x24007007", - "mask": "0xfc00707f" - }, - "vluxseg3ei64_v": { - "encoding": "010001-----------111-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x44007007", - "mask": "0xfc00707f" - }, - "vluxseg4ei64_v": { - "encoding": "011001-----------111-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x64007007", - "mask": "0xfc00707f" - }, - "vluxseg5ei64_v": { - "encoding": "100001-----------111-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x84007007", - "mask": "0xfc00707f" - }, - "vluxseg6ei64_v": { - "encoding": "101001-----------111-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xa4007007", - "mask": "0xfc00707f" - }, - "vluxseg7ei64_v": { - "encoding": "110001-----------111-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xc4007007", - "mask": "0xfc00707f" - }, - "vluxseg8ei64_v": { - "encoding": "111001-----------111-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xe4007007", - "mask": "0xfc00707f" - }, - "vsuxei8_v": { - "encoding": "000001-----------000-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x4000027", - "mask": "0xfc00707f" - }, - "vsuxseg2ei8_v": { - "encoding": "001001-----------000-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x24000027", - "mask": "0xfc00707f" - }, - "vsuxseg3ei8_v": { - "encoding": "010001-----------000-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x44000027", - "mask": "0xfc00707f" - }, - "vsuxseg4ei8_v": { - "encoding": "011001-----------000-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x64000027", - "mask": "0xfc00707f" - }, - "vsuxseg5ei8_v": { - "encoding": "100001-----------000-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x84000027", - "mask": "0xfc00707f" - }, - "vsuxseg6ei8_v": { - "encoding": "101001-----------000-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xa4000027", - "mask": "0xfc00707f" - }, - "vsuxseg7ei8_v": { - "encoding": "110001-----------000-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xc4000027", - "mask": "0xfc00707f" - }, - "vsuxseg8ei8_v": { - "encoding": "111001-----------000-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xe4000027", - "mask": "0xfc00707f" - }, - "vsuxei16_v": { - "encoding": "000001-----------101-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x4005027", - "mask": "0xfc00707f" - }, - "vsuxseg2ei16_v": { - "encoding": "001001-----------101-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x24005027", - "mask": "0xfc00707f" - }, - "vsuxseg3ei16_v": { - "encoding": "010001-----------101-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x44005027", - "mask": "0xfc00707f" - }, - "vsuxseg4ei16_v": { - "encoding": "011001-----------101-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x64005027", - "mask": "0xfc00707f" - }, - "vsuxseg5ei16_v": { - "encoding": "100001-----------101-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x84005027", - "mask": "0xfc00707f" - }, - "vsuxseg6ei16_v": { - "encoding": "101001-----------101-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xa4005027", - "mask": "0xfc00707f" - }, - "vsuxseg7ei16_v": { - "encoding": "110001-----------101-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xc4005027", - "mask": "0xfc00707f" - }, - "vsuxseg8ei16_v": { - "encoding": "111001-----------101-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xe4005027", - "mask": "0xfc00707f" - }, - "vsuxei32_v": { - "encoding": "000001-----------110-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x4006027", - "mask": "0xfc00707f" - }, - "vsuxseg2ei32_v": { - "encoding": "001001-----------110-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x24006027", - "mask": "0xfc00707f" - }, - "vsuxseg3ei32_v": { - "encoding": "010001-----------110-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x44006027", - "mask": "0xfc00707f" - }, - "vsuxseg4ei32_v": { - "encoding": "011001-----------110-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x64006027", - "mask": "0xfc00707f" - }, - "vsuxseg5ei32_v": { - "encoding": "100001-----------110-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x84006027", - "mask": "0xfc00707f" - }, - "vsuxseg6ei32_v": { - "encoding": "101001-----------110-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xa4006027", - "mask": "0xfc00707f" - }, - "vsuxseg7ei32_v": { - "encoding": "110001-----------110-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xc4006027", - "mask": "0xfc00707f" - }, - "vsuxseg8ei32_v": { - "encoding": "111001-----------110-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xe4006027", - "mask": "0xfc00707f" - }, - "vsuxei64_v": { - "encoding": "000001-----------111-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x4007027", - "mask": "0xfc00707f" - }, - "vsuxseg2ei64_v": { - "encoding": "001001-----------111-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x24007027", - "mask": "0xfc00707f" - }, - "vsuxseg3ei64_v": { - "encoding": "010001-----------111-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x44007027", - "mask": "0xfc00707f" - }, - "vsuxseg4ei64_v": { - "encoding": "011001-----------111-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x64007027", - "mask": "0xfc00707f" - }, - "vsuxseg5ei64_v": { - "encoding": "100001-----------111-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x84007027", - "mask": "0xfc00707f" - }, - "vsuxseg6ei64_v": { - "encoding": "101001-----------111-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xa4007027", - "mask": "0xfc00707f" - }, - "vsuxseg7ei64_v": { - "encoding": "110001-----------111-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xc4007027", - "mask": "0xfc00707f" - }, - "vsuxseg8ei64_v": { - "encoding": "111001-----------111-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xe4007027", - "mask": "0xfc00707f" - }, - "vlse8_v": { - "encoding": "000010-----------000-----0000111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x8000007", - "mask": "0xfc00707f" - }, - "vlsseg2e8_v": { - "encoding": "001010-----------000-----0000111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x28000007", - "mask": "0xfc00707f" - }, - "vlsseg3e8_v": { - "encoding": "010010-----------000-----0000111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x48000007", - "mask": "0xfc00707f" - }, - "vlsseg4e8_v": { - "encoding": "011010-----------000-----0000111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x68000007", - "mask": "0xfc00707f" - }, - "vlsseg5e8_v": { - "encoding": "100010-----------000-----0000111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x88000007", - "mask": "0xfc00707f" - }, - "vlsseg6e8_v": { - "encoding": "101010-----------000-----0000111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xa8000007", - "mask": "0xfc00707f" - }, - "vlsseg7e8_v": { - "encoding": "110010-----------000-----0000111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xc8000007", - "mask": "0xfc00707f" - }, - "vlsseg8e8_v": { - "encoding": "111010-----------000-----0000111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xe8000007", - "mask": "0xfc00707f" - }, - "vlse16_v": { - "encoding": "000010-----------101-----0000111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x8005007", - "mask": "0xfc00707f" - }, - "vlsseg2e16_v": { - "encoding": "001010-----------101-----0000111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x28005007", - "mask": "0xfc00707f" - }, - "vlsseg3e16_v": { - "encoding": "010010-----------101-----0000111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x48005007", - "mask": "0xfc00707f" - }, - "vlsseg4e16_v": { - "encoding": "011010-----------101-----0000111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x68005007", - "mask": "0xfc00707f" - }, - "vlsseg5e16_v": { - "encoding": "100010-----------101-----0000111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x88005007", - "mask": "0xfc00707f" - }, - "vlsseg6e16_v": { - "encoding": "101010-----------101-----0000111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xa8005007", - "mask": "0xfc00707f" - }, - "vlsseg7e16_v": { - "encoding": "110010-----------101-----0000111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xc8005007", - "mask": "0xfc00707f" - }, - "vlsseg8e16_v": { - "encoding": "111010-----------101-----0000111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xe8005007", - "mask": "0xfc00707f" - }, - "vlse32_v": { - "encoding": "000010-----------110-----0000111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x8006007", - "mask": "0xfc00707f" - }, - "vlsseg2e32_v": { - "encoding": "001010-----------110-----0000111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x28006007", - "mask": "0xfc00707f" - }, - "vlsseg3e32_v": { - "encoding": "010010-----------110-----0000111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x48006007", - "mask": "0xfc00707f" - }, - "vlsseg4e32_v": { - "encoding": "011010-----------110-----0000111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x68006007", - "mask": "0xfc00707f" - }, - "vlsseg5e32_v": { - "encoding": "100010-----------110-----0000111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x88006007", - "mask": "0xfc00707f" - }, - "vlsseg6e32_v": { - "encoding": "101010-----------110-----0000111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xa8006007", - "mask": "0xfc00707f" - }, - "vlsseg7e32_v": { - "encoding": "110010-----------110-----0000111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xc8006007", - "mask": "0xfc00707f" - }, - "vlsseg8e32_v": { - "encoding": "111010-----------110-----0000111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xe8006007", - "mask": "0xfc00707f" - }, - "vlse64_v": { - "encoding": "000010-----------111-----0000111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x8007007", - "mask": "0xfc00707f" - }, - "vlsseg2e64_v": { - "encoding": "001010-----------111-----0000111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x28007007", - "mask": "0xfc00707f" - }, - "vlsseg3e64_v": { - "encoding": "010010-----------111-----0000111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x48007007", - "mask": "0xfc00707f" - }, - "vlsseg4e64_v": { - "encoding": "011010-----------111-----0000111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x68007007", - "mask": "0xfc00707f" - }, - "vlsseg5e64_v": { - "encoding": "100010-----------111-----0000111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x88007007", - "mask": "0xfc00707f" - }, - "vlsseg6e64_v": { - "encoding": "101010-----------111-----0000111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xa8007007", - "mask": "0xfc00707f" - }, - "vlsseg7e64_v": { - "encoding": "110010-----------111-----0000111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xc8007007", - "mask": "0xfc00707f" - }, - "vlsseg8e64_v": { - "encoding": "111010-----------111-----0000111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xe8007007", - "mask": "0xfc00707f" - }, - "vsse8_v": { - "encoding": "000010-----------000-----0100111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x8000027", - "mask": "0xfc00707f" - }, - "vssseg2e8_v": { - "encoding": "001010-----------000-----0100111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x28000027", - "mask": "0xfc00707f" - }, - "vssseg3e8_v": { - "encoding": "010010-----------000-----0100111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x48000027", - "mask": "0xfc00707f" - }, - "vssseg4e8_v": { - "encoding": "011010-----------000-----0100111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x68000027", - "mask": "0xfc00707f" - }, - "vssseg5e8_v": { - "encoding": "100010-----------000-----0100111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x88000027", - "mask": "0xfc00707f" - }, - "vssseg6e8_v": { - "encoding": "101010-----------000-----0100111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xa8000027", - "mask": "0xfc00707f" - }, - "vssseg7e8_v": { - "encoding": "110010-----------000-----0100111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xc8000027", - "mask": "0xfc00707f" - }, - "vssseg8e8_v": { - "encoding": "111010-----------000-----0100111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xe8000027", - "mask": "0xfc00707f" - }, - "vsse16_v": { - "encoding": "000010-----------101-----0100111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x8005027", - "mask": "0xfc00707f" - }, - "vssseg2e16_v": { - "encoding": "001010-----------101-----0100111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x28005027", - "mask": "0xfc00707f" - }, - "vssseg3e16_v": { - "encoding": "010010-----------101-----0100111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x48005027", - "mask": "0xfc00707f" - }, - "vssseg4e16_v": { - "encoding": "011010-----------101-----0100111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x68005027", - "mask": "0xfc00707f" - }, - "vssseg5e16_v": { - "encoding": "100010-----------101-----0100111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x88005027", - "mask": "0xfc00707f" - }, - "vssseg6e16_v": { - "encoding": "101010-----------101-----0100111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xa8005027", - "mask": "0xfc00707f" - }, - "vssseg7e16_v": { - "encoding": "110010-----------101-----0100111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xc8005027", - "mask": "0xfc00707f" - }, - "vssseg8e16_v": { - "encoding": "111010-----------101-----0100111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xe8005027", - "mask": "0xfc00707f" - }, - "vsse32_v": { - "encoding": "000010-----------110-----0100111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x8006027", - "mask": "0xfc00707f" - }, - "vssseg2e32_v": { - "encoding": "001010-----------110-----0100111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x28006027", - "mask": "0xfc00707f" - }, - "vssseg3e32_v": { - "encoding": "010010-----------110-----0100111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x48006027", - "mask": "0xfc00707f" - }, - "vssseg4e32_v": { - "encoding": "011010-----------110-----0100111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x68006027", - "mask": "0xfc00707f" - }, - "vssseg5e32_v": { - "encoding": "100010-----------110-----0100111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x88006027", - "mask": "0xfc00707f" - }, - "vssseg6e32_v": { - "encoding": "101010-----------110-----0100111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xa8006027", - "mask": "0xfc00707f" - }, - "vssseg7e32_v": { - "encoding": "110010-----------110-----0100111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xc8006027", - "mask": "0xfc00707f" - }, - "vssseg8e32_v": { - "encoding": "111010-----------110-----0100111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xe8006027", - "mask": "0xfc00707f" - }, - "vsse64_v": { - "encoding": "000010-----------111-----0100111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x8007027", - "mask": "0xfc00707f" - }, - "vssseg2e64_v": { - "encoding": "001010-----------111-----0100111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x28007027", - "mask": "0xfc00707f" - }, - "vssseg3e64_v": { - "encoding": "010010-----------111-----0100111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x48007027", - "mask": "0xfc00707f" - }, - "vssseg4e64_v": { - "encoding": "011010-----------111-----0100111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x68007027", - "mask": "0xfc00707f" - }, - "vssseg5e64_v": { - "encoding": "100010-----------111-----0100111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x88007027", - "mask": "0xfc00707f" - }, - "vssseg6e64_v": { - "encoding": "101010-----------111-----0100111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xa8007027", - "mask": "0xfc00707f" - }, - "vssseg7e64_v": { - "encoding": "110010-----------111-----0100111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xc8007027", - "mask": "0xfc00707f" - }, - "vssseg8e64_v": { - "encoding": "111010-----------111-----0100111", - "variable_fields": [ - "vm", - "rs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xe8007027", - "mask": "0xfc00707f" - }, - "vloxei8_v": { - "encoding": "000011-----------000-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xc000007", - "mask": "0xfc00707f" - }, - "vloxseg2ei8_v": { - "encoding": "001011-----------000-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x2c000007", - "mask": "0xfc00707f" - }, - "vloxseg3ei8_v": { - "encoding": "010011-----------000-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x4c000007", - "mask": "0xfc00707f" - }, - "vloxseg4ei8_v": { - "encoding": "011011-----------000-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x6c000007", - "mask": "0xfc00707f" - }, - "vloxseg5ei8_v": { - "encoding": "100011-----------000-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x8c000007", - "mask": "0xfc00707f" - }, - "vloxseg6ei8_v": { - "encoding": "101011-----------000-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xac000007", - "mask": "0xfc00707f" - }, - "vloxseg7ei8_v": { - "encoding": "110011-----------000-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xcc000007", - "mask": "0xfc00707f" - }, - "vloxseg8ei8_v": { - "encoding": "111011-----------000-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xec000007", - "mask": "0xfc00707f" - }, - "vloxei16_v": { - "encoding": "000011-----------101-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xc005007", - "mask": "0xfc00707f" - }, - "vloxseg2ei16_v": { - "encoding": "001011-----------101-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x2c005007", - "mask": "0xfc00707f" - }, - "vloxseg3ei16_v": { - "encoding": "010011-----------101-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x4c005007", - "mask": "0xfc00707f" - }, - "vloxseg4ei16_v": { - "encoding": "011011-----------101-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x6c005007", - "mask": "0xfc00707f" - }, - "vloxseg5ei16_v": { - "encoding": "100011-----------101-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x8c005007", - "mask": "0xfc00707f" - }, - "vloxseg6ei16_v": { - "encoding": "101011-----------101-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xac005007", - "mask": "0xfc00707f" - }, - "vloxseg7ei16_v": { - "encoding": "110011-----------101-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xcc005007", - "mask": "0xfc00707f" - }, - "vloxseg8ei16_v": { - "encoding": "111011-----------101-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xec005007", - "mask": "0xfc00707f" - }, - "vloxei32_v": { - "encoding": "000011-----------110-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xc006007", - "mask": "0xfc00707f" - }, - "vloxseg2ei32_v": { - "encoding": "001011-----------110-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x2c006007", - "mask": "0xfc00707f" - }, - "vloxseg3ei32_v": { - "encoding": "010011-----------110-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x4c006007", - "mask": "0xfc00707f" - }, - "vloxseg4ei32_v": { - "encoding": "011011-----------110-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x6c006007", - "mask": "0xfc00707f" - }, - "vloxseg5ei32_v": { - "encoding": "100011-----------110-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x8c006007", - "mask": "0xfc00707f" - }, - "vloxseg6ei32_v": { - "encoding": "101011-----------110-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xac006007", - "mask": "0xfc00707f" - }, - "vloxseg7ei32_v": { - "encoding": "110011-----------110-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xcc006007", - "mask": "0xfc00707f" - }, - "vloxseg8ei32_v": { - "encoding": "111011-----------110-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xec006007", - "mask": "0xfc00707f" - }, - "vloxei64_v": { - "encoding": "000011-----------111-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xc007007", - "mask": "0xfc00707f" - }, - "vloxseg2ei64_v": { - "encoding": "001011-----------111-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x2c007007", - "mask": "0xfc00707f" - }, - "vloxseg3ei64_v": { - "encoding": "010011-----------111-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x4c007007", - "mask": "0xfc00707f" - }, - "vloxseg4ei64_v": { - "encoding": "011011-----------111-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x6c007007", - "mask": "0xfc00707f" - }, - "vloxseg5ei64_v": { - "encoding": "100011-----------111-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x8c007007", - "mask": "0xfc00707f" - }, - "vloxseg6ei64_v": { - "encoding": "101011-----------111-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xac007007", - "mask": "0xfc00707f" - }, - "vloxseg7ei64_v": { - "encoding": "110011-----------111-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xcc007007", - "mask": "0xfc00707f" - }, - "vloxseg8ei64_v": { - "encoding": "111011-----------111-----0000111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xec007007", - "mask": "0xfc00707f" - }, - "vsoxei8_v": { - "encoding": "000011-----------000-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xc000027", - "mask": "0xfc00707f" - }, - "vsoxseg2ei8_v": { - "encoding": "001011-----------000-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x2c000027", - "mask": "0xfc00707f" - }, - "vsoxseg3ei8_v": { - "encoding": "010011-----------000-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x4c000027", - "mask": "0xfc00707f" - }, - "vsoxseg4ei8_v": { - "encoding": "011011-----------000-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x6c000027", - "mask": "0xfc00707f" - }, - "vsoxseg5ei8_v": { - "encoding": "100011-----------000-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x8c000027", - "mask": "0xfc00707f" - }, - "vsoxseg6ei8_v": { - "encoding": "101011-----------000-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xac000027", - "mask": "0xfc00707f" - }, - "vsoxseg7ei8_v": { - "encoding": "110011-----------000-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xcc000027", - "mask": "0xfc00707f" - }, - "vsoxseg8ei8_v": { - "encoding": "111011-----------000-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xec000027", - "mask": "0xfc00707f" - }, - "vsoxei16_v": { - "encoding": "000011-----------101-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xc005027", - "mask": "0xfc00707f" - }, - "vsoxseg2ei16_v": { - "encoding": "001011-----------101-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x2c005027", - "mask": "0xfc00707f" - }, - "vsoxseg3ei16_v": { - "encoding": "010011-----------101-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x4c005027", - "mask": "0xfc00707f" - }, - "vsoxseg4ei16_v": { - "encoding": "011011-----------101-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x6c005027", - "mask": "0xfc00707f" - }, - "vsoxseg5ei16_v": { - "encoding": "100011-----------101-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x8c005027", - "mask": "0xfc00707f" - }, - "vsoxseg6ei16_v": { - "encoding": "101011-----------101-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xac005027", - "mask": "0xfc00707f" - }, - "vsoxseg7ei16_v": { - "encoding": "110011-----------101-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xcc005027", - "mask": "0xfc00707f" - }, - "vsoxseg8ei16_v": { - "encoding": "111011-----------101-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xec005027", - "mask": "0xfc00707f" - }, - "vsoxei32_v": { - "encoding": "000011-----------110-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xc006027", - "mask": "0xfc00707f" - }, - "vsoxseg2ei32_v": { - "encoding": "001011-----------110-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x2c006027", - "mask": "0xfc00707f" - }, - "vsoxseg3ei32_v": { - "encoding": "010011-----------110-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x4c006027", - "mask": "0xfc00707f" - }, - "vsoxseg4ei32_v": { - "encoding": "011011-----------110-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x6c006027", - "mask": "0xfc00707f" - }, - "vsoxseg5ei32_v": { - "encoding": "100011-----------110-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x8c006027", - "mask": "0xfc00707f" - }, - "vsoxseg6ei32_v": { - "encoding": "101011-----------110-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xac006027", - "mask": "0xfc00707f" - }, - "vsoxseg7ei32_v": { - "encoding": "110011-----------110-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xcc006027", - "mask": "0xfc00707f" - }, - "vsoxseg8ei32_v": { - "encoding": "111011-----------110-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xec006027", - "mask": "0xfc00707f" - }, - "vsoxei64_v": { - "encoding": "000011-----------111-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xc007027", - "mask": "0xfc00707f" - }, - "vsoxseg2ei64_v": { - "encoding": "001011-----------111-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x2c007027", - "mask": "0xfc00707f" - }, - "vsoxseg3ei64_v": { - "encoding": "010011-----------111-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x4c007027", - "mask": "0xfc00707f" - }, - "vsoxseg4ei64_v": { - "encoding": "011011-----------111-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x6c007027", - "mask": "0xfc00707f" - }, - "vsoxseg5ei64_v": { - "encoding": "100011-----------111-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x8c007027", - "mask": "0xfc00707f" - }, - "vsoxseg6ei64_v": { - "encoding": "101011-----------111-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xac007027", - "mask": "0xfc00707f" - }, - "vsoxseg7ei64_v": { - "encoding": "110011-----------111-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xcc007027", - "mask": "0xfc00707f" - }, - "vsoxseg8ei64_v": { - "encoding": "111011-----------111-----0100111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xec007027", - "mask": "0xfc00707f" - }, - "vle8ff_v": { - "encoding": "000000-10000-----000-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x1000007", - "mask": "0xfdf0707f" - }, - "vlseg2e8ff_v": { - "encoding": "001000-10000-----000-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x21000007", - "mask": "0xfdf0707f" - }, - "vlseg3e8ff_v": { - "encoding": "010000-10000-----000-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x41000007", - "mask": "0xfdf0707f" - }, - "vlseg4e8ff_v": { - "encoding": "011000-10000-----000-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x61000007", - "mask": "0xfdf0707f" - }, - "vlseg5e8ff_v": { - "encoding": "100000-10000-----000-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x81000007", - "mask": "0xfdf0707f" - }, - "vlseg6e8ff_v": { - "encoding": "101000-10000-----000-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xa1000007", - "mask": "0xfdf0707f" - }, - "vlseg7e8ff_v": { - "encoding": "110000-10000-----000-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xc1000007", - "mask": "0xfdf0707f" - }, - "vlseg8e8ff_v": { - "encoding": "111000-10000-----000-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xe1000007", - "mask": "0xfdf0707f" - }, - "vle16ff_v": { - "encoding": "000000-10000-----101-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x1005007", - "mask": "0xfdf0707f" - }, - "vlseg2e16ff_v": { - "encoding": "001000-10000-----101-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x21005007", - "mask": "0xfdf0707f" - }, - "vlseg3e16ff_v": { - "encoding": "010000-10000-----101-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x41005007", - "mask": "0xfdf0707f" - }, - "vlseg4e16ff_v": { - "encoding": "011000-10000-----101-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x61005007", - "mask": "0xfdf0707f" - }, - "vlseg5e16ff_v": { - "encoding": "100000-10000-----101-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x81005007", - "mask": "0xfdf0707f" - }, - "vlseg6e16ff_v": { - "encoding": "101000-10000-----101-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xa1005007", - "mask": "0xfdf0707f" - }, - "vlseg7e16ff_v": { - "encoding": "110000-10000-----101-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xc1005007", - "mask": "0xfdf0707f" - }, - "vlseg8e16ff_v": { - "encoding": "111000-10000-----101-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xe1005007", - "mask": "0xfdf0707f" - }, - "vle32ff_v": { - "encoding": "000000-10000-----110-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x1006007", - "mask": "0xfdf0707f" - }, - "vlseg2e32ff_v": { - "encoding": "001000-10000-----110-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x21006007", - "mask": "0xfdf0707f" - }, - "vlseg3e32ff_v": { - "encoding": "010000-10000-----110-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x41006007", - "mask": "0xfdf0707f" - }, - "vlseg4e32ff_v": { - "encoding": "011000-10000-----110-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x61006007", - "mask": "0xfdf0707f" - }, - "vlseg5e32ff_v": { - "encoding": "100000-10000-----110-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x81006007", - "mask": "0xfdf0707f" - }, - "vlseg6e32ff_v": { - "encoding": "101000-10000-----110-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xa1006007", - "mask": "0xfdf0707f" - }, - "vlseg7e32ff_v": { - "encoding": "110000-10000-----110-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xc1006007", - "mask": "0xfdf0707f" - }, - "vlseg8e32ff_v": { - "encoding": "111000-10000-----110-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xe1006007", - "mask": "0xfdf0707f" - }, - "vle64ff_v": { - "encoding": "000000-10000-----111-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x1007007", - "mask": "0xfdf0707f" - }, - "vlseg2e64ff_v": { - "encoding": "001000-10000-----111-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x21007007", - "mask": "0xfdf0707f" - }, - "vlseg3e64ff_v": { - "encoding": "010000-10000-----111-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x41007007", - "mask": "0xfdf0707f" - }, - "vlseg4e64ff_v": { - "encoding": "011000-10000-----111-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x61007007", - "mask": "0xfdf0707f" - }, - "vlseg5e64ff_v": { - "encoding": "100000-10000-----111-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x81007007", - "mask": "0xfdf0707f" - }, - "vlseg6e64ff_v": { - "encoding": "101000-10000-----111-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xa1007007", - "mask": "0xfdf0707f" - }, - "vlseg7e64ff_v": { - "encoding": "110000-10000-----111-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xc1007007", - "mask": "0xfdf0707f" - }, - "vlseg8e64ff_v": { - "encoding": "111000-10000-----111-----0000111", - "variable_fields": [ - "vm", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xe1007007", - "mask": "0xfdf0707f" - }, - "vl1re8_v": { - "encoding": "000000101000-----000-----0000111", - "variable_fields": [ - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x2800007", - "mask": "0xfff0707f" - }, - "vl1re16_v": { - "encoding": "000000101000-----101-----0000111", - "variable_fields": [ - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x2805007", - "mask": "0xfff0707f" - }, - "vl1re32_v": { - "encoding": "000000101000-----110-----0000111", - "variable_fields": [ - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x2806007", - "mask": "0xfff0707f" - }, - "vl1re64_v": { - "encoding": "000000101000-----111-----0000111", - "variable_fields": [ - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x2807007", - "mask": "0xfff0707f" - }, - "vl2re8_v": { - "encoding": "001000101000-----000-----0000111", - "variable_fields": [ - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x22800007", - "mask": "0xfff0707f" - }, - "vl2re16_v": { - "encoding": "001000101000-----101-----0000111", - "variable_fields": [ - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x22805007", - "mask": "0xfff0707f" - }, - "vl2re32_v": { - "encoding": "001000101000-----110-----0000111", - "variable_fields": [ - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x22806007", - "mask": "0xfff0707f" - }, - "vl2re64_v": { - "encoding": "001000101000-----111-----0000111", - "variable_fields": [ - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x22807007", - "mask": "0xfff0707f" - }, - "vl4re8_v": { - "encoding": "011000101000-----000-----0000111", - "variable_fields": [ - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x62800007", - "mask": "0xfff0707f" - }, - "vl4re16_v": { - "encoding": "011000101000-----101-----0000111", - "variable_fields": [ - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x62805007", - "mask": "0xfff0707f" - }, - "vl4re32_v": { - "encoding": "011000101000-----110-----0000111", - "variable_fields": [ - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x62806007", - "mask": "0xfff0707f" - }, - "vl4re64_v": { - "encoding": "011000101000-----111-----0000111", - "variable_fields": [ - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x62807007", - "mask": "0xfff0707f" - }, - "vl8re8_v": { - "encoding": "111000101000-----000-----0000111", - "variable_fields": [ - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xe2800007", - "mask": "0xfff0707f" - }, - "vl8re16_v": { - "encoding": "111000101000-----101-----0000111", - "variable_fields": [ - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xe2805007", - "mask": "0xfff0707f" - }, - "vl8re32_v": { - "encoding": "111000101000-----110-----0000111", - "variable_fields": [ - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xe2806007", - "mask": "0xfff0707f" - }, - "vl8re64_v": { - "encoding": "111000101000-----111-----0000111", - "variable_fields": [ - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xe2807007", - "mask": "0xfff0707f" - }, - "vs1r_v": { - "encoding": "000000101000-----000-----0100111", - "variable_fields": [ - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x2800027", - "mask": "0xfff0707f" - }, - "vs2r_v": { - "encoding": "001000101000-----000-----0100111", - "variable_fields": [ - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x22800027", - "mask": "0xfff0707f" - }, - "vs4r_v": { - "encoding": "011000101000-----000-----0100111", - "variable_fields": [ - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0x62800027", - "mask": "0xfff0707f" - }, - "vs8r_v": { - "encoding": "111000101000-----000-----0100111", - "variable_fields": [ - "rs1", - "vs3" - ], - "extension": [ - "rv_v" - ], - "match": "0xe2800027", - "mask": "0xfff0707f" - }, - "vfadd_vf": { - "encoding": "000000-----------101-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x5057", - "mask": "0xfc00707f" - }, - "vfsub_vf": { - "encoding": "000010-----------101-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x8005057", - "mask": "0xfc00707f" - }, - "vfmin_vf": { - "encoding": "000100-----------101-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x10005057", - "mask": "0xfc00707f" - }, - "vfmax_vf": { - "encoding": "000110-----------101-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x18005057", - "mask": "0xfc00707f" - }, - "vfsgnj_vf": { - "encoding": "001000-----------101-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x20005057", - "mask": "0xfc00707f" - }, - "vfsgnjn_vf": { - "encoding": "001001-----------101-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x24005057", - "mask": "0xfc00707f" - }, - "vfsgnjx_vf": { - "encoding": "001010-----------101-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x28005057", - "mask": "0xfc00707f" - }, - "vfslide1up_vf": { - "encoding": "001110-----------101-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x38005057", - "mask": "0xfc00707f" - }, - "vfslide1down_vf": { - "encoding": "001111-----------101-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x3c005057", - "mask": "0xfc00707f" - }, - "vfmv_s_f": { - "encoding": "010000100000-----101-----1010111", - "variable_fields": [ - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x42005057", - "mask": "0xfff0707f" - }, - "vfmerge_vfm": { - "encoding": "0101110----------101-----1010111", - "variable_fields": [ - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x5c005057", - "mask": "0xfe00707f" - }, - "vfmv_v_f": { - "encoding": "010111100000-----101-----1010111", - "variable_fields": [ - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x5e005057", - "mask": "0xfff0707f" - }, - "vmfeq_vf": { - "encoding": "011000-----------101-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x60005057", - "mask": "0xfc00707f" - }, - "vmfle_vf": { - "encoding": "011001-----------101-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x64005057", - "mask": "0xfc00707f" - }, - "vmflt_vf": { - "encoding": "011011-----------101-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x6c005057", - "mask": "0xfc00707f" - }, - "vmfne_vf": { - "encoding": "011100-----------101-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x70005057", - "mask": "0xfc00707f" - }, - "vmfgt_vf": { - "encoding": "011101-----------101-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x74005057", - "mask": "0xfc00707f" - }, - "vmfge_vf": { - "encoding": "011111-----------101-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x7c005057", - "mask": "0xfc00707f" - }, - "vfdiv_vf": { - "encoding": "100000-----------101-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x80005057", - "mask": "0xfc00707f" - }, - "vfrdiv_vf": { - "encoding": "100001-----------101-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x84005057", - "mask": "0xfc00707f" - }, - "vfmul_vf": { - "encoding": "100100-----------101-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x90005057", - "mask": "0xfc00707f" - }, - "vfrsub_vf": { - "encoding": "100111-----------101-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x9c005057", - "mask": "0xfc00707f" - }, - "vfmadd_vf": { - "encoding": "101000-----------101-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xa0005057", - "mask": "0xfc00707f" - }, - "vfnmadd_vf": { - "encoding": "101001-----------101-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xa4005057", - "mask": "0xfc00707f" - }, - "vfmsub_vf": { - "encoding": "101010-----------101-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xa8005057", - "mask": "0xfc00707f" - }, - "vfnmsub_vf": { - "encoding": "101011-----------101-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xac005057", - "mask": "0xfc00707f" - }, - "vfmacc_vf": { - "encoding": "101100-----------101-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xb0005057", - "mask": "0xfc00707f" - }, - "vfnmacc_vf": { - "encoding": "101101-----------101-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xb4005057", - "mask": "0xfc00707f" - }, - "vfmsac_vf": { - "encoding": "101110-----------101-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xb8005057", - "mask": "0xfc00707f" - }, - "vfnmsac_vf": { - "encoding": "101111-----------101-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xbc005057", - "mask": "0xfc00707f" - }, - "vfwadd_vf": { - "encoding": "110000-----------101-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xc0005057", - "mask": "0xfc00707f" - }, - "vfwsub_vf": { - "encoding": "110010-----------101-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xc8005057", - "mask": "0xfc00707f" - }, - "vfwadd_wf": { - "encoding": "110100-----------101-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xd0005057", - "mask": "0xfc00707f" - }, - "vfwsub_wf": { - "encoding": "110110-----------101-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xd8005057", - "mask": "0xfc00707f" - }, - "vfwmul_vf": { - "encoding": "111000-----------101-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xe0005057", - "mask": "0xfc00707f" - }, - "vfwmacc_vf": { - "encoding": "111100-----------101-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xf0005057", - "mask": "0xfc00707f" - }, - "vfwnmacc_vf": { - "encoding": "111101-----------101-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xf4005057", - "mask": "0xfc00707f" - }, - "vfwmsac_vf": { - "encoding": "111110-----------101-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xf8005057", - "mask": "0xfc00707f" - }, - "vfwnmsac_vf": { - "encoding": "111111-----------101-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xfc005057", - "mask": "0xfc00707f" - }, - "vfadd_vv": { - "encoding": "000000-----------001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x1057", - "mask": "0xfc00707f" - }, - "vfredusum_vs": { - "encoding": "000001-----------001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x4001057", - "mask": "0xfc00707f" - }, - "vfsub_vv": { - "encoding": "000010-----------001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x8001057", - "mask": "0xfc00707f" - }, - "vfredosum_vs": { - "encoding": "000011-----------001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xc001057", - "mask": "0xfc00707f" - }, - "vfmin_vv": { - "encoding": "000100-----------001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x10001057", - "mask": "0xfc00707f" - }, - "vfredmin_vs": { - "encoding": "000101-----------001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x14001057", - "mask": "0xfc00707f" - }, - "vfmax_vv": { - "encoding": "000110-----------001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x18001057", - "mask": "0xfc00707f" - }, - "vfredmax_vs": { - "encoding": "000111-----------001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x1c001057", - "mask": "0xfc00707f" - }, - "vfsgnj_vv": { - "encoding": "001000-----------001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x20001057", - "mask": "0xfc00707f" - }, - "vfsgnjn_vv": { - "encoding": "001001-----------001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x24001057", - "mask": "0xfc00707f" - }, - "vfsgnjx_vv": { - "encoding": "001010-----------001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x28001057", - "mask": "0xfc00707f" - }, - "vfmv_f_s": { - "encoding": "0100001-----00000001-----1010111", - "variable_fields": [ - "vs2", - "rd" - ], - "extension": [ - "rv_v" - ], - "match": "0x42001057", - "mask": "0xfe0ff07f" - }, - "vmfeq_vv": { - "encoding": "011000-----------001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x60001057", - "mask": "0xfc00707f" - }, - "vmfle_vv": { - "encoding": "011001-----------001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x64001057", - "mask": "0xfc00707f" - }, - "vmflt_vv": { - "encoding": "011011-----------001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x6c001057", - "mask": "0xfc00707f" - }, - "vmfne_vv": { - "encoding": "011100-----------001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x70001057", - "mask": "0xfc00707f" - }, - "vfdiv_vv": { - "encoding": "100000-----------001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x80001057", - "mask": "0xfc00707f" - }, - "vfmul_vv": { - "encoding": "100100-----------001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x90001057", - "mask": "0xfc00707f" - }, - "vfmadd_vv": { - "encoding": "101000-----------001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xa0001057", - "mask": "0xfc00707f" - }, - "vfnmadd_vv": { - "encoding": "101001-----------001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xa4001057", - "mask": "0xfc00707f" - }, - "vfmsub_vv": { - "encoding": "101010-----------001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xa8001057", - "mask": "0xfc00707f" - }, - "vfnmsub_vv": { - "encoding": "101011-----------001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xac001057", - "mask": "0xfc00707f" - }, - "vfmacc_vv": { - "encoding": "101100-----------001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xb0001057", - "mask": "0xfc00707f" - }, - "vfnmacc_vv": { - "encoding": "101101-----------001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xb4001057", - "mask": "0xfc00707f" - }, - "vfmsac_vv": { - "encoding": "101110-----------001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xb8001057", - "mask": "0xfc00707f" - }, - "vfnmsac_vv": { - "encoding": "101111-----------001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xbc001057", - "mask": "0xfc00707f" - }, - "vfcvt_xu_f_v": { - "encoding": "010010------00000001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x48001057", - "mask": "0xfc0ff07f" - }, - "vfcvt_x_f_v": { - "encoding": "010010------00001001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x48009057", - "mask": "0xfc0ff07f" - }, - "vfcvt_f_xu_v": { - "encoding": "010010------00010001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x48011057", - "mask": "0xfc0ff07f" - }, - "vfcvt_f_x_v": { - "encoding": "010010------00011001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x48019057", - "mask": "0xfc0ff07f" - }, - "vfcvt_rtz_xu_f_v": { - "encoding": "010010------00110001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x48031057", - "mask": "0xfc0ff07f" - }, - "vfcvt_rtz_x_f_v": { - "encoding": "010010------00111001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x48039057", - "mask": "0xfc0ff07f" - }, - "vfwcvt_xu_f_v": { - "encoding": "010010------01000001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x48041057", - "mask": "0xfc0ff07f" - }, - "vfwcvt_x_f_v": { - "encoding": "010010------01001001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x48049057", - "mask": "0xfc0ff07f" - }, - "vfwcvt_f_xu_v": { - "encoding": "010010------01010001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x48051057", - "mask": "0xfc0ff07f" - }, - "vfwcvt_f_x_v": { - "encoding": "010010------01011001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x48059057", - "mask": "0xfc0ff07f" - }, - "vfwcvt_f_f_v": { - "encoding": "010010------01100001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x48061057", - "mask": "0xfc0ff07f" - }, - "vfwcvt_rtz_xu_f_v": { - "encoding": "010010------01110001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x48071057", - "mask": "0xfc0ff07f" - }, - "vfwcvt_rtz_x_f_v": { - "encoding": "010010------01111001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x48079057", - "mask": "0xfc0ff07f" - }, - "vfncvt_xu_f_w": { - "encoding": "010010------10000001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x48081057", - "mask": "0xfc0ff07f" - }, - "vfncvt_x_f_w": { - "encoding": "010010------10001001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x48089057", - "mask": "0xfc0ff07f" - }, - "vfncvt_f_xu_w": { - "encoding": "010010------10010001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x48091057", - "mask": "0xfc0ff07f" - }, - "vfncvt_f_x_w": { - "encoding": "010010------10011001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x48099057", - "mask": "0xfc0ff07f" - }, - "vfncvt_f_f_w": { - "encoding": "010010------10100001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x480a1057", - "mask": "0xfc0ff07f" - }, - "vfncvt_rod_f_f_w": { - "encoding": "010010------10101001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x480a9057", - "mask": "0xfc0ff07f" - }, - "vfncvt_rtz_xu_f_w": { - "encoding": "010010------10110001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x480b1057", - "mask": "0xfc0ff07f" - }, - "vfncvt_rtz_x_f_w": { - "encoding": "010010------10111001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x480b9057", - "mask": "0xfc0ff07f" - }, - "vfsqrt_v": { - "encoding": "010011------00000001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x4c001057", - "mask": "0xfc0ff07f" - }, - "vfrsqrt7_v": { - "encoding": "010011------00100001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x4c021057", - "mask": "0xfc0ff07f" - }, - "vfrec7_v": { - "encoding": "010011------00101001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x4c029057", - "mask": "0xfc0ff07f" - }, - "vfclass_v": { - "encoding": "010011------10000001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x4c081057", - "mask": "0xfc0ff07f" - }, - "vfwadd_vv": { - "encoding": "110000-----------001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xc0001057", - "mask": "0xfc00707f" - }, - "vfwredusum_vs": { - "encoding": "110001-----------001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xc4001057", - "mask": "0xfc00707f" - }, - "vfwsub_vv": { - "encoding": "110010-----------001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xc8001057", - "mask": "0xfc00707f" - }, - "vfwredosum_vs": { - "encoding": "110011-----------001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xcc001057", - "mask": "0xfc00707f" - }, - "vfwadd_wv": { - "encoding": "110100-----------001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xd0001057", - "mask": "0xfc00707f" - }, - "vfwsub_wv": { - "encoding": "110110-----------001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xd8001057", - "mask": "0xfc00707f" - }, - "vfwmul_vv": { - "encoding": "111000-----------001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xe0001057", - "mask": "0xfc00707f" - }, - "vfwmacc_vv": { - "encoding": "111100-----------001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xf0001057", - "mask": "0xfc00707f" - }, - "vfwnmacc_vv": { - "encoding": "111101-----------001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xf4001057", - "mask": "0xfc00707f" - }, - "vfwmsac_vv": { - "encoding": "111110-----------001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xf8001057", - "mask": "0xfc00707f" - }, - "vfwnmsac_vv": { - "encoding": "111111-----------001-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xfc001057", - "mask": "0xfc00707f" - }, - "vadd_vx": { - "encoding": "000000-----------100-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x4057", - "mask": "0xfc00707f" - }, - "vsub_vx": { - "encoding": "000010-----------100-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x8004057", - "mask": "0xfc00707f" - }, - "vrsub_vx": { - "encoding": "000011-----------100-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xc004057", - "mask": "0xfc00707f" - }, - "vminu_vx": { - "encoding": "000100-----------100-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x10004057", - "mask": "0xfc00707f" - }, - "vmin_vx": { - "encoding": "000101-----------100-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x14004057", - "mask": "0xfc00707f" - }, - "vmaxu_vx": { - "encoding": "000110-----------100-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x18004057", - "mask": "0xfc00707f" - }, - "vmax_vx": { - "encoding": "000111-----------100-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x1c004057", - "mask": "0xfc00707f" - }, - "vand_vx": { - "encoding": "001001-----------100-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x24004057", - "mask": "0xfc00707f" - }, - "vor_vx": { - "encoding": "001010-----------100-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x28004057", - "mask": "0xfc00707f" - }, - "vxor_vx": { - "encoding": "001011-----------100-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x2c004057", - "mask": "0xfc00707f" - }, - "vrgather_vx": { - "encoding": "001100-----------100-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x30004057", - "mask": "0xfc00707f" - }, - "vslideup_vx": { - "encoding": "001110-----------100-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x38004057", - "mask": "0xfc00707f" - }, - "vslidedown_vx": { - "encoding": "001111-----------100-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x3c004057", - "mask": "0xfc00707f" - }, - "vadc_vxm": { - "encoding": "0100000----------100-----1010111", - "variable_fields": [ - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x40004057", - "mask": "0xfe00707f" - }, - "vmadc_vxm": { - "encoding": "0100010----------100-----1010111", - "variable_fields": [ - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x44004057", - "mask": "0xfe00707f" - }, - "vmadc_vx": { - "encoding": "0100011----------100-----1010111", - "variable_fields": [ - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x46004057", - "mask": "0xfe00707f" - }, - "vsbc_vxm": { - "encoding": "0100100----------100-----1010111", - "variable_fields": [ - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x48004057", - "mask": "0xfe00707f" - }, - "vmsbc_vxm": { - "encoding": "0100110----------100-----1010111", - "variable_fields": [ - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x4c004057", - "mask": "0xfe00707f" - }, - "vmsbc_vx": { - "encoding": "0100111----------100-----1010111", - "variable_fields": [ - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x4e004057", - "mask": "0xfe00707f" - }, - "vmerge_vxm": { - "encoding": "0101110----------100-----1010111", - "variable_fields": [ - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x5c004057", - "mask": "0xfe00707f" - }, - "vmv_v_x": { - "encoding": "010111100000-----100-----1010111", - "variable_fields": [ - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x5e004057", - "mask": "0xfff0707f" - }, - "vmseq_vx": { - "encoding": "011000-----------100-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x60004057", - "mask": "0xfc00707f" - }, - "vmsne_vx": { - "encoding": "011001-----------100-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x64004057", - "mask": "0xfc00707f" - }, - "vmsltu_vx": { - "encoding": "011010-----------100-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x68004057", - "mask": "0xfc00707f" - }, - "vmslt_vx": { - "encoding": "011011-----------100-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x6c004057", - "mask": "0xfc00707f" - }, - "vmsleu_vx": { - "encoding": "011100-----------100-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x70004057", - "mask": "0xfc00707f" - }, - "vmsle_vx": { - "encoding": "011101-----------100-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x74004057", - "mask": "0xfc00707f" - }, - "vmsgtu_vx": { - "encoding": "011110-----------100-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x78004057", - "mask": "0xfc00707f" - }, - "vmsgt_vx": { - "encoding": "011111-----------100-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x7c004057", - "mask": "0xfc00707f" - }, - "vsaddu_vx": { - "encoding": "100000-----------100-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x80004057", - "mask": "0xfc00707f" - }, - "vsadd_vx": { - "encoding": "100001-----------100-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x84004057", - "mask": "0xfc00707f" - }, - "vssubu_vx": { - "encoding": "100010-----------100-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x88004057", - "mask": "0xfc00707f" - }, - "vssub_vx": { - "encoding": "100011-----------100-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x8c004057", - "mask": "0xfc00707f" - }, - "vsll_vx": { - "encoding": "100101-----------100-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x94004057", - "mask": "0xfc00707f" - }, - "vsmul_vx": { - "encoding": "100111-----------100-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x9c004057", - "mask": "0xfc00707f" - }, - "vsrl_vx": { - "encoding": "101000-----------100-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xa0004057", - "mask": "0xfc00707f" - }, - "vsra_vx": { - "encoding": "101001-----------100-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xa4004057", - "mask": "0xfc00707f" - }, - "vssrl_vx": { - "encoding": "101010-----------100-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xa8004057", - "mask": "0xfc00707f" - }, - "vssra_vx": { - "encoding": "101011-----------100-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xac004057", - "mask": "0xfc00707f" - }, - "vnsrl_wx": { - "encoding": "101100-----------100-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xb0004057", - "mask": "0xfc00707f" - }, - "vnsra_wx": { - "encoding": "101101-----------100-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xb4004057", - "mask": "0xfc00707f" - }, - "vnclipu_wx": { - "encoding": "101110-----------100-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xb8004057", - "mask": "0xfc00707f" - }, - "vnclip_wx": { - "encoding": "101111-----------100-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xbc004057", - "mask": "0xfc00707f" - }, - "vadd_vv": { - "encoding": "000000-----------000-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x57", - "mask": "0xfc00707f" - }, - "vsub_vv": { - "encoding": "000010-----------000-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x8000057", - "mask": "0xfc00707f" - }, - "vminu_vv": { - "encoding": "000100-----------000-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x10000057", - "mask": "0xfc00707f" - }, - "vmin_vv": { - "encoding": "000101-----------000-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x14000057", - "mask": "0xfc00707f" - }, - "vmaxu_vv": { - "encoding": "000110-----------000-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x18000057", - "mask": "0xfc00707f" - }, - "vmax_vv": { - "encoding": "000111-----------000-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x1c000057", - "mask": "0xfc00707f" - }, - "vand_vv": { - "encoding": "001001-----------000-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x24000057", - "mask": "0xfc00707f" - }, - "vor_vv": { - "encoding": "001010-----------000-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x28000057", - "mask": "0xfc00707f" - }, - "vxor_vv": { - "encoding": "001011-----------000-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x2c000057", - "mask": "0xfc00707f" - }, - "vrgather_vv": { - "encoding": "001100-----------000-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x30000057", - "mask": "0xfc00707f" - }, - "vrgatherei16_vv": { - "encoding": "001110-----------000-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x38000057", - "mask": "0xfc00707f" - }, - "vadc_vvm": { - "encoding": "0100000----------000-----1010111", - "variable_fields": [ - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x40000057", - "mask": "0xfe00707f" - }, - "vmadc_vvm": { - "encoding": "0100010----------000-----1010111", - "variable_fields": [ - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x44000057", - "mask": "0xfe00707f" - }, - "vmadc_vv": { - "encoding": "0100011----------000-----1010111", - "variable_fields": [ - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x46000057", - "mask": "0xfe00707f" - }, - "vsbc_vvm": { - "encoding": "0100100----------000-----1010111", - "variable_fields": [ - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x48000057", - "mask": "0xfe00707f" - }, - "vmsbc_vvm": { - "encoding": "0100110----------000-----1010111", - "variable_fields": [ - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x4c000057", - "mask": "0xfe00707f" - }, - "vmsbc_vv": { - "encoding": "0100111----------000-----1010111", - "variable_fields": [ - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x4e000057", - "mask": "0xfe00707f" - }, - "vmerge_vvm": { - "encoding": "0101110----------000-----1010111", - "variable_fields": [ - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x5c000057", - "mask": "0xfe00707f" - }, - "vmv_v_v": { - "encoding": "010111100000-----000-----1010111", - "variable_fields": [ - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x5e000057", - "mask": "0xfff0707f" - }, - "vmseq_vv": { - "encoding": "011000-----------000-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x60000057", - "mask": "0xfc00707f" - }, - "vmsne_vv": { - "encoding": "011001-----------000-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x64000057", - "mask": "0xfc00707f" - }, - "vmsltu_vv": { - "encoding": "011010-----------000-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x68000057", - "mask": "0xfc00707f" - }, - "vmslt_vv": { - "encoding": "011011-----------000-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x6c000057", - "mask": "0xfc00707f" - }, - "vmsleu_vv": { - "encoding": "011100-----------000-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x70000057", - "mask": "0xfc00707f" - }, - "vmsle_vv": { - "encoding": "011101-----------000-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x74000057", - "mask": "0xfc00707f" - }, - "vsaddu_vv": { - "encoding": "100000-----------000-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x80000057", - "mask": "0xfc00707f" - }, - "vsadd_vv": { - "encoding": "100001-----------000-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x84000057", - "mask": "0xfc00707f" - }, - "vssubu_vv": { - "encoding": "100010-----------000-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x88000057", - "mask": "0xfc00707f" - }, - "vssub_vv": { - "encoding": "100011-----------000-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x8c000057", - "mask": "0xfc00707f" - }, - "vsll_vv": { - "encoding": "100101-----------000-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x94000057", - "mask": "0xfc00707f" - }, - "vsmul_vv": { - "encoding": "100111-----------000-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x9c000057", - "mask": "0xfc00707f" - }, - "vsrl_vv": { - "encoding": "101000-----------000-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xa0000057", - "mask": "0xfc00707f" - }, - "vsra_vv": { - "encoding": "101001-----------000-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xa4000057", - "mask": "0xfc00707f" - }, - "vssrl_vv": { - "encoding": "101010-----------000-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xa8000057", - "mask": "0xfc00707f" - }, - "vssra_vv": { - "encoding": "101011-----------000-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xac000057", - "mask": "0xfc00707f" - }, - "vnsrl_wv": { - "encoding": "101100-----------000-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xb0000057", - "mask": "0xfc00707f" - }, - "vnsra_wv": { - "encoding": "101101-----------000-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xb4000057", - "mask": "0xfc00707f" - }, - "vnclipu_wv": { - "encoding": "101110-----------000-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xb8000057", - "mask": "0xfc00707f" - }, - "vnclip_wv": { - "encoding": "101111-----------000-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xbc000057", - "mask": "0xfc00707f" - }, - "vwredsumu_vs": { - "encoding": "110000-----------000-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xc0000057", - "mask": "0xfc00707f" - }, - "vwredsum_vs": { - "encoding": "110001-----------000-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xc4000057", - "mask": "0xfc00707f" - }, - "vadd_vi": { - "encoding": "000000-----------011-----1010111", - "variable_fields": [ - "vm", - "vs2", - "simm5", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x3057", - "mask": "0xfc00707f" - }, - "vrsub_vi": { - "encoding": "000011-----------011-----1010111", - "variable_fields": [ - "vm", - "vs2", - "simm5", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xc003057", - "mask": "0xfc00707f" - }, - "vand_vi": { - "encoding": "001001-----------011-----1010111", - "variable_fields": [ - "vm", - "vs2", - "simm5", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x24003057", - "mask": "0xfc00707f" - }, - "vor_vi": { - "encoding": "001010-----------011-----1010111", - "variable_fields": [ - "vm", - "vs2", - "simm5", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x28003057", - "mask": "0xfc00707f" - }, - "vxor_vi": { - "encoding": "001011-----------011-----1010111", - "variable_fields": [ - "vm", - "vs2", - "simm5", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x2c003057", - "mask": "0xfc00707f" - }, - "vrgather_vi": { - "encoding": "001100-----------011-----1010111", - "variable_fields": [ - "vm", - "vs2", - "simm5", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x30003057", - "mask": "0xfc00707f" - }, - "vslideup_vi": { - "encoding": "001110-----------011-----1010111", - "variable_fields": [ - "vm", - "vs2", - "simm5", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x38003057", - "mask": "0xfc00707f" - }, - "vslidedown_vi": { - "encoding": "001111-----------011-----1010111", - "variable_fields": [ - "vm", - "vs2", - "simm5", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x3c003057", - "mask": "0xfc00707f" - }, - "vadc_vim": { - "encoding": "0100000----------011-----1010111", - "variable_fields": [ - "vs2", - "simm5", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x40003057", - "mask": "0xfe00707f" - }, - "vmadc_vim": { - "encoding": "0100010----------011-----1010111", - "variable_fields": [ - "vs2", - "simm5", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x44003057", - "mask": "0xfe00707f" - }, - "vmadc_vi": { - "encoding": "0100011----------011-----1010111", - "variable_fields": [ - "vs2", - "simm5", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x46003057", - "mask": "0xfe00707f" - }, - "vmerge_vim": { - "encoding": "0101110----------011-----1010111", - "variable_fields": [ - "vs2", - "simm5", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x5c003057", - "mask": "0xfe00707f" - }, - "vmv_v_i": { - "encoding": "010111100000-----011-----1010111", - "variable_fields": [ - "simm5", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x5e003057", - "mask": "0xfff0707f" - }, - "vmseq_vi": { - "encoding": "011000-----------011-----1010111", - "variable_fields": [ - "vm", - "vs2", - "simm5", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x60003057", - "mask": "0xfc00707f" - }, - "vmsne_vi": { - "encoding": "011001-----------011-----1010111", - "variable_fields": [ - "vm", - "vs2", - "simm5", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x64003057", - "mask": "0xfc00707f" - }, - "vmsleu_vi": { - "encoding": "011100-----------011-----1010111", - "variable_fields": [ - "vm", - "vs2", - "simm5", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x70003057", - "mask": "0xfc00707f" - }, - "vmsle_vi": { - "encoding": "011101-----------011-----1010111", - "variable_fields": [ - "vm", - "vs2", - "simm5", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x74003057", - "mask": "0xfc00707f" - }, - "vmsgtu_vi": { - "encoding": "011110-----------011-----1010111", - "variable_fields": [ - "vm", - "vs2", - "simm5", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x78003057", - "mask": "0xfc00707f" - }, - "vmsgt_vi": { - "encoding": "011111-----------011-----1010111", - "variable_fields": [ - "vm", - "vs2", - "simm5", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x7c003057", - "mask": "0xfc00707f" - }, - "vsaddu_vi": { - "encoding": "100000-----------011-----1010111", - "variable_fields": [ - "vm", - "vs2", - "simm5", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x80003057", - "mask": "0xfc00707f" - }, - "vsadd_vi": { - "encoding": "100001-----------011-----1010111", - "variable_fields": [ - "vm", - "vs2", - "simm5", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x84003057", - "mask": "0xfc00707f" - }, - "vsll_vi": { - "encoding": "100101-----------011-----1010111", - "variable_fields": [ - "vm", - "vs2", - "simm5", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x94003057", - "mask": "0xfc00707f" - }, - "vmv1r_v": { - "encoding": "1001111-----00000011-----1010111", - "variable_fields": [ - "vs2", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x9e003057", - "mask": "0xfe0ff07f" - }, - "vmv2r_v": { - "encoding": "1001111-----00001011-----1010111", - "variable_fields": [ - "vs2", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x9e00b057", - "mask": "0xfe0ff07f" - }, - "vmv4r_v": { - "encoding": "1001111-----00011011-----1010111", - "variable_fields": [ - "vs2", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x9e01b057", - "mask": "0xfe0ff07f" - }, - "vmv8r_v": { - "encoding": "1001111-----00111011-----1010111", - "variable_fields": [ - "vs2", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x9e03b057", - "mask": "0xfe0ff07f" - }, - "vsrl_vi": { - "encoding": "101000-----------011-----1010111", - "variable_fields": [ - "vm", - "vs2", - "simm5", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xa0003057", - "mask": "0xfc00707f" - }, - "vsra_vi": { - "encoding": "101001-----------011-----1010111", - "variable_fields": [ - "vm", - "vs2", - "simm5", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xa4003057", - "mask": "0xfc00707f" - }, - "vssrl_vi": { - "encoding": "101010-----------011-----1010111", - "variable_fields": [ - "vm", - "vs2", - "simm5", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xa8003057", - "mask": "0xfc00707f" - }, - "vssra_vi": { - "encoding": "101011-----------011-----1010111", - "variable_fields": [ - "vm", - "vs2", - "simm5", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xac003057", - "mask": "0xfc00707f" - }, - "vnsrl_wi": { - "encoding": "101100-----------011-----1010111", - "variable_fields": [ - "vm", - "vs2", - "simm5", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xb0003057", - "mask": "0xfc00707f" - }, - "vnsra_wi": { - "encoding": "101101-----------011-----1010111", - "variable_fields": [ - "vm", - "vs2", - "simm5", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xb4003057", - "mask": "0xfc00707f" - }, - "vnclipu_wi": { - "encoding": "101110-----------011-----1010111", - "variable_fields": [ - "vm", - "vs2", - "simm5", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xb8003057", - "mask": "0xfc00707f" - }, - "vnclip_wi": { - "encoding": "101111-----------011-----1010111", - "variable_fields": [ - "vm", - "vs2", - "simm5", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xbc003057", - "mask": "0xfc00707f" - }, - "vredsum_vs": { - "encoding": "000000-----------010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x2057", - "mask": "0xfc00707f" - }, - "vredand_vs": { - "encoding": "000001-----------010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x4002057", - "mask": "0xfc00707f" - }, - "vredor_vs": { - "encoding": "000010-----------010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x8002057", - "mask": "0xfc00707f" - }, - "vredxor_vs": { - "encoding": "000011-----------010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xc002057", - "mask": "0xfc00707f" - }, - "vredminu_vs": { - "encoding": "000100-----------010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x10002057", - "mask": "0xfc00707f" - }, - "vredmin_vs": { - "encoding": "000101-----------010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x14002057", - "mask": "0xfc00707f" - }, - "vredmaxu_vs": { - "encoding": "000110-----------010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x18002057", - "mask": "0xfc00707f" - }, - "vredmax_vs": { - "encoding": "000111-----------010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x1c002057", - "mask": "0xfc00707f" - }, - "vaaddu_vv": { - "encoding": "001000-----------010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x20002057", - "mask": "0xfc00707f" - }, - "vaadd_vv": { - "encoding": "001001-----------010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x24002057", - "mask": "0xfc00707f" - }, - "vasubu_vv": { - "encoding": "001010-----------010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x28002057", - "mask": "0xfc00707f" - }, - "vasub_vv": { - "encoding": "001011-----------010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x2c002057", - "mask": "0xfc00707f" - }, - "vmv_x_s": { - "encoding": "0100001-----00000010-----1010111", - "variable_fields": [ - "vs2", - "rd" - ], - "extension": [ - "rv_v" - ], - "match": "0x42002057", - "mask": "0xfe0ff07f" - }, - "vzext_vf8": { - "encoding": "010010------00010010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x48012057", - "mask": "0xfc0ff07f" - }, - "vsext_vf8": { - "encoding": "010010------00011010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x4801a057", - "mask": "0xfc0ff07f" - }, - "vzext_vf4": { - "encoding": "010010------00100010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x48022057", - "mask": "0xfc0ff07f" - }, - "vsext_vf4": { - "encoding": "010010------00101010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x4802a057", - "mask": "0xfc0ff07f" - }, - "vzext_vf2": { - "encoding": "010010------00110010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x48032057", - "mask": "0xfc0ff07f" - }, - "vsext_vf2": { - "encoding": "010010------00111010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x4803a057", - "mask": "0xfc0ff07f" - }, - "vcompress_vm": { - "encoding": "0101111----------010-----1010111", - "variable_fields": [ - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x5e002057", - "mask": "0xfe00707f" - }, - "vmandn_mm": { - "encoding": "0110001----------010-----1010111", - "variable_fields": [ - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x62002057", - "mask": "0xfe00707f" - }, - "vmand_mm": { - "encoding": "0110011----------010-----1010111", - "variable_fields": [ - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x66002057", - "mask": "0xfe00707f" - }, - "vmor_mm": { - "encoding": "0110101----------010-----1010111", - "variable_fields": [ - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x6a002057", - "mask": "0xfe00707f" - }, - "vmxor_mm": { - "encoding": "0110111----------010-----1010111", - "variable_fields": [ - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x6e002057", - "mask": "0xfe00707f" - }, - "vmorn_mm": { - "encoding": "0111001----------010-----1010111", - "variable_fields": [ - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x72002057", - "mask": "0xfe00707f" - }, - "vmnand_mm": { - "encoding": "0111011----------010-----1010111", - "variable_fields": [ - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x76002057", - "mask": "0xfe00707f" - }, - "vmnor_mm": { - "encoding": "0111101----------010-----1010111", - "variable_fields": [ - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x7a002057", - "mask": "0xfe00707f" - }, - "vmxnor_mm": { - "encoding": "0111111----------010-----1010111", - "variable_fields": [ - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x7e002057", - "mask": "0xfe00707f" - }, - "vmsbf_m": { - "encoding": "010100------00001010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x5000a057", - "mask": "0xfc0ff07f" - }, - "vmsof_m": { - "encoding": "010100------00010010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x50012057", - "mask": "0xfc0ff07f" - }, - "vmsif_m": { - "encoding": "010100------00011010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x5001a057", - "mask": "0xfc0ff07f" - }, - "viota_m": { - "encoding": "010100------10000010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x50082057", - "mask": "0xfc0ff07f" - }, - "vid_v": { - "encoding": "010100-0000010001010-----1010111", - "variable_fields": [ - "vm", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x5008a057", - "mask": "0xfdfff07f" - }, - "vcpop_m": { - "encoding": "010000------10000010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rd" - ], - "extension": [ - "rv_v" - ], - "match": "0x40082057", - "mask": "0xfc0ff07f" - }, - "vfirst_m": { - "encoding": "010000------10001010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rd" - ], - "extension": [ - "rv_v" - ], - "match": "0x4008a057", - "mask": "0xfc0ff07f" - }, - "vdivu_vv": { - "encoding": "100000-----------010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x80002057", - "mask": "0xfc00707f" - }, - "vdiv_vv": { - "encoding": "100001-----------010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x84002057", - "mask": "0xfc00707f" - }, - "vremu_vv": { - "encoding": "100010-----------010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x88002057", - "mask": "0xfc00707f" - }, - "vrem_vv": { - "encoding": "100011-----------010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x8c002057", - "mask": "0xfc00707f" - }, - "vmulhu_vv": { - "encoding": "100100-----------010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x90002057", - "mask": "0xfc00707f" - }, - "vmul_vv": { - "encoding": "100101-----------010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x94002057", - "mask": "0xfc00707f" - }, - "vmulhsu_vv": { - "encoding": "100110-----------010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x98002057", - "mask": "0xfc00707f" - }, - "vmulh_vv": { - "encoding": "100111-----------010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x9c002057", - "mask": "0xfc00707f" - }, - "vmadd_vv": { - "encoding": "101001-----------010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xa4002057", - "mask": "0xfc00707f" - }, - "vnmsub_vv": { - "encoding": "101011-----------010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xac002057", - "mask": "0xfc00707f" - }, - "vmacc_vv": { - "encoding": "101101-----------010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xb4002057", - "mask": "0xfc00707f" - }, - "vnmsac_vv": { - "encoding": "101111-----------010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xbc002057", - "mask": "0xfc00707f" - }, - "vwaddu_vv": { - "encoding": "110000-----------010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xc0002057", - "mask": "0xfc00707f" - }, - "vwadd_vv": { - "encoding": "110001-----------010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xc4002057", - "mask": "0xfc00707f" - }, - "vwsubu_vv": { - "encoding": "110010-----------010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xc8002057", - "mask": "0xfc00707f" - }, - "vwsub_vv": { - "encoding": "110011-----------010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xcc002057", - "mask": "0xfc00707f" - }, - "vwaddu_wv": { - "encoding": "110100-----------010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xd0002057", - "mask": "0xfc00707f" - }, - "vwadd_wv": { - "encoding": "110101-----------010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xd4002057", - "mask": "0xfc00707f" - }, - "vwsubu_wv": { - "encoding": "110110-----------010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xd8002057", - "mask": "0xfc00707f" - }, - "vwsub_wv": { - "encoding": "110111-----------010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xdc002057", - "mask": "0xfc00707f" - }, - "vwmulu_vv": { - "encoding": "111000-----------010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xe0002057", - "mask": "0xfc00707f" - }, - "vwmulsu_vv": { - "encoding": "111010-----------010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xe8002057", - "mask": "0xfc00707f" - }, - "vwmul_vv": { - "encoding": "111011-----------010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xec002057", - "mask": "0xfc00707f" - }, - "vwmaccu_vv": { - "encoding": "111100-----------010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xf0002057", - "mask": "0xfc00707f" - }, - "vwmacc_vv": { - "encoding": "111101-----------010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xf4002057", - "mask": "0xfc00707f" - }, - "vwmaccsu_vv": { - "encoding": "111111-----------010-----1010111", - "variable_fields": [ - "vm", - "vs2", - "vs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xfc002057", - "mask": "0xfc00707f" - }, - "vaaddu_vx": { - "encoding": "001000-----------110-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x20006057", - "mask": "0xfc00707f" - }, - "vaadd_vx": { - "encoding": "001001-----------110-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x24006057", - "mask": "0xfc00707f" - }, - "vasubu_vx": { - "encoding": "001010-----------110-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x28006057", - "mask": "0xfc00707f" - }, - "vasub_vx": { - "encoding": "001011-----------110-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x2c006057", - "mask": "0xfc00707f" - }, - "vmv_s_x": { - "encoding": "010000100000-----110-----1010111", - "variable_fields": [ - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x42006057", - "mask": "0xfff0707f" - }, - "vslide1up_vx": { - "encoding": "001110-----------110-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x38006057", - "mask": "0xfc00707f" - }, - "vslide1down_vx": { - "encoding": "001111-----------110-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x3c006057", - "mask": "0xfc00707f" - }, - "vdivu_vx": { - "encoding": "100000-----------110-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x80006057", - "mask": "0xfc00707f" - }, - "vdiv_vx": { - "encoding": "100001-----------110-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x84006057", - "mask": "0xfc00707f" - }, - "vremu_vx": { - "encoding": "100010-----------110-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x88006057", - "mask": "0xfc00707f" - }, - "vrem_vx": { - "encoding": "100011-----------110-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x8c006057", - "mask": "0xfc00707f" - }, - "vmulhu_vx": { - "encoding": "100100-----------110-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x90006057", - "mask": "0xfc00707f" - }, - "vmul_vx": { - "encoding": "100101-----------110-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x94006057", - "mask": "0xfc00707f" - }, - "vmulhsu_vx": { - "encoding": "100110-----------110-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x98006057", - "mask": "0xfc00707f" - }, - "vmulh_vx": { - "encoding": "100111-----------110-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0x9c006057", - "mask": "0xfc00707f" - }, - "vmadd_vx": { - "encoding": "101001-----------110-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xa4006057", - "mask": "0xfc00707f" - }, - "vnmsub_vx": { - "encoding": "101011-----------110-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xac006057", - "mask": "0xfc00707f" - }, - "vmacc_vx": { - "encoding": "101101-----------110-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xb4006057", - "mask": "0xfc00707f" - }, - "vnmsac_vx": { - "encoding": "101111-----------110-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xbc006057", - "mask": "0xfc00707f" - }, - "vwaddu_vx": { - "encoding": "110000-----------110-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xc0006057", - "mask": "0xfc00707f" - }, - "vwadd_vx": { - "encoding": "110001-----------110-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xc4006057", - "mask": "0xfc00707f" - }, - "vwsubu_vx": { - "encoding": "110010-----------110-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xc8006057", - "mask": "0xfc00707f" - }, - "vwsub_vx": { - "encoding": "110011-----------110-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xcc006057", - "mask": "0xfc00707f" - }, - "vwaddu_wx": { - "encoding": "110100-----------110-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xd0006057", - "mask": "0xfc00707f" - }, - "vwadd_wx": { - "encoding": "110101-----------110-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xd4006057", - "mask": "0xfc00707f" - }, - "vwsubu_wx": { - "encoding": "110110-----------110-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xd8006057", - "mask": "0xfc00707f" - }, - "vwsub_wx": { - "encoding": "110111-----------110-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xdc006057", - "mask": "0xfc00707f" - }, - "vwmulu_vx": { - "encoding": "111000-----------110-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xe0006057", - "mask": "0xfc00707f" - }, - "vwmulsu_vx": { - "encoding": "111010-----------110-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xe8006057", - "mask": "0xfc00707f" - }, - "vwmul_vx": { - "encoding": "111011-----------110-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xec006057", - "mask": "0xfc00707f" - }, - "vwmaccu_vx": { - "encoding": "111100-----------110-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xf0006057", - "mask": "0xfc00707f" - }, - "vwmacc_vx": { - "encoding": "111101-----------110-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xf4006057", - "mask": "0xfc00707f" - }, - "vwmaccus_vx": { - "encoding": "111110-----------110-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xf8006057", - "mask": "0xfc00707f" - }, - "vwmaccsu_vx": { - "encoding": "111111-----------110-----1010111", - "variable_fields": [ - "vm", - "vs2", - "rs1", - "vd" - ], - "extension": [ - "rv_v" - ], - "match": "0xfc006057", - "mask": "0xfc00707f" - }, - "mret": { - "encoding": "00110000001000000000000001110011", - "variable_fields": [], - "extension": [ - "rv_system" - ], - "match": "0x30200073", - "mask": "0xffffffff" - }, - "wfi": { - "encoding": "00010000010100000000000001110011", - "variable_fields": [], - "extension": [ - "rv_system" - ], - "match": "0x10500073", - "mask": "0xffffffff" - }, - "hinval_vvma": { - "encoding": "0010011----------000000001110011", - "variable_fields": [ - "rs1", - "rs2" - ], - "extension": [ - "rv_svinval_h" - ], - "match": "0x26000073", - "mask": "0xfe007fff" - }, - "hinval_gvma": { - "encoding": "0110011----------000000001110011", - "variable_fields": [ - "rs1", - "rs2" - ], - "extension": [ - "rv_svinval_h" - ], - "match": "0x66000073", - "mask": "0xfe007fff" - }, - "sinval_vma": { - "encoding": "0001011----------000000001110011", - "variable_fields": [ - "rs1", - "rs2" - ], - "extension": [ - "rv_svinval" - ], - "match": "0x16000073", - "mask": "0xfe007fff" - }, - "sfence_w_inval": { - "encoding": "00011000000000000000000001110011", - "variable_fields": [], - "extension": [ - "rv_svinval" - ], - "match": "0x18000073", - "mask": "0xffffffff" - }, - "sfence_inval_ir": { - "encoding": "00011000000100000000000001110011", - "variable_fields": [], - "extension": [ - "rv_svinval" - ], - "match": "0x18100073", - "mask": "0xffffffff" - }, - "mnret": { - "encoding": "01110000001000000000000001110011", - "variable_fields": [], - "extension": [ - "rv_smrnmi" - ], - "match": "0x70200073", - "mask": "0xffffffff" - }, - "sctrclr": { - "encoding": "00010000010000000000000001110011", - "variable_fields": [], - "extension": [ - "rv_smdbltrp" - ], - "match": "0x10400073", - "mask": "0xffffffff" - }, - "dret": { - "encoding": "01111011001000000000000001110011", - "variable_fields": [], - "extension": [ - "rv_sdext" - ], - "match": "0x7b200073", - "mask": "0xffffffff" - }, - "sfence_vma": { - "encoding": "0001001----------000000001110011", - "variable_fields": [ - "rs1", - "rs2" - ], - "extension": [ - "rv_s" - ], - "match": "0x12000073", - "mask": "0xfe007fff" - }, - "sret": { - "encoding": "00010000001000000000000001110011", - "variable_fields": [], - "extension": [ - "rv_s" - ], - "match": "0x10200073", - "mask": "0xffffffff" - }, - "fcvt_q_h": { - "encoding": "010001100010-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv_q_zfh" - ], - "match": "0x46200053", - "mask": "0xfff0007f" - }, - "fcvt_h_q": { - "encoding": "010001000011-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv_q_zfh" - ], - "match": "0x44300053", - "mask": "0xfff0007f" - }, - "fli_q": { - "encoding": "111101100001-----000-----1010011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv_q_zfa" - ], - "match": "0xf6100053", - "mask": "0xfff0707f" - }, - "fminm_q": { - "encoding": "0010111----------010-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_q_zfa" - ], - "match": "0x2e002053", - "mask": "0xfe00707f" - }, - "fmaxm_q": { - "encoding": "0010111----------011-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_q_zfa" - ], - "match": "0x2e003053", - "mask": "0xfe00707f" - }, - "fround_q": { - "encoding": "010001100100-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv_q_zfa" - ], - "match": "0x46400053", - "mask": "0xfff0007f" - }, - "froundnx_q": { - "encoding": "010001100101-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv_q_zfa" - ], - "match": "0x46500053", - "mask": "0xfff0007f" - }, - "fleq_q": { - "encoding": "1010011----------100-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_q_zfa" - ], - "match": "0xa6004053", - "mask": "0xfe00707f" - }, - "fltq_q": { - "encoding": "1010011----------101-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_q_zfa" - ], - "match": "0xa6005053", - "mask": "0xfe00707f" - }, - "flq": { - "encoding": "-----------------100-----0000111", - "variable_fields": [ - "rd", - "rs1", - "imm12" - ], - "extension": [ - "rv_q" - ], - "match": "0x4007", - "mask": "0x707f" - }, - "fsq": { - "encoding": "-----------------100-----0100111", - "variable_fields": [ - "imm12hi", - "rs1", - "rs2", - "imm12lo" - ], - "extension": [ - "rv_q" - ], - "match": "0x4027", - "mask": "0x707f" - }, - "fmadd_q": { - "encoding": "-----11------------------1000011", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "rs3", - "rm" - ], - "extension": [ - "rv_q" - ], - "match": "0x6000043", - "mask": "0x600007f" - }, - "fmsub_q": { - "encoding": "-----11------------------1000111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "rs3", - "rm" - ], - "extension": [ - "rv_q" - ], - "match": "0x6000047", - "mask": "0x600007f" - }, - "fnmsub_q": { - "encoding": "-----11------------------1001011", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "rs3", - "rm" - ], - "extension": [ - "rv_q" - ], - "match": "0x600004b", - "mask": "0x600007f" - }, - "fnmadd_q": { - "encoding": "-----11------------------1001111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "rs3", - "rm" - ], - "extension": [ - "rv_q" - ], - "match": "0x600004f", - "mask": "0x600007f" - }, - "fadd_q": { - "encoding": "0000011------------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "rm" - ], - "extension": [ - "rv_q" - ], - "match": "0x6000053", - "mask": "0xfe00007f" - }, - "fsub_q": { - "encoding": "0000111------------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "rm" - ], - "extension": [ - "rv_q" - ], - "match": "0xe000053", - "mask": "0xfe00007f" - }, - "fmul_q": { - "encoding": "0001011------------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "rm" - ], - "extension": [ - "rv_q" - ], - "match": "0x16000053", - "mask": "0xfe00007f" - }, - "fdiv_q": { - "encoding": "0001111------------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "rm" - ], - "extension": [ - "rv_q" - ], - "match": "0x1e000053", - "mask": "0xfe00007f" - }, - "fsqrt_q": { - "encoding": "010111100000-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv_q" - ], - "match": "0x5e000053", - "mask": "0xfff0007f" - }, - "fsgnj_q": { - "encoding": "0010011----------000-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_q" - ], - "match": "0x26000053", - "mask": "0xfe00707f" - }, - "fsgnjn_q": { - "encoding": "0010011----------001-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_q" - ], - "match": "0x26001053", - "mask": "0xfe00707f" - }, - "fsgnjx_q": { - "encoding": "0010011----------010-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_q" - ], - "match": "0x26002053", - "mask": "0xfe00707f" - }, - "fmin_q": { - "encoding": "0010111----------000-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_q" - ], - "match": "0x2e000053", - "mask": "0xfe00707f" - }, - "fmax_q": { - "encoding": "0010111----------001-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_q" - ], - "match": "0x2e001053", - "mask": "0xfe00707f" - }, - "fcvt_s_q": { - "encoding": "010000000011-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv_q" - ], - "match": "0x40300053", - "mask": "0xfff0007f" - }, - "fcvt_q_s": { - "encoding": "010001100000-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv_q" - ], - "match": "0x46000053", - "mask": "0xfff0007f" - }, - "fcvt_d_q": { - "encoding": "010000100011-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv_q" - ], - "match": "0x42300053", - "mask": "0xfff0007f" - }, - "fcvt_q_d": { - "encoding": "010001100001-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv_q" - ], - "match": "0x46100053", - "mask": "0xfff0007f" - }, - "feq_q": { - "encoding": "1010011----------010-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_q" - ], - "match": "0xa6002053", - "mask": "0xfe00707f" - }, - "flt_q": { - "encoding": "1010011----------001-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_q" - ], - "match": "0xa6001053", - "mask": "0xfe00707f" - }, - "fle_q": { - "encoding": "1010011----------000-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_q" - ], - "match": "0xa6000053", - "mask": "0xfe00707f" - }, - "fclass_q": { - "encoding": "111001100000-----001-----1010011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv_q" - ], - "match": "0xe6001053", - "mask": "0xfff0707f" - }, - "fcvt_w_q": { - "encoding": "110001100000-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv_q" - ], - "match": "0xc6000053", - "mask": "0xfff0007f" - }, - "fcvt_wu_q": { - "encoding": "110001100001-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv_q" - ], - "match": "0xc6100053", - "mask": "0xfff0007f" - }, - "fcvt_q_w": { - "encoding": "110101100000-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv_q" - ], - "match": "0xd6000053", - "mask": "0xfff0007f" - }, - "fcvt_q_wu": { - "encoding": "110101100001-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv_q" - ], - "match": "0xd6100053", - "mask": "0xfff0007f" - }, - "mul": { - "encoding": "0000001----------000-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_m" - ], - "match": "0x2000033", - "mask": "0xfe00707f" - }, - "mulh": { - "encoding": "0000001----------001-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_m" - ], - "match": "0x2001033", - "mask": "0xfe00707f" - }, - "mulhsu": { - "encoding": "0000001----------010-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_m" - ], - "match": "0x2002033", - "mask": "0xfe00707f" - }, - "mulhu": { - "encoding": "0000001----------011-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_m" - ], - "match": "0x2003033", - "mask": "0xfe00707f" - }, - "div": { - "encoding": "0000001----------100-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_m" - ], - "match": "0x2004033", - "mask": "0xfe00707f" - }, - "divu": { - "encoding": "0000001----------101-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_m" - ], - "match": "0x2005033", - "mask": "0xfe00707f" - }, - "rem": { - "encoding": "0000001----------110-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_m" - ], - "match": "0x2006033", - "mask": "0xfe00707f" - }, - "remu": { - "encoding": "0000001----------111-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_m" - ], - "match": "0x2007033", - "mask": "0xfe00707f" - }, - "lui": { - "encoding": "-------------------------0110111", - "variable_fields": [ - "rd", - "imm20" - ], - "extension": [ - "rv_i" - ], - "match": "0x37", - "mask": "0x7f" - }, - "auipc": { - "encoding": "-------------------------0010111", - "variable_fields": [ - "rd", - "imm20" - ], - "extension": [ - "rv_i" - ], - "match": "0x17", - "mask": "0x7f" - }, - "jal": { - "encoding": "-------------------------1101111", - "variable_fields": [ - "rd", - "jimm20" - ], - "extension": [ - "rv_i" - ], - "match": "0x6f", - "mask": "0x7f" - }, - "jalr": { - "encoding": "-----------------000-----1100111", - "variable_fields": [ - "rd", - "rs1", - "imm12" - ], - "extension": [ - "rv_i" - ], - "match": "0x67", - "mask": "0x707f" - }, - "beq": { - "encoding": "-----------------000-----1100011", - "variable_fields": [ - "bimm12hi", - "rs1", - "rs2", - "bimm12lo" - ], - "extension": [ - "rv_i" - ], - "match": "0x63", - "mask": "0x707f" - }, - "bne": { - "encoding": "-----------------001-----1100011", - "variable_fields": [ - "bimm12hi", - "rs1", - "rs2", - "bimm12lo" - ], - "extension": [ - "rv_i" - ], - "match": "0x1063", - "mask": "0x707f" - }, - "blt": { - "encoding": "-----------------100-----1100011", - "variable_fields": [ - "bimm12hi", - "rs1", - "rs2", - "bimm12lo" - ], - "extension": [ - "rv_i" - ], - "match": "0x4063", - "mask": "0x707f" - }, - "bge": { - "encoding": "-----------------101-----1100011", - "variable_fields": [ - "bimm12hi", - "rs1", - "rs2", - "bimm12lo" - ], - "extension": [ - "rv_i" - ], - "match": "0x5063", - "mask": "0x707f" - }, - "bltu": { - "encoding": "-----------------110-----1100011", - "variable_fields": [ - "bimm12hi", - "rs1", - "rs2", - "bimm12lo" - ], - "extension": [ - "rv_i" - ], - "match": "0x6063", - "mask": "0x707f" - }, - "bgeu": { - "encoding": "-----------------111-----1100011", - "variable_fields": [ - "bimm12hi", - "rs1", - "rs2", - "bimm12lo" - ], - "extension": [ - "rv_i" - ], - "match": "0x7063", - "mask": "0x707f" - }, - "lb": { - "encoding": "-----------------000-----0000011", - "variable_fields": [ - "rd", - "rs1", - "imm12" - ], - "extension": [ - "rv_i" - ], - "match": "0x3", - "mask": "0x707f" - }, - "lh": { - "encoding": "-----------------001-----0000011", - "variable_fields": [ - "rd", - "rs1", - "imm12" - ], - "extension": [ - "rv_i" - ], - "match": "0x1003", - "mask": "0x707f" - }, - "lw": { - "encoding": "-----------------010-----0000011", - "variable_fields": [ - "rd", - "rs1", - "imm12" - ], - "extension": [ - "rv_i" - ], - "match": "0x2003", - "mask": "0x707f" - }, - "lbu": { - "encoding": "-----------------100-----0000011", - "variable_fields": [ - "rd", - "rs1", - "imm12" - ], - "extension": [ - "rv_i" - ], - "match": "0x4003", - "mask": "0x707f" - }, - "lhu": { - "encoding": "-----------------101-----0000011", - "variable_fields": [ - "rd", - "rs1", - "imm12" - ], - "extension": [ - "rv_i" - ], - "match": "0x5003", - "mask": "0x707f" - }, - "sb": { - "encoding": "-----------------000-----0100011", - "variable_fields": [ - "imm12hi", - "rs1", - "rs2", - "imm12lo" - ], - "extension": [ - "rv_i" - ], - "match": "0x23", - "mask": "0x707f" - }, - "sh": { - "encoding": "-----------------001-----0100011", - "variable_fields": [ - "imm12hi", - "rs1", - "rs2", - "imm12lo" - ], - "extension": [ - "rv_i" - ], - "match": "0x1023", - "mask": "0x707f" - }, - "sw": { - "encoding": "-----------------010-----0100011", - "variable_fields": [ - "imm12hi", - "rs1", - "rs2", - "imm12lo" - ], - "extension": [ - "rv_i" - ], - "match": "0x2023", - "mask": "0x707f" - }, - "addi": { - "encoding": "-----------------000-----0010011", - "variable_fields": [ - "rd", - "rs1", - "imm12" - ], - "extension": [ - "rv_i" - ], - "match": "0x13", - "mask": "0x707f" - }, - "slti": { - "encoding": "-----------------010-----0010011", - "variable_fields": [ - "rd", - "rs1", - "imm12" - ], - "extension": [ - "rv_i" - ], - "match": "0x2013", - "mask": "0x707f" - }, - "sltiu": { - "encoding": "-----------------011-----0010011", - "variable_fields": [ - "rd", - "rs1", - "imm12" - ], - "extension": [ - "rv_i" - ], - "match": "0x3013", - "mask": "0x707f" - }, - "xori": { - "encoding": "-----------------100-----0010011", - "variable_fields": [ - "rd", - "rs1", - "imm12" - ], - "extension": [ - "rv_i" - ], - "match": "0x4013", - "mask": "0x707f" - }, - "ori": { - "encoding": "-----------------110-----0010011", - "variable_fields": [ - "rd", - "rs1", - "imm12" - ], - "extension": [ - "rv_i" - ], - "match": "0x6013", - "mask": "0x707f" - }, - "andi": { - "encoding": "-----------------111-----0010011", - "variable_fields": [ - "rd", - "rs1", - "imm12" - ], - "extension": [ - "rv_i" - ], - "match": "0x7013", - "mask": "0x707f" - }, - "add": { - "encoding": "0000000----------000-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_i" - ], - "match": "0x33", - "mask": "0xfe00707f" - }, - "sub": { - "encoding": "0100000----------000-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_i" - ], - "match": "0x40000033", - "mask": "0xfe00707f" - }, - "sll": { - "encoding": "0000000----------001-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_i" - ], - "match": "0x1033", - "mask": "0xfe00707f" - }, - "slt": { - "encoding": "0000000----------010-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_i" - ], - "match": "0x2033", - "mask": "0xfe00707f" - }, - "sltu": { - "encoding": "0000000----------011-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_i" - ], - "match": "0x3033", - "mask": "0xfe00707f" - }, - "xor": { - "encoding": "0000000----------100-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_i" - ], - "match": "0x4033", - "mask": "0xfe00707f" - }, - "srl": { - "encoding": "0000000----------101-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_i" - ], - "match": "0x5033", - "mask": "0xfe00707f" - }, - "sra": { - "encoding": "0100000----------101-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_i" - ], - "match": "0x40005033", - "mask": "0xfe00707f" - }, - "or": { - "encoding": "0000000----------110-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_i" - ], - "match": "0x6033", - "mask": "0xfe00707f" - }, - "and": { - "encoding": "0000000----------111-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_i" - ], - "match": "0x7033", - "mask": "0xfe00707f" - }, - "fence": { - "encoding": "-----------------000-----0001111", - "variable_fields": [ - "fm", - "pred", - "succ", - "rs1", - "rd" - ], - "extension": [ - "rv_i" - ], - "match": "0xf", - "mask": "0x707f" - }, - "ecall": { - "encoding": "00000000000000000000000001110011", - "variable_fields": [], - "extension": [ - "rv_i" - ], - "match": "0x73", - "mask": "0xffffffff" - }, - "ebreak": { - "encoding": "00000000000100000000000001110011", - "variable_fields": [], - "extension": [ - "rv_i" - ], - "match": "0x100073", - "mask": "0xffffffff" - }, - "hfence_vvma": { - "encoding": "0010001----------000000001110011", - "variable_fields": [ - "rs1", - "rs2" - ], - "extension": [ - "rv_h" - ], - "match": "0x22000073", - "mask": "0xfe007fff" - }, - "hfence_gvma": { - "encoding": "0110001----------000000001110011", - "variable_fields": [ - "rs1", - "rs2" - ], - "extension": [ - "rv_h" - ], - "match": "0x62000073", - "mask": "0xfe007fff" - }, - "hlv_b": { - "encoding": "011000000000-----100-----1110011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv_h" - ], - "match": "0x60004073", - "mask": "0xfff0707f" - }, - "hlv_bu": { - "encoding": "011000000001-----100-----1110011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv_h" - ], - "match": "0x60104073", - "mask": "0xfff0707f" - }, - "hlv_h": { - "encoding": "011001000000-----100-----1110011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv_h" - ], - "match": "0x64004073", - "mask": "0xfff0707f" - }, - "hlv_hu": { - "encoding": "011001000001-----100-----1110011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv_h" - ], - "match": "0x64104073", - "mask": "0xfff0707f" - }, - "hlvx_hu": { - "encoding": "011001000011-----100-----1110011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv_h" - ], - "match": "0x64304073", - "mask": "0xfff0707f" - }, - "hlv_w": { - "encoding": "011010000000-----100-----1110011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv_h" - ], - "match": "0x68004073", - "mask": "0xfff0707f" - }, - "hlvx_wu": { - "encoding": "011010000011-----100-----1110011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv_h" - ], - "match": "0x68304073", - "mask": "0xfff0707f" - }, - "hsv_b": { - "encoding": "0110001----------100000001110011", - "variable_fields": [ - "rs1", - "rs2" - ], - "extension": [ - "rv_h" - ], - "match": "0x62004073", - "mask": "0xfe007fff" - }, - "hsv_h": { - "encoding": "0110011----------100000001110011", - "variable_fields": [ - "rs1", - "rs2" - ], - "extension": [ - "rv_h" - ], - "match": "0x66004073", - "mask": "0xfe007fff" - }, - "hsv_w": { - "encoding": "0110101----------100000001110011", - "variable_fields": [ - "rs1", - "rs2" - ], - "extension": [ - "rv_h" - ], - "match": "0x6a004073", - "mask": "0xfe007fff" - }, - "fli_s": { - "encoding": "111100000001-----000-----1010011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv_f_zfa" - ], - "match": "0xf0100053", - "mask": "0xfff0707f" - }, - "fminm_s": { - "encoding": "0010100----------010-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_f_zfa" - ], - "match": "0x28002053", - "mask": "0xfe00707f" - }, - "fmaxm_s": { - "encoding": "0010100----------011-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_f_zfa" - ], - "match": "0x28003053", - "mask": "0xfe00707f" - }, - "fround_s": { - "encoding": "010000000100-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv_f_zfa" - ], - "match": "0x40400053", - "mask": "0xfff0007f" - }, - "froundnx_s": { - "encoding": "010000000101-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv_f_zfa" - ], - "match": "0x40500053", - "mask": "0xfff0007f" - }, - "fleq_s": { - "encoding": "1010000----------100-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_f_zfa" - ], - "match": "0xa0004053", - "mask": "0xfe00707f" - }, - "fltq_s": { - "encoding": "1010000----------101-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_f_zfa" - ], - "match": "0xa0005053", - "mask": "0xfe00707f" - }, - "flw": { - "encoding": "-----------------010-----0000111", - "variable_fields": [ - "rd", - "rs1", - "imm12" - ], - "extension": [ - "rv_f" - ], - "match": "0x2007", - "mask": "0x707f" - }, - "fsw": { - "encoding": "-----------------010-----0100111", - "variable_fields": [ - "imm12hi", - "rs1", - "rs2", - "imm12lo" - ], - "extension": [ - "rv_f" - ], - "match": "0x2027", - "mask": "0x707f" - }, - "fmadd_s": { - "encoding": "-----00------------------1000011", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "rs3", - "rm" - ], - "extension": [ - "rv_f" - ], - "match": "0x43", - "mask": "0x600007f" - }, - "fmsub_s": { - "encoding": "-----00------------------1000111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "rs3", - "rm" - ], - "extension": [ - "rv_f" - ], - "match": "0x47", - "mask": "0x600007f" - }, - "fnmsub_s": { - "encoding": "-----00------------------1001011", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "rs3", - "rm" - ], - "extension": [ - "rv_f" - ], - "match": "0x4b", - "mask": "0x600007f" - }, - "fnmadd_s": { - "encoding": "-----00------------------1001111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "rs3", - "rm" - ], - "extension": [ - "rv_f" - ], - "match": "0x4f", - "mask": "0x600007f" - }, - "fadd_s": { - "encoding": "0000000------------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "rm" - ], - "extension": [ - "rv_f" - ], - "match": "0x53", - "mask": "0xfe00007f" - }, - "fsub_s": { - "encoding": "0000100------------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "rm" - ], - "extension": [ - "rv_f" - ], - "match": "0x8000053", - "mask": "0xfe00007f" - }, - "fmul_s": { - "encoding": "0001000------------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "rm" - ], - "extension": [ - "rv_f" - ], - "match": "0x10000053", - "mask": "0xfe00007f" - }, - "fdiv_s": { - "encoding": "0001100------------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "rm" - ], - "extension": [ - "rv_f" - ], - "match": "0x18000053", - "mask": "0xfe00007f" - }, - "fsqrt_s": { - "encoding": "010110000000-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv_f" - ], - "match": "0x58000053", - "mask": "0xfff0007f" - }, - "fsgnj_s": { - "encoding": "0010000----------000-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_f" - ], - "match": "0x20000053", - "mask": "0xfe00707f" - }, - "fsgnjn_s": { - "encoding": "0010000----------001-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_f" - ], - "match": "0x20001053", - "mask": "0xfe00707f" - }, - "fsgnjx_s": { - "encoding": "0010000----------010-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_f" - ], - "match": "0x20002053", - "mask": "0xfe00707f" - }, - "fmin_s": { - "encoding": "0010100----------000-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_f" - ], - "match": "0x28000053", - "mask": "0xfe00707f" - }, - "fmax_s": { - "encoding": "0010100----------001-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_f" - ], - "match": "0x28001053", - "mask": "0xfe00707f" - }, - "fcvt_w_s": { - "encoding": "110000000000-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv_f" - ], - "match": "0xc0000053", - "mask": "0xfff0007f" - }, - "fcvt_wu_s": { - "encoding": "110000000001-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv_f" - ], - "match": "0xc0100053", - "mask": "0xfff0007f" - }, - "fmv_x_w": { - "encoding": "111000000000-----000-----1010011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv_f" - ], - "match": "0xe0000053", - "mask": "0xfff0707f" - }, - "feq_s": { - "encoding": "1010000----------010-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_f" - ], - "match": "0xa0002053", - "mask": "0xfe00707f" - }, - "flt_s": { - "encoding": "1010000----------001-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_f" - ], - "match": "0xa0001053", - "mask": "0xfe00707f" - }, - "fle_s": { - "encoding": "1010000----------000-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_f" - ], - "match": "0xa0000053", - "mask": "0xfe00707f" - }, - "fclass_s": { - "encoding": "111000000000-----001-----1010011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv_f" - ], - "match": "0xe0001053", - "mask": "0xfff0707f" - }, - "fcvt_s_w": { - "encoding": "110100000000-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv_f" - ], - "match": "0xd0000053", - "mask": "0xfff0007f" - }, - "fcvt_s_wu": { - "encoding": "110100000001-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv_f" - ], - "match": "0xd0100053", - "mask": "0xfff0007f" - }, - "fmv_w_x": { - "encoding": "111100000000-----000-----1010011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv_f" - ], - "match": "0xf0000053", - "mask": "0xfff0707f" - }, - "fcvt_d_h": { - "encoding": "010000100010-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv_d_zfh" - ], - "match": "0x42200053", - "mask": "0xfff0007f" - }, - "fcvt_h_d": { - "encoding": "010001000001-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv_d_zfh" - ], - "match": "0x44100053", - "mask": "0xfff0007f" - }, - "fli_d": { - "encoding": "111100100001-----000-----1010011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv_d_zfa" - ], - "match": "0xf2100053", - "mask": "0xfff0707f" - }, - "fminm_d": { - "encoding": "0010101----------010-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_d_zfa" - ], - "match": "0x2a002053", - "mask": "0xfe00707f" - }, - "fmaxm_d": { - "encoding": "0010101----------011-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_d_zfa" - ], - "match": "0x2a003053", - "mask": "0xfe00707f" - }, - "fround_d": { - "encoding": "010000100100-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv_d_zfa" - ], - "match": "0x42400053", - "mask": "0xfff0007f" - }, - "froundnx_d": { - "encoding": "010000100101-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv_d_zfa" - ], - "match": "0x42500053", - "mask": "0xfff0007f" - }, - "fcvtmod_w_d": { - "encoding": "110000101000-----001-----1010011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv_d_zfa" - ], - "match": "0xc2801053", - "mask": "0xfff0707f" - }, - "fleq_d": { - "encoding": "1010001----------100-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_d_zfa" - ], - "match": "0xa2004053", - "mask": "0xfe00707f" - }, - "fltq_d": { - "encoding": "1010001----------101-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_d_zfa" - ], - "match": "0xa2005053", - "mask": "0xfe00707f" - }, - "fld": { - "encoding": "-----------------011-----0000111", - "variable_fields": [ - "rd", - "rs1", - "imm12" - ], - "extension": [ - "rv_d" - ], - "match": "0x3007", - "mask": "0x707f" - }, - "fsd": { - "encoding": "-----------------011-----0100111", - "variable_fields": [ - "imm12hi", - "rs1", - "rs2", - "imm12lo" - ], - "extension": [ - "rv_d" - ], - "match": "0x3027", - "mask": "0x707f" - }, - "fmadd_d": { - "encoding": "-----01------------------1000011", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "rs3", - "rm" - ], - "extension": [ - "rv_d" - ], - "match": "0x2000043", - "mask": "0x600007f" - }, - "fmsub_d": { - "encoding": "-----01------------------1000111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "rs3", - "rm" - ], - "extension": [ - "rv_d" - ], - "match": "0x2000047", - "mask": "0x600007f" - }, - "fnmsub_d": { - "encoding": "-----01------------------1001011", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "rs3", - "rm" - ], - "extension": [ - "rv_d" - ], - "match": "0x200004b", - "mask": "0x600007f" - }, - "fnmadd_d": { - "encoding": "-----01------------------1001111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "rs3", - "rm" - ], - "extension": [ - "rv_d" - ], - "match": "0x200004f", - "mask": "0x600007f" - }, - "fadd_d": { - "encoding": "0000001------------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "rm" - ], - "extension": [ - "rv_d" - ], - "match": "0x2000053", - "mask": "0xfe00007f" - }, - "fsub_d": { - "encoding": "0000101------------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "rm" - ], - "extension": [ - "rv_d" - ], - "match": "0xa000053", - "mask": "0xfe00007f" - }, - "fmul_d": { - "encoding": "0001001------------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "rm" - ], - "extension": [ - "rv_d" - ], - "match": "0x12000053", - "mask": "0xfe00007f" - }, - "fdiv_d": { - "encoding": "0001101------------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "rm" - ], - "extension": [ - "rv_d" - ], - "match": "0x1a000053", - "mask": "0xfe00007f" - }, - "fsqrt_d": { - "encoding": "010110100000-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv_d" - ], - "match": "0x5a000053", - "mask": "0xfff0007f" - }, - "fsgnj_d": { - "encoding": "0010001----------000-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_d" - ], - "match": "0x22000053", - "mask": "0xfe00707f" - }, - "fsgnjn_d": { - "encoding": "0010001----------001-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_d" - ], - "match": "0x22001053", - "mask": "0xfe00707f" - }, - "fsgnjx_d": { - "encoding": "0010001----------010-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_d" - ], - "match": "0x22002053", - "mask": "0xfe00707f" - }, - "fmin_d": { - "encoding": "0010101----------000-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_d" - ], - "match": "0x2a000053", - "mask": "0xfe00707f" - }, - "fmax_d": { - "encoding": "0010101----------001-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_d" - ], - "match": "0x2a001053", - "mask": "0xfe00707f" - }, - "fcvt_s_d": { - "encoding": "010000000001-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv_d" - ], - "match": "0x40100053", - "mask": "0xfff0007f" - }, - "fcvt_d_s": { - "encoding": "010000100000-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv_d" - ], - "match": "0x42000053", - "mask": "0xfff0007f" - }, - "feq_d": { - "encoding": "1010001----------010-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_d" - ], - "match": "0xa2002053", - "mask": "0xfe00707f" - }, - "flt_d": { - "encoding": "1010001----------001-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_d" - ], - "match": "0xa2001053", - "mask": "0xfe00707f" - }, - "fle_d": { - "encoding": "1010001----------000-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_d" - ], - "match": "0xa2000053", - "mask": "0xfe00707f" - }, - "fclass_d": { - "encoding": "111000100000-----001-----1010011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv_d" - ], - "match": "0xe2001053", - "mask": "0xfff0707f" - }, - "fcvt_w_d": { - "encoding": "110000100000-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv_d" - ], - "match": "0xc2000053", - "mask": "0xfff0007f" - }, - "fcvt_wu_d": { - "encoding": "110000100001-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv_d" - ], - "match": "0xc2100053", - "mask": "0xfff0007f" - }, - "fcvt_d_w": { - "encoding": "110100100000-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv_d" - ], - "match": "0xd2000053", - "mask": "0xfff0007f" - }, - "fcvt_d_wu": { - "encoding": "110100100001-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv_d" - ], - "match": "0xd2100053", - "mask": "0xfff0007f" - }, - "c_fld": { - "encoding": "----------------001-----------00", - "variable_fields": [ - "rd_p", - "rs1_p", - "c_uimm8lo", - "c_uimm8hi" - ], - "extension": [ - "rv_c_d" - ], - "match": "0x2000", - "mask": "0xe003" - }, - "c_fsd": { - "encoding": "----------------101-----------00", - "variable_fields": [ - "rs1_p", - "rs2_p", - "c_uimm8lo", - "c_uimm8hi" - ], - "extension": [ - "rv_c_d" - ], - "match": "0xa000", - "mask": "0xe003" - }, - "c_fldsp": { - "encoding": "----------------001-----------10", - "variable_fields": [ - "rd", - "c_uimm9sphi", - "c_uimm9splo" - ], - "extension": [ - "rv_c_d" - ], - "match": "0x2002", - "mask": "0xe003" - }, - "c_fsdsp": { - "encoding": "----------------101-----------10", - "variable_fields": [ - "c_rs2", - "c_uimm9sp_s" - ], - "extension": [ - "rv_c_d" - ], - "match": "0xa002", - "mask": "0xe003" - }, - "c_addi4spn": { - "encoding": "----------------000-----------00", - "variable_fields": [ - "rd_p", - "c_nzuimm10" - ], - "extension": [ - "rv_c" - ], - "match": "0x0", - "mask": "0xe003" - }, - "c_lw": { - "encoding": "----------------010-----------00", - "variable_fields": [ - "rd_p", - "rs1_p", - "c_uimm7lo", - "c_uimm7hi" - ], - "extension": [ - "rv_c" - ], - "match": "0x4000", - "mask": "0xe003" - }, - "c_sw": { - "encoding": "----------------110-----------00", - "variable_fields": [ - "rs1_p", - "rs2_p", - "c_uimm7lo", - "c_uimm7hi" - ], - "extension": [ - "rv_c" - ], - "match": "0xc000", - "mask": "0xe003" - }, - "c_nop": { - "encoding": "----------------000-00000-----01", - "variable_fields": [ - "c_nzimm6hi", - "c_nzimm6lo" - ], - "extension": [ - "rv_c" - ], - "match": "0x1", - "mask": "0xef83" - }, - "c_addi": { - "encoding": "----------------000-----------01", - "variable_fields": [ - "rd_rs1_n0", - "c_nzimm6lo", - "c_nzimm6hi" - ], - "extension": [ - "rv_c" - ], - "match": "0x1", - "mask": "0xe003" - }, - "c_li": { - "encoding": "----------------010-----------01", - "variable_fields": [ - "rd_n0", - "c_imm6lo", - "c_imm6hi" - ], - "extension": [ - "rv_c" - ], - "match": "0x4001", - "mask": "0xe003" - }, - "c_addi16sp": { - "encoding": "----------------011-00010-----01", - "variable_fields": [ - "c_nzimm10hi", - "c_nzimm10lo" - ], - "extension": [ - "rv_c" - ], - "match": "0x6101", - "mask": "0xef83" - }, - "c_lui": { - "encoding": "----------------011-----------01", - "variable_fields": [ - "rd_n2", - "c_nzimm18hi", - "c_nzimm18lo" - ], - "extension": [ - "rv_c" - ], - "match": "0x6001", - "mask": "0xe003" - }, - "c_andi": { - "encoding": "----------------100-10--------01", - "variable_fields": [ - "rd_rs1_p", - "c_imm6hi", - "c_imm6lo" - ], - "extension": [ - "rv_c" - ], - "match": "0x8801", - "mask": "0xec03" - }, - "c_sub": { - "encoding": "----------------100011---00---01", - "variable_fields": [ - "rd_rs1_p", - "rs2_p" - ], - "extension": [ - "rv_c" - ], - "match": "0x8c01", - "mask": "0xfc63" - }, - "c_xor": { - "encoding": "----------------100011---01---01", - "variable_fields": [ - "rd_rs1_p", - "rs2_p" - ], - "extension": [ - "rv_c" - ], - "match": "0x8c21", - "mask": "0xfc63" - }, - "c_or": { - "encoding": "----------------100011---10---01", - "variable_fields": [ - "rd_rs1_p", - "rs2_p" - ], - "extension": [ - "rv_c" - ], - "match": "0x8c41", - "mask": "0xfc63" - }, - "c_and": { - "encoding": "----------------100011---11---01", - "variable_fields": [ - "rd_rs1_p", - "rs2_p" - ], - "extension": [ - "rv_c" - ], - "match": "0x8c61", - "mask": "0xfc63" - }, - "c_j": { - "encoding": "----------------101-----------01", - "variable_fields": [ - "c_imm12" - ], - "extension": [ - "rv_c" - ], - "match": "0xa001", - "mask": "0xe003" - }, - "c_beqz": { - "encoding": "----------------110-----------01", - "variable_fields": [ - "rs1_p", - "c_bimm9lo", - "c_bimm9hi" - ], - "extension": [ - "rv_c" - ], - "match": "0xc001", - "mask": "0xe003" - }, - "c_bnez": { - "encoding": "----------------111-----------01", - "variable_fields": [ - "rs1_p", - "c_bimm9lo", - "c_bimm9hi" - ], - "extension": [ - "rv_c" - ], - "match": "0xe001", - "mask": "0xe003" - }, - "c_lwsp": { - "encoding": "----------------010-----------10", - "variable_fields": [ - "rd_n0", - "c_uimm8sphi", - "c_uimm8splo" - ], - "extension": [ - "rv_c" - ], - "match": "0x4002", - "mask": "0xe003" - }, - "c_jr": { - "encoding": "----------------1000-----0000010", - "variable_fields": [ - "rs1_n0" - ], - "extension": [ - "rv_c" - ], - "match": "0x8002", - "mask": "0xf07f" - }, - "c_mv": { - "encoding": "----------------1000----------10", - "variable_fields": [ - "rd_n0", - "c_rs2_n0" - ], - "extension": [ - "rv_c" - ], - "match": "0x8002", - "mask": "0xf003" - }, - "c_ebreak": { - "encoding": "----------------1001000000000010", - "variable_fields": [], - "extension": [ - "rv_c" - ], - "match": "0x9002", - "mask": "0xffff" - }, - "c_jalr": { - "encoding": "----------------1001-----0000010", - "variable_fields": [ - "c_rs1_n0" - ], - "extension": [ - "rv_c" - ], - "match": "0x9002", - "mask": "0xf07f" - }, - "c_add": { - "encoding": "----------------1001----------10", - "variable_fields": [ - "rd_rs1_n0", - "c_rs2_n0" - ], - "extension": [ - "rv_c" - ], - "match": "0x9002", - "mask": "0xf003" - }, - "c_swsp": { - "encoding": "----------------110-----------10", - "variable_fields": [ - "c_rs2", - "c_uimm8sp_s" - ], - "extension": [ - "rv_c" - ], - "match": "0xc002", - "mask": "0xe003" - }, - "lr_w": { - "encoding": "00010--00000-----010-----0101111", - "variable_fields": [ - "rd", - "rs1", - "aq", - "rl" - ], - "extension": [ - "rv_a" - ], - "match": "0x1000202f", - "mask": "0xf9f0707f" - }, - "sc_w": { - "encoding": "00011------------010-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv_a" - ], - "match": "0x1800202f", - "mask": "0xf800707f" - }, - "amoswap_w": { - "encoding": "00001------------010-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv_a" - ], - "match": "0x800202f", - "mask": "0xf800707f" - }, - "amoadd_w": { - "encoding": "00000------------010-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv_a" - ], - "match": "0x202f", - "mask": "0xf800707f" - }, - "amoxor_w": { - "encoding": "00100------------010-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv_a" - ], - "match": "0x2000202f", - "mask": "0xf800707f" - }, - "amoand_w": { - "encoding": "01100------------010-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv_a" - ], - "match": "0x6000202f", - "mask": "0xf800707f" - }, - "amoor_w": { - "encoding": "01000------------010-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv_a" - ], - "match": "0x4000202f", - "mask": "0xf800707f" - }, - "amomin_w": { - "encoding": "10000------------010-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv_a" - ], - "match": "0x8000202f", - "mask": "0xf800707f" - }, - "amomax_w": { - "encoding": "10100------------010-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv_a" - ], - "match": "0xa000202f", - "mask": "0xf800707f" - }, - "amominu_w": { - "encoding": "11000------------010-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv_a" - ], - "match": "0xc000202f", - "mask": "0xf800707f" - }, - "amomaxu_w": { - "encoding": "11100------------010-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv_a" - ], - "match": "0xe000202f", - "mask": "0xf800707f" - }, - "sha512sum0": { - "encoding": "000100000100-----001-----0010011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv64_zknh", - "rv64_zkn", - "rv64_zk" - ], - "match": "0x10401013", - "mask": "0xfff0707f" - }, - "sha512sum1": { - "encoding": "000100000101-----001-----0010011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv64_zknh", - "rv64_zkn", - "rv64_zk" - ], - "match": "0x10501013", - "mask": "0xfff0707f" - }, - "sha512sig0": { - "encoding": "000100000110-----001-----0010011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv64_zknh", - "rv64_zkn", - "rv64_zk" - ], - "match": "0x10601013", - "mask": "0xfff0707f" - }, - "sha512sig1": { - "encoding": "000100000111-----001-----0010011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv64_zknh", - "rv64_zkn", - "rv64_zk" - ], - "match": "0x10701013", - "mask": "0xfff0707f" - }, - "aes64esm": { - "encoding": "0011011----------000-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv64_zkne", - "rv64_zkn", - "rv64_zk" - ], - "match": "0x36000033", - "mask": "0xfe00707f" - }, - "aes64es": { - "encoding": "0011001----------000-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv64_zkne", - "rv64_zkn", - "rv64_zk" - ], - "match": "0x32000033", - "mask": "0xfe00707f" - }, - "aes64dsm": { - "encoding": "0011111----------000-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv64_zknd", - "rv64_zkn", - "rv64_zk" - ], - "match": "0x3e000033", - "mask": "0xfe00707f" - }, - "aes64ds": { - "encoding": "0011101----------000-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv64_zknd", - "rv64_zkn", - "rv64_zk" - ], - "match": "0x3a000033", - "mask": "0xfe00707f" - }, - "aes64ks1i": { - "encoding": "00110001---------001-----0010011", - "variable_fields": [ - "rd", - "rs1", - "rnum" - ], - "extension": [ - "rv64_zknd", - "rv64_zkne", - "rv64_zkn", - "rv64_zk" - ], - "match": "0x31001013", - "mask": "0xff00707f" - }, - "aes64im": { - "encoding": "001100000000-----001-----0010011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv64_zknd", - "rv64_zkn", - "rv64_zk" - ], - "match": "0x30001013", - "mask": "0xfff0707f" - }, - "aes64ks2": { - "encoding": "0111111----------000-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv64_zknd", - "rv64_zkne", - "rv64_zkn", - "rv64_zk" - ], - "match": "0x7e000033", - "mask": "0xfe00707f" - }, - "fcvt_l_h": { - "encoding": "110001000010-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv64_zfh" - ], - "match": "0xc4200053", - "mask": "0xfff0007f" - }, - "fcvt_lu_h": { - "encoding": "110001000011-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv64_zfh" - ], - "match": "0xc4300053", - "mask": "0xfff0007f" - }, - "fcvt_h_l": { - "encoding": "110101000010-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv64_zfh" - ], - "match": "0xd4200053", - "mask": "0xfff0007f" - }, - "fcvt_h_lu": { - "encoding": "110101000011-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv64_zfh" - ], - "match": "0xd4300053", - "mask": "0xfff0007f" - }, - "c_zext_w": { - "encoding": "----------------100111---1110001", - "variable_fields": [ - "rd_rs1_p" - ], - "extension": [ - "rv64_zcb" - ], - "match": "0x9c71", - "mask": "0xfc7f" - }, - "bclri": { - "encoding": "010010-----------001-----0010011", - "variable_fields": [ - "rd", - "rs1", - "shamtd" - ], - "extension": [ - "rv64_zbs" - ], - "match": "0x48001013", - "mask": "0xfc00707f" - }, - "bexti": { - "encoding": "010010-----------101-----0010011", - "variable_fields": [ - "rd", - "rs1", - "shamtd" - ], - "extension": [ - "rv64_zbs" - ], - "match": "0x48005013", - "mask": "0xfc00707f" - }, - "binvi": { - "encoding": "011010-----------001-----0010011", - "variable_fields": [ - "rd", - "rs1", - "shamtd" - ], - "extension": [ - "rv64_zbs" - ], - "match": "0x68001013", - "mask": "0xfc00707f" - }, - "bseti": { - "encoding": "001010-----------001-----0010011", - "variable_fields": [ - "rd", - "rs1", - "shamtd" - ], - "extension": [ - "rv64_zbs" - ], - "match": "0x28001013", - "mask": "0xfc00707f" - }, - "packw": { - "encoding": "0000100----------100-----0111011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv64_zbkb", - "rv64_zks", - "rv64_zkn", - "rv64_zk" - ], - "match": "0x800403b", - "mask": "0xfe00707f" - }, - "clzw": { - "encoding": "011000000000-----001-----0011011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv64_zbb" - ], - "match": "0x6000101b", - "mask": "0xfff0707f" - }, - "ctzw": { - "encoding": "011000000001-----001-----0011011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv64_zbb" - ], - "match": "0x6010101b", - "mask": "0xfff0707f" - }, - "cpopw": { - "encoding": "011000000010-----001-----0011011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv64_zbb" - ], - "match": "0x6020101b", - "mask": "0xfff0707f" - }, - "rolw": { - "encoding": "0110000----------001-----0111011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv64_zbb", - "rv64_zks", - "rv64_zkn", - "rv64_zk", - "rv64_zbkb" - ], - "match": "0x6000103b", - "mask": "0xfe00707f" - }, - "rorw": { - "encoding": "0110000----------101-----0111011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv64_zbb", - "rv64_zks", - "rv64_zkn", - "rv64_zk", - "rv64_zbkb" - ], - "match": "0x6000503b", - "mask": "0xfe00707f" - }, - "roriw": { - "encoding": "0110000----------101-----0011011", - "variable_fields": [ - "rd", - "rs1", - "shamtw" - ], - "extension": [ - "rv64_zbb", - "rv64_zks", - "rv64_zkn", - "rv64_zk", - "rv64_zbkb" - ], - "match": "0x6000501b", - "mask": "0xfe00707f" - }, - "rori": { - "encoding": "011000-----------101-----0010011", - "variable_fields": [ - "rd", - "rs1", - "shamtd" - ], - "extension": [ - "rv64_zbb", - "rv64_zks", - "rv64_zkn", - "rv64_zk", - "rv64_zbkb" - ], - "match": "0x60005013", - "mask": "0xfc00707f" - }, - "add_uw": { - "encoding": "0000100----------000-----0111011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv64_zba" - ], - "match": "0x800003b", - "mask": "0xfe00707f" - }, - "sh1add_uw": { - "encoding": "0010000----------010-----0111011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv64_zba" - ], - "match": "0x2000203b", - "mask": "0xfe00707f" - }, - "sh2add_uw": { - "encoding": "0010000----------100-----0111011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv64_zba" - ], - "match": "0x2000403b", - "mask": "0xfe00707f" - }, - "sh3add_uw": { - "encoding": "0010000----------110-----0111011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv64_zba" - ], - "match": "0x2000603b", - "mask": "0xfe00707f" - }, - "slli_uw": { - "encoding": "000010-----------001-----0011011", - "variable_fields": [ - "rd", - "rs1", - "shamtd" - ], - "extension": [ - "rv64_zba" - ], - "match": "0x800101b", - "mask": "0xfc00707f" - }, - "amocas_q": { - "encoding": "00101------------100-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv64_zacas" - ], - "match": "0x2800402f", - "mask": "0xf800707f" - }, - "fmvh_x_q": { - "encoding": "111001100001-----000-----1010011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv64_q_zfa" - ], - "match": "0xe6100053", - "mask": "0xfff0707f" - }, - "fmvp_q_x": { - "encoding": "1011011----------000-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv64_q_zfa" - ], - "match": "0xb6000053", - "mask": "0xfe00707f" - }, - "fcvt_l_q": { - "encoding": "110001100010-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv64_q" - ], - "match": "0xc6200053", - "mask": "0xfff0007f" - }, - "fcvt_lu_q": { - "encoding": "110001100011-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv64_q" - ], - "match": "0xc6300053", - "mask": "0xfff0007f" - }, - "fcvt_q_l": { - "encoding": "110101100010-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv64_q" - ], - "match": "0xd6200053", - "mask": "0xfff0007f" - }, - "fcvt_q_lu": { - "encoding": "110101100011-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv64_q" - ], - "match": "0xd6300053", - "mask": "0xfff0007f" - }, - "mulw": { - "encoding": "0000001----------000-----0111011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv64_m" - ], - "match": "0x200003b", - "mask": "0xfe00707f" - }, - "divw": { - "encoding": "0000001----------100-----0111011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv64_m" - ], - "match": "0x200403b", - "mask": "0xfe00707f" - }, - "divuw": { - "encoding": "0000001----------101-----0111011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv64_m" - ], - "match": "0x200503b", - "mask": "0xfe00707f" - }, - "remw": { - "encoding": "0000001----------110-----0111011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv64_m" - ], - "match": "0x200603b", - "mask": "0xfe00707f" - }, - "remuw": { - "encoding": "0000001----------111-----0111011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv64_m" - ], - "match": "0x200703b", - "mask": "0xfe00707f" - }, - "lwu": { - "encoding": "-----------------110-----0000011", - "variable_fields": [ - "rd", - "rs1", - "imm12" - ], - "extension": [ - "rv64_i" - ], - "match": "0x6003", - "mask": "0x707f" - }, - "ld": { - "encoding": "-----------------011-----0000011", - "variable_fields": [ - "rd", - "rs1", - "imm12" - ], - "extension": [ - "rv64_i" - ], - "match": "0x3003", - "mask": "0x707f" - }, - "sd": { - "encoding": "-----------------011-----0100011", - "variable_fields": [ - "imm12hi", - "rs1", - "rs2", - "imm12lo" - ], - "extension": [ - "rv64_i" - ], - "match": "0x3023", - "mask": "0x707f" - }, - "slli": { - "encoding": "000000-----------001-----0010011", - "variable_fields": [ - "rd", - "rs1", - "shamtd" - ], - "extension": [ - "rv64_i" - ], - "match": "0x1013", - "mask": "0xfc00707f" - }, - "srli": { - "encoding": "000000-----------101-----0010011", - "variable_fields": [ - "rd", - "rs1", - "shamtd" - ], - "extension": [ - "rv64_i" - ], - "match": "0x5013", - "mask": "0xfc00707f" - }, - "srai": { - "encoding": "010000-----------101-----0010011", - "variable_fields": [ - "rd", - "rs1", - "shamtd" - ], - "extension": [ - "rv64_i" - ], - "match": "0x40005013", - "mask": "0xfc00707f" - }, - "addiw": { - "encoding": "-----------------000-----0011011", - "variable_fields": [ - "rd", - "rs1", - "imm12" - ], - "extension": [ - "rv64_i" - ], - "match": "0x1b", - "mask": "0x707f" - }, - "slliw": { - "encoding": "0000000----------001-----0011011", - "variable_fields": [ - "rd", - "rs1", - "shamtw" - ], - "extension": [ - "rv64_i" - ], - "match": "0x101b", - "mask": "0xfe00707f" - }, - "srliw": { - "encoding": "0000000----------101-----0011011", - "variable_fields": [ - "rd", - "rs1", - "shamtw" - ], - "extension": [ - "rv64_i" - ], - "match": "0x501b", - "mask": "0xfe00707f" - }, - "sraiw": { - "encoding": "0100000----------101-----0011011", - "variable_fields": [ - "rd", - "rs1", - "shamtw" - ], - "extension": [ - "rv64_i" - ], - "match": "0x4000501b", - "mask": "0xfe00707f" - }, - "addw": { - "encoding": "0000000----------000-----0111011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv64_i" - ], - "match": "0x3b", - "mask": "0xfe00707f" - }, - "subw": { - "encoding": "0100000----------000-----0111011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv64_i" - ], - "match": "0x4000003b", - "mask": "0xfe00707f" - }, - "sllw": { - "encoding": "0000000----------001-----0111011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv64_i" - ], - "match": "0x103b", - "mask": "0xfe00707f" - }, - "srlw": { - "encoding": "0000000----------101-----0111011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv64_i" - ], - "match": "0x503b", - "mask": "0xfe00707f" - }, - "sraw": { - "encoding": "0100000----------101-----0111011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv64_i" - ], - "match": "0x4000503b", - "mask": "0xfe00707f" - }, - "hlv_wu": { - "encoding": "011010000001-----100-----1110011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv64_h" - ], - "match": "0x68104073", - "mask": "0xfff0707f" - }, - "hlv_d": { - "encoding": "011011000000-----100-----1110011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv64_h" - ], - "match": "0x6c004073", - "mask": "0xfff0707f" - }, - "hsv_d": { - "encoding": "0110111----------100000001110011", - "variable_fields": [ - "rs1", - "rs2" - ], - "extension": [ - "rv64_h" - ], - "match": "0x6e004073", - "mask": "0xfe007fff" - }, - "fcvt_l_s": { - "encoding": "110000000010-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv64_f" - ], - "match": "0xc0200053", - "mask": "0xfff0007f" - }, - "fcvt_lu_s": { - "encoding": "110000000011-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv64_f" - ], - "match": "0xc0300053", - "mask": "0xfff0007f" - }, - "fcvt_s_l": { - "encoding": "110100000010-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv64_f" - ], - "match": "0xd0200053", - "mask": "0xfff0007f" - }, - "fcvt_s_lu": { - "encoding": "110100000011-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv64_f" - ], - "match": "0xd0300053", - "mask": "0xfff0007f" - }, - "fcvt_l_d": { - "encoding": "110000100010-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv64_d" - ], - "match": "0xc2200053", - "mask": "0xfff0007f" - }, - "fcvt_lu_d": { - "encoding": "110000100011-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv64_d" - ], - "match": "0xc2300053", - "mask": "0xfff0007f" - }, - "fmv_x_d": { - "encoding": "111000100000-----000-----1010011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv64_d" - ], - "match": "0xe2000053", - "mask": "0xfff0707f" - }, - "fcvt_d_l": { - "encoding": "110100100010-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv64_d" - ], - "match": "0xd2200053", - "mask": "0xfff0007f" - }, - "fcvt_d_lu": { - "encoding": "110100100011-------------1010011", - "variable_fields": [ - "rd", - "rs1", - "rm" - ], - "extension": [ - "rv64_d" - ], - "match": "0xd2300053", - "mask": "0xfff0007f" - }, - "fmv_d_x": { - "encoding": "111100100000-----000-----1010011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv64_d" - ], - "match": "0xf2000053", - "mask": "0xfff0707f" - }, - "c_ld": { - "encoding": "----------------011-----------00", - "variable_fields": [ - "rd_p", - "rs1_p", - "c_uimm8lo", - "c_uimm8hi" - ], - "extension": [ - "rv64_c" - ], - "match": "0x6000", - "mask": "0xe003" - }, - "c_sd": { - "encoding": "----------------111-----------00", - "variable_fields": [ - "rs1_p", - "rs2_p", - "c_uimm8hi", - "c_uimm8lo" - ], - "extension": [ - "rv64_c" - ], - "match": "0xe000", - "mask": "0xe003" - }, - "c_addiw": { - "encoding": "----------------001-----------01", - "variable_fields": [ - "rd_rs1_n0", - "c_imm6lo", - "c_imm6hi" - ], - "extension": [ - "rv64_c" - ], - "match": "0x2001", - "mask": "0xe003" - }, - "c_srli": { - "encoding": "----------------100-00--------01", - "variable_fields": [ - "rd_rs1_p", - "c_nzuimm6lo", - "c_nzuimm6hi" - ], - "extension": [ - "rv64_c" - ], - "match": "0x8001", - "mask": "0xec03" - }, - "c_srai": { - "encoding": "----------------100-01--------01", - "variable_fields": [ - "rd_rs1_p", - "c_nzuimm6lo", - "c_nzuimm6hi" - ], - "extension": [ - "rv64_c" - ], - "match": "0x8401", - "mask": "0xec03" - }, - "c_subw": { - "encoding": "----------------100111---00---01", - "variable_fields": [ - "rd_rs1_p", - "rs2_p" - ], - "extension": [ - "rv64_c" - ], - "match": "0x9c01", - "mask": "0xfc63" - }, - "c_addw": { - "encoding": "----------------100111---01---01", - "variable_fields": [ - "rd_rs1_p", - "rs2_p" - ], - "extension": [ - "rv64_c" - ], - "match": "0x9c21", - "mask": "0xfc63" - }, - "c_slli": { - "encoding": "----------------000-----------10", - "variable_fields": [ - "rd_rs1_n0", - "c_nzuimm6hi", - "c_nzuimm6lo" - ], - "extension": [ - "rv64_c" - ], - "match": "0x2", - "mask": "0xe003" - }, - "c_ldsp": { - "encoding": "----------------011-----------10", - "variable_fields": [ - "rd_n0", - "c_uimm9sphi", - "c_uimm9splo" - ], - "extension": [ - "rv64_c" - ], - "match": "0x6002", - "mask": "0xe003" - }, - "c_sdsp": { - "encoding": "----------------111-----------10", - "variable_fields": [ - "c_rs2", - "c_uimm9sp_s" - ], - "extension": [ - "rv64_c" - ], - "match": "0xe002", - "mask": "0xe003" - }, - "lr_d": { - "encoding": "00010--00000-----011-----0101111", - "variable_fields": [ - "rd", - "rs1", - "aq", - "rl" - ], - "extension": [ - "rv64_a" - ], - "match": "0x1000302f", - "mask": "0xf9f0707f" - }, - "sc_d": { - "encoding": "00011------------011-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv64_a" - ], - "match": "0x1800302f", - "mask": "0xf800707f" - }, - "amoswap_d": { - "encoding": "00001------------011-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv64_a" - ], - "match": "0x800302f", - "mask": "0xf800707f" - }, - "amoadd_d": { - "encoding": "00000------------011-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv64_a" - ], - "match": "0x302f", - "mask": "0xf800707f" - }, - "amoxor_d": { - "encoding": "00100------------011-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv64_a" - ], - "match": "0x2000302f", - "mask": "0xf800707f" - }, - "amoand_d": { - "encoding": "01100------------011-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv64_a" - ], - "match": "0x6000302f", - "mask": "0xf800707f" - }, - "amoor_d": { - "encoding": "01000------------011-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv64_a" - ], - "match": "0x4000302f", - "mask": "0xf800707f" - }, - "amomin_d": { - "encoding": "10000------------011-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv64_a" - ], - "match": "0x8000302f", - "mask": "0xf800707f" - }, - "amomax_d": { - "encoding": "10100------------011-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv64_a" - ], - "match": "0xa000302f", - "mask": "0xf800707f" - }, - "amominu_d": { - "encoding": "11000------------011-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv64_a" - ], - "match": "0xc000302f", - "mask": "0xf800707f" - }, - "amomaxu_d": { - "encoding": "11100------------011-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "aq", - "rl" - ], - "extension": [ - "rv64_a" - ], - "match": "0xe000302f", - "mask": "0xf800707f" - }, - "sha512sum0r": { - "encoding": "0101000----------000-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv32_zknh", - "rv32_zkn", - "rv32_zk" - ], - "match": "0x50000033", - "mask": "0xfe00707f" - }, - "sha512sum1r": { - "encoding": "0101001----------000-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv32_zknh", - "rv32_zkn", - "rv32_zk" - ], - "match": "0x52000033", - "mask": "0xfe00707f" - }, - "sha512sig0l": { - "encoding": "0101010----------000-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv32_zknh", - "rv32_zkn", - "rv32_zk" - ], - "match": "0x54000033", - "mask": "0xfe00707f" - }, - "sha512sig0h": { - "encoding": "0101110----------000-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv32_zknh", - "rv32_zkn", - "rv32_zk" - ], - "match": "0x5c000033", - "mask": "0xfe00707f" - }, - "sha512sig1l": { - "encoding": "0101011----------000-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv32_zknh", - "rv32_zkn", - "rv32_zk" - ], - "match": "0x56000033", - "mask": "0xfe00707f" - }, - "sha512sig1h": { - "encoding": "0101111----------000-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv32_zknh", - "rv32_zkn", - "rv32_zk" - ], - "match": "0x5e000033", - "mask": "0xfe00707f" - }, - "aes32esmi": { - "encoding": "--10011----------000-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "bs" - ], - "extension": [ - "rv32_zkne", - "rv32_zkn", - "rv32_zk" - ], - "match": "0x26000033", - "mask": "0x3e00707f" - }, - "aes32esi": { - "encoding": "--10001----------000-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "bs" - ], - "extension": [ - "rv32_zkne", - "rv32_zkn", - "rv32_zk" - ], - "match": "0x22000033", - "mask": "0x3e00707f" - }, - "aes32dsmi": { - "encoding": "--10111----------000-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "bs" - ], - "extension": [ - "rv32_zknd", - "rv32_zkn", - "rv32_zk" - ], - "match": "0x2e000033", - "mask": "0x3e00707f" - }, - "aes32dsi": { - "encoding": "--10101----------000-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2", - "bs" - ], - "extension": [ - "rv32_zknd", - "rv32_zkn", - "rv32_zk" - ], - "match": "0x2a000033", - "mask": "0x3e00707f" - }, - "fmvh_x_d": { - "encoding": "111000100001-----000-----1010011", - "variable_fields": [ - "rd", - "rs1" - ], - "extension": [ - "rv32_d_zfa" - ], - "match": "0xe2100053", - "mask": "0xfff0707f" - }, - "fmvp_d_x": { - "encoding": "1011001----------000-----1010011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv32_d_zfa" - ], - "match": "0xb2000053", - "mask": "0xfe00707f" - }, - "c_flw": { - "encoding": "----------------011-----------00", - "variable_fields": [ - "rd_p", - "rs1_p", - "c_uimm7lo", - "c_uimm7hi" - ], - "extension": [ - "rv32_c_f" - ], - "match": "0x6000", - "mask": "0xe003" - }, - "c_fsw": { - "encoding": "----------------111-----------00", - "variable_fields": [ - "rs1_p", - "rs2_p", - "c_uimm7lo", - "c_uimm7hi" - ], - "extension": [ - "rv32_c_f" - ], - "match": "0xe000", - "mask": "0xe003" - }, - "c_flwsp": { - "encoding": "----------------011-----------10", - "variable_fields": [ - "rd", - "c_uimm8sphi", - "c_uimm8splo" - ], - "extension": [ - "rv32_c_f" - ], - "match": "0x6002", - "mask": "0xe003" - }, - "c_fswsp": { - "encoding": "----------------111-----------10", - "variable_fields": [ - "c_rs2", - "c_uimm8sp_s" - ], - "extension": [ - "rv32_c_f" - ], - "match": "0xe002", - "mask": "0xe003" - }, - "c_jal": { - "encoding": "----------------001-----------01", - "variable_fields": [ - "c_imm12" - ], - "extension": [ - "rv32_c" - ], - "match": "0x2001", - "mask": "0xe003" - }, - "xperm16": { - "encoding": "0010100----------110-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv_zbp" - ], - "match": "0x28006033", - "mask": "0xfe00707f" - }, - "lb_aq": { - "encoding": "001101-00000-----000-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rl" - ], - "extension": [ - "rv_zalasr" - ], - "match": "0x3400002f", - "mask": "0xfdf0707f" - }, - "lh_aq": { - "encoding": "001101-00000-----001-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rl" - ], - "extension": [ - "rv_zalasr" - ], - "match": "0x3400102f", - "mask": "0xfdf0707f" - }, - "lw_aq": { - "encoding": "001101-00000-----010-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rl" - ], - "extension": [ - "rv_zalasr" - ], - "match": "0x3400202f", - "mask": "0xfdf0707f" - }, - "ld_aq": { - "encoding": "001101-00000-----011-----0101111", - "variable_fields": [ - "rd", - "rs1", - "rl" - ], - "extension": [ - "rv_zalasr" - ], - "match": "0x3400302f", - "mask": "0xfdf0707f" - }, - "sb_rl": { - "encoding": "00111-1----------000000000101111", - "variable_fields": [ - "rs1", - "rs2", - "aq" - ], - "extension": [ - "rv_zalasr" - ], - "match": "0x3a00002f", - "mask": "0xfa007fff" - }, - "sh_rl": { - "encoding": "00111-1----------001000000101111", - "variable_fields": [ - "rs1", - "rs2", - "aq" - ], - "extension": [ - "rv_zalasr" - ], - "match": "0x3a00102f", - "mask": "0xfa007fff" - }, - "sw_rl": { - "encoding": "00111-1----------010000000101111", - "variable_fields": [ - "rs1", - "rs2", - "aq" - ], - "extension": [ - "rv_zalasr" - ], - "match": "0x3a00202f", - "mask": "0xfa007fff" - }, - "sd_rl": { - "encoding": "00111-1----------011000000101111", - "variable_fields": [ - "rs1", - "rs2", - "aq" - ], - "extension": [ - "rv_zalasr" - ], - "match": "0x3a00302f", - "mask": "0xfa007fff" - }, - "grevi": { - "encoding": "011010-----------101-----0010011", - "variable_fields": [ - "rd", - "rs1", - "shamtd" - ], - "extension": [ - "rv64_zbp" - ], - "match": "0x68005013", - "mask": "0xfc00707f" - }, - "gorci": { - "encoding": "001010-----------101-----0010011", - "variable_fields": [ - "rd", - "rs1", - "shamtd" - ], - "extension": [ - "rv64_zbp" - ], - "match": "0x28005013", - "mask": "0xfc00707f" - }, - "shfli": { - "encoding": "0000100----------001-----0010011", - "variable_fields": [ - "rd", - "rs1", - "shamtw" - ], - "extension": [ - "rv64_zbp" - ], - "match": "0x8001013", - "mask": "0xfe00707f" - }, - "unshfli": { - "encoding": "0000100----------101-----0010011", - "variable_fields": [ - "rd", - "rs1", - "shamtw" - ], - "extension": [ - "rv64_zbp" - ], - "match": "0x8005013", - "mask": "0xfe00707f" - }, - "xperm32": { - "encoding": "0010100----------000-----0110011", - "variable_fields": [ - "rd", - "rs1", - "rs2" - ], - "extension": [ - "rv64_zbp" - ], - "match": "0x28000033", - "mask": "0xfe00707f" - } -} \ No newline at end of file diff --git a/opcodes_maker/sorter.py b/opcodes_maker/sorter.py deleted file mode 100644 index f5da4993d..000000000 --- a/opcodes_maker/sorter.py +++ /dev/null @@ -1,28 +0,0 @@ -import json - -def sort_instr_json(dir_name, outname): - with open(dir_name, 'r') as file: - data = json.load(file) - - sorted_data = {} - for key in sorted(data): - entry = data[key] - if "variable_fields" in entry: - entry["variable_fields"] = sorted(entry["variable_fields"]) - if "extension" in entry: - entry["extension"] = sorted(entry["extension"]) - - # Add the processed entry to the sorted data - sorted_data[key] = entry - - with open(outname, 'w') as file: - json.dump(sorted_data, file, indent=4) - - print(json.dumps(sorted_data, indent=4)) - -def main(): - sort_instr_json("data.json", "udb_sorted_data.json") - sort_instr_json("instr_dict.json", "opcodes_sorted_data.json") - - -main() From 17a9e7885ff704d23417af57ae4c7e3515ea1aee Mon Sep 17 00:00:00 2001 From: Afonso Oliveira Date: Mon, 3 Feb 2025 13:58:41 +0000 Subject: [PATCH 06/33] Add all riscv-opcodes functionality to the Makefile Signed-off-by: Afonso Oliveira --- backends/opcodes_maker/Makefile | 23 ++++------------------- 1 file changed, 4 insertions(+), 19 deletions(-) mode change 100644 => 100755 backends/opcodes_maker/Makefile diff --git a/backends/opcodes_maker/Makefile b/backends/opcodes_maker/Makefile old mode 100644 new mode 100755 index 205e43f3e..c6cdca745 --- a/backends/opcodes_maker/Makefile +++ b/backends/opcodes_maker/Makefile @@ -1,16 +1,13 @@ # Directories YAML_DIR ?= ../../arch/inst -OPCODES_DIR := ../riscv-opcodes OUTPUT_DIR := output # Python scripts YAML_TO_JSON := yaml_to_json.py GENERATOR := generator.py -# Output files +# Generated files INSTR_DICT := $(OUTPUT_DIR)/instr_dict.json - -# Generated output files C_OUT := $(OUTPUT_DIR)/encoding.out.h CHISEL_OUT := $(OUTPUT_DIR)/inst.chisel SPINALHDL_OUT := $(OUTPUT_DIR)/inst.spinalhdl @@ -19,7 +16,6 @@ RUST_OUT := $(OUTPUT_DIR)/inst.rs GO_OUT := $(OUTPUT_DIR)/inst.go LATEX_OUT := $(OUTPUT_DIR)/instr-table.tex LATEX_PRIV_OUT := $(OUTPUT_DIR)/priv-instr-table.tex -PROCESSED_DICT := $(OUTPUT_DIR)/processed_instr_dict.json # Check for required files REQUIRED_FILES := $(YAML_TO_JSON) $(GENERATOR) @@ -39,23 +35,12 @@ $(INSTR_DICT): $(YAML_TO_JSON) | $(OUTPUT_DIR) # Generate all outputs generate: $(INSTR_DICT) - python3 $(GENERATOR) $(INSTR_DICT) -c -chisel -rust -go -latex + python3 $(GENERATOR) $(INSTR_DICT) -c -chisel -spinalhdl -sverilog -rust -go -latex mv encoding.out.h inst.chisel inst.spinalhdl inst.sverilog inst.rs inst.go \ - instr-table.tex priv-instr-table.tex processed_instr_dict.json \ - $(OUTPUT_DIR)/ 2>/dev/null || true + instr-table.tex priv-instr-table.tex $(OUTPUT_DIR)/ 2>/dev/null || true # Clean generated files clean: rm -rf $(OUTPUT_DIR) -# Help target -help: - @echo "Available targets:" - @echo " all (default) - Run complete pipeline: YAML -> JSON -> generate" - @echo " generate - Generate all output formats from JSON" - @echo " clean - Remove all generated files" - @echo "" - @echo "All output files will be placed in the '$(OUTPUT_DIR)' directory" - @echo "Use YAML_DIR=/path/to/yaml to specify custom YAML input directory" - -.PHONY: all generate clean help +.PHONY: all generate clean From 9aa1c85bf5f7e7cdd24e72433fe0f89b6cba420c Mon Sep 17 00:00:00 2001 From: Afonso Oliveira Date: Mon, 3 Feb 2025 16:02:28 +0000 Subject: [PATCH 07/33] Update riscv-opcodes submodule to latest master --- ext/riscv-opcodes | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ext/riscv-opcodes b/ext/riscv-opcodes index 5ce8977a5..9f70bcd37 160000 --- a/ext/riscv-opcodes +++ b/ext/riscv-opcodes @@ -1 +1 @@ -Subproject commit 5ce8977a5961a6bbfc1638e6676e60489665d882 +Subproject commit 9f70bcd37db27fddd34b4aa0524b8f19d31e9bb8 From 6dbadd9960fd696ee5e5eafc99355e32afb2a048 Mon Sep 17 00:00:00 2001 From: Afonso Oliveira Date: Mon, 3 Feb 2025 16:15:16 +0000 Subject: [PATCH 08/33] Update Rakefile to add gen:opcode_outputs. Usage ./do gen:opcode_outputs YAML_DIR=optional_path Signed-off-by: Afonso Oliveira --- Rakefile | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/Rakefile b/Rakefile index 40b2c220e..be4641907 100644 --- a/Rakefile +++ b/Rakefile @@ -10,6 +10,7 @@ require "yard" require "minitest/test_task" require_relative $root / "lib" / "architecture" +$opcode_outputs = $root / "gen" / "opcodes_outputs" directory "#{$root}/.stamps" @@ -39,6 +40,28 @@ file "#{$root}/.stamps/dev_gems" => ["#{$root}/.stamps"] do |t| FileUtils.touch t.name end +namespace :gen do + desc "Generate opcode outputs, optionally specify YAML_DIR=path/to/yaml" + task :opcode_outputs do + yaml_dir = ENV['YAML_DIR'] || "#{$root}/arch/inst" + mkdir_p $opcode_outputs + sh "#{$root}/.home/.venv/bin/python3 #{$root}/backends/opcodes_maker/yaml_to_json.py #{yaml_dir} #{$opcode_outputs}" + sh "#{$root}/.home/.venv/bin/python3 #{$root}/backends/opcodes_maker/generator.py #{$opcode_outputs}/instr_dict.json -c -chisel -spinalhdl -sverilog -rust -go -latex" + + # Move generated files to output dir + Dir.chdir("#{$root}") do + mv "encoding.out.h", "#{$opcode_outputs}/", force: true + mv "inst.chisel", "#{$opcode_outputs}/", force: true + mv "inst.spinalhdl", "#{$opcode_outputs}/", force: true + mv "inst.sverilog", "#{$opcode_outputs}/", force: true + mv "inst.rs", "#{$opcode_outputs}/", force: true + mv "inst.go", "#{$opcode_outputs}/", force: true + mv "instr-table.tex", "#{$opcode_outputs}/", force: true + mv "priv-instr-table.tex", "#{$opcode_outputs}/", force: true + end + end + end + namespace :gen do desc "Generate documentation for the ruby tooling" task tool_doc: "#{$root}/.stamps/dev_gems" do From 6d069c95ef599c39e1b18381a3d30c0af3ad1cd5 Mon Sep 17 00:00:00 2001 From: Afonso Oliveira Date: Tue, 4 Feb 2025 18:40:04 +0000 Subject: [PATCH 09/33] Add opcode generation to github actions; specifically, to the regress test Signed-off-by: Afonso Oliveira --- .github/workflows/regress.yml | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/.github/workflows/regress.yml b/.github/workflows/regress.yml index 83f06dc2f..0a32857b3 100644 --- a/.github/workflows/regress.yml +++ b/.github/workflows/regress.yml @@ -185,3 +185,32 @@ jobs: run: ./bin/build_container - name: Generate extension PDF run: ./do gen:profile[MockProfileRelease] + + regress-gen-opcode: + runs-on: ubuntu-latest + env: + SINGULARITY: 1 + steps: + - name: Clone Github Repo Action + uses: actions/checkout@v4 + - name: Setup apptainer + uses: eWaterCycle/setup-apptainer@v2.0.0 + - name: Get container from cache + id: cache-sif + uses: actions/cache@v4 + with: + path: .singularity/image.sif + key: ${{ hashFiles('container.def', 'bin/.container-tag') }} + - name: Get gems and node files from cache + id: cache-bundle-npm + uses: actions/cache@v4 + with: + path: | + .home/.gems + node_modules + key: ${{ hashFiles('Gemfile.lock') }}-${{ hashFiles('package-lock.json') }} + - if: ${{ steps.cache-sif.outputs.cache-hit != 'true' }} + name: Build container + run: ./bin/build_container + - name: Generate opcode outputs + run: ./do gen:opcode_outputs From 769b5b14f96565958561bc5a7a28a0f1a4e05a7c Mon Sep 17 00:00:00 2001 From: Afonso Oliveira Date: Tue, 4 Feb 2025 19:34:02 +0000 Subject: [PATCH 10/33] Add opcode generation to regress on Rakefile Signed-off-by: Afonso Oliveira --- Rakefile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Rakefile b/Rakefile index be4641907..831899dea 100644 --- a/Rakefile +++ b/Rakefile @@ -342,6 +342,8 @@ namespace :test do Rake::Task["gen:html"].invoke("generic_rv64") + Rake::Task["gen:opcode_outputs"].invoke + Rake::Task["#{$root}/gen/certificate_doc/pdf/MockCertificateModel.pdf"].invoke Rake::Task["#{$root}/gen/profile_doc/pdf/MockProfileRelease.pdf"].invoke From 1843f808b2fd5c5549ceda620c5f006aa62e45e3 Mon Sep 17 00:00:00 2001 From: Afonso Oliveira Date: Tue, 4 Feb 2025 20:29:48 +0000 Subject: [PATCH 11/33] Add riscv-opcodes to GHA and cache it Signed-off-by: Afonso Oliveira --- .github/workflows/regress.yml | 66 ++++++++++++++++++++--------------- 1 file changed, 38 insertions(+), 28 deletions(-) diff --git a/.github/workflows/regress.yml b/.github/workflows/regress.yml index 0a32857b3..e9ee24869 100644 --- a/.github/workflows/regress.yml +++ b/.github/workflows/regress.yml @@ -185,32 +185,42 @@ jobs: run: ./bin/build_container - name: Generate extension PDF run: ./do gen:profile[MockProfileRelease] - regress-gen-opcode: - runs-on: ubuntu-latest - env: - SINGULARITY: 1 - steps: - - name: Clone Github Repo Action - uses: actions/checkout@v4 - - name: Setup apptainer - uses: eWaterCycle/setup-apptainer@v2.0.0 - - name: Get container from cache - id: cache-sif - uses: actions/cache@v4 - with: - path: .singularity/image.sif - key: ${{ hashFiles('container.def', 'bin/.container-tag') }} - - name: Get gems and node files from cache - id: cache-bundle-npm - uses: actions/cache@v4 - with: - path: | - .home/.gems - node_modules - key: ${{ hashFiles('Gemfile.lock') }}-${{ hashFiles('package-lock.json') }} - - if: ${{ steps.cache-sif.outputs.cache-hit != 'true' }} - name: Build container - run: ./bin/build_container - - name: Generate opcode outputs - run: ./do gen:opcode_outputs + runs-on: ubuntu-latest + env: + SINGULARITY: 1 + steps: + - name: Clone Github Repo Action + uses: actions/checkout@v4 + - name: Cache riscv-opcodes submodule + id: cache-opcodes + uses: actions/cache@v4 + with: + path: ext/riscv-opcodes + key: ${{ runner.os }}-submodule-riscv-opcodes-${{ hashFiles('.gitmodules') }} + - if: steps.cache-opcodes.outputs.cache-hit != 'true' + name: Checkout riscv-opcodes submodule + run: | + git submodule init ext/riscv-opcodes + git submodule update ext/riscv-opcodes + - name: Setup apptainer + uses: eWaterCycle/setup-apptainer@v2.0.0 + - name: Get container from cache + id: cache-sif + uses: actions/cache@v4 + with: + path: .singularity/image.sif + key: ${{ hashFiles('container.def', 'bin/.container-tag') }} + - name: Get gems and node files from cache + id: cache-bundle-npm + uses: actions/cache@v4 + with: + path: | + .home/.gems + node_modules + key: ${{ hashFiles('Gemfile.lock') }}-${{ hashFiles('package-lock.json') }} + - if: ${{ steps.cache-sif.outputs.cache-hit != 'true' }} + name: Build container + run: ./bin/build_container + - name: Generate opcode outputs + run: ./do gen:opcode_outputs From 5296964a76f606fa88f05690fc8be59e4115c6ad Mon Sep 17 00:00:00 2001 From: Afonso Oliveira Date: Fri, 14 Feb 2025 12:59:14 +0000 Subject: [PATCH 12/33] Add fieldo.js created by Aliaksei Chapyzhenka, @drom --- backends/opcodes_maker/fieldo.js | 153 +++++++++++++++++++++++++++++++ 1 file changed, 153 insertions(+) create mode 100644 backends/opcodes_maker/fieldo.js diff --git a/backends/opcodes_maker/fieldo.js b/backends/opcodes_maker/fieldo.js new file mode 100644 index 000000000..d7d661548 --- /dev/null +++ b/backends/opcodes_maker/fieldo.js @@ -0,0 +1,153 @@ +'use strict'; + +const fieldo = { + fd: {msb: 11, lsb: 7, kind: 'fr', prio: 10, dst: true, count: 0}, + fs1: {msb: 19, lsb: 15, kind: 'fr', prio: 20, src: true, count: 0}, + fs2: {msb: 24, lsb: 20, kind: 'fr', prio: 30, src: true, count: 0}, + fs3: {msb: 31, lsb: 27, kind: 'fr', prio: 40, src: true, count: 0}, + + rd: {msb: 11, lsb: 7, kind: 'xr', prio: 10, dst: true, count: 753}, + rs1: {msb: 19, lsb: 15, kind: 'xr', prio: 20, src: true, count: 1007}, + rs2: {msb: 24, lsb: 20, kind: 'xr', prio: 30, src: true, count: 501}, + rs3: {msb: 31, lsb: 27, kind: 'xr', prio: 40, src: true, count: 26}, + + rm: {msb: 14, lsb: 12, kind: 'rm', count: 80}, + shamtq: {msb: 26, lsb: 20, bits: [6, 5, 4, 3, 2, 1, 0], count: 6}, + shamtd: {msb: 25, lsb: 20, bits: [5, 4, 3, 2, 1, 0], count: 17}, + shamtw: {msb: 24, lsb: 20, bits: [4, 3, 2, 1, 0], count: 29}, + shamtw4: {msb: 23, lsb: 20, bits: [3, 2, 1, 0], count: 2}, + + imm12: {msb: 31, lsb: 20, bits: [11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0], kind: 'sext', count: 23}, + + imm12lo: {msb: 11, lsb: 7, bits: [4, 3, 2, 1, 0], count: 9}, + imm12hi: {msb: 31, lsb: 25, bits: [11, 10, 9, 8, 7, 6, 5], count: 12}, + + imm20: {msb: 31, lsb: 12, bits: [31, 30, 29, 28, 27, 26, 25, 24, 23, 22, 21, 20, 19, 18, 17, 16, 15, 14, 13, 12], count: 2}, + jimm20: {msb: 31, lsb: 12, bits: [20, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 11, 19, 18, 17, 16, 15, 14, 13, 12], count: 1}, + + // vector + vd: {msb: 11, lsb: 7, kind: 'vr', prio: 10, dst: true, count: 412}, + vs1: {msb: 19, lsb: 15, kind: 'vr', prio: 40, src: true, count: 128}, + vs2: {msb: 24, lsb: 20, kind: 'vr', prio: 30, src: true, count: 380}, + vs3: {msb: 11, lsb: 7, kind: 'vr', prio: 20, src: true, dst: true, count: 38}, + vm: {msb: 25, lsb: 25, count: 395}, + nf: {msb: 31, lsb: 29, count: 72}, + wd: {msb: 26, lsb: 26, count: 36}, + + simm5: {msb: 19, lsb: 15, bits: [4, 3, 2, 1, 0], kind: 'sext', count: 30}, + zimm5: {msb: 19, lsb: 15}, + + fd_p: {msb: 4, lsb: 2, kind: 'frc', prio: 10, dst: true, count: 10}, + fs2_p: {msb: 4, lsb: 2, kind: 'frc', prio: 30, src: true, count: 15}, + c_fs2: {msb: 6, lsb: 2, kind: 'fr', prio: 30, src: true, count: 6}, + + rs1_p: {msb: 9, lsb: 7, kind: 'xrc', prio: 20, src: true, count: 19}, + rs2_p: {msb: 4, lsb: 2, kind: 'xrc', prio: 30, src: true, count: 15}, + rd_p: {msb: 4, lsb: 2, kind: 'xrc', prio: 10, dst: true, count: 10}, + rd_rs1_n0: {msb: 11, lsb: 7, kind: 'xr', prio: 10, dst: true, src: true, count: 3}, + rd_rs1_p: {msb: 9, lsb: 7, kind: 'xrc', prio: 10, dst: true, src: true, count: 18}, + rd_rs1: {msb: 11, lsb: 7, kind: 'xr', prio: 10, dst: true, count: 3}, + rd_n2: {msb: 11, lsb: 7, kind: 'xr', prio: 10, dst: true, count: 1}, + rd_n0: {msb: 11, lsb: 7, kind: 'xr', prio: 10, dst: true, count: 3}, + rs1_n0: {msb: 11, lsb: 7, kind: 'xr', prio: 20, src: true, count: 1}, + c_rs2_n0: {msb: 6, lsb: 2, kind: 'xr', prio: 30, src: true, count: 2}, + c_rs1_n0: {msb: 11, lsb: 7, kind: 'xr', prio: 20, src: true, count: 1}, + c_rs2: {msb: 6, lsb: 2, kind: 'xr', prio: 30, src: true, count: 6}, + c_sreg1: {msb: 9, lsb: 7, kind: 'xrc', prio: 20, src: true, count: 2}, + c_sreg2: {msb: 4, lsb: 2, kind: 'xrc', prio: 30, src: true, count: 2}, + + aq: {msb: 26, lsb: 26, count: 22}, + rl: {msb: 25, lsb: 25, count: 22}, + + // Compact Immediate Literals + c_nzuimm10: {msb: 12, lsb: 5, bits: [5, 4, 9, 8, 7, 6, 2, 3], count: 1}, + + c_uimm7lo: {msb: 6, lsb: 5, bits: [2, 6], count: 4}, + c_uimm7hi: {msb: 12, lsb: 10, bits: [5, 4, 3], count: 4}, + + c_nzimm6lo: {msb: 6, lsb: 2, bits: [4, 3, 2, 1, 0], count: 2}, + c_nzimm6hi: {msb: 12, lsb: 12, bits: [5], count: 2}, + + c_imm6lo: {msb: 6, lsb: 2, bits: [4, 3, 2, 1, 0], count: 4}, + c_imm6hi: {msb: 12, lsb: 12, bits: [5], kind: 'sext', count: 4}, + + c_nzimm10lo: {msb: 6, lsb: 2, bits: [4, 6, 8, 7, 5], count: 1}, + c_nzimm10hi: {msb: 12, lsb: 12, bits: [9], count: 1}, + + c_nzimm18lo: {msb: 6, lsb: 2, bits: [16, 15, 14, 13, 12], count: 1}, + c_nzimm18hi: {msb: 12, lsb: 12, bits: [17], count: 1}, + + c_imm12: {msb: 12, lsb: 2, bits: [11, 4, 9, 8, 10, 6, 7, 3, 2, 1, 5], count: 2}, + + c_bimm9lo: {msb: 6, lsb: 2, bits: [7, 6, 2, 1, 5], count: 2}, + c_bimm9hi: {msb: 12, lsb: 10, bits: [8, 4, 3], count: 2}, + + c_uimm8splo: {msb: 6, lsb: 2, bits: [4, 3, 2, 7, 6], count: 2}, + c_uimm8sphi: {msb: 12, lsb: 12, bits: [5], count: 2}, + + c_uimm8sp_s: {msb: 12, lsb: 7, bits: [5, 4, 3, 2, 7, 6], count: 2}, + + c_nzuimm5: {msb: 6, lsb: 2, bits: [4, 3, 2, 1, 0], count: 2}, + + c_nzuimm6lo: {msb: 6, lsb: 2, bits: [4, 3, 2, 1, 0], count: 4}, + c_nzuimm6hi: {msb: 12, lsb: 12, bits: [5], count: 3}, + + c_uimm8lo: {msb: 6, lsb: 5, bits: [7, 6], count: 6}, + c_uimm8hi: {msb: 12, lsb: 10, bits: [5, 4, 3], count: 6}, + + c_uimm9splo: {msb: 6, lsb: 2, bits: [4, 5, 8, 7, 6], count: 3}, + c_uimm9sphi: {msb: 12, lsb: 12, bits: [5], count: 3}, + + c_uimm9sp_s: {msb: 12, lsb: 7, bits: [5, 4, 3, 8, 7, 6], count: 3}, + + c_uimm2: {msb: 6, lsb: 5, count: 2}, + c_uimm1: {msb: 5, lsb: 5, count: 3}, + c_spimm: {msb: 3, lsb: 2, count: 4}, + c_uimm9lo: {msb: 6, lsb: 5, count: 2}, + c_uimm9hi: {msb: 12, lsb: 10, count: 2}, + c_uimm10splo: {msb: 6, lsb: 2, count: 1}, + c_uimm10sphi: {msb: 12, lsb: 12, count: 1}, + c_uimm10sp_s: {msb: 12, lsb: 7, count: 1}, + c_index: {msb: 9, lsb: 2, count: 1}, + c_rlist: {msb: 7, lsb: 4, count: 4}, + + bs: {msb: 31, lsb: 30, count: 6}, // byte select for RV32K AES + rnum: {msb: 23, lsb: 20, count: 1}, + + bimm12hi: {msb: 31, lsb: 25, bits: [12, 10, 9, 8, 7, 6, 5], count: 6}, + bimm12lo: {msb: 11, lsb: 7, bits: [4, 3, 2, 1, 11], count: 6}, + + fm: {msb: 31, lsb: 28, kind: 'fm', count: 1}, + pred: {msb: 27, lsb: 24, kind: 'pred', count: 1}, + succ: {msb: 23, lsb: 20, kind: 'succ', count: 1}, + + csr: {msb: 31, lsb: 20, kind: 'csr', count: 6}, + + zimm: {msb: 19, lsb: 15, count: 6}, + zimm10: {msb: 29, lsb: 20, kind: 'vtypei', count: 1}, + zimm11: {msb: 30, lsb: 20, kind: 'vtypei', count: 1}, + + zimm6hi: {msb: 26, lsb: 26}, + zimm6lo: {msb: 19, lsb: 15}, + + // rv32_zpn + imm2: {msb: 21, lsb: 20, count: 1}, + // rv_zpn + imm3: {msb: 22, lsb: 20, count: 9}, + imm4: {msb: 23, lsb: 20, count: 8}, + imm5: {msb: 24, lsb: 20, count: 11}, + imm6: {msb: 25, lsb: 20, count: 1}, + + mop_r_t_30: {msb: 30, lsb: 30}, + mop_r_t_27_26: {msb: 27, lsb: 26}, + mop_r_t_21_20: {msb: 21, lsb: 20}, + mop_rr_t_30: {msb: 30, lsb: 30}, + mop_rr_t_27_26: {msb: 27, lsb: 26}, + + c_mop_t: {msb: 10, lsb: 8}, + +}; + +module.exports = fieldo; + +/* eslint camelcase: 0 */ From 426ae2448d4dc3ea1e44a923ce1d56a1bf04cf15 Mon Sep 17 00:00:00 2001 From: Afonso Oliveira Date: Fri, 14 Feb 2025 13:45:13 +0000 Subject: [PATCH 13/33] Update script to use fieldo.js to find immediates Signed-off-by: Afonso Oliveira --- backends/opcodes_maker/yaml_to_json.py | 171 ++++++++++++++++++++++--- 1 file changed, 150 insertions(+), 21 deletions(-) mode change 100644 => 100755 backends/opcodes_maker/yaml_to_json.py diff --git a/backends/opcodes_maker/yaml_to_json.py b/backends/opcodes_maker/yaml_to_json.py old mode 100644 new mode 100755 index 93c55182e..ae7a280b2 --- a/backends/opcodes_maker/yaml_to_json.py +++ b/backends/opcodes_maker/yaml_to_json.py @@ -1,42 +1,171 @@ -#!/usr/bin/env python3 - +import re from typing import List, Dict, Union, Any +import argparse import os +import sys import yaml import json -import argparse -import sys +from typing import List, Dict, Union +import subprocess + + +def load_fieldo() -> dict: + """ + Load the fieldo mapping from the JavaScript file (fieldo.js) by invoking Node.js. + + """ + this_dir = os.path.dirname(os.path.abspath(__file__)) + # The command runs Node.js in the current directory and prints the JSON representation. + cmd = ["node", "-e", 'console.log(JSON.stringify(require("./fieldo.js")));'] + output = subprocess.check_output(cmd, cwd=this_dir) + return json.loads(output) + + +# Set of register names that need transformation. +reg_names = {"qs1", "qs2", "qd", "fs1", "fs2", "fd"} +fieldo = load_fieldo() def range_size(range_str: str) -> int: + """Compute the bit width from a range string like '31-20'.""" try: end, start = map(int, range_str.split("-")) return abs(end - start) + 1 - except ValueError: + except Exception: return 0 -reg_names = {"qs1", "qs2", "qd", "fs1", "fs2", "fd"} - - -def GetVariables(vars: List[Dict[str, str]]) -> List[str]: - var_names = [] - for var in vars: +def lookup_immediate_by_range( + var_base: str, high: int, low: int, instr_name: str +) -> Union[str, None]: + """ + Look up a canonical field name from the fieldo mapping based on the bit range. + + - If var_base is "imm", then we consider any field whose name contains "imm" + (but not starting with "c_" and not "csr"). + - If var_base starts with "c_", then only keys starting with "c_" are considered. + - Otherwise, we require that the key starts with var_base (for "simm", "jimm", etc.). + + If multiple candidates are found and var_base is "imm", we prefer "zimm" if present. + Otherwise, instr_name is used as a hint. + """ + candidates = [] + for key, field in fieldo.items(): + if field.get("msb") == high and field.get("lsb") == low: + if var_base == "imm": + if "imm" in key and not key.startswith("c_") and key != "csr": + candidates.append(key) + elif var_base.startswith("c_"): + if key.startswith("c_"): + candidates.append(key) + else: + if key.startswith(var_base): + candidates.append(key) + if candidates: + if len(candidates) == 1: + return candidates[0] + else: + if var_base == "imm" and "zimm" in candidates: + return "zimm" + lower_instr = instr_name.lower() + for cand in candidates: + if lower_instr.startswith("j") and cand.startswith("jimm"): + return cand + if lower_instr.startswith("b") and cand.startswith("bimm"): + return cand + return candidates[0] + return None + + +def canonical_immediate_names( + var_name: str, location: str, instr_name: str +) -> List[str]: + """ + Given a YAML immediate variable (its base name and location), return a list of canonical + field names strictly from the fieldo mapping. + + - For non-composite locations (e.g. "31-20"), the range is parsed and a lookup is performed. + - For composite locations (detected by "|" in the location), we assume a branch-immediate split: + the high part uses the range (31, 25) and the low part (11, 7), with an appropriate prefix. + - If no candidate is found in fieldo, an empty list is returned. + """ + if "|" in location: + parts = location.split("|") + if len(parts) == 4: + prefix = "bimm" if instr_name.lower().startswith("b") else "imm" + hi_candidate = lookup_immediate_by_range(prefix, 31, 25, instr_name) + lo_candidate = lookup_immediate_by_range(prefix, 11, 7, instr_name) + if hi_candidate is None or lo_candidate is None: + print( + f"Warning: composite immediate candidate not found in fieldo for {var_name} with location {location}" + ) + return [] + return [hi_candidate, lo_candidate] + else: + # For other composite formats, attempt a basic lookup using the first two numbers. + nums = list(map(int, re.findall(r"\d+", location))) + if len(nums) >= 2: + high, low = nums[0], nums[1] + candidate = lookup_immediate_by_range(var_name, high, low, instr_name) + if candidate: + return [candidate] + print( + f"Warning: composite immediate candidate not found in fieldo for {var_name} with location {location}" + ) + return [] + else: + try: + high, low = map(int, location.split("-")) + except Exception: + print(f"Warning: invalid immediate location {location} for {var_name}") + return [] + candidate = lookup_immediate_by_range(var_name, high, low, instr_name) + if candidate: + return [candidate] + else: + print( + f"Warning: No fieldo canonical name for {var_name} with range {location}" + ) + return [] + + +def GetVariables(vars: List[Dict[str, str]], instr_name: str = "") -> List[str]: + """ + Process the YAML variable definitions and return a list of variable names as expected by the generator. + + - For registers (names in reg_names), the first character is replaced with "r". + - For "shamt", the field is renamed to "shamtw" if its width is 5 or "shamtd" if 6. + - For immediates (base names "imm", "simm", "zimm", "jimm", or those starting with "c_"), + the canonical names are determined strictly by looking them up in fieldo. + Only names found in fieldo are used. + + The variables are processed in reverse order. + """ + result = [] + for var in reversed(vars): var_name = var["name"] + location = var.get("location", "") if var_name in reg_names: - # Since strings are immutable. - lst_var_name = list(var_name) - lst_var_name[0] = "r" - var_name = "".join(lst_var_name) + result.append("r" + var_name[1:]) elif var_name == "shamt": - size = range_size(var["location"]) + size = range_size(location) if size == 5: - var_name = "shamtw" + result.append("shamtw") elif size == 6: - var_name = "shamtd" - var_names.append(var_name) - var_names.reverse() - return var_names + result.append("shamtd") + else: + result.append(var_name) + elif var_name in ("imm", "simm", "zimm", "jimm") or var_name.startswith("c_"): + canon_names = canonical_immediate_names(var_name, location, instr_name) + if canon_names: + result.extend(canon_names) + else: + print( + f"Warning: Skipping immediate field {var_name} with location {location} since no fieldo mapping was found." + ) + else: + result.append(var_name) + return result def BitStringToHex(bit_str: str) -> str: From 0cd3b11db1fd46eb1a857391ffd710c19bd7935c Mon Sep 17 00:00:00 2001 From: Afonso Oliveira Date: Mon, 24 Feb 2025 11:04:10 +0000 Subject: [PATCH 14/33] Change fieldo.js to fieldo.json Signed-off-by: Afonso Oliveira --- backends/opcodes_maker/fieldo.js | 153 ------ backends/opcodes_maker/fieldo.json | 660 +++++++++++++++++++++++++ backends/opcodes_maker/yaml_to_json.py | 17 +- 3 files changed, 669 insertions(+), 161 deletions(-) delete mode 100644 backends/opcodes_maker/fieldo.js create mode 100644 backends/opcodes_maker/fieldo.json diff --git a/backends/opcodes_maker/fieldo.js b/backends/opcodes_maker/fieldo.js deleted file mode 100644 index d7d661548..000000000 --- a/backends/opcodes_maker/fieldo.js +++ /dev/null @@ -1,153 +0,0 @@ -'use strict'; - -const fieldo = { - fd: {msb: 11, lsb: 7, kind: 'fr', prio: 10, dst: true, count: 0}, - fs1: {msb: 19, lsb: 15, kind: 'fr', prio: 20, src: true, count: 0}, - fs2: {msb: 24, lsb: 20, kind: 'fr', prio: 30, src: true, count: 0}, - fs3: {msb: 31, lsb: 27, kind: 'fr', prio: 40, src: true, count: 0}, - - rd: {msb: 11, lsb: 7, kind: 'xr', prio: 10, dst: true, count: 753}, - rs1: {msb: 19, lsb: 15, kind: 'xr', prio: 20, src: true, count: 1007}, - rs2: {msb: 24, lsb: 20, kind: 'xr', prio: 30, src: true, count: 501}, - rs3: {msb: 31, lsb: 27, kind: 'xr', prio: 40, src: true, count: 26}, - - rm: {msb: 14, lsb: 12, kind: 'rm', count: 80}, - shamtq: {msb: 26, lsb: 20, bits: [6, 5, 4, 3, 2, 1, 0], count: 6}, - shamtd: {msb: 25, lsb: 20, bits: [5, 4, 3, 2, 1, 0], count: 17}, - shamtw: {msb: 24, lsb: 20, bits: [4, 3, 2, 1, 0], count: 29}, - shamtw4: {msb: 23, lsb: 20, bits: [3, 2, 1, 0], count: 2}, - - imm12: {msb: 31, lsb: 20, bits: [11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0], kind: 'sext', count: 23}, - - imm12lo: {msb: 11, lsb: 7, bits: [4, 3, 2, 1, 0], count: 9}, - imm12hi: {msb: 31, lsb: 25, bits: [11, 10, 9, 8, 7, 6, 5], count: 12}, - - imm20: {msb: 31, lsb: 12, bits: [31, 30, 29, 28, 27, 26, 25, 24, 23, 22, 21, 20, 19, 18, 17, 16, 15, 14, 13, 12], count: 2}, - jimm20: {msb: 31, lsb: 12, bits: [20, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 11, 19, 18, 17, 16, 15, 14, 13, 12], count: 1}, - - // vector - vd: {msb: 11, lsb: 7, kind: 'vr', prio: 10, dst: true, count: 412}, - vs1: {msb: 19, lsb: 15, kind: 'vr', prio: 40, src: true, count: 128}, - vs2: {msb: 24, lsb: 20, kind: 'vr', prio: 30, src: true, count: 380}, - vs3: {msb: 11, lsb: 7, kind: 'vr', prio: 20, src: true, dst: true, count: 38}, - vm: {msb: 25, lsb: 25, count: 395}, - nf: {msb: 31, lsb: 29, count: 72}, - wd: {msb: 26, lsb: 26, count: 36}, - - simm5: {msb: 19, lsb: 15, bits: [4, 3, 2, 1, 0], kind: 'sext', count: 30}, - zimm5: {msb: 19, lsb: 15}, - - fd_p: {msb: 4, lsb: 2, kind: 'frc', prio: 10, dst: true, count: 10}, - fs2_p: {msb: 4, lsb: 2, kind: 'frc', prio: 30, src: true, count: 15}, - c_fs2: {msb: 6, lsb: 2, kind: 'fr', prio: 30, src: true, count: 6}, - - rs1_p: {msb: 9, lsb: 7, kind: 'xrc', prio: 20, src: true, count: 19}, - rs2_p: {msb: 4, lsb: 2, kind: 'xrc', prio: 30, src: true, count: 15}, - rd_p: {msb: 4, lsb: 2, kind: 'xrc', prio: 10, dst: true, count: 10}, - rd_rs1_n0: {msb: 11, lsb: 7, kind: 'xr', prio: 10, dst: true, src: true, count: 3}, - rd_rs1_p: {msb: 9, lsb: 7, kind: 'xrc', prio: 10, dst: true, src: true, count: 18}, - rd_rs1: {msb: 11, lsb: 7, kind: 'xr', prio: 10, dst: true, count: 3}, - rd_n2: {msb: 11, lsb: 7, kind: 'xr', prio: 10, dst: true, count: 1}, - rd_n0: {msb: 11, lsb: 7, kind: 'xr', prio: 10, dst: true, count: 3}, - rs1_n0: {msb: 11, lsb: 7, kind: 'xr', prio: 20, src: true, count: 1}, - c_rs2_n0: {msb: 6, lsb: 2, kind: 'xr', prio: 30, src: true, count: 2}, - c_rs1_n0: {msb: 11, lsb: 7, kind: 'xr', prio: 20, src: true, count: 1}, - c_rs2: {msb: 6, lsb: 2, kind: 'xr', prio: 30, src: true, count: 6}, - c_sreg1: {msb: 9, lsb: 7, kind: 'xrc', prio: 20, src: true, count: 2}, - c_sreg2: {msb: 4, lsb: 2, kind: 'xrc', prio: 30, src: true, count: 2}, - - aq: {msb: 26, lsb: 26, count: 22}, - rl: {msb: 25, lsb: 25, count: 22}, - - // Compact Immediate Literals - c_nzuimm10: {msb: 12, lsb: 5, bits: [5, 4, 9, 8, 7, 6, 2, 3], count: 1}, - - c_uimm7lo: {msb: 6, lsb: 5, bits: [2, 6], count: 4}, - c_uimm7hi: {msb: 12, lsb: 10, bits: [5, 4, 3], count: 4}, - - c_nzimm6lo: {msb: 6, lsb: 2, bits: [4, 3, 2, 1, 0], count: 2}, - c_nzimm6hi: {msb: 12, lsb: 12, bits: [5], count: 2}, - - c_imm6lo: {msb: 6, lsb: 2, bits: [4, 3, 2, 1, 0], count: 4}, - c_imm6hi: {msb: 12, lsb: 12, bits: [5], kind: 'sext', count: 4}, - - c_nzimm10lo: {msb: 6, lsb: 2, bits: [4, 6, 8, 7, 5], count: 1}, - c_nzimm10hi: {msb: 12, lsb: 12, bits: [9], count: 1}, - - c_nzimm18lo: {msb: 6, lsb: 2, bits: [16, 15, 14, 13, 12], count: 1}, - c_nzimm18hi: {msb: 12, lsb: 12, bits: [17], count: 1}, - - c_imm12: {msb: 12, lsb: 2, bits: [11, 4, 9, 8, 10, 6, 7, 3, 2, 1, 5], count: 2}, - - c_bimm9lo: {msb: 6, lsb: 2, bits: [7, 6, 2, 1, 5], count: 2}, - c_bimm9hi: {msb: 12, lsb: 10, bits: [8, 4, 3], count: 2}, - - c_uimm8splo: {msb: 6, lsb: 2, bits: [4, 3, 2, 7, 6], count: 2}, - c_uimm8sphi: {msb: 12, lsb: 12, bits: [5], count: 2}, - - c_uimm8sp_s: {msb: 12, lsb: 7, bits: [5, 4, 3, 2, 7, 6], count: 2}, - - c_nzuimm5: {msb: 6, lsb: 2, bits: [4, 3, 2, 1, 0], count: 2}, - - c_nzuimm6lo: {msb: 6, lsb: 2, bits: [4, 3, 2, 1, 0], count: 4}, - c_nzuimm6hi: {msb: 12, lsb: 12, bits: [5], count: 3}, - - c_uimm8lo: {msb: 6, lsb: 5, bits: [7, 6], count: 6}, - c_uimm8hi: {msb: 12, lsb: 10, bits: [5, 4, 3], count: 6}, - - c_uimm9splo: {msb: 6, lsb: 2, bits: [4, 5, 8, 7, 6], count: 3}, - c_uimm9sphi: {msb: 12, lsb: 12, bits: [5], count: 3}, - - c_uimm9sp_s: {msb: 12, lsb: 7, bits: [5, 4, 3, 8, 7, 6], count: 3}, - - c_uimm2: {msb: 6, lsb: 5, count: 2}, - c_uimm1: {msb: 5, lsb: 5, count: 3}, - c_spimm: {msb: 3, lsb: 2, count: 4}, - c_uimm9lo: {msb: 6, lsb: 5, count: 2}, - c_uimm9hi: {msb: 12, lsb: 10, count: 2}, - c_uimm10splo: {msb: 6, lsb: 2, count: 1}, - c_uimm10sphi: {msb: 12, lsb: 12, count: 1}, - c_uimm10sp_s: {msb: 12, lsb: 7, count: 1}, - c_index: {msb: 9, lsb: 2, count: 1}, - c_rlist: {msb: 7, lsb: 4, count: 4}, - - bs: {msb: 31, lsb: 30, count: 6}, // byte select for RV32K AES - rnum: {msb: 23, lsb: 20, count: 1}, - - bimm12hi: {msb: 31, lsb: 25, bits: [12, 10, 9, 8, 7, 6, 5], count: 6}, - bimm12lo: {msb: 11, lsb: 7, bits: [4, 3, 2, 1, 11], count: 6}, - - fm: {msb: 31, lsb: 28, kind: 'fm', count: 1}, - pred: {msb: 27, lsb: 24, kind: 'pred', count: 1}, - succ: {msb: 23, lsb: 20, kind: 'succ', count: 1}, - - csr: {msb: 31, lsb: 20, kind: 'csr', count: 6}, - - zimm: {msb: 19, lsb: 15, count: 6}, - zimm10: {msb: 29, lsb: 20, kind: 'vtypei', count: 1}, - zimm11: {msb: 30, lsb: 20, kind: 'vtypei', count: 1}, - - zimm6hi: {msb: 26, lsb: 26}, - zimm6lo: {msb: 19, lsb: 15}, - - // rv32_zpn - imm2: {msb: 21, lsb: 20, count: 1}, - // rv_zpn - imm3: {msb: 22, lsb: 20, count: 9}, - imm4: {msb: 23, lsb: 20, count: 8}, - imm5: {msb: 24, lsb: 20, count: 11}, - imm6: {msb: 25, lsb: 20, count: 1}, - - mop_r_t_30: {msb: 30, lsb: 30}, - mop_r_t_27_26: {msb: 27, lsb: 26}, - mop_r_t_21_20: {msb: 21, lsb: 20}, - mop_rr_t_30: {msb: 30, lsb: 30}, - mop_rr_t_27_26: {msb: 27, lsb: 26}, - - c_mop_t: {msb: 10, lsb: 8}, - -}; - -module.exports = fieldo; - -/* eslint camelcase: 0 */ diff --git a/backends/opcodes_maker/fieldo.json b/backends/opcodes_maker/fieldo.json new file mode 100644 index 000000000..31562ff21 --- /dev/null +++ b/backends/opcodes_maker/fieldo.json @@ -0,0 +1,660 @@ +{ + "fd": { + "msb": 11, + "lsb": 7, + "kind": "fr", + "prio": 10, + "dst": true, + "count": 0 + }, + "fs1": { + "msb": 19, + "lsb": 15, + "kind": "fr", + "prio": 20, + "src": true, + "count": 0 + }, + "fs2": { + "msb": 24, + "lsb": 20, + "kind": "fr", + "prio": 30, + "src": true, + "count": 0 + }, + "fs3": { + "msb": 31, + "lsb": 27, + "kind": "fr", + "prio": 40, + "src": true, + "count": 0 + }, + "rd": { + "msb": 11, + "lsb": 7, + "kind": "xr", + "prio": 10, + "dst": true, + "count": 753 + }, + "rs1": { + "msb": 19, + "lsb": 15, + "kind": "xr", + "prio": 20, + "src": true, + "count": 1007 + }, + "rs2": { + "msb": 24, + "lsb": 20, + "kind": "xr", + "prio": 30, + "src": true, + "count": 501 + }, + "rs3": { + "msb": 31, + "lsb": 27, + "kind": "xr", + "prio": 40, + "src": true, + "count": 26 + }, + "rm": { + "msb": 14, + "lsb": 12, + "kind": "rm", + "count": 80 + }, + "shamtq": { + "msb": 26, + "lsb": 20, + "bits": [6, 5, 4, 3, 2, 1, 0], + "count": 6 + }, + "shamtd": { + "msb": 25, + "lsb": 20, + "bits": [5, 4, 3, 2, 1, 0], + "count": 17 + }, + "shamtw": { + "msb": 24, + "lsb": 20, + "bits": [4, 3, 2, 1, 0], + "count": 29 + }, + "shamtw4": { + "msb": 23, + "lsb": 20, + "bits": [3, 2, 1, 0], + "count": 2 + }, + "imm12": { + "msb": 31, + "lsb": 20, + "bits": [11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0], + "kind": "sext", + "count": 23 + }, + "imm12lo": { + "msb": 11, + "lsb": 7, + "bits": [4, 3, 2, 1, 0], + "count": 9 + }, + "imm12hi": { + "msb": 31, + "lsb": 25, + "bits": [11, 10, 9, 8, 7, 6, 5], + "count": 12 + }, + "imm20": { + "msb": 31, + "lsb": 12, + "bits": [ + 31, 30, 29, 28, 27, 26, 25, 24, 23, 22, 21, 20, 19, 18, 17, 16, 15, 14, + 13, 12 + ], + "count": 2 + }, + "jimm20": { + "msb": 31, + "lsb": 12, + "bits": [ + 20, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 11, 19, 18, 17, 16, 15, 14, 13, 12 + ], + "count": 1 + }, + "vd": { + "msb": 11, + "lsb": 7, + "kind": "vr", + "prio": 10, + "dst": true, + "count": 412 + }, + "vs1": { + "msb": 19, + "lsb": 15, + "kind": "vr", + "prio": 40, + "src": true, + "count": 128 + }, + "vs2": { + "msb": 24, + "lsb": 20, + "kind": "vr", + "prio": 30, + "src": true, + "count": 380 + }, + "vs3": { + "msb": 11, + "lsb": 7, + "kind": "vr", + "prio": 20, + "src": true, + "dst": true, + "count": 38 + }, + "vm": { + "msb": 25, + "lsb": 25, + "count": 395 + }, + "nf": { + "msb": 31, + "lsb": 29, + "count": 72 + }, + "wd": { + "msb": 26, + "lsb": 26, + "count": 36 + }, + "simm5": { + "msb": 19, + "lsb": 15, + "bits": [4, 3, 2, 1, 0], + "kind": "sext", + "count": 30 + }, + "zimm5": { + "msb": 19, + "lsb": 15 + }, + "fd_p": { + "msb": 4, + "lsb": 2, + "kind": "frc", + "prio": 10, + "dst": true, + "count": 10 + }, + "fs2_p": { + "msb": 4, + "lsb": 2, + "kind": "frc", + "prio": 30, + "src": true, + "count": 15 + }, + "c_fs2": { + "msb": 6, + "lsb": 2, + "kind": "fr", + "prio": 30, + "src": true, + "count": 6 + }, + "rs1_p": { + "msb": 9, + "lsb": 7, + "kind": "xrc", + "prio": 20, + "src": true, + "count": 19 + }, + "rs2_p": { + "msb": 4, + "lsb": 2, + "kind": "xrc", + "prio": 30, + "src": true, + "count": 15 + }, + "rd_p": { + "msb": 4, + "lsb": 2, + "kind": "xrc", + "prio": 10, + "dst": true, + "count": 10 + }, + "rd_rs1_n0": { + "msb": 11, + "lsb": 7, + "kind": "xr", + "prio": 10, + "dst": true, + "src": true, + "count": 3 + }, + "rd_rs1_p": { + "msb": 9, + "lsb": 7, + "kind": "xrc", + "prio": 10, + "dst": true, + "src": true, + "count": 18 + }, + "rd_rs1": { + "msb": 11, + "lsb": 7, + "kind": "xr", + "prio": 10, + "dst": true, + "count": 3 + }, + "rd_n2": { + "msb": 11, + "lsb": 7, + "kind": "xr", + "prio": 10, + "dst": true, + "count": 1 + }, + "rd_n0": { + "msb": 11, + "lsb": 7, + "kind": "xr", + "prio": 10, + "dst": true, + "count": 3 + }, + "rs1_n0": { + "msb": 11, + "lsb": 7, + "kind": "xr", + "prio": 20, + "src": true, + "count": 1 + }, + "c_rs2_n0": { + "msb": 6, + "lsb": 2, + "kind": "xr", + "prio": 30, + "src": true, + "count": 2 + }, + "c_rs1_n0": { + "msb": 11, + "lsb": 7, + "kind": "xr", + "prio": 20, + "src": true, + "count": 1 + }, + "c_rs2": { + "msb": 6, + "lsb": 2, + "kind": "xr", + "prio": 30, + "src": true, + "count": 6 + }, + "c_sreg1": { + "msb": 9, + "lsb": 7, + "kind": "xrc", + "prio": 20, + "src": true, + "count": 2 + }, + "c_sreg2": { + "msb": 4, + "lsb": 2, + "kind": "xrc", + "prio": 30, + "src": true, + "count": 2 + }, + "aq": { + "msb": 26, + "lsb": 26, + "count": 22 + }, + "rl": { + "msb": 25, + "lsb": 25, + "count": 22 + }, + "c_nzuimm10": { + "msb": 12, + "lsb": 5, + "bits": [5, 4, 9, 8, 7, 6, 2, 3], + "count": 1 + }, + "c_uimm7lo": { + "msb": 6, + "lsb": 5, + "bits": [2, 6], + "count": 4 + }, + "c_uimm7hi": { + "msb": 12, + "lsb": 10, + "bits": [5, 4, 3], + "count": 4 + }, + "c_nzimm6lo": { + "msb": 6, + "lsb": 2, + "bits": [4, 3, 2, 1, 0], + "count": 2 + }, + "c_nzimm6hi": { + "msb": 12, + "lsb": 12, + "bits": [5], + "count": 2 + }, + "c_imm6lo": { + "msb": 6, + "lsb": 2, + "bits": [4, 3, 2, 1, 0], + "count": 4 + }, + "c_imm6hi": { + "msb": 12, + "lsb": 12, + "bits": [5], + "kind": "sext", + "count": 4 + }, + "c_nzimm10lo": { + "msb": 6, + "lsb": 2, + "bits": [4, 6, 8, 7, 5], + "count": 1 + }, + "c_nzimm10hi": { + "msb": 12, + "lsb": 12, + "bits": [9], + "count": 1 + }, + "c_nzimm18lo": { + "msb": 6, + "lsb": 2, + "bits": [16, 15, 14, 13, 12], + "count": 1 + }, + "c_nzimm18hi": { + "msb": 12, + "lsb": 12, + "bits": [17], + "count": 1 + }, + "c_imm12": { + "msb": 12, + "lsb": 2, + "bits": [11, 4, 9, 8, 10, 6, 7, 3, 2, 1, 5], + "count": 2 + }, + "c_bimm9lo": { + "msb": 6, + "lsb": 2, + "bits": [7, 6, 2, 1, 5], + "count": 2 + }, + "c_bimm9hi": { + "msb": 12, + "lsb": 10, + "bits": [8, 4, 3], + "count": 2 + }, + "c_uimm8splo": { + "msb": 6, + "lsb": 2, + "bits": [4, 3, 2, 7, 6], + "count": 2 + }, + "c_uimm8sphi": { + "msb": 12, + "lsb": 12, + "bits": [5], + "count": 2 + }, + "c_uimm8sp_s": { + "msb": 12, + "lsb": 7, + "bits": [5, 4, 3, 2, 7, 6], + "count": 2 + }, + "c_nzuimm5": { + "msb": 6, + "lsb": 2, + "bits": [4, 3, 2, 1, 0], + "count": 2 + }, + "c_nzuimm6lo": { + "msb": 6, + "lsb": 2, + "bits": [4, 3, 2, 1, 0], + "count": 4 + }, + "c_nzuimm6hi": { + "msb": 12, + "lsb": 12, + "bits": [5], + "count": 3 + }, + "c_uimm8lo": { + "msb": 6, + "lsb": 5, + "bits": [7, 6], + "count": 6 + }, + "c_uimm8hi": { + "msb": 12, + "lsb": 10, + "bits": [5, 4, 3], + "count": 6 + }, + "c_uimm9splo": { + "msb": 6, + "lsb": 2, + "bits": [4, 5, 8, 7, 6], + "count": 3 + }, + "c_uimm9sphi": { + "msb": 12, + "lsb": 12, + "bits": [5], + "count": 3 + }, + "c_uimm9sp_s": { + "msb": 12, + "lsb": 7, + "bits": [5, 4, 3, 8, 7, 6], + "count": 3 + }, + "c_uimm2": { + "msb": 6, + "lsb": 5, + "count": 2 + }, + "c_uimm1": { + "msb": 5, + "lsb": 5, + "count": 3 + }, + "c_spimm": { + "msb": 3, + "lsb": 2, + "count": 4 + }, + "c_uimm9lo": { + "msb": 6, + "lsb": 5, + "count": 2 + }, + "c_uimm9hi": { + "msb": 12, + "lsb": 10, + "count": 2 + }, + "c_uimm10splo": { + "msb": 6, + "lsb": 2, + "count": 1 + }, + "c_uimm10sphi": { + "msb": 12, + "lsb": 12, + "count": 1 + }, + "c_uimm10sp_s": { + "msb": 12, + "lsb": 7, + "count": 1 + }, + "c_index": { + "msb": 9, + "lsb": 2, + "count": 1 + }, + "c_rlist": { + "msb": 7, + "lsb": 4, + "count": 4 + }, + "bs": { + "msb": 31, + "lsb": 30, + "count": 6 + }, + "rnum": { + "msb": 23, + "lsb": 20, + "count": 1 + }, + "bimm12hi": { + "msb": 31, + "lsb": 25, + "bits": [12, 10, 9, 8, 7, 6, 5], + "count": 6 + }, + "bimm12lo": { + "msb": 11, + "lsb": 7, + "bits": [4, 3, 2, 1, 11], + "count": 6 + }, + "fm": { + "msb": 31, + "lsb": 28, + "kind": "fm", + "count": 1 + }, + "pred": { + "msb": 27, + "lsb": 24, + "kind": "pred", + "count": 1 + }, + "succ": { + "msb": 23, + "lsb": 20, + "kind": "succ", + "count": 1 + }, + "csr": { + "msb": 31, + "lsb": 20, + "kind": "csr", + "count": 6 + }, + "zimm": { + "msb": 19, + "lsb": 15, + "count": 6 + }, + "zimm10": { + "msb": 29, + "lsb": 20, + "kind": "vtypei", + "count": 1 + }, + "zimm11": { + "msb": 30, + "lsb": 20, + "kind": "vtypei", + "count": 1 + }, + "zimm6hi": { + "msb": 26, + "lsb": 26 + }, + "zimm6lo": { + "msb": 19, + "lsb": 15 + }, + "imm2": { + "msb": 21, + "lsb": 20, + "count": 1 + }, + "imm3": { + "msb": 22, + "lsb": 20, + "count": 9 + }, + "imm4": { + "msb": 23, + "lsb": 20, + "count": 8 + }, + "imm5": { + "msb": 24, + "lsb": 20, + "count": 11 + }, + "imm6": { + "msb": 25, + "lsb": 20, + "count": 1 + }, + "mop_r_t_30": { + "msb": 30, + "lsb": 30 + }, + "mop_r_t_27_26": { + "msb": 27, + "lsb": 26 + }, + "mop_r_t_21_20": { + "msb": 21, + "lsb": 20 + }, + "mop_rr_t_30": { + "msb": 30, + "lsb": 30 + }, + "mop_rr_t_27_26": { + "msb": 27, + "lsb": 26 + }, + "c_mop_t": { + "msb": 10, + "lsb": 8 + } +} diff --git a/backends/opcodes_maker/yaml_to_json.py b/backends/opcodes_maker/yaml_to_json.py index ae7a280b2..a52afd918 100755 --- a/backends/opcodes_maker/yaml_to_json.py +++ b/backends/opcodes_maker/yaml_to_json.py @@ -10,15 +10,16 @@ def load_fieldo() -> dict: - """ - Load the fieldo mapping from the JavaScript file (fieldo.js) by invoking Node.js. - - """ this_dir = os.path.dirname(os.path.abspath(__file__)) - # The command runs Node.js in the current directory and prints the JSON representation. - cmd = ["node", "-e", 'console.log(JSON.stringify(require("./fieldo.js")));'] - output = subprocess.check_output(cmd, cwd=this_dir) - return json.loads(output) + json_path = os.path.join(this_dir, "fieldo.json") + + try: + with open(json_path) as f: + return json.load(f) + except FileNotFoundError: + raise FileNotFoundError(f"Could not find fieldo.json in {this_dir}") + except json.JSONDecodeError: + raise ValueError(f"Invalid JSON format in fieldo.json") # Set of register names that need transformation. From 990a726e52ed632d3b55d05ead82a3e520b57454 Mon Sep 17 00:00:00 2001 From: Afonso Oliveira Date: Mon, 24 Feb 2025 11:05:49 +0000 Subject: [PATCH 15/33] Properly order .json output to compare with riscv-opcodes output Signed-off-by: Afonso Oliveira --- backends/opcodes_maker/yaml_to_json.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/backends/opcodes_maker/yaml_to_json.py b/backends/opcodes_maker/yaml_to_json.py index a52afd918..6270a2315 100755 --- a/backends/opcodes_maker/yaml_to_json.py +++ b/backends/opcodes_maker/yaml_to_json.py @@ -324,8 +324,12 @@ def main(): print(f"Warning: Failed to process {inst_dir}: {str(e)}") continue - with open(output_file, "w") as outfile: - json.dump(inst_dict, outfile, indent=4) + insts_sorted = {} + for inst in sorted(inst_dict): + insts_sorted[inst] = inst_dict[inst] + + with open(output_file, "w") as outfile: + json.dump(insts_sorted, outfile, indent=4) print(f"Successfully processed {len(insts)} YAML files") print(f"Output written to: {output_file}") From 98f4c4db31f6499da7b235f1cca6bc5ce453317b Mon Sep 17 00:00:00 2001 From: Afonso Oliveira Date: Mon, 24 Feb 2025 11:23:33 +0000 Subject: [PATCH 16/33] Nicer error message for common error with unupdated subomdule Signed-off-by: Afonso Oliveira --- backends/opcodes_maker/Makefile | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/backends/opcodes_maker/Makefile b/backends/opcodes_maker/Makefile index c6cdca745..735818936 100755 --- a/backends/opcodes_maker/Makefile +++ b/backends/opcodes_maker/Makefile @@ -35,10 +35,13 @@ $(INSTR_DICT): $(YAML_TO_JSON) | $(OUTPUT_DIR) # Generate all outputs generate: $(INSTR_DICT) - python3 $(GENERATOR) $(INSTR_DICT) -c -chisel -spinalhdl -sverilog -rust -go -latex + python3 $(GENERATOR) $(INSTR_DICT) -c -chisel -spinalhdl -sverilog -rust -go -latex || \ + { echo "Error generating riscv-opcodes outputs. Likely, you don't have updated riscv-opcodes submodules. Please do:"; \ + echo "git submodule update --init --recursive"; \ + echo "git submodule update --remote ext/riscv-opcodes"; \ + exit 1; } mv encoding.out.h inst.chisel inst.spinalhdl inst.sverilog inst.rs inst.go \ instr-table.tex priv-instr-table.tex $(OUTPUT_DIR)/ 2>/dev/null || true - # Clean generated files clean: rm -rf $(OUTPUT_DIR) From 1506dcd011ba4b9c1d9ed677bf7a69e1660fa5fe Mon Sep 17 00:00:00 2001 From: Afonso Oliveira Date: Tue, 25 Feb 2025 15:48:37 +0000 Subject: [PATCH 17/33] Change names on several functions and variables Signed-off-by: Afonso Oliveira --- backends/opcodes_maker/yaml_to_json.py | 29 +++++++++++++------------- 1 file changed, 15 insertions(+), 14 deletions(-) diff --git a/backends/opcodes_maker/yaml_to_json.py b/backends/opcodes_maker/yaml_to_json.py index 6270a2315..4ac85a344 100755 --- a/backends/opcodes_maker/yaml_to_json.py +++ b/backends/opcodes_maker/yaml_to_json.py @@ -169,7 +169,7 @@ def GetVariables(vars: List[Dict[str, str]], instr_name: str = "") -> List[str]: return result -def BitStringToHex(bit_str: str) -> str: +def GetMatchMask(bit_str: str) -> str: new_bit_str = "" for bit in bit_str: if bit == "-": @@ -212,7 +212,7 @@ def process_extension(ext: Union[str, dict]) -> List[str]: return [] -def GetExtension(ext: Union[str, dict, list], base: str) -> List[str]: +def GetExtensions(ext: Union[str, dict, list], base: str) -> List[str]: """Get a list of extensions with proper prefix.""" prefix = f"rv{base}_" final_extensions = [] @@ -241,6 +241,7 @@ def convert(file_dir: str, json_out: Dict[str, Any]) -> None: try: with open(file_dir) as file: data = yaml.safe_load(file) + instr_name = data["name"].replace(".", "_") print(instr_name) @@ -257,28 +258,28 @@ def convert(file_dir: str, json_out: Dict[str, Any]) -> None: if "variables" in encodings: var_names = GetVariables(encodings["variables"]) - extension = [] + extensions = [] prefix = "" if rv64_flag: prefix = "64" try: if "base" in data: - extension = GetExtension(data["definedBy"], data["base"]) + extensions = GetExtensions(data["definedBy"], data["base"]) else: - extension = GetExtension(data["definedBy"], prefix) + extensions = GetExtensions(data["definedBy"], prefix) except Exception as e: print( f"Warning: Error processing extensions for {instr_name}: {str(e)}" ) - extension = [] + extensions = [] - match_hex = BitStringToHex(enc_match) + match_hex = GetMatchMask(enc_match) match_mask = GetMask(enc_match) json_out[instr_name] = { "encoding": enc_match, "variable_fields": var_names, - "extension": extension, + "extension": extensions, "match": match_hex, "mask": match_mask, } @@ -287,7 +288,7 @@ def convert(file_dir: str, json_out: Dict[str, Any]) -> None: raise -def read_yaml_insts(path: str) -> List[str]: +def find_yaml_files(path: str) -> List[str]: yaml_files = [] for root, _, files in os.walk(path): for file in files: @@ -309,19 +310,19 @@ def main(): if not os.path.isdir(args.input_dir): parser.error(f"Input directory does not exist: {args.input_dir}") - insts = read_yaml_insts(args.input_dir) - if not insts: + yaml_files = find_yaml_files(args.input_dir) + if not yaml_files: parser.error(f"No YAML files found in {args.input_dir}") inst_dict = {} output_file = os.path.join(args.output_dir, "instr_dict.json") try: - for inst_dir in insts: + for yaml_file in yaml_files: try: - convert(inst_dir, inst_dict) + convert(yaml_file, inst_dict) except Exception as e: - print(f"Warning: Failed to process {inst_dir}: {str(e)}") + print(f"Warning: Failed to process {yaml_file}: {str(e)}") continue insts_sorted = {} From bb4b765af77db020d1c0f375fad5d907431f789c Mon Sep 17 00:00:00 2001 From: Afonso Oliveira Date: Tue, 25 Feb 2025 15:51:13 +0000 Subject: [PATCH 18/33] Add kind: verification to all files && fix one small variable name Signed-off-by: Afonso Oliveira --- backends/opcodes_maker/yaml_to_json.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/backends/opcodes_maker/yaml_to_json.py b/backends/opcodes_maker/yaml_to_json.py index 4ac85a344..51de725d6 100755 --- a/backends/opcodes_maker/yaml_to_json.py +++ b/backends/opcodes_maker/yaml_to_json.py @@ -242,6 +242,12 @@ def convert(file_dir: str, json_out: Dict[str, Any]) -> None: with open(file_dir) as file: data = yaml.safe_load(file) + if data["kind"] != "instruction": + print( + f"Error: File {file_dir} has kind '{data['kind']}', expected 'instruction'. Skipping." + ) + return + instr_name = data["name"].replace(".", "_") print(instr_name) @@ -332,7 +338,7 @@ def main(): with open(output_file, "w") as outfile: json.dump(insts_sorted, outfile, indent=4) - print(f"Successfully processed {len(insts)} YAML files") + print(f"Successfully processed {len(yaml_files)} YAML files") print(f"Output written to: {output_file}") except Exception as e: print(f"Error: Failed to process YAML files: {str(e)}") From 38b6893a84ea4084018ac42b749c39a8275ba003 Mon Sep 17 00:00:00 2001 From: Afonso Oliveira Date: Tue, 25 Feb 2025 15:53:28 +0000 Subject: [PATCH 19/33] Remove unnecessary or duplicate packages Signed-off-by: Afonso Oliveira --- backends/opcodes_maker/yaml_to_json.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/backends/opcodes_maker/yaml_to_json.py b/backends/opcodes_maker/yaml_to_json.py index 51de725d6..d5962de5b 100755 --- a/backends/opcodes_maker/yaml_to_json.py +++ b/backends/opcodes_maker/yaml_to_json.py @@ -5,8 +5,6 @@ import sys import yaml import json -from typing import List, Dict, Union -import subprocess def load_fieldo() -> dict: From 1250f5698aec3e9f4a876e477bec8a75845ca762 Mon Sep 17 00:00:00 2001 From: Afonso Oliveira Date: Fri, 7 Mar 2025 10:54:34 +0000 Subject: [PATCH 20/33] Add fix for branch instructions Signed-off-by: Afonso Oliveira --- backends/opcodes_maker/yaml_to_json.py | 73 ++++++++++++++++---------- 1 file changed, 46 insertions(+), 27 deletions(-) diff --git a/backends/opcodes_maker/yaml_to_json.py b/backends/opcodes_maker/yaml_to_json.py index d5962de5b..a566e6dba 100755 --- a/backends/opcodes_maker/yaml_to_json.py +++ b/backends/opcodes_maker/yaml_to_json.py @@ -35,18 +35,13 @@ def range_size(range_str: str) -> int: def lookup_immediate_by_range( - var_base: str, high: int, low: int, instr_name: str + var_base: str, high: int, low: int, instr_name: str, left_shift: bool = False ) -> Union[str, None]: """ Look up a canonical field name from the fieldo mapping based on the bit range. - - If var_base is "imm", then we consider any field whose name contains "imm" - (but not starting with "c_" and not "csr"). - - If var_base starts with "c_", then only keys starting with "c_" are considered. - - Otherwise, we require that the key starts with var_base (for "simm", "jimm", etc.). - - If multiple candidates are found and var_base is "imm", we prefer "zimm" if present. - Otherwise, instr_name is used as a hint. + When multiple candidates are found and left_shift is True, prefer the one that + starts with 'bimm'. """ candidates = [] for key, field in fieldo.items(): @@ -64,6 +59,11 @@ def lookup_immediate_by_range( if len(candidates) == 1: return candidates[0] else: + if left_shift: + # If left_shift flag is set, check for a candidate starting with 'bimm' + for cand in candidates: + if cand.startswith("bimm"): + return cand if var_base == "imm" and "zimm" in candidates: return "zimm" lower_instr = instr_name.lower() @@ -77,23 +77,34 @@ def lookup_immediate_by_range( def canonical_immediate_names( - var_name: str, location: str, instr_name: str + var_name: str, location: str, instr_name: str, left_shift: bool = False ) -> List[str]: """ Given a YAML immediate variable (its base name and location), return a list of canonical field names strictly from the fieldo mapping. - - For non-composite locations (e.g. "31-20"), the range is parsed and a lookup is performed. - - For composite locations (detected by "|" in the location), we assume a branch-immediate split: - the high part uses the range (31, 25) and the low part (11, 7), with an appropriate prefix. - - If no candidate is found in fieldo, an empty list is returned. + For composite locations (detected by "|" in the location), we assume a branch-immediate split: + - The high part uses the range (31, 25) + - The low part uses the range (11, 7) + + If left_shift is True and multiple candidates exist, the lookup will prefer the one starting with 'bimm'. """ if "|" in location: parts = location.split("|") if len(parts) == 4: - prefix = "bimm" if instr_name.lower().startswith("b") else "imm" - hi_candidate = lookup_immediate_by_range(prefix, 31, 25, instr_name) - lo_candidate = lookup_immediate_by_range(prefix, 11, 7, instr_name) + # Use a default prefix based on instruction name if left_shift is not set. + # Otherwise, simply use the variable name so that the left_shift flag in lookup_immediate_by_range can choose 'bimm' if available. + prefix = ( + var_name + if left_shift + else ("bimm" if instr_name.lower().startswith("b") else var_name) + ) + hi_candidate = lookup_immediate_by_range( + prefix, 31, 25, instr_name, left_shift=left_shift + ) + lo_candidate = lookup_immediate_by_range( + prefix, 11, 7, instr_name, left_shift=left_shift + ) if hi_candidate is None or lo_candidate is None: print( f"Warning: composite immediate candidate not found in fieldo for {var_name} with location {location}" @@ -105,7 +116,9 @@ def canonical_immediate_names( nums = list(map(int, re.findall(r"\d+", location))) if len(nums) >= 2: high, low = nums[0], nums[1] - candidate = lookup_immediate_by_range(var_name, high, low, instr_name) + candidate = lookup_immediate_by_range( + var_name, high, low, instr_name, left_shift=left_shift + ) if candidate: return [candidate] print( @@ -118,7 +131,9 @@ def canonical_immediate_names( except Exception: print(f"Warning: invalid immediate location {location} for {var_name}") return [] - candidate = lookup_immediate_by_range(var_name, high, low, instr_name) + candidate = lookup_immediate_by_range( + var_name, high, low, instr_name, left_shift=left_shift + ) if candidate: return [candidate] else: @@ -137,8 +152,8 @@ def GetVariables(vars: List[Dict[str, str]], instr_name: str = "") -> List[str]: - For immediates (base names "imm", "simm", "zimm", "jimm", or those starting with "c_"), the canonical names are determined strictly by looking them up in fieldo. Only names found in fieldo are used. - - The variables are processed in reverse order. + - If the immediate field has a 'left_shift' attribute equal to 1, the left_shift flag is passed so that, + if multiple canonical candidates exist, the candidate starting with 'bimm' is preferred. """ result = [] for var in reversed(vars): @@ -155,7 +170,11 @@ def GetVariables(vars: List[Dict[str, str]], instr_name: str = "") -> List[str]: else: result.append(var_name) elif var_name in ("imm", "simm", "zimm", "jimm") or var_name.startswith("c_"): - canon_names = canonical_immediate_names(var_name, location, instr_name) + # Check for left_shift attribute (equals 1) and pass that flag along. + left_shift_flag = var.get("left_shift", 0) == 1 + canon_names = canonical_immediate_names( + var_name, location, instr_name, left_shift=left_shift_flag + ) if canon_names: result.extend(canon_names) else: @@ -260,7 +279,7 @@ def convert(file_dir: str, json_out: Dict[str, Any]) -> None: var_names = [] if "variables" in encodings: - var_names = GetVariables(encodings["variables"]) + var_names = GetVariables(encodings["variables"], instr_name) extensions = [] prefix = "" @@ -329,12 +348,12 @@ def main(): print(f"Warning: Failed to process {yaml_file}: {str(e)}") continue - insts_sorted = {} - for inst in sorted(inst_dict): - insts_sorted[inst] = inst_dict[inst] + insts_sorted = {} + for inst in sorted(inst_dict): + insts_sorted[inst] = inst_dict[inst] - with open(output_file, "w") as outfile: - json.dump(insts_sorted, outfile, indent=4) + with open(output_file, "w") as outfile: + json.dump(insts_sorted, outfile, indent=4) print(f"Successfully processed {len(yaml_files)} YAML files") print(f"Output written to: {output_file}") From b9e1bc6d363f6c9fdab2805bd308bf4fb7eec43c Mon Sep 17 00:00:00 2001 From: Afonso Oliveira Date: Fri, 7 Mar 2025 14:16:42 +0000 Subject: [PATCH 21/33] Add sorter to Makefile so we can compare easily Signed-off-by: Afonso Oliveira --- backends/opcodes_maker/Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/backends/opcodes_maker/Makefile b/backends/opcodes_maker/Makefile index 735818936..11d2d0ecc 100755 --- a/backends/opcodes_maker/Makefile +++ b/backends/opcodes_maker/Makefile @@ -42,6 +42,7 @@ generate: $(INSTR_DICT) exit 1; } mv encoding.out.h inst.chisel inst.spinalhdl inst.sverilog inst.rs inst.go \ instr-table.tex priv-instr-table.tex $(OUTPUT_DIR)/ 2>/dev/null || true + python3 sorter.py # Clean generated files clean: rm -rf $(OUTPUT_DIR) From 3ced442bdc3676240fff93c2c529d1be9e959781 Mon Sep 17 00:00:00 2001 From: Afonso Oliveira Date: Fri, 7 Mar 2025 14:17:47 +0000 Subject: [PATCH 22/33] add Pytest to ensure we are matching with risc-v opcodes and test in a better way than looking into files Signed-off-by: Afonso Oliveira --- backends/opcodes_maker/compareOpcodes.py | 71 ++++++++++++++++++++++++ 1 file changed, 71 insertions(+) create mode 100644 backends/opcodes_maker/compareOpcodes.py diff --git a/backends/opcodes_maker/compareOpcodes.py b/backends/opcodes_maker/compareOpcodes.py new file mode 100644 index 000000000..09be073e6 --- /dev/null +++ b/backends/opcodes_maker/compareOpcodes.py @@ -0,0 +1,71 @@ +import json +import pytest + + +def load_json_file(filename): + with open(filename) as f: + return json.load(f) + + +# Pre-load the JSON data from the two files. +JSON1 = load_json_file("sorted_instr_dict.json") +JSON2 = load_json_file("../../ext/riscv-opcodes/instr_dict.json") + +# Compute the common instructions for parametrization. +COMMON_INSTRUCTIONS = sorted(list(set(JSON1.keys()) & set(JSON2.keys()))) + + +@pytest.fixture +def json1(): + return JSON1 + + +@pytest.fixture +def json2(): + return JSON2 + + +def test_instructions_presence(json1, json2): + """ + Ensure that both JSON files contain the same instructions. + """ + instructions1 = set(json1.keys()) + instructions2 = set(json2.keys()) + + missing_in_file2 = instructions1 - instructions2 + missing_in_file1 = instructions2 - instructions1 + + assert ( + missing_in_file2 == set() + ), f"Instructions missing in '../../ext/riscv-opcodes/instr_dict.json': {missing_in_file2}" + assert ( + missing_in_file1 == set() + ), f"Instructions missing in 'sorted_instr_dict.json': {missing_in_file1}" + + +@pytest.mark.parametrize("instr", COMMON_INSTRUCTIONS) +def test_variable_fields_exact(instr, json1, json2): + """ + For each common instruction, verify that both JSON files: + - Have the key 'variable_fields' + - Contain an identical set of variable_fields (order does not matter) + """ + entry1 = json1[instr] + entry2 = json2[instr] + + assert ( + "variable_fields" in entry1 + ), f"Instruction '{instr}' is missing 'variable_fields' in 'sorted_instr_dict.json'" + assert ( + "variable_fields" in entry2 + ), f"Instruction '{instr}' is missing 'variable_fields' in '../../ext/riscv-opcodes/instr_dict.json'" + + vf1 = entry1["variable_fields"] + vf2 = entry2["variable_fields"] + + # Compare after sorting the lists so that order is ignored. + assert sorted(vf1) == sorted(vf2), ( + f"Instruction '{instr}' variable_fields differ:\n" + f" sorted_instr_dict.json: {vf1}\n" + f" ../../ext/riscv-opcodes/instr_dict.json: {vf2}" + ) From c216ca2a2b7243d33c8d72fd2847aa5a14fbf269 Mon Sep 17 00:00:00 2001 From: Afonso Oliveira Date: Fri, 7 Mar 2025 16:24:21 +0000 Subject: [PATCH 23/33] Enhance parsing and sorting Signed-off-by: Afonso Oliveira --- backends/instr_isa_manual/tasks.rake | 35 + .../templates/instr_index.adoc.erb | 94 + ...ompareOpcodes.cpython-312-pytest-8.3.4.pyc | Bin 0 -> 7403 bytes ...compareOpcods.cpython-312-pytest-8.3.4.pyc | Bin 0 -> 7267 bytes backends/opcodes_maker/output/encoding.out.h | 5017 ++++++++++ backends/opcodes_maker/output/inst.chisel | 2247 +++++ backends/opcodes_maker/output/inst.go | 2639 ++++++ backends/opcodes_maker/output/inst.rs | 2769 ++++++ backends/opcodes_maker/output/inst.spinalhdl | 2123 +++++ backends/opcodes_maker/output/inst.sverilog | 1607 ++++ backends/opcodes_maker/output/instr-table.tex | 2774 ++++++ backends/opcodes_maker/output/instr_dict.json | 8044 +++++++++++++++++ .../opcodes_maker/output/priv-instr-table.tex | 326 + .../opcodes_maker/processed_instr_dict.json | 8044 +++++++++++++++++ backends/opcodes_maker/sorted_instr_dict.json | 8044 +++++++++++++++++ backends/opcodes_maker/sorter.py | 10 +- backends/opcodes_maker/yaml_to_json.py | 128 +- 17 files changed, 43864 insertions(+), 37 deletions(-) create mode 100644 backends/instr_isa_manual/tasks.rake create mode 100644 backends/instr_isa_manual/templates/instr_index.adoc.erb create mode 100644 backends/opcodes_maker/__pycache__/compareOpcodes.cpython-312-pytest-8.3.4.pyc create mode 100644 backends/opcodes_maker/__pycache__/compareOpcods.cpython-312-pytest-8.3.4.pyc create mode 100644 backends/opcodes_maker/output/encoding.out.h create mode 100644 backends/opcodes_maker/output/inst.chisel create mode 100644 backends/opcodes_maker/output/inst.go create mode 100644 backends/opcodes_maker/output/inst.rs create mode 100644 backends/opcodes_maker/output/inst.spinalhdl create mode 100644 backends/opcodes_maker/output/inst.sverilog create mode 100644 backends/opcodes_maker/output/instr-table.tex create mode 100755 backends/opcodes_maker/output/instr_dict.json create mode 100644 backends/opcodes_maker/output/priv-instr-table.tex create mode 100755 backends/opcodes_maker/processed_instr_dict.json create mode 100644 backends/opcodes_maker/sorted_instr_dict.json diff --git a/backends/instr_isa_manual/tasks.rake b/backends/instr_isa_manual/tasks.rake new file mode 100644 index 000000000..d5579d00b --- /dev/null +++ b/backends/instr_isa_manual/tasks.rake @@ -0,0 +1,35 @@ +# tasks.rake + +# Define the manual generation directory constant +ISA_INDEX_GEN_DIR = $root / "gen" / "instr_isa_manual/index" + +# Rule to create the instructions index page (all instructions with details) +rule %r{#{ISA_INDEX_GEN_DIR}/.*/antora/modules/insts/pages/instructions_index\.adoc} => [ + __FILE__, + ($root / "backends" / "instr_isa_manual" / "templates" / "instr_index.adoc.erb").to_s +] do |t| + cfg_arch = cfg_arch_for("_") + # Collect all instructions sorted by name + instructions = cfg_arch.instructions.sort_by(&:name) + template_path = $root / "backends" / "instr_isa_manual" / "templates" / "instr_index.adoc.erb" + erb = ERB.new(template_path.read, trim_mode: "-") + erb.filename = template_path.to_s + + FileUtils.mkdir_p(File.dirname(t.name)) + File.write(t.name, AsciidocUtils.resolve_links(cfg_arch.find_replace_links(erb.result(binding)))) +end + +# Rake task to generate the instructions index page. +namespace :gen do + desc "Generate the instructions index page (with index and full instruction details)" + task :instructions_index do + # Use provided version or default to "latest" + version = ENV["VERSION"] || "latest" + target = ISA_INDEX_GEN_DIR / version / "antora/modules/insts/pages/instructions_index.adoc" + + # Invoke the rule to generate the file + Rake::Task[target.to_s].invoke + + puts "SUCCESS: Instructions index generated at '#{target}'" + end +end diff --git a/backends/instr_isa_manual/templates/instr_index.adoc.erb b/backends/instr_isa_manual/templates/instr_index.adoc.erb new file mode 100644 index 000000000..73f53c377 --- /dev/null +++ b/backends/instr_isa_manual/templates/instr_index.adoc.erb @@ -0,0 +1,94 @@ +<% require_relative '../instruction_index' %> +<% instruction_index ||= InstructionIndex.new %> +<% instructions = instruction_index.instructions %> + += Instruction Index +:toc: +:toclevels: 1 + +== Instruction Index + +<% instructions.each do |inst| %> +* <<%= anchor_for_inst(inst.name) %>, <%= inst.name %>> +<% end %> + +== Instructions Details + +<% instructions.each do |inst| %> + +<%= anchor_for_inst(inst.name) %> += <%= inst.name %> + +Mnemonic:: +---- +<%= inst.assembly.gsub('x', 'r') %> +---- + +Encoding:: +<%- if inst.multi_encoding? -%> +[NOTE] +This instruction has different encodings in RV32 and RV64 + +RV32:: +[wavedrom, ,svg,subs='attributes',width="100%"] +.... +<%= JSON.dump inst.wavedrom_desc(32) %> +.... + +RV64:: +[wavedrom, ,svg,subs='attributes',width="100%"] +.... +<%= JSON.dump inst.wavedrom_desc(64) %> +.... +<%- else -%> +[wavedrom, ,svg,subs='attributes',width="100%"] +.... +<%= JSON.dump inst.wavedrom_desc(inst.base.nil? ? 64 : inst.base) %> +.... +<%- end -%> + +Description:: +<%= inst.description %> + +<%- if inst.latency -%> +Latency:: +<%= inst.latency %> +<%- end -%> + +<%- if inst.throughput -%> +Throughput:: +<%= inst.throughput %> +<%- end -%> + +Decode Variables:: +<%- if inst.multi_encoding? ? (inst.decode_variables(32).empty? && inst.decode_variables(64).empty?) : inst.decode_variables(inst.base.nil? ? 64 : inst.base).empty? -%> +<%= inst.name %> has no decode variables. +<%- else -%> +<%- if inst.multi_encoding? -%> +RV32:: ++ +[source,idl] +---- +<% inst.decode_variables(32).each do |d| %> +<%= d.sext? ? 'signed ' : '' %>Bits<<%= d.size %>> <%= d.name %> = <%= d.extract %>; +<% end %> +---- + +RV64:: ++ +[source,idl] +---- +<% inst.decode_variables(64).each do |d| %> +<%= d.sext? ? 'signed ' : '' %>Bits<<%= d.size %>> <%= d.name %> = <%= d.extract %>; +<% end %> +---- +<%- else -%> +[source,idl,subs="specialchars,macros"] +---- +<% inst.decode_variables(inst.base.nil? ? 64 : inst.base).each do |d| %> +<%= d.sext? ? 'signed ' : '' %>Bits<<%= d.size %>> <%= d.name %> = <%= d.extract %>; +<% end %> +---- +<%- end -%> +<%- end -%> +<% end %> diff --git a/backends/opcodes_maker/__pycache__/compareOpcodes.cpython-312-pytest-8.3.4.pyc b/backends/opcodes_maker/__pycache__/compareOpcodes.cpython-312-pytest-8.3.4.pyc new file mode 100644 index 0000000000000000000000000000000000000000..1a0dd2f60d43c3d3dc9cfaa91d2c944d9bed907e GIT binary patch literal 7403 zcmd^ETWlN06`kc{xqRql*^+EW&PKK(GfpH^w&cW$QwOf%xV1?nPFzW7yP>&DYiT}& z*_CXuOF(G@)Ikc=e^KBBanO$O^2oqOj#W_IS><;NWz5duXZA72;}2>B;=oD#Mh>oXi7ZxflwT%OEv z?AurHXM7wf1m=RAHNwyFY$P-nl6`NGIl)I1LH6GOSuAs5)(^P-2=t@yiNU8s3Fiha zK5u=)?l>}xGqM%VGH7+AobS0VC6p7r^IL5>_y%z_&Gp=ehxhPolSANNFL3VPJX`L- zW|}N0T{nETwyOn$QCfd5ADaH!m;m8h=Bl3LVs zD#>a_A4L`Ak6l`fap#e+d4xA+v7a`7>!Ec>SB@-W# zbsVGke3?O1n4sOz-Ugrb5L7GVU(xQB)3giPUrNO|MH`sBN6R?f4%B`e>2ZcL_U3~= zA*h>q@JFz>d2{8E-cp=L!`Vy~pJzLATaxe_KEq#zKvV(-v{@_In8ndh;f;X7UxbIM z5;8*Ce{@`WR&w}2v=o^$LRn7sp-k3y17i+Is=-B+w{o!)LYDE4I_D9qRe*ODnIUJ9bzZnssOc%99s)+i0 zS{Kik^m!2vU=eQ+P0W;vdRi^QpdxB;d5P?BU(Dz#Tv?+`{6p@Z@7S?8SB?+wUsygE z*TiGTL~I_8Ympz=4bdWv$F=?ONX6_fsG6o0FTkb3uBvg^;oMkLDP_f^;a4usj`QMwZzOEYj$ zS=P+R@r7kw(R3+I%^oR}&gUhnEKvKZHe)a>onKV*I)u^W^CjTW%mGQ8FD>R}#wuON zm(Hj25#@d&#$ z*`;Q7co#3x+#RO_;0E1;zC_VXOV1&1Ct-CgLngePBN|>7xS6bCU8uWQD7;Fg1*&LD zF$3@g_#c6f_6@jPSIAv~>=;-Lz8`rfaxJ#DeR$=}C)@j*`v2(PcfC^UKU@uLzu9Qs z<;kFUZMyFF1z+QC3InUtHQ})h*1MIIYDsB5=#E(AI|K>0W~JJ!w7~{#%1NnqQmXq& zc&Ej9+hRN?)y{dz>kpK_>j!%_%X`SSHfP$wA&dJnYg%S=HGH~y=6luC->-&j6F1oC z=N8Xtsdn0?TT&1_CkUygAf&ik$C9;UNeqHLg4$9X8UceZCO_ga1}47@R@yVXYvdvRVO|s|1ap;a?(vpLp%pje9fa zMSUQJ1@ICNsL78Kja$(pW8)}`+o}!s{(`#;(IYE4#MmvR30=8KOFJB9xQQX$o(;}+ z+Fee>GJsKh3}b{mQf+Q$z$oMzkwfpf(z3u%O4tb5C`Hf_d9&h~s}0^U1m~uAz5%5~ z0Hp*gydC|(7mj}5OGH2Vl||o+Z66$cmlL8N{esbtecjPF{4&R$hp++90c%AX*t3By z0ZqDy)QC8%Scw|E5oP&C%!pm(wD&#xpxv|6VZ`9s=|ri<>d9SOUX`7m`P<|sI;MuK zI2Holf8gqDmVj02lDoHTk@wkaV^Jf54}D5qBo7vJKiFzd#__)wyPmHscJ4lVXzW~0 zh+WS^Vi$GxhP>@vo}Gjp9*O&(guO->&cp3S1dw?n(OA#s0+$_f?b5~K*l zk}d);)fF0NbD3Q&-0)7vrxqbW*oMhK0ulrO@Yp;AP@D%%6o@_q_1^)|B0lncD(%UEzG^e_go{i4^AI&Gim!~B|qS#o%}#* zwBL>Z%J7 zT|PXrX~kqU3z-CNiuR#`Jn2ao+@i0*-P4p+CBQi|04sP9G7b@~c?_#ztcI}Ki`71? z9>;0~D}4V;pMfggMGs;d(F03W=wWO<4V5?lIOy$+d-IRO-p(XFiqcap(nq|~O#;tY ziJ6txBoZ0|8!L}-Yi~l+vb`ncayp~a7eHtfK3W10=L)HJlFr_%6K{TZ<%OFa+pI>N zC*fU~s>}jP-?@6OD(po#KFi%YIa511gDBk|vB-$NVK6oG(K4d%T}{-NXKF9cAUd99 zXdd{E&(x030OOv0O^mjfm>(A$uxo6k#>+OwZJ&Z92m9S*|YF z4&<5~$Z@x3)Y^=S4%j1TL5`&lF!-8UdrfscaLF09mQm4z9P9{ao4cT*9qv!(goKtJ(Y&yD-Ll>ew)t;eRWbev}n~`p(35jHE+ts~qP1Q*t z$iMse_1VaBxcmv6d@NeN$vL1#Wjxh2a97FO3lHK0jFigo9ZaWMO(z-)x zmZ^tHZ(p-agXGQ(q*#A5SMxNWXZK^x3=Pu#RS#Kiy5@o&o8(o!`*Ak&XO0K;5Q#$W ze)SUkvhe8e&Efsmr=j)4HD zyYx}y?LCn?b0(FPP9@L2^75-EUOAOYo;5>R^|B7H#XM&czOpa_g*3frM&XwicpIiu zwXCowzvZ`td&0AYlDwE#o}({;6rxb=H&E669LN2gkT=MWqJJYDcX%K7$n6*j_gDMJ z)`WvA!M_T9)&Apa!t*P^+dSzXeCL%9_Fh+hp8Fv8v;5l7pE9;g`>qM{CLmndv5zUu4mm(eBE_y!FF#;zaw;UDXzW`M|Z!z`!C!; ajT>0)uMSPDag(=w100WY9APcCHva_+71GN9 literal 0 HcmV?d00001 diff --git a/backends/opcodes_maker/__pycache__/compareOpcods.cpython-312-pytest-8.3.4.pyc b/backends/opcodes_maker/__pycache__/compareOpcods.cpython-312-pytest-8.3.4.pyc new file mode 100644 index 0000000000000000000000000000000000000000..97e1045e6a8bb994d3007c7f687c540f9e14723c GIT binary patch literal 7267 zcmd^ES!^4}8J^wcE>GRIXh%NQl4XfLBvZEJJ4oO=IB~15FSV^_vygK@{|%FkBQpfTBeU^tEVTDCnW?)<6w3FL^R$IT7H#^q<*-ONz3Y zAVFJnZ2mj*&wtE4-#_|GOG^krD*oxu*GB^g{gV`&6tpwzZ!-wpMiP>k9GYP0m(6o& zmO**n1kYGC!h}F;{1bkOy@@6QERq8fcOP^~nh4Ue&n<_b9EM*6el2n^yW5iU())J7 z(V>!|W+aQ?)zNak6K%3TD|+o)d5OP?98VJ+TgV6=nNG#Bmbw?1Sm;wykx1L)M5P3v9Q@X2fZRs9TW7!=IF?3HiP4D^O3f=m zxq*LF z6XQ&l2Fhg#|6?BhD#2AzR=9Te8{2p2- zHJEHNlPB)txC8QS@LTr-Swx?N+ZW%!?T~NQ0d4_d$HfRHwy3_x%Lv{M+%8hn=~Sof z6$oX7h;Q2dKfu`5uCOfO*Cl6vIP0mzde$V6hF|-a&O1%Xl3h`kB*yS(7>Ol18TLL|Cy*pgcg`-9rRST)cc|lQ4r$vx_9ISx z^=r8274}M!Nv}&)$pRyBlCS9&?0kL;sw>MGd+gO{(2~s>&?2A5O9LH4aI8!GU9Jct zT?%+K$m*<163o*b^dal&`HLVS1&n~gQ2n4zmLE+XOWPb?^=kwj8_xIpj1-(_O8%12 zaDDJ!Vts&)XMKd4o*nP3H(DRO)8-eh4_6XqBlLf;KEek7^{BmdeP)0$9taIG+N`v@3b-y4m_F&B9Dvz*xm*mm?z2&*V~t6q%z~ zh~Ap?QZrk;lNYZoj^Lfp4ZN51B}|%W`8nn-#I1tWkWp{pghnn4vY4!7U8pb7q3}9Q z&R|)S3uzf21^Foaw8sDl7SYoH+P-6n|0wi9=uTvHTmRzahufkxWIoe6~M{=Sl`Z- z&s{E`O_T%UTXl_glwvNErwb$P#Y_ZyP;B*cxJPdzgE0_Ul_i3Jtej6`O1!}v+#CYD zBWS;_-g8+mN&_vD0N)6JayX(a;V(G)k*|C74NhX{eh3<{ z4`?n_#fnul2LhWWdRCPSOTkvGX=GPk|3fF6at?NfA)AsAj}EC2>&2 zl8i-31xQ~|brFE1F5?)rWwzBx!vhJc6adh767U`eKo5YMWRC%K7Qhn*CQCqcoRDM1 zmP=KXE)En=4~UB9g7r-upzwVQJY9#?M=h*Any}rD6u;Gk?IvHP1~9>&(9MM1H!E0y zPTIi=gffHn2tdr@L^UU!s0K2&AT*N-LTEvP8^P+F$<1Y8faWqIF#-30D?CQX2|`X1 zvIhtmz>~$}1Dj?{QZj)2$)adHR1nu3hRP=U3ep`lQBWK@XZm0Uk3xj7kF=(jkOPGD z5wf3vkHYX&N`r`9%Mf22pitctS^&2;3Lufg?pjuDUnSvs^5hVTj4l<_zK5nT{Uq=vGekUGNNAZ)kvGzccCz?vgaWvx4`TAfM| zb#>S3R9UWNU`3*}QnhBlPtU$ufhucj*S%IZ-R6QHo8@)g1IrKk`I*y$ir-!&@S4B3 z|3UxY@&(8p9D6W!>KAWScs6);g9CZ0^tq!%+e=w=P-!3*i<$xFO@i)yb7#_e#Tc^Q z0N@#62+KFHqRVE`Wto1PXB{8piP;n^J^GgiOdd-yd9|cR2K*gFfu|huR)R$!X4m=g z%a_L!$xDeVSKoZ={MAe2i7Tc*qs;5@809%x$U}kY%ct z(N|UjuP*Xy0*dbb;OfVH%kodNA7_7(TkSpe%k*#i|9J3s2Y-Kfb?o9w@5R;KudjAr zDxQ~^peV+cY6NH>{wxTEJe$`qpQr= P8oPrLh=~(4M BitPat("b00101????????????011?????0101111"), + "AMOCAS_W" -> BitPat("b00101????????????010?????0101111"), + ) + val ZIMOPType = Map( + "MOP_R_N" -> BitPat("b1?00??0111???????100?????1110011"), + "MOP_RR_N" -> BitPat("b1?00??1??????????100?????1110011"), + ) + val DType = Map( + "FADD_D" -> BitPat("b0000001??????????????????1010011"), + "FCLASS_D" -> BitPat("b111000100000?????001?????1010011"), + "FCVT_D_H" -> BitPat("b010000100010?????????????1010011"), + "FCVT_D_S" -> BitPat("b010000100000?????????????1010011"), + "FCVT_D_W" -> BitPat("b110100100000?????????????1010011"), + "FCVT_D_WU" -> BitPat("b110100100001?????????????1010011"), + "FCVT_H_D" -> BitPat("b010001000001?????????????1010011"), + "FCVT_S_D" -> BitPat("b010000000001?????????????1010011"), + "FCVT_W_D" -> BitPat("b110000100000?????????????1010011"), + "FCVT_WU_D" -> BitPat("b110000100001?????????????1010011"), + "FCVTMOD_W_D" -> BitPat("b110000101000?????001?????1010011"), + "FDIV_D" -> BitPat("b0001101??????????????????1010011"), + "FEQ_D" -> BitPat("b1010001??????????010?????1010011"), + "FLD" -> BitPat("b?????????????????011?????0000111"), + "FLE_D" -> BitPat("b1010001??????????000?????1010011"), + "FLEQ_D" -> BitPat("b1010001??????????100?????1010011"), + "FLI_D" -> BitPat("b111100100001?????000?????1010011"), + "FLT_D" -> BitPat("b1010001??????????001?????1010011"), + "FLTQ_D" -> BitPat("b1010001??????????101?????1010011"), + "FMADD_D" -> BitPat("b?????01??????????????????1000011"), + "FMAX_D" -> BitPat("b0010101??????????001?????1010011"), + "FMAXM_D" -> BitPat("b0010101??????????011?????1010011"), + "FMIN_D" -> BitPat("b0010101??????????000?????1010011"), + "FMINM_D" -> BitPat("b0010101??????????010?????1010011"), + "FMSUB_D" -> BitPat("b?????01??????????????????1000111"), + "FMUL_D" -> BitPat("b0001001??????????????????1010011"), + "FNMADD_D" -> BitPat("b?????01??????????????????1001111"), + "FNMSUB_D" -> BitPat("b?????01??????????????????1001011"), + "FROUND_D" -> BitPat("b010000100100?????????????1010011"), + "FROUNDNX_D" -> BitPat("b010000100101?????????????1010011"), + "FSD" -> BitPat("b?????????????????011?????0100111"), + "FSGNJ_D" -> BitPat("b0010001??????????000?????1010011"), + "FSGNJN_D" -> BitPat("b0010001??????????001?????1010011"), + "FSGNJX_D" -> BitPat("b0010001??????????010?????1010011"), + "FSQRT_D" -> BitPat("b010110100000?????????????1010011"), + "FSUB_D" -> BitPat("b0000101??????????????????1010011"), + ) + val ZICBOZType = Map( + "CBO_ZERO" -> BitPat("b000000000100?????010000000001111"), + ) + val HType = Map( + "HFENCE_GVMA" -> BitPat("b0110001??????????000000001110011"), + "HFENCE_VVMA" -> BitPat("b0010001??????????000000001110011"), + "HLV_B" -> BitPat("b011000000000?????100?????1110011"), + "HLV_BU" -> BitPat("b011000000001?????100?????1110011"), + "HLV_H" -> BitPat("b011001000000?????100?????1110011"), + "HLV_HU" -> BitPat("b011001000001?????100?????1110011"), + "HLV_W" -> BitPat("b011010000000?????100?????1110011"), + "HLVX_HU" -> BitPat("b011001000011?????100?????1110011"), + "HLVX_WU" -> BitPat("b011010000011?????100?????1110011"), + "HSV_B" -> BitPat("b0110001??????????100000001110011"), + "HSV_H" -> BitPat("b0110011??????????100000001110011"), + "HSV_W" -> BitPat("b0110101??????????100000001110011"), + ) + val ZK32Type = Map( + "AES32DSI" -> BitPat("b??10101??????????000?????0110011"), + "AES32DSMI" -> BitPat("b??10111??????????000?????0110011"), + "AES32ESI" -> BitPat("b??10001??????????000?????0110011"), + "AES32ESMI" -> BitPat("b??10011??????????000?????0110011"), + "SHA512SIG0H" -> BitPat("b0101110??????????000?????0110011"), + "SHA512SIG0L" -> BitPat("b0101010??????????000?????0110011"), + "SHA512SIG1H" -> BitPat("b0101111??????????000?????0110011"), + "SHA512SIG1L" -> BitPat("b0101011??????????000?????0110011"), + "SHA512SUM0R" -> BitPat("b0101000??????????000?????0110011"), + "SHA512SUM1R" -> BitPat("b0101001??????????000?????0110011"), + ) + val SMRNMIType = Map( + "MNRET" -> BitPat("b01110000001000000000000001110011"), + ) + val BType = Map( + "ANDN" -> BitPat("b0100000??????????111?????0110011"), + "BCLR" -> BitPat("b0100100??????????001?????0110011"), + "BEXT" -> BitPat("b0100100??????????101?????0110011"), + "BINV" -> BitPat("b0110100??????????001?????0110011"), + "BSET" -> BitPat("b0010100??????????001?????0110011"), + "CLMUL" -> BitPat("b0000101??????????001?????0110011"), + "CLMULH" -> BitPat("b0000101??????????011?????0110011"), + "CLMULR" -> BitPat("b0000101??????????010?????0110011"), + "CLZ" -> BitPat("b011000000000?????001?????0010011"), + "CPOP" -> BitPat("b011000000010?????001?????0010011"), + "CTZ" -> BitPat("b011000000001?????001?????0010011"), + "MAX" -> BitPat("b0000101??????????110?????0110011"), + "MAXU" -> BitPat("b0000101??????????111?????0110011"), + "MIN" -> BitPat("b0000101??????????100?????0110011"), + "MINU" -> BitPat("b0000101??????????101?????0110011"), + "ORC_B" -> BitPat("b001010000111?????101?????0010011"), + "ORN" -> BitPat("b0100000??????????110?????0110011"), + "ROL" -> BitPat("b0110000??????????001?????0110011"), + "ROR" -> BitPat("b0110000??????????101?????0110011"), + "SEXT_B" -> BitPat("b011000000100?????001?????0010011"), + "SEXT_H" -> BitPat("b011000000101?????001?????0010011"), + "SH1ADD" -> BitPat("b0010000??????????010?????0110011"), + "SH2ADD" -> BitPat("b0010000??????????100?????0110011"), + "SH3ADD" -> BitPat("b0010000??????????110?????0110011"), + "XNOR" -> BitPat("b0100000??????????100?????0110011"), + ) + val ZVKNType = Map( + "VAESDF_VS" -> BitPat("b1010011?????00001010?????1110111"), + "VAESDF_VV" -> BitPat("b1010001?????00001010?????1110111"), + "VAESDM_VS" -> BitPat("b1010011?????00000010?????1110111"), + "VAESDM_VV" -> BitPat("b1010001?????00000010?????1110111"), + "VAESEF_VS" -> BitPat("b1010011?????00011010?????1110111"), + "VAESEF_VV" -> BitPat("b1010001?????00011010?????1110111"), + "VAESEM_VS" -> BitPat("b1010011?????00010010?????1110111"), + "VAESEM_VV" -> BitPat("b1010001?????00010010?????1110111"), + "VAESKF1_VI" -> BitPat("b1000101??????????010?????1110111"), + "VAESKF2_VI" -> BitPat("b1010101??????????010?????1110111"), + "VAESZ_VS" -> BitPat("b1010011?????00111010?????1110111"), + "VSHA2CH_VV" -> BitPat("b1011101??????????010?????1110111"), + "VSHA2CL_VV" -> BitPat("b1011111??????????010?????1110111"), + "VSHA2MS_VV" -> BitPat("b1011011??????????010?????1110111"), + ) + val A64Type = Map( + "AMOADD_D" -> BitPat("b00000????????????011?????0101111"), + "AMOAND_D" -> BitPat("b01100????????????011?????0101111"), + "AMOMAX_D" -> BitPat("b10100????????????011?????0101111"), + "AMOMAXU_D" -> BitPat("b11100????????????011?????0101111"), + "AMOMIN_D" -> BitPat("b10000????????????011?????0101111"), + "AMOMINU_D" -> BitPat("b11000????????????011?????0101111"), + "AMOOR_D" -> BitPat("b01000????????????011?????0101111"), + "AMOSWAP_D" -> BitPat("b00001????????????011?????0101111"), + "AMOXOR_D" -> BitPat("b00100????????????011?????0101111"), + "LR_D" -> BitPat("b00010??00000?????011?????0101111"), + "SC_D" -> BitPat("b00011????????????011?????0101111"), + ) + val ZICBOMType = Map( + "CBO_CLEAN" -> BitPat("b000000000001?????010000000001111"), + "CBO_FLUSH" -> BitPat("b000000000010?????010000000001111"), + "CBO_INVAL" -> BitPat("b000000000000?????010000000001111"), + ) + val ZIFENCEIType = Map( + "FENCE_I" -> BitPat("b?????????????????001?????0001111"), + ) + val ZFAType = Map( + "FLEQ_H" -> BitPat("b1010010??????????100?????1010011"), + "FLEQ_S" -> BitPat("b1010000??????????100?????1010011"), + "FLI_H" -> BitPat("b111101000001?????000?????1010011"), + "FLI_S" -> BitPat("b111100000001?????000?????1010011"), + "FLTQ_H" -> BitPat("b1010010??????????101?????1010011"), + "FLTQ_S" -> BitPat("b1010000??????????101?????1010011"), + "FMAXM_H" -> BitPat("b0010110??????????011?????1010011"), + "FMAXM_S" -> BitPat("b0010100??????????011?????1010011"), + "FMINM_H" -> BitPat("b0010110??????????010?????1010011"), + "FMINM_S" -> BitPat("b0010100??????????010?????1010011"), + "FROUND_H" -> BitPat("b010001000100?????????????1010011"), + "FROUND_S" -> BitPat("b010000000100?????????????1010011"), + "FROUNDNX_H" -> BitPat("b010001000101?????????????1010011"), + "FROUNDNX_S" -> BitPat("b010000000101?????????????1010011"), + ) + val SVINVALType = Map( + "HINVAL_GVMA" -> BitPat("b0110011??????????000000001110011"), + "HINVAL_VVMA" -> BitPat("b0010011??????????000000001110011"), + "SFENCE_INVAL_IR" -> BitPat("b00011000000100000000000001110011"), + "SFENCE_W_INVAL" -> BitPat("b00011000000000000000000001110011"), + "SINVAL_VMA" -> BitPat("b0001011??????????000000001110011"), + ) + val ZKType = Map( + "SHA256SIG0" -> BitPat("b000100000010?????001?????0010011"), + "SHA256SIG1" -> BitPat("b000100000011?????001?????0010011"), + "SHA256SUM0" -> BitPat("b000100000000?????001?????0010011"), + "SHA256SUM1" -> BitPat("b000100000001?????001?????0010011"), + ) + val ZVFBFMINType = Map( + "VFNCVTBF16_F_F_W" -> BitPat("b010010??????11101001?????1010111"), + "VFWCVTBF16_F_F_V" -> BitPat("b010010??????01101001?????1010111"), + ) + val AType = Map( + "AMOADD_W" -> BitPat("b00000????????????010?????0101111"), + "AMOAND_W" -> BitPat("b01100????????????010?????0101111"), + "AMOMAX_W" -> BitPat("b10100????????????010?????0101111"), + "AMOMAXU_W" -> BitPat("b11100????????????010?????0101111"), + "AMOMIN_W" -> BitPat("b10000????????????010?????0101111"), + "AMOMINU_W" -> BitPat("b11000????????????010?????0101111"), + "AMOOR_W" -> BitPat("b01000????????????010?????0101111"), + "AMOSWAP_W" -> BitPat("b00001????????????010?????0101111"), + "AMOXOR_W" -> BitPat("b00100????????????010?????0101111"), + "LR_W" -> BitPat("b00010??00000?????010?????0101111"), + "SC_W" -> BitPat("b00011????????????010?????0101111"), + ) + val ZVFBFWMAType = Map( + "VFWMACCBF16_VF" -> BitPat("b111011???????????101?????1010111"), + "VFWMACCBF16_VV" -> BitPat("b111011???????????001?????1010111"), + ) + val ZCMPType = Map( + "CM_MVA01S" -> BitPat("b????????????????101011???11???10"), + "CM_MVSA01" -> BitPat("b????????????????101011???01???10"), + "CM_POP" -> BitPat("b????????????????10111010??????10"), + "CM_POPRET" -> BitPat("b????????????????10111110??????10"), + "CM_POPRETZ" -> BitPat("b????????????????10111100??????10"), + "CM_PUSH" -> BitPat("b????????????????10111000??????10"), + ) + val ZVBBType = Map( + "VANDN_VV" -> BitPat("b000001???????????000?????1010111"), + "VANDN_VX" -> BitPat("b000001???????????100?????1010111"), + "VBREV8_V" -> BitPat("b010010??????01000010?????1010111"), + "VBREV_V" -> BitPat("b010010??????01010010?????1010111"), + "VCLZ_V" -> BitPat("b010010??????01100010?????1010111"), + "VCPOP_V" -> BitPat("b010010??????01110010?????1010111"), + "VCTZ_V" -> BitPat("b010010??????01101010?????1010111"), + "VREV8_V" -> BitPat("b010010??????01001010?????1010111"), + "VROL_VV" -> BitPat("b010101???????????000?????1010111"), + "VROL_VX" -> BitPat("b010101???????????100?????1010111"), + "VROR_VI" -> BitPat("b01010????????????011?????1010111"), + "VROR_VV" -> BitPat("b010100???????????000?????1010111"), + "VROR_VX" -> BitPat("b010100???????????100?????1010111"), + "VWSLL_VI" -> BitPat("b110101???????????011?????1010111"), + "VWSLL_VV" -> BitPat("b110101???????????000?????1010111"), + "VWSLL_VX" -> BitPat("b110101???????????100?????1010111"), + ) + val H64Type = Map( + "HLV_D" -> BitPat("b011011000000?????100?????1110011"), + "HLV_WU" -> BitPat("b011010000001?????100?????1110011"), + "HSV_D" -> BitPat("b0110111??????????100000001110011"), + ) + val ZCBType = Map( + "C_LBU" -> BitPat("b????????????????100000????????00"), + "C_MUL" -> BitPat("b????????????????100111???10???01"), + "C_NOT" -> BitPat("b????????????????100111???1110101"), + "C_SB" -> BitPat("b????????????????100010????????00"), + "C_SEXT_B" -> BitPat("b????????????????100111???1100101"), + "C_SEXT_H" -> BitPat("b????????????????100111???1101101"), + "C_ZEXT_B" -> BitPat("b????????????????100111???1100001"), + "C_ZEXT_H" -> BitPat("b????????????????100111???1101001"), + ) + val ZVKGType = Map( + "VGHSH_VV" -> BitPat("b1011001??????????010?????1110111"), + "VGMUL_VV" -> BitPat("b1010001?????10001010?????1110111"), + ) + val SMType = Map( + "MRET" -> BitPat("b00110000001000000000000001110011"), + "WFI" -> BitPat("b00010000010100000000000001110011"), + ) + val ZAWRSType = Map( + "WRS_NTO" -> BitPat("b00000000110100000000000001110011"), + "WRS_STO" -> BitPat("b00000001110100000000000001110011"), + ) + val ZK64Type = Map( + "AES64DS" -> BitPat("b0011101??????????000?????0110011"), + "AES64DSM" -> BitPat("b0011111??????????000?????0110011"), + "AES64ES" -> BitPat("b0011001??????????000?????0110011"), + "AES64ESM" -> BitPat("b0011011??????????000?????0110011"), + "AES64IM" -> BitPat("b001100000000?????001?????0010011"), + "AES64KS1I" -> BitPat("b00110001?????????001?????0010011"), + "AES64KS2" -> BitPat("b0111111??????????000?????0110011"), + "SHA512SIG0" -> BitPat("b000100000110?????001?????0010011"), + "SHA512SIG1" -> BitPat("b000100000111?????001?????0010011"), + "SHA512SUM0" -> BitPat("b000100000100?????001?????0010011"), + "SHA512SUM1" -> BitPat("b000100000101?????001?????0010011"), + ) + val FType = Map( + "FADD_S" -> BitPat("b0000000??????????????????1010011"), + "FCLASS_S" -> BitPat("b111000000000?????001?????1010011"), + "FCVT_S_W" -> BitPat("b110100000000?????????????1010011"), + "FCVT_S_WU" -> BitPat("b110100000001?????????????1010011"), + "FCVT_W_S" -> BitPat("b110000000000?????????????1010011"), + "FCVT_WU_S" -> BitPat("b110000000001?????????????1010011"), + "FDIV_S" -> BitPat("b0001100??????????????????1010011"), + "FEQ_S" -> BitPat("b1010000??????????010?????1010011"), + "FLE_S" -> BitPat("b1010000??????????000?????1010011"), + "FLT_S" -> BitPat("b1010000??????????001?????1010011"), + "FLW" -> BitPat("b?????????????????010?????0000111"), + "FMADD_S" -> BitPat("b?????00??????????????????1000011"), + "FMAX_S" -> BitPat("b0010100??????????001?????1010011"), + "FMIN_S" -> BitPat("b0010100??????????000?????1010011"), + "FMSUB_S" -> BitPat("b?????00??????????????????1000111"), + "FMUL_S" -> BitPat("b0001000??????????????????1010011"), + "FMV_H_X" -> BitPat("b111101000000?????000?????1010011"), + "FMV_W_X" -> BitPat("b111100000000?????000?????1010011"), + "FMV_X_W" -> BitPat("b111000000000?????000?????1010011"), + "FNMADD_S" -> BitPat("b?????00??????????????????1001111"), + "FNMSUB_S" -> BitPat("b?????00??????????????????1001011"), + "FSGNJ_S" -> BitPat("b0010000??????????000?????1010011"), + "FSGNJN_S" -> BitPat("b0010000??????????001?????1010011"), + "FSGNJX_S" -> BitPat("b0010000??????????010?????1010011"), + "FSQRT_S" -> BitPat("b010110000000?????????????1010011"), + "FSUB_S" -> BitPat("b0000100??????????????????1010011"), + "FSW" -> BitPat("b?????????????????010?????0100111"), + ) + val MType = Map( + "DIV" -> BitPat("b0000001??????????100?????0110011"), + "DIVU" -> BitPat("b0000001??????????101?????0110011"), + "MUL" -> BitPat("b0000001??????????000?????0110011"), + "MULH" -> BitPat("b0000001??????????001?????0110011"), + "MULHSU" -> BitPat("b0000001??????????010?????0110011"), + "MULHU" -> BitPat("b0000001??????????011?????0110011"), + "REM" -> BitPat("b0000001??????????110?????0110011"), + "REMU" -> BitPat("b0000001??????????111?????0110011"), + ) + val ZALASRType = Map( + "LB_AQ" -> BitPat("b001101?00000?????000?????0101111"), + "LD_AQ" -> BitPat("b001101?00000?????011?????0101111"), + "LH_AQ" -> BitPat("b001101?00000?????001?????0101111"), + "LW_AQ" -> BitPat("b001101?00000?????010?????0101111"), + "SB_RL" -> BitPat("b00111?1??????????000000000101111"), + "SD_RL" -> BitPat("b00111?1??????????011000000101111"), + "SH_RL" -> BitPat("b00111?1??????????001000000101111"), + "SW_RL" -> BitPat("b00111?1??????????010000000101111"), + ) + val ZVKSType = Map( + "VSM3C_VI" -> BitPat("b1010111??????????010?????1110111"), + "VSM3ME_VV" -> BitPat("b1000001??????????010?????1110111"), + "VSM4K_VI" -> BitPat("b1000011??????????010?????1110111"), + "VSM4R_VS" -> BitPat("b1010011?????10000010?????1110111"), + "VSM4R_VV" -> BitPat("b1010001?????10000010?????1110111"), + ) + val B64Type = Map( + "ADD_UW" -> BitPat("b0000100??????????000?????0111011"), + "BCLRI" -> BitPat("b010010???????????001?????0010011"), + "BEXTI" -> BitPat("b010010???????????101?????0010011"), + "BINVI" -> BitPat("b011010???????????001?????0010011"), + "BSETI" -> BitPat("b001010???????????001?????0010011"), + "CLZW" -> BitPat("b011000000000?????001?????0011011"), + "CPOPW" -> BitPat("b011000000010?????001?????0011011"), + "CTZW" -> BitPat("b011000000001?????001?????0011011"), + "REV8" -> BitPat("b011010111000?????101?????0010011"), + "ROLW" -> BitPat("b0110000??????????001?????0111011"), + "RORI" -> BitPat("b011000???????????101?????0010011"), + "RORIW" -> BitPat("b0110000??????????101?????0011011"), + "RORW" -> BitPat("b0110000??????????101?????0111011"), + "SH1ADD_UW" -> BitPat("b0010000??????????010?????0111011"), + "SH2ADD_UW" -> BitPat("b0010000??????????100?????0111011"), + "SH3ADD_UW" -> BitPat("b0010000??????????110?????0111011"), + "SLLI_UW" -> BitPat("b000010???????????001?????0011011"), + "ZEXT_H" -> BitPat("b000010000000?????100?????0111011"), + ) + val ZICONDType = Map( + "CZERO_EQZ" -> BitPat("b0000111??????????101?????0110011"), + "CZERO_NEZ" -> BitPat("b0000111??????????111?????0110011"), + ) + val D32Type = Map( + "FMVH_X_D" -> BitPat("b111000100001?????000?????1010011"), + "FMVP_D_X" -> BitPat("b1011001??????????000?????1010011"), + ) + val SDEXTType = Map( + "DRET" -> BitPat("b01111011001000000000000001110011"), + ) + val D64Type = Map( + "FCVT_D_L" -> BitPat("b110100100010?????????????1010011"), + "FCVT_D_LU" -> BitPat("b110100100011?????????????1010011"), + "FCVT_L_D" -> BitPat("b110000100010?????????????1010011"), + "FCVT_LU_D" -> BitPat("b110000100011?????????????1010011"), + "FMV_D_X" -> BitPat("b111100100000?????000?????1010011"), + "FMV_X_D" -> BitPat("b111000100000?????000?????1010011"), + ) + val ZICFILPType = Map( + "LPAD" -> BitPat("b????????????????????000000010111"), + ) + val ZVBCType = Map( + "VCLMUL_VV" -> BitPat("b001100???????????010?????1010111"), + "VCLMUL_VX" -> BitPat("b001100???????????110?????1010111"), + "VCLMULH_VV" -> BitPat("b001101???????????010?????1010111"), + "VCLMULH_VX" -> BitPat("b001101???????????110?????1010111"), + ) + val ZFH64Type = Map( + "FCVT_H_L" -> BitPat("b110101000010?????????????1010011"), + "FCVT_H_LU" -> BitPat("b110101000011?????????????1010011"), + "FCVT_L_H" -> BitPat("b110001000010?????????????1010011"), + "FCVT_LU_H" -> BitPat("b110001000011?????????????1010011"), + ) + val SType = Map( + "SFENCE_VMA" -> BitPat("b0001001??????????000000001110011"), + "SRET" -> BitPat("b00010000001000000000000001110011"), + ) + val SMDBLTRPType = Map( + "SCTRCLR" -> BitPat("b00010000010000000000000001110011"), + ) + val ZICFISSType = Map( + "SSAMOSWAP_D" -> BitPat("b01001????????????011?????0101111"), + "SSAMOSWAP_W" -> BitPat("b01001????????????010?????0101111"), + "SSPOPCHK_X1" -> BitPat("b11001101110000001100000001110011"), + "SSPOPCHK_X5" -> BitPat("b11001101110000101100000001110011"), + "SSPUSH_X1" -> BitPat("b11001110000100000100000001110011"), + "SSPUSH_X5" -> BitPat("b11001110010100000100000001110011"), + "SSRDP" -> BitPat("b11001101110000000100?????1110011"), + ) + val VType = Map( + "VAADD_VV" -> BitPat("b001001???????????010?????1010111"), + "VAADD_VX" -> BitPat("b001001???????????110?????1010111"), + "VAADDU_VV" -> BitPat("b001000???????????010?????1010111"), + "VAADDU_VX" -> BitPat("b001000???????????110?????1010111"), + "VADC_VIM" -> BitPat("b0100000??????????011?????1010111"), + "VADC_VVM" -> BitPat("b0100000??????????000?????1010111"), + "VADC_VXM" -> BitPat("b0100000??????????100?????1010111"), + "VADD_VI" -> BitPat("b000000???????????011?????1010111"), + "VADD_VV" -> BitPat("b000000???????????000?????1010111"), + "VADD_VX" -> BitPat("b000000???????????100?????1010111"), + "VAND_VI" -> BitPat("b001001???????????011?????1010111"), + "VAND_VV" -> BitPat("b001001???????????000?????1010111"), + "VAND_VX" -> BitPat("b001001???????????100?????1010111"), + "VASUB_VV" -> BitPat("b001011???????????010?????1010111"), + "VASUB_VX" -> BitPat("b001011???????????110?????1010111"), + "VASUBU_VV" -> BitPat("b001010???????????010?????1010111"), + "VASUBU_VX" -> BitPat("b001010???????????110?????1010111"), + "VCOMPRESS_VM" -> BitPat("b0101111??????????010?????1010111"), + "VCPOP_M" -> BitPat("b010000??????10000010?????1010111"), + "VDIV_VV" -> BitPat("b100001???????????010?????1010111"), + "VDIV_VX" -> BitPat("b100001???????????110?????1010111"), + "VDIVU_VV" -> BitPat("b100000???????????010?????1010111"), + "VDIVU_VX" -> BitPat("b100000???????????110?????1010111"), + "VFADD_VF" -> BitPat("b000000???????????101?????1010111"), + "VFADD_VV" -> BitPat("b000000???????????001?????1010111"), + "VFCLASS_V" -> BitPat("b010011??????10000001?????1010111"), + "VFCVT_F_X_V" -> BitPat("b010010??????00011001?????1010111"), + "VFCVT_F_XU_V" -> BitPat("b010010??????00010001?????1010111"), + "VFCVT_RTZ_X_F_V" -> BitPat("b010010??????00111001?????1010111"), + "VFCVT_RTZ_XU_F_V" -> BitPat("b010010??????00110001?????1010111"), + "VFCVT_X_F_V" -> BitPat("b010010??????00001001?????1010111"), + "VFCVT_XU_F_V" -> BitPat("b010010??????00000001?????1010111"), + "VFDIV_VF" -> BitPat("b100000???????????101?????1010111"), + "VFDIV_VV" -> BitPat("b100000???????????001?????1010111"), + "VFIRST_M" -> BitPat("b010000??????10001010?????1010111"), + "VFMACC_VF" -> BitPat("b101100???????????101?????1010111"), + "VFMACC_VV" -> BitPat("b101100???????????001?????1010111"), + "VFMADD_VF" -> BitPat("b101000???????????101?????1010111"), + "VFMADD_VV" -> BitPat("b101000???????????001?????1010111"), + "VFMAX_VF" -> BitPat("b000110???????????101?????1010111"), + "VFMAX_VV" -> BitPat("b000110???????????001?????1010111"), + "VFMERGE_VFM" -> BitPat("b0101110??????????101?????1010111"), + "VFMIN_VF" -> BitPat("b000100???????????101?????1010111"), + "VFMIN_VV" -> BitPat("b000100???????????001?????1010111"), + "VFMSAC_VF" -> BitPat("b101110???????????101?????1010111"), + "VFMSAC_VV" -> BitPat("b101110???????????001?????1010111"), + "VFMSUB_VF" -> BitPat("b101010???????????101?????1010111"), + "VFMSUB_VV" -> BitPat("b101010???????????001?????1010111"), + "VFMUL_VF" -> BitPat("b100100???????????101?????1010111"), + "VFMUL_VV" -> BitPat("b100100???????????001?????1010111"), + "VFMV_F_S" -> BitPat("b0100001?????00000001?????1010111"), + "VFMV_S_F" -> BitPat("b010000100000?????101?????1010111"), + "VFMV_V_F" -> BitPat("b010111100000?????101?????1010111"), + "VFNCVT_F_F_W" -> BitPat("b010010??????10100001?????1010111"), + "VFNCVT_F_X_W" -> BitPat("b010010??????10011001?????1010111"), + "VFNCVT_F_XU_W" -> BitPat("b010010??????10010001?????1010111"), + "VFNCVT_ROD_F_F_W" -> BitPat("b010010??????10101001?????1010111"), + "VFNCVT_RTZ_X_F_W" -> BitPat("b010010??????10111001?????1010111"), + "VFNCVT_RTZ_XU_F_W" -> BitPat("b010010??????10110001?????1010111"), + "VFNCVT_X_F_W" -> BitPat("b010010??????10001001?????1010111"), + "VFNCVT_XU_F_W" -> BitPat("b010010??????10000001?????1010111"), + "VFNMACC_VF" -> BitPat("b101101???????????101?????1010111"), + "VFNMACC_VV" -> BitPat("b101101???????????001?????1010111"), + "VFNMADD_VF" -> BitPat("b101001???????????101?????1010111"), + "VFNMADD_VV" -> BitPat("b101001???????????001?????1010111"), + "VFNMSAC_VF" -> BitPat("b101111???????????101?????1010111"), + "VFNMSAC_VV" -> BitPat("b101111???????????001?????1010111"), + "VFNMSUB_VF" -> BitPat("b101011???????????101?????1010111"), + "VFNMSUB_VV" -> BitPat("b101011???????????001?????1010111"), + "VFRDIV_VF" -> BitPat("b100001???????????101?????1010111"), + "VFREC7_V" -> BitPat("b010011??????00101001?????1010111"), + "VFREDMAX_VS" -> BitPat("b000111???????????001?????1010111"), + "VFREDMIN_VS" -> BitPat("b000101???????????001?????1010111"), + "VFREDOSUM_VS" -> BitPat("b000011???????????001?????1010111"), + "VFREDUSUM_VS" -> BitPat("b000001???????????001?????1010111"), + "VFRSQRT7_V" -> BitPat("b010011??????00100001?????1010111"), + "VFRSUB_VF" -> BitPat("b100111???????????101?????1010111"), + "VFSGNJ_VF" -> BitPat("b001000???????????101?????1010111"), + "VFSGNJ_VV" -> BitPat("b001000???????????001?????1010111"), + "VFSGNJN_VF" -> BitPat("b001001???????????101?????1010111"), + "VFSGNJN_VV" -> BitPat("b001001???????????001?????1010111"), + "VFSGNJX_VF" -> BitPat("b001010???????????101?????1010111"), + "VFSGNJX_VV" -> BitPat("b001010???????????001?????1010111"), + "VFSLIDE1DOWN_VF" -> BitPat("b001111???????????101?????1010111"), + "VFSLIDE1UP_VF" -> BitPat("b001110???????????101?????1010111"), + "VFSQRT_V" -> BitPat("b010011??????00000001?????1010111"), + "VFSUB_VF" -> BitPat("b000010???????????101?????1010111"), + "VFSUB_VV" -> BitPat("b000010???????????001?????1010111"), + "VFWADD_VF" -> BitPat("b110000???????????101?????1010111"), + "VFWADD_VV" -> BitPat("b110000???????????001?????1010111"), + "VFWADD_WF" -> BitPat("b110100???????????101?????1010111"), + "VFWADD_WV" -> BitPat("b110100???????????001?????1010111"), + "VFWCVT_F_F_V" -> BitPat("b010010??????01100001?????1010111"), + "VFWCVT_F_X_V" -> BitPat("b010010??????01011001?????1010111"), + "VFWCVT_F_XU_V" -> BitPat("b010010??????01010001?????1010111"), + "VFWCVT_RTZ_X_F_V" -> BitPat("b010010??????01111001?????1010111"), + "VFWCVT_RTZ_XU_F_V" -> BitPat("b010010??????01110001?????1010111"), + "VFWCVT_X_F_V" -> BitPat("b010010??????01001001?????1010111"), + "VFWCVT_XU_F_V" -> BitPat("b010010??????01000001?????1010111"), + "VFWMACC_VF" -> BitPat("b111100???????????101?????1010111"), + "VFWMACC_VV" -> BitPat("b111100???????????001?????1010111"), + "VFWMSAC_VF" -> BitPat("b111110???????????101?????1010111"), + "VFWMSAC_VV" -> BitPat("b111110???????????001?????1010111"), + "VFWMUL_VF" -> BitPat("b111000???????????101?????1010111"), + "VFWMUL_VV" -> BitPat("b111000???????????001?????1010111"), + "VFWNMACC_VF" -> BitPat("b111101???????????101?????1010111"), + "VFWNMACC_VV" -> BitPat("b111101???????????001?????1010111"), + "VFWNMSAC_VF" -> BitPat("b111111???????????101?????1010111"), + "VFWNMSAC_VV" -> BitPat("b111111???????????001?????1010111"), + "VFWREDOSUM_VS" -> BitPat("b110011???????????001?????1010111"), + "VFWREDUSUM_VS" -> BitPat("b110001???????????001?????1010111"), + "VFWSUB_VF" -> BitPat("b110010???????????101?????1010111"), + "VFWSUB_VV" -> BitPat("b110010???????????001?????1010111"), + "VFWSUB_WF" -> BitPat("b110110???????????101?????1010111"), + "VFWSUB_WV" -> BitPat("b110110???????????001?????1010111"), + "VID_V" -> BitPat("b010100?0000010001010?????1010111"), + "VIOTA_M" -> BitPat("b010100??????10000010?????1010111"), + "VL1RE16_V" -> BitPat("b000000101000?????101?????0000111"), + "VL1RE32_V" -> BitPat("b000000101000?????110?????0000111"), + "VL1RE64_V" -> BitPat("b000000101000?????111?????0000111"), + "VL1RE8_V" -> BitPat("b000000101000?????000?????0000111"), + "VL2RE16_V" -> BitPat("b001000101000?????101?????0000111"), + "VL2RE32_V" -> BitPat("b001000101000?????110?????0000111"), + "VL2RE64_V" -> BitPat("b001000101000?????111?????0000111"), + "VL2RE8_V" -> BitPat("b001000101000?????000?????0000111"), + "VL4RE16_V" -> BitPat("b011000101000?????101?????0000111"), + "VL4RE32_V" -> BitPat("b011000101000?????110?????0000111"), + "VL4RE64_V" -> BitPat("b011000101000?????111?????0000111"), + "VL4RE8_V" -> BitPat("b011000101000?????000?????0000111"), + "VL8RE16_V" -> BitPat("b111000101000?????101?????0000111"), + "VL8RE32_V" -> BitPat("b111000101000?????110?????0000111"), + "VL8RE64_V" -> BitPat("b111000101000?????111?????0000111"), + "VL8RE8_V" -> BitPat("b111000101000?????000?????0000111"), + "VLE16_V" -> BitPat("b000000?00000?????101?????0000111"), + "VLE16FF_V" -> BitPat("b000000?10000?????101?????0000111"), + "VLE32_V" -> BitPat("b000000?00000?????110?????0000111"), + "VLE32FF_V" -> BitPat("b000000?10000?????110?????0000111"), + "VLE64_V" -> BitPat("b000000?00000?????111?????0000111"), + "VLE64FF_V" -> BitPat("b000000?10000?????111?????0000111"), + "VLE8_V" -> BitPat("b000000?00000?????000?????0000111"), + "VLE8FF_V" -> BitPat("b000000?10000?????000?????0000111"), + "VLM_V" -> BitPat("b000000101011?????000?????0000111"), + "VLOXEI16_V" -> BitPat("b000011???????????101?????0000111"), + "VLOXEI32_V" -> BitPat("b000011???????????110?????0000111"), + "VLOXEI64_V" -> BitPat("b000011???????????111?????0000111"), + "VLOXEI8_V" -> BitPat("b000011???????????000?????0000111"), + "VLOXSEG2EI16_V" -> BitPat("b001011???????????101?????0000111"), + "VLOXSEG2EI32_V" -> BitPat("b001011???????????110?????0000111"), + "VLOXSEG2EI64_V" -> BitPat("b001011???????????111?????0000111"), + "VLOXSEG2EI8_V" -> BitPat("b001011???????????000?????0000111"), + "VLOXSEG3EI16_V" -> BitPat("b010011???????????101?????0000111"), + "VLOXSEG3EI32_V" -> BitPat("b010011???????????110?????0000111"), + "VLOXSEG3EI64_V" -> BitPat("b010011???????????111?????0000111"), + "VLOXSEG3EI8_V" -> BitPat("b010011???????????000?????0000111"), + "VLOXSEG4EI16_V" -> BitPat("b011011???????????101?????0000111"), + "VLOXSEG4EI32_V" -> BitPat("b011011???????????110?????0000111"), + "VLOXSEG4EI64_V" -> BitPat("b011011???????????111?????0000111"), + "VLOXSEG4EI8_V" -> BitPat("b011011???????????000?????0000111"), + "VLOXSEG5EI16_V" -> BitPat("b100011???????????101?????0000111"), + "VLOXSEG5EI32_V" -> BitPat("b100011???????????110?????0000111"), + "VLOXSEG5EI64_V" -> BitPat("b100011???????????111?????0000111"), + "VLOXSEG5EI8_V" -> BitPat("b100011???????????000?????0000111"), + "VLOXSEG6EI16_V" -> BitPat("b101011???????????101?????0000111"), + "VLOXSEG6EI32_V" -> BitPat("b101011???????????110?????0000111"), + "VLOXSEG6EI64_V" -> BitPat("b101011???????????111?????0000111"), + "VLOXSEG6EI8_V" -> BitPat("b101011???????????000?????0000111"), + "VLOXSEG7EI16_V" -> BitPat("b110011???????????101?????0000111"), + "VLOXSEG7EI32_V" -> BitPat("b110011???????????110?????0000111"), + "VLOXSEG7EI64_V" -> BitPat("b110011???????????111?????0000111"), + "VLOXSEG7EI8_V" -> BitPat("b110011???????????000?????0000111"), + "VLOXSEG8EI16_V" -> BitPat("b111011???????????101?????0000111"), + "VLOXSEG8EI32_V" -> BitPat("b111011???????????110?????0000111"), + "VLOXSEG8EI64_V" -> BitPat("b111011???????????111?????0000111"), + "VLOXSEG8EI8_V" -> BitPat("b111011???????????000?????0000111"), + "VLSE16_V" -> BitPat("b000010???????????101?????0000111"), + "VLSE32_V" -> BitPat("b000010???????????110?????0000111"), + "VLSE64_V" -> BitPat("b000010???????????111?????0000111"), + "VLSE8_V" -> BitPat("b000010???????????000?????0000111"), + "VLSEG2E16_V" -> BitPat("b001000?00000?????101?????0000111"), + "VLSEG2E16FF_V" -> BitPat("b001000?10000?????101?????0000111"), + "VLSEG2E32_V" -> BitPat("b001000?00000?????110?????0000111"), + "VLSEG2E32FF_V" -> BitPat("b001000?10000?????110?????0000111"), + "VLSEG2E64_V" -> BitPat("b001000?00000?????111?????0000111"), + "VLSEG2E64FF_V" -> BitPat("b001000?10000?????111?????0000111"), + "VLSEG2E8_V" -> BitPat("b001000?00000?????000?????0000111"), + "VLSEG2E8FF_V" -> BitPat("b001000?10000?????000?????0000111"), + "VLSEG3E16_V" -> BitPat("b010000?00000?????101?????0000111"), + "VLSEG3E16FF_V" -> BitPat("b010000?10000?????101?????0000111"), + "VLSEG3E32_V" -> BitPat("b010000?00000?????110?????0000111"), + "VLSEG3E32FF_V" -> BitPat("b010000?10000?????110?????0000111"), + "VLSEG3E64_V" -> BitPat("b010000?00000?????111?????0000111"), + "VLSEG3E64FF_V" -> BitPat("b010000?10000?????111?????0000111"), + "VLSEG3E8_V" -> BitPat("b010000?00000?????000?????0000111"), + "VLSEG3E8FF_V" -> BitPat("b010000?10000?????000?????0000111"), + "VLSEG4E16_V" -> BitPat("b011000?00000?????101?????0000111"), + "VLSEG4E16FF_V" -> BitPat("b011000?10000?????101?????0000111"), + "VLSEG4E32_V" -> BitPat("b011000?00000?????110?????0000111"), + "VLSEG4E32FF_V" -> BitPat("b011000?10000?????110?????0000111"), + "VLSEG4E64_V" -> BitPat("b011000?00000?????111?????0000111"), + "VLSEG4E64FF_V" -> BitPat("b011000?10000?????111?????0000111"), + "VLSEG4E8_V" -> BitPat("b011000?00000?????000?????0000111"), + "VLSEG4E8FF_V" -> BitPat("b011000?10000?????000?????0000111"), + "VLSEG5E16_V" -> BitPat("b100000?00000?????101?????0000111"), + "VLSEG5E16FF_V" -> BitPat("b100000?10000?????101?????0000111"), + "VLSEG5E32_V" -> BitPat("b100000?00000?????110?????0000111"), + "VLSEG5E32FF_V" -> BitPat("b100000?10000?????110?????0000111"), + "VLSEG5E64_V" -> BitPat("b100000?00000?????111?????0000111"), + "VLSEG5E64FF_V" -> BitPat("b100000?10000?????111?????0000111"), + "VLSEG5E8_V" -> BitPat("b100000?00000?????000?????0000111"), + "VLSEG5E8FF_V" -> BitPat("b100000?10000?????000?????0000111"), + "VLSEG6E16_V" -> BitPat("b101000?00000?????101?????0000111"), + "VLSEG6E16FF_V" -> BitPat("b101000?10000?????101?????0000111"), + "VLSEG6E32_V" -> BitPat("b101000?00000?????110?????0000111"), + "VLSEG6E32FF_V" -> BitPat("b101000?10000?????110?????0000111"), + "VLSEG6E64_V" -> BitPat("b101000?00000?????111?????0000111"), + "VLSEG6E64FF_V" -> BitPat("b101000?10000?????111?????0000111"), + "VLSEG6E8_V" -> BitPat("b101000?00000?????000?????0000111"), + "VLSEG6E8FF_V" -> BitPat("b101000?10000?????000?????0000111"), + "VLSEG7E16_V" -> BitPat("b110000?00000?????101?????0000111"), + "VLSEG7E16FF_V" -> BitPat("b110000?10000?????101?????0000111"), + "VLSEG7E32_V" -> BitPat("b110000?00000?????110?????0000111"), + "VLSEG7E32FF_V" -> BitPat("b110000?10000?????110?????0000111"), + "VLSEG7E64_V" -> BitPat("b110000?00000?????111?????0000111"), + "VLSEG7E64FF_V" -> BitPat("b110000?10000?????111?????0000111"), + "VLSEG7E8_V" -> BitPat("b110000?00000?????000?????0000111"), + "VLSEG7E8FF_V" -> BitPat("b110000?10000?????000?????0000111"), + "VLSEG8E16_V" -> BitPat("b111000?00000?????101?????0000111"), + "VLSEG8E16FF_V" -> BitPat("b111000?10000?????101?????0000111"), + "VLSEG8E32_V" -> BitPat("b111000?00000?????110?????0000111"), + "VLSEG8E32FF_V" -> BitPat("b111000?10000?????110?????0000111"), + "VLSEG8E64_V" -> BitPat("b111000?00000?????111?????0000111"), + "VLSEG8E64FF_V" -> BitPat("b111000?10000?????111?????0000111"), + "VLSEG8E8_V" -> BitPat("b111000?00000?????000?????0000111"), + "VLSEG8E8FF_V" -> BitPat("b111000?10000?????000?????0000111"), + "VLSSEG2E16_V" -> BitPat("b001010???????????101?????0000111"), + "VLSSEG2E32_V" -> BitPat("b001010???????????110?????0000111"), + "VLSSEG2E64_V" -> BitPat("b001010???????????111?????0000111"), + "VLSSEG2E8_V" -> BitPat("b001010???????????000?????0000111"), + "VLSSEG3E16_V" -> BitPat("b010010???????????101?????0000111"), + "VLSSEG3E32_V" -> BitPat("b010010???????????110?????0000111"), + "VLSSEG3E64_V" -> BitPat("b010010???????????111?????0000111"), + "VLSSEG3E8_V" -> BitPat("b010010???????????000?????0000111"), + "VLSSEG4E16_V" -> BitPat("b011010???????????101?????0000111"), + "VLSSEG4E32_V" -> BitPat("b011010???????????110?????0000111"), + "VLSSEG4E64_V" -> BitPat("b011010???????????111?????0000111"), + "VLSSEG4E8_V" -> BitPat("b011010???????????000?????0000111"), + "VLSSEG5E16_V" -> BitPat("b100010???????????101?????0000111"), + "VLSSEG5E32_V" -> BitPat("b100010???????????110?????0000111"), + "VLSSEG5E64_V" -> BitPat("b100010???????????111?????0000111"), + "VLSSEG5E8_V" -> BitPat("b100010???????????000?????0000111"), + "VLSSEG6E16_V" -> BitPat("b101010???????????101?????0000111"), + "VLSSEG6E32_V" -> BitPat("b101010???????????110?????0000111"), + "VLSSEG6E64_V" -> BitPat("b101010???????????111?????0000111"), + "VLSSEG6E8_V" -> BitPat("b101010???????????000?????0000111"), + "VLSSEG7E16_V" -> BitPat("b110010???????????101?????0000111"), + "VLSSEG7E32_V" -> BitPat("b110010???????????110?????0000111"), + "VLSSEG7E64_V" -> BitPat("b110010???????????111?????0000111"), + "VLSSEG7E8_V" -> BitPat("b110010???????????000?????0000111"), + "VLSSEG8E16_V" -> BitPat("b111010???????????101?????0000111"), + "VLSSEG8E32_V" -> BitPat("b111010???????????110?????0000111"), + "VLSSEG8E64_V" -> BitPat("b111010???????????111?????0000111"), + "VLSSEG8E8_V" -> BitPat("b111010???????????000?????0000111"), + "VLUXEI16_V" -> BitPat("b000001???????????101?????0000111"), + "VLUXEI32_V" -> BitPat("b000001???????????110?????0000111"), + "VLUXEI64_V" -> BitPat("b000001???????????111?????0000111"), + "VLUXEI8_V" -> BitPat("b000001???????????000?????0000111"), + "VLUXSEG2EI16_V" -> BitPat("b001001???????????101?????0000111"), + "VLUXSEG2EI32_V" -> BitPat("b001001???????????110?????0000111"), + "VLUXSEG2EI64_V" -> BitPat("b001001???????????111?????0000111"), + "VLUXSEG2EI8_V" -> BitPat("b001001???????????000?????0000111"), + "VLUXSEG3EI16_V" -> BitPat("b010001???????????101?????0000111"), + "VLUXSEG3EI32_V" -> BitPat("b010001???????????110?????0000111"), + "VLUXSEG3EI64_V" -> BitPat("b010001???????????111?????0000111"), + "VLUXSEG3EI8_V" -> BitPat("b010001???????????000?????0000111"), + "VLUXSEG4EI16_V" -> BitPat("b011001???????????101?????0000111"), + "VLUXSEG4EI32_V" -> BitPat("b011001???????????110?????0000111"), + "VLUXSEG4EI64_V" -> BitPat("b011001???????????111?????0000111"), + "VLUXSEG4EI8_V" -> BitPat("b011001???????????000?????0000111"), + "VLUXSEG5EI16_V" -> BitPat("b100001???????????101?????0000111"), + "VLUXSEG5EI32_V" -> BitPat("b100001???????????110?????0000111"), + "VLUXSEG5EI64_V" -> BitPat("b100001???????????111?????0000111"), + "VLUXSEG5EI8_V" -> BitPat("b100001???????????000?????0000111"), + "VLUXSEG6EI16_V" -> BitPat("b101001???????????101?????0000111"), + "VLUXSEG6EI32_V" -> BitPat("b101001???????????110?????0000111"), + "VLUXSEG6EI64_V" -> BitPat("b101001???????????111?????0000111"), + "VLUXSEG6EI8_V" -> BitPat("b101001???????????000?????0000111"), + "VLUXSEG7EI16_V" -> BitPat("b110001???????????101?????0000111"), + "VLUXSEG7EI32_V" -> BitPat("b110001???????????110?????0000111"), + "VLUXSEG7EI64_V" -> BitPat("b110001???????????111?????0000111"), + "VLUXSEG7EI8_V" -> BitPat("b110001???????????000?????0000111"), + "VLUXSEG8EI16_V" -> BitPat("b111001???????????101?????0000111"), + "VLUXSEG8EI32_V" -> BitPat("b111001???????????110?????0000111"), + "VLUXSEG8EI64_V" -> BitPat("b111001???????????111?????0000111"), + "VLUXSEG8EI8_V" -> BitPat("b111001???????????000?????0000111"), + "VMACC_VV" -> BitPat("b101101???????????010?????1010111"), + "VMACC_VX" -> BitPat("b101101???????????110?????1010111"), + "VMADC_VI" -> BitPat("b0100011??????????011?????1010111"), + "VMADC_VIM" -> BitPat("b0100010??????????011?????1010111"), + "VMADC_VV" -> BitPat("b0100011??????????000?????1010111"), + "VMADC_VVM" -> BitPat("b0100010??????????000?????1010111"), + "VMADC_VX" -> BitPat("b0100011??????????100?????1010111"), + "VMADC_VXM" -> BitPat("b0100010??????????100?????1010111"), + "VMADD_VV" -> BitPat("b101001???????????010?????1010111"), + "VMADD_VX" -> BitPat("b101001???????????110?????1010111"), + "VMAND_MM" -> BitPat("b0110011??????????010?????1010111"), + "VMANDN_MM" -> BitPat("b0110001??????????010?????1010111"), + "VMAX_VV" -> BitPat("b000111???????????000?????1010111"), + "VMAX_VX" -> BitPat("b000111???????????100?????1010111"), + "VMAXU_VV" -> BitPat("b000110???????????000?????1010111"), + "VMAXU_VX" -> BitPat("b000110???????????100?????1010111"), + "VMERGE_VIM" -> BitPat("b0101110??????????011?????1010111"), + "VMERGE_VVM" -> BitPat("b0101110??????????000?????1010111"), + "VMERGE_VXM" -> BitPat("b0101110??????????100?????1010111"), + "VMFEQ_VF" -> BitPat("b011000???????????101?????1010111"), + "VMFEQ_VV" -> BitPat("b011000???????????001?????1010111"), + "VMFGE_VF" -> BitPat("b011111???????????101?????1010111"), + "VMFGT_VF" -> BitPat("b011101???????????101?????1010111"), + "VMFLE_VF" -> BitPat("b011001???????????101?????1010111"), + "VMFLE_VV" -> BitPat("b011001???????????001?????1010111"), + "VMFLT_VF" -> BitPat("b011011???????????101?????1010111"), + "VMFLT_VV" -> BitPat("b011011???????????001?????1010111"), + "VMFNE_VF" -> BitPat("b011100???????????101?????1010111"), + "VMFNE_VV" -> BitPat("b011100???????????001?????1010111"), + "VMIN_VV" -> BitPat("b000101???????????000?????1010111"), + "VMIN_VX" -> BitPat("b000101???????????100?????1010111"), + "VMINU_VV" -> BitPat("b000100???????????000?????1010111"), + "VMINU_VX" -> BitPat("b000100???????????100?????1010111"), + "VMNAND_MM" -> BitPat("b0111011??????????010?????1010111"), + "VMNOR_MM" -> BitPat("b0111101??????????010?????1010111"), + "VMOR_MM" -> BitPat("b0110101??????????010?????1010111"), + "VMORN_MM" -> BitPat("b0111001??????????010?????1010111"), + "VMSBC_VV" -> BitPat("b0100111??????????000?????1010111"), + "VMSBC_VVM" -> BitPat("b0100110??????????000?????1010111"), + "VMSBC_VX" -> BitPat("b0100111??????????100?????1010111"), + "VMSBC_VXM" -> BitPat("b0100110??????????100?????1010111"), + "VMSBF_M" -> BitPat("b010100??????00001010?????1010111"), + "VMSEQ_VI" -> BitPat("b011000???????????011?????1010111"), + "VMSEQ_VV" -> BitPat("b011000???????????000?????1010111"), + "VMSEQ_VX" -> BitPat("b011000???????????100?????1010111"), + "VMSGT_VI" -> BitPat("b011111???????????011?????1010111"), + "VMSGT_VX" -> BitPat("b011111???????????100?????1010111"), + "VMSGTU_VI" -> BitPat("b011110???????????011?????1010111"), + "VMSGTU_VX" -> BitPat("b011110???????????100?????1010111"), + "VMSIF_M" -> BitPat("b010100??????00011010?????1010111"), + "VMSLE_VI" -> BitPat("b011101???????????011?????1010111"), + "VMSLE_VV" -> BitPat("b011101???????????000?????1010111"), + "VMSLE_VX" -> BitPat("b011101???????????100?????1010111"), + "VMSLEU_VI" -> BitPat("b011100???????????011?????1010111"), + "VMSLEU_VV" -> BitPat("b011100???????????000?????1010111"), + "VMSLEU_VX" -> BitPat("b011100???????????100?????1010111"), + "VMSLT_VV" -> BitPat("b011011???????????000?????1010111"), + "VMSLT_VX" -> BitPat("b011011???????????100?????1010111"), + "VMSLTU_VV" -> BitPat("b011010???????????000?????1010111"), + "VMSLTU_VX" -> BitPat("b011010???????????100?????1010111"), + "VMSNE_VI" -> BitPat("b011001???????????011?????1010111"), + "VMSNE_VV" -> BitPat("b011001???????????000?????1010111"), + "VMSNE_VX" -> BitPat("b011001???????????100?????1010111"), + "VMSOF_M" -> BitPat("b010100??????00010010?????1010111"), + "VMUL_VV" -> BitPat("b100101???????????010?????1010111"), + "VMUL_VX" -> BitPat("b100101???????????110?????1010111"), + "VMULH_VV" -> BitPat("b100111???????????010?????1010111"), + "VMULH_VX" -> BitPat("b100111???????????110?????1010111"), + "VMULHSU_VV" -> BitPat("b100110???????????010?????1010111"), + "VMULHSU_VX" -> BitPat("b100110???????????110?????1010111"), + "VMULHU_VV" -> BitPat("b100100???????????010?????1010111"), + "VMULHU_VX" -> BitPat("b100100???????????110?????1010111"), + "VMV1R_V" -> BitPat("b1001111?????00000011?????1010111"), + "VMV2R_V" -> BitPat("b1001111?????00001011?????1010111"), + "VMV4R_V" -> BitPat("b1001111?????00011011?????1010111"), + "VMV8R_V" -> BitPat("b1001111?????00111011?????1010111"), + "VMV_S_X" -> BitPat("b010000100000?????110?????1010111"), + "VMV_V_I" -> BitPat("b010111100000?????011?????1010111"), + "VMV_V_V" -> BitPat("b010111100000?????000?????1010111"), + "VMV_V_X" -> BitPat("b010111100000?????100?????1010111"), + "VMV_X_S" -> BitPat("b0100001?????00000010?????1010111"), + "VMXNOR_MM" -> BitPat("b0111111??????????010?????1010111"), + "VMXOR_MM" -> BitPat("b0110111??????????010?????1010111"), + "VNCLIP_WI" -> BitPat("b101111???????????011?????1010111"), + "VNCLIP_WV" -> BitPat("b101111???????????000?????1010111"), + "VNCLIP_WX" -> BitPat("b101111???????????100?????1010111"), + "VNCLIPU_WI" -> BitPat("b101110???????????011?????1010111"), + "VNCLIPU_WV" -> BitPat("b101110???????????000?????1010111"), + "VNCLIPU_WX" -> BitPat("b101110???????????100?????1010111"), + "VNMSAC_VV" -> BitPat("b101111???????????010?????1010111"), + "VNMSAC_VX" -> BitPat("b101111???????????110?????1010111"), + "VNMSUB_VV" -> BitPat("b101011???????????010?????1010111"), + "VNMSUB_VX" -> BitPat("b101011???????????110?????1010111"), + "VNSRA_WI" -> BitPat("b101101???????????011?????1010111"), + "VNSRA_WV" -> BitPat("b101101???????????000?????1010111"), + "VNSRA_WX" -> BitPat("b101101???????????100?????1010111"), + "VNSRL_WI" -> BitPat("b101100???????????011?????1010111"), + "VNSRL_WV" -> BitPat("b101100???????????000?????1010111"), + "VNSRL_WX" -> BitPat("b101100???????????100?????1010111"), + "VOR_VI" -> BitPat("b001010???????????011?????1010111"), + "VOR_VV" -> BitPat("b001010???????????000?????1010111"), + "VOR_VX" -> BitPat("b001010???????????100?????1010111"), + "VREDAND_VS" -> BitPat("b000001???????????010?????1010111"), + "VREDMAX_VS" -> BitPat("b000111???????????010?????1010111"), + "VREDMAXU_VS" -> BitPat("b000110???????????010?????1010111"), + "VREDMIN_VS" -> BitPat("b000101???????????010?????1010111"), + "VREDMINU_VS" -> BitPat("b000100???????????010?????1010111"), + "VREDOR_VS" -> BitPat("b000010???????????010?????1010111"), + "VREDSUM_VS" -> BitPat("b000000???????????010?????1010111"), + "VREDXOR_VS" -> BitPat("b000011???????????010?????1010111"), + "VREM_VV" -> BitPat("b100011???????????010?????1010111"), + "VREM_VX" -> BitPat("b100011???????????110?????1010111"), + "VREMU_VV" -> BitPat("b100010???????????010?????1010111"), + "VREMU_VX" -> BitPat("b100010???????????110?????1010111"), + "VRGATHER_VI" -> BitPat("b001100???????????011?????1010111"), + "VRGATHER_VV" -> BitPat("b001100???????????000?????1010111"), + "VRGATHER_VX" -> BitPat("b001100???????????100?????1010111"), + "VRGATHEREI16_VV" -> BitPat("b001110???????????000?????1010111"), + "VRSUB_VI" -> BitPat("b000011???????????011?????1010111"), + "VRSUB_VX" -> BitPat("b000011???????????100?????1010111"), + "VS1R_V" -> BitPat("b000000101000?????000?????0100111"), + "VS2R_V" -> BitPat("b001000101000?????000?????0100111"), + "VS4R_V" -> BitPat("b011000101000?????000?????0100111"), + "VS8R_V" -> BitPat("b111000101000?????000?????0100111"), + "VSADD_VI" -> BitPat("b100001???????????011?????1010111"), + "VSADD_VV" -> BitPat("b100001???????????000?????1010111"), + "VSADD_VX" -> BitPat("b100001???????????100?????1010111"), + "VSADDU_VI" -> BitPat("b100000???????????011?????1010111"), + "VSADDU_VV" -> BitPat("b100000???????????000?????1010111"), + "VSADDU_VX" -> BitPat("b100000???????????100?????1010111"), + "VSBC_VVM" -> BitPat("b0100100??????????000?????1010111"), + "VSBC_VXM" -> BitPat("b0100100??????????100?????1010111"), + "VSE16_V" -> BitPat("b000000?00000?????101?????0100111"), + "VSE32_V" -> BitPat("b000000?00000?????110?????0100111"), + "VSE64_V" -> BitPat("b000000?00000?????111?????0100111"), + "VSE8_V" -> BitPat("b000000?00000?????000?????0100111"), + "VSETIVLI" -> BitPat("b11???????????????111?????1010111"), + "VSETVL" -> BitPat("b1000000??????????111?????1010111"), + "VSETVLI" -> BitPat("b0????????????????111?????1010111"), + "VSEXT_VF2" -> BitPat("b010010??????00111010?????1010111"), + "VSEXT_VF4" -> BitPat("b010010??????00101010?????1010111"), + "VSEXT_VF8" -> BitPat("b010010??????00011010?????1010111"), + "VSLIDE1DOWN_VX" -> BitPat("b001111???????????110?????1010111"), + "VSLIDE1UP_VX" -> BitPat("b001110???????????110?????1010111"), + "VSLIDEDOWN_VI" -> BitPat("b001111???????????011?????1010111"), + "VSLIDEDOWN_VX" -> BitPat("b001111???????????100?????1010111"), + "VSLIDEUP_VI" -> BitPat("b001110???????????011?????1010111"), + "VSLIDEUP_VX" -> BitPat("b001110???????????100?????1010111"), + "VSLL_VI" -> BitPat("b100101???????????011?????1010111"), + "VSLL_VV" -> BitPat("b100101???????????000?????1010111"), + "VSLL_VX" -> BitPat("b100101???????????100?????1010111"), + "VSM_V" -> BitPat("b000000101011?????000?????0100111"), + "VSMUL_VV" -> BitPat("b100111???????????000?????1010111"), + "VSMUL_VX" -> BitPat("b100111???????????100?????1010111"), + "VSOXEI16_V" -> BitPat("b000011???????????101?????0100111"), + "VSOXEI32_V" -> BitPat("b000011???????????110?????0100111"), + "VSOXEI64_V" -> BitPat("b000011???????????111?????0100111"), + "VSOXEI8_V" -> BitPat("b000011???????????000?????0100111"), + "VSOXSEG2EI16_V" -> BitPat("b001011???????????101?????0100111"), + "VSOXSEG2EI32_V" -> BitPat("b001011???????????110?????0100111"), + "VSOXSEG2EI64_V" -> BitPat("b001011???????????111?????0100111"), + "VSOXSEG2EI8_V" -> BitPat("b001011???????????000?????0100111"), + "VSOXSEG3EI16_V" -> BitPat("b010011???????????101?????0100111"), + "VSOXSEG3EI32_V" -> BitPat("b010011???????????110?????0100111"), + "VSOXSEG3EI64_V" -> BitPat("b010011???????????111?????0100111"), + "VSOXSEG3EI8_V" -> BitPat("b010011???????????000?????0100111"), + "VSOXSEG4EI16_V" -> BitPat("b011011???????????101?????0100111"), + "VSOXSEG4EI32_V" -> BitPat("b011011???????????110?????0100111"), + "VSOXSEG4EI64_V" -> BitPat("b011011???????????111?????0100111"), + "VSOXSEG4EI8_V" -> BitPat("b011011???????????000?????0100111"), + "VSOXSEG5EI16_V" -> BitPat("b100011???????????101?????0100111"), + "VSOXSEG5EI32_V" -> BitPat("b100011???????????110?????0100111"), + "VSOXSEG5EI64_V" -> BitPat("b100011???????????111?????0100111"), + "VSOXSEG5EI8_V" -> BitPat("b100011???????????000?????0100111"), + "VSOXSEG6EI16_V" -> BitPat("b101011???????????101?????0100111"), + "VSOXSEG6EI32_V" -> BitPat("b101011???????????110?????0100111"), + "VSOXSEG6EI64_V" -> BitPat("b101011???????????111?????0100111"), + "VSOXSEG6EI8_V" -> BitPat("b101011???????????000?????0100111"), + "VSOXSEG7EI16_V" -> BitPat("b110011???????????101?????0100111"), + "VSOXSEG7EI32_V" -> BitPat("b110011???????????110?????0100111"), + "VSOXSEG7EI64_V" -> BitPat("b110011???????????111?????0100111"), + "VSOXSEG7EI8_V" -> BitPat("b110011???????????000?????0100111"), + "VSOXSEG8EI16_V" -> BitPat("b111011???????????101?????0100111"), + "VSOXSEG8EI32_V" -> BitPat("b111011???????????110?????0100111"), + "VSOXSEG8EI64_V" -> BitPat("b111011???????????111?????0100111"), + "VSOXSEG8EI8_V" -> BitPat("b111011???????????000?????0100111"), + "VSRA_VI" -> BitPat("b101001???????????011?????1010111"), + "VSRA_VV" -> BitPat("b101001???????????000?????1010111"), + "VSRA_VX" -> BitPat("b101001???????????100?????1010111"), + "VSRL_VI" -> BitPat("b101000???????????011?????1010111"), + "VSRL_VV" -> BitPat("b101000???????????000?????1010111"), + "VSRL_VX" -> BitPat("b101000???????????100?????1010111"), + "VSSE16_V" -> BitPat("b000010???????????101?????0100111"), + "VSSE32_V" -> BitPat("b000010???????????110?????0100111"), + "VSSE64_V" -> BitPat("b000010???????????111?????0100111"), + "VSSE8_V" -> BitPat("b000010???????????000?????0100111"), + "VSSEG2E16_V" -> BitPat("b001000?00000?????101?????0100111"), + "VSSEG2E32_V" -> BitPat("b001000?00000?????110?????0100111"), + "VSSEG2E64_V" -> BitPat("b001000?00000?????111?????0100111"), + "VSSEG2E8_V" -> BitPat("b001000?00000?????000?????0100111"), + "VSSEG3E16_V" -> BitPat("b010000?00000?????101?????0100111"), + "VSSEG3E32_V" -> BitPat("b010000?00000?????110?????0100111"), + "VSSEG3E64_V" -> BitPat("b010000?00000?????111?????0100111"), + "VSSEG3E8_V" -> BitPat("b010000?00000?????000?????0100111"), + "VSSEG4E16_V" -> BitPat("b011000?00000?????101?????0100111"), + "VSSEG4E32_V" -> BitPat("b011000?00000?????110?????0100111"), + "VSSEG4E64_V" -> BitPat("b011000?00000?????111?????0100111"), + "VSSEG4E8_V" -> BitPat("b011000?00000?????000?????0100111"), + "VSSEG5E16_V" -> BitPat("b100000?00000?????101?????0100111"), + "VSSEG5E32_V" -> BitPat("b100000?00000?????110?????0100111"), + "VSSEG5E64_V" -> BitPat("b100000?00000?????111?????0100111"), + "VSSEG5E8_V" -> BitPat("b100000?00000?????000?????0100111"), + "VSSEG6E16_V" -> BitPat("b101000?00000?????101?????0100111"), + "VSSEG6E32_V" -> BitPat("b101000?00000?????110?????0100111"), + "VSSEG6E64_V" -> BitPat("b101000?00000?????111?????0100111"), + "VSSEG6E8_V" -> BitPat("b101000?00000?????000?????0100111"), + "VSSEG7E16_V" -> BitPat("b110000?00000?????101?????0100111"), + "VSSEG7E32_V" -> BitPat("b110000?00000?????110?????0100111"), + "VSSEG7E64_V" -> BitPat("b110000?00000?????111?????0100111"), + "VSSEG7E8_V" -> BitPat("b110000?00000?????000?????0100111"), + "VSSEG8E16_V" -> BitPat("b111000?00000?????101?????0100111"), + "VSSEG8E32_V" -> BitPat("b111000?00000?????110?????0100111"), + "VSSEG8E64_V" -> BitPat("b111000?00000?????111?????0100111"), + "VSSEG8E8_V" -> BitPat("b111000?00000?????000?????0100111"), + "VSSRA_VI" -> BitPat("b101011???????????011?????1010111"), + "VSSRA_VV" -> BitPat("b101011???????????000?????1010111"), + "VSSRA_VX" -> BitPat("b101011???????????100?????1010111"), + "VSSRL_VI" -> BitPat("b101010???????????011?????1010111"), + "VSSRL_VV" -> BitPat("b101010???????????000?????1010111"), + "VSSRL_VX" -> BitPat("b101010???????????100?????1010111"), + "VSSSEG2E16_V" -> BitPat("b001010???????????101?????0100111"), + "VSSSEG2E32_V" -> BitPat("b001010???????????110?????0100111"), + "VSSSEG2E64_V" -> BitPat("b001010???????????111?????0100111"), + "VSSSEG2E8_V" -> BitPat("b001010???????????000?????0100111"), + "VSSSEG3E16_V" -> BitPat("b010010???????????101?????0100111"), + "VSSSEG3E32_V" -> BitPat("b010010???????????110?????0100111"), + "VSSSEG3E64_V" -> BitPat("b010010???????????111?????0100111"), + "VSSSEG3E8_V" -> BitPat("b010010???????????000?????0100111"), + "VSSSEG4E16_V" -> BitPat("b011010???????????101?????0100111"), + "VSSSEG4E32_V" -> BitPat("b011010???????????110?????0100111"), + "VSSSEG4E64_V" -> BitPat("b011010???????????111?????0100111"), + "VSSSEG4E8_V" -> BitPat("b011010???????????000?????0100111"), + "VSSSEG5E16_V" -> BitPat("b100010???????????101?????0100111"), + "VSSSEG5E32_V" -> BitPat("b100010???????????110?????0100111"), + "VSSSEG5E64_V" -> BitPat("b100010???????????111?????0100111"), + "VSSSEG5E8_V" -> BitPat("b100010???????????000?????0100111"), + "VSSSEG6E16_V" -> BitPat("b101010???????????101?????0100111"), + "VSSSEG6E32_V" -> BitPat("b101010???????????110?????0100111"), + "VSSSEG6E64_V" -> BitPat("b101010???????????111?????0100111"), + "VSSSEG6E8_V" -> BitPat("b101010???????????000?????0100111"), + "VSSSEG7E16_V" -> BitPat("b110010???????????101?????0100111"), + "VSSSEG7E32_V" -> BitPat("b110010???????????110?????0100111"), + "VSSSEG7E64_V" -> BitPat("b110010???????????111?????0100111"), + "VSSSEG7E8_V" -> BitPat("b110010???????????000?????0100111"), + "VSSSEG8E16_V" -> BitPat("b111010???????????101?????0100111"), + "VSSSEG8E32_V" -> BitPat("b111010???????????110?????0100111"), + "VSSSEG8E64_V" -> BitPat("b111010???????????111?????0100111"), + "VSSSEG8E8_V" -> BitPat("b111010???????????000?????0100111"), + "VSSUB_VV" -> BitPat("b100011???????????000?????1010111"), + "VSSUB_VX" -> BitPat("b100011???????????100?????1010111"), + "VSSUBU_VV" -> BitPat("b100010???????????000?????1010111"), + "VSSUBU_VX" -> BitPat("b100010???????????100?????1010111"), + "VSUB_VV" -> BitPat("b000010???????????000?????1010111"), + "VSUB_VX" -> BitPat("b000010???????????100?????1010111"), + "VSUXEI16_V" -> BitPat("b000001???????????101?????0100111"), + "VSUXEI32_V" -> BitPat("b000001???????????110?????0100111"), + "VSUXEI64_V" -> BitPat("b000001???????????111?????0100111"), + "VSUXEI8_V" -> BitPat("b000001???????????000?????0100111"), + "VSUXSEG2EI16_V" -> BitPat("b001001???????????101?????0100111"), + "VSUXSEG2EI32_V" -> BitPat("b001001???????????110?????0100111"), + "VSUXSEG2EI64_V" -> BitPat("b001001???????????111?????0100111"), + "VSUXSEG2EI8_V" -> BitPat("b001001???????????000?????0100111"), + "VSUXSEG3EI16_V" -> BitPat("b010001???????????101?????0100111"), + "VSUXSEG3EI32_V" -> BitPat("b010001???????????110?????0100111"), + "VSUXSEG3EI64_V" -> BitPat("b010001???????????111?????0100111"), + "VSUXSEG3EI8_V" -> BitPat("b010001???????????000?????0100111"), + "VSUXSEG4EI16_V" -> BitPat("b011001???????????101?????0100111"), + "VSUXSEG4EI32_V" -> BitPat("b011001???????????110?????0100111"), + "VSUXSEG4EI64_V" -> BitPat("b011001???????????111?????0100111"), + "VSUXSEG4EI8_V" -> BitPat("b011001???????????000?????0100111"), + "VSUXSEG5EI16_V" -> BitPat("b100001???????????101?????0100111"), + "VSUXSEG5EI32_V" -> BitPat("b100001???????????110?????0100111"), + "VSUXSEG5EI64_V" -> BitPat("b100001???????????111?????0100111"), + "VSUXSEG5EI8_V" -> BitPat("b100001???????????000?????0100111"), + "VSUXSEG6EI16_V" -> BitPat("b101001???????????101?????0100111"), + "VSUXSEG6EI32_V" -> BitPat("b101001???????????110?????0100111"), + "VSUXSEG6EI64_V" -> BitPat("b101001???????????111?????0100111"), + "VSUXSEG6EI8_V" -> BitPat("b101001???????????000?????0100111"), + "VSUXSEG7EI16_V" -> BitPat("b110001???????????101?????0100111"), + "VSUXSEG7EI32_V" -> BitPat("b110001???????????110?????0100111"), + "VSUXSEG7EI64_V" -> BitPat("b110001???????????111?????0100111"), + "VSUXSEG7EI8_V" -> BitPat("b110001???????????000?????0100111"), + "VSUXSEG8EI16_V" -> BitPat("b111001???????????101?????0100111"), + "VSUXSEG8EI32_V" -> BitPat("b111001???????????110?????0100111"), + "VSUXSEG8EI64_V" -> BitPat("b111001???????????111?????0100111"), + "VSUXSEG8EI8_V" -> BitPat("b111001???????????000?????0100111"), + "VWADD_VV" -> BitPat("b110001???????????010?????1010111"), + "VWADD_VX" -> BitPat("b110001???????????110?????1010111"), + "VWADD_WV" -> BitPat("b110101???????????010?????1010111"), + "VWADD_WX" -> BitPat("b110101???????????110?????1010111"), + "VWADDU_VV" -> BitPat("b110000???????????010?????1010111"), + "VWADDU_VX" -> BitPat("b110000???????????110?????1010111"), + "VWADDU_WV" -> BitPat("b110100???????????010?????1010111"), + "VWADDU_WX" -> BitPat("b110100???????????110?????1010111"), + "VWMACC_VV" -> BitPat("b111101???????????010?????1010111"), + "VWMACC_VX" -> BitPat("b111101???????????110?????1010111"), + "VWMACCSU_VV" -> BitPat("b111111???????????010?????1010111"), + "VWMACCSU_VX" -> BitPat("b111111???????????110?????1010111"), + "VWMACCU_VV" -> BitPat("b111100???????????010?????1010111"), + "VWMACCU_VX" -> BitPat("b111100???????????110?????1010111"), + "VWMACCUS_VX" -> BitPat("b111110???????????110?????1010111"), + "VWMUL_VV" -> BitPat("b111011???????????010?????1010111"), + "VWMUL_VX" -> BitPat("b111011???????????110?????1010111"), + "VWMULSU_VV" -> BitPat("b111010???????????010?????1010111"), + "VWMULSU_VX" -> BitPat("b111010???????????110?????1010111"), + "VWMULU_VV" -> BitPat("b111000???????????010?????1010111"), + "VWMULU_VX" -> BitPat("b111000???????????110?????1010111"), + "VWREDSUM_VS" -> BitPat("b110001???????????000?????1010111"), + "VWREDSUMU_VS" -> BitPat("b110000???????????000?????1010111"), + "VWSUB_VV" -> BitPat("b110011???????????010?????1010111"), + "VWSUB_VX" -> BitPat("b110011???????????110?????1010111"), + "VWSUB_WV" -> BitPat("b110111???????????010?????1010111"), + "VWSUB_WX" -> BitPat("b110111???????????110?????1010111"), + "VWSUBU_VV" -> BitPat("b110010???????????010?????1010111"), + "VWSUBU_VX" -> BitPat("b110010???????????110?????1010111"), + "VWSUBU_WV" -> BitPat("b110110???????????010?????1010111"), + "VWSUBU_WX" -> BitPat("b110110???????????110?????1010111"), + "VXOR_VI" -> BitPat("b001011???????????011?????1010111"), + "VXOR_VV" -> BitPat("b001011???????????000?????1010111"), + "VXOR_VX" -> BitPat("b001011???????????100?????1010111"), + "VZEXT_VF2" -> BitPat("b010010??????00110010?????1010111"), + "VZEXT_VF4" -> BitPat("b010010??????00100010?????1010111"), + "VZEXT_VF8" -> BitPat("b010010??????00010010?????1010111"), + ) + val ZICSRType = Map( + "CSRRC" -> BitPat("b?????????????????011?????1110011"), + "CSRRCI" -> BitPat("b?????????????????111?????1110011"), + "CSRRS" -> BitPat("b?????????????????010?????1110011"), + "CSRRSI" -> BitPat("b?????????????????110?????1110011"), + "CSRRW" -> BitPat("b?????????????????001?????1110011"), + "CSRRWI" -> BitPat("b?????????????????101?????1110011"), + ) + val F64Type = Map( + "FCVT_L_S" -> BitPat("b110000000010?????????????1010011"), + "FCVT_LU_S" -> BitPat("b110000000011?????????????1010011"), + "FCVT_S_L" -> BitPat("b110100000010?????????????1010011"), + "FCVT_S_LU" -> BitPat("b110100000011?????????????1010011"), + ) + val ZBKXType = Map( + "XPERM4" -> BitPat("b0010100??????????010?????0110011"), + "XPERM8" -> BitPat("b0010100??????????100?????0110011"), + ) + val ZABHAType = Map( + "AMOADD_B" -> BitPat("b00000????????????000?????0101111"), + "AMOADD_H" -> BitPat("b00000????????????001?????0101111"), + "AMOAND_B" -> BitPat("b01100????????????000?????0101111"), + "AMOAND_H" -> BitPat("b01100????????????001?????0101111"), + "AMOCAS_B" -> BitPat("b00101????????????000?????0101111"), + "AMOCAS_H" -> BitPat("b00101????????????001?????0101111"), + "AMOMAX_B" -> BitPat("b10100????????????000?????0101111"), + "AMOMAX_H" -> BitPat("b10100????????????001?????0101111"), + "AMOMAXU_B" -> BitPat("b11100????????????000?????0101111"), + "AMOMAXU_H" -> BitPat("b11100????????????001?????0101111"), + "AMOMIN_B" -> BitPat("b10000????????????000?????0101111"), + "AMOMIN_H" -> BitPat("b10000????????????001?????0101111"), + "AMOMINU_B" -> BitPat("b11000????????????000?????0101111"), + "AMOMINU_H" -> BitPat("b11000????????????001?????0101111"), + "AMOOR_B" -> BitPat("b01000????????????000?????0101111"), + "AMOOR_H" -> BitPat("b01000????????????001?????0101111"), + "AMOSWAP_B" -> BitPat("b00001????????????000?????0101111"), + "AMOSWAP_H" -> BitPat("b00001????????????001?????0101111"), + "AMOXOR_B" -> BitPat("b00100????????????000?????0101111"), + "AMOXOR_H" -> BitPat("b00100????????????001?????0101111"), + ) + val C32Type = Map( + "C_JAL" -> BitPat("b????????????????001???????????01"), + ) + val ZCB64Type = Map( + "C_ZEXT_W" -> BitPat("b????????????????100111???1110001"), + ) + val IType = Map( + "ADD" -> BitPat("b0000000??????????000?????0110011"), + "ADDI" -> BitPat("b?????????????????000?????0010011"), + "AND" -> BitPat("b0000000??????????111?????0110011"), + "ANDI" -> BitPat("b?????????????????111?????0010011"), + "AUIPC" -> BitPat("b?????????????????????????0010111"), + "BEQ" -> BitPat("b?????????????????000?????1100011"), + "BGE" -> BitPat("b?????????????????101?????1100011"), + "BGEU" -> BitPat("b?????????????????111?????1100011"), + "BLT" -> BitPat("b?????????????????100?????1100011"), + "BLTU" -> BitPat("b?????????????????110?????1100011"), + "BNE" -> BitPat("b?????????????????001?????1100011"), + "EBREAK" -> BitPat("b00000000000100000000000001110011"), + "ECALL" -> BitPat("b00000000000000000000000001110011"), + "FENCE" -> BitPat("b?????????????????000?????0001111"), + "JAL" -> BitPat("b?????????????????????????1101111"), + "JALR" -> BitPat("b?????????????????000?????1100111"), + "LB" -> BitPat("b?????????????????000?????0000011"), + "LBU" -> BitPat("b?????????????????100?????0000011"), + "LH" -> BitPat("b?????????????????001?????0000011"), + "LHU" -> BitPat("b?????????????????101?????0000011"), + "LUI" -> BitPat("b?????????????????????????0110111"), + "LW" -> BitPat("b?????????????????010?????0000011"), + "OR" -> BitPat("b0000000??????????110?????0110011"), + "ORI" -> BitPat("b?????????????????110?????0010011"), + "SB" -> BitPat("b?????????????????000?????0100011"), + "SH" -> BitPat("b?????????????????001?????0100011"), + "SLL" -> BitPat("b0000000??????????001?????0110011"), + "SLT" -> BitPat("b0000000??????????010?????0110011"), + "SLTI" -> BitPat("b?????????????????010?????0010011"), + "SLTIU" -> BitPat("b?????????????????011?????0010011"), + "SLTU" -> BitPat("b0000000??????????011?????0110011"), + "SRA" -> BitPat("b0100000??????????101?????0110011"), + "SRL" -> BitPat("b0000000??????????101?????0110011"), + "SUB" -> BitPat("b0100000??????????000?????0110011"), + "SW" -> BitPat("b?????????????????010?????0100011"), + "XOR" -> BitPat("b0000000??????????100?????0110011"), + "XORI" -> BitPat("b?????????????????100?????0010011"), + ) + val CType = Map( + "C_ADD" -> BitPat("b????????????????1001??????????10"), + "C_ADDI" -> BitPat("b????????????????000???????????01"), + "C_ADDI16SP" -> BitPat("b????????????????011?00010?????01"), + "C_ADDI4SPN" -> BitPat("b????????????????000???????????00"), + "C_AND" -> BitPat("b????????????????100011???11???01"), + "C_ANDI" -> BitPat("b????????????????100?10????????01"), + "C_BEQZ" -> BitPat("b????????????????110???????????01"), + "C_BNEZ" -> BitPat("b????????????????111???????????01"), + "C_EBREAK" -> BitPat("b????????????????1001000000000010"), + "C_FLD" -> BitPat("b????????????????001???????????00"), + "C_FLDSP" -> BitPat("b????????????????001???????????10"), + "C_FLW" -> BitPat("b????????????????011???????????00"), + "C_FLWSP" -> BitPat("b????????????????011???????????10"), + "C_FSD" -> BitPat("b????????????????101???????????00"), + "C_FSDSP" -> BitPat("b????????????????101???????????10"), + "C_FSW" -> BitPat("b????????????????111???????????00"), + "C_FSWSP" -> BitPat("b????????????????111???????????10"), + "C_J" -> BitPat("b????????????????101???????????01"), + "C_JALR" -> BitPat("b????????????????1001?????0000010"), + "C_JR" -> BitPat("b????????????????1000?????0000010"), + "C_LI" -> BitPat("b????????????????010???????????01"), + "C_LUI" -> BitPat("b????????????????011???????????01"), + "C_LW" -> BitPat("b????????????????010???????????00"), + "C_LWSP" -> BitPat("b????????????????010???????????10"), + "C_MV" -> BitPat("b????????????????1000??????????10"), + "C_NOP" -> BitPat("b????????????????000?00000?????01"), + "C_OR" -> BitPat("b????????????????100011???10???01"), + "C_SUB" -> BitPat("b????????????????100011???00???01"), + "C_SW" -> BitPat("b????????????????110???????????00"), + "C_SWSP" -> BitPat("b????????????????110???????????10"), + "C_XOR" -> BitPat("b????????????????100011???01???01"), + ) + val I64Type = Map( + "ADDIW" -> BitPat("b?????????????????000?????0011011"), + "ADDW" -> BitPat("b0000000??????????000?????0111011"), + "LD" -> BitPat("b?????????????????011?????0000011"), + "LWU" -> BitPat("b?????????????????110?????0000011"), + "SD" -> BitPat("b?????????????????011?????0100011"), + "SLLI" -> BitPat("b000000???????????001?????0010011"), + "SLLIW" -> BitPat("b0000000??????????001?????0011011"), + "SLLW" -> BitPat("b0000000??????????001?????0111011"), + "SRAI" -> BitPat("b010000???????????101?????0010011"), + "SRAIW" -> BitPat("b0100000??????????101?????0011011"), + "SRAW" -> BitPat("b0100000??????????101?????0111011"), + "SRLI" -> BitPat("b000000???????????101?????0010011"), + "SRLIW" -> BitPat("b0000000??????????101?????0011011"), + "SRLW" -> BitPat("b0000000??????????101?????0111011"), + "SUBW" -> BitPat("b0100000??????????000?????0111011"), + ) + val C64Type = Map( + "C_ADDIW" -> BitPat("b????????????????001???????????01"), + "C_ADDW" -> BitPat("b????????????????100111???01???01"), + "C_LD" -> BitPat("b????????????????011???????????00"), + "C_LDSP" -> BitPat("b????????????????011???????????10"), + "C_SD" -> BitPat("b????????????????111???????????00"), + "C_SDSP" -> BitPat("b????????????????111???????????10"), + "C_SLLI" -> BitPat("b????????????????000???????????10"), + "C_SRAI" -> BitPat("b????????????????100?01????????01"), + "C_SRLI" -> BitPat("b????????????????100?00????????01"), + "C_SUBW" -> BitPat("b????????????????100111???00???01"), + ) + val ZFHType = Map( + "FADD_H" -> BitPat("b0000010??????????????????1010011"), + "FCLASS_H" -> BitPat("b111001000000?????001?????1010011"), + "FCVT_H_S" -> BitPat("b010001000000?????????????1010011"), + "FCVT_H_W" -> BitPat("b110101000000?????????????1010011"), + "FCVT_H_WU" -> BitPat("b110101000001?????????????1010011"), + "FCVT_S_H" -> BitPat("b010000000010?????????????1010011"), + "FCVT_W_H" -> BitPat("b110001000000?????????????1010011"), + "FCVT_WU_H" -> BitPat("b110001000001?????????????1010011"), + "FDIV_H" -> BitPat("b0001110??????????????????1010011"), + "FEQ_H" -> BitPat("b1010010??????????010?????1010011"), + "FLE_H" -> BitPat("b1010010??????????000?????1010011"), + "FLH" -> BitPat("b?????????????????001?????0000111"), + "FLT_H" -> BitPat("b1010010??????????001?????1010011"), + "FMADD_H" -> BitPat("b?????10??????????????????1000011"), + "FMAX_H" -> BitPat("b0010110??????????001?????1010011"), + "FMIN_H" -> BitPat("b0010110??????????000?????1010011"), + "FMSUB_H" -> BitPat("b?????10??????????????????1000111"), + "FMUL_H" -> BitPat("b0001010??????????????????1010011"), + "FMV_X_H" -> BitPat("b111001000000?????000?????1010011"), + "FNMADD_H" -> BitPat("b?????10??????????????????1001111"), + "FNMSUB_H" -> BitPat("b?????10??????????????????1001011"), + "FSGNJ_H" -> BitPat("b0010010??????????000?????1010011"), + "FSGNJN_H" -> BitPat("b0010010??????????001?????1010011"), + "FSGNJX_H" -> BitPat("b0010010??????????010?????1010011"), + "FSH" -> BitPat("b?????????????????001?????0100111"), + "FSQRT_H" -> BitPat("b010111000000?????????????1010011"), + "FSUB_H" -> BitPat("b0000110??????????????????1010011"), + ) + val QType = Map( + "FADD_Q" -> BitPat("b0000011??????????????????1010011"), + "FCLASS_Q" -> BitPat("b111001100000?????001?????1010011"), + "FCVT_D_Q" -> BitPat("b010000100011?????????????1010011"), + "FCVT_H_Q" -> BitPat("b010001000011?????????????1010011"), + "FCVT_Q_D" -> BitPat("b010001100001?????????????1010011"), + "FCVT_Q_H" -> BitPat("b010001100010?????????????1010011"), + "FCVT_Q_S" -> BitPat("b010001100000?????????????1010011"), + "FCVT_Q_W" -> BitPat("b110101100000?????????????1010011"), + "FCVT_Q_WU" -> BitPat("b110101100001?????????????1010011"), + "FCVT_S_Q" -> BitPat("b010000000011?????????????1010011"), + "FCVT_W_Q" -> BitPat("b110001100000?????????????1010011"), + "FCVT_WU_Q" -> BitPat("b110001100001?????????????1010011"), + "FDIV_Q" -> BitPat("b0001111??????????????????1010011"), + "FEQ_Q" -> BitPat("b1010011??????????010?????1010011"), + "FLE_Q" -> BitPat("b1010011??????????000?????1010011"), + "FLEQ_Q" -> BitPat("b1010011??????????100?????1010011"), + "FLI_Q" -> BitPat("b111101100001?????000?????1010011"), + "FLQ" -> BitPat("b?????????????????100?????0000111"), + "FLT_Q" -> BitPat("b1010011??????????001?????1010011"), + "FLTQ_Q" -> BitPat("b1010011??????????101?????1010011"), + "FMADD_Q" -> BitPat("b?????11??????????????????1000011"), + "FMAX_Q" -> BitPat("b0010111??????????001?????1010011"), + "FMAXM_Q" -> BitPat("b0010111??????????011?????1010011"), + "FMIN_Q" -> BitPat("b0010111??????????000?????1010011"), + "FMINM_Q" -> BitPat("b0010111??????????010?????1010011"), + "FMSUB_Q" -> BitPat("b?????11??????????????????1000111"), + "FMUL_Q" -> BitPat("b0001011??????????????????1010011"), + "FNMADD_Q" -> BitPat("b?????11??????????????????1001111"), + "FNMSUB_Q" -> BitPat("b?????11??????????????????1001011"), + "FROUND_Q" -> BitPat("b010001100100?????????????1010011"), + "FROUNDNX_Q" -> BitPat("b010001100101?????????????1010011"), + "FSGNJ_Q" -> BitPat("b0010011??????????000?????1010011"), + "FSGNJN_Q" -> BitPat("b0010011??????????001?????1010011"), + "FSGNJX_Q" -> BitPat("b0010011??????????010?????1010011"), + "FSQ" -> BitPat("b?????????????????100?????0100111"), + "FSQRT_Q" -> BitPat("b010111100000?????????????1010011"), + "FSUB_Q" -> BitPat("b0000111??????????????????1010011"), + ) + val ZACAS64Type = Map( + "AMOCAS_Q" -> BitPat("b00101????????????100?????0101111"), + ) + val ZFBFMINType = Map( + "FCVT_BF16_S" -> BitPat("b010001001000?????????????1010011"), + "FCVT_S_BF16" -> BitPat("b010000000110?????????????1010011"), + ) + val Q64Type = Map( + "FCVT_L_Q" -> BitPat("b110001100010?????????????1010011"), + "FCVT_LU_Q" -> BitPat("b110001100011?????????????1010011"), + "FCVT_Q_L" -> BitPat("b110101100010?????????????1010011"), + "FCVT_Q_LU" -> BitPat("b110101100011?????????????1010011"), + "FMVH_X_Q" -> BitPat("b111001100001?????000?????1010011"), + "FMVP_Q_X" -> BitPat("b1011011??????????000?????1010011"), + ) + val ZBKB64Type = Map( + "PACKW" -> BitPat("b0000100??????????100?????0111011"), + ) + val ZKSType = Map( + "SM3P0" -> BitPat("b000100001000?????001?????0010011"), + "SM3P1" -> BitPat("b000100001001?????001?????0010011"), + "SM4ED" -> BitPat("b??11000??????????000?????0110011"), + "SM4KS" -> BitPat("b??11010??????????000?????0110011"), + ) + val ZBKB32Type = Map( + "UNZIP" -> BitPat("b000010001111?????101?????0010011"), + "ZIP" -> BitPat("b000010001111?????001?????0010011"), + ) + val M64Type = Map( + "DIVUW" -> BitPat("b0000001??????????101?????0111011"), + "DIVW" -> BitPat("b0000001??????????100?????0111011"), + "MULW" -> BitPat("b0000001??????????000?????0111011"), + "REMUW" -> BitPat("b0000001??????????111?????0111011"), + "REMW" -> BitPat("b0000001??????????110?????0111011"), + ) + val ZBKBType = Map( + "BREV8" -> BitPat("b011010000111?????101?????0010011"), + "PACK" -> BitPat("b0000100??????????100?????0110011"), + "PACKH" -> BitPat("b0000100??????????111?????0110011"), + ) + +} +object Causes { + val misaligned_fetch = 0x0 + val fetch_access = 0x1 + val illegal_instruction = 0x2 + val breakpoint = 0x3 + val misaligned_load = 0x4 + val load_access = 0x5 + val misaligned_store = 0x6 + val store_access = 0x7 + val user_ecall = 0x8 + val supervisor_ecall = 0x9 + val virtual_supervisor_ecall = 0xa + val machine_ecall = 0xb + val fetch_page_fault = 0xc + val load_page_fault = 0xd + val store_page_fault = 0xf + val double_trap = 0x10 + val software_check_fault = 0x12 + val hardware_error_fault = 0x13 + val fetch_guest_page_fault = 0x14 + val load_guest_page_fault = 0x15 + val virtual_instruction = 0x16 + val store_guest_page_fault = 0x17 + val all = { + val res = collection.mutable.ArrayBuffer[Int]() + res += misaligned_fetch + res += fetch_access + res += illegal_instruction + res += breakpoint + res += misaligned_load + res += load_access + res += misaligned_store + res += store_access + res += user_ecall + res += supervisor_ecall + res += virtual_supervisor_ecall + res += machine_ecall + res += fetch_page_fault + res += load_page_fault + res += store_page_fault + res += double_trap + res += software_check_fault + res += hardware_error_fault + res += fetch_guest_page_fault + res += load_guest_page_fault + res += virtual_instruction + res += store_guest_page_fault + res.toArray + } +} +object CSRs { + val fflags = 0x1 + val frm = 0x2 + val fcsr = 0x3 + val vstart = 0x8 + val vxsat = 0x9 + val vxrm = 0xa + val vcsr = 0xf + val ssp = 0x11 + val seed = 0x15 + val jvt = 0x17 + val cycle = 0xc00 + val time = 0xc01 + val instret = 0xc02 + val hpmcounter3 = 0xc03 + val hpmcounter4 = 0xc04 + val hpmcounter5 = 0xc05 + val hpmcounter6 = 0xc06 + val hpmcounter7 = 0xc07 + val hpmcounter8 = 0xc08 + val hpmcounter9 = 0xc09 + val hpmcounter10 = 0xc0a + val hpmcounter11 = 0xc0b + val hpmcounter12 = 0xc0c + val hpmcounter13 = 0xc0d + val hpmcounter14 = 0xc0e + val hpmcounter15 = 0xc0f + val hpmcounter16 = 0xc10 + val hpmcounter17 = 0xc11 + val hpmcounter18 = 0xc12 + val hpmcounter19 = 0xc13 + val hpmcounter20 = 0xc14 + val hpmcounter21 = 0xc15 + val hpmcounter22 = 0xc16 + val hpmcounter23 = 0xc17 + val hpmcounter24 = 0xc18 + val hpmcounter25 = 0xc19 + val hpmcounter26 = 0xc1a + val hpmcounter27 = 0xc1b + val hpmcounter28 = 0xc1c + val hpmcounter29 = 0xc1d + val hpmcounter30 = 0xc1e + val hpmcounter31 = 0xc1f + val vl = 0xc20 + val vtype = 0xc21 + val vlenb = 0xc22 + val sstatus = 0x100 + val sedeleg = 0x102 + val sideleg = 0x103 + val sie = 0x104 + val stvec = 0x105 + val scounteren = 0x106 + val senvcfg = 0x10a + val sstateen0 = 0x10c + val sstateen1 = 0x10d + val sstateen2 = 0x10e + val sstateen3 = 0x10f + val scountinhibit = 0x120 + val sscratch = 0x140 + val sepc = 0x141 + val scause = 0x142 + val stval = 0x143 + val sip = 0x144 + val stimecmp = 0x14d + val sctrctl = 0x14e + val sctrstatus = 0x14f + val siselect = 0x150 + val sireg = 0x151 + val sireg2 = 0x152 + val sireg3 = 0x153 + val sireg4 = 0x155 + val sireg5 = 0x156 + val sireg6 = 0x157 + val stopei = 0x15c + val sctrdepth = 0x15f + val satp = 0x180 + val srmcfg = 0x181 + val scontext = 0x5a8 + val vsstatus = 0x200 + val vsie = 0x204 + val vstvec = 0x205 + val vsscratch = 0x240 + val vsepc = 0x241 + val vscause = 0x242 + val vstval = 0x243 + val vsip = 0x244 + val vstimecmp = 0x24d + val vsctrctl = 0x24e + val vsiselect = 0x250 + val vsireg = 0x251 + val vsireg2 = 0x252 + val vsireg3 = 0x253 + val vsireg4 = 0x255 + val vsireg5 = 0x256 + val vsireg6 = 0x257 + val vstopei = 0x25c + val vsatp = 0x280 + val hstatus = 0x600 + val hedeleg = 0x602 + val hideleg = 0x603 + val hie = 0x604 + val htimedelta = 0x605 + val hcounteren = 0x606 + val hgeie = 0x607 + val hvien = 0x608 + val hvictl = 0x609 + val henvcfg = 0x60a + val hstateen0 = 0x60c + val hstateen1 = 0x60d + val hstateen2 = 0x60e + val hstateen3 = 0x60f + val htval = 0x643 + val hip = 0x644 + val hvip = 0x645 + val hviprio1 = 0x646 + val hviprio2 = 0x647 + val htinst = 0x64a + val hgatp = 0x680 + val hcontext = 0x6a8 + val hgeip = 0xe12 + val vstopi = 0xeb0 + val scountovf = 0xda0 + val stopi = 0xdb0 + val utvt = 0x7 + val unxti = 0x45 + val uintstatus = 0x46 + val uscratchcsw = 0x48 + val uscratchcswl = 0x49 + val stvt = 0x107 + val snxti = 0x145 + val sintstatus = 0x146 + val sscratchcsw = 0x148 + val sscratchcswl = 0x149 + val mtvt = 0x307 + val mnxti = 0x345 + val mintstatus = 0x346 + val mscratchcsw = 0x348 + val mscratchcswl = 0x349 + val mstatus = 0x300 + val misa = 0x301 + val medeleg = 0x302 + val mideleg = 0x303 + val mie = 0x304 + val mtvec = 0x305 + val mcounteren = 0x306 + val mvien = 0x308 + val mvip = 0x309 + val menvcfg = 0x30a + val mstateen0 = 0x30c + val mstateen1 = 0x30d + val mstateen2 = 0x30e + val mstateen3 = 0x30f + val mcountinhibit = 0x320 + val mscratch = 0x340 + val mepc = 0x341 + val mcause = 0x342 + val mtval = 0x343 + val mip = 0x344 + val mtinst = 0x34a + val mtval2 = 0x34b + val mctrctl = 0x34e + val miselect = 0x350 + val mireg = 0x351 + val mireg2 = 0x352 + val mireg3 = 0x353 + val mireg4 = 0x355 + val mireg5 = 0x356 + val mireg6 = 0x357 + val mtopei = 0x35c + val pmpcfg0 = 0x3a0 + val pmpcfg1 = 0x3a1 + val pmpcfg2 = 0x3a2 + val pmpcfg3 = 0x3a3 + val pmpcfg4 = 0x3a4 + val pmpcfg5 = 0x3a5 + val pmpcfg6 = 0x3a6 + val pmpcfg7 = 0x3a7 + val pmpcfg8 = 0x3a8 + val pmpcfg9 = 0x3a9 + val pmpcfg10 = 0x3aa + val pmpcfg11 = 0x3ab + val pmpcfg12 = 0x3ac + val pmpcfg13 = 0x3ad + val pmpcfg14 = 0x3ae + val pmpcfg15 = 0x3af + val pmpaddr0 = 0x3b0 + val pmpaddr1 = 0x3b1 + val pmpaddr2 = 0x3b2 + val pmpaddr3 = 0x3b3 + val pmpaddr4 = 0x3b4 + val pmpaddr5 = 0x3b5 + val pmpaddr6 = 0x3b6 + val pmpaddr7 = 0x3b7 + val pmpaddr8 = 0x3b8 + val pmpaddr9 = 0x3b9 + val pmpaddr10 = 0x3ba + val pmpaddr11 = 0x3bb + val pmpaddr12 = 0x3bc + val pmpaddr13 = 0x3bd + val pmpaddr14 = 0x3be + val pmpaddr15 = 0x3bf + val pmpaddr16 = 0x3c0 + val pmpaddr17 = 0x3c1 + val pmpaddr18 = 0x3c2 + val pmpaddr19 = 0x3c3 + val pmpaddr20 = 0x3c4 + val pmpaddr21 = 0x3c5 + val pmpaddr22 = 0x3c6 + val pmpaddr23 = 0x3c7 + val pmpaddr24 = 0x3c8 + val pmpaddr25 = 0x3c9 + val pmpaddr26 = 0x3ca + val pmpaddr27 = 0x3cb + val pmpaddr28 = 0x3cc + val pmpaddr29 = 0x3cd + val pmpaddr30 = 0x3ce + val pmpaddr31 = 0x3cf + val pmpaddr32 = 0x3d0 + val pmpaddr33 = 0x3d1 + val pmpaddr34 = 0x3d2 + val pmpaddr35 = 0x3d3 + val pmpaddr36 = 0x3d4 + val pmpaddr37 = 0x3d5 + val pmpaddr38 = 0x3d6 + val pmpaddr39 = 0x3d7 + val pmpaddr40 = 0x3d8 + val pmpaddr41 = 0x3d9 + val pmpaddr42 = 0x3da + val pmpaddr43 = 0x3db + val pmpaddr44 = 0x3dc + val pmpaddr45 = 0x3dd + val pmpaddr46 = 0x3de + val pmpaddr47 = 0x3df + val pmpaddr48 = 0x3e0 + val pmpaddr49 = 0x3e1 + val pmpaddr50 = 0x3e2 + val pmpaddr51 = 0x3e3 + val pmpaddr52 = 0x3e4 + val pmpaddr53 = 0x3e5 + val pmpaddr54 = 0x3e6 + val pmpaddr55 = 0x3e7 + val pmpaddr56 = 0x3e8 + val pmpaddr57 = 0x3e9 + val pmpaddr58 = 0x3ea + val pmpaddr59 = 0x3eb + val pmpaddr60 = 0x3ec + val pmpaddr61 = 0x3ed + val pmpaddr62 = 0x3ee + val pmpaddr63 = 0x3ef + val mseccfg = 0x747 + val tselect = 0x7a0 + val tdata1 = 0x7a1 + val tdata2 = 0x7a2 + val tdata3 = 0x7a3 + val tinfo = 0x7a4 + val tcontrol = 0x7a5 + val mcontext = 0x7a8 + val mscontext = 0x7aa + val dcsr = 0x7b0 + val dpc = 0x7b1 + val dscratch0 = 0x7b2 + val dscratch1 = 0x7b3 + val mcycle = 0xb00 + val minstret = 0xb02 + val mhpmcounter3 = 0xb03 + val mhpmcounter4 = 0xb04 + val mhpmcounter5 = 0xb05 + val mhpmcounter6 = 0xb06 + val mhpmcounter7 = 0xb07 + val mhpmcounter8 = 0xb08 + val mhpmcounter9 = 0xb09 + val mhpmcounter10 = 0xb0a + val mhpmcounter11 = 0xb0b + val mhpmcounter12 = 0xb0c + val mhpmcounter13 = 0xb0d + val mhpmcounter14 = 0xb0e + val mhpmcounter15 = 0xb0f + val mhpmcounter16 = 0xb10 + val mhpmcounter17 = 0xb11 + val mhpmcounter18 = 0xb12 + val mhpmcounter19 = 0xb13 + val mhpmcounter20 = 0xb14 + val mhpmcounter21 = 0xb15 + val mhpmcounter22 = 0xb16 + val mhpmcounter23 = 0xb17 + val mhpmcounter24 = 0xb18 + val mhpmcounter25 = 0xb19 + val mhpmcounter26 = 0xb1a + val mhpmcounter27 = 0xb1b + val mhpmcounter28 = 0xb1c + val mhpmcounter29 = 0xb1d + val mhpmcounter30 = 0xb1e + val mhpmcounter31 = 0xb1f + val mcyclecfg = 0x321 + val minstretcfg = 0x322 + val mhpmevent3 = 0x323 + val mhpmevent4 = 0x324 + val mhpmevent5 = 0x325 + val mhpmevent6 = 0x326 + val mhpmevent7 = 0x327 + val mhpmevent8 = 0x328 + val mhpmevent9 = 0x329 + val mhpmevent10 = 0x32a + val mhpmevent11 = 0x32b + val mhpmevent12 = 0x32c + val mhpmevent13 = 0x32d + val mhpmevent14 = 0x32e + val mhpmevent15 = 0x32f + val mhpmevent16 = 0x330 + val mhpmevent17 = 0x331 + val mhpmevent18 = 0x332 + val mhpmevent19 = 0x333 + val mhpmevent20 = 0x334 + val mhpmevent21 = 0x335 + val mhpmevent22 = 0x336 + val mhpmevent23 = 0x337 + val mhpmevent24 = 0x338 + val mhpmevent25 = 0x339 + val mhpmevent26 = 0x33a + val mhpmevent27 = 0x33b + val mhpmevent28 = 0x33c + val mhpmevent29 = 0x33d + val mhpmevent30 = 0x33e + val mhpmevent31 = 0x33f + val mvendorid = 0xf11 + val marchid = 0xf12 + val mimpid = 0xf13 + val mhartid = 0xf14 + val mconfigptr = 0xf15 + val mtopi = 0xfb0 + val sieh = 0x114 + val siph = 0x154 + val stimecmph = 0x15d + val vsieh = 0x214 + val vsiph = 0x254 + val vstimecmph = 0x25d + val hedelegh = 0x612 + val htimedeltah = 0x615 + val hidelegh = 0x613 + val hvienh = 0x618 + val henvcfgh = 0x61a + val hviph = 0x655 + val hviprio1h = 0x656 + val hviprio2h = 0x657 + val hstateen0h = 0x61c + val hstateen1h = 0x61d + val hstateen2h = 0x61e + val hstateen3h = 0x61f + val cycleh = 0xc80 + val timeh = 0xc81 + val instreth = 0xc82 + val hpmcounter3h = 0xc83 + val hpmcounter4h = 0xc84 + val hpmcounter5h = 0xc85 + val hpmcounter6h = 0xc86 + val hpmcounter7h = 0xc87 + val hpmcounter8h = 0xc88 + val hpmcounter9h = 0xc89 + val hpmcounter10h = 0xc8a + val hpmcounter11h = 0xc8b + val hpmcounter12h = 0xc8c + val hpmcounter13h = 0xc8d + val hpmcounter14h = 0xc8e + val hpmcounter15h = 0xc8f + val hpmcounter16h = 0xc90 + val hpmcounter17h = 0xc91 + val hpmcounter18h = 0xc92 + val hpmcounter19h = 0xc93 + val hpmcounter20h = 0xc94 + val hpmcounter21h = 0xc95 + val hpmcounter22h = 0xc96 + val hpmcounter23h = 0xc97 + val hpmcounter24h = 0xc98 + val hpmcounter25h = 0xc99 + val hpmcounter26h = 0xc9a + val hpmcounter27h = 0xc9b + val hpmcounter28h = 0xc9c + val hpmcounter29h = 0xc9d + val hpmcounter30h = 0xc9e + val hpmcounter31h = 0xc9f + val mstatush = 0x310 + val midelegh = 0x313 + val mieh = 0x314 + val mvienh = 0x318 + val mviph = 0x319 + val menvcfgh = 0x31a + val mstateen0h = 0x31c + val mstateen1h = 0x31d + val mstateen2h = 0x31e + val mstateen3h = 0x31f + val miph = 0x354 + val mcyclecfgh = 0x721 + val minstretcfgh = 0x722 + val mhpmevent3h = 0x723 + val mhpmevent4h = 0x724 + val mhpmevent5h = 0x725 + val mhpmevent6h = 0x726 + val mhpmevent7h = 0x727 + val mhpmevent8h = 0x728 + val mhpmevent9h = 0x729 + val mhpmevent10h = 0x72a + val mhpmevent11h = 0x72b + val mhpmevent12h = 0x72c + val mhpmevent13h = 0x72d + val mhpmevent14h = 0x72e + val mhpmevent15h = 0x72f + val mhpmevent16h = 0x730 + val mhpmevent17h = 0x731 + val mhpmevent18h = 0x732 + val mhpmevent19h = 0x733 + val mhpmevent20h = 0x734 + val mhpmevent21h = 0x735 + val mhpmevent22h = 0x736 + val mhpmevent23h = 0x737 + val mhpmevent24h = 0x738 + val mhpmevent25h = 0x739 + val mhpmevent26h = 0x73a + val mhpmevent27h = 0x73b + val mhpmevent28h = 0x73c + val mhpmevent29h = 0x73d + val mhpmevent30h = 0x73e + val mhpmevent31h = 0x73f + val mnscratch = 0x740 + val mnepc = 0x741 + val mncause = 0x742 + val mnstatus = 0x744 + val mseccfgh = 0x757 + val mcycleh = 0xb80 + val minstreth = 0xb82 + val mhpmcounter3h = 0xb83 + val mhpmcounter4h = 0xb84 + val mhpmcounter5h = 0xb85 + val mhpmcounter6h = 0xb86 + val mhpmcounter7h = 0xb87 + val mhpmcounter8h = 0xb88 + val mhpmcounter9h = 0xb89 + val mhpmcounter10h = 0xb8a + val mhpmcounter11h = 0xb8b + val mhpmcounter12h = 0xb8c + val mhpmcounter13h = 0xb8d + val mhpmcounter14h = 0xb8e + val mhpmcounter15h = 0xb8f + val mhpmcounter16h = 0xb90 + val mhpmcounter17h = 0xb91 + val mhpmcounter18h = 0xb92 + val mhpmcounter19h = 0xb93 + val mhpmcounter20h = 0xb94 + val mhpmcounter21h = 0xb95 + val mhpmcounter22h = 0xb96 + val mhpmcounter23h = 0xb97 + val mhpmcounter24h = 0xb98 + val mhpmcounter25h = 0xb99 + val mhpmcounter26h = 0xb9a + val mhpmcounter27h = 0xb9b + val mhpmcounter28h = 0xb9c + val mhpmcounter29h = 0xb9d + val mhpmcounter30h = 0xb9e + val mhpmcounter31h = 0xb9f + val all = { + val res = collection.mutable.ArrayBuffer[Int]() + res += fflags + res += frm + res += fcsr + res += vstart + res += vxsat + res += vxrm + res += vcsr + res += ssp + res += seed + res += jvt + res += cycle + res += time + res += instret + res += hpmcounter3 + res += hpmcounter4 + res += hpmcounter5 + res += hpmcounter6 + res += hpmcounter7 + res += hpmcounter8 + res += hpmcounter9 + res += hpmcounter10 + res += hpmcounter11 + res += hpmcounter12 + res += hpmcounter13 + res += hpmcounter14 + res += hpmcounter15 + res += hpmcounter16 + res += hpmcounter17 + res += hpmcounter18 + res += hpmcounter19 + res += hpmcounter20 + res += hpmcounter21 + res += hpmcounter22 + res += hpmcounter23 + res += hpmcounter24 + res += hpmcounter25 + res += hpmcounter26 + res += hpmcounter27 + res += hpmcounter28 + res += hpmcounter29 + res += hpmcounter30 + res += hpmcounter31 + res += vl + res += vtype + res += vlenb + res += sstatus + res += sedeleg + res += sideleg + res += sie + res += stvec + res += scounteren + res += senvcfg + res += sstateen0 + res += sstateen1 + res += sstateen2 + res += sstateen3 + res += scountinhibit + res += sscratch + res += sepc + res += scause + res += stval + res += sip + res += stimecmp + res += sctrctl + res += sctrstatus + res += siselect + res += sireg + res += sireg2 + res += sireg3 + res += sireg4 + res += sireg5 + res += sireg6 + res += stopei + res += sctrdepth + res += satp + res += srmcfg + res += scontext + res += vsstatus + res += vsie + res += vstvec + res += vsscratch + res += vsepc + res += vscause + res += vstval + res += vsip + res += vstimecmp + res += vsctrctl + res += vsiselect + res += vsireg + res += vsireg2 + res += vsireg3 + res += vsireg4 + res += vsireg5 + res += vsireg6 + res += vstopei + res += vsatp + res += hstatus + res += hedeleg + res += hideleg + res += hie + res += htimedelta + res += hcounteren + res += hgeie + res += hvien + res += hvictl + res += henvcfg + res += hstateen0 + res += hstateen1 + res += hstateen2 + res += hstateen3 + res += htval + res += hip + res += hvip + res += hviprio1 + res += hviprio2 + res += htinst + res += hgatp + res += hcontext + res += hgeip + res += vstopi + res += scountovf + res += stopi + res += utvt + res += unxti + res += uintstatus + res += uscratchcsw + res += uscratchcswl + res += stvt + res += snxti + res += sintstatus + res += sscratchcsw + res += sscratchcswl + res += mtvt + res += mnxti + res += mintstatus + res += mscratchcsw + res += mscratchcswl + res += mstatus + res += misa + res += medeleg + res += mideleg + res += mie + res += mtvec + res += mcounteren + res += mvien + res += mvip + res += menvcfg + res += mstateen0 + res += mstateen1 + res += mstateen2 + res += mstateen3 + res += mcountinhibit + res += mscratch + res += mepc + res += mcause + res += mtval + res += mip + res += mtinst + res += mtval2 + res += mctrctl + res += miselect + res += mireg + res += mireg2 + res += mireg3 + res += mireg4 + res += mireg5 + res += mireg6 + res += mtopei + res += pmpcfg0 + res += pmpcfg1 + res += pmpcfg2 + res += pmpcfg3 + res += pmpcfg4 + res += pmpcfg5 + res += pmpcfg6 + res += pmpcfg7 + res += pmpcfg8 + res += pmpcfg9 + res += pmpcfg10 + res += pmpcfg11 + res += pmpcfg12 + res += pmpcfg13 + res += pmpcfg14 + res += pmpcfg15 + res += pmpaddr0 + res += pmpaddr1 + res += pmpaddr2 + res += pmpaddr3 + res += pmpaddr4 + res += pmpaddr5 + res += pmpaddr6 + res += pmpaddr7 + res += pmpaddr8 + res += pmpaddr9 + res += pmpaddr10 + res += pmpaddr11 + res += pmpaddr12 + res += pmpaddr13 + res += pmpaddr14 + res += pmpaddr15 + res += pmpaddr16 + res += pmpaddr17 + res += pmpaddr18 + res += pmpaddr19 + res += pmpaddr20 + res += pmpaddr21 + res += pmpaddr22 + res += pmpaddr23 + res += pmpaddr24 + res += pmpaddr25 + res += pmpaddr26 + res += pmpaddr27 + res += pmpaddr28 + res += pmpaddr29 + res += pmpaddr30 + res += pmpaddr31 + res += pmpaddr32 + res += pmpaddr33 + res += pmpaddr34 + res += pmpaddr35 + res += pmpaddr36 + res += pmpaddr37 + res += pmpaddr38 + res += pmpaddr39 + res += pmpaddr40 + res += pmpaddr41 + res += pmpaddr42 + res += pmpaddr43 + res += pmpaddr44 + res += pmpaddr45 + res += pmpaddr46 + res += pmpaddr47 + res += pmpaddr48 + res += pmpaddr49 + res += pmpaddr50 + res += pmpaddr51 + res += pmpaddr52 + res += pmpaddr53 + res += pmpaddr54 + res += pmpaddr55 + res += pmpaddr56 + res += pmpaddr57 + res += pmpaddr58 + res += pmpaddr59 + res += pmpaddr60 + res += pmpaddr61 + res += pmpaddr62 + res += pmpaddr63 + res += mseccfg + res += tselect + res += tdata1 + res += tdata2 + res += tdata3 + res += tinfo + res += tcontrol + res += mcontext + res += mscontext + res += dcsr + res += dpc + res += dscratch0 + res += dscratch1 + res += mcycle + res += minstret + res += mhpmcounter3 + res += mhpmcounter4 + res += mhpmcounter5 + res += mhpmcounter6 + res += mhpmcounter7 + res += mhpmcounter8 + res += mhpmcounter9 + res += mhpmcounter10 + res += mhpmcounter11 + res += mhpmcounter12 + res += mhpmcounter13 + res += mhpmcounter14 + res += mhpmcounter15 + res += mhpmcounter16 + res += mhpmcounter17 + res += mhpmcounter18 + res += mhpmcounter19 + res += mhpmcounter20 + res += mhpmcounter21 + res += mhpmcounter22 + res += mhpmcounter23 + res += mhpmcounter24 + res += mhpmcounter25 + res += mhpmcounter26 + res += mhpmcounter27 + res += mhpmcounter28 + res += mhpmcounter29 + res += mhpmcounter30 + res += mhpmcounter31 + res += mcyclecfg + res += minstretcfg + res += mhpmevent3 + res += mhpmevent4 + res += mhpmevent5 + res += mhpmevent6 + res += mhpmevent7 + res += mhpmevent8 + res += mhpmevent9 + res += mhpmevent10 + res += mhpmevent11 + res += mhpmevent12 + res += mhpmevent13 + res += mhpmevent14 + res += mhpmevent15 + res += mhpmevent16 + res += mhpmevent17 + res += mhpmevent18 + res += mhpmevent19 + res += mhpmevent20 + res += mhpmevent21 + res += mhpmevent22 + res += mhpmevent23 + res += mhpmevent24 + res += mhpmevent25 + res += mhpmevent26 + res += mhpmevent27 + res += mhpmevent28 + res += mhpmevent29 + res += mhpmevent30 + res += mhpmevent31 + res += mvendorid + res += marchid + res += mimpid + res += mhartid + res += mconfigptr + res += mtopi + res.toArray + } + val all32 = { + val res = collection.mutable.ArrayBuffer(all:_*) + res += sieh + res += siph + res += stimecmph + res += vsieh + res += vsiph + res += vstimecmph + res += hedelegh + res += htimedeltah + res += hidelegh + res += hvienh + res += henvcfgh + res += hviph + res += hviprio1h + res += hviprio2h + res += hstateen0h + res += hstateen1h + res += hstateen2h + res += hstateen3h + res += cycleh + res += timeh + res += instreth + res += hpmcounter3h + res += hpmcounter4h + res += hpmcounter5h + res += hpmcounter6h + res += hpmcounter7h + res += hpmcounter8h + res += hpmcounter9h + res += hpmcounter10h + res += hpmcounter11h + res += hpmcounter12h + res += hpmcounter13h + res += hpmcounter14h + res += hpmcounter15h + res += hpmcounter16h + res += hpmcounter17h + res += hpmcounter18h + res += hpmcounter19h + res += hpmcounter20h + res += hpmcounter21h + res += hpmcounter22h + res += hpmcounter23h + res += hpmcounter24h + res += hpmcounter25h + res += hpmcounter26h + res += hpmcounter27h + res += hpmcounter28h + res += hpmcounter29h + res += hpmcounter30h + res += hpmcounter31h + res += mstatush + res += midelegh + res += mieh + res += mvienh + res += mviph + res += menvcfgh + res += mstateen0h + res += mstateen1h + res += mstateen2h + res += mstateen3h + res += miph + res += mcyclecfgh + res += minstretcfgh + res += mhpmevent3h + res += mhpmevent4h + res += mhpmevent5h + res += mhpmevent6h + res += mhpmevent7h + res += mhpmevent8h + res += mhpmevent9h + res += mhpmevent10h + res += mhpmevent11h + res += mhpmevent12h + res += mhpmevent13h + res += mhpmevent14h + res += mhpmevent15h + res += mhpmevent16h + res += mhpmevent17h + res += mhpmevent18h + res += mhpmevent19h + res += mhpmevent20h + res += mhpmevent21h + res += mhpmevent22h + res += mhpmevent23h + res += mhpmevent24h + res += mhpmevent25h + res += mhpmevent26h + res += mhpmevent27h + res += mhpmevent28h + res += mhpmevent29h + res += mhpmevent30h + res += mhpmevent31h + res += mnscratch + res += mnepc + res += mncause + res += mnstatus + res += mseccfgh + res += mcycleh + res += minstreth + res += mhpmcounter3h + res += mhpmcounter4h + res += mhpmcounter5h + res += mhpmcounter6h + res += mhpmcounter7h + res += mhpmcounter8h + res += mhpmcounter9h + res += mhpmcounter10h + res += mhpmcounter11h + res += mhpmcounter12h + res += mhpmcounter13h + res += mhpmcounter14h + res += mhpmcounter15h + res += mhpmcounter16h + res += mhpmcounter17h + res += mhpmcounter18h + res += mhpmcounter19h + res += mhpmcounter20h + res += mhpmcounter21h + res += mhpmcounter22h + res += mhpmcounter23h + res += mhpmcounter24h + res += mhpmcounter25h + res += mhpmcounter26h + res += mhpmcounter27h + res += mhpmcounter28h + res += mhpmcounter29h + res += mhpmcounter30h + res += mhpmcounter31h + res.toArray + } +} diff --git a/backends/opcodes_maker/output/inst.go b/backends/opcodes_maker/output/inst.go new file mode 100644 index 000000000..b6649464c --- /dev/null +++ b/backends/opcodes_maker/output/inst.go @@ -0,0 +1,2639 @@ +// Code generated by generator.py output/instr_dict.json -c -chisel -spinalhdl -sverilog -rust -go -latex; DO NOT EDIT. +package riscv + +import "cmd/internal/obj" + +type inst struct { + opcode uint32 + funct3 uint32 + rs1 uint32 + rs2 uint32 + csr int64 + funct7 uint32 +} + +func encode(a obj.As) *inst { + switch a { + case AADD: + return &inst{ 0x33, 0x0, 0x0, 0x0, 0, 0x0 } + case AADDUW: + return &inst{ 0x3b, 0x0, 0x0, 0x0, 128, 0x4 } + case AADDI: + return &inst{ 0x13, 0x0, 0x0, 0x0, 0, 0x0 } + case AADDIW: + return &inst{ 0x1b, 0x0, 0x0, 0x0, 0, 0x0 } + case AADDW: + return &inst{ 0x3b, 0x0, 0x0, 0x0, 0, 0x0 } + case AAES32DSI: + return &inst{ 0x33, 0x0, 0x0, 0x0, 672, 0x15 } + case AAES32DSMI: + return &inst{ 0x33, 0x0, 0x0, 0x0, 736, 0x17 } + case AAES32ESI: + return &inst{ 0x33, 0x0, 0x0, 0x0, 544, 0x11 } + case AAES32ESMI: + return &inst{ 0x33, 0x0, 0x0, 0x0, 608, 0x13 } + case AAES64DS: + return &inst{ 0x33, 0x0, 0x0, 0x0, 928, 0x1d } + case AAES64DSM: + return &inst{ 0x33, 0x0, 0x0, 0x0, 992, 0x1f } + case AAES64ES: + return &inst{ 0x33, 0x0, 0x0, 0x0, 800, 0x19 } + case AAES64ESM: + return &inst{ 0x33, 0x0, 0x0, 0x0, 864, 0x1b } + case AAES64IM: + return &inst{ 0x13, 0x1, 0x0, 0x0, 768, 0x18 } + case AAES64KS1I: + return &inst{ 0x13, 0x1, 0x0, 0x10, 784, 0x18 } + case AAES64KS2: + return &inst{ 0x33, 0x0, 0x0, 0x0, 2016, 0x3f } + case AAMOADDB: + return &inst{ 0x2f, 0x0, 0x0, 0x0, 0, 0x0 } + case AAMOADDD: + return &inst{ 0x2f, 0x3, 0x0, 0x0, 0, 0x0 } + case AAMOADDH: + return &inst{ 0x2f, 0x1, 0x0, 0x0, 0, 0x0 } + case AAMOADDW: + return &inst{ 0x2f, 0x2, 0x0, 0x0, 0, 0x0 } + case AAMOANDB: + return &inst{ 0x2f, 0x0, 0x0, 0x0, 1536, 0x30 } + case AAMOANDD: + return &inst{ 0x2f, 0x3, 0x0, 0x0, 1536, 0x30 } + case AAMOANDH: + return &inst{ 0x2f, 0x1, 0x0, 0x0, 1536, 0x30 } + case AAMOANDW: + return &inst{ 0x2f, 0x2, 0x0, 0x0, 1536, 0x30 } + case AAMOCASB: + return &inst{ 0x2f, 0x0, 0x0, 0x0, 640, 0x14 } + case AAMOCASD: + return &inst{ 0x2f, 0x3, 0x0, 0x0, 640, 0x14 } + case AAMOCASH: + return &inst{ 0x2f, 0x1, 0x0, 0x0, 640, 0x14 } + case AAMOCASQ: + return &inst{ 0x2f, 0x4, 0x0, 0x0, 640, 0x14 } + case AAMOCASW: + return &inst{ 0x2f, 0x2, 0x0, 0x0, 640, 0x14 } + case AAMOMAXB: + return &inst{ 0x2f, 0x0, 0x0, 0x0, -1536, 0x50 } + case AAMOMAXD: + return &inst{ 0x2f, 0x3, 0x0, 0x0, -1536, 0x50 } + case AAMOMAXH: + return &inst{ 0x2f, 0x1, 0x0, 0x0, -1536, 0x50 } + case AAMOMAXW: + return &inst{ 0x2f, 0x2, 0x0, 0x0, -1536, 0x50 } + case AAMOMAXUB: + return &inst{ 0x2f, 0x0, 0x0, 0x0, -512, 0x70 } + case AAMOMAXUD: + return &inst{ 0x2f, 0x3, 0x0, 0x0, -512, 0x70 } + case AAMOMAXUH: + return &inst{ 0x2f, 0x1, 0x0, 0x0, -512, 0x70 } + case AAMOMAXUW: + return &inst{ 0x2f, 0x2, 0x0, 0x0, -512, 0x70 } + case AAMOMINB: + return &inst{ 0x2f, 0x0, 0x0, 0x0, -2048, 0x40 } + case AAMOMIND: + return &inst{ 0x2f, 0x3, 0x0, 0x0, -2048, 0x40 } + case AAMOMINH: + return &inst{ 0x2f, 0x1, 0x0, 0x0, -2048, 0x40 } + case AAMOMINW: + return &inst{ 0x2f, 0x2, 0x0, 0x0, -2048, 0x40 } + case AAMOMINUB: + return &inst{ 0x2f, 0x0, 0x0, 0x0, -1024, 0x60 } + case AAMOMINUD: + return &inst{ 0x2f, 0x3, 0x0, 0x0, -1024, 0x60 } + case AAMOMINUH: + return &inst{ 0x2f, 0x1, 0x0, 0x0, -1024, 0x60 } + case AAMOMINUW: + return &inst{ 0x2f, 0x2, 0x0, 0x0, -1024, 0x60 } + case AAMOORB: + return &inst{ 0x2f, 0x0, 0x0, 0x0, 1024, 0x20 } + case AAMOORD: + return &inst{ 0x2f, 0x3, 0x0, 0x0, 1024, 0x20 } + case AAMOORH: + return &inst{ 0x2f, 0x1, 0x0, 0x0, 1024, 0x20 } + case AAMOORW: + return &inst{ 0x2f, 0x2, 0x0, 0x0, 1024, 0x20 } + case AAMOSWAPB: + return &inst{ 0x2f, 0x0, 0x0, 0x0, 128, 0x4 } + case AAMOSWAPD: + return &inst{ 0x2f, 0x3, 0x0, 0x0, 128, 0x4 } + case AAMOSWAPH: + return &inst{ 0x2f, 0x1, 0x0, 0x0, 128, 0x4 } + case AAMOSWAPW: + return &inst{ 0x2f, 0x2, 0x0, 0x0, 128, 0x4 } + case AAMOXORB: + return &inst{ 0x2f, 0x0, 0x0, 0x0, 512, 0x10 } + case AAMOXORD: + return &inst{ 0x2f, 0x3, 0x0, 0x0, 512, 0x10 } + case AAMOXORH: + return &inst{ 0x2f, 0x1, 0x0, 0x0, 512, 0x10 } + case AAMOXORW: + return &inst{ 0x2f, 0x2, 0x0, 0x0, 512, 0x10 } + case AAND: + return &inst{ 0x33, 0x7, 0x0, 0x0, 0, 0x0 } + case AANDI: + return &inst{ 0x13, 0x7, 0x0, 0x0, 0, 0x0 } + case AANDN: + return &inst{ 0x33, 0x7, 0x0, 0x0, 1024, 0x20 } + case AAUIPC: + return &inst{ 0x17, 0x0, 0x0, 0x0, 0, 0x0 } + case ABCLR: + return &inst{ 0x33, 0x1, 0x0, 0x0, 1152, 0x24 } + case ABCLRI: + return &inst{ 0x13, 0x1, 0x0, 0x0, 1152, 0x24 } + case ABEQ: + return &inst{ 0x63, 0x0, 0x0, 0x0, 0, 0x0 } + case ABEXT: + return &inst{ 0x33, 0x5, 0x0, 0x0, 1152, 0x24 } + case ABEXTI: + return &inst{ 0x13, 0x5, 0x0, 0x0, 1152, 0x24 } + case ABGE: + return &inst{ 0x63, 0x5, 0x0, 0x0, 0, 0x0 } + case ABGEU: + return &inst{ 0x63, 0x7, 0x0, 0x0, 0, 0x0 } + case ABINV: + return &inst{ 0x33, 0x1, 0x0, 0x0, 1664, 0x34 } + case ABINVI: + return &inst{ 0x13, 0x1, 0x0, 0x0, 1664, 0x34 } + case ABLT: + return &inst{ 0x63, 0x4, 0x0, 0x0, 0, 0x0 } + case ABLTU: + return &inst{ 0x63, 0x6, 0x0, 0x0, 0, 0x0 } + case ABNE: + return &inst{ 0x63, 0x1, 0x0, 0x0, 0, 0x0 } + case ABREV8: + return &inst{ 0x13, 0x5, 0x0, 0x7, 1671, 0x34 } + case ABSET: + return &inst{ 0x33, 0x1, 0x0, 0x0, 640, 0x14 } + case ABSETI: + return &inst{ 0x13, 0x1, 0x0, 0x0, 640, 0x14 } + case ACADD: + return &inst{ 0x2, 0x1, 0x1, 0x0, 0, 0x0 } + case ACADDI: + return &inst{ 0x1, 0x0, 0x0, 0x0, 0, 0x0 } + case ACADDI16SP: + return &inst{ 0x1, 0x6, 0x0, 0x0, 0, 0x0 } + case ACADDI4SPN: + return &inst{ 0x0, 0x0, 0x0, 0x0, 0, 0x0 } + case ACADDIW: + return &inst{ 0x1, 0x2, 0x0, 0x0, 0, 0x0 } + case ACADDW: + return &inst{ 0x21, 0x1, 0x1, 0x0, 0, 0x0 } + case ACAND: + return &inst{ 0x61, 0x0, 0x1, 0x0, 0, 0x0 } + case ACANDI: + return &inst{ 0x1, 0x0, 0x1, 0x0, 0, 0x0 } + case ACBEQZ: + return &inst{ 0x1, 0x4, 0x1, 0x0, 0, 0x0 } + case ACBNEZ: + return &inst{ 0x1, 0x6, 0x1, 0x0, 0, 0x0 } + case ACEBREAK: + return &inst{ 0x2, 0x1, 0x1, 0x0, 0, 0x0 } + case ACFLD: + return &inst{ 0x0, 0x2, 0x0, 0x0, 0, 0x0 } + case ACFLDSP: + return &inst{ 0x2, 0x2, 0x0, 0x0, 0, 0x0 } + case ACFLW: + return &inst{ 0x0, 0x6, 0x0, 0x0, 0, 0x0 } + case ACFLWSP: + return &inst{ 0x2, 0x6, 0x0, 0x0, 0, 0x0 } + case ACFSD: + return &inst{ 0x0, 0x2, 0x1, 0x0, 0, 0x0 } + case ACFSDSP: + return &inst{ 0x2, 0x2, 0x1, 0x0, 0, 0x0 } + case ACFSW: + return &inst{ 0x0, 0x6, 0x1, 0x0, 0, 0x0 } + case ACFSWSP: + return &inst{ 0x2, 0x6, 0x1, 0x0, 0, 0x0 } + case ACJ: + return &inst{ 0x1, 0x2, 0x1, 0x0, 0, 0x0 } + case ACJAL: + return &inst{ 0x1, 0x2, 0x0, 0x0, 0, 0x0 } + case ACJALR: + return &inst{ 0x2, 0x1, 0x1, 0x0, 0, 0x0 } + case ACJR: + return &inst{ 0x2, 0x0, 0x1, 0x0, 0, 0x0 } + case ACLBU: + return &inst{ 0x0, 0x0, 0x1, 0x0, 0, 0x0 } + case ACLD: + return &inst{ 0x0, 0x6, 0x0, 0x0, 0, 0x0 } + case ACLDSP: + return &inst{ 0x2, 0x6, 0x0, 0x0, 0, 0x0 } + case ACLI: + return &inst{ 0x1, 0x4, 0x0, 0x0, 0, 0x0 } + case ACLUI: + return &inst{ 0x1, 0x6, 0x0, 0x0, 0, 0x0 } + case ACLW: + return &inst{ 0x0, 0x4, 0x0, 0x0, 0, 0x0 } + case ACLWSP: + return &inst{ 0x2, 0x4, 0x0, 0x0, 0, 0x0 } + case ACMUL: + return &inst{ 0x41, 0x1, 0x1, 0x0, 0, 0x0 } + case ACMV: + return &inst{ 0x2, 0x0, 0x1, 0x0, 0, 0x0 } + case ACNOP: + return &inst{ 0x1, 0x0, 0x0, 0x0, 0, 0x0 } + case ACNOT: + return &inst{ 0x75, 0x1, 0x1, 0x0, 0, 0x0 } + case ACOR: + return &inst{ 0x41, 0x0, 0x1, 0x0, 0, 0x0 } + case ACSB: + return &inst{ 0x0, 0x0, 0x1, 0x0, 0, 0x0 } + case ACSD: + return &inst{ 0x0, 0x6, 0x1, 0x0, 0, 0x0 } + case ACSDSP: + return &inst{ 0x2, 0x6, 0x1, 0x0, 0, 0x0 } + case ACSEXTB: + return &inst{ 0x65, 0x1, 0x1, 0x0, 0, 0x0 } + case ACSEXTH: + return &inst{ 0x6d, 0x1, 0x1, 0x0, 0, 0x0 } + case ACSLLI: + return &inst{ 0x2, 0x0, 0x0, 0x0, 0, 0x0 } + case ACSRAI: + return &inst{ 0x1, 0x0, 0x1, 0x0, 0, 0x0 } + case ACSRLI: + return &inst{ 0x1, 0x0, 0x1, 0x0, 0, 0x0 } + case ACSUB: + return &inst{ 0x1, 0x0, 0x1, 0x0, 0, 0x0 } + case ACSUBW: + return &inst{ 0x1, 0x1, 0x1, 0x0, 0, 0x0 } + case ACSW: + return &inst{ 0x0, 0x4, 0x1, 0x0, 0, 0x0 } + case ACSWSP: + return &inst{ 0x2, 0x4, 0x1, 0x0, 0, 0x0 } + case ACXOR: + return &inst{ 0x21, 0x0, 0x1, 0x0, 0, 0x0 } + case ACZEXTB: + return &inst{ 0x61, 0x1, 0x1, 0x0, 0, 0x0 } + case ACZEXTH: + return &inst{ 0x69, 0x1, 0x1, 0x0, 0, 0x0 } + case ACZEXTW: + return &inst{ 0x71, 0x1, 0x1, 0x0, 0, 0x0 } + case ACBOCLEAN: + return &inst{ 0xf, 0x2, 0x0, 0x1, 1, 0x0 } + case ACBOFLUSH: + return &inst{ 0xf, 0x2, 0x0, 0x2, 2, 0x0 } + case ACBOINVAL: + return &inst{ 0xf, 0x2, 0x0, 0x0, 0, 0x0 } + case ACBOZERO: + return &inst{ 0xf, 0x2, 0x0, 0x4, 4, 0x0 } + case ACLMUL: + return &inst{ 0x33, 0x1, 0x0, 0x0, 160, 0x5 } + case ACLMULH: + return &inst{ 0x33, 0x3, 0x0, 0x0, 160, 0x5 } + case ACLMULR: + return &inst{ 0x33, 0x2, 0x0, 0x0, 160, 0x5 } + case ACLZ: + return &inst{ 0x13, 0x1, 0x0, 0x0, 1536, 0x30 } + case ACLZW: + return &inst{ 0x1b, 0x1, 0x0, 0x0, 1536, 0x30 } + case ACMMVA01S: + return &inst{ 0x62, 0x2, 0x1, 0x0, 0, 0x0 } + case ACMMVSA01: + return &inst{ 0x22, 0x2, 0x1, 0x0, 0, 0x0 } + case ACMPOP: + return &inst{ 0x2, 0x3, 0x1, 0x0, 0, 0x0 } + case ACMPOPRET: + return &inst{ 0x2, 0x3, 0x1, 0x0, 0, 0x0 } + case ACMPOPRETZ: + return &inst{ 0x2, 0x3, 0x1, 0x0, 0, 0x0 } + case ACMPUSH: + return &inst{ 0x2, 0x3, 0x1, 0x0, 0, 0x0 } + case ACPOP: + return &inst{ 0x13, 0x1, 0x0, 0x2, 1538, 0x30 } + case ACPOPW: + return &inst{ 0x1b, 0x1, 0x0, 0x2, 1538, 0x30 } + case ACSRRC: + return &inst{ 0x73, 0x3, 0x0, 0x0, 0, 0x0 } + case ACSRRCI: + return &inst{ 0x73, 0x7, 0x0, 0x0, 0, 0x0 } + case ACSRRS: + return &inst{ 0x73, 0x2, 0x0, 0x0, 0, 0x0 } + case ACSRRSI: + return &inst{ 0x73, 0x6, 0x0, 0x0, 0, 0x0 } + case ACSRRW: + return &inst{ 0x73, 0x1, 0x0, 0x0, 0, 0x0 } + case ACSRRWI: + return &inst{ 0x73, 0x5, 0x0, 0x0, 0, 0x0 } + case ACTZ: + return &inst{ 0x13, 0x1, 0x0, 0x1, 1537, 0x30 } + case ACTZW: + return &inst{ 0x1b, 0x1, 0x0, 0x1, 1537, 0x30 } + case ACZEROEQZ: + return &inst{ 0x33, 0x5, 0x0, 0x0, 224, 0x7 } + case ACZERONEZ: + return &inst{ 0x33, 0x7, 0x0, 0x0, 224, 0x7 } + case ADIV: + return &inst{ 0x33, 0x4, 0x0, 0x0, 32, 0x1 } + case ADIVU: + return &inst{ 0x33, 0x5, 0x0, 0x0, 32, 0x1 } + case ADIVUW: + return &inst{ 0x3b, 0x5, 0x0, 0x0, 32, 0x1 } + case ADIVW: + return &inst{ 0x3b, 0x4, 0x0, 0x0, 32, 0x1 } + case ADRET: + return &inst{ 0x73, 0x0, 0x0, 0x12, 1970, 0x3d } + case AEBREAK: + return &inst{ 0x73, 0x0, 0x0, 0x1, 1, 0x0 } + case AECALL: + return &inst{ 0x73, 0x0, 0x0, 0x0, 0, 0x0 } + case AFADDD: + return &inst{ 0x53, 0x0, 0x0, 0x0, 32, 0x1 } + case AFADDH: + return &inst{ 0x53, 0x0, 0x0, 0x0, 64, 0x2 } + case AFADDQ: + return &inst{ 0x53, 0x0, 0x0, 0x0, 96, 0x3 } + case AFADDS: + return &inst{ 0x53, 0x0, 0x0, 0x0, 0, 0x0 } + case AFCLASSD: + return &inst{ 0x53, 0x1, 0x0, 0x0, -480, 0x71 } + case AFCLASSH: + return &inst{ 0x53, 0x1, 0x0, 0x0, -448, 0x72 } + case AFCLASSQ: + return &inst{ 0x53, 0x1, 0x0, 0x0, -416, 0x73 } + case AFCLASSS: + return &inst{ 0x53, 0x1, 0x0, 0x0, -512, 0x70 } + case AFCVTBF16S: + return &inst{ 0x53, 0x0, 0x0, 0x8, 1096, 0x22 } + case AFCVTDH: + return &inst{ 0x53, 0x0, 0x0, 0x2, 1058, 0x21 } + case AFCVTDL: + return &inst{ 0x53, 0x0, 0x0, 0x2, -734, 0x69 } + case AFCVTDLU: + return &inst{ 0x53, 0x0, 0x0, 0x3, -733, 0x69 } + case AFCVTDQ: + return &inst{ 0x53, 0x0, 0x0, 0x3, 1059, 0x21 } + case AFCVTDS: + return &inst{ 0x53, 0x0, 0x0, 0x0, 1056, 0x21 } + case AFCVTDW: + return &inst{ 0x53, 0x0, 0x0, 0x0, -736, 0x69 } + case AFCVTDWU: + return &inst{ 0x53, 0x0, 0x0, 0x1, -735, 0x69 } + case AFCVTHD: + return &inst{ 0x53, 0x0, 0x0, 0x1, 1089, 0x22 } + case AFCVTHL: + return &inst{ 0x53, 0x0, 0x0, 0x2, -702, 0x6a } + case AFCVTHLU: + return &inst{ 0x53, 0x0, 0x0, 0x3, -701, 0x6a } + case AFCVTHQ: + return &inst{ 0x53, 0x0, 0x0, 0x3, 1091, 0x22 } + case AFCVTHS: + return &inst{ 0x53, 0x0, 0x0, 0x0, 1088, 0x22 } + case AFCVTHW: + return &inst{ 0x53, 0x0, 0x0, 0x0, -704, 0x6a } + case AFCVTHWU: + return &inst{ 0x53, 0x0, 0x0, 0x1, -703, 0x6a } + case AFCVTLD: + return &inst{ 0x53, 0x0, 0x0, 0x2, -990, 0x61 } + case AFCVTLH: + return &inst{ 0x53, 0x0, 0x0, 0x2, -958, 0x62 } + case AFCVTLQ: + return &inst{ 0x53, 0x0, 0x0, 0x2, -926, 0x63 } + case AFCVTLS: + return &inst{ 0x53, 0x0, 0x0, 0x2, -1022, 0x60 } + case AFCVTLUD: + return &inst{ 0x53, 0x0, 0x0, 0x3, -989, 0x61 } + case AFCVTLUH: + return &inst{ 0x53, 0x0, 0x0, 0x3, -957, 0x62 } + case AFCVTLUQ: + return &inst{ 0x53, 0x0, 0x0, 0x3, -925, 0x63 } + case AFCVTLUS: + return &inst{ 0x53, 0x0, 0x0, 0x3, -1021, 0x60 } + case AFCVTQD: + return &inst{ 0x53, 0x0, 0x0, 0x1, 1121, 0x23 } + case AFCVTQH: + return &inst{ 0x53, 0x0, 0x0, 0x2, 1122, 0x23 } + case AFCVTQL: + return &inst{ 0x53, 0x0, 0x0, 0x2, -670, 0x6b } + case AFCVTQLU: + return &inst{ 0x53, 0x0, 0x0, 0x3, -669, 0x6b } + case AFCVTQS: + return &inst{ 0x53, 0x0, 0x0, 0x0, 1120, 0x23 } + case AFCVTQW: + return &inst{ 0x53, 0x0, 0x0, 0x0, -672, 0x6b } + case AFCVTQWU: + return &inst{ 0x53, 0x0, 0x0, 0x1, -671, 0x6b } + case AFCVTSBF16: + return &inst{ 0x53, 0x0, 0x0, 0x6, 1030, 0x20 } + case AFCVTSD: + return &inst{ 0x53, 0x0, 0x0, 0x1, 1025, 0x20 } + case AFCVTSH: + return &inst{ 0x53, 0x0, 0x0, 0x2, 1026, 0x20 } + case AFCVTSL: + return &inst{ 0x53, 0x0, 0x0, 0x2, -766, 0x68 } + case AFCVTSLU: + return &inst{ 0x53, 0x0, 0x0, 0x3, -765, 0x68 } + case AFCVTSQ: + return &inst{ 0x53, 0x0, 0x0, 0x3, 1027, 0x20 } + case AFCVTSW: + return &inst{ 0x53, 0x0, 0x0, 0x0, -768, 0x68 } + case AFCVTSWU: + return &inst{ 0x53, 0x0, 0x0, 0x1, -767, 0x68 } + case AFCVTWD: + return &inst{ 0x53, 0x0, 0x0, 0x0, -992, 0x61 } + case AFCVTWH: + return &inst{ 0x53, 0x0, 0x0, 0x0, -960, 0x62 } + case AFCVTWQ: + return &inst{ 0x53, 0x0, 0x0, 0x0, -928, 0x63 } + case AFCVTWS: + return &inst{ 0x53, 0x0, 0x0, 0x0, -1024, 0x60 } + case AFCVTWUD: + return &inst{ 0x53, 0x0, 0x0, 0x1, -991, 0x61 } + case AFCVTWUH: + return &inst{ 0x53, 0x0, 0x0, 0x1, -959, 0x62 } + case AFCVTWUQ: + return &inst{ 0x53, 0x0, 0x0, 0x1, -927, 0x63 } + case AFCVTWUS: + return &inst{ 0x53, 0x0, 0x0, 0x1, -1023, 0x60 } + case AFCVTMODWD: + return &inst{ 0x53, 0x1, 0x0, 0x8, -984, 0x61 } + case AFDIVD: + return &inst{ 0x53, 0x0, 0x0, 0x0, 416, 0xd } + case AFDIVH: + return &inst{ 0x53, 0x0, 0x0, 0x0, 448, 0xe } + case AFDIVQ: + return &inst{ 0x53, 0x0, 0x0, 0x0, 480, 0xf } + case AFDIVS: + return &inst{ 0x53, 0x0, 0x0, 0x0, 384, 0xc } + case AFENCE: + return &inst{ 0xf, 0x0, 0x0, 0x0, 0, 0x0 } + case AFENCEI: + return &inst{ 0xf, 0x1, 0x0, 0x0, 0, 0x0 } + case AFEQD: + return &inst{ 0x53, 0x2, 0x0, 0x0, -1504, 0x51 } + case AFEQH: + return &inst{ 0x53, 0x2, 0x0, 0x0, -1472, 0x52 } + case AFEQQ: + return &inst{ 0x53, 0x2, 0x0, 0x0, -1440, 0x53 } + case AFEQS: + return &inst{ 0x53, 0x2, 0x0, 0x0, -1536, 0x50 } + case AFLD: + return &inst{ 0x7, 0x3, 0x0, 0x0, 0, 0x0 } + case AFLED: + return &inst{ 0x53, 0x0, 0x0, 0x0, -1504, 0x51 } + case AFLEH: + return &inst{ 0x53, 0x0, 0x0, 0x0, -1472, 0x52 } + case AFLEQ: + return &inst{ 0x53, 0x0, 0x0, 0x0, -1440, 0x53 } + case AFLES: + return &inst{ 0x53, 0x0, 0x0, 0x0, -1536, 0x50 } + case AFLEQD: + return &inst{ 0x53, 0x4, 0x0, 0x0, -1504, 0x51 } + case AFLEQH: + return &inst{ 0x53, 0x4, 0x0, 0x0, -1472, 0x52 } + case AFLEQQ: + return &inst{ 0x53, 0x4, 0x0, 0x0, -1440, 0x53 } + case AFLEQS: + return &inst{ 0x53, 0x4, 0x0, 0x0, -1536, 0x50 } + case AFLH: + return &inst{ 0x7, 0x1, 0x0, 0x0, 0, 0x0 } + case AFLID: + return &inst{ 0x53, 0x0, 0x0, 0x1, -223, 0x79 } + case AFLIH: + return &inst{ 0x53, 0x0, 0x0, 0x1, -191, 0x7a } + case AFLIQ: + return &inst{ 0x53, 0x0, 0x0, 0x1, -159, 0x7b } + case AFLIS: + return &inst{ 0x53, 0x0, 0x0, 0x1, -255, 0x78 } + case AFLQ: + return &inst{ 0x7, 0x4, 0x0, 0x0, 0, 0x0 } + case AFLTD: + return &inst{ 0x53, 0x1, 0x0, 0x0, -1504, 0x51 } + case AFLTH: + return &inst{ 0x53, 0x1, 0x0, 0x0, -1472, 0x52 } + case AFLTQ: + return &inst{ 0x53, 0x1, 0x0, 0x0, -1440, 0x53 } + case AFLTS: + return &inst{ 0x53, 0x1, 0x0, 0x0, -1536, 0x50 } + case AFLTQD: + return &inst{ 0x53, 0x5, 0x0, 0x0, -1504, 0x51 } + case AFLTQH: + return &inst{ 0x53, 0x5, 0x0, 0x0, -1472, 0x52 } + case AFLTQQ: + return &inst{ 0x53, 0x5, 0x0, 0x0, -1440, 0x53 } + case AFLTQS: + return &inst{ 0x53, 0x5, 0x0, 0x0, -1536, 0x50 } + case AFLW: + return &inst{ 0x7, 0x2, 0x0, 0x0, 0, 0x0 } + case AFMADDD: + return &inst{ 0x43, 0x0, 0x0, 0x0, 32, 0x1 } + case AFMADDH: + return &inst{ 0x43, 0x0, 0x0, 0x0, 64, 0x2 } + case AFMADDQ: + return &inst{ 0x43, 0x0, 0x0, 0x0, 96, 0x3 } + case AFMADDS: + return &inst{ 0x43, 0x0, 0x0, 0x0, 0, 0x0 } + case AFMAXD: + return &inst{ 0x53, 0x1, 0x0, 0x0, 672, 0x15 } + case AFMAXH: + return &inst{ 0x53, 0x1, 0x0, 0x0, 704, 0x16 } + case AFMAXQ: + return &inst{ 0x53, 0x1, 0x0, 0x0, 736, 0x17 } + case AFMAXS: + return &inst{ 0x53, 0x1, 0x0, 0x0, 640, 0x14 } + case AFMAXMD: + return &inst{ 0x53, 0x3, 0x0, 0x0, 672, 0x15 } + case AFMAXMH: + return &inst{ 0x53, 0x3, 0x0, 0x0, 704, 0x16 } + case AFMAXMQ: + return &inst{ 0x53, 0x3, 0x0, 0x0, 736, 0x17 } + case AFMAXMS: + return &inst{ 0x53, 0x3, 0x0, 0x0, 640, 0x14 } + case AFMIND: + return &inst{ 0x53, 0x0, 0x0, 0x0, 672, 0x15 } + case AFMINH: + return &inst{ 0x53, 0x0, 0x0, 0x0, 704, 0x16 } + case AFMINQ: + return &inst{ 0x53, 0x0, 0x0, 0x0, 736, 0x17 } + case AFMINS: + return &inst{ 0x53, 0x0, 0x0, 0x0, 640, 0x14 } + case AFMINMD: + return &inst{ 0x53, 0x2, 0x0, 0x0, 672, 0x15 } + case AFMINMH: + return &inst{ 0x53, 0x2, 0x0, 0x0, 704, 0x16 } + case AFMINMQ: + return &inst{ 0x53, 0x2, 0x0, 0x0, 736, 0x17 } + case AFMINMS: + return &inst{ 0x53, 0x2, 0x0, 0x0, 640, 0x14 } + case AFMSUBD: + return &inst{ 0x47, 0x0, 0x0, 0x0, 32, 0x1 } + case AFMSUBH: + return &inst{ 0x47, 0x0, 0x0, 0x0, 64, 0x2 } + case AFMSUBQ: + return &inst{ 0x47, 0x0, 0x0, 0x0, 96, 0x3 } + case AFMSUBS: + return &inst{ 0x47, 0x0, 0x0, 0x0, 0, 0x0 } + case AFMULD: + return &inst{ 0x53, 0x0, 0x0, 0x0, 288, 0x9 } + case AFMULH: + return &inst{ 0x53, 0x0, 0x0, 0x0, 320, 0xa } + case AFMULQ: + return &inst{ 0x53, 0x0, 0x0, 0x0, 352, 0xb } + case AFMULS: + return &inst{ 0x53, 0x0, 0x0, 0x0, 256, 0x8 } + case AFMVDX: + return &inst{ 0x53, 0x0, 0x0, 0x0, -224, 0x79 } + case AFMVHX: + return &inst{ 0x53, 0x0, 0x0, 0x0, -192, 0x7a } + case AFMVWX: + return &inst{ 0x53, 0x0, 0x0, 0x0, -256, 0x78 } + case AFMVXD: + return &inst{ 0x53, 0x0, 0x0, 0x0, -480, 0x71 } + case AFMVXH: + return &inst{ 0x53, 0x0, 0x0, 0x0, -448, 0x72 } + case AFMVXW: + return &inst{ 0x53, 0x0, 0x0, 0x0, -512, 0x70 } + case AFMVHXD: + return &inst{ 0x53, 0x0, 0x0, 0x1, -479, 0x71 } + case AFMVHXQ: + return &inst{ 0x53, 0x0, 0x0, 0x1, -415, 0x73 } + case AFMVPDX: + return &inst{ 0x53, 0x0, 0x0, 0x0, -1248, 0x59 } + case AFMVPQX: + return &inst{ 0x53, 0x0, 0x0, 0x0, -1184, 0x5b } + case AFNMADDD: + return &inst{ 0x4f, 0x0, 0x0, 0x0, 32, 0x1 } + case AFNMADDH: + return &inst{ 0x4f, 0x0, 0x0, 0x0, 64, 0x2 } + case AFNMADDQ: + return &inst{ 0x4f, 0x0, 0x0, 0x0, 96, 0x3 } + case AFNMADDS: + return &inst{ 0x4f, 0x0, 0x0, 0x0, 0, 0x0 } + case AFNMSUBD: + return &inst{ 0x4b, 0x0, 0x0, 0x0, 32, 0x1 } + case AFNMSUBH: + return &inst{ 0x4b, 0x0, 0x0, 0x0, 64, 0x2 } + case AFNMSUBQ: + return &inst{ 0x4b, 0x0, 0x0, 0x0, 96, 0x3 } + case AFNMSUBS: + return &inst{ 0x4b, 0x0, 0x0, 0x0, 0, 0x0 } + case AFROUNDD: + return &inst{ 0x53, 0x0, 0x0, 0x4, 1060, 0x21 } + case AFROUNDH: + return &inst{ 0x53, 0x0, 0x0, 0x4, 1092, 0x22 } + case AFROUNDQ: + return &inst{ 0x53, 0x0, 0x0, 0x4, 1124, 0x23 } + case AFROUNDS: + return &inst{ 0x53, 0x0, 0x0, 0x4, 1028, 0x20 } + case AFROUNDNXD: + return &inst{ 0x53, 0x0, 0x0, 0x5, 1061, 0x21 } + case AFROUNDNXH: + return &inst{ 0x53, 0x0, 0x0, 0x5, 1093, 0x22 } + case AFROUNDNXQ: + return &inst{ 0x53, 0x0, 0x0, 0x5, 1125, 0x23 } + case AFROUNDNXS: + return &inst{ 0x53, 0x0, 0x0, 0x5, 1029, 0x20 } + case AFSD: + return &inst{ 0x27, 0x3, 0x0, 0x0, 0, 0x0 } + case AFSGNJD: + return &inst{ 0x53, 0x0, 0x0, 0x0, 544, 0x11 } + case AFSGNJH: + return &inst{ 0x53, 0x0, 0x0, 0x0, 576, 0x12 } + case AFSGNJQ: + return &inst{ 0x53, 0x0, 0x0, 0x0, 608, 0x13 } + case AFSGNJS: + return &inst{ 0x53, 0x0, 0x0, 0x0, 512, 0x10 } + case AFSGNJND: + return &inst{ 0x53, 0x1, 0x0, 0x0, 544, 0x11 } + case AFSGNJNH: + return &inst{ 0x53, 0x1, 0x0, 0x0, 576, 0x12 } + case AFSGNJNQ: + return &inst{ 0x53, 0x1, 0x0, 0x0, 608, 0x13 } + case AFSGNJNS: + return &inst{ 0x53, 0x1, 0x0, 0x0, 512, 0x10 } + case AFSGNJXD: + return &inst{ 0x53, 0x2, 0x0, 0x0, 544, 0x11 } + case AFSGNJXH: + return &inst{ 0x53, 0x2, 0x0, 0x0, 576, 0x12 } + case AFSGNJXQ: + return &inst{ 0x53, 0x2, 0x0, 0x0, 608, 0x13 } + case AFSGNJXS: + return &inst{ 0x53, 0x2, 0x0, 0x0, 512, 0x10 } + case AFSH: + return &inst{ 0x27, 0x1, 0x0, 0x0, 0, 0x0 } + case AFSQ: + return &inst{ 0x27, 0x4, 0x0, 0x0, 0, 0x0 } + case AFSQRTD: + return &inst{ 0x53, 0x0, 0x0, 0x0, 1440, 0x2d } + case AFSQRTH: + return &inst{ 0x53, 0x0, 0x0, 0x0, 1472, 0x2e } + case AFSQRTQ: + return &inst{ 0x53, 0x0, 0x0, 0x0, 1504, 0x2f } + case AFSQRTS: + return &inst{ 0x53, 0x0, 0x0, 0x0, 1408, 0x2c } + case AFSUBD: + return &inst{ 0x53, 0x0, 0x0, 0x0, 160, 0x5 } + case AFSUBH: + return &inst{ 0x53, 0x0, 0x0, 0x0, 192, 0x6 } + case AFSUBQ: + return &inst{ 0x53, 0x0, 0x0, 0x0, 224, 0x7 } + case AFSUBS: + return &inst{ 0x53, 0x0, 0x0, 0x0, 128, 0x4 } + case AFSW: + return &inst{ 0x27, 0x2, 0x0, 0x0, 0, 0x0 } + case AHFENCEGVMA: + return &inst{ 0x73, 0x0, 0x0, 0x0, 1568, 0x31 } + case AHFENCEVVMA: + return &inst{ 0x73, 0x0, 0x0, 0x0, 544, 0x11 } + case AHINVALGVMA: + return &inst{ 0x73, 0x0, 0x0, 0x0, 1632, 0x33 } + case AHINVALVVMA: + return &inst{ 0x73, 0x0, 0x0, 0x0, 608, 0x13 } + case AHLVB: + return &inst{ 0x73, 0x4, 0x0, 0x0, 1536, 0x30 } + case AHLVBU: + return &inst{ 0x73, 0x4, 0x0, 0x1, 1537, 0x30 } + case AHLVD: + return &inst{ 0x73, 0x4, 0x0, 0x0, 1728, 0x36 } + case AHLVH: + return &inst{ 0x73, 0x4, 0x0, 0x0, 1600, 0x32 } + case AHLVHU: + return &inst{ 0x73, 0x4, 0x0, 0x1, 1601, 0x32 } + case AHLVW: + return &inst{ 0x73, 0x4, 0x0, 0x0, 1664, 0x34 } + case AHLVWU: + return &inst{ 0x73, 0x4, 0x0, 0x1, 1665, 0x34 } + case AHLVXHU: + return &inst{ 0x73, 0x4, 0x0, 0x3, 1603, 0x32 } + case AHLVXWU: + return &inst{ 0x73, 0x4, 0x0, 0x3, 1667, 0x34 } + case AHSVB: + return &inst{ 0x73, 0x4, 0x0, 0x0, 1568, 0x31 } + case AHSVD: + return &inst{ 0x73, 0x4, 0x0, 0x0, 1760, 0x37 } + case AHSVH: + return &inst{ 0x73, 0x4, 0x0, 0x0, 1632, 0x33 } + case AHSVW: + return &inst{ 0x73, 0x4, 0x0, 0x0, 1696, 0x35 } + case AJAL: + return &inst{ 0x6f, 0x0, 0x0, 0x0, 0, 0x0 } + case AJALR: + return &inst{ 0x67, 0x0, 0x0, 0x0, 0, 0x0 } + case ALB: + return &inst{ 0x3, 0x0, 0x0, 0x0, 0, 0x0 } + case ALBAQ: + return &inst{ 0x2f, 0x0, 0x0, 0x0, 832, 0x1a } + case ALBU: + return &inst{ 0x3, 0x4, 0x0, 0x0, 0, 0x0 } + case ALD: + return &inst{ 0x3, 0x3, 0x0, 0x0, 0, 0x0 } + case ALDAQ: + return &inst{ 0x2f, 0x3, 0x0, 0x0, 832, 0x1a } + case ALH: + return &inst{ 0x3, 0x1, 0x0, 0x0, 0, 0x0 } + case ALHAQ: + return &inst{ 0x2f, 0x1, 0x0, 0x0, 832, 0x1a } + case ALHU: + return &inst{ 0x3, 0x5, 0x0, 0x0, 0, 0x0 } + case ALPAD: + return &inst{ 0x17, 0x0, 0x0, 0x0, 0, 0x0 } + case ALRD: + return &inst{ 0x2f, 0x3, 0x0, 0x0, 256, 0x8 } + case ALRW: + return &inst{ 0x2f, 0x2, 0x0, 0x0, 256, 0x8 } + case ALUI: + return &inst{ 0x37, 0x0, 0x0, 0x0, 0, 0x0 } + case ALW: + return &inst{ 0x3, 0x2, 0x0, 0x0, 0, 0x0 } + case ALWAQ: + return &inst{ 0x2f, 0x2, 0x0, 0x0, 832, 0x1a } + case ALWU: + return &inst{ 0x3, 0x6, 0x0, 0x0, 0, 0x0 } + case AMAX: + return &inst{ 0x33, 0x6, 0x0, 0x0, 160, 0x5 } + case AMAXU: + return &inst{ 0x33, 0x7, 0x0, 0x0, 160, 0x5 } + case AMIN: + return &inst{ 0x33, 0x4, 0x0, 0x0, 160, 0x5 } + case AMINU: + return &inst{ 0x33, 0x5, 0x0, 0x0, 160, 0x5 } + case AMNRET: + return &inst{ 0x73, 0x0, 0x0, 0x2, 1794, 0x38 } + case AMOPRN: + return &inst{ 0x73, 0x4, 0x0, 0x1c, -2020, 0x40 } + case AMOPRRN: + return &inst{ 0x73, 0x4, 0x0, 0x0, -2016, 0x41 } + case AMRET: + return &inst{ 0x73, 0x0, 0x0, 0x2, 770, 0x18 } + case AMUL: + return &inst{ 0x33, 0x0, 0x0, 0x0, 32, 0x1 } + case AMULH: + return &inst{ 0x33, 0x1, 0x0, 0x0, 32, 0x1 } + case AMULHSU: + return &inst{ 0x33, 0x2, 0x0, 0x0, 32, 0x1 } + case AMULHU: + return &inst{ 0x33, 0x3, 0x0, 0x0, 32, 0x1 } + case AMULW: + return &inst{ 0x3b, 0x0, 0x0, 0x0, 32, 0x1 } + case AOR: + return &inst{ 0x33, 0x6, 0x0, 0x0, 0, 0x0 } + case AORCB: + return &inst{ 0x13, 0x5, 0x0, 0x7, 647, 0x14 } + case AORI: + return &inst{ 0x13, 0x6, 0x0, 0x0, 0, 0x0 } + case AORN: + return &inst{ 0x33, 0x6, 0x0, 0x0, 1024, 0x20 } + case APACK: + return &inst{ 0x33, 0x4, 0x0, 0x0, 128, 0x4 } + case APACKH: + return &inst{ 0x33, 0x7, 0x0, 0x0, 128, 0x4 } + case APACKW: + return &inst{ 0x3b, 0x4, 0x0, 0x0, 128, 0x4 } + case AREM: + return &inst{ 0x33, 0x6, 0x0, 0x0, 32, 0x1 } + case AREMU: + return &inst{ 0x33, 0x7, 0x0, 0x0, 32, 0x1 } + case AREMUW: + return &inst{ 0x3b, 0x7, 0x0, 0x0, 32, 0x1 } + case AREMW: + return &inst{ 0x3b, 0x6, 0x0, 0x0, 32, 0x1 } + case AREV8: + return &inst{ 0x13, 0x5, 0x0, 0x18, 1720, 0x35 } + case AROL: + return &inst{ 0x33, 0x1, 0x0, 0x0, 1536, 0x30 } + case AROLW: + return &inst{ 0x3b, 0x1, 0x0, 0x0, 1536, 0x30 } + case AROR: + return &inst{ 0x33, 0x5, 0x0, 0x0, 1536, 0x30 } + case ARORI: + return &inst{ 0x13, 0x5, 0x0, 0x0, 1536, 0x30 } + case ARORIW: + return &inst{ 0x1b, 0x5, 0x0, 0x0, 1536, 0x30 } + case ARORW: + return &inst{ 0x3b, 0x5, 0x0, 0x0, 1536, 0x30 } + case ASB: + return &inst{ 0x23, 0x0, 0x0, 0x0, 0, 0x0 } + case ASBRL: + return &inst{ 0x2f, 0x0, 0x0, 0x0, 928, 0x1d } + case ASCD: + return &inst{ 0x2f, 0x3, 0x0, 0x0, 384, 0xc } + case ASCW: + return &inst{ 0x2f, 0x2, 0x0, 0x0, 384, 0xc } + case ASCTRCLR: + return &inst{ 0x73, 0x0, 0x0, 0x4, 260, 0x8 } + case ASD: + return &inst{ 0x23, 0x3, 0x0, 0x0, 0, 0x0 } + case ASDRL: + return &inst{ 0x2f, 0x3, 0x0, 0x0, 928, 0x1d } + case ASEXTB: + return &inst{ 0x13, 0x1, 0x0, 0x4, 1540, 0x30 } + case ASEXTH: + return &inst{ 0x13, 0x1, 0x0, 0x5, 1541, 0x30 } + case ASFENCEINVALIR: + return &inst{ 0x73, 0x0, 0x0, 0x1, 385, 0xc } + case ASFENCEVMA: + return &inst{ 0x73, 0x0, 0x0, 0x0, 288, 0x9 } + case ASFENCEWINVAL: + return &inst{ 0x73, 0x0, 0x0, 0x0, 384, 0xc } + case ASH: + return &inst{ 0x23, 0x1, 0x0, 0x0, 0, 0x0 } + case ASH1ADD: + return &inst{ 0x33, 0x2, 0x0, 0x0, 512, 0x10 } + case ASH1ADDUW: + return &inst{ 0x3b, 0x2, 0x0, 0x0, 512, 0x10 } + case ASH2ADD: + return &inst{ 0x33, 0x4, 0x0, 0x0, 512, 0x10 } + case ASH2ADDUW: + return &inst{ 0x3b, 0x4, 0x0, 0x0, 512, 0x10 } + case ASH3ADD: + return &inst{ 0x33, 0x6, 0x0, 0x0, 512, 0x10 } + case ASH3ADDUW: + return &inst{ 0x3b, 0x6, 0x0, 0x0, 512, 0x10 } + case ASHRL: + return &inst{ 0x2f, 0x1, 0x0, 0x0, 928, 0x1d } + case ASHA256SIG0: + return &inst{ 0x13, 0x1, 0x0, 0x2, 258, 0x8 } + case ASHA256SIG1: + return &inst{ 0x13, 0x1, 0x0, 0x3, 259, 0x8 } + case ASHA256SUM0: + return &inst{ 0x13, 0x1, 0x0, 0x0, 256, 0x8 } + case ASHA256SUM1: + return &inst{ 0x13, 0x1, 0x0, 0x1, 257, 0x8 } + case ASHA512SIG0: + return &inst{ 0x13, 0x1, 0x0, 0x6, 262, 0x8 } + case ASHA512SIG0H: + return &inst{ 0x33, 0x0, 0x0, 0x0, 1472, 0x2e } + case ASHA512SIG0L: + return &inst{ 0x33, 0x0, 0x0, 0x0, 1344, 0x2a } + case ASHA512SIG1: + return &inst{ 0x13, 0x1, 0x0, 0x7, 263, 0x8 } + case ASHA512SIG1H: + return &inst{ 0x33, 0x0, 0x0, 0x0, 1504, 0x2f } + case ASHA512SIG1L: + return &inst{ 0x33, 0x0, 0x0, 0x0, 1376, 0x2b } + case ASHA512SUM0: + return &inst{ 0x13, 0x1, 0x0, 0x4, 260, 0x8 } + case ASHA512SUM0R: + return &inst{ 0x33, 0x0, 0x0, 0x0, 1280, 0x28 } + case ASHA512SUM1: + return &inst{ 0x13, 0x1, 0x0, 0x5, 261, 0x8 } + case ASHA512SUM1R: + return &inst{ 0x33, 0x0, 0x0, 0x0, 1312, 0x29 } + case ASINVALVMA: + return &inst{ 0x73, 0x0, 0x0, 0x0, 352, 0xb } + case ASLL: + return &inst{ 0x33, 0x1, 0x0, 0x0, 0, 0x0 } + case ASLLI: + return &inst{ 0x13, 0x1, 0x0, 0x0, 0, 0x0 } + case ASLLIUW: + return &inst{ 0x1b, 0x1, 0x0, 0x0, 128, 0x4 } + case ASLLIW: + return &inst{ 0x1b, 0x1, 0x0, 0x0, 0, 0x0 } + case ASLLW: + return &inst{ 0x3b, 0x1, 0x0, 0x0, 0, 0x0 } + case ASLT: + return &inst{ 0x33, 0x2, 0x0, 0x0, 0, 0x0 } + case ASLTI: + return &inst{ 0x13, 0x2, 0x0, 0x0, 0, 0x0 } + case ASLTIU: + return &inst{ 0x13, 0x3, 0x0, 0x0, 0, 0x0 } + case ASLTU: + return &inst{ 0x33, 0x3, 0x0, 0x0, 0, 0x0 } + case ASM3P0: + return &inst{ 0x13, 0x1, 0x0, 0x8, 264, 0x8 } + case ASM3P1: + return &inst{ 0x13, 0x1, 0x0, 0x9, 265, 0x8 } + case ASM4ED: + return &inst{ 0x33, 0x0, 0x0, 0x0, 768, 0x18 } + case ASM4KS: + return &inst{ 0x33, 0x0, 0x0, 0x0, 832, 0x1a } + case ASRA: + return &inst{ 0x33, 0x5, 0x0, 0x0, 1024, 0x20 } + case ASRAI: + return &inst{ 0x13, 0x5, 0x0, 0x0, 1024, 0x20 } + case ASRAIW: + return &inst{ 0x1b, 0x5, 0x0, 0x0, 1024, 0x20 } + case ASRAW: + return &inst{ 0x3b, 0x5, 0x0, 0x0, 1024, 0x20 } + case ASRET: + return &inst{ 0x73, 0x0, 0x0, 0x2, 258, 0x8 } + case ASRL: + return &inst{ 0x33, 0x5, 0x0, 0x0, 0, 0x0 } + case ASRLI: + return &inst{ 0x13, 0x5, 0x0, 0x0, 0, 0x0 } + case ASRLIW: + return &inst{ 0x1b, 0x5, 0x0, 0x0, 0, 0x0 } + case ASRLW: + return &inst{ 0x3b, 0x5, 0x0, 0x0, 0, 0x0 } + case ASSAMOSWAPD: + return &inst{ 0x2f, 0x3, 0x0, 0x0, 1152, 0x24 } + case ASSAMOSWAPW: + return &inst{ 0x2f, 0x2, 0x0, 0x0, 1152, 0x24 } + case ASSPOPCHKX1: + return &inst{ 0x73, 0x4, 0x1, 0x1c, -804, 0x66 } + case ASSPOPCHKX5: + return &inst{ 0x73, 0x4, 0x5, 0x1c, -804, 0x66 } + case ASSPUSHX1: + return &inst{ 0x73, 0x4, 0x0, 0x1, -799, 0x67 } + case ASSPUSHX5: + return &inst{ 0x73, 0x4, 0x0, 0x5, -795, 0x67 } + case ASSRDP: + return &inst{ 0x73, 0x4, 0x0, 0x1c, -804, 0x66 } + case ASUB: + return &inst{ 0x33, 0x0, 0x0, 0x0, 1024, 0x20 } + case ASUBW: + return &inst{ 0x3b, 0x0, 0x0, 0x0, 1024, 0x20 } + case ASW: + return &inst{ 0x23, 0x2, 0x0, 0x0, 0, 0x0 } + case ASWRL: + return &inst{ 0x2f, 0x2, 0x0, 0x0, 928, 0x1d } + case AUNZIP: + return &inst{ 0x13, 0x5, 0x0, 0xf, 143, 0x4 } + case AVAADDVV: + return &inst{ 0x57, 0x2, 0x0, 0x0, 576, 0x12 } + case AVAADDVX: + return &inst{ 0x57, 0x6, 0x0, 0x0, 576, 0x12 } + case AVAADDUVV: + return &inst{ 0x57, 0x2, 0x0, 0x0, 512, 0x10 } + case AVAADDUVX: + return &inst{ 0x57, 0x6, 0x0, 0x0, 512, 0x10 } + case AVADCVIM: + return &inst{ 0x57, 0x3, 0x0, 0x0, 1024, 0x20 } + case AVADCVVM: + return &inst{ 0x57, 0x0, 0x0, 0x0, 1024, 0x20 } + case AVADCVXM: + return &inst{ 0x57, 0x4, 0x0, 0x0, 1024, 0x20 } + case AVADDVI: + return &inst{ 0x57, 0x3, 0x0, 0x0, 0, 0x0 } + case AVADDVV: + return &inst{ 0x57, 0x0, 0x0, 0x0, 0, 0x0 } + case AVADDVX: + return &inst{ 0x57, 0x4, 0x0, 0x0, 0, 0x0 } + case AVAESDFVS: + return &inst{ 0x77, 0x2, 0x1, 0x0, -1440, 0x53 } + case AVAESDFVV: + return &inst{ 0x77, 0x2, 0x1, 0x0, -1504, 0x51 } + case AVAESDMVS: + return &inst{ 0x77, 0x2, 0x0, 0x0, -1440, 0x53 } + case AVAESDMVV: + return &inst{ 0x77, 0x2, 0x0, 0x0, -1504, 0x51 } + case AVAESEFVS: + return &inst{ 0x77, 0x2, 0x3, 0x0, -1440, 0x53 } + case AVAESEFVV: + return &inst{ 0x77, 0x2, 0x3, 0x0, -1504, 0x51 } + case AVAESEMVS: + return &inst{ 0x77, 0x2, 0x2, 0x0, -1440, 0x53 } + case AVAESEMVV: + return &inst{ 0x77, 0x2, 0x2, 0x0, -1504, 0x51 } + case AVAESKF1VI: + return &inst{ 0x77, 0x2, 0x0, 0x0, -1888, 0x45 } + case AVAESKF2VI: + return &inst{ 0x77, 0x2, 0x0, 0x0, -1376, 0x55 } + case AVAESZVS: + return &inst{ 0x77, 0x2, 0x7, 0x0, -1440, 0x53 } + case AVANDVI: + return &inst{ 0x57, 0x3, 0x0, 0x0, 576, 0x12 } + case AVANDVV: + return &inst{ 0x57, 0x0, 0x0, 0x0, 576, 0x12 } + case AVANDVX: + return &inst{ 0x57, 0x4, 0x0, 0x0, 576, 0x12 } + case AVANDNVV: + return &inst{ 0x57, 0x0, 0x0, 0x0, 64, 0x2 } + case AVANDNVX: + return &inst{ 0x57, 0x4, 0x0, 0x0, 64, 0x2 } + case AVASUBVV: + return &inst{ 0x57, 0x2, 0x0, 0x0, 704, 0x16 } + case AVASUBVX: + return &inst{ 0x57, 0x6, 0x0, 0x0, 704, 0x16 } + case AVASUBUVV: + return &inst{ 0x57, 0x2, 0x0, 0x0, 640, 0x14 } + case AVASUBUVX: + return &inst{ 0x57, 0x6, 0x0, 0x0, 640, 0x14 } + case AVBREV8V: + return &inst{ 0x57, 0x2, 0x8, 0x0, 1152, 0x24 } + case AVBREVV: + return &inst{ 0x57, 0x2, 0xa, 0x0, 1152, 0x24 } + case AVCLMULVV: + return &inst{ 0x57, 0x2, 0x0, 0x0, 768, 0x18 } + case AVCLMULVX: + return &inst{ 0x57, 0x6, 0x0, 0x0, 768, 0x18 } + case AVCLMULHVV: + return &inst{ 0x57, 0x2, 0x0, 0x0, 832, 0x1a } + case AVCLMULHVX: + return &inst{ 0x57, 0x6, 0x0, 0x0, 832, 0x1a } + case AVCLZV: + return &inst{ 0x57, 0x2, 0xc, 0x0, 1152, 0x24 } + case AVCOMPRESSVM: + return &inst{ 0x57, 0x2, 0x0, 0x0, 1504, 0x2f } + case AVCPOPM: + return &inst{ 0x57, 0x2, 0x10, 0x0, 1024, 0x20 } + case AVCPOPV: + return &inst{ 0x57, 0x2, 0xe, 0x0, 1152, 0x24 } + case AVCTZV: + return &inst{ 0x57, 0x2, 0xd, 0x0, 1152, 0x24 } + case AVDIVVV: + return &inst{ 0x57, 0x2, 0x0, 0x0, -1984, 0x42 } + case AVDIVVX: + return &inst{ 0x57, 0x6, 0x0, 0x0, -1984, 0x42 } + case AVDIVUVV: + return &inst{ 0x57, 0x2, 0x0, 0x0, -2048, 0x40 } + case AVDIVUVX: + return &inst{ 0x57, 0x6, 0x0, 0x0, -2048, 0x40 } + case AVFADDVF: + return &inst{ 0x57, 0x5, 0x0, 0x0, 0, 0x0 } + case AVFADDVV: + return &inst{ 0x57, 0x1, 0x0, 0x0, 0, 0x0 } + case AVFCLASSV: + return &inst{ 0x57, 0x1, 0x10, 0x0, 1216, 0x26 } + case AVFCVTFXV: + return &inst{ 0x57, 0x1, 0x3, 0x0, 1152, 0x24 } + case AVFCVTFXUV: + return &inst{ 0x57, 0x1, 0x2, 0x0, 1152, 0x24 } + case AVFCVTRTZXFV: + return &inst{ 0x57, 0x1, 0x7, 0x0, 1152, 0x24 } + case AVFCVTRTZXUFV: + return &inst{ 0x57, 0x1, 0x6, 0x0, 1152, 0x24 } + case AVFCVTXFV: + return &inst{ 0x57, 0x1, 0x1, 0x0, 1152, 0x24 } + case AVFCVTXUFV: + return &inst{ 0x57, 0x1, 0x0, 0x0, 1152, 0x24 } + case AVFDIVVF: + return &inst{ 0x57, 0x5, 0x0, 0x0, -2048, 0x40 } + case AVFDIVVV: + return &inst{ 0x57, 0x1, 0x0, 0x0, -2048, 0x40 } + case AVFIRSTM: + return &inst{ 0x57, 0x2, 0x11, 0x0, 1024, 0x20 } + case AVFMACCVF: + return &inst{ 0x57, 0x5, 0x0, 0x0, -1280, 0x58 } + case AVFMACCVV: + return &inst{ 0x57, 0x1, 0x0, 0x0, -1280, 0x58 } + case AVFMADDVF: + return &inst{ 0x57, 0x5, 0x0, 0x0, -1536, 0x50 } + case AVFMADDVV: + return &inst{ 0x57, 0x1, 0x0, 0x0, -1536, 0x50 } + case AVFMAXVF: + return &inst{ 0x57, 0x5, 0x0, 0x0, 384, 0xc } + case AVFMAXVV: + return &inst{ 0x57, 0x1, 0x0, 0x0, 384, 0xc } + case AVFMERGEVFM: + return &inst{ 0x57, 0x5, 0x0, 0x0, 1472, 0x2e } + case AVFMINVF: + return &inst{ 0x57, 0x5, 0x0, 0x0, 256, 0x8 } + case AVFMINVV: + return &inst{ 0x57, 0x1, 0x0, 0x0, 256, 0x8 } + case AVFMSACVF: + return &inst{ 0x57, 0x5, 0x0, 0x0, -1152, 0x5c } + case AVFMSACVV: + return &inst{ 0x57, 0x1, 0x0, 0x0, -1152, 0x5c } + case AVFMSUBVF: + return &inst{ 0x57, 0x5, 0x0, 0x0, -1408, 0x54 } + case AVFMSUBVV: + return &inst{ 0x57, 0x1, 0x0, 0x0, -1408, 0x54 } + case AVFMULVF: + return &inst{ 0x57, 0x5, 0x0, 0x0, -1792, 0x48 } + case AVFMULVV: + return &inst{ 0x57, 0x1, 0x0, 0x0, -1792, 0x48 } + case AVFMVFS: + return &inst{ 0x57, 0x1, 0x0, 0x0, 1056, 0x21 } + case AVFMVSF: + return &inst{ 0x57, 0x5, 0x0, 0x0, 1056, 0x21 } + case AVFMVVF: + return &inst{ 0x57, 0x5, 0x0, 0x0, 1504, 0x2f } + case AVFNCVTFFW: + return &inst{ 0x57, 0x1, 0x14, 0x0, 1152, 0x24 } + case AVFNCVTFXW: + return &inst{ 0x57, 0x1, 0x13, 0x0, 1152, 0x24 } + case AVFNCVTFXUW: + return &inst{ 0x57, 0x1, 0x12, 0x0, 1152, 0x24 } + case AVFNCVTRODFFW: + return &inst{ 0x57, 0x1, 0x15, 0x0, 1152, 0x24 } + case AVFNCVTRTZXFW: + return &inst{ 0x57, 0x1, 0x17, 0x0, 1152, 0x24 } + case AVFNCVTRTZXUFW: + return &inst{ 0x57, 0x1, 0x16, 0x0, 1152, 0x24 } + case AVFNCVTXFW: + return &inst{ 0x57, 0x1, 0x11, 0x0, 1152, 0x24 } + case AVFNCVTXUFW: + return &inst{ 0x57, 0x1, 0x10, 0x0, 1152, 0x24 } + case AVFNCVTBF16FFW: + return &inst{ 0x57, 0x1, 0x1d, 0x0, 1152, 0x24 } + case AVFNMACCVF: + return &inst{ 0x57, 0x5, 0x0, 0x0, -1216, 0x5a } + case AVFNMACCVV: + return &inst{ 0x57, 0x1, 0x0, 0x0, -1216, 0x5a } + case AVFNMADDVF: + return &inst{ 0x57, 0x5, 0x0, 0x0, -1472, 0x52 } + case AVFNMADDVV: + return &inst{ 0x57, 0x1, 0x0, 0x0, -1472, 0x52 } + case AVFNMSACVF: + return &inst{ 0x57, 0x5, 0x0, 0x0, -1088, 0x5e } + case AVFNMSACVV: + return &inst{ 0x57, 0x1, 0x0, 0x0, -1088, 0x5e } + case AVFNMSUBVF: + return &inst{ 0x57, 0x5, 0x0, 0x0, -1344, 0x56 } + case AVFNMSUBVV: + return &inst{ 0x57, 0x1, 0x0, 0x0, -1344, 0x56 } + case AVFRDIVVF: + return &inst{ 0x57, 0x5, 0x0, 0x0, -1984, 0x42 } + case AVFREC7V: + return &inst{ 0x57, 0x1, 0x5, 0x0, 1216, 0x26 } + case AVFREDMAXVS: + return &inst{ 0x57, 0x1, 0x0, 0x0, 448, 0xe } + case AVFREDMINVS: + return &inst{ 0x57, 0x1, 0x0, 0x0, 320, 0xa } + case AVFREDOSUMVS: + return &inst{ 0x57, 0x1, 0x0, 0x0, 192, 0x6 } + case AVFREDUSUMVS: + return &inst{ 0x57, 0x1, 0x0, 0x0, 64, 0x2 } + case AVFRSQRT7V: + return &inst{ 0x57, 0x1, 0x4, 0x0, 1216, 0x26 } + case AVFRSUBVF: + return &inst{ 0x57, 0x5, 0x0, 0x0, -1600, 0x4e } + case AVFSGNJVF: + return &inst{ 0x57, 0x5, 0x0, 0x0, 512, 0x10 } + case AVFSGNJVV: + return &inst{ 0x57, 0x1, 0x0, 0x0, 512, 0x10 } + case AVFSGNJNVF: + return &inst{ 0x57, 0x5, 0x0, 0x0, 576, 0x12 } + case AVFSGNJNVV: + return &inst{ 0x57, 0x1, 0x0, 0x0, 576, 0x12 } + case AVFSGNJXVF: + return &inst{ 0x57, 0x5, 0x0, 0x0, 640, 0x14 } + case AVFSGNJXVV: + return &inst{ 0x57, 0x1, 0x0, 0x0, 640, 0x14 } + case AVFSLIDE1DOWNVF: + return &inst{ 0x57, 0x5, 0x0, 0x0, 960, 0x1e } + case AVFSLIDE1UPVF: + return &inst{ 0x57, 0x5, 0x0, 0x0, 896, 0x1c } + case AVFSQRTV: + return &inst{ 0x57, 0x1, 0x0, 0x0, 1216, 0x26 } + case AVFSUBVF: + return &inst{ 0x57, 0x5, 0x0, 0x0, 128, 0x4 } + case AVFSUBVV: + return &inst{ 0x57, 0x1, 0x0, 0x0, 128, 0x4 } + case AVFWADDVF: + return &inst{ 0x57, 0x5, 0x0, 0x0, -1024, 0x60 } + case AVFWADDVV: + return &inst{ 0x57, 0x1, 0x0, 0x0, -1024, 0x60 } + case AVFWADDWF: + return &inst{ 0x57, 0x5, 0x0, 0x0, -768, 0x68 } + case AVFWADDWV: + return &inst{ 0x57, 0x1, 0x0, 0x0, -768, 0x68 } + case AVFWCVTFFV: + return &inst{ 0x57, 0x1, 0xc, 0x0, 1152, 0x24 } + case AVFWCVTFXV: + return &inst{ 0x57, 0x1, 0xb, 0x0, 1152, 0x24 } + case AVFWCVTFXUV: + return &inst{ 0x57, 0x1, 0xa, 0x0, 1152, 0x24 } + case AVFWCVTRTZXFV: + return &inst{ 0x57, 0x1, 0xf, 0x0, 1152, 0x24 } + case AVFWCVTRTZXUFV: + return &inst{ 0x57, 0x1, 0xe, 0x0, 1152, 0x24 } + case AVFWCVTXFV: + return &inst{ 0x57, 0x1, 0x9, 0x0, 1152, 0x24 } + case AVFWCVTXUFV: + return &inst{ 0x57, 0x1, 0x8, 0x0, 1152, 0x24 } + case AVFWCVTBF16FFV: + return &inst{ 0x57, 0x1, 0xd, 0x0, 1152, 0x24 } + case AVFWMACCVF: + return &inst{ 0x57, 0x5, 0x0, 0x0, -256, 0x78 } + case AVFWMACCVV: + return &inst{ 0x57, 0x1, 0x0, 0x0, -256, 0x78 } + case AVFWMACCBF16VF: + return &inst{ 0x57, 0x5, 0x0, 0x0, -320, 0x76 } + case AVFWMACCBF16VV: + return &inst{ 0x57, 0x1, 0x0, 0x0, -320, 0x76 } + case AVFWMSACVF: + return &inst{ 0x57, 0x5, 0x0, 0x0, -128, 0x7c } + case AVFWMSACVV: + return &inst{ 0x57, 0x1, 0x0, 0x0, -128, 0x7c } + case AVFWMULVF: + return &inst{ 0x57, 0x5, 0x0, 0x0, -512, 0x70 } + case AVFWMULVV: + return &inst{ 0x57, 0x1, 0x0, 0x0, -512, 0x70 } + case AVFWNMACCVF: + return &inst{ 0x57, 0x5, 0x0, 0x0, -192, 0x7a } + case AVFWNMACCVV: + return &inst{ 0x57, 0x1, 0x0, 0x0, -192, 0x7a } + case AVFWNMSACVF: + return &inst{ 0x57, 0x5, 0x0, 0x0, -64, 0x7e } + case AVFWNMSACVV: + return &inst{ 0x57, 0x1, 0x0, 0x0, -64, 0x7e } + case AVFWREDOSUMVS: + return &inst{ 0x57, 0x1, 0x0, 0x0, -832, 0x66 } + case AVFWREDUSUMVS: + return &inst{ 0x57, 0x1, 0x0, 0x0, -960, 0x62 } + case AVFWSUBVF: + return &inst{ 0x57, 0x5, 0x0, 0x0, -896, 0x64 } + case AVFWSUBVV: + return &inst{ 0x57, 0x1, 0x0, 0x0, -896, 0x64 } + case AVFWSUBWF: + return &inst{ 0x57, 0x5, 0x0, 0x0, -640, 0x6c } + case AVFWSUBWV: + return &inst{ 0x57, 0x1, 0x0, 0x0, -640, 0x6c } + case AVGHSHVV: + return &inst{ 0x77, 0x2, 0x0, 0x0, -1248, 0x59 } + case AVGMULVV: + return &inst{ 0x77, 0x2, 0x11, 0x0, -1504, 0x51 } + case AVIDV: + return &inst{ 0x57, 0x2, 0x11, 0x0, 1280, 0x28 } + case AVIOTAM: + return &inst{ 0x57, 0x2, 0x10, 0x0, 1280, 0x28 } + case AVL1RE16V: + return &inst{ 0x7, 0x5, 0x0, 0x8, 40, 0x1 } + case AVL1RE32V: + return &inst{ 0x7, 0x6, 0x0, 0x8, 40, 0x1 } + case AVL1RE64V: + return &inst{ 0x7, 0x7, 0x0, 0x8, 40, 0x1 } + case AVL1RE8V: + return &inst{ 0x7, 0x0, 0x0, 0x8, 40, 0x1 } + case AVL2RE16V: + return &inst{ 0x7, 0x5, 0x0, 0x8, 552, 0x11 } + case AVL2RE32V: + return &inst{ 0x7, 0x6, 0x0, 0x8, 552, 0x11 } + case AVL2RE64V: + return &inst{ 0x7, 0x7, 0x0, 0x8, 552, 0x11 } + case AVL2RE8V: + return &inst{ 0x7, 0x0, 0x0, 0x8, 552, 0x11 } + case AVL4RE16V: + return &inst{ 0x7, 0x5, 0x0, 0x8, 1576, 0x31 } + case AVL4RE32V: + return &inst{ 0x7, 0x6, 0x0, 0x8, 1576, 0x31 } + case AVL4RE64V: + return &inst{ 0x7, 0x7, 0x0, 0x8, 1576, 0x31 } + case AVL4RE8V: + return &inst{ 0x7, 0x0, 0x0, 0x8, 1576, 0x31 } + case AVL8RE16V: + return &inst{ 0x7, 0x5, 0x0, 0x8, -472, 0x71 } + case AVL8RE32V: + return &inst{ 0x7, 0x6, 0x0, 0x8, -472, 0x71 } + case AVL8RE64V: + return &inst{ 0x7, 0x7, 0x0, 0x8, -472, 0x71 } + case AVL8RE8V: + return &inst{ 0x7, 0x0, 0x0, 0x8, -472, 0x71 } + case AVLE16V: + return &inst{ 0x7, 0x5, 0x0, 0x0, 0, 0x0 } + case AVLE16FFV: + return &inst{ 0x7, 0x5, 0x0, 0x10, 16, 0x0 } + case AVLE32V: + return &inst{ 0x7, 0x6, 0x0, 0x0, 0, 0x0 } + case AVLE32FFV: + return &inst{ 0x7, 0x6, 0x0, 0x10, 16, 0x0 } + case AVLE64V: + return &inst{ 0x7, 0x7, 0x0, 0x0, 0, 0x0 } + case AVLE64FFV: + return &inst{ 0x7, 0x7, 0x0, 0x10, 16, 0x0 } + case AVLE8V: + return &inst{ 0x7, 0x0, 0x0, 0x0, 0, 0x0 } + case AVLE8FFV: + return &inst{ 0x7, 0x0, 0x0, 0x10, 16, 0x0 } + case AVLMV: + return &inst{ 0x7, 0x0, 0x0, 0xb, 43, 0x1 } + case AVLOXEI16V: + return &inst{ 0x7, 0x5, 0x0, 0x0, 192, 0x6 } + case AVLOXEI32V: + return &inst{ 0x7, 0x6, 0x0, 0x0, 192, 0x6 } + case AVLOXEI64V: + return &inst{ 0x7, 0x7, 0x0, 0x0, 192, 0x6 } + case AVLOXEI8V: + return &inst{ 0x7, 0x0, 0x0, 0x0, 192, 0x6 } + case AVLOXSEG2EI16V: + return &inst{ 0x7, 0x5, 0x0, 0x0, 704, 0x16 } + case AVLOXSEG2EI32V: + return &inst{ 0x7, 0x6, 0x0, 0x0, 704, 0x16 } + case AVLOXSEG2EI64V: + return &inst{ 0x7, 0x7, 0x0, 0x0, 704, 0x16 } + case AVLOXSEG2EI8V: + return &inst{ 0x7, 0x0, 0x0, 0x0, 704, 0x16 } + case AVLOXSEG3EI16V: + return &inst{ 0x7, 0x5, 0x0, 0x0, 1216, 0x26 } + case AVLOXSEG3EI32V: + return &inst{ 0x7, 0x6, 0x0, 0x0, 1216, 0x26 } + case AVLOXSEG3EI64V: + return &inst{ 0x7, 0x7, 0x0, 0x0, 1216, 0x26 } + case AVLOXSEG3EI8V: + return &inst{ 0x7, 0x0, 0x0, 0x0, 1216, 0x26 } + case AVLOXSEG4EI16V: + return &inst{ 0x7, 0x5, 0x0, 0x0, 1728, 0x36 } + case AVLOXSEG4EI32V: + return &inst{ 0x7, 0x6, 0x0, 0x0, 1728, 0x36 } + case AVLOXSEG4EI64V: + return &inst{ 0x7, 0x7, 0x0, 0x0, 1728, 0x36 } + case AVLOXSEG4EI8V: + return &inst{ 0x7, 0x0, 0x0, 0x0, 1728, 0x36 } + case AVLOXSEG5EI16V: + return &inst{ 0x7, 0x5, 0x0, 0x0, -1856, 0x46 } + case AVLOXSEG5EI32V: + return &inst{ 0x7, 0x6, 0x0, 0x0, -1856, 0x46 } + case AVLOXSEG5EI64V: + return &inst{ 0x7, 0x7, 0x0, 0x0, -1856, 0x46 } + case AVLOXSEG5EI8V: + return &inst{ 0x7, 0x0, 0x0, 0x0, -1856, 0x46 } + case AVLOXSEG6EI16V: + return &inst{ 0x7, 0x5, 0x0, 0x0, -1344, 0x56 } + case AVLOXSEG6EI32V: + return &inst{ 0x7, 0x6, 0x0, 0x0, -1344, 0x56 } + case AVLOXSEG6EI64V: + return &inst{ 0x7, 0x7, 0x0, 0x0, -1344, 0x56 } + case AVLOXSEG6EI8V: + return &inst{ 0x7, 0x0, 0x0, 0x0, -1344, 0x56 } + case AVLOXSEG7EI16V: + return &inst{ 0x7, 0x5, 0x0, 0x0, -832, 0x66 } + case AVLOXSEG7EI32V: + return &inst{ 0x7, 0x6, 0x0, 0x0, -832, 0x66 } + case AVLOXSEG7EI64V: + return &inst{ 0x7, 0x7, 0x0, 0x0, -832, 0x66 } + case AVLOXSEG7EI8V: + return &inst{ 0x7, 0x0, 0x0, 0x0, -832, 0x66 } + case AVLOXSEG8EI16V: + return &inst{ 0x7, 0x5, 0x0, 0x0, -320, 0x76 } + case AVLOXSEG8EI32V: + return &inst{ 0x7, 0x6, 0x0, 0x0, -320, 0x76 } + case AVLOXSEG8EI64V: + return &inst{ 0x7, 0x7, 0x0, 0x0, -320, 0x76 } + case AVLOXSEG8EI8V: + return &inst{ 0x7, 0x0, 0x0, 0x0, -320, 0x76 } + case AVLSE16V: + return &inst{ 0x7, 0x5, 0x0, 0x0, 128, 0x4 } + case AVLSE32V: + return &inst{ 0x7, 0x6, 0x0, 0x0, 128, 0x4 } + case AVLSE64V: + return &inst{ 0x7, 0x7, 0x0, 0x0, 128, 0x4 } + case AVLSE8V: + return &inst{ 0x7, 0x0, 0x0, 0x0, 128, 0x4 } + case AVLSEG2E16V: + return &inst{ 0x7, 0x5, 0x0, 0x0, 512, 0x10 } + case AVLSEG2E16FFV: + return &inst{ 0x7, 0x5, 0x0, 0x10, 528, 0x10 } + case AVLSEG2E32V: + return &inst{ 0x7, 0x6, 0x0, 0x0, 512, 0x10 } + case AVLSEG2E32FFV: + return &inst{ 0x7, 0x6, 0x0, 0x10, 528, 0x10 } + case AVLSEG2E64V: + return &inst{ 0x7, 0x7, 0x0, 0x0, 512, 0x10 } + case AVLSEG2E64FFV: + return &inst{ 0x7, 0x7, 0x0, 0x10, 528, 0x10 } + case AVLSEG2E8V: + return &inst{ 0x7, 0x0, 0x0, 0x0, 512, 0x10 } + case AVLSEG2E8FFV: + return &inst{ 0x7, 0x0, 0x0, 0x10, 528, 0x10 } + case AVLSEG3E16V: + return &inst{ 0x7, 0x5, 0x0, 0x0, 1024, 0x20 } + case AVLSEG3E16FFV: + return &inst{ 0x7, 0x5, 0x0, 0x10, 1040, 0x20 } + case AVLSEG3E32V: + return &inst{ 0x7, 0x6, 0x0, 0x0, 1024, 0x20 } + case AVLSEG3E32FFV: + return &inst{ 0x7, 0x6, 0x0, 0x10, 1040, 0x20 } + case AVLSEG3E64V: + return &inst{ 0x7, 0x7, 0x0, 0x0, 1024, 0x20 } + case AVLSEG3E64FFV: + return &inst{ 0x7, 0x7, 0x0, 0x10, 1040, 0x20 } + case AVLSEG3E8V: + return &inst{ 0x7, 0x0, 0x0, 0x0, 1024, 0x20 } + case AVLSEG3E8FFV: + return &inst{ 0x7, 0x0, 0x0, 0x10, 1040, 0x20 } + case AVLSEG4E16V: + return &inst{ 0x7, 0x5, 0x0, 0x0, 1536, 0x30 } + case AVLSEG4E16FFV: + return &inst{ 0x7, 0x5, 0x0, 0x10, 1552, 0x30 } + case AVLSEG4E32V: + return &inst{ 0x7, 0x6, 0x0, 0x0, 1536, 0x30 } + case AVLSEG4E32FFV: + return &inst{ 0x7, 0x6, 0x0, 0x10, 1552, 0x30 } + case AVLSEG4E64V: + return &inst{ 0x7, 0x7, 0x0, 0x0, 1536, 0x30 } + case AVLSEG4E64FFV: + return &inst{ 0x7, 0x7, 0x0, 0x10, 1552, 0x30 } + case AVLSEG4E8V: + return &inst{ 0x7, 0x0, 0x0, 0x0, 1536, 0x30 } + case AVLSEG4E8FFV: + return &inst{ 0x7, 0x0, 0x0, 0x10, 1552, 0x30 } + case AVLSEG5E16V: + return &inst{ 0x7, 0x5, 0x0, 0x0, -2048, 0x40 } + case AVLSEG5E16FFV: + return &inst{ 0x7, 0x5, 0x0, 0x10, -2032, 0x40 } + case AVLSEG5E32V: + return &inst{ 0x7, 0x6, 0x0, 0x0, -2048, 0x40 } + case AVLSEG5E32FFV: + return &inst{ 0x7, 0x6, 0x0, 0x10, -2032, 0x40 } + case AVLSEG5E64V: + return &inst{ 0x7, 0x7, 0x0, 0x0, -2048, 0x40 } + case AVLSEG5E64FFV: + return &inst{ 0x7, 0x7, 0x0, 0x10, -2032, 0x40 } + case AVLSEG5E8V: + return &inst{ 0x7, 0x0, 0x0, 0x0, -2048, 0x40 } + case AVLSEG5E8FFV: + return &inst{ 0x7, 0x0, 0x0, 0x10, -2032, 0x40 } + case AVLSEG6E16V: + return &inst{ 0x7, 0x5, 0x0, 0x0, -1536, 0x50 } + case AVLSEG6E16FFV: + return &inst{ 0x7, 0x5, 0x0, 0x10, -1520, 0x50 } + case AVLSEG6E32V: + return &inst{ 0x7, 0x6, 0x0, 0x0, -1536, 0x50 } + case AVLSEG6E32FFV: + return &inst{ 0x7, 0x6, 0x0, 0x10, -1520, 0x50 } + case AVLSEG6E64V: + return &inst{ 0x7, 0x7, 0x0, 0x0, -1536, 0x50 } + case AVLSEG6E64FFV: + return &inst{ 0x7, 0x7, 0x0, 0x10, -1520, 0x50 } + case AVLSEG6E8V: + return &inst{ 0x7, 0x0, 0x0, 0x0, -1536, 0x50 } + case AVLSEG6E8FFV: + return &inst{ 0x7, 0x0, 0x0, 0x10, -1520, 0x50 } + case AVLSEG7E16V: + return &inst{ 0x7, 0x5, 0x0, 0x0, -1024, 0x60 } + case AVLSEG7E16FFV: + return &inst{ 0x7, 0x5, 0x0, 0x10, -1008, 0x60 } + case AVLSEG7E32V: + return &inst{ 0x7, 0x6, 0x0, 0x0, -1024, 0x60 } + case AVLSEG7E32FFV: + return &inst{ 0x7, 0x6, 0x0, 0x10, -1008, 0x60 } + case AVLSEG7E64V: + return &inst{ 0x7, 0x7, 0x0, 0x0, -1024, 0x60 } + case AVLSEG7E64FFV: + return &inst{ 0x7, 0x7, 0x0, 0x10, -1008, 0x60 } + case AVLSEG7E8V: + return &inst{ 0x7, 0x0, 0x0, 0x0, -1024, 0x60 } + case AVLSEG7E8FFV: + return &inst{ 0x7, 0x0, 0x0, 0x10, -1008, 0x60 } + case AVLSEG8E16V: + return &inst{ 0x7, 0x5, 0x0, 0x0, -512, 0x70 } + case AVLSEG8E16FFV: + return &inst{ 0x7, 0x5, 0x0, 0x10, -496, 0x70 } + case AVLSEG8E32V: + return &inst{ 0x7, 0x6, 0x0, 0x0, -512, 0x70 } + case AVLSEG8E32FFV: + return &inst{ 0x7, 0x6, 0x0, 0x10, -496, 0x70 } + case AVLSEG8E64V: + return &inst{ 0x7, 0x7, 0x0, 0x0, -512, 0x70 } + case AVLSEG8E64FFV: + return &inst{ 0x7, 0x7, 0x0, 0x10, -496, 0x70 } + case AVLSEG8E8V: + return &inst{ 0x7, 0x0, 0x0, 0x0, -512, 0x70 } + case AVLSEG8E8FFV: + return &inst{ 0x7, 0x0, 0x0, 0x10, -496, 0x70 } + case AVLSSEG2E16V: + return &inst{ 0x7, 0x5, 0x0, 0x0, 640, 0x14 } + case AVLSSEG2E32V: + return &inst{ 0x7, 0x6, 0x0, 0x0, 640, 0x14 } + case AVLSSEG2E64V: + return &inst{ 0x7, 0x7, 0x0, 0x0, 640, 0x14 } + case AVLSSEG2E8V: + return &inst{ 0x7, 0x0, 0x0, 0x0, 640, 0x14 } + case AVLSSEG3E16V: + return &inst{ 0x7, 0x5, 0x0, 0x0, 1152, 0x24 } + case AVLSSEG3E32V: + return &inst{ 0x7, 0x6, 0x0, 0x0, 1152, 0x24 } + case AVLSSEG3E64V: + return &inst{ 0x7, 0x7, 0x0, 0x0, 1152, 0x24 } + case AVLSSEG3E8V: + return &inst{ 0x7, 0x0, 0x0, 0x0, 1152, 0x24 } + case AVLSSEG4E16V: + return &inst{ 0x7, 0x5, 0x0, 0x0, 1664, 0x34 } + case AVLSSEG4E32V: + return &inst{ 0x7, 0x6, 0x0, 0x0, 1664, 0x34 } + case AVLSSEG4E64V: + return &inst{ 0x7, 0x7, 0x0, 0x0, 1664, 0x34 } + case AVLSSEG4E8V: + return &inst{ 0x7, 0x0, 0x0, 0x0, 1664, 0x34 } + case AVLSSEG5E16V: + return &inst{ 0x7, 0x5, 0x0, 0x0, -1920, 0x44 } + case AVLSSEG5E32V: + return &inst{ 0x7, 0x6, 0x0, 0x0, -1920, 0x44 } + case AVLSSEG5E64V: + return &inst{ 0x7, 0x7, 0x0, 0x0, -1920, 0x44 } + case AVLSSEG5E8V: + return &inst{ 0x7, 0x0, 0x0, 0x0, -1920, 0x44 } + case AVLSSEG6E16V: + return &inst{ 0x7, 0x5, 0x0, 0x0, -1408, 0x54 } + case AVLSSEG6E32V: + return &inst{ 0x7, 0x6, 0x0, 0x0, -1408, 0x54 } + case AVLSSEG6E64V: + return &inst{ 0x7, 0x7, 0x0, 0x0, -1408, 0x54 } + case AVLSSEG6E8V: + return &inst{ 0x7, 0x0, 0x0, 0x0, -1408, 0x54 } + case AVLSSEG7E16V: + return &inst{ 0x7, 0x5, 0x0, 0x0, -896, 0x64 } + case AVLSSEG7E32V: + return &inst{ 0x7, 0x6, 0x0, 0x0, -896, 0x64 } + case AVLSSEG7E64V: + return &inst{ 0x7, 0x7, 0x0, 0x0, -896, 0x64 } + case AVLSSEG7E8V: + return &inst{ 0x7, 0x0, 0x0, 0x0, -896, 0x64 } + case AVLSSEG8E16V: + return &inst{ 0x7, 0x5, 0x0, 0x0, -384, 0x74 } + case AVLSSEG8E32V: + return &inst{ 0x7, 0x6, 0x0, 0x0, -384, 0x74 } + case AVLSSEG8E64V: + return &inst{ 0x7, 0x7, 0x0, 0x0, -384, 0x74 } + case AVLSSEG8E8V: + return &inst{ 0x7, 0x0, 0x0, 0x0, -384, 0x74 } + case AVLUXEI16V: + return &inst{ 0x7, 0x5, 0x0, 0x0, 64, 0x2 } + case AVLUXEI32V: + return &inst{ 0x7, 0x6, 0x0, 0x0, 64, 0x2 } + case AVLUXEI64V: + return &inst{ 0x7, 0x7, 0x0, 0x0, 64, 0x2 } + case AVLUXEI8V: + return &inst{ 0x7, 0x0, 0x0, 0x0, 64, 0x2 } + case AVLUXSEG2EI16V: + return &inst{ 0x7, 0x5, 0x0, 0x0, 576, 0x12 } + case AVLUXSEG2EI32V: + return &inst{ 0x7, 0x6, 0x0, 0x0, 576, 0x12 } + case AVLUXSEG2EI64V: + return &inst{ 0x7, 0x7, 0x0, 0x0, 576, 0x12 } + case AVLUXSEG2EI8V: + return &inst{ 0x7, 0x0, 0x0, 0x0, 576, 0x12 } + case AVLUXSEG3EI16V: + return &inst{ 0x7, 0x5, 0x0, 0x0, 1088, 0x22 } + case AVLUXSEG3EI32V: + return &inst{ 0x7, 0x6, 0x0, 0x0, 1088, 0x22 } + case AVLUXSEG3EI64V: + return &inst{ 0x7, 0x7, 0x0, 0x0, 1088, 0x22 } + case AVLUXSEG3EI8V: + return &inst{ 0x7, 0x0, 0x0, 0x0, 1088, 0x22 } + case AVLUXSEG4EI16V: + return &inst{ 0x7, 0x5, 0x0, 0x0, 1600, 0x32 } + case AVLUXSEG4EI32V: + return &inst{ 0x7, 0x6, 0x0, 0x0, 1600, 0x32 } + case AVLUXSEG4EI64V: + return &inst{ 0x7, 0x7, 0x0, 0x0, 1600, 0x32 } + case AVLUXSEG4EI8V: + return &inst{ 0x7, 0x0, 0x0, 0x0, 1600, 0x32 } + case AVLUXSEG5EI16V: + return &inst{ 0x7, 0x5, 0x0, 0x0, -1984, 0x42 } + case AVLUXSEG5EI32V: + return &inst{ 0x7, 0x6, 0x0, 0x0, -1984, 0x42 } + case AVLUXSEG5EI64V: + return &inst{ 0x7, 0x7, 0x0, 0x0, -1984, 0x42 } + case AVLUXSEG5EI8V: + return &inst{ 0x7, 0x0, 0x0, 0x0, -1984, 0x42 } + case AVLUXSEG6EI16V: + return &inst{ 0x7, 0x5, 0x0, 0x0, -1472, 0x52 } + case AVLUXSEG6EI32V: + return &inst{ 0x7, 0x6, 0x0, 0x0, -1472, 0x52 } + case AVLUXSEG6EI64V: + return &inst{ 0x7, 0x7, 0x0, 0x0, -1472, 0x52 } + case AVLUXSEG6EI8V: + return &inst{ 0x7, 0x0, 0x0, 0x0, -1472, 0x52 } + case AVLUXSEG7EI16V: + return &inst{ 0x7, 0x5, 0x0, 0x0, -960, 0x62 } + case AVLUXSEG7EI32V: + return &inst{ 0x7, 0x6, 0x0, 0x0, -960, 0x62 } + case AVLUXSEG7EI64V: + return &inst{ 0x7, 0x7, 0x0, 0x0, -960, 0x62 } + case AVLUXSEG7EI8V: + return &inst{ 0x7, 0x0, 0x0, 0x0, -960, 0x62 } + case AVLUXSEG8EI16V: + return &inst{ 0x7, 0x5, 0x0, 0x0, -448, 0x72 } + case AVLUXSEG8EI32V: + return &inst{ 0x7, 0x6, 0x0, 0x0, -448, 0x72 } + case AVLUXSEG8EI64V: + return &inst{ 0x7, 0x7, 0x0, 0x0, -448, 0x72 } + case AVLUXSEG8EI8V: + return &inst{ 0x7, 0x0, 0x0, 0x0, -448, 0x72 } + case AVMACCVV: + return &inst{ 0x57, 0x2, 0x0, 0x0, -1216, 0x5a } + case AVMACCVX: + return &inst{ 0x57, 0x6, 0x0, 0x0, -1216, 0x5a } + case AVMADCVI: + return &inst{ 0x57, 0x3, 0x0, 0x0, 1120, 0x23 } + case AVMADCVIM: + return &inst{ 0x57, 0x3, 0x0, 0x0, 1088, 0x22 } + case AVMADCVV: + return &inst{ 0x57, 0x0, 0x0, 0x0, 1120, 0x23 } + case AVMADCVVM: + return &inst{ 0x57, 0x0, 0x0, 0x0, 1088, 0x22 } + case AVMADCVX: + return &inst{ 0x57, 0x4, 0x0, 0x0, 1120, 0x23 } + case AVMADCVXM: + return &inst{ 0x57, 0x4, 0x0, 0x0, 1088, 0x22 } + case AVMADDVV: + return &inst{ 0x57, 0x2, 0x0, 0x0, -1472, 0x52 } + case AVMADDVX: + return &inst{ 0x57, 0x6, 0x0, 0x0, -1472, 0x52 } + case AVMANDMM: + return &inst{ 0x57, 0x2, 0x0, 0x0, 1632, 0x33 } + case AVMANDNMM: + return &inst{ 0x57, 0x2, 0x0, 0x0, 1568, 0x31 } + case AVMAXVV: + return &inst{ 0x57, 0x0, 0x0, 0x0, 448, 0xe } + case AVMAXVX: + return &inst{ 0x57, 0x4, 0x0, 0x0, 448, 0xe } + case AVMAXUVV: + return &inst{ 0x57, 0x0, 0x0, 0x0, 384, 0xc } + case AVMAXUVX: + return &inst{ 0x57, 0x4, 0x0, 0x0, 384, 0xc } + case AVMERGEVIM: + return &inst{ 0x57, 0x3, 0x0, 0x0, 1472, 0x2e } + case AVMERGEVVM: + return &inst{ 0x57, 0x0, 0x0, 0x0, 1472, 0x2e } + case AVMERGEVXM: + return &inst{ 0x57, 0x4, 0x0, 0x0, 1472, 0x2e } + case AVMFEQVF: + return &inst{ 0x57, 0x5, 0x0, 0x0, 1536, 0x30 } + case AVMFEQVV: + return &inst{ 0x57, 0x1, 0x0, 0x0, 1536, 0x30 } + case AVMFGEVF: + return &inst{ 0x57, 0x5, 0x0, 0x0, 1984, 0x3e } + case AVMFGTVF: + return &inst{ 0x57, 0x5, 0x0, 0x0, 1856, 0x3a } + case AVMFLEVF: + return &inst{ 0x57, 0x5, 0x0, 0x0, 1600, 0x32 } + case AVMFLEVV: + return &inst{ 0x57, 0x1, 0x0, 0x0, 1600, 0x32 } + case AVMFLTVF: + return &inst{ 0x57, 0x5, 0x0, 0x0, 1728, 0x36 } + case AVMFLTVV: + return &inst{ 0x57, 0x1, 0x0, 0x0, 1728, 0x36 } + case AVMFNEVF: + return &inst{ 0x57, 0x5, 0x0, 0x0, 1792, 0x38 } + case AVMFNEVV: + return &inst{ 0x57, 0x1, 0x0, 0x0, 1792, 0x38 } + case AVMINVV: + return &inst{ 0x57, 0x0, 0x0, 0x0, 320, 0xa } + case AVMINVX: + return &inst{ 0x57, 0x4, 0x0, 0x0, 320, 0xa } + case AVMINUVV: + return &inst{ 0x57, 0x0, 0x0, 0x0, 256, 0x8 } + case AVMINUVX: + return &inst{ 0x57, 0x4, 0x0, 0x0, 256, 0x8 } + case AVMNANDMM: + return &inst{ 0x57, 0x2, 0x0, 0x0, 1888, 0x3b } + case AVMNORMM: + return &inst{ 0x57, 0x2, 0x0, 0x0, 1952, 0x3d } + case AVMORMM: + return &inst{ 0x57, 0x2, 0x0, 0x0, 1696, 0x35 } + case AVMORNMM: + return &inst{ 0x57, 0x2, 0x0, 0x0, 1824, 0x39 } + case AVMSBCVV: + return &inst{ 0x57, 0x0, 0x0, 0x0, 1248, 0x27 } + case AVMSBCVVM: + return &inst{ 0x57, 0x0, 0x0, 0x0, 1216, 0x26 } + case AVMSBCVX: + return &inst{ 0x57, 0x4, 0x0, 0x0, 1248, 0x27 } + case AVMSBCVXM: + return &inst{ 0x57, 0x4, 0x0, 0x0, 1216, 0x26 } + case AVMSBFM: + return &inst{ 0x57, 0x2, 0x1, 0x0, 1280, 0x28 } + case AVMSEQVI: + return &inst{ 0x57, 0x3, 0x0, 0x0, 1536, 0x30 } + case AVMSEQVV: + return &inst{ 0x57, 0x0, 0x0, 0x0, 1536, 0x30 } + case AVMSEQVX: + return &inst{ 0x57, 0x4, 0x0, 0x0, 1536, 0x30 } + case AVMSGTVI: + return &inst{ 0x57, 0x3, 0x0, 0x0, 1984, 0x3e } + case AVMSGTVX: + return &inst{ 0x57, 0x4, 0x0, 0x0, 1984, 0x3e } + case AVMSGTUVI: + return &inst{ 0x57, 0x3, 0x0, 0x0, 1920, 0x3c } + case AVMSGTUVX: + return &inst{ 0x57, 0x4, 0x0, 0x0, 1920, 0x3c } + case AVMSIFM: + return &inst{ 0x57, 0x2, 0x3, 0x0, 1280, 0x28 } + case AVMSLEVI: + return &inst{ 0x57, 0x3, 0x0, 0x0, 1856, 0x3a } + case AVMSLEVV: + return &inst{ 0x57, 0x0, 0x0, 0x0, 1856, 0x3a } + case AVMSLEVX: + return &inst{ 0x57, 0x4, 0x0, 0x0, 1856, 0x3a } + case AVMSLEUVI: + return &inst{ 0x57, 0x3, 0x0, 0x0, 1792, 0x38 } + case AVMSLEUVV: + return &inst{ 0x57, 0x0, 0x0, 0x0, 1792, 0x38 } + case AVMSLEUVX: + return &inst{ 0x57, 0x4, 0x0, 0x0, 1792, 0x38 } + case AVMSLTVV: + return &inst{ 0x57, 0x0, 0x0, 0x0, 1728, 0x36 } + case AVMSLTVX: + return &inst{ 0x57, 0x4, 0x0, 0x0, 1728, 0x36 } + case AVMSLTUVV: + return &inst{ 0x57, 0x0, 0x0, 0x0, 1664, 0x34 } + case AVMSLTUVX: + return &inst{ 0x57, 0x4, 0x0, 0x0, 1664, 0x34 } + case AVMSNEVI: + return &inst{ 0x57, 0x3, 0x0, 0x0, 1600, 0x32 } + case AVMSNEVV: + return &inst{ 0x57, 0x0, 0x0, 0x0, 1600, 0x32 } + case AVMSNEVX: + return &inst{ 0x57, 0x4, 0x0, 0x0, 1600, 0x32 } + case AVMSOFM: + return &inst{ 0x57, 0x2, 0x2, 0x0, 1280, 0x28 } + case AVMULVV: + return &inst{ 0x57, 0x2, 0x0, 0x0, -1728, 0x4a } + case AVMULVX: + return &inst{ 0x57, 0x6, 0x0, 0x0, -1728, 0x4a } + case AVMULHVV: + return &inst{ 0x57, 0x2, 0x0, 0x0, -1600, 0x4e } + case AVMULHVX: + return &inst{ 0x57, 0x6, 0x0, 0x0, -1600, 0x4e } + case AVMULHSUVV: + return &inst{ 0x57, 0x2, 0x0, 0x0, -1664, 0x4c } + case AVMULHSUVX: + return &inst{ 0x57, 0x6, 0x0, 0x0, -1664, 0x4c } + case AVMULHUVV: + return &inst{ 0x57, 0x2, 0x0, 0x0, -1792, 0x48 } + case AVMULHUVX: + return &inst{ 0x57, 0x6, 0x0, 0x0, -1792, 0x48 } + case AVMV1RV: + return &inst{ 0x57, 0x3, 0x0, 0x0, -1568, 0x4f } + case AVMV2RV: + return &inst{ 0x57, 0x3, 0x1, 0x0, -1568, 0x4f } + case AVMV4RV: + return &inst{ 0x57, 0x3, 0x3, 0x0, -1568, 0x4f } + case AVMV8RV: + return &inst{ 0x57, 0x3, 0x7, 0x0, -1568, 0x4f } + case AVMVSX: + return &inst{ 0x57, 0x6, 0x0, 0x0, 1056, 0x21 } + case AVMVVI: + return &inst{ 0x57, 0x3, 0x0, 0x0, 1504, 0x2f } + case AVMVVV: + return &inst{ 0x57, 0x0, 0x0, 0x0, 1504, 0x2f } + case AVMVVX: + return &inst{ 0x57, 0x4, 0x0, 0x0, 1504, 0x2f } + case AVMVXS: + return &inst{ 0x57, 0x2, 0x0, 0x0, 1056, 0x21 } + case AVMXNORMM: + return &inst{ 0x57, 0x2, 0x0, 0x0, 2016, 0x3f } + case AVMXORMM: + return &inst{ 0x57, 0x2, 0x0, 0x0, 1760, 0x37 } + case AVNCLIPWI: + return &inst{ 0x57, 0x3, 0x0, 0x0, -1088, 0x5e } + case AVNCLIPWV: + return &inst{ 0x57, 0x0, 0x0, 0x0, -1088, 0x5e } + case AVNCLIPWX: + return &inst{ 0x57, 0x4, 0x0, 0x0, -1088, 0x5e } + case AVNCLIPUWI: + return &inst{ 0x57, 0x3, 0x0, 0x0, -1152, 0x5c } + case AVNCLIPUWV: + return &inst{ 0x57, 0x0, 0x0, 0x0, -1152, 0x5c } + case AVNCLIPUWX: + return &inst{ 0x57, 0x4, 0x0, 0x0, -1152, 0x5c } + case AVNMSACVV: + return &inst{ 0x57, 0x2, 0x0, 0x0, -1088, 0x5e } + case AVNMSACVX: + return &inst{ 0x57, 0x6, 0x0, 0x0, -1088, 0x5e } + case AVNMSUBVV: + return &inst{ 0x57, 0x2, 0x0, 0x0, -1344, 0x56 } + case AVNMSUBVX: + return &inst{ 0x57, 0x6, 0x0, 0x0, -1344, 0x56 } + case AVNSRAWI: + return &inst{ 0x57, 0x3, 0x0, 0x0, -1216, 0x5a } + case AVNSRAWV: + return &inst{ 0x57, 0x0, 0x0, 0x0, -1216, 0x5a } + case AVNSRAWX: + return &inst{ 0x57, 0x4, 0x0, 0x0, -1216, 0x5a } + case AVNSRLWI: + return &inst{ 0x57, 0x3, 0x0, 0x0, -1280, 0x58 } + case AVNSRLWV: + return &inst{ 0x57, 0x0, 0x0, 0x0, -1280, 0x58 } + case AVNSRLWX: + return &inst{ 0x57, 0x4, 0x0, 0x0, -1280, 0x58 } + case AVORVI: + return &inst{ 0x57, 0x3, 0x0, 0x0, 640, 0x14 } + case AVORVV: + return &inst{ 0x57, 0x0, 0x0, 0x0, 640, 0x14 } + case AVORVX: + return &inst{ 0x57, 0x4, 0x0, 0x0, 640, 0x14 } + case AVREDANDVS: + return &inst{ 0x57, 0x2, 0x0, 0x0, 64, 0x2 } + case AVREDMAXVS: + return &inst{ 0x57, 0x2, 0x0, 0x0, 448, 0xe } + case AVREDMAXUVS: + return &inst{ 0x57, 0x2, 0x0, 0x0, 384, 0xc } + case AVREDMINVS: + return &inst{ 0x57, 0x2, 0x0, 0x0, 320, 0xa } + case AVREDMINUVS: + return &inst{ 0x57, 0x2, 0x0, 0x0, 256, 0x8 } + case AVREDORVS: + return &inst{ 0x57, 0x2, 0x0, 0x0, 128, 0x4 } + case AVREDSUMVS: + return &inst{ 0x57, 0x2, 0x0, 0x0, 0, 0x0 } + case AVREDXORVS: + return &inst{ 0x57, 0x2, 0x0, 0x0, 192, 0x6 } + case AVREMVV: + return &inst{ 0x57, 0x2, 0x0, 0x0, -1856, 0x46 } + case AVREMVX: + return &inst{ 0x57, 0x6, 0x0, 0x0, -1856, 0x46 } + case AVREMUVV: + return &inst{ 0x57, 0x2, 0x0, 0x0, -1920, 0x44 } + case AVREMUVX: + return &inst{ 0x57, 0x6, 0x0, 0x0, -1920, 0x44 } + case AVREV8V: + return &inst{ 0x57, 0x2, 0x9, 0x0, 1152, 0x24 } + case AVRGATHERVI: + return &inst{ 0x57, 0x3, 0x0, 0x0, 768, 0x18 } + case AVRGATHERVV: + return &inst{ 0x57, 0x0, 0x0, 0x0, 768, 0x18 } + case AVRGATHERVX: + return &inst{ 0x57, 0x4, 0x0, 0x0, 768, 0x18 } + case AVRGATHEREI16VV: + return &inst{ 0x57, 0x0, 0x0, 0x0, 896, 0x1c } + case AVROLVV: + return &inst{ 0x57, 0x0, 0x0, 0x0, 1344, 0x2a } + case AVROLVX: + return &inst{ 0x57, 0x4, 0x0, 0x0, 1344, 0x2a } + case AVRORVI: + return &inst{ 0x57, 0x3, 0x0, 0x0, 1280, 0x28 } + case AVRORVV: + return &inst{ 0x57, 0x0, 0x0, 0x0, 1280, 0x28 } + case AVRORVX: + return &inst{ 0x57, 0x4, 0x0, 0x0, 1280, 0x28 } + case AVRSUBVI: + return &inst{ 0x57, 0x3, 0x0, 0x0, 192, 0x6 } + case AVRSUBVX: + return &inst{ 0x57, 0x4, 0x0, 0x0, 192, 0x6 } + case AVS1RV: + return &inst{ 0x27, 0x0, 0x0, 0x8, 40, 0x1 } + case AVS2RV: + return &inst{ 0x27, 0x0, 0x0, 0x8, 552, 0x11 } + case AVS4RV: + return &inst{ 0x27, 0x0, 0x0, 0x8, 1576, 0x31 } + case AVS8RV: + return &inst{ 0x27, 0x0, 0x0, 0x8, -472, 0x71 } + case AVSADDVI: + return &inst{ 0x57, 0x3, 0x0, 0x0, -1984, 0x42 } + case AVSADDVV: + return &inst{ 0x57, 0x0, 0x0, 0x0, -1984, 0x42 } + case AVSADDVX: + return &inst{ 0x57, 0x4, 0x0, 0x0, -1984, 0x42 } + case AVSADDUVI: + return &inst{ 0x57, 0x3, 0x0, 0x0, -2048, 0x40 } + case AVSADDUVV: + return &inst{ 0x57, 0x0, 0x0, 0x0, -2048, 0x40 } + case AVSADDUVX: + return &inst{ 0x57, 0x4, 0x0, 0x0, -2048, 0x40 } + case AVSBCVVM: + return &inst{ 0x57, 0x0, 0x0, 0x0, 1152, 0x24 } + case AVSBCVXM: + return &inst{ 0x57, 0x4, 0x0, 0x0, 1152, 0x24 } + case AVSE16V: + return &inst{ 0x27, 0x5, 0x0, 0x0, 0, 0x0 } + case AVSE32V: + return &inst{ 0x27, 0x6, 0x0, 0x0, 0, 0x0 } + case AVSE64V: + return &inst{ 0x27, 0x7, 0x0, 0x0, 0, 0x0 } + case AVSE8V: + return &inst{ 0x27, 0x0, 0x0, 0x0, 0, 0x0 } + case AVSETIVLI: + return &inst{ 0x57, 0x7, 0x0, 0x0, -1024, 0x60 } + case AVSETVL: + return &inst{ 0x57, 0x7, 0x0, 0x0, -2048, 0x40 } + case AVSETVLI: + return &inst{ 0x57, 0x7, 0x0, 0x0, 0, 0x0 } + case AVSEXTVF2: + return &inst{ 0x57, 0x2, 0x7, 0x0, 1152, 0x24 } + case AVSEXTVF4: + return &inst{ 0x57, 0x2, 0x5, 0x0, 1152, 0x24 } + case AVSEXTVF8: + return &inst{ 0x57, 0x2, 0x3, 0x0, 1152, 0x24 } + case AVSHA2CHVV: + return &inst{ 0x77, 0x2, 0x0, 0x0, -1120, 0x5d } + case AVSHA2CLVV: + return &inst{ 0x77, 0x2, 0x0, 0x0, -1056, 0x5f } + case AVSHA2MSVV: + return &inst{ 0x77, 0x2, 0x0, 0x0, -1184, 0x5b } + case AVSLIDE1DOWNVX: + return &inst{ 0x57, 0x6, 0x0, 0x0, 960, 0x1e } + case AVSLIDE1UPVX: + return &inst{ 0x57, 0x6, 0x0, 0x0, 896, 0x1c } + case AVSLIDEDOWNVI: + return &inst{ 0x57, 0x3, 0x0, 0x0, 960, 0x1e } + case AVSLIDEDOWNVX: + return &inst{ 0x57, 0x4, 0x0, 0x0, 960, 0x1e } + case AVSLIDEUPVI: + return &inst{ 0x57, 0x3, 0x0, 0x0, 896, 0x1c } + case AVSLIDEUPVX: + return &inst{ 0x57, 0x4, 0x0, 0x0, 896, 0x1c } + case AVSLLVI: + return &inst{ 0x57, 0x3, 0x0, 0x0, -1728, 0x4a } + case AVSLLVV: + return &inst{ 0x57, 0x0, 0x0, 0x0, -1728, 0x4a } + case AVSLLVX: + return &inst{ 0x57, 0x4, 0x0, 0x0, -1728, 0x4a } + case AVSM3CVI: + return &inst{ 0x77, 0x2, 0x0, 0x0, -1312, 0x57 } + case AVSM3MEVV: + return &inst{ 0x77, 0x2, 0x0, 0x0, -2016, 0x41 } + case AVSM4KVI: + return &inst{ 0x77, 0x2, 0x0, 0x0, -1952, 0x43 } + case AVSM4RVS: + return &inst{ 0x77, 0x2, 0x10, 0x0, -1440, 0x53 } + case AVSM4RVV: + return &inst{ 0x77, 0x2, 0x10, 0x0, -1504, 0x51 } + case AVSMV: + return &inst{ 0x27, 0x0, 0x0, 0xb, 43, 0x1 } + case AVSMULVV: + return &inst{ 0x57, 0x0, 0x0, 0x0, -1600, 0x4e } + case AVSMULVX: + return &inst{ 0x57, 0x4, 0x0, 0x0, -1600, 0x4e } + case AVSOXEI16V: + return &inst{ 0x27, 0x5, 0x0, 0x0, 192, 0x6 } + case AVSOXEI32V: + return &inst{ 0x27, 0x6, 0x0, 0x0, 192, 0x6 } + case AVSOXEI64V: + return &inst{ 0x27, 0x7, 0x0, 0x0, 192, 0x6 } + case AVSOXEI8V: + return &inst{ 0x27, 0x0, 0x0, 0x0, 192, 0x6 } + case AVSOXSEG2EI16V: + return &inst{ 0x27, 0x5, 0x0, 0x0, 704, 0x16 } + case AVSOXSEG2EI32V: + return &inst{ 0x27, 0x6, 0x0, 0x0, 704, 0x16 } + case AVSOXSEG2EI64V: + return &inst{ 0x27, 0x7, 0x0, 0x0, 704, 0x16 } + case AVSOXSEG2EI8V: + return &inst{ 0x27, 0x0, 0x0, 0x0, 704, 0x16 } + case AVSOXSEG3EI16V: + return &inst{ 0x27, 0x5, 0x0, 0x0, 1216, 0x26 } + case AVSOXSEG3EI32V: + return &inst{ 0x27, 0x6, 0x0, 0x0, 1216, 0x26 } + case AVSOXSEG3EI64V: + return &inst{ 0x27, 0x7, 0x0, 0x0, 1216, 0x26 } + case AVSOXSEG3EI8V: + return &inst{ 0x27, 0x0, 0x0, 0x0, 1216, 0x26 } + case AVSOXSEG4EI16V: + return &inst{ 0x27, 0x5, 0x0, 0x0, 1728, 0x36 } + case AVSOXSEG4EI32V: + return &inst{ 0x27, 0x6, 0x0, 0x0, 1728, 0x36 } + case AVSOXSEG4EI64V: + return &inst{ 0x27, 0x7, 0x0, 0x0, 1728, 0x36 } + case AVSOXSEG4EI8V: + return &inst{ 0x27, 0x0, 0x0, 0x0, 1728, 0x36 } + case AVSOXSEG5EI16V: + return &inst{ 0x27, 0x5, 0x0, 0x0, -1856, 0x46 } + case AVSOXSEG5EI32V: + return &inst{ 0x27, 0x6, 0x0, 0x0, -1856, 0x46 } + case AVSOXSEG5EI64V: + return &inst{ 0x27, 0x7, 0x0, 0x0, -1856, 0x46 } + case AVSOXSEG5EI8V: + return &inst{ 0x27, 0x0, 0x0, 0x0, -1856, 0x46 } + case AVSOXSEG6EI16V: + return &inst{ 0x27, 0x5, 0x0, 0x0, -1344, 0x56 } + case AVSOXSEG6EI32V: + return &inst{ 0x27, 0x6, 0x0, 0x0, -1344, 0x56 } + case AVSOXSEG6EI64V: + return &inst{ 0x27, 0x7, 0x0, 0x0, -1344, 0x56 } + case AVSOXSEG6EI8V: + return &inst{ 0x27, 0x0, 0x0, 0x0, -1344, 0x56 } + case AVSOXSEG7EI16V: + return &inst{ 0x27, 0x5, 0x0, 0x0, -832, 0x66 } + case AVSOXSEG7EI32V: + return &inst{ 0x27, 0x6, 0x0, 0x0, -832, 0x66 } + case AVSOXSEG7EI64V: + return &inst{ 0x27, 0x7, 0x0, 0x0, -832, 0x66 } + case AVSOXSEG7EI8V: + return &inst{ 0x27, 0x0, 0x0, 0x0, -832, 0x66 } + case AVSOXSEG8EI16V: + return &inst{ 0x27, 0x5, 0x0, 0x0, -320, 0x76 } + case AVSOXSEG8EI32V: + return &inst{ 0x27, 0x6, 0x0, 0x0, -320, 0x76 } + case AVSOXSEG8EI64V: + return &inst{ 0x27, 0x7, 0x0, 0x0, -320, 0x76 } + case AVSOXSEG8EI8V: + return &inst{ 0x27, 0x0, 0x0, 0x0, -320, 0x76 } + case AVSRAVI: + return &inst{ 0x57, 0x3, 0x0, 0x0, -1472, 0x52 } + case AVSRAVV: + return &inst{ 0x57, 0x0, 0x0, 0x0, -1472, 0x52 } + case AVSRAVX: + return &inst{ 0x57, 0x4, 0x0, 0x0, -1472, 0x52 } + case AVSRLVI: + return &inst{ 0x57, 0x3, 0x0, 0x0, -1536, 0x50 } + case AVSRLVV: + return &inst{ 0x57, 0x0, 0x0, 0x0, -1536, 0x50 } + case AVSRLVX: + return &inst{ 0x57, 0x4, 0x0, 0x0, -1536, 0x50 } + case AVSSE16V: + return &inst{ 0x27, 0x5, 0x0, 0x0, 128, 0x4 } + case AVSSE32V: + return &inst{ 0x27, 0x6, 0x0, 0x0, 128, 0x4 } + case AVSSE64V: + return &inst{ 0x27, 0x7, 0x0, 0x0, 128, 0x4 } + case AVSSE8V: + return &inst{ 0x27, 0x0, 0x0, 0x0, 128, 0x4 } + case AVSSEG2E16V: + return &inst{ 0x27, 0x5, 0x0, 0x0, 512, 0x10 } + case AVSSEG2E32V: + return &inst{ 0x27, 0x6, 0x0, 0x0, 512, 0x10 } + case AVSSEG2E64V: + return &inst{ 0x27, 0x7, 0x0, 0x0, 512, 0x10 } + case AVSSEG2E8V: + return &inst{ 0x27, 0x0, 0x0, 0x0, 512, 0x10 } + case AVSSEG3E16V: + return &inst{ 0x27, 0x5, 0x0, 0x0, 1024, 0x20 } + case AVSSEG3E32V: + return &inst{ 0x27, 0x6, 0x0, 0x0, 1024, 0x20 } + case AVSSEG3E64V: + return &inst{ 0x27, 0x7, 0x0, 0x0, 1024, 0x20 } + case AVSSEG3E8V: + return &inst{ 0x27, 0x0, 0x0, 0x0, 1024, 0x20 } + case AVSSEG4E16V: + return &inst{ 0x27, 0x5, 0x0, 0x0, 1536, 0x30 } + case AVSSEG4E32V: + return &inst{ 0x27, 0x6, 0x0, 0x0, 1536, 0x30 } + case AVSSEG4E64V: + return &inst{ 0x27, 0x7, 0x0, 0x0, 1536, 0x30 } + case AVSSEG4E8V: + return &inst{ 0x27, 0x0, 0x0, 0x0, 1536, 0x30 } + case AVSSEG5E16V: + return &inst{ 0x27, 0x5, 0x0, 0x0, -2048, 0x40 } + case AVSSEG5E32V: + return &inst{ 0x27, 0x6, 0x0, 0x0, -2048, 0x40 } + case AVSSEG5E64V: + return &inst{ 0x27, 0x7, 0x0, 0x0, -2048, 0x40 } + case AVSSEG5E8V: + return &inst{ 0x27, 0x0, 0x0, 0x0, -2048, 0x40 } + case AVSSEG6E16V: + return &inst{ 0x27, 0x5, 0x0, 0x0, -1536, 0x50 } + case AVSSEG6E32V: + return &inst{ 0x27, 0x6, 0x0, 0x0, -1536, 0x50 } + case AVSSEG6E64V: + return &inst{ 0x27, 0x7, 0x0, 0x0, -1536, 0x50 } + case AVSSEG6E8V: + return &inst{ 0x27, 0x0, 0x0, 0x0, -1536, 0x50 } + case AVSSEG7E16V: + return &inst{ 0x27, 0x5, 0x0, 0x0, -1024, 0x60 } + case AVSSEG7E32V: + return &inst{ 0x27, 0x6, 0x0, 0x0, -1024, 0x60 } + case AVSSEG7E64V: + return &inst{ 0x27, 0x7, 0x0, 0x0, -1024, 0x60 } + case AVSSEG7E8V: + return &inst{ 0x27, 0x0, 0x0, 0x0, -1024, 0x60 } + case AVSSEG8E16V: + return &inst{ 0x27, 0x5, 0x0, 0x0, -512, 0x70 } + case AVSSEG8E32V: + return &inst{ 0x27, 0x6, 0x0, 0x0, -512, 0x70 } + case AVSSEG8E64V: + return &inst{ 0x27, 0x7, 0x0, 0x0, -512, 0x70 } + case AVSSEG8E8V: + return &inst{ 0x27, 0x0, 0x0, 0x0, -512, 0x70 } + case AVSSRAVI: + return &inst{ 0x57, 0x3, 0x0, 0x0, -1344, 0x56 } + case AVSSRAVV: + return &inst{ 0x57, 0x0, 0x0, 0x0, -1344, 0x56 } + case AVSSRAVX: + return &inst{ 0x57, 0x4, 0x0, 0x0, -1344, 0x56 } + case AVSSRLVI: + return &inst{ 0x57, 0x3, 0x0, 0x0, -1408, 0x54 } + case AVSSRLVV: + return &inst{ 0x57, 0x0, 0x0, 0x0, -1408, 0x54 } + case AVSSRLVX: + return &inst{ 0x57, 0x4, 0x0, 0x0, -1408, 0x54 } + case AVSSSEG2E16V: + return &inst{ 0x27, 0x5, 0x0, 0x0, 640, 0x14 } + case AVSSSEG2E32V: + return &inst{ 0x27, 0x6, 0x0, 0x0, 640, 0x14 } + case AVSSSEG2E64V: + return &inst{ 0x27, 0x7, 0x0, 0x0, 640, 0x14 } + case AVSSSEG2E8V: + return &inst{ 0x27, 0x0, 0x0, 0x0, 640, 0x14 } + case AVSSSEG3E16V: + return &inst{ 0x27, 0x5, 0x0, 0x0, 1152, 0x24 } + case AVSSSEG3E32V: + return &inst{ 0x27, 0x6, 0x0, 0x0, 1152, 0x24 } + case AVSSSEG3E64V: + return &inst{ 0x27, 0x7, 0x0, 0x0, 1152, 0x24 } + case AVSSSEG3E8V: + return &inst{ 0x27, 0x0, 0x0, 0x0, 1152, 0x24 } + case AVSSSEG4E16V: + return &inst{ 0x27, 0x5, 0x0, 0x0, 1664, 0x34 } + case AVSSSEG4E32V: + return &inst{ 0x27, 0x6, 0x0, 0x0, 1664, 0x34 } + case AVSSSEG4E64V: + return &inst{ 0x27, 0x7, 0x0, 0x0, 1664, 0x34 } + case AVSSSEG4E8V: + return &inst{ 0x27, 0x0, 0x0, 0x0, 1664, 0x34 } + case AVSSSEG5E16V: + return &inst{ 0x27, 0x5, 0x0, 0x0, -1920, 0x44 } + case AVSSSEG5E32V: + return &inst{ 0x27, 0x6, 0x0, 0x0, -1920, 0x44 } + case AVSSSEG5E64V: + return &inst{ 0x27, 0x7, 0x0, 0x0, -1920, 0x44 } + case AVSSSEG5E8V: + return &inst{ 0x27, 0x0, 0x0, 0x0, -1920, 0x44 } + case AVSSSEG6E16V: + return &inst{ 0x27, 0x5, 0x0, 0x0, -1408, 0x54 } + case AVSSSEG6E32V: + return &inst{ 0x27, 0x6, 0x0, 0x0, -1408, 0x54 } + case AVSSSEG6E64V: + return &inst{ 0x27, 0x7, 0x0, 0x0, -1408, 0x54 } + case AVSSSEG6E8V: + return &inst{ 0x27, 0x0, 0x0, 0x0, -1408, 0x54 } + case AVSSSEG7E16V: + return &inst{ 0x27, 0x5, 0x0, 0x0, -896, 0x64 } + case AVSSSEG7E32V: + return &inst{ 0x27, 0x6, 0x0, 0x0, -896, 0x64 } + case AVSSSEG7E64V: + return &inst{ 0x27, 0x7, 0x0, 0x0, -896, 0x64 } + case AVSSSEG7E8V: + return &inst{ 0x27, 0x0, 0x0, 0x0, -896, 0x64 } + case AVSSSEG8E16V: + return &inst{ 0x27, 0x5, 0x0, 0x0, -384, 0x74 } + case AVSSSEG8E32V: + return &inst{ 0x27, 0x6, 0x0, 0x0, -384, 0x74 } + case AVSSSEG8E64V: + return &inst{ 0x27, 0x7, 0x0, 0x0, -384, 0x74 } + case AVSSSEG8E8V: + return &inst{ 0x27, 0x0, 0x0, 0x0, -384, 0x74 } + case AVSSUBVV: + return &inst{ 0x57, 0x0, 0x0, 0x0, -1856, 0x46 } + case AVSSUBVX: + return &inst{ 0x57, 0x4, 0x0, 0x0, -1856, 0x46 } + case AVSSUBUVV: + return &inst{ 0x57, 0x0, 0x0, 0x0, -1920, 0x44 } + case AVSSUBUVX: + return &inst{ 0x57, 0x4, 0x0, 0x0, -1920, 0x44 } + case AVSUBVV: + return &inst{ 0x57, 0x0, 0x0, 0x0, 128, 0x4 } + case AVSUBVX: + return &inst{ 0x57, 0x4, 0x0, 0x0, 128, 0x4 } + case AVSUXEI16V: + return &inst{ 0x27, 0x5, 0x0, 0x0, 64, 0x2 } + case AVSUXEI32V: + return &inst{ 0x27, 0x6, 0x0, 0x0, 64, 0x2 } + case AVSUXEI64V: + return &inst{ 0x27, 0x7, 0x0, 0x0, 64, 0x2 } + case AVSUXEI8V: + return &inst{ 0x27, 0x0, 0x0, 0x0, 64, 0x2 } + case AVSUXSEG2EI16V: + return &inst{ 0x27, 0x5, 0x0, 0x0, 576, 0x12 } + case AVSUXSEG2EI32V: + return &inst{ 0x27, 0x6, 0x0, 0x0, 576, 0x12 } + case AVSUXSEG2EI64V: + return &inst{ 0x27, 0x7, 0x0, 0x0, 576, 0x12 } + case AVSUXSEG2EI8V: + return &inst{ 0x27, 0x0, 0x0, 0x0, 576, 0x12 } + case AVSUXSEG3EI16V: + return &inst{ 0x27, 0x5, 0x0, 0x0, 1088, 0x22 } + case AVSUXSEG3EI32V: + return &inst{ 0x27, 0x6, 0x0, 0x0, 1088, 0x22 } + case AVSUXSEG3EI64V: + return &inst{ 0x27, 0x7, 0x0, 0x0, 1088, 0x22 } + case AVSUXSEG3EI8V: + return &inst{ 0x27, 0x0, 0x0, 0x0, 1088, 0x22 } + case AVSUXSEG4EI16V: + return &inst{ 0x27, 0x5, 0x0, 0x0, 1600, 0x32 } + case AVSUXSEG4EI32V: + return &inst{ 0x27, 0x6, 0x0, 0x0, 1600, 0x32 } + case AVSUXSEG4EI64V: + return &inst{ 0x27, 0x7, 0x0, 0x0, 1600, 0x32 } + case AVSUXSEG4EI8V: + return &inst{ 0x27, 0x0, 0x0, 0x0, 1600, 0x32 } + case AVSUXSEG5EI16V: + return &inst{ 0x27, 0x5, 0x0, 0x0, -1984, 0x42 } + case AVSUXSEG5EI32V: + return &inst{ 0x27, 0x6, 0x0, 0x0, -1984, 0x42 } + case AVSUXSEG5EI64V: + return &inst{ 0x27, 0x7, 0x0, 0x0, -1984, 0x42 } + case AVSUXSEG5EI8V: + return &inst{ 0x27, 0x0, 0x0, 0x0, -1984, 0x42 } + case AVSUXSEG6EI16V: + return &inst{ 0x27, 0x5, 0x0, 0x0, -1472, 0x52 } + case AVSUXSEG6EI32V: + return &inst{ 0x27, 0x6, 0x0, 0x0, -1472, 0x52 } + case AVSUXSEG6EI64V: + return &inst{ 0x27, 0x7, 0x0, 0x0, -1472, 0x52 } + case AVSUXSEG6EI8V: + return &inst{ 0x27, 0x0, 0x0, 0x0, -1472, 0x52 } + case AVSUXSEG7EI16V: + return &inst{ 0x27, 0x5, 0x0, 0x0, -960, 0x62 } + case AVSUXSEG7EI32V: + return &inst{ 0x27, 0x6, 0x0, 0x0, -960, 0x62 } + case AVSUXSEG7EI64V: + return &inst{ 0x27, 0x7, 0x0, 0x0, -960, 0x62 } + case AVSUXSEG7EI8V: + return &inst{ 0x27, 0x0, 0x0, 0x0, -960, 0x62 } + case AVSUXSEG8EI16V: + return &inst{ 0x27, 0x5, 0x0, 0x0, -448, 0x72 } + case AVSUXSEG8EI32V: + return &inst{ 0x27, 0x6, 0x0, 0x0, -448, 0x72 } + case AVSUXSEG8EI64V: + return &inst{ 0x27, 0x7, 0x0, 0x0, -448, 0x72 } + case AVSUXSEG8EI8V: + return &inst{ 0x27, 0x0, 0x0, 0x0, -448, 0x72 } + case AVWADDVV: + return &inst{ 0x57, 0x2, 0x0, 0x0, -960, 0x62 } + case AVWADDVX: + return &inst{ 0x57, 0x6, 0x0, 0x0, -960, 0x62 } + case AVWADDWV: + return &inst{ 0x57, 0x2, 0x0, 0x0, -704, 0x6a } + case AVWADDWX: + return &inst{ 0x57, 0x6, 0x0, 0x0, -704, 0x6a } + case AVWADDUVV: + return &inst{ 0x57, 0x2, 0x0, 0x0, -1024, 0x60 } + case AVWADDUVX: + return &inst{ 0x57, 0x6, 0x0, 0x0, -1024, 0x60 } + case AVWADDUWV: + return &inst{ 0x57, 0x2, 0x0, 0x0, -768, 0x68 } + case AVWADDUWX: + return &inst{ 0x57, 0x6, 0x0, 0x0, -768, 0x68 } + case AVWMACCVV: + return &inst{ 0x57, 0x2, 0x0, 0x0, -192, 0x7a } + case AVWMACCVX: + return &inst{ 0x57, 0x6, 0x0, 0x0, -192, 0x7a } + case AVWMACCSUVV: + return &inst{ 0x57, 0x2, 0x0, 0x0, -64, 0x7e } + case AVWMACCSUVX: + return &inst{ 0x57, 0x6, 0x0, 0x0, -64, 0x7e } + case AVWMACCUVV: + return &inst{ 0x57, 0x2, 0x0, 0x0, -256, 0x78 } + case AVWMACCUVX: + return &inst{ 0x57, 0x6, 0x0, 0x0, -256, 0x78 } + case AVWMACCUSVX: + return &inst{ 0x57, 0x6, 0x0, 0x0, -128, 0x7c } + case AVWMULVV: + return &inst{ 0x57, 0x2, 0x0, 0x0, -320, 0x76 } + case AVWMULVX: + return &inst{ 0x57, 0x6, 0x0, 0x0, -320, 0x76 } + case AVWMULSUVV: + return &inst{ 0x57, 0x2, 0x0, 0x0, -384, 0x74 } + case AVWMULSUVX: + return &inst{ 0x57, 0x6, 0x0, 0x0, -384, 0x74 } + case AVWMULUVV: + return &inst{ 0x57, 0x2, 0x0, 0x0, -512, 0x70 } + case AVWMULUVX: + return &inst{ 0x57, 0x6, 0x0, 0x0, -512, 0x70 } + case AVWREDSUMVS: + return &inst{ 0x57, 0x0, 0x0, 0x0, -960, 0x62 } + case AVWREDSUMUVS: + return &inst{ 0x57, 0x0, 0x0, 0x0, -1024, 0x60 } + case AVWSLLVI: + return &inst{ 0x57, 0x3, 0x0, 0x0, -704, 0x6a } + case AVWSLLVV: + return &inst{ 0x57, 0x0, 0x0, 0x0, -704, 0x6a } + case AVWSLLVX: + return &inst{ 0x57, 0x4, 0x0, 0x0, -704, 0x6a } + case AVWSUBVV: + return &inst{ 0x57, 0x2, 0x0, 0x0, -832, 0x66 } + case AVWSUBVX: + return &inst{ 0x57, 0x6, 0x0, 0x0, -832, 0x66 } + case AVWSUBWV: + return &inst{ 0x57, 0x2, 0x0, 0x0, -576, 0x6e } + case AVWSUBWX: + return &inst{ 0x57, 0x6, 0x0, 0x0, -576, 0x6e } + case AVWSUBUVV: + return &inst{ 0x57, 0x2, 0x0, 0x0, -896, 0x64 } + case AVWSUBUVX: + return &inst{ 0x57, 0x6, 0x0, 0x0, -896, 0x64 } + case AVWSUBUWV: + return &inst{ 0x57, 0x2, 0x0, 0x0, -640, 0x6c } + case AVWSUBUWX: + return &inst{ 0x57, 0x6, 0x0, 0x0, -640, 0x6c } + case AVXORVI: + return &inst{ 0x57, 0x3, 0x0, 0x0, 704, 0x16 } + case AVXORVV: + return &inst{ 0x57, 0x0, 0x0, 0x0, 704, 0x16 } + case AVXORVX: + return &inst{ 0x57, 0x4, 0x0, 0x0, 704, 0x16 } + case AVZEXTVF2: + return &inst{ 0x57, 0x2, 0x6, 0x0, 1152, 0x24 } + case AVZEXTVF4: + return &inst{ 0x57, 0x2, 0x4, 0x0, 1152, 0x24 } + case AVZEXTVF8: + return &inst{ 0x57, 0x2, 0x2, 0x0, 1152, 0x24 } + case AWFI: + return &inst{ 0x73, 0x0, 0x0, 0x5, 261, 0x8 } + case AWRSNTO: + return &inst{ 0x73, 0x0, 0x0, 0xd, 13, 0x0 } + case AWRSSTO: + return &inst{ 0x73, 0x0, 0x0, 0x1d, 29, 0x0 } + case AXNOR: + return &inst{ 0x33, 0x4, 0x0, 0x0, 1024, 0x20 } + case AXOR: + return &inst{ 0x33, 0x4, 0x0, 0x0, 0, 0x0 } + case AXORI: + return &inst{ 0x13, 0x4, 0x0, 0x0, 0, 0x0 } + case AXPERM4: + return &inst{ 0x33, 0x2, 0x0, 0x0, 640, 0x14 } + case AXPERM8: + return &inst{ 0x33, 0x4, 0x0, 0x0, 640, 0x14 } + case AZEXTH: + return &inst{ 0x3b, 0x4, 0x0, 0x0, 128, 0x4 } + case AZIP: + return &inst{ 0x13, 0x1, 0x0, 0xf, 143, 0x4 } + } + return nil +} + +var csrs = map[uint16]string { +0x1 : "FFLAGS", +0x2 : "FRM", +0x3 : "FCSR", +0x7 : "UTVT", +0x8 : "VSTART", +0x9 : "VXSAT", +0xa : "VXRM", +0xf : "VCSR", +0x11 : "SSP", +0x15 : "SEED", +0x17 : "JVT", +0x45 : "UNXTI", +0x46 : "UINTSTATUS", +0x48 : "USCRATCHCSW", +0x49 : "USCRATCHCSWL", +0x100 : "SSTATUS", +0x102 : "SEDELEG", +0x103 : "SIDELEG", +0x104 : "SIE", +0x105 : "STVEC", +0x106 : "SCOUNTEREN", +0x107 : "STVT", +0x10a : "SENVCFG", +0x10c : "SSTATEEN0", +0x10d : "SSTATEEN1", +0x10e : "SSTATEEN2", +0x10f : "SSTATEEN3", +0x120 : "SCOUNTINHIBIT", +0x140 : "SSCRATCH", +0x141 : "SEPC", +0x142 : "SCAUSE", +0x143 : "STVAL", +0x144 : "SIP", +0x145 : "SNXTI", +0x146 : "SINTSTATUS", +0x148 : "SSCRATCHCSW", +0x149 : "SSCRATCHCSWL", +0x14d : "STIMECMP", +0x14e : "SCTRCTL", +0x14f : "SCTRSTATUS", +0x150 : "SISELECT", +0x151 : "SIREG", +0x152 : "SIREG2", +0x153 : "SIREG3", +0x155 : "SIREG4", +0x156 : "SIREG5", +0x157 : "SIREG6", +0x15c : "STOPEI", +0x15f : "SCTRDEPTH", +0x180 : "SATP", +0x181 : "SRMCFG", +0x200 : "VSSTATUS", +0x204 : "VSIE", +0x205 : "VSTVEC", +0x240 : "VSSCRATCH", +0x241 : "VSEPC", +0x242 : "VSCAUSE", +0x243 : "VSTVAL", +0x244 : "VSIP", +0x24d : "VSTIMECMP", +0x24e : "VSCTRCTL", +0x250 : "VSISELECT", +0x251 : "VSIREG", +0x252 : "VSIREG2", +0x253 : "VSIREG3", +0x255 : "VSIREG4", +0x256 : "VSIREG5", +0x257 : "VSIREG6", +0x25c : "VSTOPEI", +0x280 : "VSATP", +0x300 : "MSTATUS", +0x301 : "MISA", +0x302 : "MEDELEG", +0x303 : "MIDELEG", +0x304 : "MIE", +0x305 : "MTVEC", +0x306 : "MCOUNTEREN", +0x307 : "MTVT", +0x308 : "MVIEN", +0x309 : "MVIP", +0x30a : "MENVCFG", +0x30c : "MSTATEEN0", +0x30d : "MSTATEEN1", +0x30e : "MSTATEEN2", +0x30f : "MSTATEEN3", +0x320 : "MCOUNTINHIBIT", +0x321 : "MCYCLECFG", +0x322 : "MINSTRETCFG", +0x323 : "MHPMEVENT3", +0x324 : "MHPMEVENT4", +0x325 : "MHPMEVENT5", +0x326 : "MHPMEVENT6", +0x327 : "MHPMEVENT7", +0x328 : "MHPMEVENT8", +0x329 : "MHPMEVENT9", +0x32a : "MHPMEVENT10", +0x32b : "MHPMEVENT11", +0x32c : "MHPMEVENT12", +0x32d : "MHPMEVENT13", +0x32e : "MHPMEVENT14", +0x32f : "MHPMEVENT15", +0x330 : "MHPMEVENT16", +0x331 : "MHPMEVENT17", +0x332 : "MHPMEVENT18", +0x333 : "MHPMEVENT19", +0x334 : "MHPMEVENT20", +0x335 : "MHPMEVENT21", +0x336 : "MHPMEVENT22", +0x337 : "MHPMEVENT23", +0x338 : "MHPMEVENT24", +0x339 : "MHPMEVENT25", +0x33a : "MHPMEVENT26", +0x33b : "MHPMEVENT27", +0x33c : "MHPMEVENT28", +0x33d : "MHPMEVENT29", +0x33e : "MHPMEVENT30", +0x33f : "MHPMEVENT31", +0x340 : "MSCRATCH", +0x341 : "MEPC", +0x342 : "MCAUSE", +0x343 : "MTVAL", +0x344 : "MIP", +0x345 : "MNXTI", +0x346 : "MINTSTATUS", +0x348 : "MSCRATCHCSW", +0x349 : "MSCRATCHCSWL", +0x34a : "MTINST", +0x34b : "MTVAL2", +0x34e : "MCTRCTL", +0x350 : "MISELECT", +0x351 : "MIREG", +0x352 : "MIREG2", +0x353 : "MIREG3", +0x355 : "MIREG4", +0x356 : "MIREG5", +0x357 : "MIREG6", +0x35c : "MTOPEI", +0x3a0 : "PMPCFG0", +0x3a1 : "PMPCFG1", +0x3a2 : "PMPCFG2", +0x3a3 : "PMPCFG3", +0x3a4 : "PMPCFG4", +0x3a5 : "PMPCFG5", +0x3a6 : "PMPCFG6", +0x3a7 : "PMPCFG7", +0x3a8 : "PMPCFG8", +0x3a9 : "PMPCFG9", +0x3aa : "PMPCFG10", +0x3ab : "PMPCFG11", +0x3ac : "PMPCFG12", +0x3ad : "PMPCFG13", +0x3ae : "PMPCFG14", +0x3af : "PMPCFG15", +0x3b0 : "PMPADDR0", +0x3b1 : "PMPADDR1", +0x3b2 : "PMPADDR2", +0x3b3 : "PMPADDR3", +0x3b4 : "PMPADDR4", +0x3b5 : "PMPADDR5", +0x3b6 : "PMPADDR6", +0x3b7 : "PMPADDR7", +0x3b8 : "PMPADDR8", +0x3b9 : "PMPADDR9", +0x3ba : "PMPADDR10", +0x3bb : "PMPADDR11", +0x3bc : "PMPADDR12", +0x3bd : "PMPADDR13", +0x3be : "PMPADDR14", +0x3bf : "PMPADDR15", +0x3c0 : "PMPADDR16", +0x3c1 : "PMPADDR17", +0x3c2 : "PMPADDR18", +0x3c3 : "PMPADDR19", +0x3c4 : "PMPADDR20", +0x3c5 : "PMPADDR21", +0x3c6 : "PMPADDR22", +0x3c7 : "PMPADDR23", +0x3c8 : "PMPADDR24", +0x3c9 : "PMPADDR25", +0x3ca : "PMPADDR26", +0x3cb : "PMPADDR27", +0x3cc : "PMPADDR28", +0x3cd : "PMPADDR29", +0x3ce : "PMPADDR30", +0x3cf : "PMPADDR31", +0x3d0 : "PMPADDR32", +0x3d1 : "PMPADDR33", +0x3d2 : "PMPADDR34", +0x3d3 : "PMPADDR35", +0x3d4 : "PMPADDR36", +0x3d5 : "PMPADDR37", +0x3d6 : "PMPADDR38", +0x3d7 : "PMPADDR39", +0x3d8 : "PMPADDR40", +0x3d9 : "PMPADDR41", +0x3da : "PMPADDR42", +0x3db : "PMPADDR43", +0x3dc : "PMPADDR44", +0x3dd : "PMPADDR45", +0x3de : "PMPADDR46", +0x3df : "PMPADDR47", +0x3e0 : "PMPADDR48", +0x3e1 : "PMPADDR49", +0x3e2 : "PMPADDR50", +0x3e3 : "PMPADDR51", +0x3e4 : "PMPADDR52", +0x3e5 : "PMPADDR53", +0x3e6 : "PMPADDR54", +0x3e7 : "PMPADDR55", +0x3e8 : "PMPADDR56", +0x3e9 : "PMPADDR57", +0x3ea : "PMPADDR58", +0x3eb : "PMPADDR59", +0x3ec : "PMPADDR60", +0x3ed : "PMPADDR61", +0x3ee : "PMPADDR62", +0x3ef : "PMPADDR63", +0x5a8 : "SCONTEXT", +0x600 : "HSTATUS", +0x602 : "HEDELEG", +0x603 : "HIDELEG", +0x604 : "HIE", +0x605 : "HTIMEDELTA", +0x606 : "HCOUNTEREN", +0x607 : "HGEIE", +0x608 : "HVIEN", +0x609 : "HVICTL", +0x60a : "HENVCFG", +0x60c : "HSTATEEN0", +0x60d : "HSTATEEN1", +0x60e : "HSTATEEN2", +0x60f : "HSTATEEN3", +0x643 : "HTVAL", +0x644 : "HIP", +0x645 : "HVIP", +0x646 : "HVIPRIO1", +0x647 : "HVIPRIO2", +0x64a : "HTINST", +0x680 : "HGATP", +0x6a8 : "HCONTEXT", +0x747 : "MSECCFG", +0x7a0 : "TSELECT", +0x7a1 : "TDATA1", +0x7a2 : "TDATA2", +0x7a3 : "TDATA3", +0x7a4 : "TINFO", +0x7a5 : "TCONTROL", +0x7a8 : "MCONTEXT", +0x7aa : "MSCONTEXT", +0x7b0 : "DCSR", +0x7b1 : "DPC", +0x7b2 : "DSCRATCH0", +0x7b3 : "DSCRATCH1", +0xb00 : "MCYCLE", +0xb02 : "MINSTRET", +0xb03 : "MHPMCOUNTER3", +0xb04 : "MHPMCOUNTER4", +0xb05 : "MHPMCOUNTER5", +0xb06 : "MHPMCOUNTER6", +0xb07 : "MHPMCOUNTER7", +0xb08 : "MHPMCOUNTER8", +0xb09 : "MHPMCOUNTER9", +0xb0a : "MHPMCOUNTER10", +0xb0b : "MHPMCOUNTER11", +0xb0c : "MHPMCOUNTER12", +0xb0d : "MHPMCOUNTER13", +0xb0e : "MHPMCOUNTER14", +0xb0f : "MHPMCOUNTER15", +0xb10 : "MHPMCOUNTER16", +0xb11 : "MHPMCOUNTER17", +0xb12 : "MHPMCOUNTER18", +0xb13 : "MHPMCOUNTER19", +0xb14 : "MHPMCOUNTER20", +0xb15 : "MHPMCOUNTER21", +0xb16 : "MHPMCOUNTER22", +0xb17 : "MHPMCOUNTER23", +0xb18 : "MHPMCOUNTER24", +0xb19 : "MHPMCOUNTER25", +0xb1a : "MHPMCOUNTER26", +0xb1b : "MHPMCOUNTER27", +0xb1c : "MHPMCOUNTER28", +0xb1d : "MHPMCOUNTER29", +0xb1e : "MHPMCOUNTER30", +0xb1f : "MHPMCOUNTER31", +0xc00 : "CYCLE", +0xc01 : "TIME", +0xc02 : "INSTRET", +0xc03 : "HPMCOUNTER3", +0xc04 : "HPMCOUNTER4", +0xc05 : "HPMCOUNTER5", +0xc06 : "HPMCOUNTER6", +0xc07 : "HPMCOUNTER7", +0xc08 : "HPMCOUNTER8", +0xc09 : "HPMCOUNTER9", +0xc0a : "HPMCOUNTER10", +0xc0b : "HPMCOUNTER11", +0xc0c : "HPMCOUNTER12", +0xc0d : "HPMCOUNTER13", +0xc0e : "HPMCOUNTER14", +0xc0f : "HPMCOUNTER15", +0xc10 : "HPMCOUNTER16", +0xc11 : "HPMCOUNTER17", +0xc12 : "HPMCOUNTER18", +0xc13 : "HPMCOUNTER19", +0xc14 : "HPMCOUNTER20", +0xc15 : "HPMCOUNTER21", +0xc16 : "HPMCOUNTER22", +0xc17 : "HPMCOUNTER23", +0xc18 : "HPMCOUNTER24", +0xc19 : "HPMCOUNTER25", +0xc1a : "HPMCOUNTER26", +0xc1b : "HPMCOUNTER27", +0xc1c : "HPMCOUNTER28", +0xc1d : "HPMCOUNTER29", +0xc1e : "HPMCOUNTER30", +0xc1f : "HPMCOUNTER31", +0xc20 : "VL", +0xc21 : "VTYPE", +0xc22 : "VLENB", +0xda0 : "SCOUNTOVF", +0xdb0 : "STOPI", +0xe12 : "HGEIP", +0xeb0 : "VSTOPI", +0xf11 : "MVENDORID", +0xf12 : "MARCHID", +0xf13 : "MIMPID", +0xf14 : "MHARTID", +0xf15 : "MCONFIGPTR", +0xfb0 : "MTOPI", +} diff --git a/backends/opcodes_maker/output/inst.rs b/backends/opcodes_maker/output/inst.rs new file mode 100644 index 000000000..77b31b5b3 --- /dev/null +++ b/backends/opcodes_maker/output/inst.rs @@ -0,0 +1,2769 @@ + +/* Automatically generated by parse_opcodes */ +const MATCH_ADD: u32 = 0x33; +const MASK_ADD: u32 = 0xfe00707f; +const MATCH_ADD_UW: u32 = 0x800003b; +const MASK_ADD_UW: u32 = 0xfe00707f; +const MATCH_ADDI: u32 = 0x13; +const MASK_ADDI: u32 = 0x707f; +const MATCH_ADDIW: u32 = 0x1b; +const MASK_ADDIW: u32 = 0x707f; +const MATCH_ADDW: u32 = 0x3b; +const MASK_ADDW: u32 = 0xfe00707f; +const MATCH_AES32DSI: u32 = 0x2a000033; +const MASK_AES32DSI: u32 = 0x3e00707f; +const MATCH_AES32DSMI: u32 = 0x2e000033; +const MASK_AES32DSMI: u32 = 0x3e00707f; +const MATCH_AES32ESI: u32 = 0x22000033; +const MASK_AES32ESI: u32 = 0x3e00707f; +const MATCH_AES32ESMI: u32 = 0x26000033; +const MASK_AES32ESMI: u32 = 0x3e00707f; +const MATCH_AES64DS: u32 = 0x3a000033; +const MASK_AES64DS: u32 = 0xfe00707f; +const MATCH_AES64DSM: u32 = 0x3e000033; +const MASK_AES64DSM: u32 = 0xfe00707f; +const MATCH_AES64ES: u32 = 0x32000033; +const MASK_AES64ES: u32 = 0xfe00707f; +const MATCH_AES64ESM: u32 = 0x36000033; +const MASK_AES64ESM: u32 = 0xfe00707f; +const MATCH_AES64IM: u32 = 0x30001013; +const MASK_AES64IM: u32 = 0xfff0707f; +const MATCH_AES64KS1I: u32 = 0x31001013; +const MASK_AES64KS1I: u32 = 0xff00707f; +const MATCH_AES64KS2: u32 = 0x7e000033; +const MASK_AES64KS2: u32 = 0xfe00707f; +const MATCH_AMOADD_B: u32 = 0x2f; +const MASK_AMOADD_B: u32 = 0xf800707f; +const MATCH_AMOADD_D: u32 = 0x302f; +const MASK_AMOADD_D: u32 = 0xf800707f; +const MATCH_AMOADD_H: u32 = 0x102f; +const MASK_AMOADD_H: u32 = 0xf800707f; +const MATCH_AMOADD_W: u32 = 0x202f; +const MASK_AMOADD_W: u32 = 0xf800707f; +const MATCH_AMOAND_B: u32 = 0x6000002f; +const MASK_AMOAND_B: u32 = 0xf800707f; +const MATCH_AMOAND_D: u32 = 0x6000302f; +const MASK_AMOAND_D: u32 = 0xf800707f; +const MATCH_AMOAND_H: u32 = 0x6000102f; +const MASK_AMOAND_H: u32 = 0xf800707f; +const MATCH_AMOAND_W: u32 = 0x6000202f; +const MASK_AMOAND_W: u32 = 0xf800707f; +const MATCH_AMOCAS_B: u32 = 0x2800002f; +const MASK_AMOCAS_B: u32 = 0xf800707f; +const MATCH_AMOCAS_D: u32 = 0x2800302f; +const MASK_AMOCAS_D: u32 = 0xf800707f; +const MATCH_AMOCAS_H: u32 = 0x2800102f; +const MASK_AMOCAS_H: u32 = 0xf800707f; +const MATCH_AMOCAS_Q: u32 = 0x2800402f; +const MASK_AMOCAS_Q: u32 = 0xf800707f; +const MATCH_AMOCAS_W: u32 = 0x2800202f; +const MASK_AMOCAS_W: u32 = 0xf800707f; +const MATCH_AMOMAX_B: u32 = 0xa000002f; +const MASK_AMOMAX_B: u32 = 0xf800707f; +const MATCH_AMOMAX_D: u32 = 0xa000302f; +const MASK_AMOMAX_D: u32 = 0xf800707f; +const MATCH_AMOMAX_H: u32 = 0xa000102f; +const MASK_AMOMAX_H: u32 = 0xf800707f; +const MATCH_AMOMAX_W: u32 = 0xa000202f; +const MASK_AMOMAX_W: u32 = 0xf800707f; +const MATCH_AMOMAXU_B: u32 = 0xe000002f; +const MASK_AMOMAXU_B: u32 = 0xf800707f; +const MATCH_AMOMAXU_D: u32 = 0xe000302f; +const MASK_AMOMAXU_D: u32 = 0xf800707f; +const MATCH_AMOMAXU_H: u32 = 0xe000102f; +const MASK_AMOMAXU_H: u32 = 0xf800707f; +const MATCH_AMOMAXU_W: u32 = 0xe000202f; +const MASK_AMOMAXU_W: u32 = 0xf800707f; +const MATCH_AMOMIN_B: u32 = 0x8000002f; +const MASK_AMOMIN_B: u32 = 0xf800707f; +const MATCH_AMOMIN_D: u32 = 0x8000302f; +const MASK_AMOMIN_D: u32 = 0xf800707f; +const MATCH_AMOMIN_H: u32 = 0x8000102f; +const MASK_AMOMIN_H: u32 = 0xf800707f; +const MATCH_AMOMIN_W: u32 = 0x8000202f; +const MASK_AMOMIN_W: u32 = 0xf800707f; +const MATCH_AMOMINU_B: u32 = 0xc000002f; +const MASK_AMOMINU_B: u32 = 0xf800707f; +const MATCH_AMOMINU_D: u32 = 0xc000302f; +const MASK_AMOMINU_D: u32 = 0xf800707f; +const MATCH_AMOMINU_H: u32 = 0xc000102f; +const MASK_AMOMINU_H: u32 = 0xf800707f; +const MATCH_AMOMINU_W: u32 = 0xc000202f; +const MASK_AMOMINU_W: u32 = 0xf800707f; +const MATCH_AMOOR_B: u32 = 0x4000002f; +const MASK_AMOOR_B: u32 = 0xf800707f; +const MATCH_AMOOR_D: u32 = 0x4000302f; +const MASK_AMOOR_D: u32 = 0xf800707f; +const MATCH_AMOOR_H: u32 = 0x4000102f; +const MASK_AMOOR_H: u32 = 0xf800707f; +const MATCH_AMOOR_W: u32 = 0x4000202f; +const MASK_AMOOR_W: u32 = 0xf800707f; +const MATCH_AMOSWAP_B: u32 = 0x800002f; +const MASK_AMOSWAP_B: u32 = 0xf800707f; +const MATCH_AMOSWAP_D: u32 = 0x800302f; +const MASK_AMOSWAP_D: u32 = 0xf800707f; +const MATCH_AMOSWAP_H: u32 = 0x800102f; +const MASK_AMOSWAP_H: u32 = 0xf800707f; +const MATCH_AMOSWAP_W: u32 = 0x800202f; +const MASK_AMOSWAP_W: u32 = 0xf800707f; +const MATCH_AMOXOR_B: u32 = 0x2000002f; +const MASK_AMOXOR_B: u32 = 0xf800707f; +const MATCH_AMOXOR_D: u32 = 0x2000302f; +const MASK_AMOXOR_D: u32 = 0xf800707f; +const MATCH_AMOXOR_H: u32 = 0x2000102f; +const MASK_AMOXOR_H: u32 = 0xf800707f; +const MATCH_AMOXOR_W: u32 = 0x2000202f; +const MASK_AMOXOR_W: u32 = 0xf800707f; +const MATCH_AND: u32 = 0x7033; +const MASK_AND: u32 = 0xfe00707f; +const MATCH_ANDI: u32 = 0x7013; +const MASK_ANDI: u32 = 0x707f; +const MATCH_ANDN: u32 = 0x40007033; +const MASK_ANDN: u32 = 0xfe00707f; +const MATCH_AUIPC: u32 = 0x17; +const MASK_AUIPC: u32 = 0x7f; +const MATCH_BCLR: u32 = 0x48001033; +const MASK_BCLR: u32 = 0xfe00707f; +const MATCH_BCLRI: u32 = 0x48001013; +const MASK_BCLRI: u32 = 0xfc00707f; +const MATCH_BEQ: u32 = 0x63; +const MASK_BEQ: u32 = 0x707f; +const MATCH_BEXT: u32 = 0x48005033; +const MASK_BEXT: u32 = 0xfe00707f; +const MATCH_BEXTI: u32 = 0x48005013; +const MASK_BEXTI: u32 = 0xfc00707f; +const MATCH_BGE: u32 = 0x5063; +const MASK_BGE: u32 = 0x707f; +const MATCH_BGEU: u32 = 0x7063; +const MASK_BGEU: u32 = 0x707f; +const MATCH_BINV: u32 = 0x68001033; +const MASK_BINV: u32 = 0xfe00707f; +const MATCH_BINVI: u32 = 0x68001013; +const MASK_BINVI: u32 = 0xfc00707f; +const MATCH_BLT: u32 = 0x4063; +const MASK_BLT: u32 = 0x707f; +const MATCH_BLTU: u32 = 0x6063; +const MASK_BLTU: u32 = 0x707f; +const MATCH_BNE: u32 = 0x1063; +const MASK_BNE: u32 = 0x707f; +const MATCH_BREV8: u32 = 0x68705013; +const MASK_BREV8: u32 = 0xfff0707f; +const MATCH_BSET: u32 = 0x28001033; +const MASK_BSET: u32 = 0xfe00707f; +const MATCH_BSETI: u32 = 0x28001013; +const MASK_BSETI: u32 = 0xfc00707f; +const MATCH_C_ADD: u32 = 0x9002; +const MASK_C_ADD: u32 = 0xf003; +const MATCH_C_ADDI: u32 = 0x1; +const MASK_C_ADDI: u32 = 0xe003; +const MATCH_C_ADDI16SP: u32 = 0x6101; +const MASK_C_ADDI16SP: u32 = 0xef83; +const MATCH_C_ADDI4SPN: u32 = 0x0; +const MASK_C_ADDI4SPN: u32 = 0xe003; +const MATCH_C_ADDIW: u32 = 0x2001; +const MASK_C_ADDIW: u32 = 0xe003; +const MATCH_C_ADDW: u32 = 0x9c21; +const MASK_C_ADDW: u32 = 0xfc63; +const MATCH_C_AND: u32 = 0x8c61; +const MASK_C_AND: u32 = 0xfc63; +const MATCH_C_ANDI: u32 = 0x8801; +const MASK_C_ANDI: u32 = 0xec03; +const MATCH_C_BEQZ: u32 = 0xc001; +const MASK_C_BEQZ: u32 = 0xe003; +const MATCH_C_BNEZ: u32 = 0xe001; +const MASK_C_BNEZ: u32 = 0xe003; +const MATCH_C_EBREAK: u32 = 0x9002; +const MASK_C_EBREAK: u32 = 0xffff; +const MATCH_C_FLD: u32 = 0x2000; +const MASK_C_FLD: u32 = 0xe003; +const MATCH_C_FLDSP: u32 = 0x2002; +const MASK_C_FLDSP: u32 = 0xe003; +const MATCH_C_FLW: u32 = 0x6000; +const MASK_C_FLW: u32 = 0xe003; +const MATCH_C_FLWSP: u32 = 0x6002; +const MASK_C_FLWSP: u32 = 0xe003; +const MATCH_C_FSD: u32 = 0xa000; +const MASK_C_FSD: u32 = 0xe003; +const MATCH_C_FSDSP: u32 = 0xa002; +const MASK_C_FSDSP: u32 = 0xe003; +const MATCH_C_FSW: u32 = 0xe000; +const MASK_C_FSW: u32 = 0xe003; +const MATCH_C_FSWSP: u32 = 0xe002; +const MASK_C_FSWSP: u32 = 0xe003; +const MATCH_C_J: u32 = 0xa001; +const MASK_C_J: u32 = 0xe003; +const MATCH_C_JAL: u32 = 0x2001; +const MASK_C_JAL: u32 = 0xe003; +const MATCH_C_JALR: u32 = 0x9002; +const MASK_C_JALR: u32 = 0xf07f; +const MATCH_C_JR: u32 = 0x8002; +const MASK_C_JR: u32 = 0xf07f; +const MATCH_C_LBU: u32 = 0x8000; +const MASK_C_LBU: u32 = 0xfc03; +const MATCH_C_LD: u32 = 0x6000; +const MASK_C_LD: u32 = 0xe003; +const MATCH_C_LDSP: u32 = 0x6002; +const MASK_C_LDSP: u32 = 0xe003; +const MATCH_C_LI: u32 = 0x4001; +const MASK_C_LI: u32 = 0xe003; +const MATCH_C_LUI: u32 = 0x6001; +const MASK_C_LUI: u32 = 0xe003; +const MATCH_C_LW: u32 = 0x4000; +const MASK_C_LW: u32 = 0xe003; +const MATCH_C_LWSP: u32 = 0x4002; +const MASK_C_LWSP: u32 = 0xe003; +const MATCH_C_MUL: u32 = 0x9c41; +const MASK_C_MUL: u32 = 0xfc63; +const MATCH_C_MV: u32 = 0x8002; +const MASK_C_MV: u32 = 0xf003; +const MATCH_C_NOP: u32 = 0x1; +const MASK_C_NOP: u32 = 0xef83; +const MATCH_C_NOT: u32 = 0x9c75; +const MASK_C_NOT: u32 = 0xfc7f; +const MATCH_C_OR: u32 = 0x8c41; +const MASK_C_OR: u32 = 0xfc63; +const MATCH_C_SB: u32 = 0x8800; +const MASK_C_SB: u32 = 0xfc03; +const MATCH_C_SD: u32 = 0xe000; +const MASK_C_SD: u32 = 0xe003; +const MATCH_C_SDSP: u32 = 0xe002; +const MASK_C_SDSP: u32 = 0xe003; +const MATCH_C_SEXT_B: u32 = 0x9c65; +const MASK_C_SEXT_B: u32 = 0xfc7f; +const MATCH_C_SEXT_H: u32 = 0x9c6d; +const MASK_C_SEXT_H: u32 = 0xfc7f; +const MATCH_C_SLLI: u32 = 0x2; +const MASK_C_SLLI: u32 = 0xe003; +const MATCH_C_SRAI: u32 = 0x8401; +const MASK_C_SRAI: u32 = 0xec03; +const MATCH_C_SRLI: u32 = 0x8001; +const MASK_C_SRLI: u32 = 0xec03; +const MATCH_C_SUB: u32 = 0x8c01; +const MASK_C_SUB: u32 = 0xfc63; +const MATCH_C_SUBW: u32 = 0x9c01; +const MASK_C_SUBW: u32 = 0xfc63; +const MATCH_C_SW: u32 = 0xc000; +const MASK_C_SW: u32 = 0xe003; +const MATCH_C_SWSP: u32 = 0xc002; +const MASK_C_SWSP: u32 = 0xe003; +const MATCH_C_XOR: u32 = 0x8c21; +const MASK_C_XOR: u32 = 0xfc63; +const MATCH_C_ZEXT_B: u32 = 0x9c61; +const MASK_C_ZEXT_B: u32 = 0xfc7f; +const MATCH_C_ZEXT_H: u32 = 0x9c69; +const MASK_C_ZEXT_H: u32 = 0xfc7f; +const MATCH_C_ZEXT_W: u32 = 0x9c71; +const MASK_C_ZEXT_W: u32 = 0xfc7f; +const MATCH_CBO_CLEAN: u32 = 0x10200f; +const MASK_CBO_CLEAN: u32 = 0xfff07fff; +const MATCH_CBO_FLUSH: u32 = 0x20200f; +const MASK_CBO_FLUSH: u32 = 0xfff07fff; +const MATCH_CBO_INVAL: u32 = 0x200f; +const MASK_CBO_INVAL: u32 = 0xfff07fff; +const MATCH_CBO_ZERO: u32 = 0x40200f; +const MASK_CBO_ZERO: u32 = 0xfff07fff; +const MATCH_CLMUL: u32 = 0xa001033; +const MASK_CLMUL: u32 = 0xfe00707f; +const MATCH_CLMULH: u32 = 0xa003033; +const MASK_CLMULH: u32 = 0xfe00707f; +const MATCH_CLMULR: u32 = 0xa002033; +const MASK_CLMULR: u32 = 0xfe00707f; +const MATCH_CLZ: u32 = 0x60001013; +const MASK_CLZ: u32 = 0xfff0707f; +const MATCH_CLZW: u32 = 0x6000101b; +const MASK_CLZW: u32 = 0xfff0707f; +const MATCH_CM_MVA01S: u32 = 0xac62; +const MASK_CM_MVA01S: u32 = 0xfc63; +const MATCH_CM_MVSA01: u32 = 0xac22; +const MASK_CM_MVSA01: u32 = 0xfc63; +const MATCH_CM_POP: u32 = 0xba02; +const MASK_CM_POP: u32 = 0xff03; +const MATCH_CM_POPRET: u32 = 0xbe02; +const MASK_CM_POPRET: u32 = 0xff03; +const MATCH_CM_POPRETZ: u32 = 0xbc02; +const MASK_CM_POPRETZ: u32 = 0xff03; +const MATCH_CM_PUSH: u32 = 0xb802; +const MASK_CM_PUSH: u32 = 0xff03; +const MATCH_CPOP: u32 = 0x60201013; +const MASK_CPOP: u32 = 0xfff0707f; +const MATCH_CPOPW: u32 = 0x6020101b; +const MASK_CPOPW: u32 = 0xfff0707f; +const MATCH_CSRRC: u32 = 0x3073; +const MASK_CSRRC: u32 = 0x707f; +const MATCH_CSRRCI: u32 = 0x7073; +const MASK_CSRRCI: u32 = 0x707f; +const MATCH_CSRRS: u32 = 0x2073; +const MASK_CSRRS: u32 = 0x707f; +const MATCH_CSRRSI: u32 = 0x6073; +const MASK_CSRRSI: u32 = 0x707f; +const MATCH_CSRRW: u32 = 0x1073; +const MASK_CSRRW: u32 = 0x707f; +const MATCH_CSRRWI: u32 = 0x5073; +const MASK_CSRRWI: u32 = 0x707f; +const MATCH_CTZ: u32 = 0x60101013; +const MASK_CTZ: u32 = 0xfff0707f; +const MATCH_CTZW: u32 = 0x6010101b; +const MASK_CTZW: u32 = 0xfff0707f; +const MATCH_CZERO_EQZ: u32 = 0xe005033; +const MASK_CZERO_EQZ: u32 = 0xfe00707f; +const MATCH_CZERO_NEZ: u32 = 0xe007033; +const MASK_CZERO_NEZ: u32 = 0xfe00707f; +const MATCH_DIV: u32 = 0x2004033; +const MASK_DIV: u32 = 0xfe00707f; +const MATCH_DIVU: u32 = 0x2005033; +const MASK_DIVU: u32 = 0xfe00707f; +const MATCH_DIVUW: u32 = 0x200503b; +const MASK_DIVUW: u32 = 0xfe00707f; +const MATCH_DIVW: u32 = 0x200403b; +const MASK_DIVW: u32 = 0xfe00707f; +const MATCH_DRET: u32 = 0x7b200073; +const MASK_DRET: u32 = 0xffffffff; +const MATCH_EBREAK: u32 = 0x100073; +const MASK_EBREAK: u32 = 0xffffffff; +const MATCH_ECALL: u32 = 0x73; +const MASK_ECALL: u32 = 0xffffffff; +const MATCH_FADD_D: u32 = 0x2000053; +const MASK_FADD_D: u32 = 0xfe00007f; +const MATCH_FADD_H: u32 = 0x4000053; +const MASK_FADD_H: u32 = 0xfe00007f; +const MATCH_FADD_Q: u32 = 0x6000053; +const MASK_FADD_Q: u32 = 0xfe00007f; +const MATCH_FADD_S: u32 = 0x53; +const MASK_FADD_S: u32 = 0xfe00007f; +const MATCH_FCLASS_D: u32 = 0xe2001053; +const MASK_FCLASS_D: u32 = 0xfff0707f; +const MATCH_FCLASS_H: u32 = 0xe4001053; +const MASK_FCLASS_H: u32 = 0xfff0707f; +const MATCH_FCLASS_Q: u32 = 0xe6001053; +const MASK_FCLASS_Q: u32 = 0xfff0707f; +const MATCH_FCLASS_S: u32 = 0xe0001053; +const MASK_FCLASS_S: u32 = 0xfff0707f; +const MATCH_FCVT_BF16_S: u32 = 0x44800053; +const MASK_FCVT_BF16_S: u32 = 0xfff0007f; +const MATCH_FCVT_D_H: u32 = 0x42200053; +const MASK_FCVT_D_H: u32 = 0xfff0007f; +const MATCH_FCVT_D_L: u32 = 0xd2200053; +const MASK_FCVT_D_L: u32 = 0xfff0007f; +const MATCH_FCVT_D_LU: u32 = 0xd2300053; +const MASK_FCVT_D_LU: u32 = 0xfff0007f; +const MATCH_FCVT_D_Q: u32 = 0x42300053; +const MASK_FCVT_D_Q: u32 = 0xfff0007f; +const MATCH_FCVT_D_S: u32 = 0x42000053; +const MASK_FCVT_D_S: u32 = 0xfff0007f; +const MATCH_FCVT_D_W: u32 = 0xd2000053; +const MASK_FCVT_D_W: u32 = 0xfff0007f; +const MATCH_FCVT_D_WU: u32 = 0xd2100053; +const MASK_FCVT_D_WU: u32 = 0xfff0007f; +const MATCH_FCVT_H_D: u32 = 0x44100053; +const MASK_FCVT_H_D: u32 = 0xfff0007f; +const MATCH_FCVT_H_L: u32 = 0xd4200053; +const MASK_FCVT_H_L: u32 = 0xfff0007f; +const MATCH_FCVT_H_LU: u32 = 0xd4300053; +const MASK_FCVT_H_LU: u32 = 0xfff0007f; +const MATCH_FCVT_H_Q: u32 = 0x44300053; +const MASK_FCVT_H_Q: u32 = 0xfff0007f; +const MATCH_FCVT_H_S: u32 = 0x44000053; +const MASK_FCVT_H_S: u32 = 0xfff0007f; +const MATCH_FCVT_H_W: u32 = 0xd4000053; +const MASK_FCVT_H_W: u32 = 0xfff0007f; +const MATCH_FCVT_H_WU: u32 = 0xd4100053; +const MASK_FCVT_H_WU: u32 = 0xfff0007f; +const MATCH_FCVT_L_D: u32 = 0xc2200053; +const MASK_FCVT_L_D: u32 = 0xfff0007f; +const MATCH_FCVT_L_H: u32 = 0xc4200053; +const MASK_FCVT_L_H: u32 = 0xfff0007f; +const MATCH_FCVT_L_Q: u32 = 0xc6200053; +const MASK_FCVT_L_Q: u32 = 0xfff0007f; +const MATCH_FCVT_L_S: u32 = 0xc0200053; +const MASK_FCVT_L_S: u32 = 0xfff0007f; +const MATCH_FCVT_LU_D: u32 = 0xc2300053; +const MASK_FCVT_LU_D: u32 = 0xfff0007f; +const MATCH_FCVT_LU_H: u32 = 0xc4300053; +const MASK_FCVT_LU_H: u32 = 0xfff0007f; +const MATCH_FCVT_LU_Q: u32 = 0xc6300053; +const MASK_FCVT_LU_Q: u32 = 0xfff0007f; +const MATCH_FCVT_LU_S: u32 = 0xc0300053; +const MASK_FCVT_LU_S: u32 = 0xfff0007f; +const MATCH_FCVT_Q_D: u32 = 0x46100053; +const MASK_FCVT_Q_D: u32 = 0xfff0007f; +const MATCH_FCVT_Q_H: u32 = 0x46200053; +const MASK_FCVT_Q_H: u32 = 0xfff0007f; +const MATCH_FCVT_Q_L: u32 = 0xd6200053; +const MASK_FCVT_Q_L: u32 = 0xfff0007f; +const MATCH_FCVT_Q_LU: u32 = 0xd6300053; +const MASK_FCVT_Q_LU: u32 = 0xfff0007f; +const MATCH_FCVT_Q_S: u32 = 0x46000053; +const MASK_FCVT_Q_S: u32 = 0xfff0007f; +const MATCH_FCVT_Q_W: u32 = 0xd6000053; +const MASK_FCVT_Q_W: u32 = 0xfff0007f; +const MATCH_FCVT_Q_WU: u32 = 0xd6100053; +const MASK_FCVT_Q_WU: u32 = 0xfff0007f; +const MATCH_FCVT_S_BF16: u32 = 0x40600053; +const MASK_FCVT_S_BF16: u32 = 0xfff0007f; +const MATCH_FCVT_S_D: u32 = 0x40100053; +const MASK_FCVT_S_D: u32 = 0xfff0007f; +const MATCH_FCVT_S_H: u32 = 0x40200053; +const MASK_FCVT_S_H: u32 = 0xfff0007f; +const MATCH_FCVT_S_L: u32 = 0xd0200053; +const MASK_FCVT_S_L: u32 = 0xfff0007f; +const MATCH_FCVT_S_LU: u32 = 0xd0300053; +const MASK_FCVT_S_LU: u32 = 0xfff0007f; +const MATCH_FCVT_S_Q: u32 = 0x40300053; +const MASK_FCVT_S_Q: u32 = 0xfff0007f; +const MATCH_FCVT_S_W: u32 = 0xd0000053; +const MASK_FCVT_S_W: u32 = 0xfff0007f; +const MATCH_FCVT_S_WU: u32 = 0xd0100053; +const MASK_FCVT_S_WU: u32 = 0xfff0007f; +const MATCH_FCVT_W_D: u32 = 0xc2000053; +const MASK_FCVT_W_D: u32 = 0xfff0007f; +const MATCH_FCVT_W_H: u32 = 0xc4000053; +const MASK_FCVT_W_H: u32 = 0xfff0007f; +const MATCH_FCVT_W_Q: u32 = 0xc6000053; +const MASK_FCVT_W_Q: u32 = 0xfff0007f; +const MATCH_FCVT_W_S: u32 = 0xc0000053; +const MASK_FCVT_W_S: u32 = 0xfff0007f; +const MATCH_FCVT_WU_D: u32 = 0xc2100053; +const MASK_FCVT_WU_D: u32 = 0xfff0007f; +const MATCH_FCVT_WU_H: u32 = 0xc4100053; +const MASK_FCVT_WU_H: u32 = 0xfff0007f; +const MATCH_FCVT_WU_Q: u32 = 0xc6100053; +const MASK_FCVT_WU_Q: u32 = 0xfff0007f; +const MATCH_FCVT_WU_S: u32 = 0xc0100053; +const MASK_FCVT_WU_S: u32 = 0xfff0007f; +const MATCH_FCVTMOD_W_D: u32 = 0xc2801053; +const MASK_FCVTMOD_W_D: u32 = 0xfff0707f; +const MATCH_FDIV_D: u32 = 0x1a000053; +const MASK_FDIV_D: u32 = 0xfe00007f; +const MATCH_FDIV_H: u32 = 0x1c000053; +const MASK_FDIV_H: u32 = 0xfe00007f; +const MATCH_FDIV_Q: u32 = 0x1e000053; +const MASK_FDIV_Q: u32 = 0xfe00007f; +const MATCH_FDIV_S: u32 = 0x18000053; +const MASK_FDIV_S: u32 = 0xfe00007f; +const MATCH_FENCE: u32 = 0xf; +const MASK_FENCE: u32 = 0x707f; +const MATCH_FENCE_I: u32 = 0x100f; +const MASK_FENCE_I: u32 = 0x707f; +const MATCH_FEQ_D: u32 = 0xa2002053; +const MASK_FEQ_D: u32 = 0xfe00707f; +const MATCH_FEQ_H: u32 = 0xa4002053; +const MASK_FEQ_H: u32 = 0xfe00707f; +const MATCH_FEQ_Q: u32 = 0xa6002053; +const MASK_FEQ_Q: u32 = 0xfe00707f; +const MATCH_FEQ_S: u32 = 0xa0002053; +const MASK_FEQ_S: u32 = 0xfe00707f; +const MATCH_FLD: u32 = 0x3007; +const MASK_FLD: u32 = 0x707f; +const MATCH_FLE_D: u32 = 0xa2000053; +const MASK_FLE_D: u32 = 0xfe00707f; +const MATCH_FLE_H: u32 = 0xa4000053; +const MASK_FLE_H: u32 = 0xfe00707f; +const MATCH_FLE_Q: u32 = 0xa6000053; +const MASK_FLE_Q: u32 = 0xfe00707f; +const MATCH_FLE_S: u32 = 0xa0000053; +const MASK_FLE_S: u32 = 0xfe00707f; +const MATCH_FLEQ_D: u32 = 0xa2004053; +const MASK_FLEQ_D: u32 = 0xfe00707f; +const MATCH_FLEQ_H: u32 = 0xa4004053; +const MASK_FLEQ_H: u32 = 0xfe00707f; +const MATCH_FLEQ_Q: u32 = 0xa6004053; +const MASK_FLEQ_Q: u32 = 0xfe00707f; +const MATCH_FLEQ_S: u32 = 0xa0004053; +const MASK_FLEQ_S: u32 = 0xfe00707f; +const MATCH_FLH: u32 = 0x1007; +const MASK_FLH: u32 = 0x707f; +const MATCH_FLI_D: u32 = 0xf2100053; +const MASK_FLI_D: u32 = 0xfff0707f; +const MATCH_FLI_H: u32 = 0xf4100053; +const MASK_FLI_H: u32 = 0xfff0707f; +const MATCH_FLI_Q: u32 = 0xf6100053; +const MASK_FLI_Q: u32 = 0xfff0707f; +const MATCH_FLI_S: u32 = 0xf0100053; +const MASK_FLI_S: u32 = 0xfff0707f; +const MATCH_FLQ: u32 = 0x4007; +const MASK_FLQ: u32 = 0x707f; +const MATCH_FLT_D: u32 = 0xa2001053; +const MASK_FLT_D: u32 = 0xfe00707f; +const MATCH_FLT_H: u32 = 0xa4001053; +const MASK_FLT_H: u32 = 0xfe00707f; +const MATCH_FLT_Q: u32 = 0xa6001053; +const MASK_FLT_Q: u32 = 0xfe00707f; +const MATCH_FLT_S: u32 = 0xa0001053; +const MASK_FLT_S: u32 = 0xfe00707f; +const MATCH_FLTQ_D: u32 = 0xa2005053; +const MASK_FLTQ_D: u32 = 0xfe00707f; +const MATCH_FLTQ_H: u32 = 0xa4005053; +const MASK_FLTQ_H: u32 = 0xfe00707f; +const MATCH_FLTQ_Q: u32 = 0xa6005053; +const MASK_FLTQ_Q: u32 = 0xfe00707f; +const MATCH_FLTQ_S: u32 = 0xa0005053; +const MASK_FLTQ_S: u32 = 0xfe00707f; +const MATCH_FLW: u32 = 0x2007; +const MASK_FLW: u32 = 0x707f; +const MATCH_FMADD_D: u32 = 0x2000043; +const MASK_FMADD_D: u32 = 0x600007f; +const MATCH_FMADD_H: u32 = 0x4000043; +const MASK_FMADD_H: u32 = 0x600007f; +const MATCH_FMADD_Q: u32 = 0x6000043; +const MASK_FMADD_Q: u32 = 0x600007f; +const MATCH_FMADD_S: u32 = 0x43; +const MASK_FMADD_S: u32 = 0x600007f; +const MATCH_FMAX_D: u32 = 0x2a001053; +const MASK_FMAX_D: u32 = 0xfe00707f; +const MATCH_FMAX_H: u32 = 0x2c001053; +const MASK_FMAX_H: u32 = 0xfe00707f; +const MATCH_FMAX_Q: u32 = 0x2e001053; +const MASK_FMAX_Q: u32 = 0xfe00707f; +const MATCH_FMAX_S: u32 = 0x28001053; +const MASK_FMAX_S: u32 = 0xfe00707f; +const MATCH_FMAXM_D: u32 = 0x2a003053; +const MASK_FMAXM_D: u32 = 0xfe00707f; +const MATCH_FMAXM_H: u32 = 0x2c003053; +const MASK_FMAXM_H: u32 = 0xfe00707f; +const MATCH_FMAXM_Q: u32 = 0x2e003053; +const MASK_FMAXM_Q: u32 = 0xfe00707f; +const MATCH_FMAXM_S: u32 = 0x28003053; +const MASK_FMAXM_S: u32 = 0xfe00707f; +const MATCH_FMIN_D: u32 = 0x2a000053; +const MASK_FMIN_D: u32 = 0xfe00707f; +const MATCH_FMIN_H: u32 = 0x2c000053; +const MASK_FMIN_H: u32 = 0xfe00707f; +const MATCH_FMIN_Q: u32 = 0x2e000053; +const MASK_FMIN_Q: u32 = 0xfe00707f; +const MATCH_FMIN_S: u32 = 0x28000053; +const MASK_FMIN_S: u32 = 0xfe00707f; +const MATCH_FMINM_D: u32 = 0x2a002053; +const MASK_FMINM_D: u32 = 0xfe00707f; +const MATCH_FMINM_H: u32 = 0x2c002053; +const MASK_FMINM_H: u32 = 0xfe00707f; +const MATCH_FMINM_Q: u32 = 0x2e002053; +const MASK_FMINM_Q: u32 = 0xfe00707f; +const MATCH_FMINM_S: u32 = 0x28002053; +const MASK_FMINM_S: u32 = 0xfe00707f; +const MATCH_FMSUB_D: u32 = 0x2000047; +const MASK_FMSUB_D: u32 = 0x600007f; +const MATCH_FMSUB_H: u32 = 0x4000047; +const MASK_FMSUB_H: u32 = 0x600007f; +const MATCH_FMSUB_Q: u32 = 0x6000047; +const MASK_FMSUB_Q: u32 = 0x600007f; +const MATCH_FMSUB_S: u32 = 0x47; +const MASK_FMSUB_S: u32 = 0x600007f; +const MATCH_FMUL_D: u32 = 0x12000053; +const MASK_FMUL_D: u32 = 0xfe00007f; +const MATCH_FMUL_H: u32 = 0x14000053; +const MASK_FMUL_H: u32 = 0xfe00007f; +const MATCH_FMUL_Q: u32 = 0x16000053; +const MASK_FMUL_Q: u32 = 0xfe00007f; +const MATCH_FMUL_S: u32 = 0x10000053; +const MASK_FMUL_S: u32 = 0xfe00007f; +const MATCH_FMV_D_X: u32 = 0xf2000053; +const MASK_FMV_D_X: u32 = 0xfff0707f; +const MATCH_FMV_H_X: u32 = 0xf4000053; +const MASK_FMV_H_X: u32 = 0xfff0707f; +const MATCH_FMV_W_X: u32 = 0xf0000053; +const MASK_FMV_W_X: u32 = 0xfff0707f; +const MATCH_FMV_X_D: u32 = 0xe2000053; +const MASK_FMV_X_D: u32 = 0xfff0707f; +const MATCH_FMV_X_H: u32 = 0xe4000053; +const MASK_FMV_X_H: u32 = 0xfff0707f; +const MATCH_FMV_X_W: u32 = 0xe0000053; +const MASK_FMV_X_W: u32 = 0xfff0707f; +const MATCH_FMVH_X_D: u32 = 0xe2100053; +const MASK_FMVH_X_D: u32 = 0xfff0707f; +const MATCH_FMVH_X_Q: u32 = 0xe6100053; +const MASK_FMVH_X_Q: u32 = 0xfff0707f; +const MATCH_FMVP_D_X: u32 = 0xb2000053; +const MASK_FMVP_D_X: u32 = 0xfe00707f; +const MATCH_FMVP_Q_X: u32 = 0xb6000053; +const MASK_FMVP_Q_X: u32 = 0xfe00707f; +const MATCH_FNMADD_D: u32 = 0x200004f; +const MASK_FNMADD_D: u32 = 0x600007f; +const MATCH_FNMADD_H: u32 = 0x400004f; +const MASK_FNMADD_H: u32 = 0x600007f; +const MATCH_FNMADD_Q: u32 = 0x600004f; +const MASK_FNMADD_Q: u32 = 0x600007f; +const MATCH_FNMADD_S: u32 = 0x4f; +const MASK_FNMADD_S: u32 = 0x600007f; +const MATCH_FNMSUB_D: u32 = 0x200004b; +const MASK_FNMSUB_D: u32 = 0x600007f; +const MATCH_FNMSUB_H: u32 = 0x400004b; +const MASK_FNMSUB_H: u32 = 0x600007f; +const MATCH_FNMSUB_Q: u32 = 0x600004b; +const MASK_FNMSUB_Q: u32 = 0x600007f; +const MATCH_FNMSUB_S: u32 = 0x4b; +const MASK_FNMSUB_S: u32 = 0x600007f; +const MATCH_FROUND_D: u32 = 0x42400053; +const MASK_FROUND_D: u32 = 0xfff0007f; +const MATCH_FROUND_H: u32 = 0x44400053; +const MASK_FROUND_H: u32 = 0xfff0007f; +const MATCH_FROUND_Q: u32 = 0x46400053; +const MASK_FROUND_Q: u32 = 0xfff0007f; +const MATCH_FROUND_S: u32 = 0x40400053; +const MASK_FROUND_S: u32 = 0xfff0007f; +const MATCH_FROUNDNX_D: u32 = 0x42500053; +const MASK_FROUNDNX_D: u32 = 0xfff0007f; +const MATCH_FROUNDNX_H: u32 = 0x44500053; +const MASK_FROUNDNX_H: u32 = 0xfff0007f; +const MATCH_FROUNDNX_Q: u32 = 0x46500053; +const MASK_FROUNDNX_Q: u32 = 0xfff0007f; +const MATCH_FROUNDNX_S: u32 = 0x40500053; +const MASK_FROUNDNX_S: u32 = 0xfff0007f; +const MATCH_FSD: u32 = 0x3027; +const MASK_FSD: u32 = 0x707f; +const MATCH_FSGNJ_D: u32 = 0x22000053; +const MASK_FSGNJ_D: u32 = 0xfe00707f; +const MATCH_FSGNJ_H: u32 = 0x24000053; +const MASK_FSGNJ_H: u32 = 0xfe00707f; +const MATCH_FSGNJ_Q: u32 = 0x26000053; +const MASK_FSGNJ_Q: u32 = 0xfe00707f; +const MATCH_FSGNJ_S: u32 = 0x20000053; +const MASK_FSGNJ_S: u32 = 0xfe00707f; +const MATCH_FSGNJN_D: u32 = 0x22001053; +const MASK_FSGNJN_D: u32 = 0xfe00707f; +const MATCH_FSGNJN_H: u32 = 0x24001053; +const MASK_FSGNJN_H: u32 = 0xfe00707f; +const MATCH_FSGNJN_Q: u32 = 0x26001053; +const MASK_FSGNJN_Q: u32 = 0xfe00707f; +const MATCH_FSGNJN_S: u32 = 0x20001053; +const MASK_FSGNJN_S: u32 = 0xfe00707f; +const MATCH_FSGNJX_D: u32 = 0x22002053; +const MASK_FSGNJX_D: u32 = 0xfe00707f; +const MATCH_FSGNJX_H: u32 = 0x24002053; +const MASK_FSGNJX_H: u32 = 0xfe00707f; +const MATCH_FSGNJX_Q: u32 = 0x26002053; +const MASK_FSGNJX_Q: u32 = 0xfe00707f; +const MATCH_FSGNJX_S: u32 = 0x20002053; +const MASK_FSGNJX_S: u32 = 0xfe00707f; +const MATCH_FSH: u32 = 0x1027; +const MASK_FSH: u32 = 0x707f; +const MATCH_FSQ: u32 = 0x4027; +const MASK_FSQ: u32 = 0x707f; +const MATCH_FSQRT_D: u32 = 0x5a000053; +const MASK_FSQRT_D: u32 = 0xfff0007f; +const MATCH_FSQRT_H: u32 = 0x5c000053; +const MASK_FSQRT_H: u32 = 0xfff0007f; +const MATCH_FSQRT_Q: u32 = 0x5e000053; +const MASK_FSQRT_Q: u32 = 0xfff0007f; +const MATCH_FSQRT_S: u32 = 0x58000053; +const MASK_FSQRT_S: u32 = 0xfff0007f; +const MATCH_FSUB_D: u32 = 0xa000053; +const MASK_FSUB_D: u32 = 0xfe00007f; +const MATCH_FSUB_H: u32 = 0xc000053; +const MASK_FSUB_H: u32 = 0xfe00007f; +const MATCH_FSUB_Q: u32 = 0xe000053; +const MASK_FSUB_Q: u32 = 0xfe00007f; +const MATCH_FSUB_S: u32 = 0x8000053; +const MASK_FSUB_S: u32 = 0xfe00007f; +const MATCH_FSW: u32 = 0x2027; +const MASK_FSW: u32 = 0x707f; +const MATCH_HFENCE_GVMA: u32 = 0x62000073; +const MASK_HFENCE_GVMA: u32 = 0xfe007fff; +const MATCH_HFENCE_VVMA: u32 = 0x22000073; +const MASK_HFENCE_VVMA: u32 = 0xfe007fff; +const MATCH_HINVAL_GVMA: u32 = 0x66000073; +const MASK_HINVAL_GVMA: u32 = 0xfe007fff; +const MATCH_HINVAL_VVMA: u32 = 0x26000073; +const MASK_HINVAL_VVMA: u32 = 0xfe007fff; +const MATCH_HLV_B: u32 = 0x60004073; +const MASK_HLV_B: u32 = 0xfff0707f; +const MATCH_HLV_BU: u32 = 0x60104073; +const MASK_HLV_BU: u32 = 0xfff0707f; +const MATCH_HLV_D: u32 = 0x6c004073; +const MASK_HLV_D: u32 = 0xfff0707f; +const MATCH_HLV_H: u32 = 0x64004073; +const MASK_HLV_H: u32 = 0xfff0707f; +const MATCH_HLV_HU: u32 = 0x64104073; +const MASK_HLV_HU: u32 = 0xfff0707f; +const MATCH_HLV_W: u32 = 0x68004073; +const MASK_HLV_W: u32 = 0xfff0707f; +const MATCH_HLV_WU: u32 = 0x68104073; +const MASK_HLV_WU: u32 = 0xfff0707f; +const MATCH_HLVX_HU: u32 = 0x64304073; +const MASK_HLVX_HU: u32 = 0xfff0707f; +const MATCH_HLVX_WU: u32 = 0x68304073; +const MASK_HLVX_WU: u32 = 0xfff0707f; +const MATCH_HSV_B: u32 = 0x62004073; +const MASK_HSV_B: u32 = 0xfe007fff; +const MATCH_HSV_D: u32 = 0x6e004073; +const MASK_HSV_D: u32 = 0xfe007fff; +const MATCH_HSV_H: u32 = 0x66004073; +const MASK_HSV_H: u32 = 0xfe007fff; +const MATCH_HSV_W: u32 = 0x6a004073; +const MASK_HSV_W: u32 = 0xfe007fff; +const MATCH_JAL: u32 = 0x6f; +const MASK_JAL: u32 = 0x7f; +const MATCH_JALR: u32 = 0x67; +const MASK_JALR: u32 = 0x707f; +const MATCH_LB: u32 = 0x3; +const MASK_LB: u32 = 0x707f; +const MATCH_LB_AQ: u32 = 0x3400002f; +const MASK_LB_AQ: u32 = 0xfdf0707f; +const MATCH_LBU: u32 = 0x4003; +const MASK_LBU: u32 = 0x707f; +const MATCH_LD: u32 = 0x3003; +const MASK_LD: u32 = 0x707f; +const MATCH_LD_AQ: u32 = 0x3400302f; +const MASK_LD_AQ: u32 = 0xfdf0707f; +const MATCH_LH: u32 = 0x1003; +const MASK_LH: u32 = 0x707f; +const MATCH_LH_AQ: u32 = 0x3400102f; +const MASK_LH_AQ: u32 = 0xfdf0707f; +const MATCH_LHU: u32 = 0x5003; +const MASK_LHU: u32 = 0x707f; +const MATCH_LPAD: u32 = 0x17; +const MASK_LPAD: u32 = 0xfff; +const MATCH_LR_D: u32 = 0x1000302f; +const MASK_LR_D: u32 = 0xf9f0707f; +const MATCH_LR_W: u32 = 0x1000202f; +const MASK_LR_W: u32 = 0xf9f0707f; +const MATCH_LUI: u32 = 0x37; +const MASK_LUI: u32 = 0x7f; +const MATCH_LW: u32 = 0x2003; +const MASK_LW: u32 = 0x707f; +const MATCH_LW_AQ: u32 = 0x3400202f; +const MASK_LW_AQ: u32 = 0xfdf0707f; +const MATCH_LWU: u32 = 0x6003; +const MASK_LWU: u32 = 0x707f; +const MATCH_MAX: u32 = 0xa006033; +const MASK_MAX: u32 = 0xfe00707f; +const MATCH_MAXU: u32 = 0xa007033; +const MASK_MAXU: u32 = 0xfe00707f; +const MATCH_MIN: u32 = 0xa004033; +const MASK_MIN: u32 = 0xfe00707f; +const MATCH_MINU: u32 = 0xa005033; +const MASK_MINU: u32 = 0xfe00707f; +const MATCH_MNRET: u32 = 0x70200073; +const MASK_MNRET: u32 = 0xffffffff; +const MATCH_MOP_R_N: u32 = 0x81c04073; +const MASK_MOP_R_N: u32 = 0xb3c0707f; +const MATCH_MOP_RR_N: u32 = 0x82004073; +const MASK_MOP_RR_N: u32 = 0xb200707f; +const MATCH_MRET: u32 = 0x30200073; +const MASK_MRET: u32 = 0xffffffff; +const MATCH_MUL: u32 = 0x2000033; +const MASK_MUL: u32 = 0xfe00707f; +const MATCH_MULH: u32 = 0x2001033; +const MASK_MULH: u32 = 0xfe00707f; +const MATCH_MULHSU: u32 = 0x2002033; +const MASK_MULHSU: u32 = 0xfe00707f; +const MATCH_MULHU: u32 = 0x2003033; +const MASK_MULHU: u32 = 0xfe00707f; +const MATCH_MULW: u32 = 0x200003b; +const MASK_MULW: u32 = 0xfe00707f; +const MATCH_OR: u32 = 0x6033; +const MASK_OR: u32 = 0xfe00707f; +const MATCH_ORC_B: u32 = 0x28705013; +const MASK_ORC_B: u32 = 0xfff0707f; +const MATCH_ORI: u32 = 0x6013; +const MASK_ORI: u32 = 0x707f; +const MATCH_ORN: u32 = 0x40006033; +const MASK_ORN: u32 = 0xfe00707f; +const MATCH_PACK: u32 = 0x8004033; +const MASK_PACK: u32 = 0xfe00707f; +const MATCH_PACKH: u32 = 0x8007033; +const MASK_PACKH: u32 = 0xfe00707f; +const MATCH_PACKW: u32 = 0x800403b; +const MASK_PACKW: u32 = 0xfe00707f; +const MATCH_REM: u32 = 0x2006033; +const MASK_REM: u32 = 0xfe00707f; +const MATCH_REMU: u32 = 0x2007033; +const MASK_REMU: u32 = 0xfe00707f; +const MATCH_REMUW: u32 = 0x200703b; +const MASK_REMUW: u32 = 0xfe00707f; +const MATCH_REMW: u32 = 0x200603b; +const MASK_REMW: u32 = 0xfe00707f; +const MATCH_REV8: u32 = 0x6b805013; +const MASK_REV8: u32 = 0xfff0707f; +const MATCH_ROL: u32 = 0x60001033; +const MASK_ROL: u32 = 0xfe00707f; +const MATCH_ROLW: u32 = 0x6000103b; +const MASK_ROLW: u32 = 0xfe00707f; +const MATCH_ROR: u32 = 0x60005033; +const MASK_ROR: u32 = 0xfe00707f; +const MATCH_RORI: u32 = 0x60005013; +const MASK_RORI: u32 = 0xfc00707f; +const MATCH_RORIW: u32 = 0x6000501b; +const MASK_RORIW: u32 = 0xfe00707f; +const MATCH_RORW: u32 = 0x6000503b; +const MASK_RORW: u32 = 0xfe00707f; +const MATCH_SB: u32 = 0x23; +const MASK_SB: u32 = 0x707f; +const MATCH_SB_RL: u32 = 0x3a00002f; +const MASK_SB_RL: u32 = 0xfa007fff; +const MATCH_SC_D: u32 = 0x1800302f; +const MASK_SC_D: u32 = 0xf800707f; +const MATCH_SC_W: u32 = 0x1800202f; +const MASK_SC_W: u32 = 0xf800707f; +const MATCH_SCTRCLR: u32 = 0x10400073; +const MASK_SCTRCLR: u32 = 0xffffffff; +const MATCH_SD: u32 = 0x3023; +const MASK_SD: u32 = 0x707f; +const MATCH_SD_RL: u32 = 0x3a00302f; +const MASK_SD_RL: u32 = 0xfa007fff; +const MATCH_SEXT_B: u32 = 0x60401013; +const MASK_SEXT_B: u32 = 0xfff0707f; +const MATCH_SEXT_H: u32 = 0x60501013; +const MASK_SEXT_H: u32 = 0xfff0707f; +const MATCH_SFENCE_INVAL_IR: u32 = 0x18100073; +const MASK_SFENCE_INVAL_IR: u32 = 0xffffffff; +const MATCH_SFENCE_VMA: u32 = 0x12000073; +const MASK_SFENCE_VMA: u32 = 0xfe007fff; +const MATCH_SFENCE_W_INVAL: u32 = 0x18000073; +const MASK_SFENCE_W_INVAL: u32 = 0xffffffff; +const MATCH_SH: u32 = 0x1023; +const MASK_SH: u32 = 0x707f; +const MATCH_SH1ADD: u32 = 0x20002033; +const MASK_SH1ADD: u32 = 0xfe00707f; +const MATCH_SH1ADD_UW: u32 = 0x2000203b; +const MASK_SH1ADD_UW: u32 = 0xfe00707f; +const MATCH_SH2ADD: u32 = 0x20004033; +const MASK_SH2ADD: u32 = 0xfe00707f; +const MATCH_SH2ADD_UW: u32 = 0x2000403b; +const MASK_SH2ADD_UW: u32 = 0xfe00707f; +const MATCH_SH3ADD: u32 = 0x20006033; +const MASK_SH3ADD: u32 = 0xfe00707f; +const MATCH_SH3ADD_UW: u32 = 0x2000603b; +const MASK_SH3ADD_UW: u32 = 0xfe00707f; +const MATCH_SH_RL: u32 = 0x3a00102f; +const MASK_SH_RL: u32 = 0xfa007fff; +const MATCH_SHA256SIG0: u32 = 0x10201013; +const MASK_SHA256SIG0: u32 = 0xfff0707f; +const MATCH_SHA256SIG1: u32 = 0x10301013; +const MASK_SHA256SIG1: u32 = 0xfff0707f; +const MATCH_SHA256SUM0: u32 = 0x10001013; +const MASK_SHA256SUM0: u32 = 0xfff0707f; +const MATCH_SHA256SUM1: u32 = 0x10101013; +const MASK_SHA256SUM1: u32 = 0xfff0707f; +const MATCH_SHA512SIG0: u32 = 0x10601013; +const MASK_SHA512SIG0: u32 = 0xfff0707f; +const MATCH_SHA512SIG0H: u32 = 0x5c000033; +const MASK_SHA512SIG0H: u32 = 0xfe00707f; +const MATCH_SHA512SIG0L: u32 = 0x54000033; +const MASK_SHA512SIG0L: u32 = 0xfe00707f; +const MATCH_SHA512SIG1: u32 = 0x10701013; +const MASK_SHA512SIG1: u32 = 0xfff0707f; +const MATCH_SHA512SIG1H: u32 = 0x5e000033; +const MASK_SHA512SIG1H: u32 = 0xfe00707f; +const MATCH_SHA512SIG1L: u32 = 0x56000033; +const MASK_SHA512SIG1L: u32 = 0xfe00707f; +const MATCH_SHA512SUM0: u32 = 0x10401013; +const MASK_SHA512SUM0: u32 = 0xfff0707f; +const MATCH_SHA512SUM0R: u32 = 0x50000033; +const MASK_SHA512SUM0R: u32 = 0xfe00707f; +const MATCH_SHA512SUM1: u32 = 0x10501013; +const MASK_SHA512SUM1: u32 = 0xfff0707f; +const MATCH_SHA512SUM1R: u32 = 0x52000033; +const MASK_SHA512SUM1R: u32 = 0xfe00707f; +const MATCH_SINVAL_VMA: u32 = 0x16000073; +const MASK_SINVAL_VMA: u32 = 0xfe007fff; +const MATCH_SLL: u32 = 0x1033; +const MASK_SLL: u32 = 0xfe00707f; +const MATCH_SLLI: u32 = 0x1013; +const MASK_SLLI: u32 = 0xfc00707f; +const MATCH_SLLI_UW: u32 = 0x800101b; +const MASK_SLLI_UW: u32 = 0xfc00707f; +const MATCH_SLLIW: u32 = 0x101b; +const MASK_SLLIW: u32 = 0xfe00707f; +const MATCH_SLLW: u32 = 0x103b; +const MASK_SLLW: u32 = 0xfe00707f; +const MATCH_SLT: u32 = 0x2033; +const MASK_SLT: u32 = 0xfe00707f; +const MATCH_SLTI: u32 = 0x2013; +const MASK_SLTI: u32 = 0x707f; +const MATCH_SLTIU: u32 = 0x3013; +const MASK_SLTIU: u32 = 0x707f; +const MATCH_SLTU: u32 = 0x3033; +const MASK_SLTU: u32 = 0xfe00707f; +const MATCH_SM3P0: u32 = 0x10801013; +const MASK_SM3P0: u32 = 0xfff0707f; +const MATCH_SM3P1: u32 = 0x10901013; +const MASK_SM3P1: u32 = 0xfff0707f; +const MATCH_SM4ED: u32 = 0x30000033; +const MASK_SM4ED: u32 = 0x3e00707f; +const MATCH_SM4KS: u32 = 0x34000033; +const MASK_SM4KS: u32 = 0x3e00707f; +const MATCH_SRA: u32 = 0x40005033; +const MASK_SRA: u32 = 0xfe00707f; +const MATCH_SRAI: u32 = 0x40005013; +const MASK_SRAI: u32 = 0xfc00707f; +const MATCH_SRAIW: u32 = 0x4000501b; +const MASK_SRAIW: u32 = 0xfe00707f; +const MATCH_SRAW: u32 = 0x4000503b; +const MASK_SRAW: u32 = 0xfe00707f; +const MATCH_SRET: u32 = 0x10200073; +const MASK_SRET: u32 = 0xffffffff; +const MATCH_SRL: u32 = 0x5033; +const MASK_SRL: u32 = 0xfe00707f; +const MATCH_SRLI: u32 = 0x5013; +const MASK_SRLI: u32 = 0xfc00707f; +const MATCH_SRLIW: u32 = 0x501b; +const MASK_SRLIW: u32 = 0xfe00707f; +const MATCH_SRLW: u32 = 0x503b; +const MASK_SRLW: u32 = 0xfe00707f; +const MATCH_SSAMOSWAP_D: u32 = 0x4800302f; +const MASK_SSAMOSWAP_D: u32 = 0xf800707f; +const MATCH_SSAMOSWAP_W: u32 = 0x4800202f; +const MASK_SSAMOSWAP_W: u32 = 0xf800707f; +const MATCH_SSPOPCHK_X1: u32 = 0xcdc0c073; +const MASK_SSPOPCHK_X1: u32 = 0xffffffff; +const MATCH_SSPOPCHK_X5: u32 = 0xcdc2c073; +const MASK_SSPOPCHK_X5: u32 = 0xffffffff; +const MATCH_SSPUSH_X1: u32 = 0xce104073; +const MASK_SSPUSH_X1: u32 = 0xffffffff; +const MATCH_SSPUSH_X5: u32 = 0xce504073; +const MASK_SSPUSH_X5: u32 = 0xffffffff; +const MATCH_SSRDP: u32 = 0xcdc04073; +const MASK_SSRDP: u32 = 0xfffff07f; +const MATCH_SUB: u32 = 0x40000033; +const MASK_SUB: u32 = 0xfe00707f; +const MATCH_SUBW: u32 = 0x4000003b; +const MASK_SUBW: u32 = 0xfe00707f; +const MATCH_SW: u32 = 0x2023; +const MASK_SW: u32 = 0x707f; +const MATCH_SW_RL: u32 = 0x3a00202f; +const MASK_SW_RL: u32 = 0xfa007fff; +const MATCH_UNZIP: u32 = 0x8f05013; +const MASK_UNZIP: u32 = 0xfff0707f; +const MATCH_VAADD_VV: u32 = 0x24002057; +const MASK_VAADD_VV: u32 = 0xfc00707f; +const MATCH_VAADD_VX: u32 = 0x24006057; +const MASK_VAADD_VX: u32 = 0xfc00707f; +const MATCH_VAADDU_VV: u32 = 0x20002057; +const MASK_VAADDU_VV: u32 = 0xfc00707f; +const MATCH_VAADDU_VX: u32 = 0x20006057; +const MASK_VAADDU_VX: u32 = 0xfc00707f; +const MATCH_VADC_VIM: u32 = 0x40003057; +const MASK_VADC_VIM: u32 = 0xfe00707f; +const MATCH_VADC_VVM: u32 = 0x40000057; +const MASK_VADC_VVM: u32 = 0xfe00707f; +const MATCH_VADC_VXM: u32 = 0x40004057; +const MASK_VADC_VXM: u32 = 0xfe00707f; +const MATCH_VADD_VI: u32 = 0x3057; +const MASK_VADD_VI: u32 = 0xfc00707f; +const MATCH_VADD_VV: u32 = 0x57; +const MASK_VADD_VV: u32 = 0xfc00707f; +const MATCH_VADD_VX: u32 = 0x4057; +const MASK_VADD_VX: u32 = 0xfc00707f; +const MATCH_VAESDF_VS: u32 = 0xa600a077; +const MASK_VAESDF_VS: u32 = 0xfe0ff07f; +const MATCH_VAESDF_VV: u32 = 0xa200a077; +const MASK_VAESDF_VV: u32 = 0xfe0ff07f; +const MATCH_VAESDM_VS: u32 = 0xa6002077; +const MASK_VAESDM_VS: u32 = 0xfe0ff07f; +const MATCH_VAESDM_VV: u32 = 0xa2002077; +const MASK_VAESDM_VV: u32 = 0xfe0ff07f; +const MATCH_VAESEF_VS: u32 = 0xa601a077; +const MASK_VAESEF_VS: u32 = 0xfe0ff07f; +const MATCH_VAESEF_VV: u32 = 0xa201a077; +const MASK_VAESEF_VV: u32 = 0xfe0ff07f; +const MATCH_VAESEM_VS: u32 = 0xa6012077; +const MASK_VAESEM_VS: u32 = 0xfe0ff07f; +const MATCH_VAESEM_VV: u32 = 0xa2012077; +const MASK_VAESEM_VV: u32 = 0xfe0ff07f; +const MATCH_VAESKF1_VI: u32 = 0x8a002077; +const MASK_VAESKF1_VI: u32 = 0xfe00707f; +const MATCH_VAESKF2_VI: u32 = 0xaa002077; +const MASK_VAESKF2_VI: u32 = 0xfe00707f; +const MATCH_VAESZ_VS: u32 = 0xa603a077; +const MASK_VAESZ_VS: u32 = 0xfe0ff07f; +const MATCH_VAND_VI: u32 = 0x24003057; +const MASK_VAND_VI: u32 = 0xfc00707f; +const MATCH_VAND_VV: u32 = 0x24000057; +const MASK_VAND_VV: u32 = 0xfc00707f; +const MATCH_VAND_VX: u32 = 0x24004057; +const MASK_VAND_VX: u32 = 0xfc00707f; +const MATCH_VANDN_VV: u32 = 0x4000057; +const MASK_VANDN_VV: u32 = 0xfc00707f; +const MATCH_VANDN_VX: u32 = 0x4004057; +const MASK_VANDN_VX: u32 = 0xfc00707f; +const MATCH_VASUB_VV: u32 = 0x2c002057; +const MASK_VASUB_VV: u32 = 0xfc00707f; +const MATCH_VASUB_VX: u32 = 0x2c006057; +const MASK_VASUB_VX: u32 = 0xfc00707f; +const MATCH_VASUBU_VV: u32 = 0x28002057; +const MASK_VASUBU_VV: u32 = 0xfc00707f; +const MATCH_VASUBU_VX: u32 = 0x28006057; +const MASK_VASUBU_VX: u32 = 0xfc00707f; +const MATCH_VBREV8_V: u32 = 0x48042057; +const MASK_VBREV8_V: u32 = 0xfc0ff07f; +const MATCH_VBREV_V: u32 = 0x48052057; +const MASK_VBREV_V: u32 = 0xfc0ff07f; +const MATCH_VCLMUL_VV: u32 = 0x30002057; +const MASK_VCLMUL_VV: u32 = 0xfc00707f; +const MATCH_VCLMUL_VX: u32 = 0x30006057; +const MASK_VCLMUL_VX: u32 = 0xfc00707f; +const MATCH_VCLMULH_VV: u32 = 0x34002057; +const MASK_VCLMULH_VV: u32 = 0xfc00707f; +const MATCH_VCLMULH_VX: u32 = 0x34006057; +const MASK_VCLMULH_VX: u32 = 0xfc00707f; +const MATCH_VCLZ_V: u32 = 0x48062057; +const MASK_VCLZ_V: u32 = 0xfc0ff07f; +const MATCH_VCOMPRESS_VM: u32 = 0x5e002057; +const MASK_VCOMPRESS_VM: u32 = 0xfe00707f; +const MATCH_VCPOP_M: u32 = 0x40082057; +const MASK_VCPOP_M: u32 = 0xfc0ff07f; +const MATCH_VCPOP_V: u32 = 0x48072057; +const MASK_VCPOP_V: u32 = 0xfc0ff07f; +const MATCH_VCTZ_V: u32 = 0x4806a057; +const MASK_VCTZ_V: u32 = 0xfc0ff07f; +const MATCH_VDIV_VV: u32 = 0x84002057; +const MASK_VDIV_VV: u32 = 0xfc00707f; +const MATCH_VDIV_VX: u32 = 0x84006057; +const MASK_VDIV_VX: u32 = 0xfc00707f; +const MATCH_VDIVU_VV: u32 = 0x80002057; +const MASK_VDIVU_VV: u32 = 0xfc00707f; +const MATCH_VDIVU_VX: u32 = 0x80006057; +const MASK_VDIVU_VX: u32 = 0xfc00707f; +const MATCH_VFADD_VF: u32 = 0x5057; +const MASK_VFADD_VF: u32 = 0xfc00707f; +const MATCH_VFADD_VV: u32 = 0x1057; +const MASK_VFADD_VV: u32 = 0xfc00707f; +const MATCH_VFCLASS_V: u32 = 0x4c081057; +const MASK_VFCLASS_V: u32 = 0xfc0ff07f; +const MATCH_VFCVT_F_X_V: u32 = 0x48019057; +const MASK_VFCVT_F_X_V: u32 = 0xfc0ff07f; +const MATCH_VFCVT_F_XU_V: u32 = 0x48011057; +const MASK_VFCVT_F_XU_V: u32 = 0xfc0ff07f; +const MATCH_VFCVT_RTZ_X_F_V: u32 = 0x48039057; +const MASK_VFCVT_RTZ_X_F_V: u32 = 0xfc0ff07f; +const MATCH_VFCVT_RTZ_XU_F_V: u32 = 0x48031057; +const MASK_VFCVT_RTZ_XU_F_V: u32 = 0xfc0ff07f; +const MATCH_VFCVT_X_F_V: u32 = 0x48009057; +const MASK_VFCVT_X_F_V: u32 = 0xfc0ff07f; +const MATCH_VFCVT_XU_F_V: u32 = 0x48001057; +const MASK_VFCVT_XU_F_V: u32 = 0xfc0ff07f; +const MATCH_VFDIV_VF: u32 = 0x80005057; +const MASK_VFDIV_VF: u32 = 0xfc00707f; +const MATCH_VFDIV_VV: u32 = 0x80001057; +const MASK_VFDIV_VV: u32 = 0xfc00707f; +const MATCH_VFIRST_M: u32 = 0x4008a057; +const MASK_VFIRST_M: u32 = 0xfc0ff07f; +const MATCH_VFMACC_VF: u32 = 0xb0005057; +const MASK_VFMACC_VF: u32 = 0xfc00707f; +const MATCH_VFMACC_VV: u32 = 0xb0001057; +const MASK_VFMACC_VV: u32 = 0xfc00707f; +const MATCH_VFMADD_VF: u32 = 0xa0005057; +const MASK_VFMADD_VF: u32 = 0xfc00707f; +const MATCH_VFMADD_VV: u32 = 0xa0001057; +const MASK_VFMADD_VV: u32 = 0xfc00707f; +const MATCH_VFMAX_VF: u32 = 0x18005057; +const MASK_VFMAX_VF: u32 = 0xfc00707f; +const MATCH_VFMAX_VV: u32 = 0x18001057; +const MASK_VFMAX_VV: u32 = 0xfc00707f; +const MATCH_VFMERGE_VFM: u32 = 0x5c005057; +const MASK_VFMERGE_VFM: u32 = 0xfe00707f; +const MATCH_VFMIN_VF: u32 = 0x10005057; +const MASK_VFMIN_VF: u32 = 0xfc00707f; +const MATCH_VFMIN_VV: u32 = 0x10001057; +const MASK_VFMIN_VV: u32 = 0xfc00707f; +const MATCH_VFMSAC_VF: u32 = 0xb8005057; +const MASK_VFMSAC_VF: u32 = 0xfc00707f; +const MATCH_VFMSAC_VV: u32 = 0xb8001057; +const MASK_VFMSAC_VV: u32 = 0xfc00707f; +const MATCH_VFMSUB_VF: u32 = 0xa8005057; +const MASK_VFMSUB_VF: u32 = 0xfc00707f; +const MATCH_VFMSUB_VV: u32 = 0xa8001057; +const MASK_VFMSUB_VV: u32 = 0xfc00707f; +const MATCH_VFMUL_VF: u32 = 0x90005057; +const MASK_VFMUL_VF: u32 = 0xfc00707f; +const MATCH_VFMUL_VV: u32 = 0x90001057; +const MASK_VFMUL_VV: u32 = 0xfc00707f; +const MATCH_VFMV_F_S: u32 = 0x42001057; +const MASK_VFMV_F_S: u32 = 0xfe0ff07f; +const MATCH_VFMV_S_F: u32 = 0x42005057; +const MASK_VFMV_S_F: u32 = 0xfff0707f; +const MATCH_VFMV_V_F: u32 = 0x5e005057; +const MASK_VFMV_V_F: u32 = 0xfff0707f; +const MATCH_VFNCVT_F_F_W: u32 = 0x480a1057; +const MASK_VFNCVT_F_F_W: u32 = 0xfc0ff07f; +const MATCH_VFNCVT_F_X_W: u32 = 0x48099057; +const MASK_VFNCVT_F_X_W: u32 = 0xfc0ff07f; +const MATCH_VFNCVT_F_XU_W: u32 = 0x48091057; +const MASK_VFNCVT_F_XU_W: u32 = 0xfc0ff07f; +const MATCH_VFNCVT_ROD_F_F_W: u32 = 0x480a9057; +const MASK_VFNCVT_ROD_F_F_W: u32 = 0xfc0ff07f; +const MATCH_VFNCVT_RTZ_X_F_W: u32 = 0x480b9057; +const MASK_VFNCVT_RTZ_X_F_W: u32 = 0xfc0ff07f; +const MATCH_VFNCVT_RTZ_XU_F_W: u32 = 0x480b1057; +const MASK_VFNCVT_RTZ_XU_F_W: u32 = 0xfc0ff07f; +const MATCH_VFNCVT_X_F_W: u32 = 0x48089057; +const MASK_VFNCVT_X_F_W: u32 = 0xfc0ff07f; +const MATCH_VFNCVT_XU_F_W: u32 = 0x48081057; +const MASK_VFNCVT_XU_F_W: u32 = 0xfc0ff07f; +const MATCH_VFNCVTBF16_F_F_W: u32 = 0x480e9057; +const MASK_VFNCVTBF16_F_F_W: u32 = 0xfc0ff07f; +const MATCH_VFNMACC_VF: u32 = 0xb4005057; +const MASK_VFNMACC_VF: u32 = 0xfc00707f; +const MATCH_VFNMACC_VV: u32 = 0xb4001057; +const MASK_VFNMACC_VV: u32 = 0xfc00707f; +const MATCH_VFNMADD_VF: u32 = 0xa4005057; +const MASK_VFNMADD_VF: u32 = 0xfc00707f; +const MATCH_VFNMADD_VV: u32 = 0xa4001057; +const MASK_VFNMADD_VV: u32 = 0xfc00707f; +const MATCH_VFNMSAC_VF: u32 = 0xbc005057; +const MASK_VFNMSAC_VF: u32 = 0xfc00707f; +const MATCH_VFNMSAC_VV: u32 = 0xbc001057; +const MASK_VFNMSAC_VV: u32 = 0xfc00707f; +const MATCH_VFNMSUB_VF: u32 = 0xac005057; +const MASK_VFNMSUB_VF: u32 = 0xfc00707f; +const MATCH_VFNMSUB_VV: u32 = 0xac001057; +const MASK_VFNMSUB_VV: u32 = 0xfc00707f; +const MATCH_VFRDIV_VF: u32 = 0x84005057; +const MASK_VFRDIV_VF: u32 = 0xfc00707f; +const MATCH_VFREC7_V: u32 = 0x4c029057; +const MASK_VFREC7_V: u32 = 0xfc0ff07f; +const MATCH_VFREDMAX_VS: u32 = 0x1c001057; +const MASK_VFREDMAX_VS: u32 = 0xfc00707f; +const MATCH_VFREDMIN_VS: u32 = 0x14001057; +const MASK_VFREDMIN_VS: u32 = 0xfc00707f; +const MATCH_VFREDOSUM_VS: u32 = 0xc001057; +const MASK_VFREDOSUM_VS: u32 = 0xfc00707f; +const MATCH_VFREDUSUM_VS: u32 = 0x4001057; +const MASK_VFREDUSUM_VS: u32 = 0xfc00707f; +const MATCH_VFRSQRT7_V: u32 = 0x4c021057; +const MASK_VFRSQRT7_V: u32 = 0xfc0ff07f; +const MATCH_VFRSUB_VF: u32 = 0x9c005057; +const MASK_VFRSUB_VF: u32 = 0xfc00707f; +const MATCH_VFSGNJ_VF: u32 = 0x20005057; +const MASK_VFSGNJ_VF: u32 = 0xfc00707f; +const MATCH_VFSGNJ_VV: u32 = 0x20001057; +const MASK_VFSGNJ_VV: u32 = 0xfc00707f; +const MATCH_VFSGNJN_VF: u32 = 0x24005057; +const MASK_VFSGNJN_VF: u32 = 0xfc00707f; +const MATCH_VFSGNJN_VV: u32 = 0x24001057; +const MASK_VFSGNJN_VV: u32 = 0xfc00707f; +const MATCH_VFSGNJX_VF: u32 = 0x28005057; +const MASK_VFSGNJX_VF: u32 = 0xfc00707f; +const MATCH_VFSGNJX_VV: u32 = 0x28001057; +const MASK_VFSGNJX_VV: u32 = 0xfc00707f; +const MATCH_VFSLIDE1DOWN_VF: u32 = 0x3c005057; +const MASK_VFSLIDE1DOWN_VF: u32 = 0xfc00707f; +const MATCH_VFSLIDE1UP_VF: u32 = 0x38005057; +const MASK_VFSLIDE1UP_VF: u32 = 0xfc00707f; +const MATCH_VFSQRT_V: u32 = 0x4c001057; +const MASK_VFSQRT_V: u32 = 0xfc0ff07f; +const MATCH_VFSUB_VF: u32 = 0x8005057; +const MASK_VFSUB_VF: u32 = 0xfc00707f; +const MATCH_VFSUB_VV: u32 = 0x8001057; +const MASK_VFSUB_VV: u32 = 0xfc00707f; +const MATCH_VFWADD_VF: u32 = 0xc0005057; +const MASK_VFWADD_VF: u32 = 0xfc00707f; +const MATCH_VFWADD_VV: u32 = 0xc0001057; +const MASK_VFWADD_VV: u32 = 0xfc00707f; +const MATCH_VFWADD_WF: u32 = 0xd0005057; +const MASK_VFWADD_WF: u32 = 0xfc00707f; +const MATCH_VFWADD_WV: u32 = 0xd0001057; +const MASK_VFWADD_WV: u32 = 0xfc00707f; +const MATCH_VFWCVT_F_F_V: u32 = 0x48061057; +const MASK_VFWCVT_F_F_V: u32 = 0xfc0ff07f; +const MATCH_VFWCVT_F_X_V: u32 = 0x48059057; +const MASK_VFWCVT_F_X_V: u32 = 0xfc0ff07f; +const MATCH_VFWCVT_F_XU_V: u32 = 0x48051057; +const MASK_VFWCVT_F_XU_V: u32 = 0xfc0ff07f; +const MATCH_VFWCVT_RTZ_X_F_V: u32 = 0x48079057; +const MASK_VFWCVT_RTZ_X_F_V: u32 = 0xfc0ff07f; +const MATCH_VFWCVT_RTZ_XU_F_V: u32 = 0x48071057; +const MASK_VFWCVT_RTZ_XU_F_V: u32 = 0xfc0ff07f; +const MATCH_VFWCVT_X_F_V: u32 = 0x48049057; +const MASK_VFWCVT_X_F_V: u32 = 0xfc0ff07f; +const MATCH_VFWCVT_XU_F_V: u32 = 0x48041057; +const MASK_VFWCVT_XU_F_V: u32 = 0xfc0ff07f; +const MATCH_VFWCVTBF16_F_F_V: u32 = 0x48069057; +const MASK_VFWCVTBF16_F_F_V: u32 = 0xfc0ff07f; +const MATCH_VFWMACC_VF: u32 = 0xf0005057; +const MASK_VFWMACC_VF: u32 = 0xfc00707f; +const MATCH_VFWMACC_VV: u32 = 0xf0001057; +const MASK_VFWMACC_VV: u32 = 0xfc00707f; +const MATCH_VFWMACCBF16_VF: u32 = 0xec005057; +const MASK_VFWMACCBF16_VF: u32 = 0xfc00707f; +const MATCH_VFWMACCBF16_VV: u32 = 0xec001057; +const MASK_VFWMACCBF16_VV: u32 = 0xfc00707f; +const MATCH_VFWMSAC_VF: u32 = 0xf8005057; +const MASK_VFWMSAC_VF: u32 = 0xfc00707f; +const MATCH_VFWMSAC_VV: u32 = 0xf8001057; +const MASK_VFWMSAC_VV: u32 = 0xfc00707f; +const MATCH_VFWMUL_VF: u32 = 0xe0005057; +const MASK_VFWMUL_VF: u32 = 0xfc00707f; +const MATCH_VFWMUL_VV: u32 = 0xe0001057; +const MASK_VFWMUL_VV: u32 = 0xfc00707f; +const MATCH_VFWNMACC_VF: u32 = 0xf4005057; +const MASK_VFWNMACC_VF: u32 = 0xfc00707f; +const MATCH_VFWNMACC_VV: u32 = 0xf4001057; +const MASK_VFWNMACC_VV: u32 = 0xfc00707f; +const MATCH_VFWNMSAC_VF: u32 = 0xfc005057; +const MASK_VFWNMSAC_VF: u32 = 0xfc00707f; +const MATCH_VFWNMSAC_VV: u32 = 0xfc001057; +const MASK_VFWNMSAC_VV: u32 = 0xfc00707f; +const MATCH_VFWREDOSUM_VS: u32 = 0xcc001057; +const MASK_VFWREDOSUM_VS: u32 = 0xfc00707f; +const MATCH_VFWREDUSUM_VS: u32 = 0xc4001057; +const MASK_VFWREDUSUM_VS: u32 = 0xfc00707f; +const MATCH_VFWSUB_VF: u32 = 0xc8005057; +const MASK_VFWSUB_VF: u32 = 0xfc00707f; +const MATCH_VFWSUB_VV: u32 = 0xc8001057; +const MASK_VFWSUB_VV: u32 = 0xfc00707f; +const MATCH_VFWSUB_WF: u32 = 0xd8005057; +const MASK_VFWSUB_WF: u32 = 0xfc00707f; +const MATCH_VFWSUB_WV: u32 = 0xd8001057; +const MASK_VFWSUB_WV: u32 = 0xfc00707f; +const MATCH_VGHSH_VV: u32 = 0xb2002077; +const MASK_VGHSH_VV: u32 = 0xfe00707f; +const MATCH_VGMUL_VV: u32 = 0xa208a077; +const MASK_VGMUL_VV: u32 = 0xfe0ff07f; +const MATCH_VID_V: u32 = 0x5008a057; +const MASK_VID_V: u32 = 0xfdfff07f; +const MATCH_VIOTA_M: u32 = 0x50082057; +const MASK_VIOTA_M: u32 = 0xfc0ff07f; +const MATCH_VL1RE16_V: u32 = 0x2805007; +const MASK_VL1RE16_V: u32 = 0xfff0707f; +const MATCH_VL1RE32_V: u32 = 0x2806007; +const MASK_VL1RE32_V: u32 = 0xfff0707f; +const MATCH_VL1RE64_V: u32 = 0x2807007; +const MASK_VL1RE64_V: u32 = 0xfff0707f; +const MATCH_VL1RE8_V: u32 = 0x2800007; +const MASK_VL1RE8_V: u32 = 0xfff0707f; +const MATCH_VL2RE16_V: u32 = 0x22805007; +const MASK_VL2RE16_V: u32 = 0xfff0707f; +const MATCH_VL2RE32_V: u32 = 0x22806007; +const MASK_VL2RE32_V: u32 = 0xfff0707f; +const MATCH_VL2RE64_V: u32 = 0x22807007; +const MASK_VL2RE64_V: u32 = 0xfff0707f; +const MATCH_VL2RE8_V: u32 = 0x22800007; +const MASK_VL2RE8_V: u32 = 0xfff0707f; +const MATCH_VL4RE16_V: u32 = 0x62805007; +const MASK_VL4RE16_V: u32 = 0xfff0707f; +const MATCH_VL4RE32_V: u32 = 0x62806007; +const MASK_VL4RE32_V: u32 = 0xfff0707f; +const MATCH_VL4RE64_V: u32 = 0x62807007; +const MASK_VL4RE64_V: u32 = 0xfff0707f; +const MATCH_VL4RE8_V: u32 = 0x62800007; +const MASK_VL4RE8_V: u32 = 0xfff0707f; +const MATCH_VL8RE16_V: u32 = 0xe2805007; +const MASK_VL8RE16_V: u32 = 0xfff0707f; +const MATCH_VL8RE32_V: u32 = 0xe2806007; +const MASK_VL8RE32_V: u32 = 0xfff0707f; +const MATCH_VL8RE64_V: u32 = 0xe2807007; +const MASK_VL8RE64_V: u32 = 0xfff0707f; +const MATCH_VL8RE8_V: u32 = 0xe2800007; +const MASK_VL8RE8_V: u32 = 0xfff0707f; +const MATCH_VLE16_V: u32 = 0x5007; +const MASK_VLE16_V: u32 = 0xfdf0707f; +const MATCH_VLE16FF_V: u32 = 0x1005007; +const MASK_VLE16FF_V: u32 = 0xfdf0707f; +const MATCH_VLE32_V: u32 = 0x6007; +const MASK_VLE32_V: u32 = 0xfdf0707f; +const MATCH_VLE32FF_V: u32 = 0x1006007; +const MASK_VLE32FF_V: u32 = 0xfdf0707f; +const MATCH_VLE64_V: u32 = 0x7007; +const MASK_VLE64_V: u32 = 0xfdf0707f; +const MATCH_VLE64FF_V: u32 = 0x1007007; +const MASK_VLE64FF_V: u32 = 0xfdf0707f; +const MATCH_VLE8_V: u32 = 0x7; +const MASK_VLE8_V: u32 = 0xfdf0707f; +const MATCH_VLE8FF_V: u32 = 0x1000007; +const MASK_VLE8FF_V: u32 = 0xfdf0707f; +const MATCH_VLM_V: u32 = 0x2b00007; +const MASK_VLM_V: u32 = 0xfff0707f; +const MATCH_VLOXEI16_V: u32 = 0xc005007; +const MASK_VLOXEI16_V: u32 = 0xfc00707f; +const MATCH_VLOXEI32_V: u32 = 0xc006007; +const MASK_VLOXEI32_V: u32 = 0xfc00707f; +const MATCH_VLOXEI64_V: u32 = 0xc007007; +const MASK_VLOXEI64_V: u32 = 0xfc00707f; +const MATCH_VLOXEI8_V: u32 = 0xc000007; +const MASK_VLOXEI8_V: u32 = 0xfc00707f; +const MATCH_VLOXSEG2EI16_V: u32 = 0x2c005007; +const MASK_VLOXSEG2EI16_V: u32 = 0xfc00707f; +const MATCH_VLOXSEG2EI32_V: u32 = 0x2c006007; +const MASK_VLOXSEG2EI32_V: u32 = 0xfc00707f; +const MATCH_VLOXSEG2EI64_V: u32 = 0x2c007007; +const MASK_VLOXSEG2EI64_V: u32 = 0xfc00707f; +const MATCH_VLOXSEG2EI8_V: u32 = 0x2c000007; +const MASK_VLOXSEG2EI8_V: u32 = 0xfc00707f; +const MATCH_VLOXSEG3EI16_V: u32 = 0x4c005007; +const MASK_VLOXSEG3EI16_V: u32 = 0xfc00707f; +const MATCH_VLOXSEG3EI32_V: u32 = 0x4c006007; +const MASK_VLOXSEG3EI32_V: u32 = 0xfc00707f; +const MATCH_VLOXSEG3EI64_V: u32 = 0x4c007007; +const MASK_VLOXSEG3EI64_V: u32 = 0xfc00707f; +const MATCH_VLOXSEG3EI8_V: u32 = 0x4c000007; +const MASK_VLOXSEG3EI8_V: u32 = 0xfc00707f; +const MATCH_VLOXSEG4EI16_V: u32 = 0x6c005007; +const MASK_VLOXSEG4EI16_V: u32 = 0xfc00707f; +const MATCH_VLOXSEG4EI32_V: u32 = 0x6c006007; +const MASK_VLOXSEG4EI32_V: u32 = 0xfc00707f; +const MATCH_VLOXSEG4EI64_V: u32 = 0x6c007007; +const MASK_VLOXSEG4EI64_V: u32 = 0xfc00707f; +const MATCH_VLOXSEG4EI8_V: u32 = 0x6c000007; +const MASK_VLOXSEG4EI8_V: u32 = 0xfc00707f; +const MATCH_VLOXSEG5EI16_V: u32 = 0x8c005007; +const MASK_VLOXSEG5EI16_V: u32 = 0xfc00707f; +const MATCH_VLOXSEG5EI32_V: u32 = 0x8c006007; +const MASK_VLOXSEG5EI32_V: u32 = 0xfc00707f; +const MATCH_VLOXSEG5EI64_V: u32 = 0x8c007007; +const MASK_VLOXSEG5EI64_V: u32 = 0xfc00707f; +const MATCH_VLOXSEG5EI8_V: u32 = 0x8c000007; +const MASK_VLOXSEG5EI8_V: u32 = 0xfc00707f; +const MATCH_VLOXSEG6EI16_V: u32 = 0xac005007; +const MASK_VLOXSEG6EI16_V: u32 = 0xfc00707f; +const MATCH_VLOXSEG6EI32_V: u32 = 0xac006007; +const MASK_VLOXSEG6EI32_V: u32 = 0xfc00707f; +const MATCH_VLOXSEG6EI64_V: u32 = 0xac007007; +const MASK_VLOXSEG6EI64_V: u32 = 0xfc00707f; +const MATCH_VLOXSEG6EI8_V: u32 = 0xac000007; +const MASK_VLOXSEG6EI8_V: u32 = 0xfc00707f; +const MATCH_VLOXSEG7EI16_V: u32 = 0xcc005007; +const MASK_VLOXSEG7EI16_V: u32 = 0xfc00707f; +const MATCH_VLOXSEG7EI32_V: u32 = 0xcc006007; +const MASK_VLOXSEG7EI32_V: u32 = 0xfc00707f; +const MATCH_VLOXSEG7EI64_V: u32 = 0xcc007007; +const MASK_VLOXSEG7EI64_V: u32 = 0xfc00707f; +const MATCH_VLOXSEG7EI8_V: u32 = 0xcc000007; +const MASK_VLOXSEG7EI8_V: u32 = 0xfc00707f; +const MATCH_VLOXSEG8EI16_V: u32 = 0xec005007; +const MASK_VLOXSEG8EI16_V: u32 = 0xfc00707f; +const MATCH_VLOXSEG8EI32_V: u32 = 0xec006007; +const MASK_VLOXSEG8EI32_V: u32 = 0xfc00707f; +const MATCH_VLOXSEG8EI64_V: u32 = 0xec007007; +const MASK_VLOXSEG8EI64_V: u32 = 0xfc00707f; +const MATCH_VLOXSEG8EI8_V: u32 = 0xec000007; +const MASK_VLOXSEG8EI8_V: u32 = 0xfc00707f; +const MATCH_VLSE16_V: u32 = 0x8005007; +const MASK_VLSE16_V: u32 = 0xfc00707f; +const MATCH_VLSE32_V: u32 = 0x8006007; +const MASK_VLSE32_V: u32 = 0xfc00707f; +const MATCH_VLSE64_V: u32 = 0x8007007; +const MASK_VLSE64_V: u32 = 0xfc00707f; +const MATCH_VLSE8_V: u32 = 0x8000007; +const MASK_VLSE8_V: u32 = 0xfc00707f; +const MATCH_VLSEG2E16_V: u32 = 0x20005007; +const MASK_VLSEG2E16_V: u32 = 0xfdf0707f; +const MATCH_VLSEG2E16FF_V: u32 = 0x21005007; +const MASK_VLSEG2E16FF_V: u32 = 0xfdf0707f; +const MATCH_VLSEG2E32_V: u32 = 0x20006007; +const MASK_VLSEG2E32_V: u32 = 0xfdf0707f; +const MATCH_VLSEG2E32FF_V: u32 = 0x21006007; +const MASK_VLSEG2E32FF_V: u32 = 0xfdf0707f; +const MATCH_VLSEG2E64_V: u32 = 0x20007007; +const MASK_VLSEG2E64_V: u32 = 0xfdf0707f; +const MATCH_VLSEG2E64FF_V: u32 = 0x21007007; +const MASK_VLSEG2E64FF_V: u32 = 0xfdf0707f; +const MATCH_VLSEG2E8_V: u32 = 0x20000007; +const MASK_VLSEG2E8_V: u32 = 0xfdf0707f; +const MATCH_VLSEG2E8FF_V: u32 = 0x21000007; +const MASK_VLSEG2E8FF_V: u32 = 0xfdf0707f; +const MATCH_VLSEG3E16_V: u32 = 0x40005007; +const MASK_VLSEG3E16_V: u32 = 0xfdf0707f; +const MATCH_VLSEG3E16FF_V: u32 = 0x41005007; +const MASK_VLSEG3E16FF_V: u32 = 0xfdf0707f; +const MATCH_VLSEG3E32_V: u32 = 0x40006007; +const MASK_VLSEG3E32_V: u32 = 0xfdf0707f; +const MATCH_VLSEG3E32FF_V: u32 = 0x41006007; +const MASK_VLSEG3E32FF_V: u32 = 0xfdf0707f; +const MATCH_VLSEG3E64_V: u32 = 0x40007007; +const MASK_VLSEG3E64_V: u32 = 0xfdf0707f; +const MATCH_VLSEG3E64FF_V: u32 = 0x41007007; +const MASK_VLSEG3E64FF_V: u32 = 0xfdf0707f; +const MATCH_VLSEG3E8_V: u32 = 0x40000007; +const MASK_VLSEG3E8_V: u32 = 0xfdf0707f; +const MATCH_VLSEG3E8FF_V: u32 = 0x41000007; +const MASK_VLSEG3E8FF_V: u32 = 0xfdf0707f; +const MATCH_VLSEG4E16_V: u32 = 0x60005007; +const MASK_VLSEG4E16_V: u32 = 0xfdf0707f; +const MATCH_VLSEG4E16FF_V: u32 = 0x61005007; +const MASK_VLSEG4E16FF_V: u32 = 0xfdf0707f; +const MATCH_VLSEG4E32_V: u32 = 0x60006007; +const MASK_VLSEG4E32_V: u32 = 0xfdf0707f; +const MATCH_VLSEG4E32FF_V: u32 = 0x61006007; +const MASK_VLSEG4E32FF_V: u32 = 0xfdf0707f; +const MATCH_VLSEG4E64_V: u32 = 0x60007007; +const MASK_VLSEG4E64_V: u32 = 0xfdf0707f; +const MATCH_VLSEG4E64FF_V: u32 = 0x61007007; +const MASK_VLSEG4E64FF_V: u32 = 0xfdf0707f; +const MATCH_VLSEG4E8_V: u32 = 0x60000007; +const MASK_VLSEG4E8_V: u32 = 0xfdf0707f; +const MATCH_VLSEG4E8FF_V: u32 = 0x61000007; +const MASK_VLSEG4E8FF_V: u32 = 0xfdf0707f; +const MATCH_VLSEG5E16_V: u32 = 0x80005007; +const MASK_VLSEG5E16_V: u32 = 0xfdf0707f; +const MATCH_VLSEG5E16FF_V: u32 = 0x81005007; +const MASK_VLSEG5E16FF_V: u32 = 0xfdf0707f; +const MATCH_VLSEG5E32_V: u32 = 0x80006007; +const MASK_VLSEG5E32_V: u32 = 0xfdf0707f; +const MATCH_VLSEG5E32FF_V: u32 = 0x81006007; +const MASK_VLSEG5E32FF_V: u32 = 0xfdf0707f; +const MATCH_VLSEG5E64_V: u32 = 0x80007007; +const MASK_VLSEG5E64_V: u32 = 0xfdf0707f; +const MATCH_VLSEG5E64FF_V: u32 = 0x81007007; +const MASK_VLSEG5E64FF_V: u32 = 0xfdf0707f; +const MATCH_VLSEG5E8_V: u32 = 0x80000007; +const MASK_VLSEG5E8_V: u32 = 0xfdf0707f; +const MATCH_VLSEG5E8FF_V: u32 = 0x81000007; +const MASK_VLSEG5E8FF_V: u32 = 0xfdf0707f; +const MATCH_VLSEG6E16_V: u32 = 0xa0005007; +const MASK_VLSEG6E16_V: u32 = 0xfdf0707f; +const MATCH_VLSEG6E16FF_V: u32 = 0xa1005007; +const MASK_VLSEG6E16FF_V: u32 = 0xfdf0707f; +const MATCH_VLSEG6E32_V: u32 = 0xa0006007; +const MASK_VLSEG6E32_V: u32 = 0xfdf0707f; +const MATCH_VLSEG6E32FF_V: u32 = 0xa1006007; +const MASK_VLSEG6E32FF_V: u32 = 0xfdf0707f; +const MATCH_VLSEG6E64_V: u32 = 0xa0007007; +const MASK_VLSEG6E64_V: u32 = 0xfdf0707f; +const MATCH_VLSEG6E64FF_V: u32 = 0xa1007007; +const MASK_VLSEG6E64FF_V: u32 = 0xfdf0707f; +const MATCH_VLSEG6E8_V: u32 = 0xa0000007; +const MASK_VLSEG6E8_V: u32 = 0xfdf0707f; +const MATCH_VLSEG6E8FF_V: u32 = 0xa1000007; +const MASK_VLSEG6E8FF_V: u32 = 0xfdf0707f; +const MATCH_VLSEG7E16_V: u32 = 0xc0005007; +const MASK_VLSEG7E16_V: u32 = 0xfdf0707f; +const MATCH_VLSEG7E16FF_V: u32 = 0xc1005007; +const MASK_VLSEG7E16FF_V: u32 = 0xfdf0707f; +const MATCH_VLSEG7E32_V: u32 = 0xc0006007; +const MASK_VLSEG7E32_V: u32 = 0xfdf0707f; +const MATCH_VLSEG7E32FF_V: u32 = 0xc1006007; +const MASK_VLSEG7E32FF_V: u32 = 0xfdf0707f; +const MATCH_VLSEG7E64_V: u32 = 0xc0007007; +const MASK_VLSEG7E64_V: u32 = 0xfdf0707f; +const MATCH_VLSEG7E64FF_V: u32 = 0xc1007007; +const MASK_VLSEG7E64FF_V: u32 = 0xfdf0707f; +const MATCH_VLSEG7E8_V: u32 = 0xc0000007; +const MASK_VLSEG7E8_V: u32 = 0xfdf0707f; +const MATCH_VLSEG7E8FF_V: u32 = 0xc1000007; +const MASK_VLSEG7E8FF_V: u32 = 0xfdf0707f; +const MATCH_VLSEG8E16_V: u32 = 0xe0005007; +const MASK_VLSEG8E16_V: u32 = 0xfdf0707f; +const MATCH_VLSEG8E16FF_V: u32 = 0xe1005007; +const MASK_VLSEG8E16FF_V: u32 = 0xfdf0707f; +const MATCH_VLSEG8E32_V: u32 = 0xe0006007; +const MASK_VLSEG8E32_V: u32 = 0xfdf0707f; +const MATCH_VLSEG8E32FF_V: u32 = 0xe1006007; +const MASK_VLSEG8E32FF_V: u32 = 0xfdf0707f; +const MATCH_VLSEG8E64_V: u32 = 0xe0007007; +const MASK_VLSEG8E64_V: u32 = 0xfdf0707f; +const MATCH_VLSEG8E64FF_V: u32 = 0xe1007007; +const MASK_VLSEG8E64FF_V: u32 = 0xfdf0707f; +const MATCH_VLSEG8E8_V: u32 = 0xe0000007; +const MASK_VLSEG8E8_V: u32 = 0xfdf0707f; +const MATCH_VLSEG8E8FF_V: u32 = 0xe1000007; +const MASK_VLSEG8E8FF_V: u32 = 0xfdf0707f; +const MATCH_VLSSEG2E16_V: u32 = 0x28005007; +const MASK_VLSSEG2E16_V: u32 = 0xfc00707f; +const MATCH_VLSSEG2E32_V: u32 = 0x28006007; +const MASK_VLSSEG2E32_V: u32 = 0xfc00707f; +const MATCH_VLSSEG2E64_V: u32 = 0x28007007; +const MASK_VLSSEG2E64_V: u32 = 0xfc00707f; +const MATCH_VLSSEG2E8_V: u32 = 0x28000007; +const MASK_VLSSEG2E8_V: u32 = 0xfc00707f; +const MATCH_VLSSEG3E16_V: u32 = 0x48005007; +const MASK_VLSSEG3E16_V: u32 = 0xfc00707f; +const MATCH_VLSSEG3E32_V: u32 = 0x48006007; +const MASK_VLSSEG3E32_V: u32 = 0xfc00707f; +const MATCH_VLSSEG3E64_V: u32 = 0x48007007; +const MASK_VLSSEG3E64_V: u32 = 0xfc00707f; +const MATCH_VLSSEG3E8_V: u32 = 0x48000007; +const MASK_VLSSEG3E8_V: u32 = 0xfc00707f; +const MATCH_VLSSEG4E16_V: u32 = 0x68005007; +const MASK_VLSSEG4E16_V: u32 = 0xfc00707f; +const MATCH_VLSSEG4E32_V: u32 = 0x68006007; +const MASK_VLSSEG4E32_V: u32 = 0xfc00707f; +const MATCH_VLSSEG4E64_V: u32 = 0x68007007; +const MASK_VLSSEG4E64_V: u32 = 0xfc00707f; +const MATCH_VLSSEG4E8_V: u32 = 0x68000007; +const MASK_VLSSEG4E8_V: u32 = 0xfc00707f; +const MATCH_VLSSEG5E16_V: u32 = 0x88005007; +const MASK_VLSSEG5E16_V: u32 = 0xfc00707f; +const MATCH_VLSSEG5E32_V: u32 = 0x88006007; +const MASK_VLSSEG5E32_V: u32 = 0xfc00707f; +const MATCH_VLSSEG5E64_V: u32 = 0x88007007; +const MASK_VLSSEG5E64_V: u32 = 0xfc00707f; +const MATCH_VLSSEG5E8_V: u32 = 0x88000007; +const MASK_VLSSEG5E8_V: u32 = 0xfc00707f; +const MATCH_VLSSEG6E16_V: u32 = 0xa8005007; +const MASK_VLSSEG6E16_V: u32 = 0xfc00707f; +const MATCH_VLSSEG6E32_V: u32 = 0xa8006007; +const MASK_VLSSEG6E32_V: u32 = 0xfc00707f; +const MATCH_VLSSEG6E64_V: u32 = 0xa8007007; +const MASK_VLSSEG6E64_V: u32 = 0xfc00707f; +const MATCH_VLSSEG6E8_V: u32 = 0xa8000007; +const MASK_VLSSEG6E8_V: u32 = 0xfc00707f; +const MATCH_VLSSEG7E16_V: u32 = 0xc8005007; +const MASK_VLSSEG7E16_V: u32 = 0xfc00707f; +const MATCH_VLSSEG7E32_V: u32 = 0xc8006007; +const MASK_VLSSEG7E32_V: u32 = 0xfc00707f; +const MATCH_VLSSEG7E64_V: u32 = 0xc8007007; +const MASK_VLSSEG7E64_V: u32 = 0xfc00707f; +const MATCH_VLSSEG7E8_V: u32 = 0xc8000007; +const MASK_VLSSEG7E8_V: u32 = 0xfc00707f; +const MATCH_VLSSEG8E16_V: u32 = 0xe8005007; +const MASK_VLSSEG8E16_V: u32 = 0xfc00707f; +const MATCH_VLSSEG8E32_V: u32 = 0xe8006007; +const MASK_VLSSEG8E32_V: u32 = 0xfc00707f; +const MATCH_VLSSEG8E64_V: u32 = 0xe8007007; +const MASK_VLSSEG8E64_V: u32 = 0xfc00707f; +const MATCH_VLSSEG8E8_V: u32 = 0xe8000007; +const MASK_VLSSEG8E8_V: u32 = 0xfc00707f; +const MATCH_VLUXEI16_V: u32 = 0x4005007; +const MASK_VLUXEI16_V: u32 = 0xfc00707f; +const MATCH_VLUXEI32_V: u32 = 0x4006007; +const MASK_VLUXEI32_V: u32 = 0xfc00707f; +const MATCH_VLUXEI64_V: u32 = 0x4007007; +const MASK_VLUXEI64_V: u32 = 0xfc00707f; +const MATCH_VLUXEI8_V: u32 = 0x4000007; +const MASK_VLUXEI8_V: u32 = 0xfc00707f; +const MATCH_VLUXSEG2EI16_V: u32 = 0x24005007; +const MASK_VLUXSEG2EI16_V: u32 = 0xfc00707f; +const MATCH_VLUXSEG2EI32_V: u32 = 0x24006007; +const MASK_VLUXSEG2EI32_V: u32 = 0xfc00707f; +const MATCH_VLUXSEG2EI64_V: u32 = 0x24007007; +const MASK_VLUXSEG2EI64_V: u32 = 0xfc00707f; +const MATCH_VLUXSEG2EI8_V: u32 = 0x24000007; +const MASK_VLUXSEG2EI8_V: u32 = 0xfc00707f; +const MATCH_VLUXSEG3EI16_V: u32 = 0x44005007; +const MASK_VLUXSEG3EI16_V: u32 = 0xfc00707f; +const MATCH_VLUXSEG3EI32_V: u32 = 0x44006007; +const MASK_VLUXSEG3EI32_V: u32 = 0xfc00707f; +const MATCH_VLUXSEG3EI64_V: u32 = 0x44007007; +const MASK_VLUXSEG3EI64_V: u32 = 0xfc00707f; +const MATCH_VLUXSEG3EI8_V: u32 = 0x44000007; +const MASK_VLUXSEG3EI8_V: u32 = 0xfc00707f; +const MATCH_VLUXSEG4EI16_V: u32 = 0x64005007; +const MASK_VLUXSEG4EI16_V: u32 = 0xfc00707f; +const MATCH_VLUXSEG4EI32_V: u32 = 0x64006007; +const MASK_VLUXSEG4EI32_V: u32 = 0xfc00707f; +const MATCH_VLUXSEG4EI64_V: u32 = 0x64007007; +const MASK_VLUXSEG4EI64_V: u32 = 0xfc00707f; +const MATCH_VLUXSEG4EI8_V: u32 = 0x64000007; +const MASK_VLUXSEG4EI8_V: u32 = 0xfc00707f; +const MATCH_VLUXSEG5EI16_V: u32 = 0x84005007; +const MASK_VLUXSEG5EI16_V: u32 = 0xfc00707f; +const MATCH_VLUXSEG5EI32_V: u32 = 0x84006007; +const MASK_VLUXSEG5EI32_V: u32 = 0xfc00707f; +const MATCH_VLUXSEG5EI64_V: u32 = 0x84007007; +const MASK_VLUXSEG5EI64_V: u32 = 0xfc00707f; +const MATCH_VLUXSEG5EI8_V: u32 = 0x84000007; +const MASK_VLUXSEG5EI8_V: u32 = 0xfc00707f; +const MATCH_VLUXSEG6EI16_V: u32 = 0xa4005007; +const MASK_VLUXSEG6EI16_V: u32 = 0xfc00707f; +const MATCH_VLUXSEG6EI32_V: u32 = 0xa4006007; +const MASK_VLUXSEG6EI32_V: u32 = 0xfc00707f; +const MATCH_VLUXSEG6EI64_V: u32 = 0xa4007007; +const MASK_VLUXSEG6EI64_V: u32 = 0xfc00707f; +const MATCH_VLUXSEG6EI8_V: u32 = 0xa4000007; +const MASK_VLUXSEG6EI8_V: u32 = 0xfc00707f; +const MATCH_VLUXSEG7EI16_V: u32 = 0xc4005007; +const MASK_VLUXSEG7EI16_V: u32 = 0xfc00707f; +const MATCH_VLUXSEG7EI32_V: u32 = 0xc4006007; +const MASK_VLUXSEG7EI32_V: u32 = 0xfc00707f; +const MATCH_VLUXSEG7EI64_V: u32 = 0xc4007007; +const MASK_VLUXSEG7EI64_V: u32 = 0xfc00707f; +const MATCH_VLUXSEG7EI8_V: u32 = 0xc4000007; +const MASK_VLUXSEG7EI8_V: u32 = 0xfc00707f; +const MATCH_VLUXSEG8EI16_V: u32 = 0xe4005007; +const MASK_VLUXSEG8EI16_V: u32 = 0xfc00707f; +const MATCH_VLUXSEG8EI32_V: u32 = 0xe4006007; +const MASK_VLUXSEG8EI32_V: u32 = 0xfc00707f; +const MATCH_VLUXSEG8EI64_V: u32 = 0xe4007007; +const MASK_VLUXSEG8EI64_V: u32 = 0xfc00707f; +const MATCH_VLUXSEG8EI8_V: u32 = 0xe4000007; +const MASK_VLUXSEG8EI8_V: u32 = 0xfc00707f; +const MATCH_VMACC_VV: u32 = 0xb4002057; +const MASK_VMACC_VV: u32 = 0xfc00707f; +const MATCH_VMACC_VX: u32 = 0xb4006057; +const MASK_VMACC_VX: u32 = 0xfc00707f; +const MATCH_VMADC_VI: u32 = 0x46003057; +const MASK_VMADC_VI: u32 = 0xfe00707f; +const MATCH_VMADC_VIM: u32 = 0x44003057; +const MASK_VMADC_VIM: u32 = 0xfe00707f; +const MATCH_VMADC_VV: u32 = 0x46000057; +const MASK_VMADC_VV: u32 = 0xfe00707f; +const MATCH_VMADC_VVM: u32 = 0x44000057; +const MASK_VMADC_VVM: u32 = 0xfe00707f; +const MATCH_VMADC_VX: u32 = 0x46004057; +const MASK_VMADC_VX: u32 = 0xfe00707f; +const MATCH_VMADC_VXM: u32 = 0x44004057; +const MASK_VMADC_VXM: u32 = 0xfe00707f; +const MATCH_VMADD_VV: u32 = 0xa4002057; +const MASK_VMADD_VV: u32 = 0xfc00707f; +const MATCH_VMADD_VX: u32 = 0xa4006057; +const MASK_VMADD_VX: u32 = 0xfc00707f; +const MATCH_VMAND_MM: u32 = 0x66002057; +const MASK_VMAND_MM: u32 = 0xfe00707f; +const MATCH_VMANDN_MM: u32 = 0x62002057; +const MASK_VMANDN_MM: u32 = 0xfe00707f; +const MATCH_VMAX_VV: u32 = 0x1c000057; +const MASK_VMAX_VV: u32 = 0xfc00707f; +const MATCH_VMAX_VX: u32 = 0x1c004057; +const MASK_VMAX_VX: u32 = 0xfc00707f; +const MATCH_VMAXU_VV: u32 = 0x18000057; +const MASK_VMAXU_VV: u32 = 0xfc00707f; +const MATCH_VMAXU_VX: u32 = 0x18004057; +const MASK_VMAXU_VX: u32 = 0xfc00707f; +const MATCH_VMERGE_VIM: u32 = 0x5c003057; +const MASK_VMERGE_VIM: u32 = 0xfe00707f; +const MATCH_VMERGE_VVM: u32 = 0x5c000057; +const MASK_VMERGE_VVM: u32 = 0xfe00707f; +const MATCH_VMERGE_VXM: u32 = 0x5c004057; +const MASK_VMERGE_VXM: u32 = 0xfe00707f; +const MATCH_VMFEQ_VF: u32 = 0x60005057; +const MASK_VMFEQ_VF: u32 = 0xfc00707f; +const MATCH_VMFEQ_VV: u32 = 0x60001057; +const MASK_VMFEQ_VV: u32 = 0xfc00707f; +const MATCH_VMFGE_VF: u32 = 0x7c005057; +const MASK_VMFGE_VF: u32 = 0xfc00707f; +const MATCH_VMFGT_VF: u32 = 0x74005057; +const MASK_VMFGT_VF: u32 = 0xfc00707f; +const MATCH_VMFLE_VF: u32 = 0x64005057; +const MASK_VMFLE_VF: u32 = 0xfc00707f; +const MATCH_VMFLE_VV: u32 = 0x64001057; +const MASK_VMFLE_VV: u32 = 0xfc00707f; +const MATCH_VMFLT_VF: u32 = 0x6c005057; +const MASK_VMFLT_VF: u32 = 0xfc00707f; +const MATCH_VMFLT_VV: u32 = 0x6c001057; +const MASK_VMFLT_VV: u32 = 0xfc00707f; +const MATCH_VMFNE_VF: u32 = 0x70005057; +const MASK_VMFNE_VF: u32 = 0xfc00707f; +const MATCH_VMFNE_VV: u32 = 0x70001057; +const MASK_VMFNE_VV: u32 = 0xfc00707f; +const MATCH_VMIN_VV: u32 = 0x14000057; +const MASK_VMIN_VV: u32 = 0xfc00707f; +const MATCH_VMIN_VX: u32 = 0x14004057; +const MASK_VMIN_VX: u32 = 0xfc00707f; +const MATCH_VMINU_VV: u32 = 0x10000057; +const MASK_VMINU_VV: u32 = 0xfc00707f; +const MATCH_VMINU_VX: u32 = 0x10004057; +const MASK_VMINU_VX: u32 = 0xfc00707f; +const MATCH_VMNAND_MM: u32 = 0x76002057; +const MASK_VMNAND_MM: u32 = 0xfe00707f; +const MATCH_VMNOR_MM: u32 = 0x7a002057; +const MASK_VMNOR_MM: u32 = 0xfe00707f; +const MATCH_VMOR_MM: u32 = 0x6a002057; +const MASK_VMOR_MM: u32 = 0xfe00707f; +const MATCH_VMORN_MM: u32 = 0x72002057; +const MASK_VMORN_MM: u32 = 0xfe00707f; +const MATCH_VMSBC_VV: u32 = 0x4e000057; +const MASK_VMSBC_VV: u32 = 0xfe00707f; +const MATCH_VMSBC_VVM: u32 = 0x4c000057; +const MASK_VMSBC_VVM: u32 = 0xfe00707f; +const MATCH_VMSBC_VX: u32 = 0x4e004057; +const MASK_VMSBC_VX: u32 = 0xfe00707f; +const MATCH_VMSBC_VXM: u32 = 0x4c004057; +const MASK_VMSBC_VXM: u32 = 0xfe00707f; +const MATCH_VMSBF_M: u32 = 0x5000a057; +const MASK_VMSBF_M: u32 = 0xfc0ff07f; +const MATCH_VMSEQ_VI: u32 = 0x60003057; +const MASK_VMSEQ_VI: u32 = 0xfc00707f; +const MATCH_VMSEQ_VV: u32 = 0x60000057; +const MASK_VMSEQ_VV: u32 = 0xfc00707f; +const MATCH_VMSEQ_VX: u32 = 0x60004057; +const MASK_VMSEQ_VX: u32 = 0xfc00707f; +const MATCH_VMSGT_VI: u32 = 0x7c003057; +const MASK_VMSGT_VI: u32 = 0xfc00707f; +const MATCH_VMSGT_VX: u32 = 0x7c004057; +const MASK_VMSGT_VX: u32 = 0xfc00707f; +const MATCH_VMSGTU_VI: u32 = 0x78003057; +const MASK_VMSGTU_VI: u32 = 0xfc00707f; +const MATCH_VMSGTU_VX: u32 = 0x78004057; +const MASK_VMSGTU_VX: u32 = 0xfc00707f; +const MATCH_VMSIF_M: u32 = 0x5001a057; +const MASK_VMSIF_M: u32 = 0xfc0ff07f; +const MATCH_VMSLE_VI: u32 = 0x74003057; +const MASK_VMSLE_VI: u32 = 0xfc00707f; +const MATCH_VMSLE_VV: u32 = 0x74000057; +const MASK_VMSLE_VV: u32 = 0xfc00707f; +const MATCH_VMSLE_VX: u32 = 0x74004057; +const MASK_VMSLE_VX: u32 = 0xfc00707f; +const MATCH_VMSLEU_VI: u32 = 0x70003057; +const MASK_VMSLEU_VI: u32 = 0xfc00707f; +const MATCH_VMSLEU_VV: u32 = 0x70000057; +const MASK_VMSLEU_VV: u32 = 0xfc00707f; +const MATCH_VMSLEU_VX: u32 = 0x70004057; +const MASK_VMSLEU_VX: u32 = 0xfc00707f; +const MATCH_VMSLT_VV: u32 = 0x6c000057; +const MASK_VMSLT_VV: u32 = 0xfc00707f; +const MATCH_VMSLT_VX: u32 = 0x6c004057; +const MASK_VMSLT_VX: u32 = 0xfc00707f; +const MATCH_VMSLTU_VV: u32 = 0x68000057; +const MASK_VMSLTU_VV: u32 = 0xfc00707f; +const MATCH_VMSLTU_VX: u32 = 0x68004057; +const MASK_VMSLTU_VX: u32 = 0xfc00707f; +const MATCH_VMSNE_VI: u32 = 0x64003057; +const MASK_VMSNE_VI: u32 = 0xfc00707f; +const MATCH_VMSNE_VV: u32 = 0x64000057; +const MASK_VMSNE_VV: u32 = 0xfc00707f; +const MATCH_VMSNE_VX: u32 = 0x64004057; +const MASK_VMSNE_VX: u32 = 0xfc00707f; +const MATCH_VMSOF_M: u32 = 0x50012057; +const MASK_VMSOF_M: u32 = 0xfc0ff07f; +const MATCH_VMUL_VV: u32 = 0x94002057; +const MASK_VMUL_VV: u32 = 0xfc00707f; +const MATCH_VMUL_VX: u32 = 0x94006057; +const MASK_VMUL_VX: u32 = 0xfc00707f; +const MATCH_VMULH_VV: u32 = 0x9c002057; +const MASK_VMULH_VV: u32 = 0xfc00707f; +const MATCH_VMULH_VX: u32 = 0x9c006057; +const MASK_VMULH_VX: u32 = 0xfc00707f; +const MATCH_VMULHSU_VV: u32 = 0x98002057; +const MASK_VMULHSU_VV: u32 = 0xfc00707f; +const MATCH_VMULHSU_VX: u32 = 0x98006057; +const MASK_VMULHSU_VX: u32 = 0xfc00707f; +const MATCH_VMULHU_VV: u32 = 0x90002057; +const MASK_VMULHU_VV: u32 = 0xfc00707f; +const MATCH_VMULHU_VX: u32 = 0x90006057; +const MASK_VMULHU_VX: u32 = 0xfc00707f; +const MATCH_VMV1R_V: u32 = 0x9e003057; +const MASK_VMV1R_V: u32 = 0xfe0ff07f; +const MATCH_VMV2R_V: u32 = 0x9e00b057; +const MASK_VMV2R_V: u32 = 0xfe0ff07f; +const MATCH_VMV4R_V: u32 = 0x9e01b057; +const MASK_VMV4R_V: u32 = 0xfe0ff07f; +const MATCH_VMV8R_V: u32 = 0x9e03b057; +const MASK_VMV8R_V: u32 = 0xfe0ff07f; +const MATCH_VMV_S_X: u32 = 0x42006057; +const MASK_VMV_S_X: u32 = 0xfff0707f; +const MATCH_VMV_V_I: u32 = 0x5e003057; +const MASK_VMV_V_I: u32 = 0xfff0707f; +const MATCH_VMV_V_V: u32 = 0x5e000057; +const MASK_VMV_V_V: u32 = 0xfff0707f; +const MATCH_VMV_V_X: u32 = 0x5e004057; +const MASK_VMV_V_X: u32 = 0xfff0707f; +const MATCH_VMV_X_S: u32 = 0x42002057; +const MASK_VMV_X_S: u32 = 0xfe0ff07f; +const MATCH_VMXNOR_MM: u32 = 0x7e002057; +const MASK_VMXNOR_MM: u32 = 0xfe00707f; +const MATCH_VMXOR_MM: u32 = 0x6e002057; +const MASK_VMXOR_MM: u32 = 0xfe00707f; +const MATCH_VNCLIP_WI: u32 = 0xbc003057; +const MASK_VNCLIP_WI: u32 = 0xfc00707f; +const MATCH_VNCLIP_WV: u32 = 0xbc000057; +const MASK_VNCLIP_WV: u32 = 0xfc00707f; +const MATCH_VNCLIP_WX: u32 = 0xbc004057; +const MASK_VNCLIP_WX: u32 = 0xfc00707f; +const MATCH_VNCLIPU_WI: u32 = 0xb8003057; +const MASK_VNCLIPU_WI: u32 = 0xfc00707f; +const MATCH_VNCLIPU_WV: u32 = 0xb8000057; +const MASK_VNCLIPU_WV: u32 = 0xfc00707f; +const MATCH_VNCLIPU_WX: u32 = 0xb8004057; +const MASK_VNCLIPU_WX: u32 = 0xfc00707f; +const MATCH_VNMSAC_VV: u32 = 0xbc002057; +const MASK_VNMSAC_VV: u32 = 0xfc00707f; +const MATCH_VNMSAC_VX: u32 = 0xbc006057; +const MASK_VNMSAC_VX: u32 = 0xfc00707f; +const MATCH_VNMSUB_VV: u32 = 0xac002057; +const MASK_VNMSUB_VV: u32 = 0xfc00707f; +const MATCH_VNMSUB_VX: u32 = 0xac006057; +const MASK_VNMSUB_VX: u32 = 0xfc00707f; +const MATCH_VNSRA_WI: u32 = 0xb4003057; +const MASK_VNSRA_WI: u32 = 0xfc00707f; +const MATCH_VNSRA_WV: u32 = 0xb4000057; +const MASK_VNSRA_WV: u32 = 0xfc00707f; +const MATCH_VNSRA_WX: u32 = 0xb4004057; +const MASK_VNSRA_WX: u32 = 0xfc00707f; +const MATCH_VNSRL_WI: u32 = 0xb0003057; +const MASK_VNSRL_WI: u32 = 0xfc00707f; +const MATCH_VNSRL_WV: u32 = 0xb0000057; +const MASK_VNSRL_WV: u32 = 0xfc00707f; +const MATCH_VNSRL_WX: u32 = 0xb0004057; +const MASK_VNSRL_WX: u32 = 0xfc00707f; +const MATCH_VOR_VI: u32 = 0x28003057; +const MASK_VOR_VI: u32 = 0xfc00707f; +const MATCH_VOR_VV: u32 = 0x28000057; +const MASK_VOR_VV: u32 = 0xfc00707f; +const MATCH_VOR_VX: u32 = 0x28004057; +const MASK_VOR_VX: u32 = 0xfc00707f; +const MATCH_VREDAND_VS: u32 = 0x4002057; +const MASK_VREDAND_VS: u32 = 0xfc00707f; +const MATCH_VREDMAX_VS: u32 = 0x1c002057; +const MASK_VREDMAX_VS: u32 = 0xfc00707f; +const MATCH_VREDMAXU_VS: u32 = 0x18002057; +const MASK_VREDMAXU_VS: u32 = 0xfc00707f; +const MATCH_VREDMIN_VS: u32 = 0x14002057; +const MASK_VREDMIN_VS: u32 = 0xfc00707f; +const MATCH_VREDMINU_VS: u32 = 0x10002057; +const MASK_VREDMINU_VS: u32 = 0xfc00707f; +const MATCH_VREDOR_VS: u32 = 0x8002057; +const MASK_VREDOR_VS: u32 = 0xfc00707f; +const MATCH_VREDSUM_VS: u32 = 0x2057; +const MASK_VREDSUM_VS: u32 = 0xfc00707f; +const MATCH_VREDXOR_VS: u32 = 0xc002057; +const MASK_VREDXOR_VS: u32 = 0xfc00707f; +const MATCH_VREM_VV: u32 = 0x8c002057; +const MASK_VREM_VV: u32 = 0xfc00707f; +const MATCH_VREM_VX: u32 = 0x8c006057; +const MASK_VREM_VX: u32 = 0xfc00707f; +const MATCH_VREMU_VV: u32 = 0x88002057; +const MASK_VREMU_VV: u32 = 0xfc00707f; +const MATCH_VREMU_VX: u32 = 0x88006057; +const MASK_VREMU_VX: u32 = 0xfc00707f; +const MATCH_VREV8_V: u32 = 0x4804a057; +const MASK_VREV8_V: u32 = 0xfc0ff07f; +const MATCH_VRGATHER_VI: u32 = 0x30003057; +const MASK_VRGATHER_VI: u32 = 0xfc00707f; +const MATCH_VRGATHER_VV: u32 = 0x30000057; +const MASK_VRGATHER_VV: u32 = 0xfc00707f; +const MATCH_VRGATHER_VX: u32 = 0x30004057; +const MASK_VRGATHER_VX: u32 = 0xfc00707f; +const MATCH_VRGATHEREI16_VV: u32 = 0x38000057; +const MASK_VRGATHEREI16_VV: u32 = 0xfc00707f; +const MATCH_VROL_VV: u32 = 0x54000057; +const MASK_VROL_VV: u32 = 0xfc00707f; +const MATCH_VROL_VX: u32 = 0x54004057; +const MASK_VROL_VX: u32 = 0xfc00707f; +const MATCH_VROR_VI: u32 = 0x50003057; +const MASK_VROR_VI: u32 = 0xf800707f; +const MATCH_VROR_VV: u32 = 0x50000057; +const MASK_VROR_VV: u32 = 0xfc00707f; +const MATCH_VROR_VX: u32 = 0x50004057; +const MASK_VROR_VX: u32 = 0xfc00707f; +const MATCH_VRSUB_VI: u32 = 0xc003057; +const MASK_VRSUB_VI: u32 = 0xfc00707f; +const MATCH_VRSUB_VX: u32 = 0xc004057; +const MASK_VRSUB_VX: u32 = 0xfc00707f; +const MATCH_VS1R_V: u32 = 0x2800027; +const MASK_VS1R_V: u32 = 0xfff0707f; +const MATCH_VS2R_V: u32 = 0x22800027; +const MASK_VS2R_V: u32 = 0xfff0707f; +const MATCH_VS4R_V: u32 = 0x62800027; +const MASK_VS4R_V: u32 = 0xfff0707f; +const MATCH_VS8R_V: u32 = 0xe2800027; +const MASK_VS8R_V: u32 = 0xfff0707f; +const MATCH_VSADD_VI: u32 = 0x84003057; +const MASK_VSADD_VI: u32 = 0xfc00707f; +const MATCH_VSADD_VV: u32 = 0x84000057; +const MASK_VSADD_VV: u32 = 0xfc00707f; +const MATCH_VSADD_VX: u32 = 0x84004057; +const MASK_VSADD_VX: u32 = 0xfc00707f; +const MATCH_VSADDU_VI: u32 = 0x80003057; +const MASK_VSADDU_VI: u32 = 0xfc00707f; +const MATCH_VSADDU_VV: u32 = 0x80000057; +const MASK_VSADDU_VV: u32 = 0xfc00707f; +const MATCH_VSADDU_VX: u32 = 0x80004057; +const MASK_VSADDU_VX: u32 = 0xfc00707f; +const MATCH_VSBC_VVM: u32 = 0x48000057; +const MASK_VSBC_VVM: u32 = 0xfe00707f; +const MATCH_VSBC_VXM: u32 = 0x48004057; +const MASK_VSBC_VXM: u32 = 0xfe00707f; +const MATCH_VSE16_V: u32 = 0x5027; +const MASK_VSE16_V: u32 = 0xfdf0707f; +const MATCH_VSE32_V: u32 = 0x6027; +const MASK_VSE32_V: u32 = 0xfdf0707f; +const MATCH_VSE64_V: u32 = 0x7027; +const MASK_VSE64_V: u32 = 0xfdf0707f; +const MATCH_VSE8_V: u32 = 0x27; +const MASK_VSE8_V: u32 = 0xfdf0707f; +const MATCH_VSETIVLI: u32 = 0xc0007057; +const MASK_VSETIVLI: u32 = 0xc000707f; +const MATCH_VSETVL: u32 = 0x80007057; +const MASK_VSETVL: u32 = 0xfe00707f; +const MATCH_VSETVLI: u32 = 0x7057; +const MASK_VSETVLI: u32 = 0x8000707f; +const MATCH_VSEXT_VF2: u32 = 0x4803a057; +const MASK_VSEXT_VF2: u32 = 0xfc0ff07f; +const MATCH_VSEXT_VF4: u32 = 0x4802a057; +const MASK_VSEXT_VF4: u32 = 0xfc0ff07f; +const MATCH_VSEXT_VF8: u32 = 0x4801a057; +const MASK_VSEXT_VF8: u32 = 0xfc0ff07f; +const MATCH_VSHA2CH_VV: u32 = 0xba002077; +const MASK_VSHA2CH_VV: u32 = 0xfe00707f; +const MATCH_VSHA2CL_VV: u32 = 0xbe002077; +const MASK_VSHA2CL_VV: u32 = 0xfe00707f; +const MATCH_VSHA2MS_VV: u32 = 0xb6002077; +const MASK_VSHA2MS_VV: u32 = 0xfe00707f; +const MATCH_VSLIDE1DOWN_VX: u32 = 0x3c006057; +const MASK_VSLIDE1DOWN_VX: u32 = 0xfc00707f; +const MATCH_VSLIDE1UP_VX: u32 = 0x38006057; +const MASK_VSLIDE1UP_VX: u32 = 0xfc00707f; +const MATCH_VSLIDEDOWN_VI: u32 = 0x3c003057; +const MASK_VSLIDEDOWN_VI: u32 = 0xfc00707f; +const MATCH_VSLIDEDOWN_VX: u32 = 0x3c004057; +const MASK_VSLIDEDOWN_VX: u32 = 0xfc00707f; +const MATCH_VSLIDEUP_VI: u32 = 0x38003057; +const MASK_VSLIDEUP_VI: u32 = 0xfc00707f; +const MATCH_VSLIDEUP_VX: u32 = 0x38004057; +const MASK_VSLIDEUP_VX: u32 = 0xfc00707f; +const MATCH_VSLL_VI: u32 = 0x94003057; +const MASK_VSLL_VI: u32 = 0xfc00707f; +const MATCH_VSLL_VV: u32 = 0x94000057; +const MASK_VSLL_VV: u32 = 0xfc00707f; +const MATCH_VSLL_VX: u32 = 0x94004057; +const MASK_VSLL_VX: u32 = 0xfc00707f; +const MATCH_VSM3C_VI: u32 = 0xae002077; +const MASK_VSM3C_VI: u32 = 0xfe00707f; +const MATCH_VSM3ME_VV: u32 = 0x82002077; +const MASK_VSM3ME_VV: u32 = 0xfe00707f; +const MATCH_VSM4K_VI: u32 = 0x86002077; +const MASK_VSM4K_VI: u32 = 0xfe00707f; +const MATCH_VSM4R_VS: u32 = 0xa6082077; +const MASK_VSM4R_VS: u32 = 0xfe0ff07f; +const MATCH_VSM4R_VV: u32 = 0xa2082077; +const MASK_VSM4R_VV: u32 = 0xfe0ff07f; +const MATCH_VSM_V: u32 = 0x2b00027; +const MASK_VSM_V: u32 = 0xfff0707f; +const MATCH_VSMUL_VV: u32 = 0x9c000057; +const MASK_VSMUL_VV: u32 = 0xfc00707f; +const MATCH_VSMUL_VX: u32 = 0x9c004057; +const MASK_VSMUL_VX: u32 = 0xfc00707f; +const MATCH_VSOXEI16_V: u32 = 0xc005027; +const MASK_VSOXEI16_V: u32 = 0xfc00707f; +const MATCH_VSOXEI32_V: u32 = 0xc006027; +const MASK_VSOXEI32_V: u32 = 0xfc00707f; +const MATCH_VSOXEI64_V: u32 = 0xc007027; +const MASK_VSOXEI64_V: u32 = 0xfc00707f; +const MATCH_VSOXEI8_V: u32 = 0xc000027; +const MASK_VSOXEI8_V: u32 = 0xfc00707f; +const MATCH_VSOXSEG2EI16_V: u32 = 0x2c005027; +const MASK_VSOXSEG2EI16_V: u32 = 0xfc00707f; +const MATCH_VSOXSEG2EI32_V: u32 = 0x2c006027; +const MASK_VSOXSEG2EI32_V: u32 = 0xfc00707f; +const MATCH_VSOXSEG2EI64_V: u32 = 0x2c007027; +const MASK_VSOXSEG2EI64_V: u32 = 0xfc00707f; +const MATCH_VSOXSEG2EI8_V: u32 = 0x2c000027; +const MASK_VSOXSEG2EI8_V: u32 = 0xfc00707f; +const MATCH_VSOXSEG3EI16_V: u32 = 0x4c005027; +const MASK_VSOXSEG3EI16_V: u32 = 0xfc00707f; +const MATCH_VSOXSEG3EI32_V: u32 = 0x4c006027; +const MASK_VSOXSEG3EI32_V: u32 = 0xfc00707f; +const MATCH_VSOXSEG3EI64_V: u32 = 0x4c007027; +const MASK_VSOXSEG3EI64_V: u32 = 0xfc00707f; +const MATCH_VSOXSEG3EI8_V: u32 = 0x4c000027; +const MASK_VSOXSEG3EI8_V: u32 = 0xfc00707f; +const MATCH_VSOXSEG4EI16_V: u32 = 0x6c005027; +const MASK_VSOXSEG4EI16_V: u32 = 0xfc00707f; +const MATCH_VSOXSEG4EI32_V: u32 = 0x6c006027; +const MASK_VSOXSEG4EI32_V: u32 = 0xfc00707f; +const MATCH_VSOXSEG4EI64_V: u32 = 0x6c007027; +const MASK_VSOXSEG4EI64_V: u32 = 0xfc00707f; +const MATCH_VSOXSEG4EI8_V: u32 = 0x6c000027; +const MASK_VSOXSEG4EI8_V: u32 = 0xfc00707f; +const MATCH_VSOXSEG5EI16_V: u32 = 0x8c005027; +const MASK_VSOXSEG5EI16_V: u32 = 0xfc00707f; +const MATCH_VSOXSEG5EI32_V: u32 = 0x8c006027; +const MASK_VSOXSEG5EI32_V: u32 = 0xfc00707f; +const MATCH_VSOXSEG5EI64_V: u32 = 0x8c007027; +const MASK_VSOXSEG5EI64_V: u32 = 0xfc00707f; +const MATCH_VSOXSEG5EI8_V: u32 = 0x8c000027; +const MASK_VSOXSEG5EI8_V: u32 = 0xfc00707f; +const MATCH_VSOXSEG6EI16_V: u32 = 0xac005027; +const MASK_VSOXSEG6EI16_V: u32 = 0xfc00707f; +const MATCH_VSOXSEG6EI32_V: u32 = 0xac006027; +const MASK_VSOXSEG6EI32_V: u32 = 0xfc00707f; +const MATCH_VSOXSEG6EI64_V: u32 = 0xac007027; +const MASK_VSOXSEG6EI64_V: u32 = 0xfc00707f; +const MATCH_VSOXSEG6EI8_V: u32 = 0xac000027; +const MASK_VSOXSEG6EI8_V: u32 = 0xfc00707f; +const MATCH_VSOXSEG7EI16_V: u32 = 0xcc005027; +const MASK_VSOXSEG7EI16_V: u32 = 0xfc00707f; +const MATCH_VSOXSEG7EI32_V: u32 = 0xcc006027; +const MASK_VSOXSEG7EI32_V: u32 = 0xfc00707f; +const MATCH_VSOXSEG7EI64_V: u32 = 0xcc007027; +const MASK_VSOXSEG7EI64_V: u32 = 0xfc00707f; +const MATCH_VSOXSEG7EI8_V: u32 = 0xcc000027; +const MASK_VSOXSEG7EI8_V: u32 = 0xfc00707f; +const MATCH_VSOXSEG8EI16_V: u32 = 0xec005027; +const MASK_VSOXSEG8EI16_V: u32 = 0xfc00707f; +const MATCH_VSOXSEG8EI32_V: u32 = 0xec006027; +const MASK_VSOXSEG8EI32_V: u32 = 0xfc00707f; +const MATCH_VSOXSEG8EI64_V: u32 = 0xec007027; +const MASK_VSOXSEG8EI64_V: u32 = 0xfc00707f; +const MATCH_VSOXSEG8EI8_V: u32 = 0xec000027; +const MASK_VSOXSEG8EI8_V: u32 = 0xfc00707f; +const MATCH_VSRA_VI: u32 = 0xa4003057; +const MASK_VSRA_VI: u32 = 0xfc00707f; +const MATCH_VSRA_VV: u32 = 0xa4000057; +const MASK_VSRA_VV: u32 = 0xfc00707f; +const MATCH_VSRA_VX: u32 = 0xa4004057; +const MASK_VSRA_VX: u32 = 0xfc00707f; +const MATCH_VSRL_VI: u32 = 0xa0003057; +const MASK_VSRL_VI: u32 = 0xfc00707f; +const MATCH_VSRL_VV: u32 = 0xa0000057; +const MASK_VSRL_VV: u32 = 0xfc00707f; +const MATCH_VSRL_VX: u32 = 0xa0004057; +const MASK_VSRL_VX: u32 = 0xfc00707f; +const MATCH_VSSE16_V: u32 = 0x8005027; +const MASK_VSSE16_V: u32 = 0xfc00707f; +const MATCH_VSSE32_V: u32 = 0x8006027; +const MASK_VSSE32_V: u32 = 0xfc00707f; +const MATCH_VSSE64_V: u32 = 0x8007027; +const MASK_VSSE64_V: u32 = 0xfc00707f; +const MATCH_VSSE8_V: u32 = 0x8000027; +const MASK_VSSE8_V: u32 = 0xfc00707f; +const MATCH_VSSEG2E16_V: u32 = 0x20005027; +const MASK_VSSEG2E16_V: u32 = 0xfdf0707f; +const MATCH_VSSEG2E32_V: u32 = 0x20006027; +const MASK_VSSEG2E32_V: u32 = 0xfdf0707f; +const MATCH_VSSEG2E64_V: u32 = 0x20007027; +const MASK_VSSEG2E64_V: u32 = 0xfdf0707f; +const MATCH_VSSEG2E8_V: u32 = 0x20000027; +const MASK_VSSEG2E8_V: u32 = 0xfdf0707f; +const MATCH_VSSEG3E16_V: u32 = 0x40005027; +const MASK_VSSEG3E16_V: u32 = 0xfdf0707f; +const MATCH_VSSEG3E32_V: u32 = 0x40006027; +const MASK_VSSEG3E32_V: u32 = 0xfdf0707f; +const MATCH_VSSEG3E64_V: u32 = 0x40007027; +const MASK_VSSEG3E64_V: u32 = 0xfdf0707f; +const MATCH_VSSEG3E8_V: u32 = 0x40000027; +const MASK_VSSEG3E8_V: u32 = 0xfdf0707f; +const MATCH_VSSEG4E16_V: u32 = 0x60005027; +const MASK_VSSEG4E16_V: u32 = 0xfdf0707f; +const MATCH_VSSEG4E32_V: u32 = 0x60006027; +const MASK_VSSEG4E32_V: u32 = 0xfdf0707f; +const MATCH_VSSEG4E64_V: u32 = 0x60007027; +const MASK_VSSEG4E64_V: u32 = 0xfdf0707f; +const MATCH_VSSEG4E8_V: u32 = 0x60000027; +const MASK_VSSEG4E8_V: u32 = 0xfdf0707f; +const MATCH_VSSEG5E16_V: u32 = 0x80005027; +const MASK_VSSEG5E16_V: u32 = 0xfdf0707f; +const MATCH_VSSEG5E32_V: u32 = 0x80006027; +const MASK_VSSEG5E32_V: u32 = 0xfdf0707f; +const MATCH_VSSEG5E64_V: u32 = 0x80007027; +const MASK_VSSEG5E64_V: u32 = 0xfdf0707f; +const MATCH_VSSEG5E8_V: u32 = 0x80000027; +const MASK_VSSEG5E8_V: u32 = 0xfdf0707f; +const MATCH_VSSEG6E16_V: u32 = 0xa0005027; +const MASK_VSSEG6E16_V: u32 = 0xfdf0707f; +const MATCH_VSSEG6E32_V: u32 = 0xa0006027; +const MASK_VSSEG6E32_V: u32 = 0xfdf0707f; +const MATCH_VSSEG6E64_V: u32 = 0xa0007027; +const MASK_VSSEG6E64_V: u32 = 0xfdf0707f; +const MATCH_VSSEG6E8_V: u32 = 0xa0000027; +const MASK_VSSEG6E8_V: u32 = 0xfdf0707f; +const MATCH_VSSEG7E16_V: u32 = 0xc0005027; +const MASK_VSSEG7E16_V: u32 = 0xfdf0707f; +const MATCH_VSSEG7E32_V: u32 = 0xc0006027; +const MASK_VSSEG7E32_V: u32 = 0xfdf0707f; +const MATCH_VSSEG7E64_V: u32 = 0xc0007027; +const MASK_VSSEG7E64_V: u32 = 0xfdf0707f; +const MATCH_VSSEG7E8_V: u32 = 0xc0000027; +const MASK_VSSEG7E8_V: u32 = 0xfdf0707f; +const MATCH_VSSEG8E16_V: u32 = 0xe0005027; +const MASK_VSSEG8E16_V: u32 = 0xfdf0707f; +const MATCH_VSSEG8E32_V: u32 = 0xe0006027; +const MASK_VSSEG8E32_V: u32 = 0xfdf0707f; +const MATCH_VSSEG8E64_V: u32 = 0xe0007027; +const MASK_VSSEG8E64_V: u32 = 0xfdf0707f; +const MATCH_VSSEG8E8_V: u32 = 0xe0000027; +const MASK_VSSEG8E8_V: u32 = 0xfdf0707f; +const MATCH_VSSRA_VI: u32 = 0xac003057; +const MASK_VSSRA_VI: u32 = 0xfc00707f; +const MATCH_VSSRA_VV: u32 = 0xac000057; +const MASK_VSSRA_VV: u32 = 0xfc00707f; +const MATCH_VSSRA_VX: u32 = 0xac004057; +const MASK_VSSRA_VX: u32 = 0xfc00707f; +const MATCH_VSSRL_VI: u32 = 0xa8003057; +const MASK_VSSRL_VI: u32 = 0xfc00707f; +const MATCH_VSSRL_VV: u32 = 0xa8000057; +const MASK_VSSRL_VV: u32 = 0xfc00707f; +const MATCH_VSSRL_VX: u32 = 0xa8004057; +const MASK_VSSRL_VX: u32 = 0xfc00707f; +const MATCH_VSSSEG2E16_V: u32 = 0x28005027; +const MASK_VSSSEG2E16_V: u32 = 0xfc00707f; +const MATCH_VSSSEG2E32_V: u32 = 0x28006027; +const MASK_VSSSEG2E32_V: u32 = 0xfc00707f; +const MATCH_VSSSEG2E64_V: u32 = 0x28007027; +const MASK_VSSSEG2E64_V: u32 = 0xfc00707f; +const MATCH_VSSSEG2E8_V: u32 = 0x28000027; +const MASK_VSSSEG2E8_V: u32 = 0xfc00707f; +const MATCH_VSSSEG3E16_V: u32 = 0x48005027; +const MASK_VSSSEG3E16_V: u32 = 0xfc00707f; +const MATCH_VSSSEG3E32_V: u32 = 0x48006027; +const MASK_VSSSEG3E32_V: u32 = 0xfc00707f; +const MATCH_VSSSEG3E64_V: u32 = 0x48007027; +const MASK_VSSSEG3E64_V: u32 = 0xfc00707f; +const MATCH_VSSSEG3E8_V: u32 = 0x48000027; +const MASK_VSSSEG3E8_V: u32 = 0xfc00707f; +const MATCH_VSSSEG4E16_V: u32 = 0x68005027; +const MASK_VSSSEG4E16_V: u32 = 0xfc00707f; +const MATCH_VSSSEG4E32_V: u32 = 0x68006027; +const MASK_VSSSEG4E32_V: u32 = 0xfc00707f; +const MATCH_VSSSEG4E64_V: u32 = 0x68007027; +const MASK_VSSSEG4E64_V: u32 = 0xfc00707f; +const MATCH_VSSSEG4E8_V: u32 = 0x68000027; +const MASK_VSSSEG4E8_V: u32 = 0xfc00707f; +const MATCH_VSSSEG5E16_V: u32 = 0x88005027; +const MASK_VSSSEG5E16_V: u32 = 0xfc00707f; +const MATCH_VSSSEG5E32_V: u32 = 0x88006027; +const MASK_VSSSEG5E32_V: u32 = 0xfc00707f; +const MATCH_VSSSEG5E64_V: u32 = 0x88007027; +const MASK_VSSSEG5E64_V: u32 = 0xfc00707f; +const MATCH_VSSSEG5E8_V: u32 = 0x88000027; +const MASK_VSSSEG5E8_V: u32 = 0xfc00707f; +const MATCH_VSSSEG6E16_V: u32 = 0xa8005027; +const MASK_VSSSEG6E16_V: u32 = 0xfc00707f; +const MATCH_VSSSEG6E32_V: u32 = 0xa8006027; +const MASK_VSSSEG6E32_V: u32 = 0xfc00707f; +const MATCH_VSSSEG6E64_V: u32 = 0xa8007027; +const MASK_VSSSEG6E64_V: u32 = 0xfc00707f; +const MATCH_VSSSEG6E8_V: u32 = 0xa8000027; +const MASK_VSSSEG6E8_V: u32 = 0xfc00707f; +const MATCH_VSSSEG7E16_V: u32 = 0xc8005027; +const MASK_VSSSEG7E16_V: u32 = 0xfc00707f; +const MATCH_VSSSEG7E32_V: u32 = 0xc8006027; +const MASK_VSSSEG7E32_V: u32 = 0xfc00707f; +const MATCH_VSSSEG7E64_V: u32 = 0xc8007027; +const MASK_VSSSEG7E64_V: u32 = 0xfc00707f; +const MATCH_VSSSEG7E8_V: u32 = 0xc8000027; +const MASK_VSSSEG7E8_V: u32 = 0xfc00707f; +const MATCH_VSSSEG8E16_V: u32 = 0xe8005027; +const MASK_VSSSEG8E16_V: u32 = 0xfc00707f; +const MATCH_VSSSEG8E32_V: u32 = 0xe8006027; +const MASK_VSSSEG8E32_V: u32 = 0xfc00707f; +const MATCH_VSSSEG8E64_V: u32 = 0xe8007027; +const MASK_VSSSEG8E64_V: u32 = 0xfc00707f; +const MATCH_VSSSEG8E8_V: u32 = 0xe8000027; +const MASK_VSSSEG8E8_V: u32 = 0xfc00707f; +const MATCH_VSSUB_VV: u32 = 0x8c000057; +const MASK_VSSUB_VV: u32 = 0xfc00707f; +const MATCH_VSSUB_VX: u32 = 0x8c004057; +const MASK_VSSUB_VX: u32 = 0xfc00707f; +const MATCH_VSSUBU_VV: u32 = 0x88000057; +const MASK_VSSUBU_VV: u32 = 0xfc00707f; +const MATCH_VSSUBU_VX: u32 = 0x88004057; +const MASK_VSSUBU_VX: u32 = 0xfc00707f; +const MATCH_VSUB_VV: u32 = 0x8000057; +const MASK_VSUB_VV: u32 = 0xfc00707f; +const MATCH_VSUB_VX: u32 = 0x8004057; +const MASK_VSUB_VX: u32 = 0xfc00707f; +const MATCH_VSUXEI16_V: u32 = 0x4005027; +const MASK_VSUXEI16_V: u32 = 0xfc00707f; +const MATCH_VSUXEI32_V: u32 = 0x4006027; +const MASK_VSUXEI32_V: u32 = 0xfc00707f; +const MATCH_VSUXEI64_V: u32 = 0x4007027; +const MASK_VSUXEI64_V: u32 = 0xfc00707f; +const MATCH_VSUXEI8_V: u32 = 0x4000027; +const MASK_VSUXEI8_V: u32 = 0xfc00707f; +const MATCH_VSUXSEG2EI16_V: u32 = 0x24005027; +const MASK_VSUXSEG2EI16_V: u32 = 0xfc00707f; +const MATCH_VSUXSEG2EI32_V: u32 = 0x24006027; +const MASK_VSUXSEG2EI32_V: u32 = 0xfc00707f; +const MATCH_VSUXSEG2EI64_V: u32 = 0x24007027; +const MASK_VSUXSEG2EI64_V: u32 = 0xfc00707f; +const MATCH_VSUXSEG2EI8_V: u32 = 0x24000027; +const MASK_VSUXSEG2EI8_V: u32 = 0xfc00707f; +const MATCH_VSUXSEG3EI16_V: u32 = 0x44005027; +const MASK_VSUXSEG3EI16_V: u32 = 0xfc00707f; +const MATCH_VSUXSEG3EI32_V: u32 = 0x44006027; +const MASK_VSUXSEG3EI32_V: u32 = 0xfc00707f; +const MATCH_VSUXSEG3EI64_V: u32 = 0x44007027; +const MASK_VSUXSEG3EI64_V: u32 = 0xfc00707f; +const MATCH_VSUXSEG3EI8_V: u32 = 0x44000027; +const MASK_VSUXSEG3EI8_V: u32 = 0xfc00707f; +const MATCH_VSUXSEG4EI16_V: u32 = 0x64005027; +const MASK_VSUXSEG4EI16_V: u32 = 0xfc00707f; +const MATCH_VSUXSEG4EI32_V: u32 = 0x64006027; +const MASK_VSUXSEG4EI32_V: u32 = 0xfc00707f; +const MATCH_VSUXSEG4EI64_V: u32 = 0x64007027; +const MASK_VSUXSEG4EI64_V: u32 = 0xfc00707f; +const MATCH_VSUXSEG4EI8_V: u32 = 0x64000027; +const MASK_VSUXSEG4EI8_V: u32 = 0xfc00707f; +const MATCH_VSUXSEG5EI16_V: u32 = 0x84005027; +const MASK_VSUXSEG5EI16_V: u32 = 0xfc00707f; +const MATCH_VSUXSEG5EI32_V: u32 = 0x84006027; +const MASK_VSUXSEG5EI32_V: u32 = 0xfc00707f; +const MATCH_VSUXSEG5EI64_V: u32 = 0x84007027; +const MASK_VSUXSEG5EI64_V: u32 = 0xfc00707f; +const MATCH_VSUXSEG5EI8_V: u32 = 0x84000027; +const MASK_VSUXSEG5EI8_V: u32 = 0xfc00707f; +const MATCH_VSUXSEG6EI16_V: u32 = 0xa4005027; +const MASK_VSUXSEG6EI16_V: u32 = 0xfc00707f; +const MATCH_VSUXSEG6EI32_V: u32 = 0xa4006027; +const MASK_VSUXSEG6EI32_V: u32 = 0xfc00707f; +const MATCH_VSUXSEG6EI64_V: u32 = 0xa4007027; +const MASK_VSUXSEG6EI64_V: u32 = 0xfc00707f; +const MATCH_VSUXSEG6EI8_V: u32 = 0xa4000027; +const MASK_VSUXSEG6EI8_V: u32 = 0xfc00707f; +const MATCH_VSUXSEG7EI16_V: u32 = 0xc4005027; +const MASK_VSUXSEG7EI16_V: u32 = 0xfc00707f; +const MATCH_VSUXSEG7EI32_V: u32 = 0xc4006027; +const MASK_VSUXSEG7EI32_V: u32 = 0xfc00707f; +const MATCH_VSUXSEG7EI64_V: u32 = 0xc4007027; +const MASK_VSUXSEG7EI64_V: u32 = 0xfc00707f; +const MATCH_VSUXSEG7EI8_V: u32 = 0xc4000027; +const MASK_VSUXSEG7EI8_V: u32 = 0xfc00707f; +const MATCH_VSUXSEG8EI16_V: u32 = 0xe4005027; +const MASK_VSUXSEG8EI16_V: u32 = 0xfc00707f; +const MATCH_VSUXSEG8EI32_V: u32 = 0xe4006027; +const MASK_VSUXSEG8EI32_V: u32 = 0xfc00707f; +const MATCH_VSUXSEG8EI64_V: u32 = 0xe4007027; +const MASK_VSUXSEG8EI64_V: u32 = 0xfc00707f; +const MATCH_VSUXSEG8EI8_V: u32 = 0xe4000027; +const MASK_VSUXSEG8EI8_V: u32 = 0xfc00707f; +const MATCH_VWADD_VV: u32 = 0xc4002057; +const MASK_VWADD_VV: u32 = 0xfc00707f; +const MATCH_VWADD_VX: u32 = 0xc4006057; +const MASK_VWADD_VX: u32 = 0xfc00707f; +const MATCH_VWADD_WV: u32 = 0xd4002057; +const MASK_VWADD_WV: u32 = 0xfc00707f; +const MATCH_VWADD_WX: u32 = 0xd4006057; +const MASK_VWADD_WX: u32 = 0xfc00707f; +const MATCH_VWADDU_VV: u32 = 0xc0002057; +const MASK_VWADDU_VV: u32 = 0xfc00707f; +const MATCH_VWADDU_VX: u32 = 0xc0006057; +const MASK_VWADDU_VX: u32 = 0xfc00707f; +const MATCH_VWADDU_WV: u32 = 0xd0002057; +const MASK_VWADDU_WV: u32 = 0xfc00707f; +const MATCH_VWADDU_WX: u32 = 0xd0006057; +const MASK_VWADDU_WX: u32 = 0xfc00707f; +const MATCH_VWMACC_VV: u32 = 0xf4002057; +const MASK_VWMACC_VV: u32 = 0xfc00707f; +const MATCH_VWMACC_VX: u32 = 0xf4006057; +const MASK_VWMACC_VX: u32 = 0xfc00707f; +const MATCH_VWMACCSU_VV: u32 = 0xfc002057; +const MASK_VWMACCSU_VV: u32 = 0xfc00707f; +const MATCH_VWMACCSU_VX: u32 = 0xfc006057; +const MASK_VWMACCSU_VX: u32 = 0xfc00707f; +const MATCH_VWMACCU_VV: u32 = 0xf0002057; +const MASK_VWMACCU_VV: u32 = 0xfc00707f; +const MATCH_VWMACCU_VX: u32 = 0xf0006057; +const MASK_VWMACCU_VX: u32 = 0xfc00707f; +const MATCH_VWMACCUS_VX: u32 = 0xf8006057; +const MASK_VWMACCUS_VX: u32 = 0xfc00707f; +const MATCH_VWMUL_VV: u32 = 0xec002057; +const MASK_VWMUL_VV: u32 = 0xfc00707f; +const MATCH_VWMUL_VX: u32 = 0xec006057; +const MASK_VWMUL_VX: u32 = 0xfc00707f; +const MATCH_VWMULSU_VV: u32 = 0xe8002057; +const MASK_VWMULSU_VV: u32 = 0xfc00707f; +const MATCH_VWMULSU_VX: u32 = 0xe8006057; +const MASK_VWMULSU_VX: u32 = 0xfc00707f; +const MATCH_VWMULU_VV: u32 = 0xe0002057; +const MASK_VWMULU_VV: u32 = 0xfc00707f; +const MATCH_VWMULU_VX: u32 = 0xe0006057; +const MASK_VWMULU_VX: u32 = 0xfc00707f; +const MATCH_VWREDSUM_VS: u32 = 0xc4000057; +const MASK_VWREDSUM_VS: u32 = 0xfc00707f; +const MATCH_VWREDSUMU_VS: u32 = 0xc0000057; +const MASK_VWREDSUMU_VS: u32 = 0xfc00707f; +const MATCH_VWSLL_VI: u32 = 0xd4003057; +const MASK_VWSLL_VI: u32 = 0xfc00707f; +const MATCH_VWSLL_VV: u32 = 0xd4000057; +const MASK_VWSLL_VV: u32 = 0xfc00707f; +const MATCH_VWSLL_VX: u32 = 0xd4004057; +const MASK_VWSLL_VX: u32 = 0xfc00707f; +const MATCH_VWSUB_VV: u32 = 0xcc002057; +const MASK_VWSUB_VV: u32 = 0xfc00707f; +const MATCH_VWSUB_VX: u32 = 0xcc006057; +const MASK_VWSUB_VX: u32 = 0xfc00707f; +const MATCH_VWSUB_WV: u32 = 0xdc002057; +const MASK_VWSUB_WV: u32 = 0xfc00707f; +const MATCH_VWSUB_WX: u32 = 0xdc006057; +const MASK_VWSUB_WX: u32 = 0xfc00707f; +const MATCH_VWSUBU_VV: u32 = 0xc8002057; +const MASK_VWSUBU_VV: u32 = 0xfc00707f; +const MATCH_VWSUBU_VX: u32 = 0xc8006057; +const MASK_VWSUBU_VX: u32 = 0xfc00707f; +const MATCH_VWSUBU_WV: u32 = 0xd8002057; +const MASK_VWSUBU_WV: u32 = 0xfc00707f; +const MATCH_VWSUBU_WX: u32 = 0xd8006057; +const MASK_VWSUBU_WX: u32 = 0xfc00707f; +const MATCH_VXOR_VI: u32 = 0x2c003057; +const MASK_VXOR_VI: u32 = 0xfc00707f; +const MATCH_VXOR_VV: u32 = 0x2c000057; +const MASK_VXOR_VV: u32 = 0xfc00707f; +const MATCH_VXOR_VX: u32 = 0x2c004057; +const MASK_VXOR_VX: u32 = 0xfc00707f; +const MATCH_VZEXT_VF2: u32 = 0x48032057; +const MASK_VZEXT_VF2: u32 = 0xfc0ff07f; +const MATCH_VZEXT_VF4: u32 = 0x48022057; +const MASK_VZEXT_VF4: u32 = 0xfc0ff07f; +const MATCH_VZEXT_VF8: u32 = 0x48012057; +const MASK_VZEXT_VF8: u32 = 0xfc0ff07f; +const MATCH_WFI: u32 = 0x10500073; +const MASK_WFI: u32 = 0xffffffff; +const MATCH_WRS_NTO: u32 = 0xd00073; +const MASK_WRS_NTO: u32 = 0xffffffff; +const MATCH_WRS_STO: u32 = 0x1d00073; +const MASK_WRS_STO: u32 = 0xffffffff; +const MATCH_XNOR: u32 = 0x40004033; +const MASK_XNOR: u32 = 0xfe00707f; +const MATCH_XOR: u32 = 0x4033; +const MASK_XOR: u32 = 0xfe00707f; +const MATCH_XORI: u32 = 0x4013; +const MASK_XORI: u32 = 0x707f; +const MATCH_XPERM4: u32 = 0x28002033; +const MASK_XPERM4: u32 = 0xfe00707f; +const MATCH_XPERM8: u32 = 0x28004033; +const MASK_XPERM8: u32 = 0xfe00707f; +const MATCH_ZEXT_H: u32 = 0x800403b; +const MASK_ZEXT_H: u32 = 0xfff0707f; +const MATCH_ZIP: u32 = 0x8f01013; +const MASK_ZIP: u32 = 0xfff0707f; +const CSR_FFLAGS: u16 = 0x1; +const CSR_FRM: u16 = 0x2; +const CSR_FCSR: u16 = 0x3; +const CSR_VSTART: u16 = 0x8; +const CSR_VXSAT: u16 = 0x9; +const CSR_VXRM: u16 = 0xa; +const CSR_VCSR: u16 = 0xf; +const CSR_SSP: u16 = 0x11; +const CSR_SEED: u16 = 0x15; +const CSR_JVT: u16 = 0x17; +const CSR_CYCLE: u16 = 0xc00; +const CSR_TIME: u16 = 0xc01; +const CSR_INSTRET: u16 = 0xc02; +const CSR_HPMCOUNTER3: u16 = 0xc03; +const CSR_HPMCOUNTER4: u16 = 0xc04; +const CSR_HPMCOUNTER5: u16 = 0xc05; +const CSR_HPMCOUNTER6: u16 = 0xc06; +const CSR_HPMCOUNTER7: u16 = 0xc07; +const CSR_HPMCOUNTER8: u16 = 0xc08; +const CSR_HPMCOUNTER9: u16 = 0xc09; +const CSR_HPMCOUNTER10: u16 = 0xc0a; +const CSR_HPMCOUNTER11: u16 = 0xc0b; +const CSR_HPMCOUNTER12: u16 = 0xc0c; +const CSR_HPMCOUNTER13: u16 = 0xc0d; +const CSR_HPMCOUNTER14: u16 = 0xc0e; +const CSR_HPMCOUNTER15: u16 = 0xc0f; +const CSR_HPMCOUNTER16: u16 = 0xc10; +const CSR_HPMCOUNTER17: u16 = 0xc11; +const CSR_HPMCOUNTER18: u16 = 0xc12; +const CSR_HPMCOUNTER19: u16 = 0xc13; +const CSR_HPMCOUNTER20: u16 = 0xc14; +const CSR_HPMCOUNTER21: u16 = 0xc15; +const CSR_HPMCOUNTER22: u16 = 0xc16; +const CSR_HPMCOUNTER23: u16 = 0xc17; +const CSR_HPMCOUNTER24: u16 = 0xc18; +const CSR_HPMCOUNTER25: u16 = 0xc19; +const CSR_HPMCOUNTER26: u16 = 0xc1a; +const CSR_HPMCOUNTER27: u16 = 0xc1b; +const CSR_HPMCOUNTER28: u16 = 0xc1c; +const CSR_HPMCOUNTER29: u16 = 0xc1d; +const CSR_HPMCOUNTER30: u16 = 0xc1e; +const CSR_HPMCOUNTER31: u16 = 0xc1f; +const CSR_VL: u16 = 0xc20; +const CSR_VTYPE: u16 = 0xc21; +const CSR_VLENB: u16 = 0xc22; +const CSR_SSTATUS: u16 = 0x100; +const CSR_SEDELEG: u16 = 0x102; +const CSR_SIDELEG: u16 = 0x103; +const CSR_SIE: u16 = 0x104; +const CSR_STVEC: u16 = 0x105; +const CSR_SCOUNTEREN: u16 = 0x106; +const CSR_SENVCFG: u16 = 0x10a; +const CSR_SSTATEEN0: u16 = 0x10c; +const CSR_SSTATEEN1: u16 = 0x10d; +const CSR_SSTATEEN2: u16 = 0x10e; +const CSR_SSTATEEN3: u16 = 0x10f; +const CSR_SCOUNTINHIBIT: u16 = 0x120; +const CSR_SSCRATCH: u16 = 0x140; +const CSR_SEPC: u16 = 0x141; +const CSR_SCAUSE: u16 = 0x142; +const CSR_STVAL: u16 = 0x143; +const CSR_SIP: u16 = 0x144; +const CSR_STIMECMP: u16 = 0x14d; +const CSR_SCTRCTL: u16 = 0x14e; +const CSR_SCTRSTATUS: u16 = 0x14f; +const CSR_SISELECT: u16 = 0x150; +const CSR_SIREG: u16 = 0x151; +const CSR_SIREG2: u16 = 0x152; +const CSR_SIREG3: u16 = 0x153; +const CSR_SIREG4: u16 = 0x155; +const CSR_SIREG5: u16 = 0x156; +const CSR_SIREG6: u16 = 0x157; +const CSR_STOPEI: u16 = 0x15c; +const CSR_SCTRDEPTH: u16 = 0x15f; +const CSR_SATP: u16 = 0x180; +const CSR_SRMCFG: u16 = 0x181; +const CSR_SCONTEXT: u16 = 0x5a8; +const CSR_VSSTATUS: u16 = 0x200; +const CSR_VSIE: u16 = 0x204; +const CSR_VSTVEC: u16 = 0x205; +const CSR_VSSCRATCH: u16 = 0x240; +const CSR_VSEPC: u16 = 0x241; +const CSR_VSCAUSE: u16 = 0x242; +const CSR_VSTVAL: u16 = 0x243; +const CSR_VSIP: u16 = 0x244; +const CSR_VSTIMECMP: u16 = 0x24d; +const CSR_VSCTRCTL: u16 = 0x24e; +const CSR_VSISELECT: u16 = 0x250; +const CSR_VSIREG: u16 = 0x251; +const CSR_VSIREG2: u16 = 0x252; +const CSR_VSIREG3: u16 = 0x253; +const CSR_VSIREG4: u16 = 0x255; +const CSR_VSIREG5: u16 = 0x256; +const CSR_VSIREG6: u16 = 0x257; +const CSR_VSTOPEI: u16 = 0x25c; +const CSR_VSATP: u16 = 0x280; +const CSR_HSTATUS: u16 = 0x600; +const CSR_HEDELEG: u16 = 0x602; +const CSR_HIDELEG: u16 = 0x603; +const CSR_HIE: u16 = 0x604; +const CSR_HTIMEDELTA: u16 = 0x605; +const CSR_HCOUNTEREN: u16 = 0x606; +const CSR_HGEIE: u16 = 0x607; +const CSR_HVIEN: u16 = 0x608; +const CSR_HVICTL: u16 = 0x609; +const CSR_HENVCFG: u16 = 0x60a; +const CSR_HSTATEEN0: u16 = 0x60c; +const CSR_HSTATEEN1: u16 = 0x60d; +const CSR_HSTATEEN2: u16 = 0x60e; +const CSR_HSTATEEN3: u16 = 0x60f; +const CSR_HTVAL: u16 = 0x643; +const CSR_HIP: u16 = 0x644; +const CSR_HVIP: u16 = 0x645; +const CSR_HVIPRIO1: u16 = 0x646; +const CSR_HVIPRIO2: u16 = 0x647; +const CSR_HTINST: u16 = 0x64a; +const CSR_HGATP: u16 = 0x680; +const CSR_HCONTEXT: u16 = 0x6a8; +const CSR_HGEIP: u16 = 0xe12; +const CSR_VSTOPI: u16 = 0xeb0; +const CSR_SCOUNTOVF: u16 = 0xda0; +const CSR_STOPI: u16 = 0xdb0; +const CSR_UTVT: u16 = 0x7; +const CSR_UNXTI: u16 = 0x45; +const CSR_UINTSTATUS: u16 = 0x46; +const CSR_USCRATCHCSW: u16 = 0x48; +const CSR_USCRATCHCSWL: u16 = 0x49; +const CSR_STVT: u16 = 0x107; +const CSR_SNXTI: u16 = 0x145; +const CSR_SINTSTATUS: u16 = 0x146; +const CSR_SSCRATCHCSW: u16 = 0x148; +const CSR_SSCRATCHCSWL: u16 = 0x149; +const CSR_MTVT: u16 = 0x307; +const CSR_MNXTI: u16 = 0x345; +const CSR_MINTSTATUS: u16 = 0x346; +const CSR_MSCRATCHCSW: u16 = 0x348; +const CSR_MSCRATCHCSWL: u16 = 0x349; +const CSR_MSTATUS: u16 = 0x300; +const CSR_MISA: u16 = 0x301; +const CSR_MEDELEG: u16 = 0x302; +const CSR_MIDELEG: u16 = 0x303; +const CSR_MIE: u16 = 0x304; +const CSR_MTVEC: u16 = 0x305; +const CSR_MCOUNTEREN: u16 = 0x306; +const CSR_MVIEN: u16 = 0x308; +const CSR_MVIP: u16 = 0x309; +const CSR_MENVCFG: u16 = 0x30a; +const CSR_MSTATEEN0: u16 = 0x30c; +const CSR_MSTATEEN1: u16 = 0x30d; +const CSR_MSTATEEN2: u16 = 0x30e; +const CSR_MSTATEEN3: u16 = 0x30f; +const CSR_MCOUNTINHIBIT: u16 = 0x320; +const CSR_MSCRATCH: u16 = 0x340; +const CSR_MEPC: u16 = 0x341; +const CSR_MCAUSE: u16 = 0x342; +const CSR_MTVAL: u16 = 0x343; +const CSR_MIP: u16 = 0x344; +const CSR_MTINST: u16 = 0x34a; +const CSR_MTVAL2: u16 = 0x34b; +const CSR_MCTRCTL: u16 = 0x34e; +const CSR_MISELECT: u16 = 0x350; +const CSR_MIREG: u16 = 0x351; +const CSR_MIREG2: u16 = 0x352; +const CSR_MIREG3: u16 = 0x353; +const CSR_MIREG4: u16 = 0x355; +const CSR_MIREG5: u16 = 0x356; +const CSR_MIREG6: u16 = 0x357; +const CSR_MTOPEI: u16 = 0x35c; +const CSR_PMPCFG0: u16 = 0x3a0; +const CSR_PMPCFG1: u16 = 0x3a1; +const CSR_PMPCFG2: u16 = 0x3a2; +const CSR_PMPCFG3: u16 = 0x3a3; +const CSR_PMPCFG4: u16 = 0x3a4; +const CSR_PMPCFG5: u16 = 0x3a5; +const CSR_PMPCFG6: u16 = 0x3a6; +const CSR_PMPCFG7: u16 = 0x3a7; +const CSR_PMPCFG8: u16 = 0x3a8; +const CSR_PMPCFG9: u16 = 0x3a9; +const CSR_PMPCFG10: u16 = 0x3aa; +const CSR_PMPCFG11: u16 = 0x3ab; +const CSR_PMPCFG12: u16 = 0x3ac; +const CSR_PMPCFG13: u16 = 0x3ad; +const CSR_PMPCFG14: u16 = 0x3ae; +const CSR_PMPCFG15: u16 = 0x3af; +const CSR_PMPADDR0: u16 = 0x3b0; +const CSR_PMPADDR1: u16 = 0x3b1; +const CSR_PMPADDR2: u16 = 0x3b2; +const CSR_PMPADDR3: u16 = 0x3b3; +const CSR_PMPADDR4: u16 = 0x3b4; +const CSR_PMPADDR5: u16 = 0x3b5; +const CSR_PMPADDR6: u16 = 0x3b6; +const CSR_PMPADDR7: u16 = 0x3b7; +const CSR_PMPADDR8: u16 = 0x3b8; +const CSR_PMPADDR9: u16 = 0x3b9; +const CSR_PMPADDR10: u16 = 0x3ba; +const CSR_PMPADDR11: u16 = 0x3bb; +const CSR_PMPADDR12: u16 = 0x3bc; +const CSR_PMPADDR13: u16 = 0x3bd; +const CSR_PMPADDR14: u16 = 0x3be; +const CSR_PMPADDR15: u16 = 0x3bf; +const CSR_PMPADDR16: u16 = 0x3c0; +const CSR_PMPADDR17: u16 = 0x3c1; +const CSR_PMPADDR18: u16 = 0x3c2; +const CSR_PMPADDR19: u16 = 0x3c3; +const CSR_PMPADDR20: u16 = 0x3c4; +const CSR_PMPADDR21: u16 = 0x3c5; +const CSR_PMPADDR22: u16 = 0x3c6; +const CSR_PMPADDR23: u16 = 0x3c7; +const CSR_PMPADDR24: u16 = 0x3c8; +const CSR_PMPADDR25: u16 = 0x3c9; +const CSR_PMPADDR26: u16 = 0x3ca; +const CSR_PMPADDR27: u16 = 0x3cb; +const CSR_PMPADDR28: u16 = 0x3cc; +const CSR_PMPADDR29: u16 = 0x3cd; +const CSR_PMPADDR30: u16 = 0x3ce; +const CSR_PMPADDR31: u16 = 0x3cf; +const CSR_PMPADDR32: u16 = 0x3d0; +const CSR_PMPADDR33: u16 = 0x3d1; +const CSR_PMPADDR34: u16 = 0x3d2; +const CSR_PMPADDR35: u16 = 0x3d3; +const CSR_PMPADDR36: u16 = 0x3d4; +const CSR_PMPADDR37: u16 = 0x3d5; +const CSR_PMPADDR38: u16 = 0x3d6; +const CSR_PMPADDR39: u16 = 0x3d7; +const CSR_PMPADDR40: u16 = 0x3d8; +const CSR_PMPADDR41: u16 = 0x3d9; +const CSR_PMPADDR42: u16 = 0x3da; +const CSR_PMPADDR43: u16 = 0x3db; +const CSR_PMPADDR44: u16 = 0x3dc; +const CSR_PMPADDR45: u16 = 0x3dd; +const CSR_PMPADDR46: u16 = 0x3de; +const CSR_PMPADDR47: u16 = 0x3df; +const CSR_PMPADDR48: u16 = 0x3e0; +const CSR_PMPADDR49: u16 = 0x3e1; +const CSR_PMPADDR50: u16 = 0x3e2; +const CSR_PMPADDR51: u16 = 0x3e3; +const CSR_PMPADDR52: u16 = 0x3e4; +const CSR_PMPADDR53: u16 = 0x3e5; +const CSR_PMPADDR54: u16 = 0x3e6; +const CSR_PMPADDR55: u16 = 0x3e7; +const CSR_PMPADDR56: u16 = 0x3e8; +const CSR_PMPADDR57: u16 = 0x3e9; +const CSR_PMPADDR58: u16 = 0x3ea; +const CSR_PMPADDR59: u16 = 0x3eb; +const CSR_PMPADDR60: u16 = 0x3ec; +const CSR_PMPADDR61: u16 = 0x3ed; +const CSR_PMPADDR62: u16 = 0x3ee; +const CSR_PMPADDR63: u16 = 0x3ef; +const CSR_MSECCFG: u16 = 0x747; +const CSR_TSELECT: u16 = 0x7a0; +const CSR_TDATA1: u16 = 0x7a1; +const CSR_TDATA2: u16 = 0x7a2; +const CSR_TDATA3: u16 = 0x7a3; +const CSR_TINFO: u16 = 0x7a4; +const CSR_TCONTROL: u16 = 0x7a5; +const CSR_MCONTEXT: u16 = 0x7a8; +const CSR_MSCONTEXT: u16 = 0x7aa; +const CSR_DCSR: u16 = 0x7b0; +const CSR_DPC: u16 = 0x7b1; +const CSR_DSCRATCH0: u16 = 0x7b2; +const CSR_DSCRATCH1: u16 = 0x7b3; +const CSR_MCYCLE: u16 = 0xb00; +const CSR_MINSTRET: u16 = 0xb02; +const CSR_MHPMCOUNTER3: u16 = 0xb03; +const CSR_MHPMCOUNTER4: u16 = 0xb04; +const CSR_MHPMCOUNTER5: u16 = 0xb05; +const CSR_MHPMCOUNTER6: u16 = 0xb06; +const CSR_MHPMCOUNTER7: u16 = 0xb07; +const CSR_MHPMCOUNTER8: u16 = 0xb08; +const CSR_MHPMCOUNTER9: u16 = 0xb09; +const CSR_MHPMCOUNTER10: u16 = 0xb0a; +const CSR_MHPMCOUNTER11: u16 = 0xb0b; +const CSR_MHPMCOUNTER12: u16 = 0xb0c; +const CSR_MHPMCOUNTER13: u16 = 0xb0d; +const CSR_MHPMCOUNTER14: u16 = 0xb0e; +const CSR_MHPMCOUNTER15: u16 = 0xb0f; +const CSR_MHPMCOUNTER16: u16 = 0xb10; +const CSR_MHPMCOUNTER17: u16 = 0xb11; +const CSR_MHPMCOUNTER18: u16 = 0xb12; +const CSR_MHPMCOUNTER19: u16 = 0xb13; +const CSR_MHPMCOUNTER20: u16 = 0xb14; +const CSR_MHPMCOUNTER21: u16 = 0xb15; +const CSR_MHPMCOUNTER22: u16 = 0xb16; +const CSR_MHPMCOUNTER23: u16 = 0xb17; +const CSR_MHPMCOUNTER24: u16 = 0xb18; +const CSR_MHPMCOUNTER25: u16 = 0xb19; +const CSR_MHPMCOUNTER26: u16 = 0xb1a; +const CSR_MHPMCOUNTER27: u16 = 0xb1b; +const CSR_MHPMCOUNTER28: u16 = 0xb1c; +const CSR_MHPMCOUNTER29: u16 = 0xb1d; +const CSR_MHPMCOUNTER30: u16 = 0xb1e; +const CSR_MHPMCOUNTER31: u16 = 0xb1f; +const CSR_MCYCLECFG: u16 = 0x321; +const CSR_MINSTRETCFG: u16 = 0x322; +const CSR_MHPMEVENT3: u16 = 0x323; +const CSR_MHPMEVENT4: u16 = 0x324; +const CSR_MHPMEVENT5: u16 = 0x325; +const CSR_MHPMEVENT6: u16 = 0x326; +const CSR_MHPMEVENT7: u16 = 0x327; +const CSR_MHPMEVENT8: u16 = 0x328; +const CSR_MHPMEVENT9: u16 = 0x329; +const CSR_MHPMEVENT10: u16 = 0x32a; +const CSR_MHPMEVENT11: u16 = 0x32b; +const CSR_MHPMEVENT12: u16 = 0x32c; +const CSR_MHPMEVENT13: u16 = 0x32d; +const CSR_MHPMEVENT14: u16 = 0x32e; +const CSR_MHPMEVENT15: u16 = 0x32f; +const CSR_MHPMEVENT16: u16 = 0x330; +const CSR_MHPMEVENT17: u16 = 0x331; +const CSR_MHPMEVENT18: u16 = 0x332; +const CSR_MHPMEVENT19: u16 = 0x333; +const CSR_MHPMEVENT20: u16 = 0x334; +const CSR_MHPMEVENT21: u16 = 0x335; +const CSR_MHPMEVENT22: u16 = 0x336; +const CSR_MHPMEVENT23: u16 = 0x337; +const CSR_MHPMEVENT24: u16 = 0x338; +const CSR_MHPMEVENT25: u16 = 0x339; +const CSR_MHPMEVENT26: u16 = 0x33a; +const CSR_MHPMEVENT27: u16 = 0x33b; +const CSR_MHPMEVENT28: u16 = 0x33c; +const CSR_MHPMEVENT29: u16 = 0x33d; +const CSR_MHPMEVENT30: u16 = 0x33e; +const CSR_MHPMEVENT31: u16 = 0x33f; +const CSR_MVENDORID: u16 = 0xf11; +const CSR_MARCHID: u16 = 0xf12; +const CSR_MIMPID: u16 = 0xf13; +const CSR_MHARTID: u16 = 0xf14; +const CSR_MCONFIGPTR: u16 = 0xf15; +const CSR_MTOPI: u16 = 0xfb0; +const CSR_SIEH: u16 = 0x114; +const CSR_SIPH: u16 = 0x154; +const CSR_STIMECMPH: u16 = 0x15d; +const CSR_VSIEH: u16 = 0x214; +const CSR_VSIPH: u16 = 0x254; +const CSR_VSTIMECMPH: u16 = 0x25d; +const CSR_HEDELEGH: u16 = 0x612; +const CSR_HTIMEDELTAH: u16 = 0x615; +const CSR_HIDELEGH: u16 = 0x613; +const CSR_HVIENH: u16 = 0x618; +const CSR_HENVCFGH: u16 = 0x61a; +const CSR_HVIPH: u16 = 0x655; +const CSR_HVIPRIO1H: u16 = 0x656; +const CSR_HVIPRIO2H: u16 = 0x657; +const CSR_HSTATEEN0H: u16 = 0x61c; +const CSR_HSTATEEN1H: u16 = 0x61d; +const CSR_HSTATEEN2H: u16 = 0x61e; +const CSR_HSTATEEN3H: u16 = 0x61f; +const CSR_CYCLEH: u16 = 0xc80; +const CSR_TIMEH: u16 = 0xc81; +const CSR_INSTRETH: u16 = 0xc82; +const CSR_HPMCOUNTER3H: u16 = 0xc83; +const CSR_HPMCOUNTER4H: u16 = 0xc84; +const CSR_HPMCOUNTER5H: u16 = 0xc85; +const CSR_HPMCOUNTER6H: u16 = 0xc86; +const CSR_HPMCOUNTER7H: u16 = 0xc87; +const CSR_HPMCOUNTER8H: u16 = 0xc88; +const CSR_HPMCOUNTER9H: u16 = 0xc89; +const CSR_HPMCOUNTER10H: u16 = 0xc8a; +const CSR_HPMCOUNTER11H: u16 = 0xc8b; +const CSR_HPMCOUNTER12H: u16 = 0xc8c; +const CSR_HPMCOUNTER13H: u16 = 0xc8d; +const CSR_HPMCOUNTER14H: u16 = 0xc8e; +const CSR_HPMCOUNTER15H: u16 = 0xc8f; +const CSR_HPMCOUNTER16H: u16 = 0xc90; +const CSR_HPMCOUNTER17H: u16 = 0xc91; +const CSR_HPMCOUNTER18H: u16 = 0xc92; +const CSR_HPMCOUNTER19H: u16 = 0xc93; +const CSR_HPMCOUNTER20H: u16 = 0xc94; +const CSR_HPMCOUNTER21H: u16 = 0xc95; +const CSR_HPMCOUNTER22H: u16 = 0xc96; +const CSR_HPMCOUNTER23H: u16 = 0xc97; +const CSR_HPMCOUNTER24H: u16 = 0xc98; +const CSR_HPMCOUNTER25H: u16 = 0xc99; +const CSR_HPMCOUNTER26H: u16 = 0xc9a; +const CSR_HPMCOUNTER27H: u16 = 0xc9b; +const CSR_HPMCOUNTER28H: u16 = 0xc9c; +const CSR_HPMCOUNTER29H: u16 = 0xc9d; +const CSR_HPMCOUNTER30H: u16 = 0xc9e; +const CSR_HPMCOUNTER31H: u16 = 0xc9f; +const CSR_MSTATUSH: u16 = 0x310; +const CSR_MIDELEGH: u16 = 0x313; +const CSR_MIEH: u16 = 0x314; +const CSR_MVIENH: u16 = 0x318; +const CSR_MVIPH: u16 = 0x319; +const CSR_MENVCFGH: u16 = 0x31a; +const CSR_MSTATEEN0H: u16 = 0x31c; +const CSR_MSTATEEN1H: u16 = 0x31d; +const CSR_MSTATEEN2H: u16 = 0x31e; +const CSR_MSTATEEN3H: u16 = 0x31f; +const CSR_MIPH: u16 = 0x354; +const CSR_MCYCLECFGH: u16 = 0x721; +const CSR_MINSTRETCFGH: u16 = 0x722; +const CSR_MHPMEVENT3H: u16 = 0x723; +const CSR_MHPMEVENT4H: u16 = 0x724; +const CSR_MHPMEVENT5H: u16 = 0x725; +const CSR_MHPMEVENT6H: u16 = 0x726; +const CSR_MHPMEVENT7H: u16 = 0x727; +const CSR_MHPMEVENT8H: u16 = 0x728; +const CSR_MHPMEVENT9H: u16 = 0x729; +const CSR_MHPMEVENT10H: u16 = 0x72a; +const CSR_MHPMEVENT11H: u16 = 0x72b; +const CSR_MHPMEVENT12H: u16 = 0x72c; +const CSR_MHPMEVENT13H: u16 = 0x72d; +const CSR_MHPMEVENT14H: u16 = 0x72e; +const CSR_MHPMEVENT15H: u16 = 0x72f; +const CSR_MHPMEVENT16H: u16 = 0x730; +const CSR_MHPMEVENT17H: u16 = 0x731; +const CSR_MHPMEVENT18H: u16 = 0x732; +const CSR_MHPMEVENT19H: u16 = 0x733; +const CSR_MHPMEVENT20H: u16 = 0x734; +const CSR_MHPMEVENT21H: u16 = 0x735; +const CSR_MHPMEVENT22H: u16 = 0x736; +const CSR_MHPMEVENT23H: u16 = 0x737; +const CSR_MHPMEVENT24H: u16 = 0x738; +const CSR_MHPMEVENT25H: u16 = 0x739; +const CSR_MHPMEVENT26H: u16 = 0x73a; +const CSR_MHPMEVENT27H: u16 = 0x73b; +const CSR_MHPMEVENT28H: u16 = 0x73c; +const CSR_MHPMEVENT29H: u16 = 0x73d; +const CSR_MHPMEVENT30H: u16 = 0x73e; +const CSR_MHPMEVENT31H: u16 = 0x73f; +const CSR_MNSCRATCH: u16 = 0x740; +const CSR_MNEPC: u16 = 0x741; +const CSR_MNCAUSE: u16 = 0x742; +const CSR_MNSTATUS: u16 = 0x744; +const CSR_MSECCFGH: u16 = 0x757; +const CSR_MCYCLEH: u16 = 0xb80; +const CSR_MINSTRETH: u16 = 0xb82; +const CSR_MHPMCOUNTER3H: u16 = 0xb83; +const CSR_MHPMCOUNTER4H: u16 = 0xb84; +const CSR_MHPMCOUNTER5H: u16 = 0xb85; +const CSR_MHPMCOUNTER6H: u16 = 0xb86; +const CSR_MHPMCOUNTER7H: u16 = 0xb87; +const CSR_MHPMCOUNTER8H: u16 = 0xb88; +const CSR_MHPMCOUNTER9H: u16 = 0xb89; +const CSR_MHPMCOUNTER10H: u16 = 0xb8a; +const CSR_MHPMCOUNTER11H: u16 = 0xb8b; +const CSR_MHPMCOUNTER12H: u16 = 0xb8c; +const CSR_MHPMCOUNTER13H: u16 = 0xb8d; +const CSR_MHPMCOUNTER14H: u16 = 0xb8e; +const CSR_MHPMCOUNTER15H: u16 = 0xb8f; +const CSR_MHPMCOUNTER16H: u16 = 0xb90; +const CSR_MHPMCOUNTER17H: u16 = 0xb91; +const CSR_MHPMCOUNTER18H: u16 = 0xb92; +const CSR_MHPMCOUNTER19H: u16 = 0xb93; +const CSR_MHPMCOUNTER20H: u16 = 0xb94; +const CSR_MHPMCOUNTER21H: u16 = 0xb95; +const CSR_MHPMCOUNTER22H: u16 = 0xb96; +const CSR_MHPMCOUNTER23H: u16 = 0xb97; +const CSR_MHPMCOUNTER24H: u16 = 0xb98; +const CSR_MHPMCOUNTER25H: u16 = 0xb99; +const CSR_MHPMCOUNTER26H: u16 = 0xb9a; +const CSR_MHPMCOUNTER27H: u16 = 0xb9b; +const CSR_MHPMCOUNTER28H: u16 = 0xb9c; +const CSR_MHPMCOUNTER29H: u16 = 0xb9d; +const CSR_MHPMCOUNTER30H: u16 = 0xb9e; +const CSR_MHPMCOUNTER31H: u16 = 0xb9f; +const CAUSE_MISALIGNED_FETCH: u8 = 0x0; +const CAUSE_FETCH_ACCESS: u8 = 0x1; +const CAUSE_ILLEGAL_INSTRUCTION: u8 = 0x2; +const CAUSE_BREAKPOINT: u8 = 0x3; +const CAUSE_MISALIGNED_LOAD: u8 = 0x4; +const CAUSE_LOAD_ACCESS: u8 = 0x5; +const CAUSE_MISALIGNED_STORE: u8 = 0x6; +const CAUSE_STORE_ACCESS: u8 = 0x7; +const CAUSE_USER_ECALL: u8 = 0x8; +const CAUSE_SUPERVISOR_ECALL: u8 = 0x9; +const CAUSE_VIRTUAL_SUPERVISOR_ECALL: u8 = 0xa; +const CAUSE_MACHINE_ECALL: u8 = 0xb; +const CAUSE_FETCH_PAGE_FAULT: u8 = 0xc; +const CAUSE_LOAD_PAGE_FAULT: u8 = 0xd; +const CAUSE_STORE_PAGE_FAULT: u8 = 0xf; +const CAUSE_DOUBLE_TRAP: u8 = 0x10; +const CAUSE_SOFTWARE_CHECK_FAULT: u8 = 0x12; +const CAUSE_HARDWARE_ERROR_FAULT: u8 = 0x13; +const CAUSE_FETCH_GUEST_PAGE_FAULT: u8 = 0x14; +const CAUSE_LOAD_GUEST_PAGE_FAULT: u8 = 0x15; +const CAUSE_VIRTUAL_INSTRUCTION: u8 = 0x16; +const CAUSE_STORE_GUEST_PAGE_FAULT: u8 = 0x17; diff --git a/backends/opcodes_maker/output/inst.spinalhdl b/backends/opcodes_maker/output/inst.spinalhdl new file mode 100644 index 000000000..cd11c2ded --- /dev/null +++ b/backends/opcodes_maker/output/inst.spinalhdl @@ -0,0 +1,2123 @@ + +/* Automatically generated by parse_opcodes */ +object Instructions { + def ADD = M"b0000000----------000-----0110011" + def ADD_UW = M"b0000100----------000-----0111011" + def ADDI = M"b-----------------000-----0010011" + def ADDIW = M"b-----------------000-----0011011" + def ADDW = M"b0000000----------000-----0111011" + def AES32DSI = M"b--10101----------000-----0110011" + def AES32DSMI = M"b--10111----------000-----0110011" + def AES32ESI = M"b--10001----------000-----0110011" + def AES32ESMI = M"b--10011----------000-----0110011" + def AES64DS = M"b0011101----------000-----0110011" + def AES64DSM = M"b0011111----------000-----0110011" + def AES64ES = M"b0011001----------000-----0110011" + def AES64ESM = M"b0011011----------000-----0110011" + def AES64IM = M"b001100000000-----001-----0010011" + def AES64KS1I = M"b00110001---------001-----0010011" + def AES64KS2 = M"b0111111----------000-----0110011" + def AMOADD_B = M"b00000------------000-----0101111" + def AMOADD_D = M"b00000------------011-----0101111" + def AMOADD_H = M"b00000------------001-----0101111" + def AMOADD_W = M"b00000------------010-----0101111" + def AMOAND_B = M"b01100------------000-----0101111" + def AMOAND_D = M"b01100------------011-----0101111" + def AMOAND_H = M"b01100------------001-----0101111" + def AMOAND_W = M"b01100------------010-----0101111" + def AMOCAS_B = M"b00101------------000-----0101111" + def AMOCAS_D = M"b00101------------011-----0101111" + def AMOCAS_H = M"b00101------------001-----0101111" + def AMOCAS_Q = M"b00101------------100-----0101111" + def AMOCAS_W = M"b00101------------010-----0101111" + def AMOMAX_B = M"b10100------------000-----0101111" + def AMOMAX_D = M"b10100------------011-----0101111" + def AMOMAX_H = M"b10100------------001-----0101111" + def AMOMAX_W = M"b10100------------010-----0101111" + def AMOMAXU_B = M"b11100------------000-----0101111" + def AMOMAXU_D = M"b11100------------011-----0101111" + def AMOMAXU_H = M"b11100------------001-----0101111" + def AMOMAXU_W = M"b11100------------010-----0101111" + def AMOMIN_B = M"b10000------------000-----0101111" + def AMOMIN_D = M"b10000------------011-----0101111" + def AMOMIN_H = M"b10000------------001-----0101111" + def AMOMIN_W = M"b10000------------010-----0101111" + def AMOMINU_B = M"b11000------------000-----0101111" + def AMOMINU_D = M"b11000------------011-----0101111" + def AMOMINU_H = M"b11000------------001-----0101111" + def AMOMINU_W = M"b11000------------010-----0101111" + def AMOOR_B = M"b01000------------000-----0101111" + def AMOOR_D = M"b01000------------011-----0101111" + def AMOOR_H = M"b01000------------001-----0101111" + def AMOOR_W = M"b01000------------010-----0101111" + def AMOSWAP_B = M"b00001------------000-----0101111" + def AMOSWAP_D = M"b00001------------011-----0101111" + def AMOSWAP_H = M"b00001------------001-----0101111" + def AMOSWAP_W = M"b00001------------010-----0101111" + def AMOXOR_B = M"b00100------------000-----0101111" + def AMOXOR_D = M"b00100------------011-----0101111" + def AMOXOR_H = M"b00100------------001-----0101111" + def AMOXOR_W = M"b00100------------010-----0101111" + def AND = M"b0000000----------111-----0110011" + def ANDI = M"b-----------------111-----0010011" + def ANDN = M"b0100000----------111-----0110011" + def AUIPC = M"b-------------------------0010111" + def BCLR = M"b0100100----------001-----0110011" + def BCLRI = M"b010010-----------001-----0010011" + def BEQ = M"b-----------------000-----1100011" + def BEXT = M"b0100100----------101-----0110011" + def BEXTI = M"b010010-----------101-----0010011" + def BGE = M"b-----------------101-----1100011" + def BGEU = M"b-----------------111-----1100011" + def BINV = M"b0110100----------001-----0110011" + def BINVI = M"b011010-----------001-----0010011" + def BLT = M"b-----------------100-----1100011" + def BLTU = M"b-----------------110-----1100011" + def BNE = M"b-----------------001-----1100011" + def BREV8 = M"b011010000111-----101-----0010011" + def BSET = M"b0010100----------001-----0110011" + def BSETI = M"b001010-----------001-----0010011" + def C_ADD = M"b----------------1001----------10" + def C_ADDI = M"b----------------000-----------01" + def C_ADDI16SP = M"b----------------011-00010-----01" + def C_ADDI4SPN = M"b----------------000-----------00" + def C_ADDIW = M"b----------------001-----------01" + def C_ADDW = M"b----------------100111---01---01" + def C_AND = M"b----------------100011---11---01" + def C_ANDI = M"b----------------100-10--------01" + def C_BEQZ = M"b----------------110-----------01" + def C_BNEZ = M"b----------------111-----------01" + def C_EBREAK = M"b----------------1001000000000010" + def C_FLD = M"b----------------001-----------00" + def C_FLDSP = M"b----------------001-----------10" + def C_FLW = M"b----------------011-----------00" + def C_FLWSP = M"b----------------011-----------10" + def C_FSD = M"b----------------101-----------00" + def C_FSDSP = M"b----------------101-----------10" + def C_FSW = M"b----------------111-----------00" + def C_FSWSP = M"b----------------111-----------10" + def C_J = M"b----------------101-----------01" + def C_JAL = M"b----------------001-----------01" + def C_JALR = M"b----------------1001-----0000010" + def C_JR = M"b----------------1000-----0000010" + def C_LBU = M"b----------------100000--------00" + def C_LD = M"b----------------011-----------00" + def C_LDSP = M"b----------------011-----------10" + def C_LI = M"b----------------010-----------01" + def C_LUI = M"b----------------011-----------01" + def C_LW = M"b----------------010-----------00" + def C_LWSP = M"b----------------010-----------10" + def C_MUL = M"b----------------100111---10---01" + def C_MV = M"b----------------1000----------10" + def C_NOP = M"b----------------000-00000-----01" + def C_NOT = M"b----------------100111---1110101" + def C_OR = M"b----------------100011---10---01" + def C_SB = M"b----------------100010--------00" + def C_SD = M"b----------------111-----------00" + def C_SDSP = M"b----------------111-----------10" + def C_SEXT_B = M"b----------------100111---1100101" + def C_SEXT_H = M"b----------------100111---1101101" + def C_SLLI = M"b----------------000-----------10" + def C_SRAI = M"b----------------100-01--------01" + def C_SRLI = M"b----------------100-00--------01" + def C_SUB = M"b----------------100011---00---01" + def C_SUBW = M"b----------------100111---00---01" + def C_SW = M"b----------------110-----------00" + def C_SWSP = M"b----------------110-----------10" + def C_XOR = M"b----------------100011---01---01" + def C_ZEXT_B = M"b----------------100111---1100001" + def C_ZEXT_H = M"b----------------100111---1101001" + def C_ZEXT_W = M"b----------------100111---1110001" + def CBO_CLEAN = M"b000000000001-----010000000001111" + def CBO_FLUSH = M"b000000000010-----010000000001111" + def CBO_INVAL = M"b000000000000-----010000000001111" + def CBO_ZERO = M"b000000000100-----010000000001111" + def CLMUL = M"b0000101----------001-----0110011" + def CLMULH = M"b0000101----------011-----0110011" + def CLMULR = M"b0000101----------010-----0110011" + def CLZ = M"b011000000000-----001-----0010011" + def CLZW = M"b011000000000-----001-----0011011" + def CM_MVA01S = M"b----------------101011---11---10" + def CM_MVSA01 = M"b----------------101011---01---10" + def CM_POP = M"b----------------10111010------10" + def CM_POPRET = M"b----------------10111110------10" + def CM_POPRETZ = M"b----------------10111100------10" + def CM_PUSH = M"b----------------10111000------10" + def CPOP = M"b011000000010-----001-----0010011" + def CPOPW = M"b011000000010-----001-----0011011" + def CSRRC = M"b-----------------011-----1110011" + def CSRRCI = M"b-----------------111-----1110011" + def CSRRS = M"b-----------------010-----1110011" + def CSRRSI = M"b-----------------110-----1110011" + def CSRRW = M"b-----------------001-----1110011" + def CSRRWI = M"b-----------------101-----1110011" + def CTZ = M"b011000000001-----001-----0010011" + def CTZW = M"b011000000001-----001-----0011011" + def CZERO_EQZ = M"b0000111----------101-----0110011" + def CZERO_NEZ = M"b0000111----------111-----0110011" + def DIV = M"b0000001----------100-----0110011" + def DIVU = M"b0000001----------101-----0110011" + def DIVUW = M"b0000001----------101-----0111011" + def DIVW = M"b0000001----------100-----0111011" + def DRET = M"b01111011001000000000000001110011" + def EBREAK = M"b00000000000100000000000001110011" + def ECALL = M"b00000000000000000000000001110011" + def FADD_D = M"b0000001------------------1010011" + def FADD_H = M"b0000010------------------1010011" + def FADD_Q = M"b0000011------------------1010011" + def FADD_S = M"b0000000------------------1010011" + def FCLASS_D = M"b111000100000-----001-----1010011" + def FCLASS_H = M"b111001000000-----001-----1010011" + def FCLASS_Q = M"b111001100000-----001-----1010011" + def FCLASS_S = M"b111000000000-----001-----1010011" + def FCVT_BF16_S = M"b010001001000-------------1010011" + def FCVT_D_H = M"b010000100010-------------1010011" + def FCVT_D_L = M"b110100100010-------------1010011" + def FCVT_D_LU = M"b110100100011-------------1010011" + def FCVT_D_Q = M"b010000100011-------------1010011" + def FCVT_D_S = M"b010000100000-------------1010011" + def FCVT_D_W = M"b110100100000-------------1010011" + def FCVT_D_WU = M"b110100100001-------------1010011" + def FCVT_H_D = M"b010001000001-------------1010011" + def FCVT_H_L = M"b110101000010-------------1010011" + def FCVT_H_LU = M"b110101000011-------------1010011" + def FCVT_H_Q = M"b010001000011-------------1010011" + def FCVT_H_S = M"b010001000000-------------1010011" + def FCVT_H_W = M"b110101000000-------------1010011" + def FCVT_H_WU = M"b110101000001-------------1010011" + def FCVT_L_D = M"b110000100010-------------1010011" + def FCVT_L_H = M"b110001000010-------------1010011" + def FCVT_L_Q = M"b110001100010-------------1010011" + def FCVT_L_S = M"b110000000010-------------1010011" + def FCVT_LU_D = M"b110000100011-------------1010011" + def FCVT_LU_H = M"b110001000011-------------1010011" + def FCVT_LU_Q = M"b110001100011-------------1010011" + def FCVT_LU_S = M"b110000000011-------------1010011" + def FCVT_Q_D = M"b010001100001-------------1010011" + def FCVT_Q_H = M"b010001100010-------------1010011" + def FCVT_Q_L = M"b110101100010-------------1010011" + def FCVT_Q_LU = M"b110101100011-------------1010011" + def FCVT_Q_S = M"b010001100000-------------1010011" + def FCVT_Q_W = M"b110101100000-------------1010011" + def FCVT_Q_WU = M"b110101100001-------------1010011" + def FCVT_S_BF16 = M"b010000000110-------------1010011" + def FCVT_S_D = M"b010000000001-------------1010011" + def FCVT_S_H = M"b010000000010-------------1010011" + def FCVT_S_L = M"b110100000010-------------1010011" + def FCVT_S_LU = M"b110100000011-------------1010011" + def FCVT_S_Q = M"b010000000011-------------1010011" + def FCVT_S_W = M"b110100000000-------------1010011" + def FCVT_S_WU = M"b110100000001-------------1010011" + def FCVT_W_D = M"b110000100000-------------1010011" + def FCVT_W_H = M"b110001000000-------------1010011" + def FCVT_W_Q = M"b110001100000-------------1010011" + def FCVT_W_S = M"b110000000000-------------1010011" + def FCVT_WU_D = M"b110000100001-------------1010011" + def FCVT_WU_H = M"b110001000001-------------1010011" + def FCVT_WU_Q = M"b110001100001-------------1010011" + def FCVT_WU_S = M"b110000000001-------------1010011" + def FCVTMOD_W_D = M"b110000101000-----001-----1010011" + def FDIV_D = M"b0001101------------------1010011" + def FDIV_H = M"b0001110------------------1010011" + def FDIV_Q = M"b0001111------------------1010011" + def FDIV_S = M"b0001100------------------1010011" + def FENCE = M"b-----------------000-----0001111" + def FENCE_I = M"b-----------------001-----0001111" + def FEQ_D = M"b1010001----------010-----1010011" + def FEQ_H = M"b1010010----------010-----1010011" + def FEQ_Q = M"b1010011----------010-----1010011" + def FEQ_S = M"b1010000----------010-----1010011" + def FLD = M"b-----------------011-----0000111" + def FLE_D = M"b1010001----------000-----1010011" + def FLE_H = M"b1010010----------000-----1010011" + def FLE_Q = M"b1010011----------000-----1010011" + def FLE_S = M"b1010000----------000-----1010011" + def FLEQ_D = M"b1010001----------100-----1010011" + def FLEQ_H = M"b1010010----------100-----1010011" + def FLEQ_Q = M"b1010011----------100-----1010011" + def FLEQ_S = M"b1010000----------100-----1010011" + def FLH = M"b-----------------001-----0000111" + def FLI_D = M"b111100100001-----000-----1010011" + def FLI_H = M"b111101000001-----000-----1010011" + def FLI_Q = M"b111101100001-----000-----1010011" + def FLI_S = M"b111100000001-----000-----1010011" + def FLQ = M"b-----------------100-----0000111" + def FLT_D = M"b1010001----------001-----1010011" + def FLT_H = M"b1010010----------001-----1010011" + def FLT_Q = M"b1010011----------001-----1010011" + def FLT_S = M"b1010000----------001-----1010011" + def FLTQ_D = M"b1010001----------101-----1010011" + def FLTQ_H = M"b1010010----------101-----1010011" + def FLTQ_Q = M"b1010011----------101-----1010011" + def FLTQ_S = M"b1010000----------101-----1010011" + def FLW = M"b-----------------010-----0000111" + def FMADD_D = M"b-----01------------------1000011" + def FMADD_H = M"b-----10------------------1000011" + def FMADD_Q = M"b-----11------------------1000011" + def FMADD_S = M"b-----00------------------1000011" + def FMAX_D = M"b0010101----------001-----1010011" + def FMAX_H = M"b0010110----------001-----1010011" + def FMAX_Q = M"b0010111----------001-----1010011" + def FMAX_S = M"b0010100----------001-----1010011" + def FMAXM_D = M"b0010101----------011-----1010011" + def FMAXM_H = M"b0010110----------011-----1010011" + def FMAXM_Q = M"b0010111----------011-----1010011" + def FMAXM_S = M"b0010100----------011-----1010011" + def FMIN_D = M"b0010101----------000-----1010011" + def FMIN_H = M"b0010110----------000-----1010011" + def FMIN_Q = M"b0010111----------000-----1010011" + def FMIN_S = M"b0010100----------000-----1010011" + def FMINM_D = M"b0010101----------010-----1010011" + def FMINM_H = M"b0010110----------010-----1010011" + def FMINM_Q = M"b0010111----------010-----1010011" + def FMINM_S = M"b0010100----------010-----1010011" + def FMSUB_D = M"b-----01------------------1000111" + def FMSUB_H = M"b-----10------------------1000111" + def FMSUB_Q = M"b-----11------------------1000111" + def FMSUB_S = M"b-----00------------------1000111" + def FMUL_D = M"b0001001------------------1010011" + def FMUL_H = M"b0001010------------------1010011" + def FMUL_Q = M"b0001011------------------1010011" + def FMUL_S = M"b0001000------------------1010011" + def FMV_D_X = M"b111100100000-----000-----1010011" + def FMV_H_X = M"b111101000000-----000-----1010011" + def FMV_W_X = M"b111100000000-----000-----1010011" + def FMV_X_D = M"b111000100000-----000-----1010011" + def FMV_X_H = M"b111001000000-----000-----1010011" + def FMV_X_W = M"b111000000000-----000-----1010011" + def FMVH_X_D = M"b111000100001-----000-----1010011" + def FMVH_X_Q = M"b111001100001-----000-----1010011" + def FMVP_D_X = M"b1011001----------000-----1010011" + def FMVP_Q_X = M"b1011011----------000-----1010011" + def FNMADD_D = M"b-----01------------------1001111" + def FNMADD_H = M"b-----10------------------1001111" + def FNMADD_Q = M"b-----11------------------1001111" + def FNMADD_S = M"b-----00------------------1001111" + def FNMSUB_D = M"b-----01------------------1001011" + def FNMSUB_H = M"b-----10------------------1001011" + def FNMSUB_Q = M"b-----11------------------1001011" + def FNMSUB_S = M"b-----00------------------1001011" + def FROUND_D = M"b010000100100-------------1010011" + def FROUND_H = M"b010001000100-------------1010011" + def FROUND_Q = M"b010001100100-------------1010011" + def FROUND_S = M"b010000000100-------------1010011" + def FROUNDNX_D = M"b010000100101-------------1010011" + def FROUNDNX_H = M"b010001000101-------------1010011" + def FROUNDNX_Q = M"b010001100101-------------1010011" + def FROUNDNX_S = M"b010000000101-------------1010011" + def FSD = M"b-----------------011-----0100111" + def FSGNJ_D = M"b0010001----------000-----1010011" + def FSGNJ_H = M"b0010010----------000-----1010011" + def FSGNJ_Q = M"b0010011----------000-----1010011" + def FSGNJ_S = M"b0010000----------000-----1010011" + def FSGNJN_D = M"b0010001----------001-----1010011" + def FSGNJN_H = M"b0010010----------001-----1010011" + def FSGNJN_Q = M"b0010011----------001-----1010011" + def FSGNJN_S = M"b0010000----------001-----1010011" + def FSGNJX_D = M"b0010001----------010-----1010011" + def FSGNJX_H = M"b0010010----------010-----1010011" + def FSGNJX_Q = M"b0010011----------010-----1010011" + def FSGNJX_S = M"b0010000----------010-----1010011" + def FSH = M"b-----------------001-----0100111" + def FSQ = M"b-----------------100-----0100111" + def FSQRT_D = M"b010110100000-------------1010011" + def FSQRT_H = M"b010111000000-------------1010011" + def FSQRT_Q = M"b010111100000-------------1010011" + def FSQRT_S = M"b010110000000-------------1010011" + def FSUB_D = M"b0000101------------------1010011" + def FSUB_H = M"b0000110------------------1010011" + def FSUB_Q = M"b0000111------------------1010011" + def FSUB_S = M"b0000100------------------1010011" + def FSW = M"b-----------------010-----0100111" + def HFENCE_GVMA = M"b0110001----------000000001110011" + def HFENCE_VVMA = M"b0010001----------000000001110011" + def HINVAL_GVMA = M"b0110011----------000000001110011" + def HINVAL_VVMA = M"b0010011----------000000001110011" + def HLV_B = M"b011000000000-----100-----1110011" + def HLV_BU = M"b011000000001-----100-----1110011" + def HLV_D = M"b011011000000-----100-----1110011" + def HLV_H = M"b011001000000-----100-----1110011" + def HLV_HU = M"b011001000001-----100-----1110011" + def HLV_W = M"b011010000000-----100-----1110011" + def HLV_WU = M"b011010000001-----100-----1110011" + def HLVX_HU = M"b011001000011-----100-----1110011" + def HLVX_WU = M"b011010000011-----100-----1110011" + def HSV_B = M"b0110001----------100000001110011" + def HSV_D = M"b0110111----------100000001110011" + def HSV_H = M"b0110011----------100000001110011" + def HSV_W = M"b0110101----------100000001110011" + def JAL = M"b-------------------------1101111" + def JALR = M"b-----------------000-----1100111" + def LB = M"b-----------------000-----0000011" + def LB_AQ = M"b001101-00000-----000-----0101111" + def LBU = M"b-----------------100-----0000011" + def LD = M"b-----------------011-----0000011" + def LD_AQ = M"b001101-00000-----011-----0101111" + def LH = M"b-----------------001-----0000011" + def LH_AQ = M"b001101-00000-----001-----0101111" + def LHU = M"b-----------------101-----0000011" + def LPAD = M"b--------------------000000010111" + def LR_D = M"b00010--00000-----011-----0101111" + def LR_W = M"b00010--00000-----010-----0101111" + def LUI = M"b-------------------------0110111" + def LW = M"b-----------------010-----0000011" + def LW_AQ = M"b001101-00000-----010-----0101111" + def LWU = M"b-----------------110-----0000011" + def MAX = M"b0000101----------110-----0110011" + def MAXU = M"b0000101----------111-----0110011" + def MIN = M"b0000101----------100-----0110011" + def MINU = M"b0000101----------101-----0110011" + def MNRET = M"b01110000001000000000000001110011" + def MOP_R_N = M"b1-00--0111-------100-----1110011" + def MOP_RR_N = M"b1-00--1----------100-----1110011" + def MRET = M"b00110000001000000000000001110011" + def MUL = M"b0000001----------000-----0110011" + def MULH = M"b0000001----------001-----0110011" + def MULHSU = M"b0000001----------010-----0110011" + def MULHU = M"b0000001----------011-----0110011" + def MULW = M"b0000001----------000-----0111011" + def OR = M"b0000000----------110-----0110011" + def ORC_B = M"b001010000111-----101-----0010011" + def ORI = M"b-----------------110-----0010011" + def ORN = M"b0100000----------110-----0110011" + def PACK = M"b0000100----------100-----0110011" + def PACKH = M"b0000100----------111-----0110011" + def PACKW = M"b0000100----------100-----0111011" + def REM = M"b0000001----------110-----0110011" + def REMU = M"b0000001----------111-----0110011" + def REMUW = M"b0000001----------111-----0111011" + def REMW = M"b0000001----------110-----0111011" + def REV8 = M"b011010111000-----101-----0010011" + def ROL = M"b0110000----------001-----0110011" + def ROLW = M"b0110000----------001-----0111011" + def ROR = M"b0110000----------101-----0110011" + def RORI = M"b011000-----------101-----0010011" + def RORIW = M"b0110000----------101-----0011011" + def RORW = M"b0110000----------101-----0111011" + def SB = M"b-----------------000-----0100011" + def SB_RL = M"b00111-1----------000000000101111" + def SC_D = M"b00011------------011-----0101111" + def SC_W = M"b00011------------010-----0101111" + def SCTRCLR = M"b00010000010000000000000001110011" + def SD = M"b-----------------011-----0100011" + def SD_RL = M"b00111-1----------011000000101111" + def SEXT_B = M"b011000000100-----001-----0010011" + def SEXT_H = M"b011000000101-----001-----0010011" + def SFENCE_INVAL_IR = M"b00011000000100000000000001110011" + def SFENCE_VMA = M"b0001001----------000000001110011" + def SFENCE_W_INVAL = M"b00011000000000000000000001110011" + def SH = M"b-----------------001-----0100011" + def SH1ADD = M"b0010000----------010-----0110011" + def SH1ADD_UW = M"b0010000----------010-----0111011" + def SH2ADD = M"b0010000----------100-----0110011" + def SH2ADD_UW = M"b0010000----------100-----0111011" + def SH3ADD = M"b0010000----------110-----0110011" + def SH3ADD_UW = M"b0010000----------110-----0111011" + def SH_RL = M"b00111-1----------001000000101111" + def SHA256SIG0 = M"b000100000010-----001-----0010011" + def SHA256SIG1 = M"b000100000011-----001-----0010011" + def SHA256SUM0 = M"b000100000000-----001-----0010011" + def SHA256SUM1 = M"b000100000001-----001-----0010011" + def SHA512SIG0 = M"b000100000110-----001-----0010011" + def SHA512SIG0H = M"b0101110----------000-----0110011" + def SHA512SIG0L = M"b0101010----------000-----0110011" + def SHA512SIG1 = M"b000100000111-----001-----0010011" + def SHA512SIG1H = M"b0101111----------000-----0110011" + def SHA512SIG1L = M"b0101011----------000-----0110011" + def SHA512SUM0 = M"b000100000100-----001-----0010011" + def SHA512SUM0R = M"b0101000----------000-----0110011" + def SHA512SUM1 = M"b000100000101-----001-----0010011" + def SHA512SUM1R = M"b0101001----------000-----0110011" + def SINVAL_VMA = M"b0001011----------000000001110011" + def SLL = M"b0000000----------001-----0110011" + def SLLI = M"b000000-----------001-----0010011" + def SLLI_UW = M"b000010-----------001-----0011011" + def SLLIW = M"b0000000----------001-----0011011" + def SLLW = M"b0000000----------001-----0111011" + def SLT = M"b0000000----------010-----0110011" + def SLTI = M"b-----------------010-----0010011" + def SLTIU = M"b-----------------011-----0010011" + def SLTU = M"b0000000----------011-----0110011" + def SM3P0 = M"b000100001000-----001-----0010011" + def SM3P1 = M"b000100001001-----001-----0010011" + def SM4ED = M"b--11000----------000-----0110011" + def SM4KS = M"b--11010----------000-----0110011" + def SRA = M"b0100000----------101-----0110011" + def SRAI = M"b010000-----------101-----0010011" + def SRAIW = M"b0100000----------101-----0011011" + def SRAW = M"b0100000----------101-----0111011" + def SRET = M"b00010000001000000000000001110011" + def SRL = M"b0000000----------101-----0110011" + def SRLI = M"b000000-----------101-----0010011" + def SRLIW = M"b0000000----------101-----0011011" + def SRLW = M"b0000000----------101-----0111011" + def SSAMOSWAP_D = M"b01001------------011-----0101111" + def SSAMOSWAP_W = M"b01001------------010-----0101111" + def SSPOPCHK_X1 = M"b11001101110000001100000001110011" + def SSPOPCHK_X5 = M"b11001101110000101100000001110011" + def SSPUSH_X1 = M"b11001110000100000100000001110011" + def SSPUSH_X5 = M"b11001110010100000100000001110011" + def SSRDP = M"b11001101110000000100-----1110011" + def SUB = M"b0100000----------000-----0110011" + def SUBW = M"b0100000----------000-----0111011" + def SW = M"b-----------------010-----0100011" + def SW_RL = M"b00111-1----------010000000101111" + def UNZIP = M"b000010001111-----101-----0010011" + def VAADD_VV = M"b001001-----------010-----1010111" + def VAADD_VX = M"b001001-----------110-----1010111" + def VAADDU_VV = M"b001000-----------010-----1010111" + def VAADDU_VX = M"b001000-----------110-----1010111" + def VADC_VIM = M"b0100000----------011-----1010111" + def VADC_VVM = M"b0100000----------000-----1010111" + def VADC_VXM = M"b0100000----------100-----1010111" + def VADD_VI = M"b000000-----------011-----1010111" + def VADD_VV = M"b000000-----------000-----1010111" + def VADD_VX = M"b000000-----------100-----1010111" + def VAESDF_VS = M"b1010011-----00001010-----1110111" + def VAESDF_VV = M"b1010001-----00001010-----1110111" + def VAESDM_VS = M"b1010011-----00000010-----1110111" + def VAESDM_VV = M"b1010001-----00000010-----1110111" + def VAESEF_VS = M"b1010011-----00011010-----1110111" + def VAESEF_VV = M"b1010001-----00011010-----1110111" + def VAESEM_VS = M"b1010011-----00010010-----1110111" + def VAESEM_VV = M"b1010001-----00010010-----1110111" + def VAESKF1_VI = M"b1000101----------010-----1110111" + def VAESKF2_VI = M"b1010101----------010-----1110111" + def VAESZ_VS = M"b1010011-----00111010-----1110111" + def VAND_VI = M"b001001-----------011-----1010111" + def VAND_VV = M"b001001-----------000-----1010111" + def VAND_VX = M"b001001-----------100-----1010111" + def VANDN_VV = M"b000001-----------000-----1010111" + def VANDN_VX = M"b000001-----------100-----1010111" + def VASUB_VV = M"b001011-----------010-----1010111" + def VASUB_VX = M"b001011-----------110-----1010111" + def VASUBU_VV = M"b001010-----------010-----1010111" + def VASUBU_VX = M"b001010-----------110-----1010111" + def VBREV8_V = M"b010010------01000010-----1010111" + def VBREV_V = M"b010010------01010010-----1010111" + def VCLMUL_VV = M"b001100-----------010-----1010111" + def VCLMUL_VX = M"b001100-----------110-----1010111" + def VCLMULH_VV = M"b001101-----------010-----1010111" + def VCLMULH_VX = M"b001101-----------110-----1010111" + def VCLZ_V = M"b010010------01100010-----1010111" + def VCOMPRESS_VM = M"b0101111----------010-----1010111" + def VCPOP_M = M"b010000------10000010-----1010111" + def VCPOP_V = M"b010010------01110010-----1010111" + def VCTZ_V = M"b010010------01101010-----1010111" + def VDIV_VV = M"b100001-----------010-----1010111" + def VDIV_VX = M"b100001-----------110-----1010111" + def VDIVU_VV = M"b100000-----------010-----1010111" + def VDIVU_VX = M"b100000-----------110-----1010111" + def VFADD_VF = M"b000000-----------101-----1010111" + def VFADD_VV = M"b000000-----------001-----1010111" + def VFCLASS_V = M"b010011------10000001-----1010111" + def VFCVT_F_X_V = M"b010010------00011001-----1010111" + def VFCVT_F_XU_V = M"b010010------00010001-----1010111" + def VFCVT_RTZ_X_F_V = M"b010010------00111001-----1010111" + def VFCVT_RTZ_XU_F_V = M"b010010------00110001-----1010111" + def VFCVT_X_F_V = M"b010010------00001001-----1010111" + def VFCVT_XU_F_V = M"b010010------00000001-----1010111" + def VFDIV_VF = M"b100000-----------101-----1010111" + def VFDIV_VV = M"b100000-----------001-----1010111" + def VFIRST_M = M"b010000------10001010-----1010111" + def VFMACC_VF = M"b101100-----------101-----1010111" + def VFMACC_VV = M"b101100-----------001-----1010111" + def VFMADD_VF = M"b101000-----------101-----1010111" + def VFMADD_VV = M"b101000-----------001-----1010111" + def VFMAX_VF = M"b000110-----------101-----1010111" + def VFMAX_VV = M"b000110-----------001-----1010111" + def VFMERGE_VFM = M"b0101110----------101-----1010111" + def VFMIN_VF = M"b000100-----------101-----1010111" + def VFMIN_VV = M"b000100-----------001-----1010111" + def VFMSAC_VF = M"b101110-----------101-----1010111" + def VFMSAC_VV = M"b101110-----------001-----1010111" + def VFMSUB_VF = M"b101010-----------101-----1010111" + def VFMSUB_VV = M"b101010-----------001-----1010111" + def VFMUL_VF = M"b100100-----------101-----1010111" + def VFMUL_VV = M"b100100-----------001-----1010111" + def VFMV_F_S = M"b0100001-----00000001-----1010111" + def VFMV_S_F = M"b010000100000-----101-----1010111" + def VFMV_V_F = M"b010111100000-----101-----1010111" + def VFNCVT_F_F_W = M"b010010------10100001-----1010111" + def VFNCVT_F_X_W = M"b010010------10011001-----1010111" + def VFNCVT_F_XU_W = M"b010010------10010001-----1010111" + def VFNCVT_ROD_F_F_W = M"b010010------10101001-----1010111" + def VFNCVT_RTZ_X_F_W = M"b010010------10111001-----1010111" + def VFNCVT_RTZ_XU_F_W = M"b010010------10110001-----1010111" + def VFNCVT_X_F_W = M"b010010------10001001-----1010111" + def VFNCVT_XU_F_W = M"b010010------10000001-----1010111" + def VFNCVTBF16_F_F_W = M"b010010------11101001-----1010111" + def VFNMACC_VF = M"b101101-----------101-----1010111" + def VFNMACC_VV = M"b101101-----------001-----1010111" + def VFNMADD_VF = M"b101001-----------101-----1010111" + def VFNMADD_VV = M"b101001-----------001-----1010111" + def VFNMSAC_VF = M"b101111-----------101-----1010111" + def VFNMSAC_VV = M"b101111-----------001-----1010111" + def VFNMSUB_VF = M"b101011-----------101-----1010111" + def VFNMSUB_VV = M"b101011-----------001-----1010111" + def VFRDIV_VF = M"b100001-----------101-----1010111" + def VFREC7_V = M"b010011------00101001-----1010111" + def VFREDMAX_VS = M"b000111-----------001-----1010111" + def VFREDMIN_VS = M"b000101-----------001-----1010111" + def VFREDOSUM_VS = M"b000011-----------001-----1010111" + def VFREDUSUM_VS = M"b000001-----------001-----1010111" + def VFRSQRT7_V = M"b010011------00100001-----1010111" + def VFRSUB_VF = M"b100111-----------101-----1010111" + def VFSGNJ_VF = M"b001000-----------101-----1010111" + def VFSGNJ_VV = M"b001000-----------001-----1010111" + def VFSGNJN_VF = M"b001001-----------101-----1010111" + def VFSGNJN_VV = M"b001001-----------001-----1010111" + def VFSGNJX_VF = M"b001010-----------101-----1010111" + def VFSGNJX_VV = M"b001010-----------001-----1010111" + def VFSLIDE1DOWN_VF = M"b001111-----------101-----1010111" + def VFSLIDE1UP_VF = M"b001110-----------101-----1010111" + def VFSQRT_V = M"b010011------00000001-----1010111" + def VFSUB_VF = M"b000010-----------101-----1010111" + def VFSUB_VV = M"b000010-----------001-----1010111" + def VFWADD_VF = M"b110000-----------101-----1010111" + def VFWADD_VV = M"b110000-----------001-----1010111" + def VFWADD_WF = M"b110100-----------101-----1010111" + def VFWADD_WV = M"b110100-----------001-----1010111" + def VFWCVT_F_F_V = M"b010010------01100001-----1010111" + def VFWCVT_F_X_V = M"b010010------01011001-----1010111" + def VFWCVT_F_XU_V = M"b010010------01010001-----1010111" + def VFWCVT_RTZ_X_F_V = M"b010010------01111001-----1010111" + def VFWCVT_RTZ_XU_F_V = M"b010010------01110001-----1010111" + def VFWCVT_X_F_V = M"b010010------01001001-----1010111" + def VFWCVT_XU_F_V = M"b010010------01000001-----1010111" + def VFWCVTBF16_F_F_V = M"b010010------01101001-----1010111" + def VFWMACC_VF = M"b111100-----------101-----1010111" + def VFWMACC_VV = M"b111100-----------001-----1010111" + def VFWMACCBF16_VF = M"b111011-----------101-----1010111" + def VFWMACCBF16_VV = M"b111011-----------001-----1010111" + def VFWMSAC_VF = M"b111110-----------101-----1010111" + def VFWMSAC_VV = M"b111110-----------001-----1010111" + def VFWMUL_VF = M"b111000-----------101-----1010111" + def VFWMUL_VV = M"b111000-----------001-----1010111" + def VFWNMACC_VF = M"b111101-----------101-----1010111" + def VFWNMACC_VV = M"b111101-----------001-----1010111" + def VFWNMSAC_VF = M"b111111-----------101-----1010111" + def VFWNMSAC_VV = M"b111111-----------001-----1010111" + def VFWREDOSUM_VS = M"b110011-----------001-----1010111" + def VFWREDUSUM_VS = M"b110001-----------001-----1010111" + def VFWSUB_VF = M"b110010-----------101-----1010111" + def VFWSUB_VV = M"b110010-----------001-----1010111" + def VFWSUB_WF = M"b110110-----------101-----1010111" + def VFWSUB_WV = M"b110110-----------001-----1010111" + def VGHSH_VV = M"b1011001----------010-----1110111" + def VGMUL_VV = M"b1010001-----10001010-----1110111" + def VID_V = M"b010100-0000010001010-----1010111" + def VIOTA_M = M"b010100------10000010-----1010111" + def VL1RE16_V = M"b000000101000-----101-----0000111" + def VL1RE32_V = M"b000000101000-----110-----0000111" + def VL1RE64_V = M"b000000101000-----111-----0000111" + def VL1RE8_V = M"b000000101000-----000-----0000111" + def VL2RE16_V = M"b001000101000-----101-----0000111" + def VL2RE32_V = M"b001000101000-----110-----0000111" + def VL2RE64_V = M"b001000101000-----111-----0000111" + def VL2RE8_V = M"b001000101000-----000-----0000111" + def VL4RE16_V = M"b011000101000-----101-----0000111" + def VL4RE32_V = M"b011000101000-----110-----0000111" + def VL4RE64_V = M"b011000101000-----111-----0000111" + def VL4RE8_V = M"b011000101000-----000-----0000111" + def VL8RE16_V = M"b111000101000-----101-----0000111" + def VL8RE32_V = M"b111000101000-----110-----0000111" + def VL8RE64_V = M"b111000101000-----111-----0000111" + def VL8RE8_V = M"b111000101000-----000-----0000111" + def VLE16_V = M"b000000-00000-----101-----0000111" + def VLE16FF_V = M"b000000-10000-----101-----0000111" + def VLE32_V = M"b000000-00000-----110-----0000111" + def VLE32FF_V = M"b000000-10000-----110-----0000111" + def VLE64_V = M"b000000-00000-----111-----0000111" + def VLE64FF_V = M"b000000-10000-----111-----0000111" + def VLE8_V = M"b000000-00000-----000-----0000111" + def VLE8FF_V = M"b000000-10000-----000-----0000111" + def VLM_V = M"b000000101011-----000-----0000111" + def VLOXEI16_V = M"b000011-----------101-----0000111" + def VLOXEI32_V = M"b000011-----------110-----0000111" + def VLOXEI64_V = M"b000011-----------111-----0000111" + def VLOXEI8_V = M"b000011-----------000-----0000111" + def VLOXSEG2EI16_V = M"b001011-----------101-----0000111" + def VLOXSEG2EI32_V = M"b001011-----------110-----0000111" + def VLOXSEG2EI64_V = M"b001011-----------111-----0000111" + def VLOXSEG2EI8_V = M"b001011-----------000-----0000111" + def VLOXSEG3EI16_V = M"b010011-----------101-----0000111" + def VLOXSEG3EI32_V = M"b010011-----------110-----0000111" + def VLOXSEG3EI64_V = M"b010011-----------111-----0000111" + def VLOXSEG3EI8_V = M"b010011-----------000-----0000111" + def VLOXSEG4EI16_V = M"b011011-----------101-----0000111" + def VLOXSEG4EI32_V = M"b011011-----------110-----0000111" + def VLOXSEG4EI64_V = M"b011011-----------111-----0000111" + def VLOXSEG4EI8_V = M"b011011-----------000-----0000111" + def VLOXSEG5EI16_V = M"b100011-----------101-----0000111" + def VLOXSEG5EI32_V = M"b100011-----------110-----0000111" + def VLOXSEG5EI64_V = M"b100011-----------111-----0000111" + def VLOXSEG5EI8_V = M"b100011-----------000-----0000111" + def VLOXSEG6EI16_V = M"b101011-----------101-----0000111" + def VLOXSEG6EI32_V = M"b101011-----------110-----0000111" + def VLOXSEG6EI64_V = M"b101011-----------111-----0000111" + def VLOXSEG6EI8_V = M"b101011-----------000-----0000111" + def VLOXSEG7EI16_V = M"b110011-----------101-----0000111" + def VLOXSEG7EI32_V = M"b110011-----------110-----0000111" + def VLOXSEG7EI64_V = M"b110011-----------111-----0000111" + def VLOXSEG7EI8_V = M"b110011-----------000-----0000111" + def VLOXSEG8EI16_V = M"b111011-----------101-----0000111" + def VLOXSEG8EI32_V = M"b111011-----------110-----0000111" + def VLOXSEG8EI64_V = M"b111011-----------111-----0000111" + def VLOXSEG8EI8_V = M"b111011-----------000-----0000111" + def VLSE16_V = M"b000010-----------101-----0000111" + def VLSE32_V = M"b000010-----------110-----0000111" + def VLSE64_V = M"b000010-----------111-----0000111" + def VLSE8_V = M"b000010-----------000-----0000111" + def VLSEG2E16_V = M"b001000-00000-----101-----0000111" + def VLSEG2E16FF_V = M"b001000-10000-----101-----0000111" + def VLSEG2E32_V = M"b001000-00000-----110-----0000111" + def VLSEG2E32FF_V = M"b001000-10000-----110-----0000111" + def VLSEG2E64_V = M"b001000-00000-----111-----0000111" + def VLSEG2E64FF_V = M"b001000-10000-----111-----0000111" + def VLSEG2E8_V = M"b001000-00000-----000-----0000111" + def VLSEG2E8FF_V = M"b001000-10000-----000-----0000111" + def VLSEG3E16_V = M"b010000-00000-----101-----0000111" + def VLSEG3E16FF_V = M"b010000-10000-----101-----0000111" + def VLSEG3E32_V = M"b010000-00000-----110-----0000111" + def VLSEG3E32FF_V = M"b010000-10000-----110-----0000111" + def VLSEG3E64_V = M"b010000-00000-----111-----0000111" + def VLSEG3E64FF_V = M"b010000-10000-----111-----0000111" + def VLSEG3E8_V = M"b010000-00000-----000-----0000111" + def VLSEG3E8FF_V = M"b010000-10000-----000-----0000111" + def VLSEG4E16_V = M"b011000-00000-----101-----0000111" + def VLSEG4E16FF_V = M"b011000-10000-----101-----0000111" + def VLSEG4E32_V = M"b011000-00000-----110-----0000111" + def VLSEG4E32FF_V = M"b011000-10000-----110-----0000111" + def VLSEG4E64_V = M"b011000-00000-----111-----0000111" + def VLSEG4E64FF_V = M"b011000-10000-----111-----0000111" + def VLSEG4E8_V = M"b011000-00000-----000-----0000111" + def VLSEG4E8FF_V = M"b011000-10000-----000-----0000111" + def VLSEG5E16_V = M"b100000-00000-----101-----0000111" + def VLSEG5E16FF_V = M"b100000-10000-----101-----0000111" + def VLSEG5E32_V = M"b100000-00000-----110-----0000111" + def VLSEG5E32FF_V = M"b100000-10000-----110-----0000111" + def VLSEG5E64_V = M"b100000-00000-----111-----0000111" + def VLSEG5E64FF_V = M"b100000-10000-----111-----0000111" + def VLSEG5E8_V = M"b100000-00000-----000-----0000111" + def VLSEG5E8FF_V = M"b100000-10000-----000-----0000111" + def VLSEG6E16_V = M"b101000-00000-----101-----0000111" + def VLSEG6E16FF_V = M"b101000-10000-----101-----0000111" + def VLSEG6E32_V = M"b101000-00000-----110-----0000111" + def VLSEG6E32FF_V = M"b101000-10000-----110-----0000111" + def VLSEG6E64_V = M"b101000-00000-----111-----0000111" + def VLSEG6E64FF_V = M"b101000-10000-----111-----0000111" + def VLSEG6E8_V = M"b101000-00000-----000-----0000111" + def VLSEG6E8FF_V = M"b101000-10000-----000-----0000111" + def VLSEG7E16_V = M"b110000-00000-----101-----0000111" + def VLSEG7E16FF_V = M"b110000-10000-----101-----0000111" + def VLSEG7E32_V = M"b110000-00000-----110-----0000111" + def VLSEG7E32FF_V = M"b110000-10000-----110-----0000111" + def VLSEG7E64_V = M"b110000-00000-----111-----0000111" + def VLSEG7E64FF_V = M"b110000-10000-----111-----0000111" + def VLSEG7E8_V = M"b110000-00000-----000-----0000111" + def VLSEG7E8FF_V = M"b110000-10000-----000-----0000111" + def VLSEG8E16_V = M"b111000-00000-----101-----0000111" + def VLSEG8E16FF_V = M"b111000-10000-----101-----0000111" + def VLSEG8E32_V = M"b111000-00000-----110-----0000111" + def VLSEG8E32FF_V = M"b111000-10000-----110-----0000111" + def VLSEG8E64_V = M"b111000-00000-----111-----0000111" + def VLSEG8E64FF_V = M"b111000-10000-----111-----0000111" + def VLSEG8E8_V = M"b111000-00000-----000-----0000111" + def VLSEG8E8FF_V = M"b111000-10000-----000-----0000111" + def VLSSEG2E16_V = M"b001010-----------101-----0000111" + def VLSSEG2E32_V = M"b001010-----------110-----0000111" + def VLSSEG2E64_V = M"b001010-----------111-----0000111" + def VLSSEG2E8_V = M"b001010-----------000-----0000111" + def VLSSEG3E16_V = M"b010010-----------101-----0000111" + def VLSSEG3E32_V = M"b010010-----------110-----0000111" + def VLSSEG3E64_V = M"b010010-----------111-----0000111" + def VLSSEG3E8_V = M"b010010-----------000-----0000111" + def VLSSEG4E16_V = M"b011010-----------101-----0000111" + def VLSSEG4E32_V = M"b011010-----------110-----0000111" + def VLSSEG4E64_V = M"b011010-----------111-----0000111" + def VLSSEG4E8_V = M"b011010-----------000-----0000111" + def VLSSEG5E16_V = M"b100010-----------101-----0000111" + def VLSSEG5E32_V = M"b100010-----------110-----0000111" + def VLSSEG5E64_V = M"b100010-----------111-----0000111" + def VLSSEG5E8_V = M"b100010-----------000-----0000111" + def VLSSEG6E16_V = M"b101010-----------101-----0000111" + def VLSSEG6E32_V = M"b101010-----------110-----0000111" + def VLSSEG6E64_V = M"b101010-----------111-----0000111" + def VLSSEG6E8_V = M"b101010-----------000-----0000111" + def VLSSEG7E16_V = M"b110010-----------101-----0000111" + def VLSSEG7E32_V = M"b110010-----------110-----0000111" + def VLSSEG7E64_V = M"b110010-----------111-----0000111" + def VLSSEG7E8_V = M"b110010-----------000-----0000111" + def VLSSEG8E16_V = M"b111010-----------101-----0000111" + def VLSSEG8E32_V = M"b111010-----------110-----0000111" + def VLSSEG8E64_V = M"b111010-----------111-----0000111" + def VLSSEG8E8_V = M"b111010-----------000-----0000111" + def VLUXEI16_V = M"b000001-----------101-----0000111" + def VLUXEI32_V = M"b000001-----------110-----0000111" + def VLUXEI64_V = M"b000001-----------111-----0000111" + def VLUXEI8_V = M"b000001-----------000-----0000111" + def VLUXSEG2EI16_V = M"b001001-----------101-----0000111" + def VLUXSEG2EI32_V = M"b001001-----------110-----0000111" + def VLUXSEG2EI64_V = M"b001001-----------111-----0000111" + def VLUXSEG2EI8_V = M"b001001-----------000-----0000111" + def VLUXSEG3EI16_V = M"b010001-----------101-----0000111" + def VLUXSEG3EI32_V = M"b010001-----------110-----0000111" + def VLUXSEG3EI64_V = M"b010001-----------111-----0000111" + def VLUXSEG3EI8_V = M"b010001-----------000-----0000111" + def VLUXSEG4EI16_V = M"b011001-----------101-----0000111" + def VLUXSEG4EI32_V = M"b011001-----------110-----0000111" + def VLUXSEG4EI64_V = M"b011001-----------111-----0000111" + def VLUXSEG4EI8_V = M"b011001-----------000-----0000111" + def VLUXSEG5EI16_V = M"b100001-----------101-----0000111" + def VLUXSEG5EI32_V = M"b100001-----------110-----0000111" + def VLUXSEG5EI64_V = M"b100001-----------111-----0000111" + def VLUXSEG5EI8_V = M"b100001-----------000-----0000111" + def VLUXSEG6EI16_V = M"b101001-----------101-----0000111" + def VLUXSEG6EI32_V = M"b101001-----------110-----0000111" + def VLUXSEG6EI64_V = M"b101001-----------111-----0000111" + def VLUXSEG6EI8_V = M"b101001-----------000-----0000111" + def VLUXSEG7EI16_V = M"b110001-----------101-----0000111" + def VLUXSEG7EI32_V = M"b110001-----------110-----0000111" + def VLUXSEG7EI64_V = M"b110001-----------111-----0000111" + def VLUXSEG7EI8_V = M"b110001-----------000-----0000111" + def VLUXSEG8EI16_V = M"b111001-----------101-----0000111" + def VLUXSEG8EI32_V = M"b111001-----------110-----0000111" + def VLUXSEG8EI64_V = M"b111001-----------111-----0000111" + def VLUXSEG8EI8_V = M"b111001-----------000-----0000111" + def VMACC_VV = M"b101101-----------010-----1010111" + def VMACC_VX = M"b101101-----------110-----1010111" + def VMADC_VI = M"b0100011----------011-----1010111" + def VMADC_VIM = M"b0100010----------011-----1010111" + def VMADC_VV = M"b0100011----------000-----1010111" + def VMADC_VVM = M"b0100010----------000-----1010111" + def VMADC_VX = M"b0100011----------100-----1010111" + def VMADC_VXM = M"b0100010----------100-----1010111" + def VMADD_VV = M"b101001-----------010-----1010111" + def VMADD_VX = M"b101001-----------110-----1010111" + def VMAND_MM = M"b0110011----------010-----1010111" + def VMANDN_MM = M"b0110001----------010-----1010111" + def VMAX_VV = M"b000111-----------000-----1010111" + def VMAX_VX = M"b000111-----------100-----1010111" + def VMAXU_VV = M"b000110-----------000-----1010111" + def VMAXU_VX = M"b000110-----------100-----1010111" + def VMERGE_VIM = M"b0101110----------011-----1010111" + def VMERGE_VVM = M"b0101110----------000-----1010111" + def VMERGE_VXM = M"b0101110----------100-----1010111" + def VMFEQ_VF = M"b011000-----------101-----1010111" + def VMFEQ_VV = M"b011000-----------001-----1010111" + def VMFGE_VF = M"b011111-----------101-----1010111" + def VMFGT_VF = M"b011101-----------101-----1010111" + def VMFLE_VF = M"b011001-----------101-----1010111" + def VMFLE_VV = M"b011001-----------001-----1010111" + def VMFLT_VF = M"b011011-----------101-----1010111" + def VMFLT_VV = M"b011011-----------001-----1010111" + def VMFNE_VF = M"b011100-----------101-----1010111" + def VMFNE_VV = M"b011100-----------001-----1010111" + def VMIN_VV = M"b000101-----------000-----1010111" + def VMIN_VX = M"b000101-----------100-----1010111" + def VMINU_VV = M"b000100-----------000-----1010111" + def VMINU_VX = M"b000100-----------100-----1010111" + def VMNAND_MM = M"b0111011----------010-----1010111" + def VMNOR_MM = M"b0111101----------010-----1010111" + def VMOR_MM = M"b0110101----------010-----1010111" + def VMORN_MM = M"b0111001----------010-----1010111" + def VMSBC_VV = M"b0100111----------000-----1010111" + def VMSBC_VVM = M"b0100110----------000-----1010111" + def VMSBC_VX = M"b0100111----------100-----1010111" + def VMSBC_VXM = M"b0100110----------100-----1010111" + def VMSBF_M = M"b010100------00001010-----1010111" + def VMSEQ_VI = M"b011000-----------011-----1010111" + def VMSEQ_VV = M"b011000-----------000-----1010111" + def VMSEQ_VX = M"b011000-----------100-----1010111" + def VMSGT_VI = M"b011111-----------011-----1010111" + def VMSGT_VX = M"b011111-----------100-----1010111" + def VMSGTU_VI = M"b011110-----------011-----1010111" + def VMSGTU_VX = M"b011110-----------100-----1010111" + def VMSIF_M = M"b010100------00011010-----1010111" + def VMSLE_VI = M"b011101-----------011-----1010111" + def VMSLE_VV = M"b011101-----------000-----1010111" + def VMSLE_VX = M"b011101-----------100-----1010111" + def VMSLEU_VI = M"b011100-----------011-----1010111" + def VMSLEU_VV = M"b011100-----------000-----1010111" + def VMSLEU_VX = M"b011100-----------100-----1010111" + def VMSLT_VV = M"b011011-----------000-----1010111" + def VMSLT_VX = M"b011011-----------100-----1010111" + def VMSLTU_VV = M"b011010-----------000-----1010111" + def VMSLTU_VX = M"b011010-----------100-----1010111" + def VMSNE_VI = M"b011001-----------011-----1010111" + def VMSNE_VV = M"b011001-----------000-----1010111" + def VMSNE_VX = M"b011001-----------100-----1010111" + def VMSOF_M = M"b010100------00010010-----1010111" + def VMUL_VV = M"b100101-----------010-----1010111" + def VMUL_VX = M"b100101-----------110-----1010111" + def VMULH_VV = M"b100111-----------010-----1010111" + def VMULH_VX = M"b100111-----------110-----1010111" + def VMULHSU_VV = M"b100110-----------010-----1010111" + def VMULHSU_VX = M"b100110-----------110-----1010111" + def VMULHU_VV = M"b100100-----------010-----1010111" + def VMULHU_VX = M"b100100-----------110-----1010111" + def VMV1R_V = M"b1001111-----00000011-----1010111" + def VMV2R_V = M"b1001111-----00001011-----1010111" + def VMV4R_V = M"b1001111-----00011011-----1010111" + def VMV8R_V = M"b1001111-----00111011-----1010111" + def VMV_S_X = M"b010000100000-----110-----1010111" + def VMV_V_I = M"b010111100000-----011-----1010111" + def VMV_V_V = M"b010111100000-----000-----1010111" + def VMV_V_X = M"b010111100000-----100-----1010111" + def VMV_X_S = M"b0100001-----00000010-----1010111" + def VMXNOR_MM = M"b0111111----------010-----1010111" + def VMXOR_MM = M"b0110111----------010-----1010111" + def VNCLIP_WI = M"b101111-----------011-----1010111" + def VNCLIP_WV = M"b101111-----------000-----1010111" + def VNCLIP_WX = M"b101111-----------100-----1010111" + def VNCLIPU_WI = M"b101110-----------011-----1010111" + def VNCLIPU_WV = M"b101110-----------000-----1010111" + def VNCLIPU_WX = M"b101110-----------100-----1010111" + def VNMSAC_VV = M"b101111-----------010-----1010111" + def VNMSAC_VX = M"b101111-----------110-----1010111" + def VNMSUB_VV = M"b101011-----------010-----1010111" + def VNMSUB_VX = M"b101011-----------110-----1010111" + def VNSRA_WI = M"b101101-----------011-----1010111" + def VNSRA_WV = M"b101101-----------000-----1010111" + def VNSRA_WX = M"b101101-----------100-----1010111" + def VNSRL_WI = M"b101100-----------011-----1010111" + def VNSRL_WV = M"b101100-----------000-----1010111" + def VNSRL_WX = M"b101100-----------100-----1010111" + def VOR_VI = M"b001010-----------011-----1010111" + def VOR_VV = M"b001010-----------000-----1010111" + def VOR_VX = M"b001010-----------100-----1010111" + def VREDAND_VS = M"b000001-----------010-----1010111" + def VREDMAX_VS = M"b000111-----------010-----1010111" + def VREDMAXU_VS = M"b000110-----------010-----1010111" + def VREDMIN_VS = M"b000101-----------010-----1010111" + def VREDMINU_VS = M"b000100-----------010-----1010111" + def VREDOR_VS = M"b000010-----------010-----1010111" + def VREDSUM_VS = M"b000000-----------010-----1010111" + def VREDXOR_VS = M"b000011-----------010-----1010111" + def VREM_VV = M"b100011-----------010-----1010111" + def VREM_VX = M"b100011-----------110-----1010111" + def VREMU_VV = M"b100010-----------010-----1010111" + def VREMU_VX = M"b100010-----------110-----1010111" + def VREV8_V = M"b010010------01001010-----1010111" + def VRGATHER_VI = M"b001100-----------011-----1010111" + def VRGATHER_VV = M"b001100-----------000-----1010111" + def VRGATHER_VX = M"b001100-----------100-----1010111" + def VRGATHEREI16_VV = M"b001110-----------000-----1010111" + def VROL_VV = M"b010101-----------000-----1010111" + def VROL_VX = M"b010101-----------100-----1010111" + def VROR_VI = M"b01010------------011-----1010111" + def VROR_VV = M"b010100-----------000-----1010111" + def VROR_VX = M"b010100-----------100-----1010111" + def VRSUB_VI = M"b000011-----------011-----1010111" + def VRSUB_VX = M"b000011-----------100-----1010111" + def VS1R_V = M"b000000101000-----000-----0100111" + def VS2R_V = M"b001000101000-----000-----0100111" + def VS4R_V = M"b011000101000-----000-----0100111" + def VS8R_V = M"b111000101000-----000-----0100111" + def VSADD_VI = M"b100001-----------011-----1010111" + def VSADD_VV = M"b100001-----------000-----1010111" + def VSADD_VX = M"b100001-----------100-----1010111" + def VSADDU_VI = M"b100000-----------011-----1010111" + def VSADDU_VV = M"b100000-----------000-----1010111" + def VSADDU_VX = M"b100000-----------100-----1010111" + def VSBC_VVM = M"b0100100----------000-----1010111" + def VSBC_VXM = M"b0100100----------100-----1010111" + def VSE16_V = M"b000000-00000-----101-----0100111" + def VSE32_V = M"b000000-00000-----110-----0100111" + def VSE64_V = M"b000000-00000-----111-----0100111" + def VSE8_V = M"b000000-00000-----000-----0100111" + def VSETIVLI = M"b11---------------111-----1010111" + def VSETVL = M"b1000000----------111-----1010111" + def VSETVLI = M"b0----------------111-----1010111" + def VSEXT_VF2 = M"b010010------00111010-----1010111" + def VSEXT_VF4 = M"b010010------00101010-----1010111" + def VSEXT_VF8 = M"b010010------00011010-----1010111" + def VSHA2CH_VV = M"b1011101----------010-----1110111" + def VSHA2CL_VV = M"b1011111----------010-----1110111" + def VSHA2MS_VV = M"b1011011----------010-----1110111" + def VSLIDE1DOWN_VX = M"b001111-----------110-----1010111" + def VSLIDE1UP_VX = M"b001110-----------110-----1010111" + def VSLIDEDOWN_VI = M"b001111-----------011-----1010111" + def VSLIDEDOWN_VX = M"b001111-----------100-----1010111" + def VSLIDEUP_VI = M"b001110-----------011-----1010111" + def VSLIDEUP_VX = M"b001110-----------100-----1010111" + def VSLL_VI = M"b100101-----------011-----1010111" + def VSLL_VV = M"b100101-----------000-----1010111" + def VSLL_VX = M"b100101-----------100-----1010111" + def VSM3C_VI = M"b1010111----------010-----1110111" + def VSM3ME_VV = M"b1000001----------010-----1110111" + def VSM4K_VI = M"b1000011----------010-----1110111" + def VSM4R_VS = M"b1010011-----10000010-----1110111" + def VSM4R_VV = M"b1010001-----10000010-----1110111" + def VSM_V = M"b000000101011-----000-----0100111" + def VSMUL_VV = M"b100111-----------000-----1010111" + def VSMUL_VX = M"b100111-----------100-----1010111" + def VSOXEI16_V = M"b000011-----------101-----0100111" + def VSOXEI32_V = M"b000011-----------110-----0100111" + def VSOXEI64_V = M"b000011-----------111-----0100111" + def VSOXEI8_V = M"b000011-----------000-----0100111" + def VSOXSEG2EI16_V = M"b001011-----------101-----0100111" + def VSOXSEG2EI32_V = M"b001011-----------110-----0100111" + def VSOXSEG2EI64_V = M"b001011-----------111-----0100111" + def VSOXSEG2EI8_V = M"b001011-----------000-----0100111" + def VSOXSEG3EI16_V = M"b010011-----------101-----0100111" + def VSOXSEG3EI32_V = M"b010011-----------110-----0100111" + def VSOXSEG3EI64_V = M"b010011-----------111-----0100111" + def VSOXSEG3EI8_V = M"b010011-----------000-----0100111" + def VSOXSEG4EI16_V = M"b011011-----------101-----0100111" + def VSOXSEG4EI32_V = M"b011011-----------110-----0100111" + def VSOXSEG4EI64_V = M"b011011-----------111-----0100111" + def VSOXSEG4EI8_V = M"b011011-----------000-----0100111" + def VSOXSEG5EI16_V = M"b100011-----------101-----0100111" + def VSOXSEG5EI32_V = M"b100011-----------110-----0100111" + def VSOXSEG5EI64_V = M"b100011-----------111-----0100111" + def VSOXSEG5EI8_V = M"b100011-----------000-----0100111" + def VSOXSEG6EI16_V = M"b101011-----------101-----0100111" + def VSOXSEG6EI32_V = M"b101011-----------110-----0100111" + def VSOXSEG6EI64_V = M"b101011-----------111-----0100111" + def VSOXSEG6EI8_V = M"b101011-----------000-----0100111" + def VSOXSEG7EI16_V = M"b110011-----------101-----0100111" + def VSOXSEG7EI32_V = M"b110011-----------110-----0100111" + def VSOXSEG7EI64_V = M"b110011-----------111-----0100111" + def VSOXSEG7EI8_V = M"b110011-----------000-----0100111" + def VSOXSEG8EI16_V = M"b111011-----------101-----0100111" + def VSOXSEG8EI32_V = M"b111011-----------110-----0100111" + def VSOXSEG8EI64_V = M"b111011-----------111-----0100111" + def VSOXSEG8EI8_V = M"b111011-----------000-----0100111" + def VSRA_VI = M"b101001-----------011-----1010111" + def VSRA_VV = M"b101001-----------000-----1010111" + def VSRA_VX = M"b101001-----------100-----1010111" + def VSRL_VI = M"b101000-----------011-----1010111" + def VSRL_VV = M"b101000-----------000-----1010111" + def VSRL_VX = M"b101000-----------100-----1010111" + def VSSE16_V = M"b000010-----------101-----0100111" + def VSSE32_V = M"b000010-----------110-----0100111" + def VSSE64_V = M"b000010-----------111-----0100111" + def VSSE8_V = M"b000010-----------000-----0100111" + def VSSEG2E16_V = M"b001000-00000-----101-----0100111" + def VSSEG2E32_V = M"b001000-00000-----110-----0100111" + def VSSEG2E64_V = M"b001000-00000-----111-----0100111" + def VSSEG2E8_V = M"b001000-00000-----000-----0100111" + def VSSEG3E16_V = M"b010000-00000-----101-----0100111" + def VSSEG3E32_V = M"b010000-00000-----110-----0100111" + def VSSEG3E64_V = M"b010000-00000-----111-----0100111" + def VSSEG3E8_V = M"b010000-00000-----000-----0100111" + def VSSEG4E16_V = M"b011000-00000-----101-----0100111" + def VSSEG4E32_V = M"b011000-00000-----110-----0100111" + def VSSEG4E64_V = M"b011000-00000-----111-----0100111" + def VSSEG4E8_V = M"b011000-00000-----000-----0100111" + def VSSEG5E16_V = M"b100000-00000-----101-----0100111" + def VSSEG5E32_V = M"b100000-00000-----110-----0100111" + def VSSEG5E64_V = M"b100000-00000-----111-----0100111" + def VSSEG5E8_V = M"b100000-00000-----000-----0100111" + def VSSEG6E16_V = M"b101000-00000-----101-----0100111" + def VSSEG6E32_V = M"b101000-00000-----110-----0100111" + def VSSEG6E64_V = M"b101000-00000-----111-----0100111" + def VSSEG6E8_V = M"b101000-00000-----000-----0100111" + def VSSEG7E16_V = M"b110000-00000-----101-----0100111" + def VSSEG7E32_V = M"b110000-00000-----110-----0100111" + def VSSEG7E64_V = M"b110000-00000-----111-----0100111" + def VSSEG7E8_V = M"b110000-00000-----000-----0100111" + def VSSEG8E16_V = M"b111000-00000-----101-----0100111" + def VSSEG8E32_V = M"b111000-00000-----110-----0100111" + def VSSEG8E64_V = M"b111000-00000-----111-----0100111" + def VSSEG8E8_V = M"b111000-00000-----000-----0100111" + def VSSRA_VI = M"b101011-----------011-----1010111" + def VSSRA_VV = M"b101011-----------000-----1010111" + def VSSRA_VX = M"b101011-----------100-----1010111" + def VSSRL_VI = M"b101010-----------011-----1010111" + def VSSRL_VV = M"b101010-----------000-----1010111" + def VSSRL_VX = M"b101010-----------100-----1010111" + def VSSSEG2E16_V = M"b001010-----------101-----0100111" + def VSSSEG2E32_V = M"b001010-----------110-----0100111" + def VSSSEG2E64_V = M"b001010-----------111-----0100111" + def VSSSEG2E8_V = M"b001010-----------000-----0100111" + def VSSSEG3E16_V = M"b010010-----------101-----0100111" + def VSSSEG3E32_V = M"b010010-----------110-----0100111" + def VSSSEG3E64_V = M"b010010-----------111-----0100111" + def VSSSEG3E8_V = M"b010010-----------000-----0100111" + def VSSSEG4E16_V = M"b011010-----------101-----0100111" + def VSSSEG4E32_V = M"b011010-----------110-----0100111" + def VSSSEG4E64_V = M"b011010-----------111-----0100111" + def VSSSEG4E8_V = M"b011010-----------000-----0100111" + def VSSSEG5E16_V = M"b100010-----------101-----0100111" + def VSSSEG5E32_V = M"b100010-----------110-----0100111" + def VSSSEG5E64_V = M"b100010-----------111-----0100111" + def VSSSEG5E8_V = M"b100010-----------000-----0100111" + def VSSSEG6E16_V = M"b101010-----------101-----0100111" + def VSSSEG6E32_V = M"b101010-----------110-----0100111" + def VSSSEG6E64_V = M"b101010-----------111-----0100111" + def VSSSEG6E8_V = M"b101010-----------000-----0100111" + def VSSSEG7E16_V = M"b110010-----------101-----0100111" + def VSSSEG7E32_V = M"b110010-----------110-----0100111" + def VSSSEG7E64_V = M"b110010-----------111-----0100111" + def VSSSEG7E8_V = M"b110010-----------000-----0100111" + def VSSSEG8E16_V = M"b111010-----------101-----0100111" + def VSSSEG8E32_V = M"b111010-----------110-----0100111" + def VSSSEG8E64_V = M"b111010-----------111-----0100111" + def VSSSEG8E8_V = M"b111010-----------000-----0100111" + def VSSUB_VV = M"b100011-----------000-----1010111" + def VSSUB_VX = M"b100011-----------100-----1010111" + def VSSUBU_VV = M"b100010-----------000-----1010111" + def VSSUBU_VX = M"b100010-----------100-----1010111" + def VSUB_VV = M"b000010-----------000-----1010111" + def VSUB_VX = M"b000010-----------100-----1010111" + def VSUXEI16_V = M"b000001-----------101-----0100111" + def VSUXEI32_V = M"b000001-----------110-----0100111" + def VSUXEI64_V = M"b000001-----------111-----0100111" + def VSUXEI8_V = M"b000001-----------000-----0100111" + def VSUXSEG2EI16_V = M"b001001-----------101-----0100111" + def VSUXSEG2EI32_V = M"b001001-----------110-----0100111" + def VSUXSEG2EI64_V = M"b001001-----------111-----0100111" + def VSUXSEG2EI8_V = M"b001001-----------000-----0100111" + def VSUXSEG3EI16_V = M"b010001-----------101-----0100111" + def VSUXSEG3EI32_V = M"b010001-----------110-----0100111" + def VSUXSEG3EI64_V = M"b010001-----------111-----0100111" + def VSUXSEG3EI8_V = M"b010001-----------000-----0100111" + def VSUXSEG4EI16_V = M"b011001-----------101-----0100111" + def VSUXSEG4EI32_V = M"b011001-----------110-----0100111" + def VSUXSEG4EI64_V = M"b011001-----------111-----0100111" + def VSUXSEG4EI8_V = M"b011001-----------000-----0100111" + def VSUXSEG5EI16_V = M"b100001-----------101-----0100111" + def VSUXSEG5EI32_V = M"b100001-----------110-----0100111" + def VSUXSEG5EI64_V = M"b100001-----------111-----0100111" + def VSUXSEG5EI8_V = M"b100001-----------000-----0100111" + def VSUXSEG6EI16_V = M"b101001-----------101-----0100111" + def VSUXSEG6EI32_V = M"b101001-----------110-----0100111" + def VSUXSEG6EI64_V = M"b101001-----------111-----0100111" + def VSUXSEG6EI8_V = M"b101001-----------000-----0100111" + def VSUXSEG7EI16_V = M"b110001-----------101-----0100111" + def VSUXSEG7EI32_V = M"b110001-----------110-----0100111" + def VSUXSEG7EI64_V = M"b110001-----------111-----0100111" + def VSUXSEG7EI8_V = M"b110001-----------000-----0100111" + def VSUXSEG8EI16_V = M"b111001-----------101-----0100111" + def VSUXSEG8EI32_V = M"b111001-----------110-----0100111" + def VSUXSEG8EI64_V = M"b111001-----------111-----0100111" + def VSUXSEG8EI8_V = M"b111001-----------000-----0100111" + def VWADD_VV = M"b110001-----------010-----1010111" + def VWADD_VX = M"b110001-----------110-----1010111" + def VWADD_WV = M"b110101-----------010-----1010111" + def VWADD_WX = M"b110101-----------110-----1010111" + def VWADDU_VV = M"b110000-----------010-----1010111" + def VWADDU_VX = M"b110000-----------110-----1010111" + def VWADDU_WV = M"b110100-----------010-----1010111" + def VWADDU_WX = M"b110100-----------110-----1010111" + def VWMACC_VV = M"b111101-----------010-----1010111" + def VWMACC_VX = M"b111101-----------110-----1010111" + def VWMACCSU_VV = M"b111111-----------010-----1010111" + def VWMACCSU_VX = M"b111111-----------110-----1010111" + def VWMACCU_VV = M"b111100-----------010-----1010111" + def VWMACCU_VX = M"b111100-----------110-----1010111" + def VWMACCUS_VX = M"b111110-----------110-----1010111" + def VWMUL_VV = M"b111011-----------010-----1010111" + def VWMUL_VX = M"b111011-----------110-----1010111" + def VWMULSU_VV = M"b111010-----------010-----1010111" + def VWMULSU_VX = M"b111010-----------110-----1010111" + def VWMULU_VV = M"b111000-----------010-----1010111" + def VWMULU_VX = M"b111000-----------110-----1010111" + def VWREDSUM_VS = M"b110001-----------000-----1010111" + def VWREDSUMU_VS = M"b110000-----------000-----1010111" + def VWSLL_VI = M"b110101-----------011-----1010111" + def VWSLL_VV = M"b110101-----------000-----1010111" + def VWSLL_VX = M"b110101-----------100-----1010111" + def VWSUB_VV = M"b110011-----------010-----1010111" + def VWSUB_VX = M"b110011-----------110-----1010111" + def VWSUB_WV = M"b110111-----------010-----1010111" + def VWSUB_WX = M"b110111-----------110-----1010111" + def VWSUBU_VV = M"b110010-----------010-----1010111" + def VWSUBU_VX = M"b110010-----------110-----1010111" + def VWSUBU_WV = M"b110110-----------010-----1010111" + def VWSUBU_WX = M"b110110-----------110-----1010111" + def VXOR_VI = M"b001011-----------011-----1010111" + def VXOR_VV = M"b001011-----------000-----1010111" + def VXOR_VX = M"b001011-----------100-----1010111" + def VZEXT_VF2 = M"b010010------00110010-----1010111" + def VZEXT_VF4 = M"b010010------00100010-----1010111" + def VZEXT_VF8 = M"b010010------00010010-----1010111" + def WFI = M"b00010000010100000000000001110011" + def WRS_NTO = M"b00000000110100000000000001110011" + def WRS_STO = M"b00000001110100000000000001110011" + def XNOR = M"b0100000----------100-----0110011" + def XOR = M"b0000000----------100-----0110011" + def XORI = M"b-----------------100-----0010011" + def XPERM4 = M"b0010100----------010-----0110011" + def XPERM8 = M"b0010100----------100-----0110011" + def ZEXT_H = M"b000010000000-----100-----0111011" + def ZIP = M"b000010001111-----001-----0010011" + +} +object Causes { + val misaligned_fetch = 0x0 + val fetch_access = 0x1 + val illegal_instruction = 0x2 + val breakpoint = 0x3 + val misaligned_load = 0x4 + val load_access = 0x5 + val misaligned_store = 0x6 + val store_access = 0x7 + val user_ecall = 0x8 + val supervisor_ecall = 0x9 + val virtual_supervisor_ecall = 0xa + val machine_ecall = 0xb + val fetch_page_fault = 0xc + val load_page_fault = 0xd + val store_page_fault = 0xf + val double_trap = 0x10 + val software_check_fault = 0x12 + val hardware_error_fault = 0x13 + val fetch_guest_page_fault = 0x14 + val load_guest_page_fault = 0x15 + val virtual_instruction = 0x16 + val store_guest_page_fault = 0x17 + val all = { + val res = collection.mutable.ArrayBuffer[Int]() + res += misaligned_fetch + res += fetch_access + res += illegal_instruction + res += breakpoint + res += misaligned_load + res += load_access + res += misaligned_store + res += store_access + res += user_ecall + res += supervisor_ecall + res += virtual_supervisor_ecall + res += machine_ecall + res += fetch_page_fault + res += load_page_fault + res += store_page_fault + res += double_trap + res += software_check_fault + res += hardware_error_fault + res += fetch_guest_page_fault + res += load_guest_page_fault + res += virtual_instruction + res += store_guest_page_fault + res.toArray + } +} +object CSRs { + val fflags = 0x1 + val frm = 0x2 + val fcsr = 0x3 + val vstart = 0x8 + val vxsat = 0x9 + val vxrm = 0xa + val vcsr = 0xf + val ssp = 0x11 + val seed = 0x15 + val jvt = 0x17 + val cycle = 0xc00 + val time = 0xc01 + val instret = 0xc02 + val hpmcounter3 = 0xc03 + val hpmcounter4 = 0xc04 + val hpmcounter5 = 0xc05 + val hpmcounter6 = 0xc06 + val hpmcounter7 = 0xc07 + val hpmcounter8 = 0xc08 + val hpmcounter9 = 0xc09 + val hpmcounter10 = 0xc0a + val hpmcounter11 = 0xc0b + val hpmcounter12 = 0xc0c + val hpmcounter13 = 0xc0d + val hpmcounter14 = 0xc0e + val hpmcounter15 = 0xc0f + val hpmcounter16 = 0xc10 + val hpmcounter17 = 0xc11 + val hpmcounter18 = 0xc12 + val hpmcounter19 = 0xc13 + val hpmcounter20 = 0xc14 + val hpmcounter21 = 0xc15 + val hpmcounter22 = 0xc16 + val hpmcounter23 = 0xc17 + val hpmcounter24 = 0xc18 + val hpmcounter25 = 0xc19 + val hpmcounter26 = 0xc1a + val hpmcounter27 = 0xc1b + val hpmcounter28 = 0xc1c + val hpmcounter29 = 0xc1d + val hpmcounter30 = 0xc1e + val hpmcounter31 = 0xc1f + val vl = 0xc20 + val vtype = 0xc21 + val vlenb = 0xc22 + val sstatus = 0x100 + val sedeleg = 0x102 + val sideleg = 0x103 + val sie = 0x104 + val stvec = 0x105 + val scounteren = 0x106 + val senvcfg = 0x10a + val sstateen0 = 0x10c + val sstateen1 = 0x10d + val sstateen2 = 0x10e + val sstateen3 = 0x10f + val scountinhibit = 0x120 + val sscratch = 0x140 + val sepc = 0x141 + val scause = 0x142 + val stval = 0x143 + val sip = 0x144 + val stimecmp = 0x14d + val sctrctl = 0x14e + val sctrstatus = 0x14f + val siselect = 0x150 + val sireg = 0x151 + val sireg2 = 0x152 + val sireg3 = 0x153 + val sireg4 = 0x155 + val sireg5 = 0x156 + val sireg6 = 0x157 + val stopei = 0x15c + val sctrdepth = 0x15f + val satp = 0x180 + val srmcfg = 0x181 + val scontext = 0x5a8 + val vsstatus = 0x200 + val vsie = 0x204 + val vstvec = 0x205 + val vsscratch = 0x240 + val vsepc = 0x241 + val vscause = 0x242 + val vstval = 0x243 + val vsip = 0x244 + val vstimecmp = 0x24d + val vsctrctl = 0x24e + val vsiselect = 0x250 + val vsireg = 0x251 + val vsireg2 = 0x252 + val vsireg3 = 0x253 + val vsireg4 = 0x255 + val vsireg5 = 0x256 + val vsireg6 = 0x257 + val vstopei = 0x25c + val vsatp = 0x280 + val hstatus = 0x600 + val hedeleg = 0x602 + val hideleg = 0x603 + val hie = 0x604 + val htimedelta = 0x605 + val hcounteren = 0x606 + val hgeie = 0x607 + val hvien = 0x608 + val hvictl = 0x609 + val henvcfg = 0x60a + val hstateen0 = 0x60c + val hstateen1 = 0x60d + val hstateen2 = 0x60e + val hstateen3 = 0x60f + val htval = 0x643 + val hip = 0x644 + val hvip = 0x645 + val hviprio1 = 0x646 + val hviprio2 = 0x647 + val htinst = 0x64a + val hgatp = 0x680 + val hcontext = 0x6a8 + val hgeip = 0xe12 + val vstopi = 0xeb0 + val scountovf = 0xda0 + val stopi = 0xdb0 + val utvt = 0x7 + val unxti = 0x45 + val uintstatus = 0x46 + val uscratchcsw = 0x48 + val uscratchcswl = 0x49 + val stvt = 0x107 + val snxti = 0x145 + val sintstatus = 0x146 + val sscratchcsw = 0x148 + val sscratchcswl = 0x149 + val mtvt = 0x307 + val mnxti = 0x345 + val mintstatus = 0x346 + val mscratchcsw = 0x348 + val mscratchcswl = 0x349 + val mstatus = 0x300 + val misa = 0x301 + val medeleg = 0x302 + val mideleg = 0x303 + val mie = 0x304 + val mtvec = 0x305 + val mcounteren = 0x306 + val mvien = 0x308 + val mvip = 0x309 + val menvcfg = 0x30a + val mstateen0 = 0x30c + val mstateen1 = 0x30d + val mstateen2 = 0x30e + val mstateen3 = 0x30f + val mcountinhibit = 0x320 + val mscratch = 0x340 + val mepc = 0x341 + val mcause = 0x342 + val mtval = 0x343 + val mip = 0x344 + val mtinst = 0x34a + val mtval2 = 0x34b + val mctrctl = 0x34e + val miselect = 0x350 + val mireg = 0x351 + val mireg2 = 0x352 + val mireg3 = 0x353 + val mireg4 = 0x355 + val mireg5 = 0x356 + val mireg6 = 0x357 + val mtopei = 0x35c + val pmpcfg0 = 0x3a0 + val pmpcfg1 = 0x3a1 + val pmpcfg2 = 0x3a2 + val pmpcfg3 = 0x3a3 + val pmpcfg4 = 0x3a4 + val pmpcfg5 = 0x3a5 + val pmpcfg6 = 0x3a6 + val pmpcfg7 = 0x3a7 + val pmpcfg8 = 0x3a8 + val pmpcfg9 = 0x3a9 + val pmpcfg10 = 0x3aa + val pmpcfg11 = 0x3ab + val pmpcfg12 = 0x3ac + val pmpcfg13 = 0x3ad + val pmpcfg14 = 0x3ae + val pmpcfg15 = 0x3af + val pmpaddr0 = 0x3b0 + val pmpaddr1 = 0x3b1 + val pmpaddr2 = 0x3b2 + val pmpaddr3 = 0x3b3 + val pmpaddr4 = 0x3b4 + val pmpaddr5 = 0x3b5 + val pmpaddr6 = 0x3b6 + val pmpaddr7 = 0x3b7 + val pmpaddr8 = 0x3b8 + val pmpaddr9 = 0x3b9 + val pmpaddr10 = 0x3ba + val pmpaddr11 = 0x3bb + val pmpaddr12 = 0x3bc + val pmpaddr13 = 0x3bd + val pmpaddr14 = 0x3be + val pmpaddr15 = 0x3bf + val pmpaddr16 = 0x3c0 + val pmpaddr17 = 0x3c1 + val pmpaddr18 = 0x3c2 + val pmpaddr19 = 0x3c3 + val pmpaddr20 = 0x3c4 + val pmpaddr21 = 0x3c5 + val pmpaddr22 = 0x3c6 + val pmpaddr23 = 0x3c7 + val pmpaddr24 = 0x3c8 + val pmpaddr25 = 0x3c9 + val pmpaddr26 = 0x3ca + val pmpaddr27 = 0x3cb + val pmpaddr28 = 0x3cc + val pmpaddr29 = 0x3cd + val pmpaddr30 = 0x3ce + val pmpaddr31 = 0x3cf + val pmpaddr32 = 0x3d0 + val pmpaddr33 = 0x3d1 + val pmpaddr34 = 0x3d2 + val pmpaddr35 = 0x3d3 + val pmpaddr36 = 0x3d4 + val pmpaddr37 = 0x3d5 + val pmpaddr38 = 0x3d6 + val pmpaddr39 = 0x3d7 + val pmpaddr40 = 0x3d8 + val pmpaddr41 = 0x3d9 + val pmpaddr42 = 0x3da + val pmpaddr43 = 0x3db + val pmpaddr44 = 0x3dc + val pmpaddr45 = 0x3dd + val pmpaddr46 = 0x3de + val pmpaddr47 = 0x3df + val pmpaddr48 = 0x3e0 + val pmpaddr49 = 0x3e1 + val pmpaddr50 = 0x3e2 + val pmpaddr51 = 0x3e3 + val pmpaddr52 = 0x3e4 + val pmpaddr53 = 0x3e5 + val pmpaddr54 = 0x3e6 + val pmpaddr55 = 0x3e7 + val pmpaddr56 = 0x3e8 + val pmpaddr57 = 0x3e9 + val pmpaddr58 = 0x3ea + val pmpaddr59 = 0x3eb + val pmpaddr60 = 0x3ec + val pmpaddr61 = 0x3ed + val pmpaddr62 = 0x3ee + val pmpaddr63 = 0x3ef + val mseccfg = 0x747 + val tselect = 0x7a0 + val tdata1 = 0x7a1 + val tdata2 = 0x7a2 + val tdata3 = 0x7a3 + val tinfo = 0x7a4 + val tcontrol = 0x7a5 + val mcontext = 0x7a8 + val mscontext = 0x7aa + val dcsr = 0x7b0 + val dpc = 0x7b1 + val dscratch0 = 0x7b2 + val dscratch1 = 0x7b3 + val mcycle = 0xb00 + val minstret = 0xb02 + val mhpmcounter3 = 0xb03 + val mhpmcounter4 = 0xb04 + val mhpmcounter5 = 0xb05 + val mhpmcounter6 = 0xb06 + val mhpmcounter7 = 0xb07 + val mhpmcounter8 = 0xb08 + val mhpmcounter9 = 0xb09 + val mhpmcounter10 = 0xb0a + val mhpmcounter11 = 0xb0b + val mhpmcounter12 = 0xb0c + val mhpmcounter13 = 0xb0d + val mhpmcounter14 = 0xb0e + val mhpmcounter15 = 0xb0f + val mhpmcounter16 = 0xb10 + val mhpmcounter17 = 0xb11 + val mhpmcounter18 = 0xb12 + val mhpmcounter19 = 0xb13 + val mhpmcounter20 = 0xb14 + val mhpmcounter21 = 0xb15 + val mhpmcounter22 = 0xb16 + val mhpmcounter23 = 0xb17 + val mhpmcounter24 = 0xb18 + val mhpmcounter25 = 0xb19 + val mhpmcounter26 = 0xb1a + val mhpmcounter27 = 0xb1b + val mhpmcounter28 = 0xb1c + val mhpmcounter29 = 0xb1d + val mhpmcounter30 = 0xb1e + val mhpmcounter31 = 0xb1f + val mcyclecfg = 0x321 + val minstretcfg = 0x322 + val mhpmevent3 = 0x323 + val mhpmevent4 = 0x324 + val mhpmevent5 = 0x325 + val mhpmevent6 = 0x326 + val mhpmevent7 = 0x327 + val mhpmevent8 = 0x328 + val mhpmevent9 = 0x329 + val mhpmevent10 = 0x32a + val mhpmevent11 = 0x32b + val mhpmevent12 = 0x32c + val mhpmevent13 = 0x32d + val mhpmevent14 = 0x32e + val mhpmevent15 = 0x32f + val mhpmevent16 = 0x330 + val mhpmevent17 = 0x331 + val mhpmevent18 = 0x332 + val mhpmevent19 = 0x333 + val mhpmevent20 = 0x334 + val mhpmevent21 = 0x335 + val mhpmevent22 = 0x336 + val mhpmevent23 = 0x337 + val mhpmevent24 = 0x338 + val mhpmevent25 = 0x339 + val mhpmevent26 = 0x33a + val mhpmevent27 = 0x33b + val mhpmevent28 = 0x33c + val mhpmevent29 = 0x33d + val mhpmevent30 = 0x33e + val mhpmevent31 = 0x33f + val mvendorid = 0xf11 + val marchid = 0xf12 + val mimpid = 0xf13 + val mhartid = 0xf14 + val mconfigptr = 0xf15 + val mtopi = 0xfb0 + val sieh = 0x114 + val siph = 0x154 + val stimecmph = 0x15d + val vsieh = 0x214 + val vsiph = 0x254 + val vstimecmph = 0x25d + val hedelegh = 0x612 + val htimedeltah = 0x615 + val hidelegh = 0x613 + val hvienh = 0x618 + val henvcfgh = 0x61a + val hviph = 0x655 + val hviprio1h = 0x656 + val hviprio2h = 0x657 + val hstateen0h = 0x61c + val hstateen1h = 0x61d + val hstateen2h = 0x61e + val hstateen3h = 0x61f + val cycleh = 0xc80 + val timeh = 0xc81 + val instreth = 0xc82 + val hpmcounter3h = 0xc83 + val hpmcounter4h = 0xc84 + val hpmcounter5h = 0xc85 + val hpmcounter6h = 0xc86 + val hpmcounter7h = 0xc87 + val hpmcounter8h = 0xc88 + val hpmcounter9h = 0xc89 + val hpmcounter10h = 0xc8a + val hpmcounter11h = 0xc8b + val hpmcounter12h = 0xc8c + val hpmcounter13h = 0xc8d + val hpmcounter14h = 0xc8e + val hpmcounter15h = 0xc8f + val hpmcounter16h = 0xc90 + val hpmcounter17h = 0xc91 + val hpmcounter18h = 0xc92 + val hpmcounter19h = 0xc93 + val hpmcounter20h = 0xc94 + val hpmcounter21h = 0xc95 + val hpmcounter22h = 0xc96 + val hpmcounter23h = 0xc97 + val hpmcounter24h = 0xc98 + val hpmcounter25h = 0xc99 + val hpmcounter26h = 0xc9a + val hpmcounter27h = 0xc9b + val hpmcounter28h = 0xc9c + val hpmcounter29h = 0xc9d + val hpmcounter30h = 0xc9e + val hpmcounter31h = 0xc9f + val mstatush = 0x310 + val midelegh = 0x313 + val mieh = 0x314 + val mvienh = 0x318 + val mviph = 0x319 + val menvcfgh = 0x31a + val mstateen0h = 0x31c + val mstateen1h = 0x31d + val mstateen2h = 0x31e + val mstateen3h = 0x31f + val miph = 0x354 + val mcyclecfgh = 0x721 + val minstretcfgh = 0x722 + val mhpmevent3h = 0x723 + val mhpmevent4h = 0x724 + val mhpmevent5h = 0x725 + val mhpmevent6h = 0x726 + val mhpmevent7h = 0x727 + val mhpmevent8h = 0x728 + val mhpmevent9h = 0x729 + val mhpmevent10h = 0x72a + val mhpmevent11h = 0x72b + val mhpmevent12h = 0x72c + val mhpmevent13h = 0x72d + val mhpmevent14h = 0x72e + val mhpmevent15h = 0x72f + val mhpmevent16h = 0x730 + val mhpmevent17h = 0x731 + val mhpmevent18h = 0x732 + val mhpmevent19h = 0x733 + val mhpmevent20h = 0x734 + val mhpmevent21h = 0x735 + val mhpmevent22h = 0x736 + val mhpmevent23h = 0x737 + val mhpmevent24h = 0x738 + val mhpmevent25h = 0x739 + val mhpmevent26h = 0x73a + val mhpmevent27h = 0x73b + val mhpmevent28h = 0x73c + val mhpmevent29h = 0x73d + val mhpmevent30h = 0x73e + val mhpmevent31h = 0x73f + val mnscratch = 0x740 + val mnepc = 0x741 + val mncause = 0x742 + val mnstatus = 0x744 + val mseccfgh = 0x757 + val mcycleh = 0xb80 + val minstreth = 0xb82 + val mhpmcounter3h = 0xb83 + val mhpmcounter4h = 0xb84 + val mhpmcounter5h = 0xb85 + val mhpmcounter6h = 0xb86 + val mhpmcounter7h = 0xb87 + val mhpmcounter8h = 0xb88 + val mhpmcounter9h = 0xb89 + val mhpmcounter10h = 0xb8a + val mhpmcounter11h = 0xb8b + val mhpmcounter12h = 0xb8c + val mhpmcounter13h = 0xb8d + val mhpmcounter14h = 0xb8e + val mhpmcounter15h = 0xb8f + val mhpmcounter16h = 0xb90 + val mhpmcounter17h = 0xb91 + val mhpmcounter18h = 0xb92 + val mhpmcounter19h = 0xb93 + val mhpmcounter20h = 0xb94 + val mhpmcounter21h = 0xb95 + val mhpmcounter22h = 0xb96 + val mhpmcounter23h = 0xb97 + val mhpmcounter24h = 0xb98 + val mhpmcounter25h = 0xb99 + val mhpmcounter26h = 0xb9a + val mhpmcounter27h = 0xb9b + val mhpmcounter28h = 0xb9c + val mhpmcounter29h = 0xb9d + val mhpmcounter30h = 0xb9e + val mhpmcounter31h = 0xb9f + val all = { + val res = collection.mutable.ArrayBuffer[Int]() + res += fflags + res += frm + res += fcsr + res += vstart + res += vxsat + res += vxrm + res += vcsr + res += ssp + res += seed + res += jvt + res += cycle + res += time + res += instret + res += hpmcounter3 + res += hpmcounter4 + res += hpmcounter5 + res += hpmcounter6 + res += hpmcounter7 + res += hpmcounter8 + res += hpmcounter9 + res += hpmcounter10 + res += hpmcounter11 + res += hpmcounter12 + res += hpmcounter13 + res += hpmcounter14 + res += hpmcounter15 + res += hpmcounter16 + res += hpmcounter17 + res += hpmcounter18 + res += hpmcounter19 + res += hpmcounter20 + res += hpmcounter21 + res += hpmcounter22 + res += hpmcounter23 + res += hpmcounter24 + res += hpmcounter25 + res += hpmcounter26 + res += hpmcounter27 + res += hpmcounter28 + res += hpmcounter29 + res += hpmcounter30 + res += hpmcounter31 + res += vl + res += vtype + res += vlenb + res += sstatus + res += sedeleg + res += sideleg + res += sie + res += stvec + res += scounteren + res += senvcfg + res += sstateen0 + res += sstateen1 + res += sstateen2 + res += sstateen3 + res += scountinhibit + res += sscratch + res += sepc + res += scause + res += stval + res += sip + res += stimecmp + res += sctrctl + res += sctrstatus + res += siselect + res += sireg + res += sireg2 + res += sireg3 + res += sireg4 + res += sireg5 + res += sireg6 + res += stopei + res += sctrdepth + res += satp + res += srmcfg + res += scontext + res += vsstatus + res += vsie + res += vstvec + res += vsscratch + res += vsepc + res += vscause + res += vstval + res += vsip + res += vstimecmp + res += vsctrctl + res += vsiselect + res += vsireg + res += vsireg2 + res += vsireg3 + res += vsireg4 + res += vsireg5 + res += vsireg6 + res += vstopei + res += vsatp + res += hstatus + res += hedeleg + res += hideleg + res += hie + res += htimedelta + res += hcounteren + res += hgeie + res += hvien + res += hvictl + res += henvcfg + res += hstateen0 + res += hstateen1 + res += hstateen2 + res += hstateen3 + res += htval + res += hip + res += hvip + res += hviprio1 + res += hviprio2 + res += htinst + res += hgatp + res += hcontext + res += hgeip + res += vstopi + res += scountovf + res += stopi + res += utvt + res += unxti + res += uintstatus + res += uscratchcsw + res += uscratchcswl + res += stvt + res += snxti + res += sintstatus + res += sscratchcsw + res += sscratchcswl + res += mtvt + res += mnxti + res += mintstatus + res += mscratchcsw + res += mscratchcswl + res += mstatus + res += misa + res += medeleg + res += mideleg + res += mie + res += mtvec + res += mcounteren + res += mvien + res += mvip + res += menvcfg + res += mstateen0 + res += mstateen1 + res += mstateen2 + res += mstateen3 + res += mcountinhibit + res += mscratch + res += mepc + res += mcause + res += mtval + res += mip + res += mtinst + res += mtval2 + res += mctrctl + res += miselect + res += mireg + res += mireg2 + res += mireg3 + res += mireg4 + res += mireg5 + res += mireg6 + res += mtopei + res += pmpcfg0 + res += pmpcfg1 + res += pmpcfg2 + res += pmpcfg3 + res += pmpcfg4 + res += pmpcfg5 + res += pmpcfg6 + res += pmpcfg7 + res += pmpcfg8 + res += pmpcfg9 + res += pmpcfg10 + res += pmpcfg11 + res += pmpcfg12 + res += pmpcfg13 + res += pmpcfg14 + res += pmpcfg15 + res += pmpaddr0 + res += pmpaddr1 + res += pmpaddr2 + res += pmpaddr3 + res += pmpaddr4 + res += pmpaddr5 + res += pmpaddr6 + res += pmpaddr7 + res += pmpaddr8 + res += pmpaddr9 + res += pmpaddr10 + res += pmpaddr11 + res += pmpaddr12 + res += pmpaddr13 + res += pmpaddr14 + res += pmpaddr15 + res += pmpaddr16 + res += pmpaddr17 + res += pmpaddr18 + res += pmpaddr19 + res += pmpaddr20 + res += pmpaddr21 + res += pmpaddr22 + res += pmpaddr23 + res += pmpaddr24 + res += pmpaddr25 + res += pmpaddr26 + res += pmpaddr27 + res += pmpaddr28 + res += pmpaddr29 + res += pmpaddr30 + res += pmpaddr31 + res += pmpaddr32 + res += pmpaddr33 + res += pmpaddr34 + res += pmpaddr35 + res += pmpaddr36 + res += pmpaddr37 + res += pmpaddr38 + res += pmpaddr39 + res += pmpaddr40 + res += pmpaddr41 + res += pmpaddr42 + res += pmpaddr43 + res += pmpaddr44 + res += pmpaddr45 + res += pmpaddr46 + res += pmpaddr47 + res += pmpaddr48 + res += pmpaddr49 + res += pmpaddr50 + res += pmpaddr51 + res += pmpaddr52 + res += pmpaddr53 + res += pmpaddr54 + res += pmpaddr55 + res += pmpaddr56 + res += pmpaddr57 + res += pmpaddr58 + res += pmpaddr59 + res += pmpaddr60 + res += pmpaddr61 + res += pmpaddr62 + res += pmpaddr63 + res += mseccfg + res += tselect + res += tdata1 + res += tdata2 + res += tdata3 + res += tinfo + res += tcontrol + res += mcontext + res += mscontext + res += dcsr + res += dpc + res += dscratch0 + res += dscratch1 + res += mcycle + res += minstret + res += mhpmcounter3 + res += mhpmcounter4 + res += mhpmcounter5 + res += mhpmcounter6 + res += mhpmcounter7 + res += mhpmcounter8 + res += mhpmcounter9 + res += mhpmcounter10 + res += mhpmcounter11 + res += mhpmcounter12 + res += mhpmcounter13 + res += mhpmcounter14 + res += mhpmcounter15 + res += mhpmcounter16 + res += mhpmcounter17 + res += mhpmcounter18 + res += mhpmcounter19 + res += mhpmcounter20 + res += mhpmcounter21 + res += mhpmcounter22 + res += mhpmcounter23 + res += mhpmcounter24 + res += mhpmcounter25 + res += mhpmcounter26 + res += mhpmcounter27 + res += mhpmcounter28 + res += mhpmcounter29 + res += mhpmcounter30 + res += mhpmcounter31 + res += mcyclecfg + res += minstretcfg + res += mhpmevent3 + res += mhpmevent4 + res += mhpmevent5 + res += mhpmevent6 + res += mhpmevent7 + res += mhpmevent8 + res += mhpmevent9 + res += mhpmevent10 + res += mhpmevent11 + res += mhpmevent12 + res += mhpmevent13 + res += mhpmevent14 + res += mhpmevent15 + res += mhpmevent16 + res += mhpmevent17 + res += mhpmevent18 + res += mhpmevent19 + res += mhpmevent20 + res += mhpmevent21 + res += mhpmevent22 + res += mhpmevent23 + res += mhpmevent24 + res += mhpmevent25 + res += mhpmevent26 + res += mhpmevent27 + res += mhpmevent28 + res += mhpmevent29 + res += mhpmevent30 + res += mhpmevent31 + res += mvendorid + res += marchid + res += mimpid + res += mhartid + res += mconfigptr + res += mtopi + res.toArray + } + val all32 = { + val res = collection.mutable.ArrayBuffer(all:_*) + res += sieh + res += siph + res += stimecmph + res += vsieh + res += vsiph + res += vstimecmph + res += hedelegh + res += htimedeltah + res += hidelegh + res += hvienh + res += henvcfgh + res += hviph + res += hviprio1h + res += hviprio2h + res += hstateen0h + res += hstateen1h + res += hstateen2h + res += hstateen3h + res += cycleh + res += timeh + res += instreth + res += hpmcounter3h + res += hpmcounter4h + res += hpmcounter5h + res += hpmcounter6h + res += hpmcounter7h + res += hpmcounter8h + res += hpmcounter9h + res += hpmcounter10h + res += hpmcounter11h + res += hpmcounter12h + res += hpmcounter13h + res += hpmcounter14h + res += hpmcounter15h + res += hpmcounter16h + res += hpmcounter17h + res += hpmcounter18h + res += hpmcounter19h + res += hpmcounter20h + res += hpmcounter21h + res += hpmcounter22h + res += hpmcounter23h + res += hpmcounter24h + res += hpmcounter25h + res += hpmcounter26h + res += hpmcounter27h + res += hpmcounter28h + res += hpmcounter29h + res += hpmcounter30h + res += hpmcounter31h + res += mstatush + res += midelegh + res += mieh + res += mvienh + res += mviph + res += menvcfgh + res += mstateen0h + res += mstateen1h + res += mstateen2h + res += mstateen3h + res += miph + res += mcyclecfgh + res += minstretcfgh + res += mhpmevent3h + res += mhpmevent4h + res += mhpmevent5h + res += mhpmevent6h + res += mhpmevent7h + res += mhpmevent8h + res += mhpmevent9h + res += mhpmevent10h + res += mhpmevent11h + res += mhpmevent12h + res += mhpmevent13h + res += mhpmevent14h + res += mhpmevent15h + res += mhpmevent16h + res += mhpmevent17h + res += mhpmevent18h + res += mhpmevent19h + res += mhpmevent20h + res += mhpmevent21h + res += mhpmevent22h + res += mhpmevent23h + res += mhpmevent24h + res += mhpmevent25h + res += mhpmevent26h + res += mhpmevent27h + res += mhpmevent28h + res += mhpmevent29h + res += mhpmevent30h + res += mhpmevent31h + res += mnscratch + res += mnepc + res += mncause + res += mnstatus + res += mseccfgh + res += mcycleh + res += minstreth + res += mhpmcounter3h + res += mhpmcounter4h + res += mhpmcounter5h + res += mhpmcounter6h + res += mhpmcounter7h + res += mhpmcounter8h + res += mhpmcounter9h + res += mhpmcounter10h + res += mhpmcounter11h + res += mhpmcounter12h + res += mhpmcounter13h + res += mhpmcounter14h + res += mhpmcounter15h + res += mhpmcounter16h + res += mhpmcounter17h + res += mhpmcounter18h + res += mhpmcounter19h + res += mhpmcounter20h + res += mhpmcounter21h + res += mhpmcounter22h + res += mhpmcounter23h + res += mhpmcounter24h + res += mhpmcounter25h + res += mhpmcounter26h + res += mhpmcounter27h + res += mhpmcounter28h + res += mhpmcounter29h + res += mhpmcounter30h + res += mhpmcounter31h + res.toArray + } +} diff --git a/backends/opcodes_maker/output/inst.sverilog b/backends/opcodes_maker/output/inst.sverilog new file mode 100644 index 000000000..256dc02c3 --- /dev/null +++ b/backends/opcodes_maker/output/inst.sverilog @@ -0,0 +1,1607 @@ + +/* Automatically generated by parse_opcodes */ +package riscv_instr; + localparam [31:0] ADD = 32'b0000000??????????000?????0110011; + localparam [31:0] ADD_UW = 32'b0000100??????????000?????0111011; + localparam [31:0] ADDI = 32'b?????????????????000?????0010011; + localparam [31:0] ADDIW = 32'b?????????????????000?????0011011; + localparam [31:0] ADDW = 32'b0000000??????????000?????0111011; + localparam [31:0] AES32DSI = 32'b??10101??????????000?????0110011; + localparam [31:0] AES32DSMI = 32'b??10111??????????000?????0110011; + localparam [31:0] AES32ESI = 32'b??10001??????????000?????0110011; + localparam [31:0] AES32ESMI = 32'b??10011??????????000?????0110011; + localparam [31:0] AES64DS = 32'b0011101??????????000?????0110011; + localparam [31:0] AES64DSM = 32'b0011111??????????000?????0110011; + localparam [31:0] AES64ES = 32'b0011001??????????000?????0110011; + localparam [31:0] AES64ESM = 32'b0011011??????????000?????0110011; + localparam [31:0] AES64IM = 32'b001100000000?????001?????0010011; + localparam [31:0] AES64KS1I = 32'b00110001?????????001?????0010011; + localparam [31:0] AES64KS2 = 32'b0111111??????????000?????0110011; + localparam [31:0] AMOADD_B = 32'b00000????????????000?????0101111; + localparam [31:0] AMOADD_D = 32'b00000????????????011?????0101111; + localparam [31:0] AMOADD_H = 32'b00000????????????001?????0101111; + localparam [31:0] AMOADD_W = 32'b00000????????????010?????0101111; + localparam [31:0] AMOAND_B = 32'b01100????????????000?????0101111; + localparam [31:0] AMOAND_D = 32'b01100????????????011?????0101111; + localparam [31:0] AMOAND_H = 32'b01100????????????001?????0101111; + localparam [31:0] AMOAND_W = 32'b01100????????????010?????0101111; + localparam [31:0] AMOCAS_B = 32'b00101????????????000?????0101111; + localparam [31:0] AMOCAS_D = 32'b00101????????????011?????0101111; + localparam [31:0] AMOCAS_H = 32'b00101????????????001?????0101111; + localparam [31:0] AMOCAS_Q = 32'b00101????????????100?????0101111; + localparam [31:0] AMOCAS_W = 32'b00101????????????010?????0101111; + localparam [31:0] AMOMAX_B = 32'b10100????????????000?????0101111; + localparam [31:0] AMOMAX_D = 32'b10100????????????011?????0101111; + localparam [31:0] AMOMAX_H = 32'b10100????????????001?????0101111; + localparam [31:0] AMOMAX_W = 32'b10100????????????010?????0101111; + localparam [31:0] AMOMAXU_B = 32'b11100????????????000?????0101111; + localparam [31:0] AMOMAXU_D = 32'b11100????????????011?????0101111; + localparam [31:0] AMOMAXU_H = 32'b11100????????????001?????0101111; + localparam [31:0] AMOMAXU_W = 32'b11100????????????010?????0101111; + localparam [31:0] AMOMIN_B = 32'b10000????????????000?????0101111; + localparam [31:0] AMOMIN_D = 32'b10000????????????011?????0101111; + localparam [31:0] AMOMIN_H = 32'b10000????????????001?????0101111; + localparam [31:0] AMOMIN_W = 32'b10000????????????010?????0101111; + localparam [31:0] AMOMINU_B = 32'b11000????????????000?????0101111; + localparam [31:0] AMOMINU_D = 32'b11000????????????011?????0101111; + localparam [31:0] AMOMINU_H = 32'b11000????????????001?????0101111; + localparam [31:0] AMOMINU_W = 32'b11000????????????010?????0101111; + localparam [31:0] AMOOR_B = 32'b01000????????????000?????0101111; + localparam [31:0] AMOOR_D = 32'b01000????????????011?????0101111; + localparam [31:0] AMOOR_H = 32'b01000????????????001?????0101111; + localparam [31:0] AMOOR_W = 32'b01000????????????010?????0101111; + localparam [31:0] AMOSWAP_B = 32'b00001????????????000?????0101111; + localparam [31:0] AMOSWAP_D = 32'b00001????????????011?????0101111; + localparam [31:0] AMOSWAP_H = 32'b00001????????????001?????0101111; + localparam [31:0] AMOSWAP_W = 32'b00001????????????010?????0101111; + localparam [31:0] AMOXOR_B = 32'b00100????????????000?????0101111; + localparam [31:0] AMOXOR_D = 32'b00100????????????011?????0101111; + localparam [31:0] AMOXOR_H = 32'b00100????????????001?????0101111; + localparam [31:0] AMOXOR_W = 32'b00100????????????010?????0101111; + localparam [31:0] AND = 32'b0000000??????????111?????0110011; + localparam [31:0] ANDI = 32'b?????????????????111?????0010011; + localparam [31:0] ANDN = 32'b0100000??????????111?????0110011; + localparam [31:0] AUIPC = 32'b?????????????????????????0010111; + localparam [31:0] BCLR = 32'b0100100??????????001?????0110011; + localparam [31:0] BCLRI = 32'b010010???????????001?????0010011; + localparam [31:0] BEQ = 32'b?????????????????000?????1100011; + localparam [31:0] BEXT = 32'b0100100??????????101?????0110011; + localparam [31:0] BEXTI = 32'b010010???????????101?????0010011; + localparam [31:0] BGE = 32'b?????????????????101?????1100011; + localparam [31:0] BGEU = 32'b?????????????????111?????1100011; + localparam [31:0] BINV = 32'b0110100??????????001?????0110011; + localparam [31:0] BINVI = 32'b011010???????????001?????0010011; + localparam [31:0] BLT = 32'b?????????????????100?????1100011; + localparam [31:0] BLTU = 32'b?????????????????110?????1100011; + localparam [31:0] BNE = 32'b?????????????????001?????1100011; + localparam [31:0] BREV8 = 32'b011010000111?????101?????0010011; + localparam [31:0] BSET = 32'b0010100??????????001?????0110011; + localparam [31:0] BSETI = 32'b001010???????????001?????0010011; + localparam [31:0] C_ADD = 32'b????????????????1001??????????10; + localparam [31:0] C_ADDI = 32'b????????????????000???????????01; + localparam [31:0] C_ADDI16SP = 32'b????????????????011?00010?????01; + localparam [31:0] C_ADDI4SPN = 32'b????????????????000???????????00; + localparam [31:0] C_ADDIW = 32'b????????????????001???????????01; + localparam [31:0] C_ADDW = 32'b????????????????100111???01???01; + localparam [31:0] C_AND = 32'b????????????????100011???11???01; + localparam [31:0] C_ANDI = 32'b????????????????100?10????????01; + localparam [31:0] C_BEQZ = 32'b????????????????110???????????01; + localparam [31:0] C_BNEZ = 32'b????????????????111???????????01; + localparam [31:0] C_EBREAK = 32'b????????????????1001000000000010; + localparam [31:0] C_FLD = 32'b????????????????001???????????00; + localparam [31:0] C_FLDSP = 32'b????????????????001???????????10; + localparam [31:0] C_FLW = 32'b????????????????011???????????00; + localparam [31:0] C_FLWSP = 32'b????????????????011???????????10; + localparam [31:0] C_FSD = 32'b????????????????101???????????00; + localparam [31:0] C_FSDSP = 32'b????????????????101???????????10; + localparam [31:0] C_FSW = 32'b????????????????111???????????00; + localparam [31:0] C_FSWSP = 32'b????????????????111???????????10; + localparam [31:0] C_J = 32'b????????????????101???????????01; + localparam [31:0] C_JAL = 32'b????????????????001???????????01; + localparam [31:0] C_JALR = 32'b????????????????1001?????0000010; + localparam [31:0] C_JR = 32'b????????????????1000?????0000010; + localparam [31:0] C_LBU = 32'b????????????????100000????????00; + localparam [31:0] C_LD = 32'b????????????????011???????????00; + localparam [31:0] C_LDSP = 32'b????????????????011???????????10; + localparam [31:0] C_LI = 32'b????????????????010???????????01; + localparam [31:0] C_LUI = 32'b????????????????011???????????01; + localparam [31:0] C_LW = 32'b????????????????010???????????00; + localparam [31:0] C_LWSP = 32'b????????????????010???????????10; + localparam [31:0] C_MUL = 32'b????????????????100111???10???01; + localparam [31:0] C_MV = 32'b????????????????1000??????????10; + localparam [31:0] C_NOP = 32'b????????????????000?00000?????01; + localparam [31:0] C_NOT = 32'b????????????????100111???1110101; + localparam [31:0] C_OR = 32'b????????????????100011???10???01; + localparam [31:0] C_SB = 32'b????????????????100010????????00; + localparam [31:0] C_SD = 32'b????????????????111???????????00; + localparam [31:0] C_SDSP = 32'b????????????????111???????????10; + localparam [31:0] C_SEXT_B = 32'b????????????????100111???1100101; + localparam [31:0] C_SEXT_H = 32'b????????????????100111???1101101; + localparam [31:0] C_SLLI = 32'b????????????????000???????????10; + localparam [31:0] C_SRAI = 32'b????????????????100?01????????01; + localparam [31:0] C_SRLI = 32'b????????????????100?00????????01; + localparam [31:0] C_SUB = 32'b????????????????100011???00???01; + localparam [31:0] C_SUBW = 32'b????????????????100111???00???01; + localparam [31:0] C_SW = 32'b????????????????110???????????00; + localparam [31:0] C_SWSP = 32'b????????????????110???????????10; + localparam [31:0] C_XOR = 32'b????????????????100011???01???01; + localparam [31:0] C_ZEXT_B = 32'b????????????????100111???1100001; + localparam [31:0] C_ZEXT_H = 32'b????????????????100111???1101001; + localparam [31:0] C_ZEXT_W = 32'b????????????????100111???1110001; + localparam [31:0] CBO_CLEAN = 32'b000000000001?????010000000001111; + localparam [31:0] CBO_FLUSH = 32'b000000000010?????010000000001111; + localparam [31:0] CBO_INVAL = 32'b000000000000?????010000000001111; + localparam [31:0] CBO_ZERO = 32'b000000000100?????010000000001111; + localparam [31:0] CLMUL = 32'b0000101??????????001?????0110011; + localparam [31:0] CLMULH = 32'b0000101??????????011?????0110011; + localparam [31:0] CLMULR = 32'b0000101??????????010?????0110011; + localparam [31:0] CLZ = 32'b011000000000?????001?????0010011; + localparam [31:0] CLZW = 32'b011000000000?????001?????0011011; + localparam [31:0] CM_MVA01S = 32'b????????????????101011???11???10; + localparam [31:0] CM_MVSA01 = 32'b????????????????101011???01???10; + localparam [31:0] CM_POP = 32'b????????????????10111010??????10; + localparam [31:0] CM_POPRET = 32'b????????????????10111110??????10; + localparam [31:0] CM_POPRETZ = 32'b????????????????10111100??????10; + localparam [31:0] CM_PUSH = 32'b????????????????10111000??????10; + localparam [31:0] CPOP = 32'b011000000010?????001?????0010011; + localparam [31:0] CPOPW = 32'b011000000010?????001?????0011011; + localparam [31:0] CSRRC = 32'b?????????????????011?????1110011; + localparam [31:0] CSRRCI = 32'b?????????????????111?????1110011; + localparam [31:0] CSRRS = 32'b?????????????????010?????1110011; + localparam [31:0] CSRRSI = 32'b?????????????????110?????1110011; + localparam [31:0] CSRRW = 32'b?????????????????001?????1110011; + localparam [31:0] CSRRWI = 32'b?????????????????101?????1110011; + localparam [31:0] CTZ = 32'b011000000001?????001?????0010011; + localparam [31:0] CTZW = 32'b011000000001?????001?????0011011; + localparam [31:0] CZERO_EQZ = 32'b0000111??????????101?????0110011; + localparam [31:0] CZERO_NEZ = 32'b0000111??????????111?????0110011; + localparam [31:0] DIV = 32'b0000001??????????100?????0110011; + localparam [31:0] DIVU = 32'b0000001??????????101?????0110011; + localparam [31:0] DIVUW = 32'b0000001??????????101?????0111011; + localparam [31:0] DIVW = 32'b0000001??????????100?????0111011; + localparam [31:0] DRET = 32'b01111011001000000000000001110011; + localparam [31:0] EBREAK = 32'b00000000000100000000000001110011; + localparam [31:0] ECALL = 32'b00000000000000000000000001110011; + localparam [31:0] FADD_D = 32'b0000001??????????????????1010011; + localparam [31:0] FADD_H = 32'b0000010??????????????????1010011; + localparam [31:0] FADD_Q = 32'b0000011??????????????????1010011; + localparam [31:0] FADD_S = 32'b0000000??????????????????1010011; + localparam [31:0] FCLASS_D = 32'b111000100000?????001?????1010011; + localparam [31:0] FCLASS_H = 32'b111001000000?????001?????1010011; + localparam [31:0] FCLASS_Q = 32'b111001100000?????001?????1010011; + localparam [31:0] FCLASS_S = 32'b111000000000?????001?????1010011; + localparam [31:0] FCVT_BF16_S = 32'b010001001000?????????????1010011; + localparam [31:0] FCVT_D_H = 32'b010000100010?????????????1010011; + localparam [31:0] FCVT_D_L = 32'b110100100010?????????????1010011; + localparam [31:0] FCVT_D_LU = 32'b110100100011?????????????1010011; + localparam [31:0] FCVT_D_Q = 32'b010000100011?????????????1010011; + localparam [31:0] FCVT_D_S = 32'b010000100000?????????????1010011; + localparam [31:0] FCVT_D_W = 32'b110100100000?????????????1010011; + localparam [31:0] FCVT_D_WU = 32'b110100100001?????????????1010011; + localparam [31:0] FCVT_H_D = 32'b010001000001?????????????1010011; + localparam [31:0] FCVT_H_L = 32'b110101000010?????????????1010011; + localparam [31:0] FCVT_H_LU = 32'b110101000011?????????????1010011; + localparam [31:0] FCVT_H_Q = 32'b010001000011?????????????1010011; + localparam [31:0] FCVT_H_S = 32'b010001000000?????????????1010011; + localparam [31:0] FCVT_H_W = 32'b110101000000?????????????1010011; + localparam [31:0] FCVT_H_WU = 32'b110101000001?????????????1010011; + localparam [31:0] FCVT_L_D = 32'b110000100010?????????????1010011; + localparam [31:0] FCVT_L_H = 32'b110001000010?????????????1010011; + localparam [31:0] FCVT_L_Q = 32'b110001100010?????????????1010011; + localparam [31:0] FCVT_L_S = 32'b110000000010?????????????1010011; + localparam [31:0] FCVT_LU_D = 32'b110000100011?????????????1010011; + localparam [31:0] FCVT_LU_H = 32'b110001000011?????????????1010011; + localparam [31:0] FCVT_LU_Q = 32'b110001100011?????????????1010011; + localparam [31:0] FCVT_LU_S = 32'b110000000011?????????????1010011; + localparam [31:0] FCVT_Q_D = 32'b010001100001?????????????1010011; + localparam [31:0] FCVT_Q_H = 32'b010001100010?????????????1010011; + localparam [31:0] FCVT_Q_L = 32'b110101100010?????????????1010011; + localparam [31:0] FCVT_Q_LU = 32'b110101100011?????????????1010011; + localparam [31:0] FCVT_Q_S = 32'b010001100000?????????????1010011; + localparam [31:0] FCVT_Q_W = 32'b110101100000?????????????1010011; + localparam [31:0] FCVT_Q_WU = 32'b110101100001?????????????1010011; + localparam [31:0] FCVT_S_BF16 = 32'b010000000110?????????????1010011; + localparam [31:0] FCVT_S_D = 32'b010000000001?????????????1010011; + localparam [31:0] FCVT_S_H = 32'b010000000010?????????????1010011; + localparam [31:0] FCVT_S_L = 32'b110100000010?????????????1010011; + localparam [31:0] FCVT_S_LU = 32'b110100000011?????????????1010011; + localparam [31:0] FCVT_S_Q = 32'b010000000011?????????????1010011; + localparam [31:0] FCVT_S_W = 32'b110100000000?????????????1010011; + localparam [31:0] FCVT_S_WU = 32'b110100000001?????????????1010011; + localparam [31:0] FCVT_W_D = 32'b110000100000?????????????1010011; + localparam [31:0] FCVT_W_H = 32'b110001000000?????????????1010011; + localparam [31:0] FCVT_W_Q = 32'b110001100000?????????????1010011; + localparam [31:0] FCVT_W_S = 32'b110000000000?????????????1010011; + localparam [31:0] FCVT_WU_D = 32'b110000100001?????????????1010011; + localparam [31:0] FCVT_WU_H = 32'b110001000001?????????????1010011; + localparam [31:0] FCVT_WU_Q = 32'b110001100001?????????????1010011; + localparam [31:0] FCVT_WU_S = 32'b110000000001?????????????1010011; + localparam [31:0] FCVTMOD_W_D = 32'b110000101000?????001?????1010011; + localparam [31:0] FDIV_D = 32'b0001101??????????????????1010011; + localparam [31:0] FDIV_H = 32'b0001110??????????????????1010011; + localparam [31:0] FDIV_Q = 32'b0001111??????????????????1010011; + localparam [31:0] FDIV_S = 32'b0001100??????????????????1010011; + localparam [31:0] FENCE = 32'b?????????????????000?????0001111; + localparam [31:0] FENCE_I = 32'b?????????????????001?????0001111; + localparam [31:0] FEQ_D = 32'b1010001??????????010?????1010011; + localparam [31:0] FEQ_H = 32'b1010010??????????010?????1010011; + localparam [31:0] FEQ_Q = 32'b1010011??????????010?????1010011; + localparam [31:0] FEQ_S = 32'b1010000??????????010?????1010011; + localparam [31:0] FLD = 32'b?????????????????011?????0000111; + localparam [31:0] FLE_D = 32'b1010001??????????000?????1010011; + localparam [31:0] FLE_H = 32'b1010010??????????000?????1010011; + localparam [31:0] FLE_Q = 32'b1010011??????????000?????1010011; + localparam [31:0] FLE_S = 32'b1010000??????????000?????1010011; + localparam [31:0] FLEQ_D = 32'b1010001??????????100?????1010011; + localparam [31:0] FLEQ_H = 32'b1010010??????????100?????1010011; + localparam [31:0] FLEQ_Q = 32'b1010011??????????100?????1010011; + localparam [31:0] FLEQ_S = 32'b1010000??????????100?????1010011; + localparam [31:0] FLH = 32'b?????????????????001?????0000111; + localparam [31:0] FLI_D = 32'b111100100001?????000?????1010011; + localparam [31:0] FLI_H = 32'b111101000001?????000?????1010011; + localparam [31:0] FLI_Q = 32'b111101100001?????000?????1010011; + localparam [31:0] FLI_S = 32'b111100000001?????000?????1010011; + localparam [31:0] FLQ = 32'b?????????????????100?????0000111; + localparam [31:0] FLT_D = 32'b1010001??????????001?????1010011; + localparam [31:0] FLT_H = 32'b1010010??????????001?????1010011; + localparam [31:0] FLT_Q = 32'b1010011??????????001?????1010011; + localparam [31:0] FLT_S = 32'b1010000??????????001?????1010011; + localparam [31:0] FLTQ_D = 32'b1010001??????????101?????1010011; + localparam [31:0] FLTQ_H = 32'b1010010??????????101?????1010011; + localparam [31:0] FLTQ_Q = 32'b1010011??????????101?????1010011; + localparam [31:0] FLTQ_S = 32'b1010000??????????101?????1010011; + localparam [31:0] FLW = 32'b?????????????????010?????0000111; + localparam [31:0] FMADD_D = 32'b?????01??????????????????1000011; + localparam [31:0] FMADD_H = 32'b?????10??????????????????1000011; + localparam [31:0] FMADD_Q = 32'b?????11??????????????????1000011; + localparam [31:0] FMADD_S = 32'b?????00??????????????????1000011; + localparam [31:0] FMAX_D = 32'b0010101??????????001?????1010011; + localparam [31:0] FMAX_H = 32'b0010110??????????001?????1010011; + localparam [31:0] FMAX_Q = 32'b0010111??????????001?????1010011; + localparam [31:0] FMAX_S = 32'b0010100??????????001?????1010011; + localparam [31:0] FMAXM_D = 32'b0010101??????????011?????1010011; + localparam [31:0] FMAXM_H = 32'b0010110??????????011?????1010011; + localparam [31:0] FMAXM_Q = 32'b0010111??????????011?????1010011; + localparam [31:0] FMAXM_S = 32'b0010100??????????011?????1010011; + localparam [31:0] FMIN_D = 32'b0010101??????????000?????1010011; + localparam [31:0] FMIN_H = 32'b0010110??????????000?????1010011; + localparam [31:0] FMIN_Q = 32'b0010111??????????000?????1010011; + localparam [31:0] FMIN_S = 32'b0010100??????????000?????1010011; + localparam [31:0] FMINM_D = 32'b0010101??????????010?????1010011; + localparam [31:0] FMINM_H = 32'b0010110??????????010?????1010011; + localparam [31:0] FMINM_Q = 32'b0010111??????????010?????1010011; + localparam [31:0] FMINM_S = 32'b0010100??????????010?????1010011; + localparam [31:0] FMSUB_D = 32'b?????01??????????????????1000111; + localparam [31:0] FMSUB_H = 32'b?????10??????????????????1000111; + localparam [31:0] FMSUB_Q = 32'b?????11??????????????????1000111; + localparam [31:0] FMSUB_S = 32'b?????00??????????????????1000111; + localparam [31:0] FMUL_D = 32'b0001001??????????????????1010011; + localparam [31:0] FMUL_H = 32'b0001010??????????????????1010011; + localparam [31:0] FMUL_Q = 32'b0001011??????????????????1010011; + localparam [31:0] FMUL_S = 32'b0001000??????????????????1010011; + localparam [31:0] FMV_D_X = 32'b111100100000?????000?????1010011; + localparam [31:0] FMV_H_X = 32'b111101000000?????000?????1010011; + localparam [31:0] FMV_W_X = 32'b111100000000?????000?????1010011; + localparam [31:0] FMV_X_D = 32'b111000100000?????000?????1010011; + localparam [31:0] FMV_X_H = 32'b111001000000?????000?????1010011; + localparam [31:0] FMV_X_W = 32'b111000000000?????000?????1010011; + localparam [31:0] FMVH_X_D = 32'b111000100001?????000?????1010011; + localparam [31:0] FMVH_X_Q = 32'b111001100001?????000?????1010011; + localparam [31:0] FMVP_D_X = 32'b1011001??????????000?????1010011; + localparam [31:0] FMVP_Q_X = 32'b1011011??????????000?????1010011; + localparam [31:0] FNMADD_D = 32'b?????01??????????????????1001111; + localparam [31:0] FNMADD_H = 32'b?????10??????????????????1001111; + localparam [31:0] FNMADD_Q = 32'b?????11??????????????????1001111; + localparam [31:0] FNMADD_S = 32'b?????00??????????????????1001111; + localparam [31:0] FNMSUB_D = 32'b?????01??????????????????1001011; + localparam [31:0] FNMSUB_H = 32'b?????10??????????????????1001011; + localparam [31:0] FNMSUB_Q = 32'b?????11??????????????????1001011; + localparam [31:0] FNMSUB_S = 32'b?????00??????????????????1001011; + localparam [31:0] FROUND_D = 32'b010000100100?????????????1010011; + localparam [31:0] FROUND_H = 32'b010001000100?????????????1010011; + localparam [31:0] FROUND_Q = 32'b010001100100?????????????1010011; + localparam [31:0] FROUND_S = 32'b010000000100?????????????1010011; + localparam [31:0] FROUNDNX_D = 32'b010000100101?????????????1010011; + localparam [31:0] FROUNDNX_H = 32'b010001000101?????????????1010011; + localparam [31:0] FROUNDNX_Q = 32'b010001100101?????????????1010011; + localparam [31:0] FROUNDNX_S = 32'b010000000101?????????????1010011; + localparam [31:0] FSD = 32'b?????????????????011?????0100111; + localparam [31:0] FSGNJ_D = 32'b0010001??????????000?????1010011; + localparam [31:0] FSGNJ_H = 32'b0010010??????????000?????1010011; + localparam [31:0] FSGNJ_Q = 32'b0010011??????????000?????1010011; + localparam [31:0] FSGNJ_S = 32'b0010000??????????000?????1010011; + localparam [31:0] FSGNJN_D = 32'b0010001??????????001?????1010011; + localparam [31:0] FSGNJN_H = 32'b0010010??????????001?????1010011; + localparam [31:0] FSGNJN_Q = 32'b0010011??????????001?????1010011; + localparam [31:0] FSGNJN_S = 32'b0010000??????????001?????1010011; + localparam [31:0] FSGNJX_D = 32'b0010001??????????010?????1010011; + localparam [31:0] FSGNJX_H = 32'b0010010??????????010?????1010011; + localparam [31:0] FSGNJX_Q = 32'b0010011??????????010?????1010011; + localparam [31:0] FSGNJX_S = 32'b0010000??????????010?????1010011; + localparam [31:0] FSH = 32'b?????????????????001?????0100111; + localparam [31:0] FSQ = 32'b?????????????????100?????0100111; + localparam [31:0] FSQRT_D = 32'b010110100000?????????????1010011; + localparam [31:0] FSQRT_H = 32'b010111000000?????????????1010011; + localparam [31:0] FSQRT_Q = 32'b010111100000?????????????1010011; + localparam [31:0] FSQRT_S = 32'b010110000000?????????????1010011; + localparam [31:0] FSUB_D = 32'b0000101??????????????????1010011; + localparam [31:0] FSUB_H = 32'b0000110??????????????????1010011; + localparam [31:0] FSUB_Q = 32'b0000111??????????????????1010011; + localparam [31:0] FSUB_S = 32'b0000100??????????????????1010011; + localparam [31:0] FSW = 32'b?????????????????010?????0100111; + localparam [31:0] HFENCE_GVMA = 32'b0110001??????????000000001110011; + localparam [31:0] HFENCE_VVMA = 32'b0010001??????????000000001110011; + localparam [31:0] HINVAL_GVMA = 32'b0110011??????????000000001110011; + localparam [31:0] HINVAL_VVMA = 32'b0010011??????????000000001110011; + localparam [31:0] HLV_B = 32'b011000000000?????100?????1110011; + localparam [31:0] HLV_BU = 32'b011000000001?????100?????1110011; + localparam [31:0] HLV_D = 32'b011011000000?????100?????1110011; + localparam [31:0] HLV_H = 32'b011001000000?????100?????1110011; + localparam [31:0] HLV_HU = 32'b011001000001?????100?????1110011; + localparam [31:0] HLV_W = 32'b011010000000?????100?????1110011; + localparam [31:0] HLV_WU = 32'b011010000001?????100?????1110011; + localparam [31:0] HLVX_HU = 32'b011001000011?????100?????1110011; + localparam [31:0] HLVX_WU = 32'b011010000011?????100?????1110011; + localparam [31:0] HSV_B = 32'b0110001??????????100000001110011; + localparam [31:0] HSV_D = 32'b0110111??????????100000001110011; + localparam [31:0] HSV_H = 32'b0110011??????????100000001110011; + localparam [31:0] HSV_W = 32'b0110101??????????100000001110011; + localparam [31:0] JAL = 32'b?????????????????????????1101111; + localparam [31:0] JALR = 32'b?????????????????000?????1100111; + localparam [31:0] LB = 32'b?????????????????000?????0000011; + localparam [31:0] LB_AQ = 32'b001101?00000?????000?????0101111; + localparam [31:0] LBU = 32'b?????????????????100?????0000011; + localparam [31:0] LD = 32'b?????????????????011?????0000011; + localparam [31:0] LD_AQ = 32'b001101?00000?????011?????0101111; + localparam [31:0] LH = 32'b?????????????????001?????0000011; + localparam [31:0] LH_AQ = 32'b001101?00000?????001?????0101111; + localparam [31:0] LHU = 32'b?????????????????101?????0000011; + localparam [31:0] LPAD = 32'b????????????????????000000010111; + localparam [31:0] LR_D = 32'b00010??00000?????011?????0101111; + localparam [31:0] LR_W = 32'b00010??00000?????010?????0101111; + localparam [31:0] LUI = 32'b?????????????????????????0110111; + localparam [31:0] LW = 32'b?????????????????010?????0000011; + localparam [31:0] LW_AQ = 32'b001101?00000?????010?????0101111; + localparam [31:0] LWU = 32'b?????????????????110?????0000011; + localparam [31:0] MAX = 32'b0000101??????????110?????0110011; + localparam [31:0] MAXU = 32'b0000101??????????111?????0110011; + localparam [31:0] MIN = 32'b0000101??????????100?????0110011; + localparam [31:0] MINU = 32'b0000101??????????101?????0110011; + localparam [31:0] MNRET = 32'b01110000001000000000000001110011; + localparam [31:0] MOP_R_N = 32'b1?00??0111???????100?????1110011; + localparam [31:0] MOP_RR_N = 32'b1?00??1??????????100?????1110011; + localparam [31:0] MRET = 32'b00110000001000000000000001110011; + localparam [31:0] MUL = 32'b0000001??????????000?????0110011; + localparam [31:0] MULH = 32'b0000001??????????001?????0110011; + localparam [31:0] MULHSU = 32'b0000001??????????010?????0110011; + localparam [31:0] MULHU = 32'b0000001??????????011?????0110011; + localparam [31:0] MULW = 32'b0000001??????????000?????0111011; + localparam [31:0] OR = 32'b0000000??????????110?????0110011; + localparam [31:0] ORC_B = 32'b001010000111?????101?????0010011; + localparam [31:0] ORI = 32'b?????????????????110?????0010011; + localparam [31:0] ORN = 32'b0100000??????????110?????0110011; + localparam [31:0] PACK = 32'b0000100??????????100?????0110011; + localparam [31:0] PACKH = 32'b0000100??????????111?????0110011; + localparam [31:0] PACKW = 32'b0000100??????????100?????0111011; + localparam [31:0] REM = 32'b0000001??????????110?????0110011; + localparam [31:0] REMU = 32'b0000001??????????111?????0110011; + localparam [31:0] REMUW = 32'b0000001??????????111?????0111011; + localparam [31:0] REMW = 32'b0000001??????????110?????0111011; + localparam [31:0] REV8 = 32'b011010111000?????101?????0010011; + localparam [31:0] ROL = 32'b0110000??????????001?????0110011; + localparam [31:0] ROLW = 32'b0110000??????????001?????0111011; + localparam [31:0] ROR = 32'b0110000??????????101?????0110011; + localparam [31:0] RORI = 32'b011000???????????101?????0010011; + localparam [31:0] RORIW = 32'b0110000??????????101?????0011011; + localparam [31:0] RORW = 32'b0110000??????????101?????0111011; + localparam [31:0] SB = 32'b?????????????????000?????0100011; + localparam [31:0] SB_RL = 32'b00111?1??????????000000000101111; + localparam [31:0] SC_D = 32'b00011????????????011?????0101111; + localparam [31:0] SC_W = 32'b00011????????????010?????0101111; + localparam [31:0] SCTRCLR = 32'b00010000010000000000000001110011; + localparam [31:0] SD = 32'b?????????????????011?????0100011; + localparam [31:0] SD_RL = 32'b00111?1??????????011000000101111; + localparam [31:0] SEXT_B = 32'b011000000100?????001?????0010011; + localparam [31:0] SEXT_H = 32'b011000000101?????001?????0010011; + localparam [31:0] SFENCE_INVAL_IR = 32'b00011000000100000000000001110011; + localparam [31:0] SFENCE_VMA = 32'b0001001??????????000000001110011; + localparam [31:0] SFENCE_W_INVAL = 32'b00011000000000000000000001110011; + localparam [31:0] SH = 32'b?????????????????001?????0100011; + localparam [31:0] SH1ADD = 32'b0010000??????????010?????0110011; + localparam [31:0] SH1ADD_UW = 32'b0010000??????????010?????0111011; + localparam [31:0] SH2ADD = 32'b0010000??????????100?????0110011; + localparam [31:0] SH2ADD_UW = 32'b0010000??????????100?????0111011; + localparam [31:0] SH3ADD = 32'b0010000??????????110?????0110011; + localparam [31:0] SH3ADD_UW = 32'b0010000??????????110?????0111011; + localparam [31:0] SH_RL = 32'b00111?1??????????001000000101111; + localparam [31:0] SHA256SIG0 = 32'b000100000010?????001?????0010011; + localparam [31:0] SHA256SIG1 = 32'b000100000011?????001?????0010011; + localparam [31:0] SHA256SUM0 = 32'b000100000000?????001?????0010011; + localparam [31:0] SHA256SUM1 = 32'b000100000001?????001?????0010011; + localparam [31:0] SHA512SIG0 = 32'b000100000110?????001?????0010011; + localparam [31:0] SHA512SIG0H = 32'b0101110??????????000?????0110011; + localparam [31:0] SHA512SIG0L = 32'b0101010??????????000?????0110011; + localparam [31:0] SHA512SIG1 = 32'b000100000111?????001?????0010011; + localparam [31:0] SHA512SIG1H = 32'b0101111??????????000?????0110011; + localparam [31:0] SHA512SIG1L = 32'b0101011??????????000?????0110011; + localparam [31:0] SHA512SUM0 = 32'b000100000100?????001?????0010011; + localparam [31:0] SHA512SUM0R = 32'b0101000??????????000?????0110011; + localparam [31:0] SHA512SUM1 = 32'b000100000101?????001?????0010011; + localparam [31:0] SHA512SUM1R = 32'b0101001??????????000?????0110011; + localparam [31:0] SINVAL_VMA = 32'b0001011??????????000000001110011; + localparam [31:0] SLL = 32'b0000000??????????001?????0110011; + localparam [31:0] SLLI = 32'b000000???????????001?????0010011; + localparam [31:0] SLLI_UW = 32'b000010???????????001?????0011011; + localparam [31:0] SLLIW = 32'b0000000??????????001?????0011011; + localparam [31:0] SLLW = 32'b0000000??????????001?????0111011; + localparam [31:0] SLT = 32'b0000000??????????010?????0110011; + localparam [31:0] SLTI = 32'b?????????????????010?????0010011; + localparam [31:0] SLTIU = 32'b?????????????????011?????0010011; + localparam [31:0] SLTU = 32'b0000000??????????011?????0110011; + localparam [31:0] SM3P0 = 32'b000100001000?????001?????0010011; + localparam [31:0] SM3P1 = 32'b000100001001?????001?????0010011; + localparam [31:0] SM4ED = 32'b??11000??????????000?????0110011; + localparam [31:0] SM4KS = 32'b??11010??????????000?????0110011; + localparam [31:0] SRA = 32'b0100000??????????101?????0110011; + localparam [31:0] SRAI = 32'b010000???????????101?????0010011; + localparam [31:0] SRAIW = 32'b0100000??????????101?????0011011; + localparam [31:0] SRAW = 32'b0100000??????????101?????0111011; + localparam [31:0] SRET = 32'b00010000001000000000000001110011; + localparam [31:0] SRL = 32'b0000000??????????101?????0110011; + localparam [31:0] SRLI = 32'b000000???????????101?????0010011; + localparam [31:0] SRLIW = 32'b0000000??????????101?????0011011; + localparam [31:0] SRLW = 32'b0000000??????????101?????0111011; + localparam [31:0] SSAMOSWAP_D = 32'b01001????????????011?????0101111; + localparam [31:0] SSAMOSWAP_W = 32'b01001????????????010?????0101111; + localparam [31:0] SSPOPCHK_X1 = 32'b11001101110000001100000001110011; + localparam [31:0] SSPOPCHK_X5 = 32'b11001101110000101100000001110011; + localparam [31:0] SSPUSH_X1 = 32'b11001110000100000100000001110011; + localparam [31:0] SSPUSH_X5 = 32'b11001110010100000100000001110011; + localparam [31:0] SSRDP = 32'b11001101110000000100?????1110011; + localparam [31:0] SUB = 32'b0100000??????????000?????0110011; + localparam [31:0] SUBW = 32'b0100000??????????000?????0111011; + localparam [31:0] SW = 32'b?????????????????010?????0100011; + localparam [31:0] SW_RL = 32'b00111?1??????????010000000101111; + localparam [31:0] UNZIP = 32'b000010001111?????101?????0010011; + localparam [31:0] VAADD_VV = 32'b001001???????????010?????1010111; + localparam [31:0] VAADD_VX = 32'b001001???????????110?????1010111; + localparam [31:0] VAADDU_VV = 32'b001000???????????010?????1010111; + localparam [31:0] VAADDU_VX = 32'b001000???????????110?????1010111; + localparam [31:0] VADC_VIM = 32'b0100000??????????011?????1010111; + localparam [31:0] VADC_VVM = 32'b0100000??????????000?????1010111; + localparam [31:0] VADC_VXM = 32'b0100000??????????100?????1010111; + localparam [31:0] VADD_VI = 32'b000000???????????011?????1010111; + localparam [31:0] VADD_VV = 32'b000000???????????000?????1010111; + localparam [31:0] VADD_VX = 32'b000000???????????100?????1010111; + localparam [31:0] VAESDF_VS = 32'b1010011?????00001010?????1110111; + localparam [31:0] VAESDF_VV = 32'b1010001?????00001010?????1110111; + localparam [31:0] VAESDM_VS = 32'b1010011?????00000010?????1110111; + localparam [31:0] VAESDM_VV = 32'b1010001?????00000010?????1110111; + localparam [31:0] VAESEF_VS = 32'b1010011?????00011010?????1110111; + localparam [31:0] VAESEF_VV = 32'b1010001?????00011010?????1110111; + localparam [31:0] VAESEM_VS = 32'b1010011?????00010010?????1110111; + localparam [31:0] VAESEM_VV = 32'b1010001?????00010010?????1110111; + localparam [31:0] VAESKF1_VI = 32'b1000101??????????010?????1110111; + localparam [31:0] VAESKF2_VI = 32'b1010101??????????010?????1110111; + localparam [31:0] VAESZ_VS = 32'b1010011?????00111010?????1110111; + localparam [31:0] VAND_VI = 32'b001001???????????011?????1010111; + localparam [31:0] VAND_VV = 32'b001001???????????000?????1010111; + localparam [31:0] VAND_VX = 32'b001001???????????100?????1010111; + localparam [31:0] VANDN_VV = 32'b000001???????????000?????1010111; + localparam [31:0] VANDN_VX = 32'b000001???????????100?????1010111; + localparam [31:0] VASUB_VV = 32'b001011???????????010?????1010111; + localparam [31:0] VASUB_VX = 32'b001011???????????110?????1010111; + localparam [31:0] VASUBU_VV = 32'b001010???????????010?????1010111; + localparam [31:0] VASUBU_VX = 32'b001010???????????110?????1010111; + localparam [31:0] VBREV8_V = 32'b010010??????01000010?????1010111; + localparam [31:0] VBREV_V = 32'b010010??????01010010?????1010111; + localparam [31:0] VCLMUL_VV = 32'b001100???????????010?????1010111; + localparam [31:0] VCLMUL_VX = 32'b001100???????????110?????1010111; + localparam [31:0] VCLMULH_VV = 32'b001101???????????010?????1010111; + localparam [31:0] VCLMULH_VX = 32'b001101???????????110?????1010111; + localparam [31:0] VCLZ_V = 32'b010010??????01100010?????1010111; + localparam [31:0] VCOMPRESS_VM = 32'b0101111??????????010?????1010111; + localparam [31:0] VCPOP_M = 32'b010000??????10000010?????1010111; + localparam [31:0] VCPOP_V = 32'b010010??????01110010?????1010111; + localparam [31:0] VCTZ_V = 32'b010010??????01101010?????1010111; + localparam [31:0] VDIV_VV = 32'b100001???????????010?????1010111; + localparam [31:0] VDIV_VX = 32'b100001???????????110?????1010111; + localparam [31:0] VDIVU_VV = 32'b100000???????????010?????1010111; + localparam [31:0] VDIVU_VX = 32'b100000???????????110?????1010111; + localparam [31:0] VFADD_VF = 32'b000000???????????101?????1010111; + localparam [31:0] VFADD_VV = 32'b000000???????????001?????1010111; + localparam [31:0] VFCLASS_V = 32'b010011??????10000001?????1010111; + localparam [31:0] VFCVT_F_X_V = 32'b010010??????00011001?????1010111; + localparam [31:0] VFCVT_F_XU_V = 32'b010010??????00010001?????1010111; + localparam [31:0] VFCVT_RTZ_X_F_V = 32'b010010??????00111001?????1010111; + localparam [31:0] VFCVT_RTZ_XU_F_V = 32'b010010??????00110001?????1010111; + localparam [31:0] VFCVT_X_F_V = 32'b010010??????00001001?????1010111; + localparam [31:0] VFCVT_XU_F_V = 32'b010010??????00000001?????1010111; + localparam [31:0] VFDIV_VF = 32'b100000???????????101?????1010111; + localparam [31:0] VFDIV_VV = 32'b100000???????????001?????1010111; + localparam [31:0] VFIRST_M = 32'b010000??????10001010?????1010111; + localparam [31:0] VFMACC_VF = 32'b101100???????????101?????1010111; + localparam [31:0] VFMACC_VV = 32'b101100???????????001?????1010111; + localparam [31:0] VFMADD_VF = 32'b101000???????????101?????1010111; + localparam [31:0] VFMADD_VV = 32'b101000???????????001?????1010111; + localparam [31:0] VFMAX_VF = 32'b000110???????????101?????1010111; + localparam [31:0] VFMAX_VV = 32'b000110???????????001?????1010111; + localparam [31:0] VFMERGE_VFM = 32'b0101110??????????101?????1010111; + localparam [31:0] VFMIN_VF = 32'b000100???????????101?????1010111; + localparam [31:0] VFMIN_VV = 32'b000100???????????001?????1010111; + localparam [31:0] VFMSAC_VF = 32'b101110???????????101?????1010111; + localparam [31:0] VFMSAC_VV = 32'b101110???????????001?????1010111; + localparam [31:0] VFMSUB_VF = 32'b101010???????????101?????1010111; + localparam [31:0] VFMSUB_VV = 32'b101010???????????001?????1010111; + localparam [31:0] VFMUL_VF = 32'b100100???????????101?????1010111; + localparam [31:0] VFMUL_VV = 32'b100100???????????001?????1010111; + localparam [31:0] VFMV_F_S = 32'b0100001?????00000001?????1010111; + localparam [31:0] VFMV_S_F = 32'b010000100000?????101?????1010111; + localparam [31:0] VFMV_V_F = 32'b010111100000?????101?????1010111; + localparam [31:0] VFNCVT_F_F_W = 32'b010010??????10100001?????1010111; + localparam [31:0] VFNCVT_F_X_W = 32'b010010??????10011001?????1010111; + localparam [31:0] VFNCVT_F_XU_W = 32'b010010??????10010001?????1010111; + localparam [31:0] VFNCVT_ROD_F_F_W = 32'b010010??????10101001?????1010111; + localparam [31:0] VFNCVT_RTZ_X_F_W = 32'b010010??????10111001?????1010111; + localparam [31:0] VFNCVT_RTZ_XU_F_W = 32'b010010??????10110001?????1010111; + localparam [31:0] VFNCVT_X_F_W = 32'b010010??????10001001?????1010111; + localparam [31:0] VFNCVT_XU_F_W = 32'b010010??????10000001?????1010111; + localparam [31:0] VFNCVTBF16_F_F_W = 32'b010010??????11101001?????1010111; + localparam [31:0] VFNMACC_VF = 32'b101101???????????101?????1010111; + localparam [31:0] VFNMACC_VV = 32'b101101???????????001?????1010111; + localparam [31:0] VFNMADD_VF = 32'b101001???????????101?????1010111; + localparam [31:0] VFNMADD_VV = 32'b101001???????????001?????1010111; + localparam [31:0] VFNMSAC_VF = 32'b101111???????????101?????1010111; + localparam [31:0] VFNMSAC_VV = 32'b101111???????????001?????1010111; + localparam [31:0] VFNMSUB_VF = 32'b101011???????????101?????1010111; + localparam [31:0] VFNMSUB_VV = 32'b101011???????????001?????1010111; + localparam [31:0] VFRDIV_VF = 32'b100001???????????101?????1010111; + localparam [31:0] VFREC7_V = 32'b010011??????00101001?????1010111; + localparam [31:0] VFREDMAX_VS = 32'b000111???????????001?????1010111; + localparam [31:0] VFREDMIN_VS = 32'b000101???????????001?????1010111; + localparam [31:0] VFREDOSUM_VS = 32'b000011???????????001?????1010111; + localparam [31:0] VFREDUSUM_VS = 32'b000001???????????001?????1010111; + localparam [31:0] VFRSQRT7_V = 32'b010011??????00100001?????1010111; + localparam [31:0] VFRSUB_VF = 32'b100111???????????101?????1010111; + localparam [31:0] VFSGNJ_VF = 32'b001000???????????101?????1010111; + localparam [31:0] VFSGNJ_VV = 32'b001000???????????001?????1010111; + localparam [31:0] VFSGNJN_VF = 32'b001001???????????101?????1010111; + localparam [31:0] VFSGNJN_VV = 32'b001001???????????001?????1010111; + localparam [31:0] VFSGNJX_VF = 32'b001010???????????101?????1010111; + localparam [31:0] VFSGNJX_VV = 32'b001010???????????001?????1010111; + localparam [31:0] VFSLIDE1DOWN_VF = 32'b001111???????????101?????1010111; + localparam [31:0] VFSLIDE1UP_VF = 32'b001110???????????101?????1010111; + localparam [31:0] VFSQRT_V = 32'b010011??????00000001?????1010111; + localparam [31:0] VFSUB_VF = 32'b000010???????????101?????1010111; + localparam [31:0] VFSUB_VV = 32'b000010???????????001?????1010111; + localparam [31:0] VFWADD_VF = 32'b110000???????????101?????1010111; + localparam [31:0] VFWADD_VV = 32'b110000???????????001?????1010111; + localparam [31:0] VFWADD_WF = 32'b110100???????????101?????1010111; + localparam [31:0] VFWADD_WV = 32'b110100???????????001?????1010111; + localparam [31:0] VFWCVT_F_F_V = 32'b010010??????01100001?????1010111; + localparam [31:0] VFWCVT_F_X_V = 32'b010010??????01011001?????1010111; + localparam [31:0] VFWCVT_F_XU_V = 32'b010010??????01010001?????1010111; + localparam [31:0] VFWCVT_RTZ_X_F_V = 32'b010010??????01111001?????1010111; + localparam [31:0] VFWCVT_RTZ_XU_F_V = 32'b010010??????01110001?????1010111; + localparam [31:0] VFWCVT_X_F_V = 32'b010010??????01001001?????1010111; + localparam [31:0] VFWCVT_XU_F_V = 32'b010010??????01000001?????1010111; + localparam [31:0] VFWCVTBF16_F_F_V = 32'b010010??????01101001?????1010111; + localparam [31:0] VFWMACC_VF = 32'b111100???????????101?????1010111; + localparam [31:0] VFWMACC_VV = 32'b111100???????????001?????1010111; + localparam [31:0] VFWMACCBF16_VF = 32'b111011???????????101?????1010111; + localparam [31:0] VFWMACCBF16_VV = 32'b111011???????????001?????1010111; + localparam [31:0] VFWMSAC_VF = 32'b111110???????????101?????1010111; + localparam [31:0] VFWMSAC_VV = 32'b111110???????????001?????1010111; + localparam [31:0] VFWMUL_VF = 32'b111000???????????101?????1010111; + localparam [31:0] VFWMUL_VV = 32'b111000???????????001?????1010111; + localparam [31:0] VFWNMACC_VF = 32'b111101???????????101?????1010111; + localparam [31:0] VFWNMACC_VV = 32'b111101???????????001?????1010111; + localparam [31:0] VFWNMSAC_VF = 32'b111111???????????101?????1010111; + localparam [31:0] VFWNMSAC_VV = 32'b111111???????????001?????1010111; + localparam [31:0] VFWREDOSUM_VS = 32'b110011???????????001?????1010111; + localparam [31:0] VFWREDUSUM_VS = 32'b110001???????????001?????1010111; + localparam [31:0] VFWSUB_VF = 32'b110010???????????101?????1010111; + localparam [31:0] VFWSUB_VV = 32'b110010???????????001?????1010111; + localparam [31:0] VFWSUB_WF = 32'b110110???????????101?????1010111; + localparam [31:0] VFWSUB_WV = 32'b110110???????????001?????1010111; + localparam [31:0] VGHSH_VV = 32'b1011001??????????010?????1110111; + localparam [31:0] VGMUL_VV = 32'b1010001?????10001010?????1110111; + localparam [31:0] VID_V = 32'b010100?0000010001010?????1010111; + localparam [31:0] VIOTA_M = 32'b010100??????10000010?????1010111; + localparam [31:0] VL1RE16_V = 32'b000000101000?????101?????0000111; + localparam [31:0] VL1RE32_V = 32'b000000101000?????110?????0000111; + localparam [31:0] VL1RE64_V = 32'b000000101000?????111?????0000111; + localparam [31:0] VL1RE8_V = 32'b000000101000?????000?????0000111; + localparam [31:0] VL2RE16_V = 32'b001000101000?????101?????0000111; + localparam [31:0] VL2RE32_V = 32'b001000101000?????110?????0000111; + localparam [31:0] VL2RE64_V = 32'b001000101000?????111?????0000111; + localparam [31:0] VL2RE8_V = 32'b001000101000?????000?????0000111; + localparam [31:0] VL4RE16_V = 32'b011000101000?????101?????0000111; + localparam [31:0] VL4RE32_V = 32'b011000101000?????110?????0000111; + localparam [31:0] VL4RE64_V = 32'b011000101000?????111?????0000111; + localparam [31:0] VL4RE8_V = 32'b011000101000?????000?????0000111; + localparam [31:0] VL8RE16_V = 32'b111000101000?????101?????0000111; + localparam [31:0] VL8RE32_V = 32'b111000101000?????110?????0000111; + localparam [31:0] VL8RE64_V = 32'b111000101000?????111?????0000111; + localparam [31:0] VL8RE8_V = 32'b111000101000?????000?????0000111; + localparam [31:0] VLE16_V = 32'b000000?00000?????101?????0000111; + localparam [31:0] VLE16FF_V = 32'b000000?10000?????101?????0000111; + localparam [31:0] VLE32_V = 32'b000000?00000?????110?????0000111; + localparam [31:0] VLE32FF_V = 32'b000000?10000?????110?????0000111; + localparam [31:0] VLE64_V = 32'b000000?00000?????111?????0000111; + localparam [31:0] VLE64FF_V = 32'b000000?10000?????111?????0000111; + localparam [31:0] VLE8_V = 32'b000000?00000?????000?????0000111; + localparam [31:0] VLE8FF_V = 32'b000000?10000?????000?????0000111; + localparam [31:0] VLM_V = 32'b000000101011?????000?????0000111; + localparam [31:0] VLOXEI16_V = 32'b000011???????????101?????0000111; + localparam [31:0] VLOXEI32_V = 32'b000011???????????110?????0000111; + localparam [31:0] VLOXEI64_V = 32'b000011???????????111?????0000111; + localparam [31:0] VLOXEI8_V = 32'b000011???????????000?????0000111; + localparam [31:0] VLOXSEG2EI16_V = 32'b001011???????????101?????0000111; + localparam [31:0] VLOXSEG2EI32_V = 32'b001011???????????110?????0000111; + localparam [31:0] VLOXSEG2EI64_V = 32'b001011???????????111?????0000111; + localparam [31:0] VLOXSEG2EI8_V = 32'b001011???????????000?????0000111; + localparam [31:0] VLOXSEG3EI16_V = 32'b010011???????????101?????0000111; + localparam [31:0] VLOXSEG3EI32_V = 32'b010011???????????110?????0000111; + localparam [31:0] VLOXSEG3EI64_V = 32'b010011???????????111?????0000111; + localparam [31:0] VLOXSEG3EI8_V = 32'b010011???????????000?????0000111; + localparam [31:0] VLOXSEG4EI16_V = 32'b011011???????????101?????0000111; + localparam [31:0] VLOXSEG4EI32_V = 32'b011011???????????110?????0000111; + localparam [31:0] VLOXSEG4EI64_V = 32'b011011???????????111?????0000111; + localparam [31:0] VLOXSEG4EI8_V = 32'b011011???????????000?????0000111; + localparam [31:0] VLOXSEG5EI16_V = 32'b100011???????????101?????0000111; + localparam [31:0] VLOXSEG5EI32_V = 32'b100011???????????110?????0000111; + localparam [31:0] VLOXSEG5EI64_V = 32'b100011???????????111?????0000111; + localparam [31:0] VLOXSEG5EI8_V = 32'b100011???????????000?????0000111; + localparam [31:0] VLOXSEG6EI16_V = 32'b101011???????????101?????0000111; + localparam [31:0] VLOXSEG6EI32_V = 32'b101011???????????110?????0000111; + localparam [31:0] VLOXSEG6EI64_V = 32'b101011???????????111?????0000111; + localparam [31:0] VLOXSEG6EI8_V = 32'b101011???????????000?????0000111; + localparam [31:0] VLOXSEG7EI16_V = 32'b110011???????????101?????0000111; + localparam [31:0] VLOXSEG7EI32_V = 32'b110011???????????110?????0000111; + localparam [31:0] VLOXSEG7EI64_V = 32'b110011???????????111?????0000111; + localparam [31:0] VLOXSEG7EI8_V = 32'b110011???????????000?????0000111; + localparam [31:0] VLOXSEG8EI16_V = 32'b111011???????????101?????0000111; + localparam [31:0] VLOXSEG8EI32_V = 32'b111011???????????110?????0000111; + localparam [31:0] VLOXSEG8EI64_V = 32'b111011???????????111?????0000111; + localparam [31:0] VLOXSEG8EI8_V = 32'b111011???????????000?????0000111; + localparam [31:0] VLSE16_V = 32'b000010???????????101?????0000111; + localparam [31:0] VLSE32_V = 32'b000010???????????110?????0000111; + localparam [31:0] VLSE64_V = 32'b000010???????????111?????0000111; + localparam [31:0] VLSE8_V = 32'b000010???????????000?????0000111; + localparam [31:0] VLSEG2E16_V = 32'b001000?00000?????101?????0000111; + localparam [31:0] VLSEG2E16FF_V = 32'b001000?10000?????101?????0000111; + localparam [31:0] VLSEG2E32_V = 32'b001000?00000?????110?????0000111; + localparam [31:0] VLSEG2E32FF_V = 32'b001000?10000?????110?????0000111; + localparam [31:0] VLSEG2E64_V = 32'b001000?00000?????111?????0000111; + localparam [31:0] VLSEG2E64FF_V = 32'b001000?10000?????111?????0000111; + localparam [31:0] VLSEG2E8_V = 32'b001000?00000?????000?????0000111; + localparam [31:0] VLSEG2E8FF_V = 32'b001000?10000?????000?????0000111; + localparam [31:0] VLSEG3E16_V = 32'b010000?00000?????101?????0000111; + localparam [31:0] VLSEG3E16FF_V = 32'b010000?10000?????101?????0000111; + localparam [31:0] VLSEG3E32_V = 32'b010000?00000?????110?????0000111; + localparam [31:0] VLSEG3E32FF_V = 32'b010000?10000?????110?????0000111; + localparam [31:0] VLSEG3E64_V = 32'b010000?00000?????111?????0000111; + localparam [31:0] VLSEG3E64FF_V = 32'b010000?10000?????111?????0000111; + localparam [31:0] VLSEG3E8_V = 32'b010000?00000?????000?????0000111; + localparam [31:0] VLSEG3E8FF_V = 32'b010000?10000?????000?????0000111; + localparam [31:0] VLSEG4E16_V = 32'b011000?00000?????101?????0000111; + localparam [31:0] VLSEG4E16FF_V = 32'b011000?10000?????101?????0000111; + localparam [31:0] VLSEG4E32_V = 32'b011000?00000?????110?????0000111; + localparam [31:0] VLSEG4E32FF_V = 32'b011000?10000?????110?????0000111; + localparam [31:0] VLSEG4E64_V = 32'b011000?00000?????111?????0000111; + localparam [31:0] VLSEG4E64FF_V = 32'b011000?10000?????111?????0000111; + localparam [31:0] VLSEG4E8_V = 32'b011000?00000?????000?????0000111; + localparam [31:0] VLSEG4E8FF_V = 32'b011000?10000?????000?????0000111; + localparam [31:0] VLSEG5E16_V = 32'b100000?00000?????101?????0000111; + localparam [31:0] VLSEG5E16FF_V = 32'b100000?10000?????101?????0000111; + localparam [31:0] VLSEG5E32_V = 32'b100000?00000?????110?????0000111; + localparam [31:0] VLSEG5E32FF_V = 32'b100000?10000?????110?????0000111; + localparam [31:0] VLSEG5E64_V = 32'b100000?00000?????111?????0000111; + localparam [31:0] VLSEG5E64FF_V = 32'b100000?10000?????111?????0000111; + localparam [31:0] VLSEG5E8_V = 32'b100000?00000?????000?????0000111; + localparam [31:0] VLSEG5E8FF_V = 32'b100000?10000?????000?????0000111; + localparam [31:0] VLSEG6E16_V = 32'b101000?00000?????101?????0000111; + localparam [31:0] VLSEG6E16FF_V = 32'b101000?10000?????101?????0000111; + localparam [31:0] VLSEG6E32_V = 32'b101000?00000?????110?????0000111; + localparam [31:0] VLSEG6E32FF_V = 32'b101000?10000?????110?????0000111; + localparam [31:0] VLSEG6E64_V = 32'b101000?00000?????111?????0000111; + localparam [31:0] VLSEG6E64FF_V = 32'b101000?10000?????111?????0000111; + localparam [31:0] VLSEG6E8_V = 32'b101000?00000?????000?????0000111; + localparam [31:0] VLSEG6E8FF_V = 32'b101000?10000?????000?????0000111; + localparam [31:0] VLSEG7E16_V = 32'b110000?00000?????101?????0000111; + localparam [31:0] VLSEG7E16FF_V = 32'b110000?10000?????101?????0000111; + localparam [31:0] VLSEG7E32_V = 32'b110000?00000?????110?????0000111; + localparam [31:0] VLSEG7E32FF_V = 32'b110000?10000?????110?????0000111; + localparam [31:0] VLSEG7E64_V = 32'b110000?00000?????111?????0000111; + localparam [31:0] VLSEG7E64FF_V = 32'b110000?10000?????111?????0000111; + localparam [31:0] VLSEG7E8_V = 32'b110000?00000?????000?????0000111; + localparam [31:0] VLSEG7E8FF_V = 32'b110000?10000?????000?????0000111; + localparam [31:0] VLSEG8E16_V = 32'b111000?00000?????101?????0000111; + localparam [31:0] VLSEG8E16FF_V = 32'b111000?10000?????101?????0000111; + localparam [31:0] VLSEG8E32_V = 32'b111000?00000?????110?????0000111; + localparam [31:0] VLSEG8E32FF_V = 32'b111000?10000?????110?????0000111; + localparam [31:0] VLSEG8E64_V = 32'b111000?00000?????111?????0000111; + localparam [31:0] VLSEG8E64FF_V = 32'b111000?10000?????111?????0000111; + localparam [31:0] VLSEG8E8_V = 32'b111000?00000?????000?????0000111; + localparam [31:0] VLSEG8E8FF_V = 32'b111000?10000?????000?????0000111; + localparam [31:0] VLSSEG2E16_V = 32'b001010???????????101?????0000111; + localparam [31:0] VLSSEG2E32_V = 32'b001010???????????110?????0000111; + localparam [31:0] VLSSEG2E64_V = 32'b001010???????????111?????0000111; + localparam [31:0] VLSSEG2E8_V = 32'b001010???????????000?????0000111; + localparam [31:0] VLSSEG3E16_V = 32'b010010???????????101?????0000111; + localparam [31:0] VLSSEG3E32_V = 32'b010010???????????110?????0000111; + localparam [31:0] VLSSEG3E64_V = 32'b010010???????????111?????0000111; + localparam [31:0] VLSSEG3E8_V = 32'b010010???????????000?????0000111; + localparam [31:0] VLSSEG4E16_V = 32'b011010???????????101?????0000111; + localparam [31:0] VLSSEG4E32_V = 32'b011010???????????110?????0000111; + localparam [31:0] VLSSEG4E64_V = 32'b011010???????????111?????0000111; + localparam [31:0] VLSSEG4E8_V = 32'b011010???????????000?????0000111; + localparam [31:0] VLSSEG5E16_V = 32'b100010???????????101?????0000111; + localparam [31:0] VLSSEG5E32_V = 32'b100010???????????110?????0000111; + localparam [31:0] VLSSEG5E64_V = 32'b100010???????????111?????0000111; + localparam [31:0] VLSSEG5E8_V = 32'b100010???????????000?????0000111; + localparam [31:0] VLSSEG6E16_V = 32'b101010???????????101?????0000111; + localparam [31:0] VLSSEG6E32_V = 32'b101010???????????110?????0000111; + localparam [31:0] VLSSEG6E64_V = 32'b101010???????????111?????0000111; + localparam [31:0] VLSSEG6E8_V = 32'b101010???????????000?????0000111; + localparam [31:0] VLSSEG7E16_V = 32'b110010???????????101?????0000111; + localparam [31:0] VLSSEG7E32_V = 32'b110010???????????110?????0000111; + localparam [31:0] VLSSEG7E64_V = 32'b110010???????????111?????0000111; + localparam [31:0] VLSSEG7E8_V = 32'b110010???????????000?????0000111; + localparam [31:0] VLSSEG8E16_V = 32'b111010???????????101?????0000111; + localparam [31:0] VLSSEG8E32_V = 32'b111010???????????110?????0000111; + localparam [31:0] VLSSEG8E64_V = 32'b111010???????????111?????0000111; + localparam [31:0] VLSSEG8E8_V = 32'b111010???????????000?????0000111; + localparam [31:0] VLUXEI16_V = 32'b000001???????????101?????0000111; + localparam [31:0] VLUXEI32_V = 32'b000001???????????110?????0000111; + localparam [31:0] VLUXEI64_V = 32'b000001???????????111?????0000111; + localparam [31:0] VLUXEI8_V = 32'b000001???????????000?????0000111; + localparam [31:0] VLUXSEG2EI16_V = 32'b001001???????????101?????0000111; + localparam [31:0] VLUXSEG2EI32_V = 32'b001001???????????110?????0000111; + localparam [31:0] VLUXSEG2EI64_V = 32'b001001???????????111?????0000111; + localparam [31:0] VLUXSEG2EI8_V = 32'b001001???????????000?????0000111; + localparam [31:0] VLUXSEG3EI16_V = 32'b010001???????????101?????0000111; + localparam [31:0] VLUXSEG3EI32_V = 32'b010001???????????110?????0000111; + localparam [31:0] VLUXSEG3EI64_V = 32'b010001???????????111?????0000111; + localparam [31:0] VLUXSEG3EI8_V = 32'b010001???????????000?????0000111; + localparam [31:0] VLUXSEG4EI16_V = 32'b011001???????????101?????0000111; + localparam [31:0] VLUXSEG4EI32_V = 32'b011001???????????110?????0000111; + localparam [31:0] VLUXSEG4EI64_V = 32'b011001???????????111?????0000111; + localparam [31:0] VLUXSEG4EI8_V = 32'b011001???????????000?????0000111; + localparam [31:0] VLUXSEG5EI16_V = 32'b100001???????????101?????0000111; + localparam [31:0] VLUXSEG5EI32_V = 32'b100001???????????110?????0000111; + localparam [31:0] VLUXSEG5EI64_V = 32'b100001???????????111?????0000111; + localparam [31:0] VLUXSEG5EI8_V = 32'b100001???????????000?????0000111; + localparam [31:0] VLUXSEG6EI16_V = 32'b101001???????????101?????0000111; + localparam [31:0] VLUXSEG6EI32_V = 32'b101001???????????110?????0000111; + localparam [31:0] VLUXSEG6EI64_V = 32'b101001???????????111?????0000111; + localparam [31:0] VLUXSEG6EI8_V = 32'b101001???????????000?????0000111; + localparam [31:0] VLUXSEG7EI16_V = 32'b110001???????????101?????0000111; + localparam [31:0] VLUXSEG7EI32_V = 32'b110001???????????110?????0000111; + localparam [31:0] VLUXSEG7EI64_V = 32'b110001???????????111?????0000111; + localparam [31:0] VLUXSEG7EI8_V = 32'b110001???????????000?????0000111; + localparam [31:0] VLUXSEG8EI16_V = 32'b111001???????????101?????0000111; + localparam [31:0] VLUXSEG8EI32_V = 32'b111001???????????110?????0000111; + localparam [31:0] VLUXSEG8EI64_V = 32'b111001???????????111?????0000111; + localparam [31:0] VLUXSEG8EI8_V = 32'b111001???????????000?????0000111; + localparam [31:0] VMACC_VV = 32'b101101???????????010?????1010111; + localparam [31:0] VMACC_VX = 32'b101101???????????110?????1010111; + localparam [31:0] VMADC_VI = 32'b0100011??????????011?????1010111; + localparam [31:0] VMADC_VIM = 32'b0100010??????????011?????1010111; + localparam [31:0] VMADC_VV = 32'b0100011??????????000?????1010111; + localparam [31:0] VMADC_VVM = 32'b0100010??????????000?????1010111; + localparam [31:0] VMADC_VX = 32'b0100011??????????100?????1010111; + localparam [31:0] VMADC_VXM = 32'b0100010??????????100?????1010111; + localparam [31:0] VMADD_VV = 32'b101001???????????010?????1010111; + localparam [31:0] VMADD_VX = 32'b101001???????????110?????1010111; + localparam [31:0] VMAND_MM = 32'b0110011??????????010?????1010111; + localparam [31:0] VMANDN_MM = 32'b0110001??????????010?????1010111; + localparam [31:0] VMAX_VV = 32'b000111???????????000?????1010111; + localparam [31:0] VMAX_VX = 32'b000111???????????100?????1010111; + localparam [31:0] VMAXU_VV = 32'b000110???????????000?????1010111; + localparam [31:0] VMAXU_VX = 32'b000110???????????100?????1010111; + localparam [31:0] VMERGE_VIM = 32'b0101110??????????011?????1010111; + localparam [31:0] VMERGE_VVM = 32'b0101110??????????000?????1010111; + localparam [31:0] VMERGE_VXM = 32'b0101110??????????100?????1010111; + localparam [31:0] VMFEQ_VF = 32'b011000???????????101?????1010111; + localparam [31:0] VMFEQ_VV = 32'b011000???????????001?????1010111; + localparam [31:0] VMFGE_VF = 32'b011111???????????101?????1010111; + localparam [31:0] VMFGT_VF = 32'b011101???????????101?????1010111; + localparam [31:0] VMFLE_VF = 32'b011001???????????101?????1010111; + localparam [31:0] VMFLE_VV = 32'b011001???????????001?????1010111; + localparam [31:0] VMFLT_VF = 32'b011011???????????101?????1010111; + localparam [31:0] VMFLT_VV = 32'b011011???????????001?????1010111; + localparam [31:0] VMFNE_VF = 32'b011100???????????101?????1010111; + localparam [31:0] VMFNE_VV = 32'b011100???????????001?????1010111; + localparam [31:0] VMIN_VV = 32'b000101???????????000?????1010111; + localparam [31:0] VMIN_VX = 32'b000101???????????100?????1010111; + localparam [31:0] VMINU_VV = 32'b000100???????????000?????1010111; + localparam [31:0] VMINU_VX = 32'b000100???????????100?????1010111; + localparam [31:0] VMNAND_MM = 32'b0111011??????????010?????1010111; + localparam [31:0] VMNOR_MM = 32'b0111101??????????010?????1010111; + localparam [31:0] VMOR_MM = 32'b0110101??????????010?????1010111; + localparam [31:0] VMORN_MM = 32'b0111001??????????010?????1010111; + localparam [31:0] VMSBC_VV = 32'b0100111??????????000?????1010111; + localparam [31:0] VMSBC_VVM = 32'b0100110??????????000?????1010111; + localparam [31:0] VMSBC_VX = 32'b0100111??????????100?????1010111; + localparam [31:0] VMSBC_VXM = 32'b0100110??????????100?????1010111; + localparam [31:0] VMSBF_M = 32'b010100??????00001010?????1010111; + localparam [31:0] VMSEQ_VI = 32'b011000???????????011?????1010111; + localparam [31:0] VMSEQ_VV = 32'b011000???????????000?????1010111; + localparam [31:0] VMSEQ_VX = 32'b011000???????????100?????1010111; + localparam [31:0] VMSGT_VI = 32'b011111???????????011?????1010111; + localparam [31:0] VMSGT_VX = 32'b011111???????????100?????1010111; + localparam [31:0] VMSGTU_VI = 32'b011110???????????011?????1010111; + localparam [31:0] VMSGTU_VX = 32'b011110???????????100?????1010111; + localparam [31:0] VMSIF_M = 32'b010100??????00011010?????1010111; + localparam [31:0] VMSLE_VI = 32'b011101???????????011?????1010111; + localparam [31:0] VMSLE_VV = 32'b011101???????????000?????1010111; + localparam [31:0] VMSLE_VX = 32'b011101???????????100?????1010111; + localparam [31:0] VMSLEU_VI = 32'b011100???????????011?????1010111; + localparam [31:0] VMSLEU_VV = 32'b011100???????????000?????1010111; + localparam [31:0] VMSLEU_VX = 32'b011100???????????100?????1010111; + localparam [31:0] VMSLT_VV = 32'b011011???????????000?????1010111; + localparam [31:0] VMSLT_VX = 32'b011011???????????100?????1010111; + localparam [31:0] VMSLTU_VV = 32'b011010???????????000?????1010111; + localparam [31:0] VMSLTU_VX = 32'b011010???????????100?????1010111; + localparam [31:0] VMSNE_VI = 32'b011001???????????011?????1010111; + localparam [31:0] VMSNE_VV = 32'b011001???????????000?????1010111; + localparam [31:0] VMSNE_VX = 32'b011001???????????100?????1010111; + localparam [31:0] VMSOF_M = 32'b010100??????00010010?????1010111; + localparam [31:0] VMUL_VV = 32'b100101???????????010?????1010111; + localparam [31:0] VMUL_VX = 32'b100101???????????110?????1010111; + localparam [31:0] VMULH_VV = 32'b100111???????????010?????1010111; + localparam [31:0] VMULH_VX = 32'b100111???????????110?????1010111; + localparam [31:0] VMULHSU_VV = 32'b100110???????????010?????1010111; + localparam [31:0] VMULHSU_VX = 32'b100110???????????110?????1010111; + localparam [31:0] VMULHU_VV = 32'b100100???????????010?????1010111; + localparam [31:0] VMULHU_VX = 32'b100100???????????110?????1010111; + localparam [31:0] VMV1R_V = 32'b1001111?????00000011?????1010111; + localparam [31:0] VMV2R_V = 32'b1001111?????00001011?????1010111; + localparam [31:0] VMV4R_V = 32'b1001111?????00011011?????1010111; + localparam [31:0] VMV8R_V = 32'b1001111?????00111011?????1010111; + localparam [31:0] VMV_S_X = 32'b010000100000?????110?????1010111; + localparam [31:0] VMV_V_I = 32'b010111100000?????011?????1010111; + localparam [31:0] VMV_V_V = 32'b010111100000?????000?????1010111; + localparam [31:0] VMV_V_X = 32'b010111100000?????100?????1010111; + localparam [31:0] VMV_X_S = 32'b0100001?????00000010?????1010111; + localparam [31:0] VMXNOR_MM = 32'b0111111??????????010?????1010111; + localparam [31:0] VMXOR_MM = 32'b0110111??????????010?????1010111; + localparam [31:0] VNCLIP_WI = 32'b101111???????????011?????1010111; + localparam [31:0] VNCLIP_WV = 32'b101111???????????000?????1010111; + localparam [31:0] VNCLIP_WX = 32'b101111???????????100?????1010111; + localparam [31:0] VNCLIPU_WI = 32'b101110???????????011?????1010111; + localparam [31:0] VNCLIPU_WV = 32'b101110???????????000?????1010111; + localparam [31:0] VNCLIPU_WX = 32'b101110???????????100?????1010111; + localparam [31:0] VNMSAC_VV = 32'b101111???????????010?????1010111; + localparam [31:0] VNMSAC_VX = 32'b101111???????????110?????1010111; + localparam [31:0] VNMSUB_VV = 32'b101011???????????010?????1010111; + localparam [31:0] VNMSUB_VX = 32'b101011???????????110?????1010111; + localparam [31:0] VNSRA_WI = 32'b101101???????????011?????1010111; + localparam [31:0] VNSRA_WV = 32'b101101???????????000?????1010111; + localparam [31:0] VNSRA_WX = 32'b101101???????????100?????1010111; + localparam [31:0] VNSRL_WI = 32'b101100???????????011?????1010111; + localparam [31:0] VNSRL_WV = 32'b101100???????????000?????1010111; + localparam [31:0] VNSRL_WX = 32'b101100???????????100?????1010111; + localparam [31:0] VOR_VI = 32'b001010???????????011?????1010111; + localparam [31:0] VOR_VV = 32'b001010???????????000?????1010111; + localparam [31:0] VOR_VX = 32'b001010???????????100?????1010111; + localparam [31:0] VREDAND_VS = 32'b000001???????????010?????1010111; + localparam [31:0] VREDMAX_VS = 32'b000111???????????010?????1010111; + localparam [31:0] VREDMAXU_VS = 32'b000110???????????010?????1010111; + localparam [31:0] VREDMIN_VS = 32'b000101???????????010?????1010111; + localparam [31:0] VREDMINU_VS = 32'b000100???????????010?????1010111; + localparam [31:0] VREDOR_VS = 32'b000010???????????010?????1010111; + localparam [31:0] VREDSUM_VS = 32'b000000???????????010?????1010111; + localparam [31:0] VREDXOR_VS = 32'b000011???????????010?????1010111; + localparam [31:0] VREM_VV = 32'b100011???????????010?????1010111; + localparam [31:0] VREM_VX = 32'b100011???????????110?????1010111; + localparam [31:0] VREMU_VV = 32'b100010???????????010?????1010111; + localparam [31:0] VREMU_VX = 32'b100010???????????110?????1010111; + localparam [31:0] VREV8_V = 32'b010010??????01001010?????1010111; + localparam [31:0] VRGATHER_VI = 32'b001100???????????011?????1010111; + localparam [31:0] VRGATHER_VV = 32'b001100???????????000?????1010111; + localparam [31:0] VRGATHER_VX = 32'b001100???????????100?????1010111; + localparam [31:0] VRGATHEREI16_VV = 32'b001110???????????000?????1010111; + localparam [31:0] VROL_VV = 32'b010101???????????000?????1010111; + localparam [31:0] VROL_VX = 32'b010101???????????100?????1010111; + localparam [31:0] VROR_VI = 32'b01010????????????011?????1010111; + localparam [31:0] VROR_VV = 32'b010100???????????000?????1010111; + localparam [31:0] VROR_VX = 32'b010100???????????100?????1010111; + localparam [31:0] VRSUB_VI = 32'b000011???????????011?????1010111; + localparam [31:0] VRSUB_VX = 32'b000011???????????100?????1010111; + localparam [31:0] VS1R_V = 32'b000000101000?????000?????0100111; + localparam [31:0] VS2R_V = 32'b001000101000?????000?????0100111; + localparam [31:0] VS4R_V = 32'b011000101000?????000?????0100111; + localparam [31:0] VS8R_V = 32'b111000101000?????000?????0100111; + localparam [31:0] VSADD_VI = 32'b100001???????????011?????1010111; + localparam [31:0] VSADD_VV = 32'b100001???????????000?????1010111; + localparam [31:0] VSADD_VX = 32'b100001???????????100?????1010111; + localparam [31:0] VSADDU_VI = 32'b100000???????????011?????1010111; + localparam [31:0] VSADDU_VV = 32'b100000???????????000?????1010111; + localparam [31:0] VSADDU_VX = 32'b100000???????????100?????1010111; + localparam [31:0] VSBC_VVM = 32'b0100100??????????000?????1010111; + localparam [31:0] VSBC_VXM = 32'b0100100??????????100?????1010111; + localparam [31:0] VSE16_V = 32'b000000?00000?????101?????0100111; + localparam [31:0] VSE32_V = 32'b000000?00000?????110?????0100111; + localparam [31:0] VSE64_V = 32'b000000?00000?????111?????0100111; + localparam [31:0] VSE8_V = 32'b000000?00000?????000?????0100111; + localparam [31:0] VSETIVLI = 32'b11???????????????111?????1010111; + localparam [31:0] VSETVL = 32'b1000000??????????111?????1010111; + localparam [31:0] VSETVLI = 32'b0????????????????111?????1010111; + localparam [31:0] VSEXT_VF2 = 32'b010010??????00111010?????1010111; + localparam [31:0] VSEXT_VF4 = 32'b010010??????00101010?????1010111; + localparam [31:0] VSEXT_VF8 = 32'b010010??????00011010?????1010111; + localparam [31:0] VSHA2CH_VV = 32'b1011101??????????010?????1110111; + localparam [31:0] VSHA2CL_VV = 32'b1011111??????????010?????1110111; + localparam [31:0] VSHA2MS_VV = 32'b1011011??????????010?????1110111; + localparam [31:0] VSLIDE1DOWN_VX = 32'b001111???????????110?????1010111; + localparam [31:0] VSLIDE1UP_VX = 32'b001110???????????110?????1010111; + localparam [31:0] VSLIDEDOWN_VI = 32'b001111???????????011?????1010111; + localparam [31:0] VSLIDEDOWN_VX = 32'b001111???????????100?????1010111; + localparam [31:0] VSLIDEUP_VI = 32'b001110???????????011?????1010111; + localparam [31:0] VSLIDEUP_VX = 32'b001110???????????100?????1010111; + localparam [31:0] VSLL_VI = 32'b100101???????????011?????1010111; + localparam [31:0] VSLL_VV = 32'b100101???????????000?????1010111; + localparam [31:0] VSLL_VX = 32'b100101???????????100?????1010111; + localparam [31:0] VSM3C_VI = 32'b1010111??????????010?????1110111; + localparam [31:0] VSM3ME_VV = 32'b1000001??????????010?????1110111; + localparam [31:0] VSM4K_VI = 32'b1000011??????????010?????1110111; + localparam [31:0] VSM4R_VS = 32'b1010011?????10000010?????1110111; + localparam [31:0] VSM4R_VV = 32'b1010001?????10000010?????1110111; + localparam [31:0] VSM_V = 32'b000000101011?????000?????0100111; + localparam [31:0] VSMUL_VV = 32'b100111???????????000?????1010111; + localparam [31:0] VSMUL_VX = 32'b100111???????????100?????1010111; + localparam [31:0] VSOXEI16_V = 32'b000011???????????101?????0100111; + localparam [31:0] VSOXEI32_V = 32'b000011???????????110?????0100111; + localparam [31:0] VSOXEI64_V = 32'b000011???????????111?????0100111; + localparam [31:0] VSOXEI8_V = 32'b000011???????????000?????0100111; + localparam [31:0] VSOXSEG2EI16_V = 32'b001011???????????101?????0100111; + localparam [31:0] VSOXSEG2EI32_V = 32'b001011???????????110?????0100111; + localparam [31:0] VSOXSEG2EI64_V = 32'b001011???????????111?????0100111; + localparam [31:0] VSOXSEG2EI8_V = 32'b001011???????????000?????0100111; + localparam [31:0] VSOXSEG3EI16_V = 32'b010011???????????101?????0100111; + localparam [31:0] VSOXSEG3EI32_V = 32'b010011???????????110?????0100111; + localparam [31:0] VSOXSEG3EI64_V = 32'b010011???????????111?????0100111; + localparam [31:0] VSOXSEG3EI8_V = 32'b010011???????????000?????0100111; + localparam [31:0] VSOXSEG4EI16_V = 32'b011011???????????101?????0100111; + localparam [31:0] VSOXSEG4EI32_V = 32'b011011???????????110?????0100111; + localparam [31:0] VSOXSEG4EI64_V = 32'b011011???????????111?????0100111; + localparam [31:0] VSOXSEG4EI8_V = 32'b011011???????????000?????0100111; + localparam [31:0] VSOXSEG5EI16_V = 32'b100011???????????101?????0100111; + localparam [31:0] VSOXSEG5EI32_V = 32'b100011???????????110?????0100111; + localparam [31:0] VSOXSEG5EI64_V = 32'b100011???????????111?????0100111; + localparam [31:0] VSOXSEG5EI8_V = 32'b100011???????????000?????0100111; + localparam [31:0] VSOXSEG6EI16_V = 32'b101011???????????101?????0100111; + localparam [31:0] VSOXSEG6EI32_V = 32'b101011???????????110?????0100111; + localparam [31:0] VSOXSEG6EI64_V = 32'b101011???????????111?????0100111; + localparam [31:0] VSOXSEG6EI8_V = 32'b101011???????????000?????0100111; + localparam [31:0] VSOXSEG7EI16_V = 32'b110011???????????101?????0100111; + localparam [31:0] VSOXSEG7EI32_V = 32'b110011???????????110?????0100111; + localparam [31:0] VSOXSEG7EI64_V = 32'b110011???????????111?????0100111; + localparam [31:0] VSOXSEG7EI8_V = 32'b110011???????????000?????0100111; + localparam [31:0] VSOXSEG8EI16_V = 32'b111011???????????101?????0100111; + localparam [31:0] VSOXSEG8EI32_V = 32'b111011???????????110?????0100111; + localparam [31:0] VSOXSEG8EI64_V = 32'b111011???????????111?????0100111; + localparam [31:0] VSOXSEG8EI8_V = 32'b111011???????????000?????0100111; + localparam [31:0] VSRA_VI = 32'b101001???????????011?????1010111; + localparam [31:0] VSRA_VV = 32'b101001???????????000?????1010111; + localparam [31:0] VSRA_VX = 32'b101001???????????100?????1010111; + localparam [31:0] VSRL_VI = 32'b101000???????????011?????1010111; + localparam [31:0] VSRL_VV = 32'b101000???????????000?????1010111; + localparam [31:0] VSRL_VX = 32'b101000???????????100?????1010111; + localparam [31:0] VSSE16_V = 32'b000010???????????101?????0100111; + localparam [31:0] VSSE32_V = 32'b000010???????????110?????0100111; + localparam [31:0] VSSE64_V = 32'b000010???????????111?????0100111; + localparam [31:0] VSSE8_V = 32'b000010???????????000?????0100111; + localparam [31:0] VSSEG2E16_V = 32'b001000?00000?????101?????0100111; + localparam [31:0] VSSEG2E32_V = 32'b001000?00000?????110?????0100111; + localparam [31:0] VSSEG2E64_V = 32'b001000?00000?????111?????0100111; + localparam [31:0] VSSEG2E8_V = 32'b001000?00000?????000?????0100111; + localparam [31:0] VSSEG3E16_V = 32'b010000?00000?????101?????0100111; + localparam [31:0] VSSEG3E32_V = 32'b010000?00000?????110?????0100111; + localparam [31:0] VSSEG3E64_V = 32'b010000?00000?????111?????0100111; + localparam [31:0] VSSEG3E8_V = 32'b010000?00000?????000?????0100111; + localparam [31:0] VSSEG4E16_V = 32'b011000?00000?????101?????0100111; + localparam [31:0] VSSEG4E32_V = 32'b011000?00000?????110?????0100111; + localparam [31:0] VSSEG4E64_V = 32'b011000?00000?????111?????0100111; + localparam [31:0] VSSEG4E8_V = 32'b011000?00000?????000?????0100111; + localparam [31:0] VSSEG5E16_V = 32'b100000?00000?????101?????0100111; + localparam [31:0] VSSEG5E32_V = 32'b100000?00000?????110?????0100111; + localparam [31:0] VSSEG5E64_V = 32'b100000?00000?????111?????0100111; + localparam [31:0] VSSEG5E8_V = 32'b100000?00000?????000?????0100111; + localparam [31:0] VSSEG6E16_V = 32'b101000?00000?????101?????0100111; + localparam [31:0] VSSEG6E32_V = 32'b101000?00000?????110?????0100111; + localparam [31:0] VSSEG6E64_V = 32'b101000?00000?????111?????0100111; + localparam [31:0] VSSEG6E8_V = 32'b101000?00000?????000?????0100111; + localparam [31:0] VSSEG7E16_V = 32'b110000?00000?????101?????0100111; + localparam [31:0] VSSEG7E32_V = 32'b110000?00000?????110?????0100111; + localparam [31:0] VSSEG7E64_V = 32'b110000?00000?????111?????0100111; + localparam [31:0] VSSEG7E8_V = 32'b110000?00000?????000?????0100111; + localparam [31:0] VSSEG8E16_V = 32'b111000?00000?????101?????0100111; + localparam [31:0] VSSEG8E32_V = 32'b111000?00000?????110?????0100111; + localparam [31:0] VSSEG8E64_V = 32'b111000?00000?????111?????0100111; + localparam [31:0] VSSEG8E8_V = 32'b111000?00000?????000?????0100111; + localparam [31:0] VSSRA_VI = 32'b101011???????????011?????1010111; + localparam [31:0] VSSRA_VV = 32'b101011???????????000?????1010111; + localparam [31:0] VSSRA_VX = 32'b101011???????????100?????1010111; + localparam [31:0] VSSRL_VI = 32'b101010???????????011?????1010111; + localparam [31:0] VSSRL_VV = 32'b101010???????????000?????1010111; + localparam [31:0] VSSRL_VX = 32'b101010???????????100?????1010111; + localparam [31:0] VSSSEG2E16_V = 32'b001010???????????101?????0100111; + localparam [31:0] VSSSEG2E32_V = 32'b001010???????????110?????0100111; + localparam [31:0] VSSSEG2E64_V = 32'b001010???????????111?????0100111; + localparam [31:0] VSSSEG2E8_V = 32'b001010???????????000?????0100111; + localparam [31:0] VSSSEG3E16_V = 32'b010010???????????101?????0100111; + localparam [31:0] VSSSEG3E32_V = 32'b010010???????????110?????0100111; + localparam [31:0] VSSSEG3E64_V = 32'b010010???????????111?????0100111; + localparam [31:0] VSSSEG3E8_V = 32'b010010???????????000?????0100111; + localparam [31:0] VSSSEG4E16_V = 32'b011010???????????101?????0100111; + localparam [31:0] VSSSEG4E32_V = 32'b011010???????????110?????0100111; + localparam [31:0] VSSSEG4E64_V = 32'b011010???????????111?????0100111; + localparam [31:0] VSSSEG4E8_V = 32'b011010???????????000?????0100111; + localparam [31:0] VSSSEG5E16_V = 32'b100010???????????101?????0100111; + localparam [31:0] VSSSEG5E32_V = 32'b100010???????????110?????0100111; + localparam [31:0] VSSSEG5E64_V = 32'b100010???????????111?????0100111; + localparam [31:0] VSSSEG5E8_V = 32'b100010???????????000?????0100111; + localparam [31:0] VSSSEG6E16_V = 32'b101010???????????101?????0100111; + localparam [31:0] VSSSEG6E32_V = 32'b101010???????????110?????0100111; + localparam [31:0] VSSSEG6E64_V = 32'b101010???????????111?????0100111; + localparam [31:0] VSSSEG6E8_V = 32'b101010???????????000?????0100111; + localparam [31:0] VSSSEG7E16_V = 32'b110010???????????101?????0100111; + localparam [31:0] VSSSEG7E32_V = 32'b110010???????????110?????0100111; + localparam [31:0] VSSSEG7E64_V = 32'b110010???????????111?????0100111; + localparam [31:0] VSSSEG7E8_V = 32'b110010???????????000?????0100111; + localparam [31:0] VSSSEG8E16_V = 32'b111010???????????101?????0100111; + localparam [31:0] VSSSEG8E32_V = 32'b111010???????????110?????0100111; + localparam [31:0] VSSSEG8E64_V = 32'b111010???????????111?????0100111; + localparam [31:0] VSSSEG8E8_V = 32'b111010???????????000?????0100111; + localparam [31:0] VSSUB_VV = 32'b100011???????????000?????1010111; + localparam [31:0] VSSUB_VX = 32'b100011???????????100?????1010111; + localparam [31:0] VSSUBU_VV = 32'b100010???????????000?????1010111; + localparam [31:0] VSSUBU_VX = 32'b100010???????????100?????1010111; + localparam [31:0] VSUB_VV = 32'b000010???????????000?????1010111; + localparam [31:0] VSUB_VX = 32'b000010???????????100?????1010111; + localparam [31:0] VSUXEI16_V = 32'b000001???????????101?????0100111; + localparam [31:0] VSUXEI32_V = 32'b000001???????????110?????0100111; + localparam [31:0] VSUXEI64_V = 32'b000001???????????111?????0100111; + localparam [31:0] VSUXEI8_V = 32'b000001???????????000?????0100111; + localparam [31:0] VSUXSEG2EI16_V = 32'b001001???????????101?????0100111; + localparam [31:0] VSUXSEG2EI32_V = 32'b001001???????????110?????0100111; + localparam [31:0] VSUXSEG2EI64_V = 32'b001001???????????111?????0100111; + localparam [31:0] VSUXSEG2EI8_V = 32'b001001???????????000?????0100111; + localparam [31:0] VSUXSEG3EI16_V = 32'b010001???????????101?????0100111; + localparam [31:0] VSUXSEG3EI32_V = 32'b010001???????????110?????0100111; + localparam [31:0] VSUXSEG3EI64_V = 32'b010001???????????111?????0100111; + localparam [31:0] VSUXSEG3EI8_V = 32'b010001???????????000?????0100111; + localparam [31:0] VSUXSEG4EI16_V = 32'b011001???????????101?????0100111; + localparam [31:0] VSUXSEG4EI32_V = 32'b011001???????????110?????0100111; + localparam [31:0] VSUXSEG4EI64_V = 32'b011001???????????111?????0100111; + localparam [31:0] VSUXSEG4EI8_V = 32'b011001???????????000?????0100111; + localparam [31:0] VSUXSEG5EI16_V = 32'b100001???????????101?????0100111; + localparam [31:0] VSUXSEG5EI32_V = 32'b100001???????????110?????0100111; + localparam [31:0] VSUXSEG5EI64_V = 32'b100001???????????111?????0100111; + localparam [31:0] VSUXSEG5EI8_V = 32'b100001???????????000?????0100111; + localparam [31:0] VSUXSEG6EI16_V = 32'b101001???????????101?????0100111; + localparam [31:0] VSUXSEG6EI32_V = 32'b101001???????????110?????0100111; + localparam [31:0] VSUXSEG6EI64_V = 32'b101001???????????111?????0100111; + localparam [31:0] VSUXSEG6EI8_V = 32'b101001???????????000?????0100111; + localparam [31:0] VSUXSEG7EI16_V = 32'b110001???????????101?????0100111; + localparam [31:0] VSUXSEG7EI32_V = 32'b110001???????????110?????0100111; + localparam [31:0] VSUXSEG7EI64_V = 32'b110001???????????111?????0100111; + localparam [31:0] VSUXSEG7EI8_V = 32'b110001???????????000?????0100111; + localparam [31:0] VSUXSEG8EI16_V = 32'b111001???????????101?????0100111; + localparam [31:0] VSUXSEG8EI32_V = 32'b111001???????????110?????0100111; + localparam [31:0] VSUXSEG8EI64_V = 32'b111001???????????111?????0100111; + localparam [31:0] VSUXSEG8EI8_V = 32'b111001???????????000?????0100111; + localparam [31:0] VWADD_VV = 32'b110001???????????010?????1010111; + localparam [31:0] VWADD_VX = 32'b110001???????????110?????1010111; + localparam [31:0] VWADD_WV = 32'b110101???????????010?????1010111; + localparam [31:0] VWADD_WX = 32'b110101???????????110?????1010111; + localparam [31:0] VWADDU_VV = 32'b110000???????????010?????1010111; + localparam [31:0] VWADDU_VX = 32'b110000???????????110?????1010111; + localparam [31:0] VWADDU_WV = 32'b110100???????????010?????1010111; + localparam [31:0] VWADDU_WX = 32'b110100???????????110?????1010111; + localparam [31:0] VWMACC_VV = 32'b111101???????????010?????1010111; + localparam [31:0] VWMACC_VX = 32'b111101???????????110?????1010111; + localparam [31:0] VWMACCSU_VV = 32'b111111???????????010?????1010111; + localparam [31:0] VWMACCSU_VX = 32'b111111???????????110?????1010111; + localparam [31:0] VWMACCU_VV = 32'b111100???????????010?????1010111; + localparam [31:0] VWMACCU_VX = 32'b111100???????????110?????1010111; + localparam [31:0] VWMACCUS_VX = 32'b111110???????????110?????1010111; + localparam [31:0] VWMUL_VV = 32'b111011???????????010?????1010111; + localparam [31:0] VWMUL_VX = 32'b111011???????????110?????1010111; + localparam [31:0] VWMULSU_VV = 32'b111010???????????010?????1010111; + localparam [31:0] VWMULSU_VX = 32'b111010???????????110?????1010111; + localparam [31:0] VWMULU_VV = 32'b111000???????????010?????1010111; + localparam [31:0] VWMULU_VX = 32'b111000???????????110?????1010111; + localparam [31:0] VWREDSUM_VS = 32'b110001???????????000?????1010111; + localparam [31:0] VWREDSUMU_VS = 32'b110000???????????000?????1010111; + localparam [31:0] VWSLL_VI = 32'b110101???????????011?????1010111; + localparam [31:0] VWSLL_VV = 32'b110101???????????000?????1010111; + localparam [31:0] VWSLL_VX = 32'b110101???????????100?????1010111; + localparam [31:0] VWSUB_VV = 32'b110011???????????010?????1010111; + localparam [31:0] VWSUB_VX = 32'b110011???????????110?????1010111; + localparam [31:0] VWSUB_WV = 32'b110111???????????010?????1010111; + localparam [31:0] VWSUB_WX = 32'b110111???????????110?????1010111; + localparam [31:0] VWSUBU_VV = 32'b110010???????????010?????1010111; + localparam [31:0] VWSUBU_VX = 32'b110010???????????110?????1010111; + localparam [31:0] VWSUBU_WV = 32'b110110???????????010?????1010111; + localparam [31:0] VWSUBU_WX = 32'b110110???????????110?????1010111; + localparam [31:0] VXOR_VI = 32'b001011???????????011?????1010111; + localparam [31:0] VXOR_VV = 32'b001011???????????000?????1010111; + localparam [31:0] VXOR_VX = 32'b001011???????????100?????1010111; + localparam [31:0] VZEXT_VF2 = 32'b010010??????00110010?????1010111; + localparam [31:0] VZEXT_VF4 = 32'b010010??????00100010?????1010111; + localparam [31:0] VZEXT_VF8 = 32'b010010??????00010010?????1010111; + localparam [31:0] WFI = 32'b00010000010100000000000001110011; + localparam [31:0] WRS_NTO = 32'b00000000110100000000000001110011; + localparam [31:0] WRS_STO = 32'b00000001110100000000000001110011; + localparam [31:0] XNOR = 32'b0100000??????????100?????0110011; + localparam [31:0] XOR = 32'b0000000??????????100?????0110011; + localparam [31:0] XORI = 32'b?????????????????100?????0010011; + localparam [31:0] XPERM4 = 32'b0010100??????????010?????0110011; + localparam [31:0] XPERM8 = 32'b0010100??????????100?????0110011; + localparam [31:0] ZEXT_H = 32'b000010000000?????100?????0111011; + localparam [31:0] ZIP = 32'b000010001111?????001?????0010011; + /* CSR Addresses */ + localparam logic [11:0] CSR_FFLAGS = 12'h1; + localparam logic [11:0] CSR_FRM = 12'h2; + localparam logic [11:0] CSR_FCSR = 12'h3; + localparam logic [11:0] CSR_VSTART = 12'h8; + localparam logic [11:0] CSR_VXSAT = 12'h9; + localparam logic [11:0] CSR_VXRM = 12'ha; + localparam logic [11:0] CSR_VCSR = 12'hf; + localparam logic [11:0] CSR_SSP = 12'h11; + localparam logic [11:0] CSR_SEED = 12'h15; + localparam logic [11:0] CSR_JVT = 12'h17; + localparam logic [11:0] CSR_CYCLE = 12'hc00; + localparam logic [11:0] CSR_TIME = 12'hc01; + localparam logic [11:0] CSR_INSTRET = 12'hc02; + localparam logic [11:0] CSR_HPMCOUNTER3 = 12'hc03; + localparam logic [11:0] CSR_HPMCOUNTER4 = 12'hc04; + localparam logic [11:0] CSR_HPMCOUNTER5 = 12'hc05; + localparam logic [11:0] CSR_HPMCOUNTER6 = 12'hc06; + localparam logic [11:0] CSR_HPMCOUNTER7 = 12'hc07; + localparam logic [11:0] CSR_HPMCOUNTER8 = 12'hc08; + localparam logic [11:0] CSR_HPMCOUNTER9 = 12'hc09; + localparam logic [11:0] CSR_HPMCOUNTER10 = 12'hc0a; + localparam logic [11:0] CSR_HPMCOUNTER11 = 12'hc0b; + localparam logic [11:0] CSR_HPMCOUNTER12 = 12'hc0c; + localparam logic [11:0] CSR_HPMCOUNTER13 = 12'hc0d; + localparam logic [11:0] CSR_HPMCOUNTER14 = 12'hc0e; + localparam logic [11:0] CSR_HPMCOUNTER15 = 12'hc0f; + localparam logic [11:0] CSR_HPMCOUNTER16 = 12'hc10; + localparam logic [11:0] CSR_HPMCOUNTER17 = 12'hc11; + localparam logic [11:0] CSR_HPMCOUNTER18 = 12'hc12; + localparam logic [11:0] CSR_HPMCOUNTER19 = 12'hc13; + localparam logic [11:0] CSR_HPMCOUNTER20 = 12'hc14; + localparam logic [11:0] CSR_HPMCOUNTER21 = 12'hc15; + localparam logic [11:0] CSR_HPMCOUNTER22 = 12'hc16; + localparam logic [11:0] CSR_HPMCOUNTER23 = 12'hc17; + localparam logic [11:0] CSR_HPMCOUNTER24 = 12'hc18; + localparam logic [11:0] CSR_HPMCOUNTER25 = 12'hc19; + localparam logic [11:0] CSR_HPMCOUNTER26 = 12'hc1a; + localparam logic [11:0] CSR_HPMCOUNTER27 = 12'hc1b; + localparam logic [11:0] CSR_HPMCOUNTER28 = 12'hc1c; + localparam logic [11:0] CSR_HPMCOUNTER29 = 12'hc1d; + localparam logic [11:0] CSR_HPMCOUNTER30 = 12'hc1e; + localparam logic [11:0] CSR_HPMCOUNTER31 = 12'hc1f; + localparam logic [11:0] CSR_VL = 12'hc20; + localparam logic [11:0] CSR_VTYPE = 12'hc21; + localparam logic [11:0] CSR_VLENB = 12'hc22; + localparam logic [11:0] CSR_SSTATUS = 12'h100; + localparam logic [11:0] CSR_SEDELEG = 12'h102; + localparam logic [11:0] CSR_SIDELEG = 12'h103; + localparam logic [11:0] CSR_SIE = 12'h104; + localparam logic [11:0] CSR_STVEC = 12'h105; + localparam logic [11:0] CSR_SCOUNTEREN = 12'h106; + localparam logic [11:0] CSR_SENVCFG = 12'h10a; + localparam logic [11:0] CSR_SSTATEEN0 = 12'h10c; + localparam logic [11:0] CSR_SSTATEEN1 = 12'h10d; + localparam logic [11:0] CSR_SSTATEEN2 = 12'h10e; + localparam logic [11:0] CSR_SSTATEEN3 = 12'h10f; + localparam logic [11:0] CSR_SCOUNTINHIBIT = 12'h120; + localparam logic [11:0] CSR_SSCRATCH = 12'h140; + localparam logic [11:0] CSR_SEPC = 12'h141; + localparam logic [11:0] CSR_SCAUSE = 12'h142; + localparam logic [11:0] CSR_STVAL = 12'h143; + localparam logic [11:0] CSR_SIP = 12'h144; + localparam logic [11:0] CSR_STIMECMP = 12'h14d; + localparam logic [11:0] CSR_SCTRCTL = 12'h14e; + localparam logic [11:0] CSR_SCTRSTATUS = 12'h14f; + localparam logic [11:0] CSR_SISELECT = 12'h150; + localparam logic [11:0] CSR_SIREG = 12'h151; + localparam logic [11:0] CSR_SIREG2 = 12'h152; + localparam logic [11:0] CSR_SIREG3 = 12'h153; + localparam logic [11:0] CSR_SIREG4 = 12'h155; + localparam logic [11:0] CSR_SIREG5 = 12'h156; + localparam logic [11:0] CSR_SIREG6 = 12'h157; + localparam logic [11:0] CSR_STOPEI = 12'h15c; + localparam logic [11:0] CSR_SCTRDEPTH = 12'h15f; + localparam logic [11:0] CSR_SATP = 12'h180; + localparam logic [11:0] CSR_SRMCFG = 12'h181; + localparam logic [11:0] CSR_SCONTEXT = 12'h5a8; + localparam logic [11:0] CSR_VSSTATUS = 12'h200; + localparam logic [11:0] CSR_VSIE = 12'h204; + localparam logic [11:0] CSR_VSTVEC = 12'h205; + localparam logic [11:0] CSR_VSSCRATCH = 12'h240; + localparam logic [11:0] CSR_VSEPC = 12'h241; + localparam logic [11:0] CSR_VSCAUSE = 12'h242; + localparam logic [11:0] CSR_VSTVAL = 12'h243; + localparam logic [11:0] CSR_VSIP = 12'h244; + localparam logic [11:0] CSR_VSTIMECMP = 12'h24d; + localparam logic [11:0] CSR_VSCTRCTL = 12'h24e; + localparam logic [11:0] CSR_VSISELECT = 12'h250; + localparam logic [11:0] CSR_VSIREG = 12'h251; + localparam logic [11:0] CSR_VSIREG2 = 12'h252; + localparam logic [11:0] CSR_VSIREG3 = 12'h253; + localparam logic [11:0] CSR_VSIREG4 = 12'h255; + localparam logic [11:0] CSR_VSIREG5 = 12'h256; + localparam logic [11:0] CSR_VSIREG6 = 12'h257; + localparam logic [11:0] CSR_VSTOPEI = 12'h25c; + localparam logic [11:0] CSR_VSATP = 12'h280; + localparam logic [11:0] CSR_HSTATUS = 12'h600; + localparam logic [11:0] CSR_HEDELEG = 12'h602; + localparam logic [11:0] CSR_HIDELEG = 12'h603; + localparam logic [11:0] CSR_HIE = 12'h604; + localparam logic [11:0] CSR_HTIMEDELTA = 12'h605; + localparam logic [11:0] CSR_HCOUNTEREN = 12'h606; + localparam logic [11:0] CSR_HGEIE = 12'h607; + localparam logic [11:0] CSR_HVIEN = 12'h608; + localparam logic [11:0] CSR_HVICTL = 12'h609; + localparam logic [11:0] CSR_HENVCFG = 12'h60a; + localparam logic [11:0] CSR_HSTATEEN0 = 12'h60c; + localparam logic [11:0] CSR_HSTATEEN1 = 12'h60d; + localparam logic [11:0] CSR_HSTATEEN2 = 12'h60e; + localparam logic [11:0] CSR_HSTATEEN3 = 12'h60f; + localparam logic [11:0] CSR_HTVAL = 12'h643; + localparam logic [11:0] CSR_HIP = 12'h644; + localparam logic [11:0] CSR_HVIP = 12'h645; + localparam logic [11:0] CSR_HVIPRIO1 = 12'h646; + localparam logic [11:0] CSR_HVIPRIO2 = 12'h647; + localparam logic [11:0] CSR_HTINST = 12'h64a; + localparam logic [11:0] CSR_HGATP = 12'h680; + localparam logic [11:0] CSR_HCONTEXT = 12'h6a8; + localparam logic [11:0] CSR_HGEIP = 12'he12; + localparam logic [11:0] CSR_VSTOPI = 12'heb0; + localparam logic [11:0] CSR_SCOUNTOVF = 12'hda0; + localparam logic [11:0] CSR_STOPI = 12'hdb0; + localparam logic [11:0] CSR_UTVT = 12'h7; + localparam logic [11:0] CSR_UNXTI = 12'h45; + localparam logic [11:0] CSR_UINTSTATUS = 12'h46; + localparam logic [11:0] CSR_USCRATCHCSW = 12'h48; + localparam logic [11:0] CSR_USCRATCHCSWL = 12'h49; + localparam logic [11:0] CSR_STVT = 12'h107; + localparam logic [11:0] CSR_SNXTI = 12'h145; + localparam logic [11:0] CSR_SINTSTATUS = 12'h146; + localparam logic [11:0] CSR_SSCRATCHCSW = 12'h148; + localparam logic [11:0] CSR_SSCRATCHCSWL = 12'h149; + localparam logic [11:0] CSR_MTVT = 12'h307; + localparam logic [11:0] CSR_MNXTI = 12'h345; + localparam logic [11:0] CSR_MINTSTATUS = 12'h346; + localparam logic [11:0] CSR_MSCRATCHCSW = 12'h348; + localparam logic [11:0] CSR_MSCRATCHCSWL = 12'h349; + localparam logic [11:0] CSR_MSTATUS = 12'h300; + localparam logic [11:0] CSR_MISA = 12'h301; + localparam logic [11:0] CSR_MEDELEG = 12'h302; + localparam logic [11:0] CSR_MIDELEG = 12'h303; + localparam logic [11:0] CSR_MIE = 12'h304; + localparam logic [11:0] CSR_MTVEC = 12'h305; + localparam logic [11:0] CSR_MCOUNTEREN = 12'h306; + localparam logic [11:0] CSR_MVIEN = 12'h308; + localparam logic [11:0] CSR_MVIP = 12'h309; + localparam logic [11:0] CSR_MENVCFG = 12'h30a; + localparam logic [11:0] CSR_MSTATEEN0 = 12'h30c; + localparam logic [11:0] CSR_MSTATEEN1 = 12'h30d; + localparam logic [11:0] CSR_MSTATEEN2 = 12'h30e; + localparam logic [11:0] CSR_MSTATEEN3 = 12'h30f; + localparam logic [11:0] CSR_MCOUNTINHIBIT = 12'h320; + localparam logic [11:0] CSR_MSCRATCH = 12'h340; + localparam logic [11:0] CSR_MEPC = 12'h341; + localparam logic [11:0] CSR_MCAUSE = 12'h342; + localparam logic [11:0] CSR_MTVAL = 12'h343; + localparam logic [11:0] CSR_MIP = 12'h344; + localparam logic [11:0] CSR_MTINST = 12'h34a; + localparam logic [11:0] CSR_MTVAL2 = 12'h34b; + localparam logic [11:0] CSR_MCTRCTL = 12'h34e; + localparam logic [11:0] CSR_MISELECT = 12'h350; + localparam logic [11:0] CSR_MIREG = 12'h351; + localparam logic [11:0] CSR_MIREG2 = 12'h352; + localparam logic [11:0] CSR_MIREG3 = 12'h353; + localparam logic [11:0] CSR_MIREG4 = 12'h355; + localparam logic [11:0] CSR_MIREG5 = 12'h356; + localparam logic [11:0] CSR_MIREG6 = 12'h357; + localparam logic [11:0] CSR_MTOPEI = 12'h35c; + localparam logic [11:0] CSR_PMPCFG0 = 12'h3a0; + localparam logic [11:0] CSR_PMPCFG1 = 12'h3a1; + localparam logic [11:0] CSR_PMPCFG2 = 12'h3a2; + localparam logic [11:0] CSR_PMPCFG3 = 12'h3a3; + localparam logic [11:0] CSR_PMPCFG4 = 12'h3a4; + localparam logic [11:0] CSR_PMPCFG5 = 12'h3a5; + localparam logic [11:0] CSR_PMPCFG6 = 12'h3a6; + localparam logic [11:0] CSR_PMPCFG7 = 12'h3a7; + localparam logic [11:0] CSR_PMPCFG8 = 12'h3a8; + localparam logic [11:0] CSR_PMPCFG9 = 12'h3a9; + localparam logic [11:0] CSR_PMPCFG10 = 12'h3aa; + localparam logic [11:0] CSR_PMPCFG11 = 12'h3ab; + localparam logic [11:0] CSR_PMPCFG12 = 12'h3ac; + localparam logic [11:0] CSR_PMPCFG13 = 12'h3ad; + localparam logic [11:0] CSR_PMPCFG14 = 12'h3ae; + localparam logic [11:0] CSR_PMPCFG15 = 12'h3af; + localparam logic [11:0] CSR_PMPADDR0 = 12'h3b0; + localparam logic [11:0] CSR_PMPADDR1 = 12'h3b1; + localparam logic [11:0] CSR_PMPADDR2 = 12'h3b2; + localparam logic [11:0] CSR_PMPADDR3 = 12'h3b3; + localparam logic [11:0] CSR_PMPADDR4 = 12'h3b4; + localparam logic [11:0] CSR_PMPADDR5 = 12'h3b5; + localparam logic [11:0] CSR_PMPADDR6 = 12'h3b6; + localparam logic [11:0] CSR_PMPADDR7 = 12'h3b7; + localparam logic [11:0] CSR_PMPADDR8 = 12'h3b8; + localparam logic [11:0] CSR_PMPADDR9 = 12'h3b9; + localparam logic [11:0] CSR_PMPADDR10 = 12'h3ba; + localparam logic [11:0] CSR_PMPADDR11 = 12'h3bb; + localparam logic [11:0] CSR_PMPADDR12 = 12'h3bc; + localparam logic [11:0] CSR_PMPADDR13 = 12'h3bd; + localparam logic [11:0] CSR_PMPADDR14 = 12'h3be; + localparam logic [11:0] CSR_PMPADDR15 = 12'h3bf; + localparam logic [11:0] CSR_PMPADDR16 = 12'h3c0; + localparam logic [11:0] CSR_PMPADDR17 = 12'h3c1; + localparam logic [11:0] CSR_PMPADDR18 = 12'h3c2; + localparam logic [11:0] CSR_PMPADDR19 = 12'h3c3; + localparam logic [11:0] CSR_PMPADDR20 = 12'h3c4; + localparam logic [11:0] CSR_PMPADDR21 = 12'h3c5; + localparam logic [11:0] CSR_PMPADDR22 = 12'h3c6; + localparam logic [11:0] CSR_PMPADDR23 = 12'h3c7; + localparam logic [11:0] CSR_PMPADDR24 = 12'h3c8; + localparam logic [11:0] CSR_PMPADDR25 = 12'h3c9; + localparam logic [11:0] CSR_PMPADDR26 = 12'h3ca; + localparam logic [11:0] CSR_PMPADDR27 = 12'h3cb; + localparam logic [11:0] CSR_PMPADDR28 = 12'h3cc; + localparam logic [11:0] CSR_PMPADDR29 = 12'h3cd; + localparam logic [11:0] CSR_PMPADDR30 = 12'h3ce; + localparam logic [11:0] CSR_PMPADDR31 = 12'h3cf; + localparam logic [11:0] CSR_PMPADDR32 = 12'h3d0; + localparam logic [11:0] CSR_PMPADDR33 = 12'h3d1; + localparam logic [11:0] CSR_PMPADDR34 = 12'h3d2; + localparam logic [11:0] CSR_PMPADDR35 = 12'h3d3; + localparam logic [11:0] CSR_PMPADDR36 = 12'h3d4; + localparam logic [11:0] CSR_PMPADDR37 = 12'h3d5; + localparam logic [11:0] CSR_PMPADDR38 = 12'h3d6; + localparam logic [11:0] CSR_PMPADDR39 = 12'h3d7; + localparam logic [11:0] CSR_PMPADDR40 = 12'h3d8; + localparam logic [11:0] CSR_PMPADDR41 = 12'h3d9; + localparam logic [11:0] CSR_PMPADDR42 = 12'h3da; + localparam logic [11:0] CSR_PMPADDR43 = 12'h3db; + localparam logic [11:0] CSR_PMPADDR44 = 12'h3dc; + localparam logic [11:0] CSR_PMPADDR45 = 12'h3dd; + localparam logic [11:0] CSR_PMPADDR46 = 12'h3de; + localparam logic [11:0] CSR_PMPADDR47 = 12'h3df; + localparam logic [11:0] CSR_PMPADDR48 = 12'h3e0; + localparam logic [11:0] CSR_PMPADDR49 = 12'h3e1; + localparam logic [11:0] CSR_PMPADDR50 = 12'h3e2; + localparam logic [11:0] CSR_PMPADDR51 = 12'h3e3; + localparam logic [11:0] CSR_PMPADDR52 = 12'h3e4; + localparam logic [11:0] CSR_PMPADDR53 = 12'h3e5; + localparam logic [11:0] CSR_PMPADDR54 = 12'h3e6; + localparam logic [11:0] CSR_PMPADDR55 = 12'h3e7; + localparam logic [11:0] CSR_PMPADDR56 = 12'h3e8; + localparam logic [11:0] CSR_PMPADDR57 = 12'h3e9; + localparam logic [11:0] CSR_PMPADDR58 = 12'h3ea; + localparam logic [11:0] CSR_PMPADDR59 = 12'h3eb; + localparam logic [11:0] CSR_PMPADDR60 = 12'h3ec; + localparam logic [11:0] CSR_PMPADDR61 = 12'h3ed; + localparam logic [11:0] CSR_PMPADDR62 = 12'h3ee; + localparam logic [11:0] CSR_PMPADDR63 = 12'h3ef; + localparam logic [11:0] CSR_MSECCFG = 12'h747; + localparam logic [11:0] CSR_TSELECT = 12'h7a0; + localparam logic [11:0] CSR_TDATA1 = 12'h7a1; + localparam logic [11:0] CSR_TDATA2 = 12'h7a2; + localparam logic [11:0] CSR_TDATA3 = 12'h7a3; + localparam logic [11:0] CSR_TINFO = 12'h7a4; + localparam logic [11:0] CSR_TCONTROL = 12'h7a5; + localparam logic [11:0] CSR_MCONTEXT = 12'h7a8; + localparam logic [11:0] CSR_MSCONTEXT = 12'h7aa; + localparam logic [11:0] CSR_DCSR = 12'h7b0; + localparam logic [11:0] CSR_DPC = 12'h7b1; + localparam logic [11:0] CSR_DSCRATCH0 = 12'h7b2; + localparam logic [11:0] CSR_DSCRATCH1 = 12'h7b3; + localparam logic [11:0] CSR_MCYCLE = 12'hb00; + localparam logic [11:0] CSR_MINSTRET = 12'hb02; + localparam logic [11:0] CSR_MHPMCOUNTER3 = 12'hb03; + localparam logic [11:0] CSR_MHPMCOUNTER4 = 12'hb04; + localparam logic [11:0] CSR_MHPMCOUNTER5 = 12'hb05; + localparam logic [11:0] CSR_MHPMCOUNTER6 = 12'hb06; + localparam logic [11:0] CSR_MHPMCOUNTER7 = 12'hb07; + localparam logic [11:0] CSR_MHPMCOUNTER8 = 12'hb08; + localparam logic [11:0] CSR_MHPMCOUNTER9 = 12'hb09; + localparam logic [11:0] CSR_MHPMCOUNTER10 = 12'hb0a; + localparam logic [11:0] CSR_MHPMCOUNTER11 = 12'hb0b; + localparam logic [11:0] CSR_MHPMCOUNTER12 = 12'hb0c; + localparam logic [11:0] CSR_MHPMCOUNTER13 = 12'hb0d; + localparam logic [11:0] CSR_MHPMCOUNTER14 = 12'hb0e; + localparam logic [11:0] CSR_MHPMCOUNTER15 = 12'hb0f; + localparam logic [11:0] CSR_MHPMCOUNTER16 = 12'hb10; + localparam logic [11:0] CSR_MHPMCOUNTER17 = 12'hb11; + localparam logic [11:0] CSR_MHPMCOUNTER18 = 12'hb12; + localparam logic [11:0] CSR_MHPMCOUNTER19 = 12'hb13; + localparam logic [11:0] CSR_MHPMCOUNTER20 = 12'hb14; + localparam logic [11:0] CSR_MHPMCOUNTER21 = 12'hb15; + localparam logic [11:0] CSR_MHPMCOUNTER22 = 12'hb16; + localparam logic [11:0] CSR_MHPMCOUNTER23 = 12'hb17; + localparam logic [11:0] CSR_MHPMCOUNTER24 = 12'hb18; + localparam logic [11:0] CSR_MHPMCOUNTER25 = 12'hb19; + localparam logic [11:0] CSR_MHPMCOUNTER26 = 12'hb1a; + localparam logic [11:0] CSR_MHPMCOUNTER27 = 12'hb1b; + localparam logic [11:0] CSR_MHPMCOUNTER28 = 12'hb1c; + localparam logic [11:0] CSR_MHPMCOUNTER29 = 12'hb1d; + localparam logic [11:0] CSR_MHPMCOUNTER30 = 12'hb1e; + localparam logic [11:0] CSR_MHPMCOUNTER31 = 12'hb1f; + localparam logic [11:0] CSR_MCYCLECFG = 12'h321; + localparam logic [11:0] CSR_MINSTRETCFG = 12'h322; + localparam logic [11:0] CSR_MHPMEVENT3 = 12'h323; + localparam logic [11:0] CSR_MHPMEVENT4 = 12'h324; + localparam logic [11:0] CSR_MHPMEVENT5 = 12'h325; + localparam logic [11:0] CSR_MHPMEVENT6 = 12'h326; + localparam logic [11:0] CSR_MHPMEVENT7 = 12'h327; + localparam logic [11:0] CSR_MHPMEVENT8 = 12'h328; + localparam logic [11:0] CSR_MHPMEVENT9 = 12'h329; + localparam logic [11:0] CSR_MHPMEVENT10 = 12'h32a; + localparam logic [11:0] CSR_MHPMEVENT11 = 12'h32b; + localparam logic [11:0] CSR_MHPMEVENT12 = 12'h32c; + localparam logic [11:0] CSR_MHPMEVENT13 = 12'h32d; + localparam logic [11:0] CSR_MHPMEVENT14 = 12'h32e; + localparam logic [11:0] CSR_MHPMEVENT15 = 12'h32f; + localparam logic [11:0] CSR_MHPMEVENT16 = 12'h330; + localparam logic [11:0] CSR_MHPMEVENT17 = 12'h331; + localparam logic [11:0] CSR_MHPMEVENT18 = 12'h332; + localparam logic [11:0] CSR_MHPMEVENT19 = 12'h333; + localparam logic [11:0] CSR_MHPMEVENT20 = 12'h334; + localparam logic [11:0] CSR_MHPMEVENT21 = 12'h335; + localparam logic [11:0] CSR_MHPMEVENT22 = 12'h336; + localparam logic [11:0] CSR_MHPMEVENT23 = 12'h337; + localparam logic [11:0] CSR_MHPMEVENT24 = 12'h338; + localparam logic [11:0] CSR_MHPMEVENT25 = 12'h339; + localparam logic [11:0] CSR_MHPMEVENT26 = 12'h33a; + localparam logic [11:0] CSR_MHPMEVENT27 = 12'h33b; + localparam logic [11:0] CSR_MHPMEVENT28 = 12'h33c; + localparam logic [11:0] CSR_MHPMEVENT29 = 12'h33d; + localparam logic [11:0] CSR_MHPMEVENT30 = 12'h33e; + localparam logic [11:0] CSR_MHPMEVENT31 = 12'h33f; + localparam logic [11:0] CSR_MVENDORID = 12'hf11; + localparam logic [11:0] CSR_MARCHID = 12'hf12; + localparam logic [11:0] CSR_MIMPID = 12'hf13; + localparam logic [11:0] CSR_MHARTID = 12'hf14; + localparam logic [11:0] CSR_MCONFIGPTR = 12'hf15; + localparam logic [11:0] CSR_MTOPI = 12'hfb0; + localparam logic [11:0] CSR_SIEH = 12'h114; + localparam logic [11:0] CSR_SIPH = 12'h154; + localparam logic [11:0] CSR_STIMECMPH = 12'h15d; + localparam logic [11:0] CSR_VSIEH = 12'h214; + localparam logic [11:0] CSR_VSIPH = 12'h254; + localparam logic [11:0] CSR_VSTIMECMPH = 12'h25d; + localparam logic [11:0] CSR_HEDELEGH = 12'h612; + localparam logic [11:0] CSR_HTIMEDELTAH = 12'h615; + localparam logic [11:0] CSR_HIDELEGH = 12'h613; + localparam logic [11:0] CSR_HVIENH = 12'h618; + localparam logic [11:0] CSR_HENVCFGH = 12'h61a; + localparam logic [11:0] CSR_HVIPH = 12'h655; + localparam logic [11:0] CSR_HVIPRIO1H = 12'h656; + localparam logic [11:0] CSR_HVIPRIO2H = 12'h657; + localparam logic [11:0] CSR_HSTATEEN0H = 12'h61c; + localparam logic [11:0] CSR_HSTATEEN1H = 12'h61d; + localparam logic [11:0] CSR_HSTATEEN2H = 12'h61e; + localparam logic [11:0] CSR_HSTATEEN3H = 12'h61f; + localparam logic [11:0] CSR_CYCLEH = 12'hc80; + localparam logic [11:0] CSR_TIMEH = 12'hc81; + localparam logic [11:0] CSR_INSTRETH = 12'hc82; + localparam logic [11:0] CSR_HPMCOUNTER3H = 12'hc83; + localparam logic [11:0] CSR_HPMCOUNTER4H = 12'hc84; + localparam logic [11:0] CSR_HPMCOUNTER5H = 12'hc85; + localparam logic [11:0] CSR_HPMCOUNTER6H = 12'hc86; + localparam logic [11:0] CSR_HPMCOUNTER7H = 12'hc87; + localparam logic [11:0] CSR_HPMCOUNTER8H = 12'hc88; + localparam logic [11:0] CSR_HPMCOUNTER9H = 12'hc89; + localparam logic [11:0] CSR_HPMCOUNTER10H = 12'hc8a; + localparam logic [11:0] CSR_HPMCOUNTER11H = 12'hc8b; + localparam logic [11:0] CSR_HPMCOUNTER12H = 12'hc8c; + localparam logic [11:0] CSR_HPMCOUNTER13H = 12'hc8d; + localparam logic [11:0] CSR_HPMCOUNTER14H = 12'hc8e; + localparam logic [11:0] CSR_HPMCOUNTER15H = 12'hc8f; + localparam logic [11:0] CSR_HPMCOUNTER16H = 12'hc90; + localparam logic [11:0] CSR_HPMCOUNTER17H = 12'hc91; + localparam logic [11:0] CSR_HPMCOUNTER18H = 12'hc92; + localparam logic [11:0] CSR_HPMCOUNTER19H = 12'hc93; + localparam logic [11:0] CSR_HPMCOUNTER20H = 12'hc94; + localparam logic [11:0] CSR_HPMCOUNTER21H = 12'hc95; + localparam logic [11:0] CSR_HPMCOUNTER22H = 12'hc96; + localparam logic [11:0] CSR_HPMCOUNTER23H = 12'hc97; + localparam logic [11:0] CSR_HPMCOUNTER24H = 12'hc98; + localparam logic [11:0] CSR_HPMCOUNTER25H = 12'hc99; + localparam logic [11:0] CSR_HPMCOUNTER26H = 12'hc9a; + localparam logic [11:0] CSR_HPMCOUNTER27H = 12'hc9b; + localparam logic [11:0] CSR_HPMCOUNTER28H = 12'hc9c; + localparam logic [11:0] CSR_HPMCOUNTER29H = 12'hc9d; + localparam logic [11:0] CSR_HPMCOUNTER30H = 12'hc9e; + localparam logic [11:0] CSR_HPMCOUNTER31H = 12'hc9f; + localparam logic [11:0] CSR_MSTATUSH = 12'h310; + localparam logic [11:0] CSR_MIDELEGH = 12'h313; + localparam logic [11:0] CSR_MIEH = 12'h314; + localparam logic [11:0] CSR_MVIENH = 12'h318; + localparam logic [11:0] CSR_MVIPH = 12'h319; + localparam logic [11:0] CSR_MENVCFGH = 12'h31a; + localparam logic [11:0] CSR_MSTATEEN0H = 12'h31c; + localparam logic [11:0] CSR_MSTATEEN1H = 12'h31d; + localparam logic [11:0] CSR_MSTATEEN2H = 12'h31e; + localparam logic [11:0] CSR_MSTATEEN3H = 12'h31f; + localparam logic [11:0] CSR_MIPH = 12'h354; + localparam logic [11:0] CSR_MCYCLECFGH = 12'h721; + localparam logic [11:0] CSR_MINSTRETCFGH = 12'h722; + localparam logic [11:0] CSR_MHPMEVENT3H = 12'h723; + localparam logic [11:0] CSR_MHPMEVENT4H = 12'h724; + localparam logic [11:0] CSR_MHPMEVENT5H = 12'h725; + localparam logic [11:0] CSR_MHPMEVENT6H = 12'h726; + localparam logic [11:0] CSR_MHPMEVENT7H = 12'h727; + localparam logic [11:0] CSR_MHPMEVENT8H = 12'h728; + localparam logic [11:0] CSR_MHPMEVENT9H = 12'h729; + localparam logic [11:0] CSR_MHPMEVENT10H = 12'h72a; + localparam logic [11:0] CSR_MHPMEVENT11H = 12'h72b; + localparam logic [11:0] CSR_MHPMEVENT12H = 12'h72c; + localparam logic [11:0] CSR_MHPMEVENT13H = 12'h72d; + localparam logic [11:0] CSR_MHPMEVENT14H = 12'h72e; + localparam logic [11:0] CSR_MHPMEVENT15H = 12'h72f; + localparam logic [11:0] CSR_MHPMEVENT16H = 12'h730; + localparam logic [11:0] CSR_MHPMEVENT17H = 12'h731; + localparam logic [11:0] CSR_MHPMEVENT18H = 12'h732; + localparam logic [11:0] CSR_MHPMEVENT19H = 12'h733; + localparam logic [11:0] CSR_MHPMEVENT20H = 12'h734; + localparam logic [11:0] CSR_MHPMEVENT21H = 12'h735; + localparam logic [11:0] CSR_MHPMEVENT22H = 12'h736; + localparam logic [11:0] CSR_MHPMEVENT23H = 12'h737; + localparam logic [11:0] CSR_MHPMEVENT24H = 12'h738; + localparam logic [11:0] CSR_MHPMEVENT25H = 12'h739; + localparam logic [11:0] CSR_MHPMEVENT26H = 12'h73a; + localparam logic [11:0] CSR_MHPMEVENT27H = 12'h73b; + localparam logic [11:0] CSR_MHPMEVENT28H = 12'h73c; + localparam logic [11:0] CSR_MHPMEVENT29H = 12'h73d; + localparam logic [11:0] CSR_MHPMEVENT30H = 12'h73e; + localparam logic [11:0] CSR_MHPMEVENT31H = 12'h73f; + localparam logic [11:0] CSR_MNSCRATCH = 12'h740; + localparam logic [11:0] CSR_MNEPC = 12'h741; + localparam logic [11:0] CSR_MNCAUSE = 12'h742; + localparam logic [11:0] CSR_MNSTATUS = 12'h744; + localparam logic [11:0] CSR_MSECCFGH = 12'h757; + localparam logic [11:0] CSR_MCYCLEH = 12'hb80; + localparam logic [11:0] CSR_MINSTRETH = 12'hb82; + localparam logic [11:0] CSR_MHPMCOUNTER3H = 12'hb83; + localparam logic [11:0] CSR_MHPMCOUNTER4H = 12'hb84; + localparam logic [11:0] CSR_MHPMCOUNTER5H = 12'hb85; + localparam logic [11:0] CSR_MHPMCOUNTER6H = 12'hb86; + localparam logic [11:0] CSR_MHPMCOUNTER7H = 12'hb87; + localparam logic [11:0] CSR_MHPMCOUNTER8H = 12'hb88; + localparam logic [11:0] CSR_MHPMCOUNTER9H = 12'hb89; + localparam logic [11:0] CSR_MHPMCOUNTER10H = 12'hb8a; + localparam logic [11:0] CSR_MHPMCOUNTER11H = 12'hb8b; + localparam logic [11:0] CSR_MHPMCOUNTER12H = 12'hb8c; + localparam logic [11:0] CSR_MHPMCOUNTER13H = 12'hb8d; + localparam logic [11:0] CSR_MHPMCOUNTER14H = 12'hb8e; + localparam logic [11:0] CSR_MHPMCOUNTER15H = 12'hb8f; + localparam logic [11:0] CSR_MHPMCOUNTER16H = 12'hb90; + localparam logic [11:0] CSR_MHPMCOUNTER17H = 12'hb91; + localparam logic [11:0] CSR_MHPMCOUNTER18H = 12'hb92; + localparam logic [11:0] CSR_MHPMCOUNTER19H = 12'hb93; + localparam logic [11:0] CSR_MHPMCOUNTER20H = 12'hb94; + localparam logic [11:0] CSR_MHPMCOUNTER21H = 12'hb95; + localparam logic [11:0] CSR_MHPMCOUNTER22H = 12'hb96; + localparam logic [11:0] CSR_MHPMCOUNTER23H = 12'hb97; + localparam logic [11:0] CSR_MHPMCOUNTER24H = 12'hb98; + localparam logic [11:0] CSR_MHPMCOUNTER25H = 12'hb99; + localparam logic [11:0] CSR_MHPMCOUNTER26H = 12'hb9a; + localparam logic [11:0] CSR_MHPMCOUNTER27H = 12'hb9b; + localparam logic [11:0] CSR_MHPMCOUNTER28H = 12'hb9c; + localparam logic [11:0] CSR_MHPMCOUNTER29H = 12'hb9d; + localparam logic [11:0] CSR_MHPMCOUNTER30H = 12'hb9e; + localparam logic [11:0] CSR_MHPMCOUNTER31H = 12'hb9f; + +endpackage diff --git a/backends/opcodes_maker/output/instr-table.tex b/backends/opcodes_maker/output/instr-table.tex new file mode 100644 index 000000000..81e920d0f --- /dev/null +++ b/backends/opcodes_maker/output/instr-table.tex @@ -0,0 +1,2774 @@ + +\newpage + +\begin{table}[p] +\begin{small} +\begin{center} + \begin{tabular} {p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}l} + & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & \\ + + & + + \multicolumn{3}{l}{31} & + \multicolumn{2}{r}{27} & + \multicolumn{1}{c}{26} & + \multicolumn{1}{r}{25} & + \multicolumn{3}{l}{24} & + \multicolumn{2}{r}{20} & + \multicolumn{3}{l}{19} & + \multicolumn{2}{r}{15} & + \multicolumn{2}{l}{14} & + \multicolumn{1}{r}{12} & + \multicolumn{4}{l}{11} & + \multicolumn{1}{r}{7} & + \multicolumn{6}{l}{6} & + \multicolumn{1}{r}{0} \\ + \cline{2-33} +& + + +\multicolumn{7}{|c|}{funct7} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{funct3} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{opcode} & R-type \\ +\cline{2-33} +& + +\multicolumn{12}{|c|}{imm[11:0]} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{funct3} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{opcode} & I-type \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{imm[11:5]} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{funct3} & +\multicolumn{5}{c|}{imm[4:0]} & +\multicolumn{7}{|c|}{opcode} & S-type \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{imm[12$\vert$10:5]} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{funct3} & +\multicolumn{5}{c|}{imm[4:1$\vert$11]} & +\multicolumn{7}{|c|}{opcode} & B-type \\ +\cline{2-33} +& + +\multicolumn{20}{|c|}{imm[31:12]} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{opcode} & U-type \\ +\cline{2-33} +& + +\multicolumn{20}{|c|}{imm[20$\vert$10:1$\vert$11$\vert$19:12]} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{opcode} & J-type \\ +\cline{2-33} +& + + + + +\multicolumn{32}{c}{} & \\ +\multicolumn{32}{c}{\bf RV32I Base Instruction Set } & \\ +\cline{2-33} + + & +\multicolumn{20}{|c|}{imm[31:12]} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0110111} & LUI \\ +\cline{2-33} +& + +\multicolumn{20}{|c|}{imm[31:12]} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0010111} & AUIPC \\ +\cline{2-33} +& + +\multicolumn{20}{|c|}{imm[20$\vert$10:1$\vert$11$\vert$19:12]} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1101111} & JAL \\ +\cline{2-33} +& + +\multicolumn{12}{|c|}{imm[11:0]} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1100111} & JALR \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{imm[12$\vert$10:5]} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{imm[4:1$\vert$11]} & +\multicolumn{7}{|c|}{1100011} & BEQ \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{imm[12$\vert$10:5]} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{001} & +\multicolumn{5}{c|}{imm[4:1$\vert$11]} & +\multicolumn{7}{|c|}{1100011} & BNE \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{imm[12$\vert$10:5]} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{100} & +\multicolumn{5}{c|}{imm[4:1$\vert$11]} & +\multicolumn{7}{|c|}{1100011} & BLT \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{imm[12$\vert$10:5]} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{101} & +\multicolumn{5}{c|}{imm[4:1$\vert$11]} & +\multicolumn{7}{|c|}{1100011} & BGE \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{imm[12$\vert$10:5]} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{110} & +\multicolumn{5}{c|}{imm[4:1$\vert$11]} & +\multicolumn{7}{|c|}{1100011} & BLTU \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{imm[12$\vert$10:5]} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{111} & +\multicolumn{5}{c|}{imm[4:1$\vert$11]} & +\multicolumn{7}{|c|}{1100011} & BGEU \\ +\cline{2-33} +& + +\multicolumn{12}{|c|}{imm[11:0]} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0000011} & LB \\ +\cline{2-33} +& + +\multicolumn{12}{|c|}{imm[11:0]} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{001} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0000011} & LH \\ +\cline{2-33} +& + +\multicolumn{12}{|c|}{imm[11:0]} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{010} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0000011} & LW \\ +\cline{2-33} +& + +\multicolumn{12}{|c|}{imm[11:0]} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{100} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0000011} & LBU \\ +\cline{2-33} +& + +\multicolumn{12}{|c|}{imm[11:0]} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{101} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0000011} & LHU \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{imm[11:5]} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{imm[4:0]} & +\multicolumn{7}{|c|}{0100011} & SB \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{imm[11:5]} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{001} & +\multicolumn{5}{c|}{imm[4:0]} & +\multicolumn{7}{|c|}{0100011} & SH \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{imm[11:5]} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{010} & +\multicolumn{5}{c|}{imm[4:0]} & +\multicolumn{7}{|c|}{0100011} & SW \\ +\cline{2-33} +& + +\multicolumn{12}{|c|}{imm[11:0]} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0010011} & ADDI \\ +\cline{2-33} +& + +\multicolumn{12}{|c|}{imm[11:0]} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{010} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0010011} & SLTI \\ +\cline{2-33} +& + +\multicolumn{12}{|c|}{imm[11:0]} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{011} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0010011} & SLTIU \\ +\cline{2-33} +& + +\multicolumn{12}{|c|}{imm[11:0]} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{100} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0010011} & XORI \\ +\cline{2-33} +& + +\multicolumn{12}{|c|}{imm[11:0]} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{110} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0010011} & ORI \\ +\cline{2-33} +& + +\multicolumn{12}{|c|}{imm[11:0]} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{111} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0010011} & ANDI \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000000} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0110011} & ADD \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0100000} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0110011} & SUB \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000000} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{001} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0110011} & SLL \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000000} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{010} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0110011} & SLT \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000000} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{011} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0110011} & SLTU \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000000} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{100} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0110011} & XOR \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000000} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{101} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0110011} & SRL \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0100000} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{101} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0110011} & SRA \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000000} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{110} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0110011} & OR \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000000} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{111} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0110011} & AND \\ +\cline{2-33} +& + +\multicolumn{4}{|c|}{fm} & +\multicolumn{4}{c|}{pred} & +\multicolumn{4}{c|}{succ} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0001111} & FENCE \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000000} & +\multicolumn{5}{c|}{00000} & +\multicolumn{5}{c|}{00000} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{00000} & +\multicolumn{7}{|c|}{1110011} & ECALL \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000000} & +\multicolumn{5}{c|}{00001} & +\multicolumn{5}{c|}{00000} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{00000} & +\multicolumn{7}{|c|}{1110011} & EBREAK \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000000} & +\multicolumn{5}{c|}{shamt} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{001} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0010011} & SLLI \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000000} & +\multicolumn{5}{c|}{shamt} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{101} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0010011} & SRLI \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0100000} & +\multicolumn{5}{c|}{shamt} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{101} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0010011} & SRAI \\ +\cline{2-33} +& + + + +\multicolumn{7}{|c|}{1000001} & +\multicolumn{5}{c|}{10011} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0001111} & FENCE.TSO \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000000} & +\multicolumn{5}{c|}{10000} & +\multicolumn{5}{c|}{00000} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{00000} & +\multicolumn{7}{|c|}{0001111} & PAUSE \\ +\cline{2-33} +& + + + + +\end{tabular} +\end{center} +\end{small} + +\end{table} + +\newpage + +\begin{table}[p] +\begin{small} +\begin{center} + \begin{tabular} {p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}l} + & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & \\ + + & + + \multicolumn{3}{l}{31} & + \multicolumn{2}{r}{27} & + \multicolumn{1}{c}{26} & + \multicolumn{1}{r}{25} & + \multicolumn{3}{l}{24} & + \multicolumn{2}{r}{20} & + \multicolumn{3}{l}{19} & + \multicolumn{2}{r}{15} & + \multicolumn{2}{l}{14} & + \multicolumn{1}{r}{12} & + \multicolumn{4}{l}{11} & + \multicolumn{1}{r}{7} & + \multicolumn{6}{l}{6} & + \multicolumn{1}{r}{0} \\ + \cline{2-33} +& + + +\multicolumn{7}{|c|}{funct7} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{funct3} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{opcode} & R-type \\ +\cline{2-33} +& + +\multicolumn{12}{|c|}{imm[11:0]} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{funct3} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{opcode} & I-type \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{imm[11:5]} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{funct3} & +\multicolumn{5}{c|}{imm[4:0]} & +\multicolumn{7}{|c|}{opcode} & S-type \\ +\cline{2-33} +& + + + + +\multicolumn{32}{c}{} & \\ +\multicolumn{32}{c}{\bf RV64I Base Instruction Set (in addition to RV32I) } & \\ +\cline{2-33} + + & +\multicolumn{12}{|c|}{imm[11:0]} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{110} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0000011} & LWU \\ +\cline{2-33} +& + +\multicolumn{12}{|c|}{imm[11:0]} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{011} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0000011} & LD \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{imm[11:5]} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{011} & +\multicolumn{5}{c|}{imm[4:0]} & +\multicolumn{7}{|c|}{0100011} & SD \\ +\cline{2-33} +& + +\multicolumn{6}{|c|}{000000} & +\multicolumn{6}{c|}{shamt} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{001} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0010011} & SLLI \\ +\cline{2-33} +& + +\multicolumn{6}{|c|}{000000} & +\multicolumn{6}{c|}{shamt} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{101} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0010011} & SRLI \\ +\cline{2-33} +& + +\multicolumn{6}{|c|}{010000} & +\multicolumn{6}{c|}{shamt} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{101} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0010011} & SRAI \\ +\cline{2-33} +& + +\multicolumn{12}{|c|}{imm[11:0]} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0011011} & ADDIW \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000000} & +\multicolumn{5}{c|}{shamt} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{001} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0011011} & SLLIW \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000000} & +\multicolumn{5}{c|}{shamt} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{101} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0011011} & SRLIW \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0100000} & +\multicolumn{5}{c|}{shamt} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{101} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0011011} & SRAIW \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000000} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0111011} & ADDW \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0100000} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0111011} & SUBW \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000000} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{001} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0111011} & SLLW \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000000} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{101} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0111011} & SRLW \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0100000} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{101} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0111011} & SRAW \\ +\cline{2-33} +& + + + + +\multicolumn{32}{c}{} & \\ +\multicolumn{32}{c}{\bf RV32/RV64 Zifencei Standard Extension } & \\ +\cline{2-33} + + & +\multicolumn{12}{|c|}{imm[11:0]} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{001} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0001111} & FENCE.I \\ +\cline{2-33} +& + + + + +\multicolumn{32}{c}{} & \\ +\multicolumn{32}{c}{\bf RV32/RV64 Zicsr Standard Extension } & \\ +\cline{2-33} + + & +\multicolumn{12}{|c|}{csr} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{001} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1110011} & CSRRW \\ +\cline{2-33} +& + +\multicolumn{12}{|c|}{csr} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{010} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1110011} & CSRRS \\ +\cline{2-33} +& + +\multicolumn{12}{|c|}{csr} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{011} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1110011} & CSRRC \\ +\cline{2-33} +& + +\multicolumn{12}{|c|}{csr} & +\multicolumn{5}{c|}{uimm} & +\multicolumn{3}{c|}{101} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1110011} & CSRRWI \\ +\cline{2-33} +& + +\multicolumn{12}{|c|}{csr} & +\multicolumn{5}{c|}{uimm} & +\multicolumn{3}{c|}{110} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1110011} & CSRRSI \\ +\cline{2-33} +& + +\multicolumn{12}{|c|}{csr} & +\multicolumn{5}{c|}{uimm} & +\multicolumn{3}{c|}{111} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1110011} & CSRRCI \\ +\cline{2-33} +& + + + + +\multicolumn{32}{c}{} & \\ +\multicolumn{32}{c}{\bf RV32M Standard Extension } & \\ +\cline{2-33} + + & +\multicolumn{7}{|c|}{0000001} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0110011} & MUL \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000001} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{001} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0110011} & MULH \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000001} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{010} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0110011} & MULHSU \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000001} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{011} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0110011} & MULHU \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000001} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{100} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0110011} & DIV \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000001} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{101} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0110011} & DIVU \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000001} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{110} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0110011} & REM \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000001} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{111} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0110011} & REMU \\ +\cline{2-33} +& + + + + +\multicolumn{32}{c}{} & \\ +\multicolumn{32}{c}{\bf RV64M Standard Extension (in addition to RV32M) } & \\ +\cline{2-33} + + & +\multicolumn{7}{|c|}{0000001} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0111011} & MULW \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000001} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{100} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0111011} & DIVW \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000001} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{101} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0111011} & DIVUW \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000001} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{110} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0111011} & REMW \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000001} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{111} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0111011} & REMUW \\ +\cline{2-33} +& + + + + +\end{tabular} +\end{center} +\end{small} + +\end{table} + +\newpage + +\begin{table}[p] +\begin{small} +\begin{center} + \begin{tabular} {p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}l} + & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & \\ + + & + + \multicolumn{3}{l}{31} & + \multicolumn{2}{r}{27} & + \multicolumn{1}{c}{26} & + \multicolumn{1}{r}{25} & + \multicolumn{3}{l}{24} & + \multicolumn{2}{r}{20} & + \multicolumn{3}{l}{19} & + \multicolumn{2}{r}{15} & + \multicolumn{2}{l}{14} & + \multicolumn{1}{r}{12} & + \multicolumn{4}{l}{11} & + \multicolumn{1}{r}{7} & + \multicolumn{6}{l}{6} & + \multicolumn{1}{r}{0} \\ + \cline{2-33} +& + + +\multicolumn{7}{|c|}{funct7} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{funct3} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{opcode} & R-type \\ +\cline{2-33} +& + + + + +\multicolumn{32}{c}{} & \\ +\multicolumn{32}{c}{\bf RV32A Standard Extension } & \\ +\cline{2-33} + + & +\multicolumn{5}{|c|}{00010} & +\multicolumn{1}{c|}{aq} & +\multicolumn{1}{c|}{rl} & +\multicolumn{5}{c|}{00000} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{010} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0101111} & LR.W \\ +\cline{2-33} +& + +\multicolumn{5}{|c|}{00011} & +\multicolumn{1}{c|}{aq} & +\multicolumn{1}{c|}{rl} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{010} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0101111} & SC.W \\ +\cline{2-33} +& + +\multicolumn{5}{|c|}{00001} & +\multicolumn{1}{c|}{aq} & +\multicolumn{1}{c|}{rl} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{010} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0101111} & AMOSWAP.W \\ +\cline{2-33} +& + +\multicolumn{5}{|c|}{00000} & +\multicolumn{1}{c|}{aq} & +\multicolumn{1}{c|}{rl} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{010} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0101111} & AMOADD.W \\ +\cline{2-33} +& + +\multicolumn{5}{|c|}{00100} & +\multicolumn{1}{c|}{aq} & +\multicolumn{1}{c|}{rl} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{010} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0101111} & AMOXOR.W \\ +\cline{2-33} +& + +\multicolumn{5}{|c|}{01100} & +\multicolumn{1}{c|}{aq} & +\multicolumn{1}{c|}{rl} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{010} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0101111} & AMOAND.W \\ +\cline{2-33} +& + +\multicolumn{5}{|c|}{01000} & +\multicolumn{1}{c|}{aq} & +\multicolumn{1}{c|}{rl} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{010} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0101111} & AMOOR.W \\ +\cline{2-33} +& + +\multicolumn{5}{|c|}{10000} & +\multicolumn{1}{c|}{aq} & +\multicolumn{1}{c|}{rl} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{010} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0101111} & AMOMIN.W \\ +\cline{2-33} +& + +\multicolumn{5}{|c|}{10100} & +\multicolumn{1}{c|}{aq} & +\multicolumn{1}{c|}{rl} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{010} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0101111} & AMOMAX.W \\ +\cline{2-33} +& + +\multicolumn{5}{|c|}{11000} & +\multicolumn{1}{c|}{aq} & +\multicolumn{1}{c|}{rl} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{010} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0101111} & AMOMINU.W \\ +\cline{2-33} +& + +\multicolumn{5}{|c|}{11100} & +\multicolumn{1}{c|}{aq} & +\multicolumn{1}{c|}{rl} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{010} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0101111} & AMOMAXU.W \\ +\cline{2-33} +& + + + + +\multicolumn{32}{c}{} & \\ +\multicolumn{32}{c}{\bf RV64A Standard Extension (in addition to RV32A) } & \\ +\cline{2-33} + + & +\multicolumn{5}{|c|}{00010} & +\multicolumn{1}{c|}{aq} & +\multicolumn{1}{c|}{rl} & +\multicolumn{5}{c|}{00000} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{011} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0101111} & LR.D \\ +\cline{2-33} +& + +\multicolumn{5}{|c|}{00011} & +\multicolumn{1}{c|}{aq} & +\multicolumn{1}{c|}{rl} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{011} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0101111} & SC.D \\ +\cline{2-33} +& + +\multicolumn{5}{|c|}{00001} & +\multicolumn{1}{c|}{aq} & +\multicolumn{1}{c|}{rl} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{011} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0101111} & AMOSWAP.D \\ +\cline{2-33} +& + +\multicolumn{5}{|c|}{00000} & +\multicolumn{1}{c|}{aq} & +\multicolumn{1}{c|}{rl} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{011} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0101111} & AMOADD.D \\ +\cline{2-33} +& + +\multicolumn{5}{|c|}{00100} & +\multicolumn{1}{c|}{aq} & +\multicolumn{1}{c|}{rl} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{011} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0101111} & AMOXOR.D \\ +\cline{2-33} +& + +\multicolumn{5}{|c|}{01100} & +\multicolumn{1}{c|}{aq} & +\multicolumn{1}{c|}{rl} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{011} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0101111} & AMOAND.D \\ +\cline{2-33} +& + +\multicolumn{5}{|c|}{01000} & +\multicolumn{1}{c|}{aq} & +\multicolumn{1}{c|}{rl} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{011} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0101111} & AMOOR.D \\ +\cline{2-33} +& + +\multicolumn{5}{|c|}{10000} & +\multicolumn{1}{c|}{aq} & +\multicolumn{1}{c|}{rl} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{011} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0101111} & AMOMIN.D \\ +\cline{2-33} +& + +\multicolumn{5}{|c|}{10100} & +\multicolumn{1}{c|}{aq} & +\multicolumn{1}{c|}{rl} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{011} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0101111} & AMOMAX.D \\ +\cline{2-33} +& + +\multicolumn{5}{|c|}{11000} & +\multicolumn{1}{c|}{aq} & +\multicolumn{1}{c|}{rl} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{011} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0101111} & AMOMINU.D \\ +\cline{2-33} +& + +\multicolumn{5}{|c|}{11100} & +\multicolumn{1}{c|}{aq} & +\multicolumn{1}{c|}{rl} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{011} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0101111} & AMOMAXU.D \\ +\cline{2-33} +& + + + + +\end{tabular} +\end{center} +\end{small} + +\end{table} + +\newpage + +\begin{table}[p] +\begin{small} +\begin{center} + \begin{tabular} {p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}l} + & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & \\ + + & + + \multicolumn{3}{l}{31} & + \multicolumn{2}{r}{27} & + \multicolumn{1}{c}{26} & + \multicolumn{1}{r}{25} & + \multicolumn{3}{l}{24} & + \multicolumn{2}{r}{20} & + \multicolumn{3}{l}{19} & + \multicolumn{2}{r}{15} & + \multicolumn{2}{l}{14} & + \multicolumn{1}{r}{12} & + \multicolumn{4}{l}{11} & + \multicolumn{1}{r}{7} & + \multicolumn{6}{l}{6} & + \multicolumn{1}{r}{0} \\ + \cline{2-33} +& + + +\multicolumn{7}{|c|}{funct7} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{funct3} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{opcode} & R-type \\ +\cline{2-33} +& + +\multicolumn{5}{|c|}{rs3} & +\multicolumn{2}{c|}{funct2} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{funct3} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{opcode} & R4-type \\ +\cline{2-33} +& + +\multicolumn{12}{|c|}{imm[11:0]} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{funct3} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{opcode} & I-type \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{imm[11:5]} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{funct3} & +\multicolumn{5}{c|}{imm[4:0]} & +\multicolumn{7}{|c|}{opcode} & S-type \\ +\cline{2-33} +& + + + + +\multicolumn{32}{c}{} & \\ +\multicolumn{32}{c}{\bf RV32F Standard Extension } & \\ +\cline{2-33} + + & +\multicolumn{12}{|c|}{imm[11:0]} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{010} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0000111} & FLW \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{imm[11:5]} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{010} & +\multicolumn{5}{c|}{imm[4:0]} & +\multicolumn{7}{|c|}{0100111} & FSW \\ +\cline{2-33} +& + +\multicolumn{5}{|c|}{rs3} & +\multicolumn{2}{c|}{00} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1000011} & FMADD.S \\ +\cline{2-33} +& + +\multicolumn{5}{|c|}{rs3} & +\multicolumn{2}{c|}{00} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1000111} & FMSUB.S \\ +\cline{2-33} +& + +\multicolumn{5}{|c|}{rs3} & +\multicolumn{2}{c|}{00} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1001011} & FNMSUB.S \\ +\cline{2-33} +& + +\multicolumn{5}{|c|}{rs3} & +\multicolumn{2}{c|}{00} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1001111} & FNMADD.S \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000000} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FADD.S \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000100} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FSUB.S \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0001000} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FMUL.S \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0001100} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FDIV.S \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0101100} & +\multicolumn{5}{c|}{00000} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FSQRT.S \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0010000} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FSGNJ.S \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0010000} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{001} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FSGNJN.S \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0010000} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{010} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FSGNJX.S \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0010100} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FMIN.S \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0010100} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{001} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FMAX.S \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1100000} & +\multicolumn{5}{c|}{00000} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCVT.W.S \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1100000} & +\multicolumn{5}{c|}{00001} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCVT.WU.S \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1110000} & +\multicolumn{5}{c|}{00000} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FMV.X.W \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1010000} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{010} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FEQ.S \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1010000} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{001} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FLT.S \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1010000} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FLE.S \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1110000} & +\multicolumn{5}{c|}{00000} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{001} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCLASS.S \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1101000} & +\multicolumn{5}{c|}{00000} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCVT.S.W \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1101000} & +\multicolumn{5}{c|}{00001} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCVT.S.WU \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1111000} & +\multicolumn{5}{c|}{00000} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FMV.W.X \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000000} & +\multicolumn{5}{c|}{00001} & +\multicolumn{5}{c|}{00000} & +\multicolumn{3}{c|}{010} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1110011} & FRFLAGS \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000000} & +\multicolumn{5}{c|}{00001} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{001} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1110011} & FSFLAGS \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000000} & +\multicolumn{5}{c|}{00001} & +\multicolumn{5}{c|}{uimm} & +\multicolumn{3}{c|}{101} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1110011} & FSFLAGSI \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000000} & +\multicolumn{5}{c|}{00010} & +\multicolumn{5}{c|}{00000} & +\multicolumn{3}{c|}{010} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1110011} & FRRM \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000000} & +\multicolumn{5}{c|}{00010} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{001} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1110011} & FSRM \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000000} & +\multicolumn{5}{c|}{00010} & +\multicolumn{5}{c|}{uimm} & +\multicolumn{3}{c|}{101} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1110011} & FSRMI \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000000} & +\multicolumn{5}{c|}{00011} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{001} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1110011} & FSCSR \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000000} & +\multicolumn{5}{c|}{00011} & +\multicolumn{5}{c|}{00000} & +\multicolumn{3}{c|}{010} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1110011} & FRCSR \\ +\cline{2-33} +& + + + + +\multicolumn{32}{c}{} & \\ +\multicolumn{32}{c}{\bf RV64F Standard Extension (in addition to RV32F) } & \\ +\cline{2-33} + + & +\multicolumn{7}{|c|}{1100000} & +\multicolumn{5}{c|}{00010} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCVT.L.S \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1100000} & +\multicolumn{5}{c|}{00011} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCVT.LU.S \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1101000} & +\multicolumn{5}{c|}{00010} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCVT.S.L \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1101000} & +\multicolumn{5}{c|}{00011} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCVT.S.LU \\ +\cline{2-33} +& + + + + +\end{tabular} +\end{center} +\end{small} + +\end{table} + +\newpage + +\begin{table}[p] +\begin{small} +\begin{center} + \begin{tabular} {p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}l} + & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & \\ + + & + + \multicolumn{3}{l}{31} & + \multicolumn{2}{r}{27} & + \multicolumn{1}{c}{26} & + \multicolumn{1}{r}{25} & + \multicolumn{3}{l}{24} & + \multicolumn{2}{r}{20} & + \multicolumn{3}{l}{19} & + \multicolumn{2}{r}{15} & + \multicolumn{2}{l}{14} & + \multicolumn{1}{r}{12} & + \multicolumn{4}{l}{11} & + \multicolumn{1}{r}{7} & + \multicolumn{6}{l}{6} & + \multicolumn{1}{r}{0} \\ + \cline{2-33} +& + + +\multicolumn{7}{|c|}{funct7} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{funct3} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{opcode} & R-type \\ +\cline{2-33} +& + +\multicolumn{5}{|c|}{rs3} & +\multicolumn{2}{c|}{funct2} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{funct3} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{opcode} & R4-type \\ +\cline{2-33} +& + +\multicolumn{12}{|c|}{imm[11:0]} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{funct3} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{opcode} & I-type \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{imm[11:5]} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{funct3} & +\multicolumn{5}{c|}{imm[4:0]} & +\multicolumn{7}{|c|}{opcode} & S-type \\ +\cline{2-33} +& + + + + +\multicolumn{32}{c}{} & \\ +\multicolumn{32}{c}{\bf RV32D Standard Extension } & \\ +\cline{2-33} + + & +\multicolumn{12}{|c|}{imm[11:0]} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{011} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0000111} & FLD \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{imm[11:5]} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{011} & +\multicolumn{5}{c|}{imm[4:0]} & +\multicolumn{7}{|c|}{0100111} & FSD \\ +\cline{2-33} +& + +\multicolumn{5}{|c|}{rs3} & +\multicolumn{2}{c|}{01} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1000011} & FMADD.D \\ +\cline{2-33} +& + +\multicolumn{5}{|c|}{rs3} & +\multicolumn{2}{c|}{01} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1000111} & FMSUB.D \\ +\cline{2-33} +& + +\multicolumn{5}{|c|}{rs3} & +\multicolumn{2}{c|}{01} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1001011} & FNMSUB.D \\ +\cline{2-33} +& + +\multicolumn{5}{|c|}{rs3} & +\multicolumn{2}{c|}{01} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1001111} & FNMADD.D \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000001} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FADD.D \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000101} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FSUB.D \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0001001} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FMUL.D \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0001101} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FDIV.D \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0101101} & +\multicolumn{5}{c|}{00000} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FSQRT.D \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0010001} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FSGNJ.D \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0010001} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{001} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FSGNJN.D \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0010001} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{010} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FSGNJX.D \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0010101} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FMIN.D \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0010101} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{001} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FMAX.D \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0100000} & +\multicolumn{5}{c|}{00001} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCVT.S.D \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0100001} & +\multicolumn{5}{c|}{00000} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCVT.D.S \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1010001} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{010} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FEQ.D \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1010001} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{001} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FLT.D \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1010001} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FLE.D \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1110001} & +\multicolumn{5}{c|}{00000} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{001} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCLASS.D \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1100001} & +\multicolumn{5}{c|}{00000} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCVT.W.D \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1100001} & +\multicolumn{5}{c|}{00001} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCVT.WU.D \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1101001} & +\multicolumn{5}{c|}{00000} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCVT.D.W \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1101001} & +\multicolumn{5}{c|}{00001} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCVT.D.WU \\ +\cline{2-33} +& + + + + +\multicolumn{32}{c}{} & \\ +\multicolumn{32}{c}{\bf RV64D Standard Extension (in addition to RV32D) } & \\ +\cline{2-33} + + & +\multicolumn{7}{|c|}{1100001} & +\multicolumn{5}{c|}{00010} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCVT.L.D \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1100001} & +\multicolumn{5}{c|}{00011} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCVT.LU.D \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1110001} & +\multicolumn{5}{c|}{00000} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FMV.X.D \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1101001} & +\multicolumn{5}{c|}{00010} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCVT.D.L \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1101001} & +\multicolumn{5}{c|}{00011} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCVT.D.LU \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1111001} & +\multicolumn{5}{c|}{00000} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FMV.D.X \\ +\cline{2-33} +& + + + + +\end{tabular} +\end{center} +\end{small} + +\end{table} + +\newpage + +\begin{table}[p] +\begin{small} +\begin{center} + \begin{tabular} {p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}l} + & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & \\ + + & + + \multicolumn{3}{l}{31} & + \multicolumn{2}{r}{27} & + \multicolumn{1}{c}{26} & + \multicolumn{1}{r}{25} & + \multicolumn{3}{l}{24} & + \multicolumn{2}{r}{20} & + \multicolumn{3}{l}{19} & + \multicolumn{2}{r}{15} & + \multicolumn{2}{l}{14} & + \multicolumn{1}{r}{12} & + \multicolumn{4}{l}{11} & + \multicolumn{1}{r}{7} & + \multicolumn{6}{l}{6} & + \multicolumn{1}{r}{0} \\ + \cline{2-33} +& + + +\multicolumn{7}{|c|}{funct7} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{funct3} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{opcode} & R-type \\ +\cline{2-33} +& + +\multicolumn{5}{|c|}{rs3} & +\multicolumn{2}{c|}{funct2} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{funct3} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{opcode} & R4-type \\ +\cline{2-33} +& + +\multicolumn{12}{|c|}{imm[11:0]} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{funct3} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{opcode} & I-type \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{imm[11:5]} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{funct3} & +\multicolumn{5}{c|}{imm[4:0]} & +\multicolumn{7}{|c|}{opcode} & S-type \\ +\cline{2-33} +& + + + + +\multicolumn{32}{c}{} & \\ +\multicolumn{32}{c}{\bf RV32Q Standard Extension } & \\ +\cline{2-33} + + & +\multicolumn{12}{|c|}{imm[11:0]} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{100} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0000111} & FLQ \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{imm[11:5]} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{100} & +\multicolumn{5}{c|}{imm[4:0]} & +\multicolumn{7}{|c|}{0100111} & FSQ \\ +\cline{2-33} +& + +\multicolumn{5}{|c|}{rs3} & +\multicolumn{2}{c|}{11} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1000011} & FMADD.Q \\ +\cline{2-33} +& + +\multicolumn{5}{|c|}{rs3} & +\multicolumn{2}{c|}{11} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1000111} & FMSUB.Q \\ +\cline{2-33} +& + +\multicolumn{5}{|c|}{rs3} & +\multicolumn{2}{c|}{11} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1001011} & FNMSUB.Q \\ +\cline{2-33} +& + +\multicolumn{5}{|c|}{rs3} & +\multicolumn{2}{c|}{11} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1001111} & FNMADD.Q \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000011} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FADD.Q \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000111} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FSUB.Q \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0001011} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FMUL.Q \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0001111} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FDIV.Q \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0101111} & +\multicolumn{5}{c|}{00000} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FSQRT.Q \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0010011} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FSGNJ.Q \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0010011} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{001} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FSGNJN.Q \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0010011} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{010} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FSGNJX.Q \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0010111} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FMIN.Q \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0010111} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{001} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FMAX.Q \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0100000} & +\multicolumn{5}{c|}{00011} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCVT.S.Q \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0100011} & +\multicolumn{5}{c|}{00000} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCVT.Q.S \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0100001} & +\multicolumn{5}{c|}{00011} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCVT.D.Q \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0100011} & +\multicolumn{5}{c|}{00001} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCVT.Q.D \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1010011} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{010} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FEQ.Q \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1010011} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{001} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FLT.Q \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1010011} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FLE.Q \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1110011} & +\multicolumn{5}{c|}{00000} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{001} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCLASS.Q \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1100011} & +\multicolumn{5}{c|}{00000} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCVT.W.Q \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1100011} & +\multicolumn{5}{c|}{00001} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCVT.WU.Q \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1101011} & +\multicolumn{5}{c|}{00000} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCVT.Q.W \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1101011} & +\multicolumn{5}{c|}{00001} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCVT.Q.WU \\ +\cline{2-33} +& + + + + +\multicolumn{32}{c}{} & \\ +\multicolumn{32}{c}{\bf RV64Q Standard Extension (in addition to RV32Q) } & \\ +\cline{2-33} + + & +\multicolumn{7}{|c|}{1100011} & +\multicolumn{5}{c|}{00010} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCVT.L.Q \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1100011} & +\multicolumn{5}{c|}{00011} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCVT.LU.Q \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1101011} & +\multicolumn{5}{c|}{00010} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCVT.Q.L \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1101011} & +\multicolumn{5}{c|}{00011} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCVT.Q.LU \\ +\cline{2-33} +& + + + + +\end{tabular} +\end{center} +\end{small} + +\end{table} + +\newpage + +\begin{table}[p] +\begin{small} +\begin{center} + \begin{tabular} {p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}l} + & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & \\ + + & + + \multicolumn{3}{l}{31} & + \multicolumn{2}{r}{27} & + \multicolumn{1}{c}{26} & + \multicolumn{1}{r}{25} & + \multicolumn{3}{l}{24} & + \multicolumn{2}{r}{20} & + \multicolumn{3}{l}{19} & + \multicolumn{2}{r}{15} & + \multicolumn{2}{l}{14} & + \multicolumn{1}{r}{12} & + \multicolumn{4}{l}{11} & + \multicolumn{1}{r}{7} & + \multicolumn{6}{l}{6} & + \multicolumn{1}{r}{0} \\ + \cline{2-33} +& + + +\multicolumn{7}{|c|}{funct7} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{funct3} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{opcode} & R-type \\ +\cline{2-33} +& + +\multicolumn{5}{|c|}{rs3} & +\multicolumn{2}{c|}{funct2} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{funct3} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{opcode} & R4-type \\ +\cline{2-33} +& + +\multicolumn{12}{|c|}{imm[11:0]} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{funct3} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{opcode} & I-type \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{imm[11:5]} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{funct3} & +\multicolumn{5}{c|}{imm[4:0]} & +\multicolumn{7}{|c|}{opcode} & S-type \\ +\cline{2-33} +& + + + + +\multicolumn{32}{c}{} & \\ +\multicolumn{32}{c}{\bf RV32Zfh Standard Extension } & \\ +\cline{2-33} + + & +\multicolumn{12}{|c|}{imm[11:0]} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{001} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{0000111} & FLH \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{imm[11:5]} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{001} & +\multicolumn{5}{c|}{imm[4:0]} & +\multicolumn{7}{|c|}{0100111} & FSH \\ +\cline{2-33} +& + +\multicolumn{5}{|c|}{rs3} & +\multicolumn{2}{c|}{10} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1000011} & FMADD.H \\ +\cline{2-33} +& + +\multicolumn{5}{|c|}{rs3} & +\multicolumn{2}{c|}{10} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1000111} & FMSUB.H \\ +\cline{2-33} +& + +\multicolumn{5}{|c|}{rs3} & +\multicolumn{2}{c|}{10} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1001011} & FNMSUB.H \\ +\cline{2-33} +& + +\multicolumn{5}{|c|}{rs3} & +\multicolumn{2}{c|}{10} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1001111} & FNMADD.H \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000010} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FADD.H \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0000110} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FSUB.H \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0001010} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FMUL.H \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0001110} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FDIV.H \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0101110} & +\multicolumn{5}{c|}{00000} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FSQRT.H \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0010010} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FSGNJ.H \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0010010} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{001} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FSGNJN.H \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0010010} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{010} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FSGNJX.H \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0010110} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FMIN.H \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0010110} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{001} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FMAX.H \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0100000} & +\multicolumn{5}{c|}{00010} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCVT.S.H \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0100010} & +\multicolumn{5}{c|}{00000} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCVT.H.S \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1010010} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{010} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FEQ.H \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1010010} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{001} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FLT.H \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1010010} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FLE.H \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1110010} & +\multicolumn{5}{c|}{00000} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{001} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCLASS.H \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1100010} & +\multicolumn{5}{c|}{00000} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCVT.W.H \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1100010} & +\multicolumn{5}{c|}{00001} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCVT.WU.H \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1110010} & +\multicolumn{5}{c|}{00000} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FMV.X.H \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1101010} & +\multicolumn{5}{c|}{00000} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCVT.H.W \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1101010} & +\multicolumn{5}{c|}{00001} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCVT.H.WU \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1111010} & +\multicolumn{5}{c|}{00000} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FMV.H.X \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0100001} & +\multicolumn{5}{c|}{00010} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCVT.D.H \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0100010} & +\multicolumn{5}{c|}{00001} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCVT.H.D \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0100011} & +\multicolumn{5}{c|}{00010} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCVT.Q.H \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0100010} & +\multicolumn{5}{c|}{00011} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCVT.H.Q \\ +\cline{2-33} +& + + + + +\multicolumn{32}{c}{} & \\ +\multicolumn{32}{c}{\bf RV64Zfh Standard Extension (in addition to RV32Zfh) } & \\ +\cline{2-33} + + & +\multicolumn{7}{|c|}{1100010} & +\multicolumn{5}{c|}{00010} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCVT.L.H \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1100010} & +\multicolumn{5}{c|}{00011} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCVT.LU.H \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1101010} & +\multicolumn{5}{c|}{00010} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCVT.H.L \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{1101010} & +\multicolumn{5}{c|}{00011} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{rm} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1010011} & FCVT.H.LU \\ +\cline{2-33} +& + + + + +\end{tabular} +\end{center} +\end{small} +\caption{Instruction listing for RISC-V} +\end{table} diff --git a/backends/opcodes_maker/output/instr_dict.json b/backends/opcodes_maker/output/instr_dict.json new file mode 100755 index 000000000..c22017c25 --- /dev/null +++ b/backends/opcodes_maker/output/instr_dict.json @@ -0,0 +1,8044 @@ +{ + "add": { + "encoding": "0000000----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_i"], + "match": "0x33", + "mask": "0xfe00707f" + }, + "add_uw": { + "encoding": "0000100----------000-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_b", "rv64_zba"], + "match": "0x800003b", + "mask": "0xfe00707f" + }, + "addi": { + "encoding": "-----------------000-----0010011", + "variable_fields": ["rd", "rs1", "imm12"], + "extension": ["rv_i"], + "match": "0x13", + "mask": "0x707f" + }, + "addiw": { + "encoding": "-----------------000-----0011011", + "variable_fields": ["rd", "rs1", "imm12"], + "extension": ["rv64_i"], + "match": "0x1b", + "mask": "0x707f" + }, + "addw": { + "encoding": "0000000----------000-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_i"], + "match": "0x3b", + "mask": "0xfe00707f" + }, + "aes32dsi": { + "encoding": "--10101----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2", "bs"], + "extension": ["rv32_zk", "rv32_zkn", "rv32_zknd"], + "match": "0x2a000033", + "mask": "0x3e00707f" + }, + "aes32dsmi": { + "encoding": "--10111----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2", "bs"], + "extension": ["rv32_zk", "rv32_zkn", "rv32_zknd"], + "match": "0x2e000033", + "mask": "0x3e00707f" + }, + "aes32esi": { + "encoding": "--10001----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2", "bs"], + "extension": ["rv32_zk", "rv32_zkn", "rv32_zkne"], + "match": "0x22000033", + "mask": "0x3e00707f" + }, + "aes32esmi": { + "encoding": "--10011----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2", "bs"], + "extension": ["rv32_zk", "rv32_zkn", "rv32_zkne"], + "match": "0x26000033", + "mask": "0x3e00707f" + }, + "aes64ds": { + "encoding": "0011101----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_zk", "rv64_zkn", "rv64_zknd"], + "match": "0x3a000033", + "mask": "0xfe00707f" + }, + "aes64dsm": { + "encoding": "0011111----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_zk", "rv64_zkn", "rv64_zknd"], + "match": "0x3e000033", + "mask": "0xfe00707f" + }, + "aes64es": { + "encoding": "0011001----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_zk", "rv64_zkn", "rv64_zkne"], + "match": "0x32000033", + "mask": "0xfe00707f" + }, + "aes64esm": { + "encoding": "0011011----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_zk", "rv64_zkn", "rv64_zkne"], + "match": "0x36000033", + "mask": "0xfe00707f" + }, + "aes64im": { + "encoding": "001100000000-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_zk", "rv64_zkn", "rv64_zknd"], + "match": "0x30001013", + "mask": "0xfff0707f" + }, + "aes64ks1i": { + "encoding": "00110001---------001-----0010011", + "variable_fields": ["rd", "rs1", "rnum"], + "extension": ["rv64_zk", "rv64_zkn", "rv64_zknd", "rv64_zkne"], + "match": "0x31001013", + "mask": "0xff00707f" + }, + "aes64ks2": { + "encoding": "0111111----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_zk", "rv64_zkn", "rv64_zknd", "rv64_zkne"], + "match": "0x7e000033", + "mask": "0xfe00707f" + }, + "amoadd_b": { + "encoding": "00000------------000-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zabha"], + "match": "0x2f", + "mask": "0xf800707f" + }, + "amoadd_d": { + "encoding": "00000------------011-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv64_a", "rv64_zaamo"], + "match": "0x302f", + "mask": "0xf800707f" + }, + "amoadd_h": { + "encoding": "00000------------001-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zabha"], + "match": "0x102f", + "mask": "0xf800707f" + }, + "amoadd_w": { + "encoding": "00000------------010-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_a", "rv_zaamo"], + "match": "0x202f", + "mask": "0xf800707f" + }, + "amoand_b": { + "encoding": "01100------------000-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zabha"], + "match": "0x6000002f", + "mask": "0xf800707f" + }, + "amoand_d": { + "encoding": "01100------------011-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv64_a", "rv64_zaamo"], + "match": "0x6000302f", + "mask": "0xf800707f" + }, + "amoand_h": { + "encoding": "01100------------001-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zabha"], + "match": "0x6000102f", + "mask": "0xf800707f" + }, + "amoand_w": { + "encoding": "01100------------010-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_a", "rv_zaamo"], + "match": "0x6000202f", + "mask": "0xf800707f" + }, + "amocas_b": { + "encoding": "00101------------000-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zabha"], + "match": "0x2800002f", + "mask": "0xf800707f" + }, + "amocas_d": { + "encoding": "00101------------011-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zacas"], + "match": "0x2800302f", + "mask": "0xf800707f" + }, + "amocas_h": { + "encoding": "00101------------001-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zabha"], + "match": "0x2800102f", + "mask": "0xf800707f" + }, + "amocas_q": { + "encoding": "00101------------100-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv64_zacas"], + "match": "0x2800402f", + "mask": "0xf800707f" + }, + "amocas_w": { + "encoding": "00101------------010-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zacas"], + "match": "0x2800202f", + "mask": "0xf800707f" + }, + "amomax_b": { + "encoding": "10100------------000-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zabha"], + "match": "0xa000002f", + "mask": "0xf800707f" + }, + "amomax_d": { + "encoding": "10100------------011-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv64_a", "rv64_zaamo"], + "match": "0xa000302f", + "mask": "0xf800707f" + }, + "amomax_h": { + "encoding": "10100------------001-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zabha"], + "match": "0xa000102f", + "mask": "0xf800707f" + }, + "amomax_w": { + "encoding": "10100------------010-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_a", "rv_zaamo"], + "match": "0xa000202f", + "mask": "0xf800707f" + }, + "amomaxu_b": { + "encoding": "11100------------000-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zabha"], + "match": "0xe000002f", + "mask": "0xf800707f" + }, + "amomaxu_d": { + "encoding": "11100------------011-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv64_a", "rv64_zaamo"], + "match": "0xe000302f", + "mask": "0xf800707f" + }, + "amomaxu_h": { + "encoding": "11100------------001-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zabha"], + "match": "0xe000102f", + "mask": "0xf800707f" + }, + "amomaxu_w": { + "encoding": "11100------------010-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_a", "rv_zaamo"], + "match": "0xe000202f", + "mask": "0xf800707f" + }, + "amomin_b": { + "encoding": "10000------------000-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zabha"], + "match": "0x8000002f", + "mask": "0xf800707f" + }, + "amomin_d": { + "encoding": "10000------------011-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv64_a", "rv64_zaamo"], + "match": "0x8000302f", + "mask": "0xf800707f" + }, + "amomin_h": { + "encoding": "10000------------001-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zabha"], + "match": "0x8000102f", + "mask": "0xf800707f" + }, + "amomin_w": { + "encoding": "10000------------010-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_a", "rv_zaamo"], + "match": "0x8000202f", + "mask": "0xf800707f" + }, + "amominu_b": { + "encoding": "11000------------000-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zabha"], + "match": "0xc000002f", + "mask": "0xf800707f" + }, + "amominu_d": { + "encoding": "11000------------011-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv64_a", "rv64_zaamo"], + "match": "0xc000302f", + "mask": "0xf800707f" + }, + "amominu_h": { + "encoding": "11000------------001-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zabha"], + "match": "0xc000102f", + "mask": "0xf800707f" + }, + "amominu_w": { + "encoding": "11000------------010-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_a", "rv_zaamo"], + "match": "0xc000202f", + "mask": "0xf800707f" + }, + "amoor_b": { + "encoding": "01000------------000-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zabha"], + "match": "0x4000002f", + "mask": "0xf800707f" + }, + "amoor_d": { + "encoding": "01000------------011-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv64_a", "rv64_zaamo"], + "match": "0x4000302f", + "mask": "0xf800707f" + }, + "amoor_h": { + "encoding": "01000------------001-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zabha"], + "match": "0x4000102f", + "mask": "0xf800707f" + }, + "amoor_w": { + "encoding": "01000------------010-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_a", "rv_zaamo"], + "match": "0x4000202f", + "mask": "0xf800707f" + }, + "amoswap_b": { + "encoding": "00001------------000-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zabha"], + "match": "0x800002f", + "mask": "0xf800707f" + }, + "amoswap_d": { + "encoding": "00001------------011-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv64_a", "rv64_zaamo"], + "match": "0x800302f", + "mask": "0xf800707f" + }, + "amoswap_h": { + "encoding": "00001------------001-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zabha"], + "match": "0x800102f", + "mask": "0xf800707f" + }, + "amoswap_w": { + "encoding": "00001------------010-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_a", "rv_zaamo"], + "match": "0x800202f", + "mask": "0xf800707f" + }, + "amoxor_b": { + "encoding": "00100------------000-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zabha"], + "match": "0x2000002f", + "mask": "0xf800707f" + }, + "amoxor_d": { + "encoding": "00100------------011-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv64_a", "rv64_zaamo"], + "match": "0x2000302f", + "mask": "0xf800707f" + }, + "amoxor_h": { + "encoding": "00100------------001-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zabha"], + "match": "0x2000102f", + "mask": "0xf800707f" + }, + "amoxor_w": { + "encoding": "00100------------010-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_a", "rv_zaamo"], + "match": "0x2000202f", + "mask": "0xf800707f" + }, + "and": { + "encoding": "0000000----------111-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_i"], + "match": "0x7033", + "mask": "0xfe00707f" + }, + "andi": { + "encoding": "-----------------111-----0010011", + "variable_fields": ["rd", "rs1", "imm12"], + "extension": ["rv_i"], + "match": "0x7013", + "mask": "0x707f" + }, + "andn": { + "encoding": "0100000----------111-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbb", "rv_zbkb", "rv_zk", "rv_zkn", "rv_zks"], + "match": "0x40007033", + "mask": "0xfe00707f" + }, + "auipc": { + "encoding": "-------------------------0010111", + "variable_fields": ["rd", "imm20"], + "extension": ["rv_i"], + "match": "0x17", + "mask": "0x7f" + }, + "bclr": { + "encoding": "0100100----------001-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbs"], + "match": "0x48001033", + "mask": "0xfe00707f" + }, + "bclri": { + "encoding": "010010-----------001-----0010011", + "variable_fields": ["rd", "rs1", "shamtd"], + "extension": ["rv64_b", "rv64_zbs"], + "match": "0x48001013", + "mask": "0xfc00707f" + }, + "beq": { + "encoding": "-----------------000-----1100011", + "variable_fields": ["rs1", "rs2", "bimm12hi", "bimm12lo"], + "extension": ["rv_i"], + "match": "0x63", + "mask": "0x707f" + }, + "bext": { + "encoding": "0100100----------101-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbs"], + "match": "0x48005033", + "mask": "0xfe00707f" + }, + "bexti": { + "encoding": "010010-----------101-----0010011", + "variable_fields": ["rd", "rs1", "shamtd"], + "extension": ["rv64_b", "rv64_zbs"], + "match": "0x48005013", + "mask": "0xfc00707f" + }, + "bge": { + "encoding": "-----------------101-----1100011", + "variable_fields": ["rs1", "rs2", "bimm12hi", "bimm12lo"], + "extension": ["rv_i"], + "match": "0x5063", + "mask": "0x707f" + }, + "bgeu": { + "encoding": "-----------------111-----1100011", + "variable_fields": ["rs1", "rs2", "bimm12hi", "bimm12lo"], + "extension": ["rv_i"], + "match": "0x7063", + "mask": "0x707f" + }, + "binv": { + "encoding": "0110100----------001-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbs"], + "match": "0x68001033", + "mask": "0xfe00707f" + }, + "binvi": { + "encoding": "011010-----------001-----0010011", + "variable_fields": ["rd", "rs1", "shamtd"], + "extension": ["rv64_b", "rv64_zbs"], + "match": "0x68001013", + "mask": "0xfc00707f" + }, + "blt": { + "encoding": "-----------------100-----1100011", + "variable_fields": ["rs1", "rs2", "bimm12hi", "bimm12lo"], + "extension": ["rv_i"], + "match": "0x4063", + "mask": "0x707f" + }, + "bltu": { + "encoding": "-----------------110-----1100011", + "variable_fields": ["rs1", "rs2", "bimm12hi", "bimm12lo"], + "extension": ["rv_i"], + "match": "0x6063", + "mask": "0x707f" + }, + "bne": { + "encoding": "-----------------001-----1100011", + "variable_fields": ["rs1", "rs2", "bimm12hi", "bimm12lo"], + "extension": ["rv_i"], + "match": "0x1063", + "mask": "0x707f" + }, + "brev8": { + "encoding": "011010000111-----101-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_zbkb"], + "match": "0x68705013", + "mask": "0xfff0707f" + }, + "bset": { + "encoding": "0010100----------001-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbs"], + "match": "0x28001033", + "mask": "0xfe00707f" + }, + "bseti": { + "encoding": "001010-----------001-----0010011", + "variable_fields": ["rd", "rs1", "shamtd"], + "extension": ["rv64_b", "rv64_zbs"], + "match": "0x28001013", + "mask": "0xfc00707f" + }, + "c_add": { + "encoding": "----------------1001----------10", + "variable_fields": ["rd", "rs2"], + "extension": ["rv_c", "rv_zca"], + "match": "0x9002", + "mask": "0xf003" + }, + "c_addi": { + "encoding": "----------------000-----------01", + "variable_fields": ["rd"], + "extension": ["rv_c", "rv_zca"], + "match": "0x1", + "mask": "0xe003" + }, + "c_addi16sp": { + "encoding": "----------------011-00010-----01", + "variable_fields": [], + "extension": ["rv_c", "rv_zca"], + "match": "0x6101", + "mask": "0xef83" + }, + "c_addi4spn": { + "encoding": "----------------000-----------00", + "variable_fields": ["rd"], + "extension": ["rv_c", "rv_zca"], + "match": "0x0", + "mask": "0xe003" + }, + "c_addiw": { + "encoding": "----------------001-----------01", + "variable_fields": ["rd"], + "extension": ["rv64_c", "rv64_zca"], + "match": "0x2001", + "mask": "0xe003" + }, + "c_addw": { + "encoding": "----------------100111---01---01", + "variable_fields": ["rd", "rs2"], + "extension": ["rv64_c", "rv64_zca"], + "match": "0x9c21", + "mask": "0xfc63" + }, + "c_and": { + "encoding": "----------------100011---11---01", + "variable_fields": ["rd", "rs2"], + "extension": ["rv_c", "rv_zca"], + "match": "0x8c61", + "mask": "0xfc63" + }, + "c_andi": { + "encoding": "----------------100-10--------01", + "variable_fields": ["rd"], + "extension": ["rv_c", "rv_zca"], + "match": "0x8801", + "mask": "0xec03" + }, + "c_beqz": { + "encoding": "----------------110-----------01", + "variable_fields": ["rs1"], + "extension": ["rv_c", "rv_zca"], + "match": "0xc001", + "mask": "0xe003" + }, + "c_bnez": { + "encoding": "----------------111-----------01", + "variable_fields": ["rs1"], + "extension": ["rv_c", "rv_zca"], + "match": "0xe001", + "mask": "0xe003" + }, + "c_ebreak": { + "encoding": "----------------1001000000000010", + "variable_fields": [], + "extension": ["rv_c", "rv_zca"], + "match": "0x9002", + "mask": "0xffff" + }, + "c_fld": { + "encoding": "----------------001-----------00", + "variable_fields": ["rs1", "rd"], + "extension": ["rv_c", "rv_d"], + "match": "0x2000", + "mask": "0xe003" + }, + "c_fldsp": { + "encoding": "----------------001-----------10", + "variable_fields": ["rd"], + "extension": ["rv_c", "rv_d"], + "match": "0x2002", + "mask": "0xe003" + }, + "c_flw": { + "encoding": "----------------011-----------00", + "variable_fields": ["rs1", "rd"], + "extension": ["rv_c", "rv_f"], + "match": "0x6000", + "mask": "0xe003" + }, + "c_flwsp": { + "encoding": "----------------011-----------10", + "variable_fields": ["rd"], + "extension": ["rv_c", "rv_f"], + "match": "0x6002", + "mask": "0xe003" + }, + "c_fsd": { + "encoding": "----------------101-----------00", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv_c", "rv_d"], + "match": "0xa000", + "mask": "0xe003" + }, + "c_fsdsp": { + "encoding": "----------------101-----------10", + "variable_fields": ["rs2"], + "extension": ["rv_c", "rv_d"], + "match": "0xa002", + "mask": "0xe003" + }, + "c_fsw": { + "encoding": "----------------111-----------00", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv_c", "rv_f"], + "match": "0xe000", + "mask": "0xe003" + }, + "c_fswsp": { + "encoding": "----------------111-----------10", + "variable_fields": ["rs2"], + "extension": ["rv_c", "rv_f"], + "match": "0xe002", + "mask": "0xe003" + }, + "c_j": { + "encoding": "----------------101-----------01", + "variable_fields": [], + "extension": ["rv_c", "rv_zca"], + "match": "0xa001", + "mask": "0xe003" + }, + "c_jal": { + "encoding": "----------------001-----------01", + "variable_fields": [], + "extension": ["rv32_c", "rv32_zca"], + "match": "0x2001", + "mask": "0xe003" + }, + "c_jalr": { + "encoding": "----------------1001-----0000010", + "variable_fields": ["rs1"], + "extension": ["rv_c", "rv_zca"], + "match": "0x9002", + "mask": "0xf07f" + }, + "c_jr": { + "encoding": "----------------1000-----0000010", + "variable_fields": ["rs1"], + "extension": ["rv_c", "rv_zca"], + "match": "0x8002", + "mask": "0xf07f" + }, + "c_lbu": { + "encoding": "----------------100000--------00", + "variable_fields": ["rs1", "rd"], + "extension": ["rv_zcb", "rv_zce"], + "match": "0x8000", + "mask": "0xfc03" + }, + "c_ld": { + "encoding": "----------------011-----------00", + "variable_fields": ["rs1", "rd"], + "extension": ["rv64_c", "rv64_zca"], + "match": "0x6000", + "mask": "0xe003" + }, + "c_ldsp": { + "encoding": "----------------011-----------10", + "variable_fields": ["rd"], + "extension": ["rv64_c", "rv64_zca"], + "match": "0x6002", + "mask": "0xe003" + }, + "c_li": { + "encoding": "----------------010-----------01", + "variable_fields": ["rd"], + "extension": ["rv_c", "rv_zca"], + "match": "0x4001", + "mask": "0xe003" + }, + "c_lui": { + "encoding": "----------------011-----------01", + "variable_fields": ["rd"], + "extension": ["rv_c", "rv_zca"], + "match": "0x6001", + "mask": "0xe003" + }, + "c_lw": { + "encoding": "----------------010-----------00", + "variable_fields": ["rs1", "rd"], + "extension": ["rv_c", "rv_zca"], + "match": "0x4000", + "mask": "0xe003" + }, + "c_lwsp": { + "encoding": "----------------010-----------10", + "variable_fields": ["rd"], + "extension": ["rv_c", "rv_zca"], + "match": "0x4002", + "mask": "0xe003" + }, + "c_mul": { + "encoding": "----------------100111---10---01", + "variable_fields": ["rs2", "rd"], + "extension": ["rv_zcb", "rv_zmmul"], + "match": "0x9c41", + "mask": "0xfc63" + }, + "c_mv": { + "encoding": "----------------1000----------10", + "variable_fields": ["rs2", "rd"], + "extension": ["rv_c", "rv_zca"], + "match": "0x8002", + "mask": "0xf003" + }, + "c_nop": { + "encoding": "----------------000-00000-----01", + "variable_fields": [], + "extension": ["rv_c", "rv_zca"], + "match": "0x1", + "mask": "0xef83" + }, + "c_not": { + "encoding": "----------------100111---1110101", + "variable_fields": ["rd"], + "extension": ["rv_zcb", "rv_zce"], + "match": "0x9c75", + "mask": "0xfc7f" + }, + "c_or": { + "encoding": "----------------100011---10---01", + "variable_fields": ["rd", "rs2"], + "extension": ["rv_c", "rv_zca"], + "match": "0x8c41", + "mask": "0xfc63" + }, + "c_sb": { + "encoding": "----------------100010--------00", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv_zcb", "rv_zce"], + "match": "0x8800", + "mask": "0xfc03" + }, + "c_sd": { + "encoding": "----------------111-----------00", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv64_c", "rv64_zca"], + "match": "0xe000", + "mask": "0xe003" + }, + "c_sdsp": { + "encoding": "----------------111-----------10", + "variable_fields": ["rs2"], + "extension": ["rv64_c", "rv64_zca"], + "match": "0xe002", + "mask": "0xe003" + }, + "c_sext_b": { + "encoding": "----------------100111---1100101", + "variable_fields": ["rd"], + "extension": ["rv_zcb", "rv_zbb"], + "match": "0x9c65", + "mask": "0xfc7f" + }, + "c_sext_h": { + "encoding": "----------------100111---1101101", + "variable_fields": ["rd"], + "extension": ["rv_zcb", "rv_zbb"], + "match": "0x9c6d", + "mask": "0xfc7f" + }, + "c_slli": { + "encoding": "----------------000-----------10", + "variable_fields": ["rd", "shamt"], + "extension": ["rv64_c", "rv64_zca"], + "match": "0x2", + "mask": "0xe003" + }, + "c_srai": { + "encoding": "----------------100-01--------01", + "variable_fields": ["rd", "shamt"], + "extension": ["rv64_c", "rv64_zca"], + "match": "0x8401", + "mask": "0xec03" + }, + "c_srli": { + "encoding": "----------------100-00--------01", + "variable_fields": ["rd", "shamt"], + "extension": ["rv64_c", "rv64_zca"], + "match": "0x8001", + "mask": "0xec03" + }, + "c_sub": { + "encoding": "----------------100011---00---01", + "variable_fields": ["rd", "rs2"], + "extension": ["rv_c", "rv_zca"], + "match": "0x8c01", + "mask": "0xfc63" + }, + "c_subw": { + "encoding": "----------------100111---00---01", + "variable_fields": ["rd", "rs2"], + "extension": ["rv64_c", "rv64_zca"], + "match": "0x9c01", + "mask": "0xfc63" + }, + "c_sw": { + "encoding": "----------------110-----------00", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv_c", "rv_zca"], + "match": "0xc000", + "mask": "0xe003" + }, + "c_swsp": { + "encoding": "----------------110-----------10", + "variable_fields": ["rs2"], + "extension": ["rv_c", "rv_zca"], + "match": "0xc002", + "mask": "0xe003" + }, + "c_xor": { + "encoding": "----------------100011---01---01", + "variable_fields": ["rd", "rs2"], + "extension": ["rv_c", "rv_zca"], + "match": "0x8c21", + "mask": "0xfc63" + }, + "c_zext_b": { + "encoding": "----------------100111---1100001", + "variable_fields": ["rd"], + "extension": ["rv_zcb", "rv_zbb"], + "match": "0x9c61", + "mask": "0xfc7f" + }, + "c_zext_h": { + "encoding": "----------------100111---1101001", + "variable_fields": ["rd"], + "extension": ["rv_zcb", "rv_zbb"], + "match": "0x9c69", + "mask": "0xfc7f" + }, + "c_zext_w": { + "encoding": "----------------100111---1110001", + "variable_fields": ["rd"], + "extension": ["rv64_zcb", "rv64_zbb"], + "match": "0x9c71", + "mask": "0xfc7f" + }, + "cbo_clean": { + "encoding": "000000000001-----010000000001111", + "variable_fields": ["rs1"], + "extension": ["rv_zicbom"], + "match": "0x10200f", + "mask": "0xfff07fff" + }, + "cbo_flush": { + "encoding": "000000000010-----010000000001111", + "variable_fields": ["rs1"], + "extension": ["rv_zicbom"], + "match": "0x20200f", + "mask": "0xfff07fff" + }, + "cbo_inval": { + "encoding": "000000000000-----010000000001111", + "variable_fields": ["rs1"], + "extension": ["rv_zicbom"], + "match": "0x200f", + "mask": "0xfff07fff" + }, + "cbo_zero": { + "encoding": "000000000100-----010000000001111", + "variable_fields": ["rs1"], + "extension": ["rv_zicboz"], + "match": "0x40200f", + "mask": "0xfff07fff" + }, + "clmul": { + "encoding": "0000101----------001-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbc", "rv_zbkc", "rv_zk", "rv_zkn", "rv_zks"], + "match": "0xa001033", + "mask": "0xfe00707f" + }, + "clmulh": { + "encoding": "0000101----------011-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbc", "rv_zbkc", "rv_zk", "rv_zkn", "rv_zks"], + "match": "0xa003033", + "mask": "0xfe00707f" + }, + "clmulr": { + "encoding": "0000101----------010-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbc"], + "match": "0xa002033", + "mask": "0xfe00707f" + }, + "clz": { + "encoding": "011000000000-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_b", "rv_zbb"], + "match": "0x60001013", + "mask": "0xfff0707f" + }, + "clzw": { + "encoding": "011000000000-----001-----0011011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_b", "rv64_zbb"], + "match": "0x6000101b", + "mask": "0xfff0707f" + }, + "cm_mva01s": { + "encoding": "----------------101011---11---10", + "variable_fields": [], + "extension": ["rv_zcmp"], + "match": "0xac62", + "mask": "0xfc63" + }, + "cm_mvsa01": { + "encoding": "----------------101011---01---10", + "variable_fields": [], + "extension": ["rv_zcmp"], + "match": "0xac22", + "mask": "0xfc63" + }, + "cm_pop": { + "encoding": "----------------10111010------10", + "variable_fields": [], + "extension": ["rv_zcmp"], + "match": "0xba02", + "mask": "0xff03" + }, + "cm_popret": { + "encoding": "----------------10111110------10", + "variable_fields": [], + "extension": ["rv_zcmp"], + "match": "0xbe02", + "mask": "0xff03" + }, + "cm_popretz": { + "encoding": "----------------10111100------10", + "variable_fields": [], + "extension": ["rv_zcmp"], + "match": "0xbc02", + "mask": "0xff03" + }, + "cm_push": { + "encoding": "----------------10111000------10", + "variable_fields": [], + "extension": ["rv_zcmp"], + "match": "0xb802", + "mask": "0xff03" + }, + "cpop": { + "encoding": "011000000010-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_b", "rv_zbb"], + "match": "0x60201013", + "mask": "0xfff0707f" + }, + "cpopw": { + "encoding": "011000000010-----001-----0011011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_b", "rv64_zbb"], + "match": "0x6020101b", + "mask": "0xfff0707f" + }, + "csrrc": { + "encoding": "-----------------011-----1110011", + "variable_fields": ["rd", "rs1", "csr"], + "extension": ["rv_zicsr"], + "match": "0x3073", + "mask": "0x707f" + }, + "csrrci": { + "encoding": "-----------------111-----1110011", + "variable_fields": ["rd", "csr"], + "extension": ["rv_zicsr"], + "match": "0x7073", + "mask": "0x707f" + }, + "csrrs": { + "encoding": "-----------------010-----1110011", + "variable_fields": ["rd", "rs1", "csr"], + "extension": ["rv_zicsr"], + "match": "0x2073", + "mask": "0x707f" + }, + "csrrsi": { + "encoding": "-----------------110-----1110011", + "variable_fields": ["rd", "csr"], + "extension": ["rv_zicsr"], + "match": "0x6073", + "mask": "0x707f" + }, + "csrrw": { + "encoding": "-----------------001-----1110011", + "variable_fields": ["rd", "rs1", "csr"], + "extension": ["rv_zicsr"], + "match": "0x1073", + "mask": "0x707f" + }, + "csrrwi": { + "encoding": "-----------------101-----1110011", + "variable_fields": ["rd", "zimm", "csr"], + "extension": ["rv_zicsr"], + "match": "0x5073", + "mask": "0x707f" + }, + "ctz": { + "encoding": "011000000001-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_b", "rv_zbb"], + "match": "0x60101013", + "mask": "0xfff0707f" + }, + "ctzw": { + "encoding": "011000000001-----001-----0011011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_b", "rv64_zbb"], + "match": "0x6010101b", + "mask": "0xfff0707f" + }, + "czero_eqz": { + "encoding": "0000111----------101-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zicond"], + "match": "0xe005033", + "mask": "0xfe00707f" + }, + "czero_nez": { + "encoding": "0000111----------111-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zicond"], + "match": "0xe007033", + "mask": "0xfe00707f" + }, + "div": { + "encoding": "0000001----------100-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_m"], + "match": "0x2004033", + "mask": "0xfe00707f" + }, + "divu": { + "encoding": "0000001----------101-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_m"], + "match": "0x2005033", + "mask": "0xfe00707f" + }, + "divuw": { + "encoding": "0000001----------101-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_m"], + "match": "0x200503b", + "mask": "0xfe00707f" + }, + "divw": { + "encoding": "0000001----------100-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_m"], + "match": "0x200403b", + "mask": "0xfe00707f" + }, + "dret": { + "encoding": "01111011001000000000000001110011", + "variable_fields": [], + "extension": ["rv_sdext"], + "match": "0x7b200073", + "mask": "0xffffffff" + }, + "ebreak": { + "encoding": "00000000000100000000000001110011", + "variable_fields": [], + "extension": ["rv_i"], + "match": "0x100073", + "mask": "0xffffffff" + }, + "ecall": { + "encoding": "00000000000000000000000001110011", + "variable_fields": [], + "extension": ["rv_i"], + "match": "0x73", + "mask": "0xffffffff" + }, + "fadd_d": { + "encoding": "0000001------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_d"], + "match": "0x2000053", + "mask": "0xfe00007f" + }, + "fadd_h": { + "encoding": "0000010------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_zfh"], + "match": "0x4000053", + "mask": "0xfe00007f" + }, + "fadd_q": { + "encoding": "0000011------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_q"], + "match": "0x6000053", + "mask": "0xfe00007f" + }, + "fadd_s": { + "encoding": "0000000------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_f"], + "match": "0x53", + "mask": "0xfe00007f" + }, + "fclass_d": { + "encoding": "111000100000-----001-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_d"], + "match": "0xe2001053", + "mask": "0xfff0707f" + }, + "fclass_h": { + "encoding": "111001000000-----001-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_zfh"], + "match": "0xe4001053", + "mask": "0xfff0707f" + }, + "fclass_q": { + "encoding": "111001100000-----001-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_q"], + "match": "0xe6001053", + "mask": "0xfff0707f" + }, + "fclass_s": { + "encoding": "111000000000-----001-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_f"], + "match": "0xe0001053", + "mask": "0xfff0707f" + }, + "fcvt_bf16_s": { + "encoding": "010001001000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_zfbfmin"], + "match": "0x44800053", + "mask": "0xfff0007f" + }, + "fcvt_d_h": { + "encoding": "010000100010-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_d", "rv_zfh"], + "match": "0x42200053", + "mask": "0xfff0007f" + }, + "fcvt_d_l": { + "encoding": "110100100010-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_d"], + "match": "0xd2200053", + "mask": "0xfff0007f" + }, + "fcvt_d_lu": { + "encoding": "110100100011-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_d"], + "match": "0xd2300053", + "mask": "0xfff0007f" + }, + "fcvt_d_q": { + "encoding": "010000100011-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_q"], + "match": "0x42300053", + "mask": "0xfff0007f" + }, + "fcvt_d_s": { + "encoding": "010000100000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_d"], + "match": "0x42000053", + "mask": "0xfff0007f" + }, + "fcvt_d_w": { + "encoding": "110100100000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_d"], + "match": "0xd2000053", + "mask": "0xfff0007f" + }, + "fcvt_d_wu": { + "encoding": "110100100001-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_d"], + "match": "0xd2100053", + "mask": "0xfff0007f" + }, + "fcvt_h_d": { + "encoding": "010001000001-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_d", "rv_zfh"], + "match": "0x44100053", + "mask": "0xfff0007f" + }, + "fcvt_h_l": { + "encoding": "110101000010-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_zfh"], + "match": "0xd4200053", + "mask": "0xfff0007f" + }, + "fcvt_h_lu": { + "encoding": "110101000011-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_zfh"], + "match": "0xd4300053", + "mask": "0xfff0007f" + }, + "fcvt_h_q": { + "encoding": "010001000011-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_q", "rv_zfh"], + "match": "0x44300053", + "mask": "0xfff0007f" + }, + "fcvt_h_s": { + "encoding": "010001000000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_zfh", "rv_zfhmin"], + "match": "0x44000053", + "mask": "0xfff0007f" + }, + "fcvt_h_w": { + "encoding": "110101000000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_zfh"], + "match": "0xd4000053", + "mask": "0xfff0007f" + }, + "fcvt_h_wu": { + "encoding": "110101000001-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_zfh"], + "match": "0xd4100053", + "mask": "0xfff0007f" + }, + "fcvt_l_d": { + "encoding": "110000100010-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_d"], + "match": "0xc2200053", + "mask": "0xfff0007f" + }, + "fcvt_l_h": { + "encoding": "110001000010-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_zfh"], + "match": "0xc4200053", + "mask": "0xfff0007f" + }, + "fcvt_l_q": { + "encoding": "110001100010-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_q"], + "match": "0xc6200053", + "mask": "0xfff0007f" + }, + "fcvt_l_s": { + "encoding": "110000000010-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_f"], + "match": "0xc0200053", + "mask": "0xfff0007f" + }, + "fcvt_lu_d": { + "encoding": "110000100011-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_d"], + "match": "0xc2300053", + "mask": "0xfff0007f" + }, + "fcvt_lu_h": { + "encoding": "110001000011-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_zfh"], + "match": "0xc4300053", + "mask": "0xfff0007f" + }, + "fcvt_lu_q": { + "encoding": "110001100011-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_q"], + "match": "0xc6300053", + "mask": "0xfff0007f" + }, + "fcvt_lu_s": { + "encoding": "110000000011-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_f"], + "match": "0xc0300053", + "mask": "0xfff0007f" + }, + "fcvt_q_d": { + "encoding": "010001100001-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_q"], + "match": "0x46100053", + "mask": "0xfff0007f" + }, + "fcvt_q_h": { + "encoding": "010001100010-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_q", "rv_zfh"], + "match": "0x46200053", + "mask": "0xfff0007f" + }, + "fcvt_q_l": { + "encoding": "110101100010-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_q"], + "match": "0xd6200053", + "mask": "0xfff0007f" + }, + "fcvt_q_lu": { + "encoding": "110101100011-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_q"], + "match": "0xd6300053", + "mask": "0xfff0007f" + }, + "fcvt_q_s": { + "encoding": "010001100000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_q"], + "match": "0x46000053", + "mask": "0xfff0007f" + }, + "fcvt_q_w": { + "encoding": "110101100000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_q"], + "match": "0xd6000053", + "mask": "0xfff0007f" + }, + "fcvt_q_wu": { + "encoding": "110101100001-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_q"], + "match": "0xd6100053", + "mask": "0xfff0007f" + }, + "fcvt_s_bf16": { + "encoding": "010000000110-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_zfbfmin"], + "match": "0x40600053", + "mask": "0xfff0007f" + }, + "fcvt_s_d": { + "encoding": "010000000001-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_d"], + "match": "0x40100053", + "mask": "0xfff0007f" + }, + "fcvt_s_h": { + "encoding": "010000000010-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_zfh", "rv_zfhmin"], + "match": "0x40200053", + "mask": "0xfff0007f" + }, + "fcvt_s_l": { + "encoding": "110100000010-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_f"], + "match": "0xd0200053", + "mask": "0xfff0007f" + }, + "fcvt_s_lu": { + "encoding": "110100000011-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_f"], + "match": "0xd0300053", + "mask": "0xfff0007f" + }, + "fcvt_s_q": { + "encoding": "010000000011-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_q"], + "match": "0x40300053", + "mask": "0xfff0007f" + }, + "fcvt_s_w": { + "encoding": "110100000000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_f"], + "match": "0xd0000053", + "mask": "0xfff0007f" + }, + "fcvt_s_wu": { + "encoding": "110100000001-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_f"], + "match": "0xd0100053", + "mask": "0xfff0007f" + }, + "fcvt_w_d": { + "encoding": "110000100000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_d"], + "match": "0xc2000053", + "mask": "0xfff0007f" + }, + "fcvt_w_h": { + "encoding": "110001000000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_zfh"], + "match": "0xc4000053", + "mask": "0xfff0007f" + }, + "fcvt_w_q": { + "encoding": "110001100000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_q"], + "match": "0xc6000053", + "mask": "0xfff0007f" + }, + "fcvt_w_s": { + "encoding": "110000000000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_f"], + "match": "0xc0000053", + "mask": "0xfff0007f" + }, + "fcvt_wu_d": { + "encoding": "110000100001-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_d"], + "match": "0xc2100053", + "mask": "0xfff0007f" + }, + "fcvt_wu_h": { + "encoding": "110001000001-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_zfh"], + "match": "0xc4100053", + "mask": "0xfff0007f" + }, + "fcvt_wu_q": { + "encoding": "110001100001-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_q"], + "match": "0xc6100053", + "mask": "0xfff0007f" + }, + "fcvt_wu_s": { + "encoding": "110000000001-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_f"], + "match": "0xc0100053", + "mask": "0xfff0007f" + }, + "fcvtmod_w_d": { + "encoding": "110000101000-----001-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_d", "rv_zfa"], + "match": "0xc2801053", + "mask": "0xfff0707f" + }, + "fdiv_d": { + "encoding": "0001101------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_d"], + "match": "0x1a000053", + "mask": "0xfe00007f" + }, + "fdiv_h": { + "encoding": "0001110------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_zfh"], + "match": "0x1c000053", + "mask": "0xfe00007f" + }, + "fdiv_q": { + "encoding": "0001111------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_q"], + "match": "0x1e000053", + "mask": "0xfe00007f" + }, + "fdiv_s": { + "encoding": "0001100------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_f"], + "match": "0x18000053", + "mask": "0xfe00007f" + }, + "fence": { + "encoding": "-----------------000-----0001111", + "variable_fields": ["rd", "rs1", "succ", "pred", "rm"], + "extension": ["rv_i"], + "match": "0xf", + "mask": "0x707f" + }, + "fence_i": { + "encoding": "-----------------001-----0001111", + "variable_fields": ["rd", "rs1", "imm12"], + "extension": ["rv_zifencei"], + "match": "0x100f", + "mask": "0x707f" + }, + "feq_d": { + "encoding": "1010001----------010-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_d"], + "match": "0xa2002053", + "mask": "0xfe00707f" + }, + "feq_h": { + "encoding": "1010010----------010-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfh"], + "match": "0xa4002053", + "mask": "0xfe00707f" + }, + "feq_q": { + "encoding": "1010011----------010-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_q"], + "match": "0xa6002053", + "mask": "0xfe00707f" + }, + "feq_s": { + "encoding": "1010000----------010-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_f"], + "match": "0xa0002053", + "mask": "0xfe00707f" + }, + "fld": { + "encoding": "-----------------011-----0000111", + "variable_fields": ["rd", "rs1", "imm12"], + "extension": ["rv_d"], + "match": "0x3007", + "mask": "0x707f" + }, + "fle_d": { + "encoding": "1010001----------000-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_d"], + "match": "0xa2000053", + "mask": "0xfe00707f" + }, + "fle_h": { + "encoding": "1010010----------000-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfh"], + "match": "0xa4000053", + "mask": "0xfe00707f" + }, + "fle_q": { + "encoding": "1010011----------000-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_q"], + "match": "0xa6000053", + "mask": "0xfe00707f" + }, + "fle_s": { + "encoding": "1010000----------000-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_f"], + "match": "0xa0000053", + "mask": "0xfe00707f" + }, + "fleq_d": { + "encoding": "1010001----------100-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_d", "rv_zfa"], + "match": "0xa2004053", + "mask": "0xfe00707f" + }, + "fleq_h": { + "encoding": "1010010----------100-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfa", "rv_zfh"], + "match": "0xa4004053", + "mask": "0xfe00707f" + }, + "fleq_q": { + "encoding": "1010011----------100-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_q", "rv_zfa"], + "match": "0xa6004053", + "mask": "0xfe00707f" + }, + "fleq_s": { + "encoding": "1010000----------100-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfa"], + "match": "0xa0004053", + "mask": "0xfe00707f" + }, + "flh": { + "encoding": "-----------------001-----0000111", + "variable_fields": ["rd", "rs1", "imm12"], + "extension": ["rv_zfh", "rv_zfhmin", "rv_zhinx"], + "match": "0x1007", + "mask": "0x707f" + }, + "fli_d": { + "encoding": "111100100001-----000-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_d", "rv_zfa"], + "match": "0xf2100053", + "mask": "0xfff0707f" + }, + "fli_h": { + "encoding": "111101000001-----000-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_zfa", "rv_zfh"], + "match": "0xf4100053", + "mask": "0xfff0707f" + }, + "fli_q": { + "encoding": "111101100001-----000-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_q", "rv_zfa"], + "match": "0xf6100053", + "mask": "0xfff0707f" + }, + "fli_s": { + "encoding": "111100000001-----000-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_zfa"], + "match": "0xf0100053", + "mask": "0xfff0707f" + }, + "flq": { + "encoding": "-----------------100-----0000111", + "variable_fields": ["rd", "rs1", "imm12"], + "extension": ["rv_q"], + "match": "0x4007", + "mask": "0x707f" + }, + "flt_d": { + "encoding": "1010001----------001-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_d"], + "match": "0xa2001053", + "mask": "0xfe00707f" + }, + "flt_h": { + "encoding": "1010010----------001-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfh"], + "match": "0xa4001053", + "mask": "0xfe00707f" + }, + "flt_q": { + "encoding": "1010011----------001-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_q"], + "match": "0xa6001053", + "mask": "0xfe00707f" + }, + "flt_s": { + "encoding": "1010000----------001-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_f"], + "match": "0xa0001053", + "mask": "0xfe00707f" + }, + "fltq_d": { + "encoding": "1010001----------101-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_d", "rv_zfa"], + "match": "0xa2005053", + "mask": "0xfe00707f" + }, + "fltq_h": { + "encoding": "1010010----------101-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfa", "rv_zfh"], + "match": "0xa4005053", + "mask": "0xfe00707f" + }, + "fltq_q": { + "encoding": "1010011----------101-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_q", "rv_zfa"], + "match": "0xa6005053", + "mask": "0xfe00707f" + }, + "fltq_s": { + "encoding": "1010000----------101-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfa"], + "match": "0xa0005053", + "mask": "0xfe00707f" + }, + "flw": { + "encoding": "-----------------010-----0000111", + "variable_fields": ["rd", "rs1", "imm12"], + "extension": ["rv_f"], + "match": "0x2007", + "mask": "0x707f" + }, + "fmadd_d": { + "encoding": "-----01------------------1000011", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_d"], + "match": "0x2000043", + "mask": "0x600007f" + }, + "fmadd_h": { + "encoding": "-----10------------------1000011", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_zfh"], + "match": "0x4000043", + "mask": "0x600007f" + }, + "fmadd_q": { + "encoding": "-----11------------------1000011", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_q"], + "match": "0x6000043", + "mask": "0x600007f" + }, + "fmadd_s": { + "encoding": "-----00------------------1000011", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_f"], + "match": "0x43", + "mask": "0x600007f" + }, + "fmax_d": { + "encoding": "0010101----------001-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_d"], + "match": "0x2a001053", + "mask": "0xfe00707f" + }, + "fmax_h": { + "encoding": "0010110----------001-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfh"], + "match": "0x2c001053", + "mask": "0xfe00707f" + }, + "fmax_q": { + "encoding": "0010111----------001-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_q"], + "match": "0x2e001053", + "mask": "0xfe00707f" + }, + "fmax_s": { + "encoding": "0010100----------001-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_f"], + "match": "0x28001053", + "mask": "0xfe00707f" + }, + "fmaxm_d": { + "encoding": "0010101----------011-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_d", "rv_zfa"], + "match": "0x2a003053", + "mask": "0xfe00707f" + }, + "fmaxm_h": { + "encoding": "0010110----------011-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfa", "rv_zfh"], + "match": "0x2c003053", + "mask": "0xfe00707f" + }, + "fmaxm_q": { + "encoding": "0010111----------011-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_q", "rv_zfa"], + "match": "0x2e003053", + "mask": "0xfe00707f" + }, + "fmaxm_s": { + "encoding": "0010100----------011-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfa"], + "match": "0x28003053", + "mask": "0xfe00707f" + }, + "fmin_d": { + "encoding": "0010101----------000-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_d"], + "match": "0x2a000053", + "mask": "0xfe00707f" + }, + "fmin_h": { + "encoding": "0010110----------000-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfh"], + "match": "0x2c000053", + "mask": "0xfe00707f" + }, + "fmin_q": { + "encoding": "0010111----------000-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_q"], + "match": "0x2e000053", + "mask": "0xfe00707f" + }, + "fmin_s": { + "encoding": "0010100----------000-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_f"], + "match": "0x28000053", + "mask": "0xfe00707f" + }, + "fminm_d": { + "encoding": "0010101----------010-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_d", "rv_zfa"], + "match": "0x2a002053", + "mask": "0xfe00707f" + }, + "fminm_h": { + "encoding": "0010110----------010-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfa", "rv_zfh"], + "match": "0x2c002053", + "mask": "0xfe00707f" + }, + "fminm_q": { + "encoding": "0010111----------010-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_q", "rv_zfa"], + "match": "0x2e002053", + "mask": "0xfe00707f" + }, + "fminm_s": { + "encoding": "0010100----------010-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfa"], + "match": "0x28002053", + "mask": "0xfe00707f" + }, + "fmsub_d": { + "encoding": "-----01------------------1000111", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_d"], + "match": "0x2000047", + "mask": "0x600007f" + }, + "fmsub_h": { + "encoding": "-----10------------------1000111", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_zfh"], + "match": "0x4000047", + "mask": "0x600007f" + }, + "fmsub_q": { + "encoding": "-----11------------------1000111", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_q"], + "match": "0x6000047", + "mask": "0x600007f" + }, + "fmsub_s": { + "encoding": "-----00------------------1000111", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_f"], + "match": "0x47", + "mask": "0x600007f" + }, + "fmul_d": { + "encoding": "0001001------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_d"], + "match": "0x12000053", + "mask": "0xfe00007f" + }, + "fmul_h": { + "encoding": "0001010------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_zfh"], + "match": "0x14000053", + "mask": "0xfe00007f" + }, + "fmul_q": { + "encoding": "0001011------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_q"], + "match": "0x16000053", + "mask": "0xfe00007f" + }, + "fmul_s": { + "encoding": "0001000------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_f"], + "match": "0x10000053", + "mask": "0xfe00007f" + }, + "fmv_d_x": { + "encoding": "111100100000-----000-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_d"], + "match": "0xf2000053", + "mask": "0xfff0707f" + }, + "fmv_h_x": { + "encoding": "111101000000-----000-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_f"], + "match": "0xf4000053", + "mask": "0xfff0707f" + }, + "fmv_w_x": { + "encoding": "111100000000-----000-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_f"], + "match": "0xf0000053", + "mask": "0xfff0707f" + }, + "fmv_x_d": { + "encoding": "111000100000-----000-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_d"], + "match": "0xe2000053", + "mask": "0xfff0707f" + }, + "fmv_x_h": { + "encoding": "111001000000-----000-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_zfh", "rv_zfhmin", "rv_zhinx"], + "match": "0xe4000053", + "mask": "0xfff0707f" + }, + "fmv_x_w": { + "encoding": "111000000000-----000-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_f"], + "match": "0xe0000053", + "mask": "0xfff0707f" + }, + "fmvh_x_d": { + "encoding": "111000100001-----000-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv32_d", "rv32_zfa"], + "match": "0xe2100053", + "mask": "0xfff0707f" + }, + "fmvh_x_q": { + "encoding": "111001100001-----000-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_q", "rv64_zfa"], + "match": "0xe6100053", + "mask": "0xfff0707f" + }, + "fmvp_d_x": { + "encoding": "1011001----------000-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv32_d", "rv32_zfa"], + "match": "0xb2000053", + "mask": "0xfe00707f" + }, + "fmvp_q_x": { + "encoding": "1011011----------000-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_q", "rv64_zfa"], + "match": "0xb6000053", + "mask": "0xfe00707f" + }, + "fnmadd_d": { + "encoding": "-----01------------------1001111", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_d"], + "match": "0x200004f", + "mask": "0x600007f" + }, + "fnmadd_h": { + "encoding": "-----10------------------1001111", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_zfh"], + "match": "0x400004f", + "mask": "0x600007f" + }, + "fnmadd_q": { + "encoding": "-----11------------------1001111", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_q"], + "match": "0x600004f", + "mask": "0x600007f" + }, + "fnmadd_s": { + "encoding": "-----00------------------1001111", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_f"], + "match": "0x4f", + "mask": "0x600007f" + }, + "fnmsub_d": { + "encoding": "-----01------------------1001011", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_d"], + "match": "0x200004b", + "mask": "0x600007f" + }, + "fnmsub_h": { + "encoding": "-----10------------------1001011", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_zfh"], + "match": "0x400004b", + "mask": "0x600007f" + }, + "fnmsub_q": { + "encoding": "-----11------------------1001011", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_q"], + "match": "0x600004b", + "mask": "0x600007f" + }, + "fnmsub_s": { + "encoding": "-----00------------------1001011", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_f"], + "match": "0x4b", + "mask": "0x600007f" + }, + "fround_d": { + "encoding": "010000100100-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_d", "rv_zfa"], + "match": "0x42400053", + "mask": "0xfff0007f" + }, + "fround_h": { + "encoding": "010001000100-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_zfa", "rv_zfh"], + "match": "0x44400053", + "mask": "0xfff0007f" + }, + "fround_q": { + "encoding": "010001100100-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_q", "rv_zfa"], + "match": "0x46400053", + "mask": "0xfff0007f" + }, + "fround_s": { + "encoding": "010000000100-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_zfa"], + "match": "0x40400053", + "mask": "0xfff0007f" + }, + "froundnx_d": { + "encoding": "010000100101-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_d", "rv_zfa"], + "match": "0x42500053", + "mask": "0xfff0007f" + }, + "froundnx_h": { + "encoding": "010001000101-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_zfa", "rv_zfh"], + "match": "0x44500053", + "mask": "0xfff0007f" + }, + "froundnx_q": { + "encoding": "010001100101-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_q", "rv_zfa"], + "match": "0x46500053", + "mask": "0xfff0007f" + }, + "froundnx_s": { + "encoding": "010000000101-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_zfa"], + "match": "0x40500053", + "mask": "0xfff0007f" + }, + "fsd": { + "encoding": "-----------------011-----0100111", + "variable_fields": ["rs1", "rs2", "imm12hi", "imm12lo"], + "extension": ["rv_d"], + "match": "0x3027", + "mask": "0x707f" + }, + "fsgnj_d": { + "encoding": "0010001----------000-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_d"], + "match": "0x22000053", + "mask": "0xfe00707f" + }, + "fsgnj_h": { + "encoding": "0010010----------000-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfh"], + "match": "0x24000053", + "mask": "0xfe00707f" + }, + "fsgnj_q": { + "encoding": "0010011----------000-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_q"], + "match": "0x26000053", + "mask": "0xfe00707f" + }, + "fsgnj_s": { + "encoding": "0010000----------000-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_f"], + "match": "0x20000053", + "mask": "0xfe00707f" + }, + "fsgnjn_d": { + "encoding": "0010001----------001-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_d"], + "match": "0x22001053", + "mask": "0xfe00707f" + }, + "fsgnjn_h": { + "encoding": "0010010----------001-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfh"], + "match": "0x24001053", + "mask": "0xfe00707f" + }, + "fsgnjn_q": { + "encoding": "0010011----------001-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_q"], + "match": "0x26001053", + "mask": "0xfe00707f" + }, + "fsgnjn_s": { + "encoding": "0010000----------001-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_f"], + "match": "0x20001053", + "mask": "0xfe00707f" + }, + "fsgnjx_d": { + "encoding": "0010001----------010-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_d"], + "match": "0x22002053", + "mask": "0xfe00707f" + }, + "fsgnjx_h": { + "encoding": "0010010----------010-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfh"], + "match": "0x24002053", + "mask": "0xfe00707f" + }, + "fsgnjx_q": { + "encoding": "0010011----------010-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_q"], + "match": "0x26002053", + "mask": "0xfe00707f" + }, + "fsgnjx_s": { + "encoding": "0010000----------010-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_f"], + "match": "0x20002053", + "mask": "0xfe00707f" + }, + "fsh": { + "encoding": "-----------------001-----0100111", + "variable_fields": ["rs2", "rs1", "imm12hi", "imm12lo"], + "extension": ["rv_zfh", "rv_zfhmin", "rv_zhinx"], + "match": "0x1027", + "mask": "0x707f" + }, + "fsq": { + "encoding": "-----------------100-----0100111", + "variable_fields": ["rs1", "rs2", "imm12hi", "imm12lo"], + "extension": ["rv_q"], + "match": "0x4027", + "mask": "0x707f" + }, + "fsqrt_d": { + "encoding": "010110100000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_d"], + "match": "0x5a000053", + "mask": "0xfff0007f" + }, + "fsqrt_h": { + "encoding": "010111000000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_zfh"], + "match": "0x5c000053", + "mask": "0xfff0007f" + }, + "fsqrt_q": { + "encoding": "010111100000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_q"], + "match": "0x5e000053", + "mask": "0xfff0007f" + }, + "fsqrt_s": { + "encoding": "010110000000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_f"], + "match": "0x58000053", + "mask": "0xfff0007f" + }, + "fsub_d": { + "encoding": "0000101------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_d"], + "match": "0xa000053", + "mask": "0xfe00007f" + }, + "fsub_h": { + "encoding": "0000110------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_zfh"], + "match": "0xc000053", + "mask": "0xfe00007f" + }, + "fsub_q": { + "encoding": "0000111------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_q"], + "match": "0xe000053", + "mask": "0xfe00007f" + }, + "fsub_s": { + "encoding": "0000100------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_f"], + "match": "0x8000053", + "mask": "0xfe00007f" + }, + "fsw": { + "encoding": "-----------------010-----0100111", + "variable_fields": ["rs1", "rs2", "imm12hi", "imm12lo"], + "extension": ["rv_f"], + "match": "0x2027", + "mask": "0x707f" + }, + "hfence_gvma": { + "encoding": "0110001----------000000001110011", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv_h"], + "match": "0x62000073", + "mask": "0xfe007fff" + }, + "hfence_vvma": { + "encoding": "0010001----------000000001110011", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv_h"], + "match": "0x22000073", + "mask": "0xfe007fff" + }, + "hinval_gvma": { + "encoding": "0110011----------000000001110011", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv_svinval", "rv_h"], + "match": "0x66000073", + "mask": "0xfe007fff" + }, + "hinval_vvma": { + "encoding": "0010011----------000000001110011", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv_svinval", "rv_h"], + "match": "0x26000073", + "mask": "0xfe007fff" + }, + "hlv_b": { + "encoding": "011000000000-----100-----1110011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_h"], + "match": "0x60004073", + "mask": "0xfff0707f" + }, + "hlv_bu": { + "encoding": "011000000001-----100-----1110011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_h"], + "match": "0x60104073", + "mask": "0xfff0707f" + }, + "hlv_d": { + "encoding": "011011000000-----100-----1110011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_h"], + "match": "0x6c004073", + "mask": "0xfff0707f" + }, + "hlv_h": { + "encoding": "011001000000-----100-----1110011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_h"], + "match": "0x64004073", + "mask": "0xfff0707f" + }, + "hlv_hu": { + "encoding": "011001000001-----100-----1110011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_h"], + "match": "0x64104073", + "mask": "0xfff0707f" + }, + "hlv_w": { + "encoding": "011010000000-----100-----1110011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_h"], + "match": "0x68004073", + "mask": "0xfff0707f" + }, + "hlv_wu": { + "encoding": "011010000001-----100-----1110011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_h"], + "match": "0x68104073", + "mask": "0xfff0707f" + }, + "hlvx_hu": { + "encoding": "011001000011-----100-----1110011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_h"], + "match": "0x64304073", + "mask": "0xfff0707f" + }, + "hlvx_wu": { + "encoding": "011010000011-----100-----1110011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_h"], + "match": "0x68304073", + "mask": "0xfff0707f" + }, + "hsv_b": { + "encoding": "0110001----------100000001110011", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv_h"], + "match": "0x62004073", + "mask": "0xfe007fff" + }, + "hsv_d": { + "encoding": "0110111----------100000001110011", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv64_h"], + "match": "0x6e004073", + "mask": "0xfe007fff" + }, + "hsv_h": { + "encoding": "0110011----------100000001110011", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv_h"], + "match": "0x66004073", + "mask": "0xfe007fff" + }, + "hsv_w": { + "encoding": "0110101----------100000001110011", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv_h"], + "match": "0x6a004073", + "mask": "0xfe007fff" + }, + "jal": { + "encoding": "-------------------------1101111", + "variable_fields": ["rd"], + "extension": ["rv_i"], + "match": "0x6f", + "mask": "0x7f" + }, + "jalr": { + "encoding": "-----------------000-----1100111", + "variable_fields": ["rd", "rs1", "imm12"], + "extension": ["rv_i"], + "match": "0x67", + "mask": "0x707f" + }, + "lb": { + "encoding": "-----------------000-----0000011", + "variable_fields": ["rd", "rs1", "imm12"], + "extension": ["rv_i"], + "match": "0x3", + "mask": "0x707f" + }, + "lb_aq": { + "encoding": "001101-00000-----000-----0101111", + "variable_fields": ["rd", "rs1", "rl"], + "extension": ["rv_zalasr"], + "match": "0x3400002f", + "mask": "0xfdf0707f" + }, + "lbu": { + "encoding": "-----------------100-----0000011", + "variable_fields": ["rd", "rs1", "imm12"], + "extension": ["rv_i"], + "match": "0x4003", + "mask": "0x707f" + }, + "ld": { + "encoding": "-----------------011-----0000011", + "variable_fields": ["rd", "rs1", "imm12"], + "extension": ["rv64_i"], + "match": "0x3003", + "mask": "0x707f" + }, + "ld_aq": { + "encoding": "001101-00000-----011-----0101111", + "variable_fields": ["rd", "rs1", "rl"], + "extension": ["rv_zalasr"], + "match": "0x3400302f", + "mask": "0xfdf0707f" + }, + "lh": { + "encoding": "-----------------001-----0000011", + "variable_fields": ["rd", "rs1", "imm12"], + "extension": ["rv_i"], + "match": "0x1003", + "mask": "0x707f" + }, + "lh_aq": { + "encoding": "001101-00000-----001-----0101111", + "variable_fields": ["rd", "rs1", "rl"], + "extension": ["rv_zalasr"], + "match": "0x3400102f", + "mask": "0xfdf0707f" + }, + "lhu": { + "encoding": "-----------------101-----0000011", + "variable_fields": ["rd", "rs1", "imm12"], + "extension": ["rv_i"], + "match": "0x5003", + "mask": "0x707f" + }, + "lpad": { + "encoding": "--------------------000000010111", + "variable_fields": ["imm20"], + "extension": ["rv_zicfilp"], + "match": "0x17", + "mask": "0xfff" + }, + "lr_d": { + "encoding": "00010--00000-----011-----0101111", + "variable_fields": ["rd", "rs1", "rl", "aq"], + "extension": ["rv64_a", "rv64_zalrsc"], + "match": "0x1000302f", + "mask": "0xf9f0707f" + }, + "lr_w": { + "encoding": "00010--00000-----010-----0101111", + "variable_fields": ["rd", "rs1", "rl", "aq"], + "extension": ["rv_a", "rv_zalrsc"], + "match": "0x1000202f", + "mask": "0xf9f0707f" + }, + "lui": { + "encoding": "-------------------------0110111", + "variable_fields": ["rd", "imm20"], + "extension": ["rv_i"], + "match": "0x37", + "mask": "0x7f" + }, + "lw": { + "encoding": "-----------------010-----0000011", + "variable_fields": ["rd", "rs1", "imm12"], + "extension": ["rv_i"], + "match": "0x2003", + "mask": "0x707f" + }, + "lw_aq": { + "encoding": "001101-00000-----010-----0101111", + "variable_fields": ["rd", "rs1", "rl"], + "extension": ["rv_zalasr"], + "match": "0x3400202f", + "mask": "0xfdf0707f" + }, + "lwu": { + "encoding": "-----------------110-----0000011", + "variable_fields": ["rd", "rs1", "imm12"], + "extension": ["rv64_i"], + "match": "0x6003", + "mask": "0x707f" + }, + "max": { + "encoding": "0000101----------110-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbb"], + "match": "0xa006033", + "mask": "0xfe00707f" + }, + "maxu": { + "encoding": "0000101----------111-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbb"], + "match": "0xa007033", + "mask": "0xfe00707f" + }, + "min": { + "encoding": "0000101----------100-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbb"], + "match": "0xa004033", + "mask": "0xfe00707f" + }, + "minu": { + "encoding": "0000101----------101-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbb"], + "match": "0xa005033", + "mask": "0xfe00707f" + }, + "mnret": { + "encoding": "01110000001000000000000001110011", + "variable_fields": [], + "extension": ["rv_smrnmi"], + "match": "0x70200073", + "mask": "0xffffffff" + }, + "mop_r_n": { + "encoding": "1-00--0111-------100-----1110011", + "variable_fields": [ + "rd", + "rs1", + "mop_r_t_21_20", + "mop_r_t_27_26", + "mop_r_t_30" + ], + "extension": ["rv_zimop"], + "match": "0x81c04073", + "mask": "0xb3c0707f" + }, + "mop_rr_n": { + "encoding": "1-00--1----------100-----1110011", + "variable_fields": ["rd", "rs1", "rs2", "mop_rr_t_27_26", "mop_rr_t_30"], + "extension": ["rv_zimop"], + "match": "0x82004073", + "mask": "0xb200707f" + }, + "mret": { + "encoding": "00110000001000000000000001110011", + "variable_fields": [], + "extension": ["rv_sm"], + "match": "0x30200073", + "mask": "0xffffffff" + }, + "mul": { + "encoding": "0000001----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_m", "rv_zmmul"], + "match": "0x2000033", + "mask": "0xfe00707f" + }, + "mulh": { + "encoding": "0000001----------001-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_m", "rv_zmmul"], + "match": "0x2001033", + "mask": "0xfe00707f" + }, + "mulhsu": { + "encoding": "0000001----------010-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_m", "rv_zmmul"], + "match": "0x2002033", + "mask": "0xfe00707f" + }, + "mulhu": { + "encoding": "0000001----------011-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_m", "rv_zmmul"], + "match": "0x2003033", + "mask": "0xfe00707f" + }, + "mulw": { + "encoding": "0000001----------000-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_m", "rv64_zmmul"], + "match": "0x200003b", + "mask": "0xfe00707f" + }, + "or": { + "encoding": "0000000----------110-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_i"], + "match": "0x6033", + "mask": "0xfe00707f" + }, + "orc_b": { + "encoding": "001010000111-----101-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_b", "rv_zbb"], + "match": "0x28705013", + "mask": "0xfff0707f" + }, + "ori": { + "encoding": "-----------------110-----0010011", + "variable_fields": ["rd", "rs1", "imm12"], + "extension": ["rv_i"], + "match": "0x6013", + "mask": "0x707f" + }, + "orn": { + "encoding": "0100000----------110-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbb", "rv_zbkb", "rv_zk", "rv_zkn", "rv_zks"], + "match": "0x40006033", + "mask": "0xfe00707f" + }, + "pack": { + "encoding": "0000100----------100-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zbkb", "rv_zk", "rv_zkn", "rv_zks"], + "match": "0x8004033", + "mask": "0xfe00707f" + }, + "packh": { + "encoding": "0000100----------111-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zbkb", "rv_zk", "rv_zkn", "rv_zks"], + "match": "0x8007033", + "mask": "0xfe00707f" + }, + "packw": { + "encoding": "0000100----------100-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_zbkb", "rv64_zk", "rv64_zkn", "rv64_zks"], + "match": "0x800403b", + "mask": "0xfe00707f" + }, + "rem": { + "encoding": "0000001----------110-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_m"], + "match": "0x2006033", + "mask": "0xfe00707f" + }, + "remu": { + "encoding": "0000001----------111-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_m"], + "match": "0x2007033", + "mask": "0xfe00707f" + }, + "remuw": { + "encoding": "0000001----------111-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_m"], + "match": "0x200703b", + "mask": "0xfe00707f" + }, + "remw": { + "encoding": "0000001----------110-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_m"], + "match": "0x200603b", + "mask": "0xfe00707f" + }, + "rev8": { + "encoding": "011010111000-----101-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_b", "rv64_zbb", "rv64_zbkb"], + "match": "0x6b805013", + "mask": "0xfff0707f" + }, + "rol": { + "encoding": "0110000----------001-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbb", "rv_zbkb", "rv_zk", "rv_zkn", "rv_zks"], + "match": "0x60001033", + "mask": "0xfe00707f" + }, + "rolw": { + "encoding": "0110000----------001-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": [ + "rv64_b", + "rv64_zbb", + "rv64_zbkb", + "rv64_zk", + "rv64_zkn", + "rv64_zks" + ], + "match": "0x6000103b", + "mask": "0xfe00707f" + }, + "ror": { + "encoding": "0110000----------101-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbb", "rv_zbkb", "rv_zk", "rv_zkn", "rv_zks"], + "match": "0x60005033", + "mask": "0xfe00707f" + }, + "rori": { + "encoding": "011000-----------101-----0010011", + "variable_fields": ["rd", "rs1", "shamtd"], + "extension": [ + "rv64_b", + "rv64_zbb", + "rv64_zbkb", + "rv64_zk", + "rv64_zkn", + "rv64_zks" + ], + "match": "0x60005013", + "mask": "0xfc00707f" + }, + "roriw": { + "encoding": "0110000----------101-----0011011", + "variable_fields": ["rd", "rs1", "shamtw"], + "extension": [ + "rv64_b", + "rv64_zbb", + "rv64_zbkb", + "rv64_zk", + "rv64_zkn", + "rv64_zks" + ], + "match": "0x6000501b", + "mask": "0xfe00707f" + }, + "rorw": { + "encoding": "0110000----------101-----0111011", + "variable_fields": ["rd", "rs1"], + "extension": [ + "rv64_b", + "rv64_zbb", + "rv64_zbkb", + "rv64_zk", + "rv64_zkn", + "rv64_zks" + ], + "match": "0x6000503b", + "mask": "0xfe00707f" + }, + "sb": { + "encoding": "-----------------000-----0100011", + "variable_fields": ["rs1", "rs2", "imm12hi", "imm12lo"], + "extension": ["rv_i"], + "match": "0x23", + "mask": "0x707f" + }, + "sb_rl": { + "encoding": "00111-1----------000000000101111", + "variable_fields": ["rs1", "rs2", "aq"], + "extension": ["rv_zalasr"], + "match": "0x3a00002f", + "mask": "0xfa007fff" + }, + "sc_d": { + "encoding": "00011------------011-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv64_a", "rv64_zalrsc"], + "match": "0x1800302f", + "mask": "0xf800707f" + }, + "sc_w": { + "encoding": "00011------------010-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_a", "rv_zalrsc"], + "match": "0x1800202f", + "mask": "0xf800707f" + }, + "sctrclr": { + "encoding": "00010000010000000000000001110011", + "variable_fields": [], + "extension": ["rv_smdbltrp"], + "match": "0x10400073", + "mask": "0xffffffff" + }, + "sd": { + "encoding": "-----------------011-----0100011", + "variable_fields": ["rs2", "rs1", "imm12hi", "imm12lo"], + "extension": ["rv64_i"], + "match": "0x3023", + "mask": "0x707f" + }, + "sd_rl": { + "encoding": "00111-1----------011000000101111", + "variable_fields": ["rs1", "rs2", "aq"], + "extension": ["rv_zalasr"], + "match": "0x3a00302f", + "mask": "0xfa007fff" + }, + "sext_b": { + "encoding": "011000000100-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_b", "rv_zbb"], + "match": "0x60401013", + "mask": "0xfff0707f" + }, + "sext_h": { + "encoding": "011000000101-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_b", "rv_zbb"], + "match": "0x60501013", + "mask": "0xfff0707f" + }, + "sfence_inval_ir": { + "encoding": "00011000000100000000000001110011", + "variable_fields": [], + "extension": ["rv_svinval"], + "match": "0x18100073", + "mask": "0xffffffff" + }, + "sfence_vma": { + "encoding": "0001001----------000000001110011", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv_s"], + "match": "0x12000073", + "mask": "0xfe007fff" + }, + "sfence_w_inval": { + "encoding": "00011000000000000000000001110011", + "variable_fields": [], + "extension": ["rv_svinval"], + "match": "0x18000073", + "mask": "0xffffffff" + }, + "sh": { + "encoding": "-----------------001-----0100011", + "variable_fields": ["rs1", "rs2", "imm12hi", "imm12lo"], + "extension": ["rv_i"], + "match": "0x1023", + "mask": "0x707f" + }, + "sh1add": { + "encoding": "0010000----------010-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zba"], + "match": "0x20002033", + "mask": "0xfe00707f" + }, + "sh1add_uw": { + "encoding": "0010000----------010-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_b", "rv64_zba"], + "match": "0x2000203b", + "mask": "0xfe00707f" + }, + "sh2add": { + "encoding": "0010000----------100-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zba"], + "match": "0x20004033", + "mask": "0xfe00707f" + }, + "sh2add_uw": { + "encoding": "0010000----------100-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_b", "rv64_zba"], + "match": "0x2000403b", + "mask": "0xfe00707f" + }, + "sh3add": { + "encoding": "0010000----------110-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zba"], + "match": "0x20006033", + "mask": "0xfe00707f" + }, + "sh3add_uw": { + "encoding": "0010000----------110-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_b", "rv64_zba"], + "match": "0x2000603b", + "mask": "0xfe00707f" + }, + "sh_rl": { + "encoding": "00111-1----------001000000101111", + "variable_fields": ["rs1", "rs2", "aq"], + "extension": ["rv_zalasr"], + "match": "0x3a00102f", + "mask": "0xfa007fff" + }, + "sha256sig0": { + "encoding": "000100000010-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_zk", "rv_zkn", "rv_zknh"], + "match": "0x10201013", + "mask": "0xfff0707f" + }, + "sha256sig1": { + "encoding": "000100000011-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_zk", "rv_zkn", "rv_zknh"], + "match": "0x10301013", + "mask": "0xfff0707f" + }, + "sha256sum0": { + "encoding": "000100000000-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_zk", "rv_zkn", "rv_zknh"], + "match": "0x10001013", + "mask": "0xfff0707f" + }, + "sha256sum1": { + "encoding": "000100000001-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_zk", "rv_zkn", "rv_zknh"], + "match": "0x10101013", + "mask": "0xfff0707f" + }, + "sha512sig0": { + "encoding": "000100000110-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_zk", "rv64_zkn", "rv64_zknh"], + "match": "0x10601013", + "mask": "0xfff0707f" + }, + "sha512sig0h": { + "encoding": "0101110----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv32_zk", "rv32_zkn", "rv32_zknh"], + "match": "0x5c000033", + "mask": "0xfe00707f" + }, + "sha512sig0l": { + "encoding": "0101010----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv32_zk", "rv32_zkn", "rv32_zknh"], + "match": "0x54000033", + "mask": "0xfe00707f" + }, + "sha512sig1": { + "encoding": "000100000111-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_zk", "rv64_zkn", "rv64_zknh"], + "match": "0x10701013", + "mask": "0xfff0707f" + }, + "sha512sig1h": { + "encoding": "0101111----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv32_zk", "rv32_zkn", "rv32_zknh"], + "match": "0x5e000033", + "mask": "0xfe00707f" + }, + "sha512sig1l": { + "encoding": "0101011----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv32_zk", "rv32_zkn", "rv32_zknh"], + "match": "0x56000033", + "mask": "0xfe00707f" + }, + "sha512sum0": { + "encoding": "000100000100-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_zk", "rv64_zkn", "rv64_zknh"], + "match": "0x10401013", + "mask": "0xfff0707f" + }, + "sha512sum0r": { + "encoding": "0101000----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv32_zk", "rv32_zkn", "rv32_zknh"], + "match": "0x50000033", + "mask": "0xfe00707f" + }, + "sha512sum1": { + "encoding": "000100000101-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_zk", "rv64_zkn", "rv64_zknh"], + "match": "0x10501013", + "mask": "0xfff0707f" + }, + "sha512sum1r": { + "encoding": "0101001----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv32_zk", "rv32_zkn", "rv32_zknh"], + "match": "0x52000033", + "mask": "0xfe00707f" + }, + "sinval_vma": { + "encoding": "0001011----------000000001110011", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv_svinval"], + "match": "0x16000073", + "mask": "0xfe007fff" + }, + "sll": { + "encoding": "0000000----------001-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_i"], + "match": "0x1033", + "mask": "0xfe00707f" + }, + "slli": { + "encoding": "000000-----------001-----0010011", + "variable_fields": ["rd", "rs1", "shamtd"], + "extension": ["rv64_i"], + "match": "0x1013", + "mask": "0xfc00707f" + }, + "slli_uw": { + "encoding": "000010-----------001-----0011011", + "variable_fields": ["rd", "rs1", "shamtd"], + "extension": ["rv64_b", "rv64_zba"], + "match": "0x800101b", + "mask": "0xfc00707f" + }, + "slliw": { + "encoding": "0000000----------001-----0011011", + "variable_fields": ["rd", "rs1", "shamtw"], + "extension": ["rv64_i"], + "match": "0x101b", + "mask": "0xfe00707f" + }, + "sllw": { + "encoding": "0000000----------001-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_i"], + "match": "0x103b", + "mask": "0xfe00707f" + }, + "slt": { + "encoding": "0000000----------010-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_i"], + "match": "0x2033", + "mask": "0xfe00707f" + }, + "slti": { + "encoding": "-----------------010-----0010011", + "variable_fields": ["rd", "rs1", "imm12"], + "extension": ["rv_i"], + "match": "0x2013", + "mask": "0x707f" + }, + "sltiu": { + "encoding": "-----------------011-----0010011", + "variable_fields": ["rd", "rs1", "imm12"], + "extension": ["rv_i"], + "match": "0x3013", + "mask": "0x707f" + }, + "sltu": { + "encoding": "0000000----------011-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_i"], + "match": "0x3033", + "mask": "0xfe00707f" + }, + "sm3p0": { + "encoding": "000100001000-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_zks", "rv_zksh"], + "match": "0x10801013", + "mask": "0xfff0707f" + }, + "sm3p1": { + "encoding": "000100001001-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_zks", "rv_zksh"], + "match": "0x10901013", + "mask": "0xfff0707f" + }, + "sm4ed": { + "encoding": "--11000----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2", "bs"], + "extension": ["rv_zks", "rv_zksed"], + "match": "0x30000033", + "mask": "0x3e00707f" + }, + "sm4ks": { + "encoding": "--11010----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2", "bs"], + "extension": ["rv_zks", "rv_zksed"], + "match": "0x34000033", + "mask": "0x3e00707f" + }, + "sra": { + "encoding": "0100000----------101-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_i"], + "match": "0x40005033", + "mask": "0xfe00707f" + }, + "srai": { + "encoding": "010000-----------101-----0010011", + "variable_fields": ["rd", "rs1", "shamtd"], + "extension": ["rv64_i"], + "match": "0x40005013", + "mask": "0xfc00707f" + }, + "sraiw": { + "encoding": "0100000----------101-----0011011", + "variable_fields": ["rd", "rs1", "shamtw"], + "extension": ["rv64_i"], + "match": "0x4000501b", + "mask": "0xfe00707f" + }, + "sraw": { + "encoding": "0100000----------101-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_i"], + "match": "0x4000503b", + "mask": "0xfe00707f" + }, + "sret": { + "encoding": "00010000001000000000000001110011", + "variable_fields": [], + "extension": ["rv_s"], + "match": "0x10200073", + "mask": "0xffffffff" + }, + "srl": { + "encoding": "0000000----------101-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_i"], + "match": "0x5033", + "mask": "0xfe00707f" + }, + "srli": { + "encoding": "000000-----------101-----0010011", + "variable_fields": ["rd", "rs1", "shamtd"], + "extension": ["rv64_i"], + "match": "0x5013", + "mask": "0xfc00707f" + }, + "srliw": { + "encoding": "0000000----------101-----0011011", + "variable_fields": ["rd", "rs1", "shamtw"], + "extension": ["rv64_i"], + "match": "0x501b", + "mask": "0xfe00707f" + }, + "srlw": { + "encoding": "0000000----------101-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_i"], + "match": "0x503b", + "mask": "0xfe00707f" + }, + "ssamoswap_d": { + "encoding": "01001------------011-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zicfiss"], + "match": "0x4800302f", + "mask": "0xf800707f" + }, + "ssamoswap_w": { + "encoding": "01001------------010-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zicfiss"], + "match": "0x4800202f", + "mask": "0xf800707f" + }, + "sspopchk_x1": { + "encoding": "11001101110000001100000001110011", + "variable_fields": [], + "extension": ["rv_zicfiss"], + "match": "0xcdc0c073", + "mask": "0xffffffff" + }, + "sspopchk_x5": { + "encoding": "11001101110000101100000001110011", + "variable_fields": [], + "extension": ["rv_zicfiss"], + "match": "0xcdc2c073", + "mask": "0xffffffff" + }, + "sspush_x1": { + "encoding": "11001110000100000100000001110011", + "variable_fields": [], + "extension": ["rv_zicfiss"], + "match": "0xce104073", + "mask": "0xffffffff" + }, + "sspush_x5": { + "encoding": "11001110010100000100000001110011", + "variable_fields": [], + "extension": ["rv_zicfiss"], + "match": "0xce504073", + "mask": "0xffffffff" + }, + "ssrdp": { + "encoding": "11001101110000000100-----1110011", + "variable_fields": ["rd"], + "extension": ["rv_zicfiss"], + "match": "0xcdc04073", + "mask": "0xfffff07f" + }, + "sub": { + "encoding": "0100000----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_i"], + "match": "0x40000033", + "mask": "0xfe00707f" + }, + "subw": { + "encoding": "0100000----------000-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_i"], + "match": "0x4000003b", + "mask": "0xfe00707f" + }, + "sw": { + "encoding": "-----------------010-----0100011", + "variable_fields": ["rs1", "rs2", "imm12hi", "imm12lo"], + "extension": ["rv_i"], + "match": "0x2023", + "mask": "0x707f" + }, + "sw_rl": { + "encoding": "00111-1----------010000000101111", + "variable_fields": ["rs1", "rs2", "aq"], + "extension": ["rv_zalasr"], + "match": "0x3a00202f", + "mask": "0xfa007fff" + }, + "unzip": { + "encoding": "000010001111-----101-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv32_zbkb"], + "match": "0x8f05013", + "mask": "0xfff0707f" + }, + "vaadd_vv": { + "encoding": "001001-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x24002057", + "mask": "0xfc00707f" + }, + "vaadd_vx": { + "encoding": "001001-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x24006057", + "mask": "0xfc00707f" + }, + "vaaddu_vv": { + "encoding": "001000-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x20002057", + "mask": "0xfc00707f" + }, + "vaaddu_vx": { + "encoding": "001000-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x20006057", + "mask": "0xfc00707f" + }, + "vadc_vim": { + "encoding": "0100000----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2"], + "extension": ["rv_v"], + "match": "0x40003057", + "mask": "0xfe00707f" + }, + "vadc_vvm": { + "encoding": "0100000----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x40000057", + "mask": "0xfe00707f" + }, + "vadc_vxm": { + "encoding": "0100000----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2"], + "extension": ["rv_v"], + "match": "0x40004057", + "mask": "0xfe00707f" + }, + "vadd_vi": { + "encoding": "000000-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x3057", + "mask": "0xfc00707f" + }, + "vadd_vv": { + "encoding": "000000-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x57", + "mask": "0xfc00707f" + }, + "vadd_vx": { + "encoding": "000000-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4057", + "mask": "0xfc00707f" + }, + "vaesdf_vs": { + "encoding": "1010011-----00001010-----1110111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_zvkn", "rv_zvkned"], + "match": "0xa600a077", + "mask": "0xfe0ff07f" + }, + "vaesdf_vv": { + "encoding": "1010001-----00001010-----1110111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_zvkn", "rv_zvkned"], + "match": "0xa200a077", + "mask": "0xfe0ff07f" + }, + "vaesdm_vs": { + "encoding": "1010011-----00000010-----1110111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_zvkn", "rv_zvkned"], + "match": "0xa6002077", + "mask": "0xfe0ff07f" + }, + "vaesdm_vv": { + "encoding": "1010001-----00000010-----1110111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_zvkn", "rv_zvkned"], + "match": "0xa2002077", + "mask": "0xfe0ff07f" + }, + "vaesef_vs": { + "encoding": "1010011-----00011010-----1110111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_zvkn", "rv_zvkned"], + "match": "0xa601a077", + "mask": "0xfe0ff07f" + }, + "vaesef_vv": { + "encoding": "1010001-----00011010-----1110111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_zvkn", "rv_zvkned"], + "match": "0xa201a077", + "mask": "0xfe0ff07f" + }, + "vaesem_vs": { + "encoding": "1010011-----00010010-----1110111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_zvkn", "rv_zvkned"], + "match": "0xa6012077", + "mask": "0xfe0ff07f" + }, + "vaesem_vv": { + "encoding": "1010001-----00010010-----1110111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_zvkn", "rv_zvkned"], + "match": "0xa2012077", + "mask": "0xfe0ff07f" + }, + "vaeskf1_vi": { + "encoding": "1000101----------010-----1110111", + "variable_fields": ["vd", "zimm5", "vs2"], + "extension": ["rv_zvkn", "rv_zvkned"], + "match": "0x8a002077", + "mask": "0xfe00707f" + }, + "vaeskf2_vi": { + "encoding": "1010101----------010-----1110111", + "variable_fields": ["vd", "zimm5", "vs2"], + "extension": ["rv_zvkn", "rv_zvkned"], + "match": "0xaa002077", + "mask": "0xfe00707f" + }, + "vaesz_vs": { + "encoding": "1010011-----00111010-----1110111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_zvkn", "rv_zvkned"], + "match": "0xa603a077", + "mask": "0xfe0ff07f" + }, + "vand_vi": { + "encoding": "001001-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x24003057", + "mask": "0xfc00707f" + }, + "vand_vv": { + "encoding": "001001-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x24000057", + "mask": "0xfc00707f" + }, + "vand_vx": { + "encoding": "001001-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x24004057", + "mask": "0xfc00707f" + }, + "vandn_vv": { + "encoding": "000001-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0x4000057", + "mask": "0xfc00707f" + }, + "vandn_vx": { + "encoding": "000001-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0x4004057", + "mask": "0xfc00707f" + }, + "vasub_vv": { + "encoding": "001011-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x2c002057", + "mask": "0xfc00707f" + }, + "vasub_vx": { + "encoding": "001011-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x2c006057", + "mask": "0xfc00707f" + }, + "vasubu_vv": { + "encoding": "001010-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x28002057", + "mask": "0xfc00707f" + }, + "vasubu_vx": { + "encoding": "001010-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x28006057", + "mask": "0xfc00707f" + }, + "vbrev8_v": { + "encoding": "010010------01000010-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0x48042057", + "mask": "0xfc0ff07f" + }, + "vbrev_v": { + "encoding": "010010------01010010-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0x48052057", + "mask": "0xfc0ff07f" + }, + "vclmul_vv": { + "encoding": "001100-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_zvbc", "rv_zvkn", "rv_zvks"], + "match": "0x30002057", + "mask": "0xfc00707f" + }, + "vclmul_vx": { + "encoding": "001100-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_zvbc", "rv_zvkn", "rv_zvks"], + "match": "0x30006057", + "mask": "0xfc00707f" + }, + "vclmulh_vv": { + "encoding": "001101-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_zvbc", "rv_zvkn", "rv_zvks"], + "match": "0x34002057", + "mask": "0xfc00707f" + }, + "vclmulh_vx": { + "encoding": "001101-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_zvbc", "rv_zvkn", "rv_zvks"], + "match": "0x34006057", + "mask": "0xfc00707f" + }, + "vclz_v": { + "encoding": "010010------01100010-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0x48062057", + "mask": "0xfc0ff07f" + }, + "vcompress_vm": { + "encoding": "0101111----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x5e002057", + "mask": "0xfe00707f" + }, + "vcpop_m": { + "encoding": "010000------10000010-----1010111", + "variable_fields": ["rd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x40082057", + "mask": "0xfc0ff07f" + }, + "vcpop_v": { + "encoding": "010010------01110010-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0x48072057", + "mask": "0xfc0ff07f" + }, + "vctz_v": { + "encoding": "010010------01101010-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0x4806a057", + "mask": "0xfc0ff07f" + }, + "vdiv_vv": { + "encoding": "100001-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x84002057", + "mask": "0xfc00707f" + }, + "vdiv_vx": { + "encoding": "100001-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x84006057", + "mask": "0xfc00707f" + }, + "vdivu_vv": { + "encoding": "100000-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x80002057", + "mask": "0xfc00707f" + }, + "vdivu_vx": { + "encoding": "100000-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x80006057", + "mask": "0xfc00707f" + }, + "vfadd_vf": { + "encoding": "000000-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x5057", + "mask": "0xfc00707f" + }, + "vfadd_vv": { + "encoding": "000000-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x1057", + "mask": "0xfc00707f" + }, + "vfclass_v": { + "encoding": "010011------10000001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4c081057", + "mask": "0xfc0ff07f" + }, + "vfcvt_f_x_v": { + "encoding": "010010------00011001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x48019057", + "mask": "0xfc0ff07f" + }, + "vfcvt_f_xu_v": { + "encoding": "010010------00010001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x48011057", + "mask": "0xfc0ff07f" + }, + "vfcvt_rtz_x_f_v": { + "encoding": "010010------00111001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x48039057", + "mask": "0xfc0ff07f" + }, + "vfcvt_rtz_xu_f_v": { + "encoding": "010010------00110001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x48031057", + "mask": "0xfc0ff07f" + }, + "vfcvt_x_f_v": { + "encoding": "010010------00001001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x48009057", + "mask": "0xfc0ff07f" + }, + "vfcvt_xu_f_v": { + "encoding": "010010------00000001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x48001057", + "mask": "0xfc0ff07f" + }, + "vfdiv_vf": { + "encoding": "100000-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x80005057", + "mask": "0xfc00707f" + }, + "vfdiv_vv": { + "encoding": "100000-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x80001057", + "mask": "0xfc00707f" + }, + "vfirst_m": { + "encoding": "010000------10001010-----1010111", + "variable_fields": ["rd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4008a057", + "mask": "0xfc0ff07f" + }, + "vfmacc_vf": { + "encoding": "101100-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xb0005057", + "mask": "0xfc00707f" + }, + "vfmacc_vv": { + "encoding": "101100-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xb0001057", + "mask": "0xfc00707f" + }, + "vfmadd_vf": { + "encoding": "101000-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa0005057", + "mask": "0xfc00707f" + }, + "vfmadd_vv": { + "encoding": "101000-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa0001057", + "mask": "0xfc00707f" + }, + "vfmax_vf": { + "encoding": "000110-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x18005057", + "mask": "0xfc00707f" + }, + "vfmax_vv": { + "encoding": "000110-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x18001057", + "mask": "0xfc00707f" + }, + "vfmerge_vfm": { + "encoding": "0101110----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2"], + "extension": ["rv_v"], + "match": "0x5c005057", + "mask": "0xfe00707f" + }, + "vfmin_vf": { + "encoding": "000100-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x10005057", + "mask": "0xfc00707f" + }, + "vfmin_vv": { + "encoding": "000100-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x10001057", + "mask": "0xfc00707f" + }, + "vfmsac_vf": { + "encoding": "101110-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xb8005057", + "mask": "0xfc00707f" + }, + "vfmsac_vv": { + "encoding": "101110-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xb8001057", + "mask": "0xfc00707f" + }, + "vfmsub_vf": { + "encoding": "101010-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa8005057", + "mask": "0xfc00707f" + }, + "vfmsub_vv": { + "encoding": "101010-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa8001057", + "mask": "0xfc00707f" + }, + "vfmul_vf": { + "encoding": "100100-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x90005057", + "mask": "0xfc00707f" + }, + "vfmul_vv": { + "encoding": "100100-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x90001057", + "mask": "0xfc00707f" + }, + "vfmv_f_s": { + "encoding": "0100001-----00000001-----1010111", + "variable_fields": ["rd", "vs2"], + "extension": ["rv_v"], + "match": "0x42001057", + "mask": "0xfe0ff07f" + }, + "vfmv_s_f": { + "encoding": "010000100000-----101-----1010111", + "variable_fields": ["vd", "rs1"], + "extension": ["rv_v"], + "match": "0x42005057", + "mask": "0xfff0707f" + }, + "vfmv_v_f": { + "encoding": "010111100000-----101-----1010111", + "variable_fields": ["vd", "rs1"], + "extension": ["rv_v"], + "match": "0x5e005057", + "mask": "0xfff0707f" + }, + "vfncvt_f_f_w": { + "encoding": "010010------10100001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x480a1057", + "mask": "0xfc0ff07f" + }, + "vfncvt_f_x_w": { + "encoding": "010010------10011001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x48099057", + "mask": "0xfc0ff07f" + }, + "vfncvt_f_xu_w": { + "encoding": "010010------10010001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x48091057", + "mask": "0xfc0ff07f" + }, + "vfncvt_rod_f_f_w": { + "encoding": "010010------10101001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x480a9057", + "mask": "0xfc0ff07f" + }, + "vfncvt_rtz_x_f_w": { + "encoding": "010010------10111001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x480b9057", + "mask": "0xfc0ff07f" + }, + "vfncvt_rtz_xu_f_w": { + "encoding": "010010------10110001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x480b1057", + "mask": "0xfc0ff07f" + }, + "vfncvt_x_f_w": { + "encoding": "010010------10001001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x48089057", + "mask": "0xfc0ff07f" + }, + "vfncvt_xu_f_w": { + "encoding": "010010------10000001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x48081057", + "mask": "0xfc0ff07f" + }, + "vfncvtbf16_f_f_w": { + "encoding": "010010------11101001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_zvfbfmin"], + "match": "0x480e9057", + "mask": "0xfc0ff07f" + }, + "vfnmacc_vf": { + "encoding": "101101-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xb4005057", + "mask": "0xfc00707f" + }, + "vfnmacc_vv": { + "encoding": "101101-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xb4001057", + "mask": "0xfc00707f" + }, + "vfnmadd_vf": { + "encoding": "101001-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa4005057", + "mask": "0xfc00707f" + }, + "vfnmadd_vv": { + "encoding": "101001-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa4001057", + "mask": "0xfc00707f" + }, + "vfnmsac_vf": { + "encoding": "101111-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xbc005057", + "mask": "0xfc00707f" + }, + "vfnmsac_vv": { + "encoding": "101111-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xbc001057", + "mask": "0xfc00707f" + }, + "vfnmsub_vf": { + "encoding": "101011-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xac005057", + "mask": "0xfc00707f" + }, + "vfnmsub_vv": { + "encoding": "101011-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xac001057", + "mask": "0xfc00707f" + }, + "vfrdiv_vf": { + "encoding": "100001-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x84005057", + "mask": "0xfc00707f" + }, + "vfrec7_v": { + "encoding": "010011------00101001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4c029057", + "mask": "0xfc0ff07f" + }, + "vfredmax_vs": { + "encoding": "000111-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x1c001057", + "mask": "0xfc00707f" + }, + "vfredmin_vs": { + "encoding": "000101-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x14001057", + "mask": "0xfc00707f" + }, + "vfredosum_vs": { + "encoding": "000011-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc001057", + "mask": "0xfc00707f" + }, + "vfredusum_vs": { + "encoding": "000001-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4001057", + "mask": "0xfc00707f" + }, + "vfrsqrt7_v": { + "encoding": "010011------00100001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4c021057", + "mask": "0xfc0ff07f" + }, + "vfrsub_vf": { + "encoding": "100111-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x9c005057", + "mask": "0xfc00707f" + }, + "vfsgnj_vf": { + "encoding": "001000-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x20005057", + "mask": "0xfc00707f" + }, + "vfsgnj_vv": { + "encoding": "001000-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x20001057", + "mask": "0xfc00707f" + }, + "vfsgnjn_vf": { + "encoding": "001001-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x24005057", + "mask": "0xfc00707f" + }, + "vfsgnjn_vv": { + "encoding": "001001-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x24001057", + "mask": "0xfc00707f" + }, + "vfsgnjx_vf": { + "encoding": "001010-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x28005057", + "mask": "0xfc00707f" + }, + "vfsgnjx_vv": { + "encoding": "001010-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x28001057", + "mask": "0xfc00707f" + }, + "vfslide1down_vf": { + "encoding": "001111-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x3c005057", + "mask": "0xfc00707f" + }, + "vfslide1up_vf": { + "encoding": "001110-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x38005057", + "mask": "0xfc00707f" + }, + "vfsqrt_v": { + "encoding": "010011------00000001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4c001057", + "mask": "0xfc0ff07f" + }, + "vfsub_vf": { + "encoding": "000010-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x8005057", + "mask": "0xfc00707f" + }, + "vfsub_vv": { + "encoding": "000010-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x8001057", + "mask": "0xfc00707f" + }, + "vfwadd_vf": { + "encoding": "110000-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc0005057", + "mask": "0xfc00707f" + }, + "vfwadd_vv": { + "encoding": "110000-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc0001057", + "mask": "0xfc00707f" + }, + "vfwadd_wf": { + "encoding": "110100-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xd0005057", + "mask": "0xfc00707f" + }, + "vfwadd_wv": { + "encoding": "110100-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xd0001057", + "mask": "0xfc00707f" + }, + "vfwcvt_f_f_v": { + "encoding": "010010------01100001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x48061057", + "mask": "0xfc0ff07f" + }, + "vfwcvt_f_x_v": { + "encoding": "010010------01011001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x48059057", + "mask": "0xfc0ff07f" + }, + "vfwcvt_f_xu_v": { + "encoding": "010010------01010001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x48051057", + "mask": "0xfc0ff07f" + }, + "vfwcvt_rtz_x_f_v": { + "encoding": "010010------01111001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x48079057", + "mask": "0xfc0ff07f" + }, + "vfwcvt_rtz_xu_f_v": { + "encoding": "010010------01110001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x48071057", + "mask": "0xfc0ff07f" + }, + "vfwcvt_x_f_v": { + "encoding": "010010------01001001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x48049057", + "mask": "0xfc0ff07f" + }, + "vfwcvt_xu_f_v": { + "encoding": "010010------01000001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x48041057", + "mask": "0xfc0ff07f" + }, + "vfwcvtbf16_f_f_v": { + "encoding": "010010------01101001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_zvfbfmin"], + "match": "0x48069057", + "mask": "0xfc0ff07f" + }, + "vfwmacc_vf": { + "encoding": "111100-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xf0005057", + "mask": "0xfc00707f" + }, + "vfwmacc_vv": { + "encoding": "111100-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xf0001057", + "mask": "0xfc00707f" + }, + "vfwmaccbf16_vf": { + "encoding": "111011-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_zvfbfwma"], + "match": "0xec005057", + "mask": "0xfc00707f" + }, + "vfwmaccbf16_vv": { + "encoding": "111011-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_zvfbfwma"], + "match": "0xec001057", + "mask": "0xfc00707f" + }, + "vfwmsac_vf": { + "encoding": "111110-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xf8005057", + "mask": "0xfc00707f" + }, + "vfwmsac_vv": { + "encoding": "111110-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xf8001057", + "mask": "0xfc00707f" + }, + "vfwmul_vf": { + "encoding": "111000-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xe0005057", + "mask": "0xfc00707f" + }, + "vfwmul_vv": { + "encoding": "111000-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xe0001057", + "mask": "0xfc00707f" + }, + "vfwnmacc_vf": { + "encoding": "111101-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xf4005057", + "mask": "0xfc00707f" + }, + "vfwnmacc_vv": { + "encoding": "111101-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xf4001057", + "mask": "0xfc00707f" + }, + "vfwnmsac_vf": { + "encoding": "111111-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xfc005057", + "mask": "0xfc00707f" + }, + "vfwnmsac_vv": { + "encoding": "111111-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xfc001057", + "mask": "0xfc00707f" + }, + "vfwredosum_vs": { + "encoding": "110011-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xcc001057", + "mask": "0xfc00707f" + }, + "vfwredusum_vs": { + "encoding": "110001-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc4001057", + "mask": "0xfc00707f" + }, + "vfwsub_vf": { + "encoding": "110010-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc8005057", + "mask": "0xfc00707f" + }, + "vfwsub_vv": { + "encoding": "110010-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc8001057", + "mask": "0xfc00707f" + }, + "vfwsub_wf": { + "encoding": "110110-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xd8005057", + "mask": "0xfc00707f" + }, + "vfwsub_wv": { + "encoding": "110110-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xd8001057", + "mask": "0xfc00707f" + }, + "vghsh_vv": { + "encoding": "1011001----------010-----1110111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_zvkg"], + "match": "0xb2002077", + "mask": "0xfe00707f" + }, + "vgmul_vv": { + "encoding": "1010001-----10001010-----1110111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_zvkg"], + "match": "0xa208a077", + "mask": "0xfe0ff07f" + }, + "vid_v": { + "encoding": "010100-0000010001010-----1010111", + "variable_fields": ["vd", "vm"], + "extension": ["rv_v"], + "match": "0x5008a057", + "mask": "0xfdfff07f" + }, + "viota_m": { + "encoding": "010100------10000010-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x50082057", + "mask": "0xfc0ff07f" + }, + "vl1re16_v": { + "encoding": "000000101000-----101-----0000111", + "variable_fields": ["vd", "rs1"], + "extension": ["rv_v"], + "match": "0x2805007", + "mask": "0xfff0707f" + }, + "vl1re32_v": { + "encoding": "000000101000-----110-----0000111", + "variable_fields": ["vd", "rs1"], + "extension": ["rv_v"], + "match": "0x2806007", + "mask": "0xfff0707f" + }, + "vl1re64_v": { + "encoding": "000000101000-----111-----0000111", + "variable_fields": ["vd", "rs1"], + "extension": ["rv_v"], + "match": "0x2807007", + "mask": "0xfff0707f" + }, + "vl1re8_v": { + "encoding": "000000101000-----000-----0000111", + "variable_fields": ["vd", "rs1"], + "extension": ["rv_v"], + "match": "0x2800007", + "mask": "0xfff0707f" + }, + "vl2re16_v": { + "encoding": "001000101000-----101-----0000111", + "variable_fields": ["vd", "rs1"], + "extension": ["rv_v"], + "match": "0x22805007", + "mask": "0xfff0707f" + }, + "vl2re32_v": { + "encoding": "001000101000-----110-----0000111", + "variable_fields": ["vd", "rs1"], + "extension": ["rv_v"], + "match": "0x22806007", + "mask": "0xfff0707f" + }, + "vl2re64_v": { + "encoding": "001000101000-----111-----0000111", + "variable_fields": ["vd", "rs1"], + "extension": ["rv_v"], + "match": "0x22807007", + "mask": "0xfff0707f" + }, + "vl2re8_v": { + "encoding": "001000101000-----000-----0000111", + "variable_fields": ["vd", "rs1"], + "extension": ["rv_v"], + "match": "0x22800007", + "mask": "0xfff0707f" + }, + "vl4re16_v": { + "encoding": "011000101000-----101-----0000111", + "variable_fields": ["vd", "rs1"], + "extension": ["rv_v"], + "match": "0x62805007", + "mask": "0xfff0707f" + }, + "vl4re32_v": { + "encoding": "011000101000-----110-----0000111", + "variable_fields": ["vd", "rs1"], + "extension": ["rv_v"], + "match": "0x62806007", + "mask": "0xfff0707f" + }, + "vl4re64_v": { + "encoding": "011000101000-----111-----0000111", + "variable_fields": ["vd", "rs1"], + "extension": ["rv_v"], + "match": "0x62807007", + "mask": "0xfff0707f" + }, + "vl4re8_v": { + "encoding": "011000101000-----000-----0000111", + "variable_fields": ["vd", "rs1"], + "extension": ["rv_v"], + "match": "0x62800007", + "mask": "0xfff0707f" + }, + "vl8re16_v": { + "encoding": "111000101000-----101-----0000111", + "variable_fields": ["vd", "rs1"], + "extension": ["rv_v"], + "match": "0xe2805007", + "mask": "0xfff0707f" + }, + "vl8re32_v": { + "encoding": "111000101000-----110-----0000111", + "variable_fields": ["vd", "rs1"], + "extension": ["rv_v"], + "match": "0xe2806007", + "mask": "0xfff0707f" + }, + "vl8re64_v": { + "encoding": "111000101000-----111-----0000111", + "variable_fields": ["vd", "rs1"], + "extension": ["rv_v"], + "match": "0xe2807007", + "mask": "0xfff0707f" + }, + "vl8re8_v": { + "encoding": "111000101000-----000-----0000111", + "variable_fields": ["vd", "rs1"], + "extension": ["rv_v"], + "match": "0xe2800007", + "mask": "0xfff0707f" + }, + "vle16_v": { + "encoding": "000000-00000-----101-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x5007", + "mask": "0xfdf0707f" + }, + "vle16ff_v": { + "encoding": "000000-10000-----101-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x1005007", + "mask": "0xfdf0707f" + }, + "vle32_v": { + "encoding": "000000-00000-----110-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x6007", + "mask": "0xfdf0707f" + }, + "vle32ff_v": { + "encoding": "000000-10000-----110-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x1006007", + "mask": "0xfdf0707f" + }, + "vle64_v": { + "encoding": "000000-00000-----111-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x7007", + "mask": "0xfdf0707f" + }, + "vle64ff_v": { + "encoding": "000000-10000-----111-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x1007007", + "mask": "0xfdf0707f" + }, + "vle8_v": { + "encoding": "000000-00000-----000-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x7", + "mask": "0xfdf0707f" + }, + "vle8ff_v": { + "encoding": "000000-10000-----000-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x1000007", + "mask": "0xfdf0707f" + }, + "vlm_v": { + "encoding": "000000101011-----000-----0000111", + "variable_fields": ["vd", "rs1"], + "extension": ["rv_v"], + "match": "0x2b00007", + "mask": "0xfff0707f" + }, + "vloxei16_v": { + "encoding": "000011-----------101-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc005007", + "mask": "0xfc00707f" + }, + "vloxei32_v": { + "encoding": "000011-----------110-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc006007", + "mask": "0xfc00707f" + }, + "vloxei64_v": { + "encoding": "000011-----------111-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc007007", + "mask": "0xfc00707f" + }, + "vloxei8_v": { + "encoding": "000011-----------000-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc000007", + "mask": "0xfc00707f" + }, + "vloxseg2ei16_v": { + "encoding": "001011-----------101-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x2c005007", + "mask": "0xfc00707f" + }, + "vloxseg2ei32_v": { + "encoding": "001011-----------110-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x2c006007", + "mask": "0xfc00707f" + }, + "vloxseg2ei64_v": { + "encoding": "001011-----------111-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x2c007007", + "mask": "0xfc00707f" + }, + "vloxseg2ei8_v": { + "encoding": "001011-----------000-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x2c000007", + "mask": "0xfc00707f" + }, + "vloxseg3ei16_v": { + "encoding": "010011-----------101-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4c005007", + "mask": "0xfc00707f" + }, + "vloxseg3ei32_v": { + "encoding": "010011-----------110-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4c006007", + "mask": "0xfc00707f" + }, + "vloxseg3ei64_v": { + "encoding": "010011-----------111-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4c007007", + "mask": "0xfc00707f" + }, + "vloxseg3ei8_v": { + "encoding": "010011-----------000-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4c000007", + "mask": "0xfc00707f" + }, + "vloxseg4ei16_v": { + "encoding": "011011-----------101-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x6c005007", + "mask": "0xfc00707f" + }, + "vloxseg4ei32_v": { + "encoding": "011011-----------110-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x6c006007", + "mask": "0xfc00707f" + }, + "vloxseg4ei64_v": { + "encoding": "011011-----------111-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x6c007007", + "mask": "0xfc00707f" + }, + "vloxseg4ei8_v": { + "encoding": "011011-----------000-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x6c000007", + "mask": "0xfc00707f" + }, + "vloxseg5ei16_v": { + "encoding": "100011-----------101-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x8c005007", + "mask": "0xfc00707f" + }, + "vloxseg5ei32_v": { + "encoding": "100011-----------110-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x8c006007", + "mask": "0xfc00707f" + }, + "vloxseg5ei64_v": { + "encoding": "100011-----------111-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x8c007007", + "mask": "0xfc00707f" + }, + "vloxseg5ei8_v": { + "encoding": "100011-----------000-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x8c000007", + "mask": "0xfc00707f" + }, + "vloxseg6ei16_v": { + "encoding": "101011-----------101-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xac005007", + "mask": "0xfc00707f" + }, + "vloxseg6ei32_v": { + "encoding": "101011-----------110-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xac006007", + "mask": "0xfc00707f" + }, + "vloxseg6ei64_v": { + "encoding": "101011-----------111-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xac007007", + "mask": "0xfc00707f" + }, + "vloxseg6ei8_v": { + "encoding": "101011-----------000-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xac000007", + "mask": "0xfc00707f" + }, + "vloxseg7ei16_v": { + "encoding": "110011-----------101-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xcc005007", + "mask": "0xfc00707f" + }, + "vloxseg7ei32_v": { + "encoding": "110011-----------110-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xcc006007", + "mask": "0xfc00707f" + }, + "vloxseg7ei64_v": { + "encoding": "110011-----------111-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xcc007007", + "mask": "0xfc00707f" + }, + "vloxseg7ei8_v": { + "encoding": "110011-----------000-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xcc000007", + "mask": "0xfc00707f" + }, + "vloxseg8ei16_v": { + "encoding": "111011-----------101-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xec005007", + "mask": "0xfc00707f" + }, + "vloxseg8ei32_v": { + "encoding": "111011-----------110-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xec006007", + "mask": "0xfc00707f" + }, + "vloxseg8ei64_v": { + "encoding": "111011-----------111-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xec007007", + "mask": "0xfc00707f" + }, + "vloxseg8ei8_v": { + "encoding": "111011-----------000-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xec000007", + "mask": "0xfc00707f" + }, + "vlse16_v": { + "encoding": "000010-----------101-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x8005007", + "mask": "0xfc00707f" + }, + "vlse32_v": { + "encoding": "000010-----------110-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x8006007", + "mask": "0xfc00707f" + }, + "vlse64_v": { + "encoding": "000010-----------111-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x8007007", + "mask": "0xfc00707f" + }, + "vlse8_v": { + "encoding": "000010-----------000-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x8000007", + "mask": "0xfc00707f" + }, + "vlseg2e16_v": { + "encoding": "001000-00000-----101-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x20005007", + "mask": "0xfdf0707f" + }, + "vlseg2e16ff_v": { + "encoding": "001000-10000-----101-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x21005007", + "mask": "0xfdf0707f" + }, + "vlseg2e32_v": { + "encoding": "001000-00000-----110-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x20006007", + "mask": "0xfdf0707f" + }, + "vlseg2e32ff_v": { + "encoding": "001000-10000-----110-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x21006007", + "mask": "0xfdf0707f" + }, + "vlseg2e64_v": { + "encoding": "001000-00000-----111-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x20007007", + "mask": "0xfdf0707f" + }, + "vlseg2e64ff_v": { + "encoding": "001000-10000-----111-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x21007007", + "mask": "0xfdf0707f" + }, + "vlseg2e8_v": { + "encoding": "001000-00000-----000-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x20000007", + "mask": "0xfdf0707f" + }, + "vlseg2e8ff_v": { + "encoding": "001000-10000-----000-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x21000007", + "mask": "0xfdf0707f" + }, + "vlseg3e16_v": { + "encoding": "010000-00000-----101-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x40005007", + "mask": "0xfdf0707f" + }, + "vlseg3e16ff_v": { + "encoding": "010000-10000-----101-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x41005007", + "mask": "0xfdf0707f" + }, + "vlseg3e32_v": { + "encoding": "010000-00000-----110-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x40006007", + "mask": "0xfdf0707f" + }, + "vlseg3e32ff_v": { + "encoding": "010000-10000-----110-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x41006007", + "mask": "0xfdf0707f" + }, + "vlseg3e64_v": { + "encoding": "010000-00000-----111-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x40007007", + "mask": "0xfdf0707f" + }, + "vlseg3e64ff_v": { + "encoding": "010000-10000-----111-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x41007007", + "mask": "0xfdf0707f" + }, + "vlseg3e8_v": { + "encoding": "010000-00000-----000-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x40000007", + "mask": "0xfdf0707f" + }, + "vlseg3e8ff_v": { + "encoding": "010000-10000-----000-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x41000007", + "mask": "0xfdf0707f" + }, + "vlseg4e16_v": { + "encoding": "011000-00000-----101-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x60005007", + "mask": "0xfdf0707f" + }, + "vlseg4e16ff_v": { + "encoding": "011000-10000-----101-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x61005007", + "mask": "0xfdf0707f" + }, + "vlseg4e32_v": { + "encoding": "011000-00000-----110-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x60006007", + "mask": "0xfdf0707f" + }, + "vlseg4e32ff_v": { + "encoding": "011000-10000-----110-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x61006007", + "mask": "0xfdf0707f" + }, + "vlseg4e64_v": { + "encoding": "011000-00000-----111-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x60007007", + "mask": "0xfdf0707f" + }, + "vlseg4e64ff_v": { + "encoding": "011000-10000-----111-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x61007007", + "mask": "0xfdf0707f" + }, + "vlseg4e8_v": { + "encoding": "011000-00000-----000-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x60000007", + "mask": "0xfdf0707f" + }, + "vlseg4e8ff_v": { + "encoding": "011000-10000-----000-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x61000007", + "mask": "0xfdf0707f" + }, + "vlseg5e16_v": { + "encoding": "100000-00000-----101-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x80005007", + "mask": "0xfdf0707f" + }, + "vlseg5e16ff_v": { + "encoding": "100000-10000-----101-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x81005007", + "mask": "0xfdf0707f" + }, + "vlseg5e32_v": { + "encoding": "100000-00000-----110-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x80006007", + "mask": "0xfdf0707f" + }, + "vlseg5e32ff_v": { + "encoding": "100000-10000-----110-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x81006007", + "mask": "0xfdf0707f" + }, + "vlseg5e64_v": { + "encoding": "100000-00000-----111-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x80007007", + "mask": "0xfdf0707f" + }, + "vlseg5e64ff_v": { + "encoding": "100000-10000-----111-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x81007007", + "mask": "0xfdf0707f" + }, + "vlseg5e8_v": { + "encoding": "100000-00000-----000-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x80000007", + "mask": "0xfdf0707f" + }, + "vlseg5e8ff_v": { + "encoding": "100000-10000-----000-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x81000007", + "mask": "0xfdf0707f" + }, + "vlseg6e16_v": { + "encoding": "101000-00000-----101-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xa0005007", + "mask": "0xfdf0707f" + }, + "vlseg6e16ff_v": { + "encoding": "101000-10000-----101-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xa1005007", + "mask": "0xfdf0707f" + }, + "vlseg6e32_v": { + "encoding": "101000-00000-----110-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xa0006007", + "mask": "0xfdf0707f" + }, + "vlseg6e32ff_v": { + "encoding": "101000-10000-----110-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xa1006007", + "mask": "0xfdf0707f" + }, + "vlseg6e64_v": { + "encoding": "101000-00000-----111-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xa0007007", + "mask": "0xfdf0707f" + }, + "vlseg6e64ff_v": { + "encoding": "101000-10000-----111-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xa1007007", + "mask": "0xfdf0707f" + }, + "vlseg6e8_v": { + "encoding": "101000-00000-----000-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xa0000007", + "mask": "0xfdf0707f" + }, + "vlseg6e8ff_v": { + "encoding": "101000-10000-----000-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xa1000007", + "mask": "0xfdf0707f" + }, + "vlseg7e16_v": { + "encoding": "110000-00000-----101-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xc0005007", + "mask": "0xfdf0707f" + }, + "vlseg7e16ff_v": { + "encoding": "110000-10000-----101-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xc1005007", + "mask": "0xfdf0707f" + }, + "vlseg7e32_v": { + "encoding": "110000-00000-----110-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xc0006007", + "mask": "0xfdf0707f" + }, + "vlseg7e32ff_v": { + "encoding": "110000-10000-----110-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xc1006007", + "mask": "0xfdf0707f" + }, + "vlseg7e64_v": { + "encoding": "110000-00000-----111-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xc0007007", + "mask": "0xfdf0707f" + }, + "vlseg7e64ff_v": { + "encoding": "110000-10000-----111-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xc1007007", + "mask": "0xfdf0707f" + }, + "vlseg7e8_v": { + "encoding": "110000-00000-----000-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xc0000007", + "mask": "0xfdf0707f" + }, + "vlseg7e8ff_v": { + "encoding": "110000-10000-----000-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xc1000007", + "mask": "0xfdf0707f" + }, + "vlseg8e16_v": { + "encoding": "111000-00000-----101-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xe0005007", + "mask": "0xfdf0707f" + }, + "vlseg8e16ff_v": { + "encoding": "111000-10000-----101-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xe1005007", + "mask": "0xfdf0707f" + }, + "vlseg8e32_v": { + "encoding": "111000-00000-----110-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xe0006007", + "mask": "0xfdf0707f" + }, + "vlseg8e32ff_v": { + "encoding": "111000-10000-----110-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xe1006007", + "mask": "0xfdf0707f" + }, + "vlseg8e64_v": { + "encoding": "111000-00000-----111-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xe0007007", + "mask": "0xfdf0707f" + }, + "vlseg8e64ff_v": { + "encoding": "111000-10000-----111-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xe1007007", + "mask": "0xfdf0707f" + }, + "vlseg8e8_v": { + "encoding": "111000-00000-----000-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xe0000007", + "mask": "0xfdf0707f" + }, + "vlseg8e8ff_v": { + "encoding": "111000-10000-----000-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xe1000007", + "mask": "0xfdf0707f" + }, + "vlsseg2e16_v": { + "encoding": "001010-----------101-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x28005007", + "mask": "0xfc00707f" + }, + "vlsseg2e32_v": { + "encoding": "001010-----------110-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x28006007", + "mask": "0xfc00707f" + }, + "vlsseg2e64_v": { + "encoding": "001010-----------111-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x28007007", + "mask": "0xfc00707f" + }, + "vlsseg2e8_v": { + "encoding": "001010-----------000-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x28000007", + "mask": "0xfc00707f" + }, + "vlsseg3e16_v": { + "encoding": "010010-----------101-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x48005007", + "mask": "0xfc00707f" + }, + "vlsseg3e32_v": { + "encoding": "010010-----------110-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x48006007", + "mask": "0xfc00707f" + }, + "vlsseg3e64_v": { + "encoding": "010010-----------111-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x48007007", + "mask": "0xfc00707f" + }, + "vlsseg3e8_v": { + "encoding": "010010-----------000-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x48000007", + "mask": "0xfc00707f" + }, + "vlsseg4e16_v": { + "encoding": "011010-----------101-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x68005007", + "mask": "0xfc00707f" + }, + "vlsseg4e32_v": { + "encoding": "011010-----------110-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x68006007", + "mask": "0xfc00707f" + }, + "vlsseg4e64_v": { + "encoding": "011010-----------111-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x68007007", + "mask": "0xfc00707f" + }, + "vlsseg4e8_v": { + "encoding": "011010-----------000-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x68000007", + "mask": "0xfc00707f" + }, + "vlsseg5e16_v": { + "encoding": "100010-----------101-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x88005007", + "mask": "0xfc00707f" + }, + "vlsseg5e32_v": { + "encoding": "100010-----------110-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x88006007", + "mask": "0xfc00707f" + }, + "vlsseg5e64_v": { + "encoding": "100010-----------111-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x88007007", + "mask": "0xfc00707f" + }, + "vlsseg5e8_v": { + "encoding": "100010-----------000-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x88000007", + "mask": "0xfc00707f" + }, + "vlsseg6e16_v": { + "encoding": "101010-----------101-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xa8005007", + "mask": "0xfc00707f" + }, + "vlsseg6e32_v": { + "encoding": "101010-----------110-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xa8006007", + "mask": "0xfc00707f" + }, + "vlsseg6e64_v": { + "encoding": "101010-----------111-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xa8007007", + "mask": "0xfc00707f" + }, + "vlsseg6e8_v": { + "encoding": "101010-----------000-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xa8000007", + "mask": "0xfc00707f" + }, + "vlsseg7e16_v": { + "encoding": "110010-----------101-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xc8005007", + "mask": "0xfc00707f" + }, + "vlsseg7e32_v": { + "encoding": "110010-----------110-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xc8006007", + "mask": "0xfc00707f" + }, + "vlsseg7e64_v": { + "encoding": "110010-----------111-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xc8007007", + "mask": "0xfc00707f" + }, + "vlsseg7e8_v": { + "encoding": "110010-----------000-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xc8000007", + "mask": "0xfc00707f" + }, + "vlsseg8e16_v": { + "encoding": "111010-----------101-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xe8005007", + "mask": "0xfc00707f" + }, + "vlsseg8e32_v": { + "encoding": "111010-----------110-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xe8006007", + "mask": "0xfc00707f" + }, + "vlsseg8e64_v": { + "encoding": "111010-----------111-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xe8007007", + "mask": "0xfc00707f" + }, + "vlsseg8e8_v": { + "encoding": "111010-----------000-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xe8000007", + "mask": "0xfc00707f" + }, + "vluxei16_v": { + "encoding": "000001-----------101-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4005007", + "mask": "0xfc00707f" + }, + "vluxei32_v": { + "encoding": "000001-----------110-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4006007", + "mask": "0xfc00707f" + }, + "vluxei64_v": { + "encoding": "000001-----------111-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4007007", + "mask": "0xfc00707f" + }, + "vluxei8_v": { + "encoding": "000001-----------000-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4000007", + "mask": "0xfc00707f" + }, + "vluxseg2ei16_v": { + "encoding": "001001-----------101-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x24005007", + "mask": "0xfc00707f" + }, + "vluxseg2ei32_v": { + "encoding": "001001-----------110-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x24006007", + "mask": "0xfc00707f" + }, + "vluxseg2ei64_v": { + "encoding": "001001-----------111-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x24007007", + "mask": "0xfc00707f" + }, + "vluxseg2ei8_v": { + "encoding": "001001-----------000-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x24000007", + "mask": "0xfc00707f" + }, + "vluxseg3ei16_v": { + "encoding": "010001-----------101-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x44005007", + "mask": "0xfc00707f" + }, + "vluxseg3ei32_v": { + "encoding": "010001-----------110-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x44006007", + "mask": "0xfc00707f" + }, + "vluxseg3ei64_v": { + "encoding": "010001-----------111-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x44007007", + "mask": "0xfc00707f" + }, + "vluxseg3ei8_v": { + "encoding": "010001-----------000-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x44000007", + "mask": "0xfc00707f" + }, + "vluxseg4ei16_v": { + "encoding": "011001-----------101-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x64005007", + "mask": "0xfc00707f" + }, + "vluxseg4ei32_v": { + "encoding": "011001-----------110-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x64006007", + "mask": "0xfc00707f" + }, + "vluxseg4ei64_v": { + "encoding": "011001-----------111-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x64007007", + "mask": "0xfc00707f" + }, + "vluxseg4ei8_v": { + "encoding": "011001-----------000-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x64000007", + "mask": "0xfc00707f" + }, + "vluxseg5ei16_v": { + "encoding": "100001-----------101-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x84005007", + "mask": "0xfc00707f" + }, + "vluxseg5ei32_v": { + "encoding": "100001-----------110-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x84006007", + "mask": "0xfc00707f" + }, + "vluxseg5ei64_v": { + "encoding": "100001-----------111-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x84007007", + "mask": "0xfc00707f" + }, + "vluxseg5ei8_v": { + "encoding": "100001-----------000-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x84000007", + "mask": "0xfc00707f" + }, + "vluxseg6ei16_v": { + "encoding": "101001-----------101-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa4005007", + "mask": "0xfc00707f" + }, + "vluxseg6ei32_v": { + "encoding": "101001-----------110-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa4006007", + "mask": "0xfc00707f" + }, + "vluxseg6ei64_v": { + "encoding": "101001-----------111-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa4007007", + "mask": "0xfc00707f" + }, + "vluxseg6ei8_v": { + "encoding": "101001-----------000-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa4000007", + "mask": "0xfc00707f" + }, + "vluxseg7ei16_v": { + "encoding": "110001-----------101-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc4005007", + "mask": "0xfc00707f" + }, + "vluxseg7ei32_v": { + "encoding": "110001-----------110-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc4006007", + "mask": "0xfc00707f" + }, + "vluxseg7ei64_v": { + "encoding": "110001-----------111-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc4007007", + "mask": "0xfc00707f" + }, + "vluxseg7ei8_v": { + "encoding": "110001-----------000-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc4000007", + "mask": "0xfc00707f" + }, + "vluxseg8ei16_v": { + "encoding": "111001-----------101-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xe4005007", + "mask": "0xfc00707f" + }, + "vluxseg8ei32_v": { + "encoding": "111001-----------110-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xe4006007", + "mask": "0xfc00707f" + }, + "vluxseg8ei64_v": { + "encoding": "111001-----------111-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xe4007007", + "mask": "0xfc00707f" + }, + "vluxseg8ei8_v": { + "encoding": "111001-----------000-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xe4000007", + "mask": "0xfc00707f" + }, + "vmacc_vv": { + "encoding": "101101-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xb4002057", + "mask": "0xfc00707f" + }, + "vmacc_vx": { + "encoding": "101101-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xb4006057", + "mask": "0xfc00707f" + }, + "vmadc_vi": { + "encoding": "0100011----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2"], + "extension": ["rv_v"], + "match": "0x46003057", + "mask": "0xfe00707f" + }, + "vmadc_vim": { + "encoding": "0100010----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2"], + "extension": ["rv_v"], + "match": "0x44003057", + "mask": "0xfe00707f" + }, + "vmadc_vv": { + "encoding": "0100011----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x46000057", + "mask": "0xfe00707f" + }, + "vmadc_vvm": { + "encoding": "0100010----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x44000057", + "mask": "0xfe00707f" + }, + "vmadc_vx": { + "encoding": "0100011----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2"], + "extension": ["rv_v"], + "match": "0x46004057", + "mask": "0xfe00707f" + }, + "vmadc_vxm": { + "encoding": "0100010----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2"], + "extension": ["rv_v"], + "match": "0x44004057", + "mask": "0xfe00707f" + }, + "vmadd_vv": { + "encoding": "101001-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa4002057", + "mask": "0xfc00707f" + }, + "vmadd_vx": { + "encoding": "101001-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa4006057", + "mask": "0xfc00707f" + }, + "vmand_mm": { + "encoding": "0110011----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x66002057", + "mask": "0xfe00707f" + }, + "vmandn_mm": { + "encoding": "0110001----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x62002057", + "mask": "0xfe00707f" + }, + "vmax_vv": { + "encoding": "000111-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x1c000057", + "mask": "0xfc00707f" + }, + "vmax_vx": { + "encoding": "000111-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x1c004057", + "mask": "0xfc00707f" + }, + "vmaxu_vv": { + "encoding": "000110-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x18000057", + "mask": "0xfc00707f" + }, + "vmaxu_vx": { + "encoding": "000110-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x18004057", + "mask": "0xfc00707f" + }, + "vmerge_vim": { + "encoding": "0101110----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2"], + "extension": ["rv_v"], + "match": "0x5c003057", + "mask": "0xfe00707f" + }, + "vmerge_vvm": { + "encoding": "0101110----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x5c000057", + "mask": "0xfe00707f" + }, + "vmerge_vxm": { + "encoding": "0101110----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2"], + "extension": ["rv_v"], + "match": "0x5c004057", + "mask": "0xfe00707f" + }, + "vmfeq_vf": { + "encoding": "011000-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x60005057", + "mask": "0xfc00707f" + }, + "vmfeq_vv": { + "encoding": "011000-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x60001057", + "mask": "0xfc00707f" + }, + "vmfge_vf": { + "encoding": "011111-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x7c005057", + "mask": "0xfc00707f" + }, + "vmfgt_vf": { + "encoding": "011101-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x74005057", + "mask": "0xfc00707f" + }, + "vmfle_vf": { + "encoding": "011001-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x64005057", + "mask": "0xfc00707f" + }, + "vmfle_vv": { + "encoding": "011001-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x64001057", + "mask": "0xfc00707f" + }, + "vmflt_vf": { + "encoding": "011011-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x6c005057", + "mask": "0xfc00707f" + }, + "vmflt_vv": { + "encoding": "011011-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x6c001057", + "mask": "0xfc00707f" + }, + "vmfne_vf": { + "encoding": "011100-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x70005057", + "mask": "0xfc00707f" + }, + "vmfne_vv": { + "encoding": "011100-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x70001057", + "mask": "0xfc00707f" + }, + "vmin_vv": { + "encoding": "000101-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x14000057", + "mask": "0xfc00707f" + }, + "vmin_vx": { + "encoding": "000101-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x14004057", + "mask": "0xfc00707f" + }, + "vminu_vv": { + "encoding": "000100-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x10000057", + "mask": "0xfc00707f" + }, + "vminu_vx": { + "encoding": "000100-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x10004057", + "mask": "0xfc00707f" + }, + "vmnand_mm": { + "encoding": "0111011----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x76002057", + "mask": "0xfe00707f" + }, + "vmnor_mm": { + "encoding": "0111101----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x7a002057", + "mask": "0xfe00707f" + }, + "vmor_mm": { + "encoding": "0110101----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x6a002057", + "mask": "0xfe00707f" + }, + "vmorn_mm": { + "encoding": "0111001----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x72002057", + "mask": "0xfe00707f" + }, + "vmsbc_vv": { + "encoding": "0100111----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x4e000057", + "mask": "0xfe00707f" + }, + "vmsbc_vvm": { + "encoding": "0100110----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x4c000057", + "mask": "0xfe00707f" + }, + "vmsbc_vx": { + "encoding": "0100111----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2"], + "extension": ["rv_v"], + "match": "0x4e004057", + "mask": "0xfe00707f" + }, + "vmsbc_vxm": { + "encoding": "0100110----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2"], + "extension": ["rv_v"], + "match": "0x4c004057", + "mask": "0xfe00707f" + }, + "vmsbf_m": { + "encoding": "010100------00001010-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x5000a057", + "mask": "0xfc0ff07f" + }, + "vmseq_vi": { + "encoding": "011000-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x60003057", + "mask": "0xfc00707f" + }, + "vmseq_vv": { + "encoding": "011000-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x60000057", + "mask": "0xfc00707f" + }, + "vmseq_vx": { + "encoding": "011000-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x60004057", + "mask": "0xfc00707f" + }, + "vmsgt_vi": { + "encoding": "011111-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x7c003057", + "mask": "0xfc00707f" + }, + "vmsgt_vx": { + "encoding": "011111-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x7c004057", + "mask": "0xfc00707f" + }, + "vmsgtu_vi": { + "encoding": "011110-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x78003057", + "mask": "0xfc00707f" + }, + "vmsgtu_vx": { + "encoding": "011110-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x78004057", + "mask": "0xfc00707f" + }, + "vmsif_m": { + "encoding": "010100------00011010-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x5001a057", + "mask": "0xfc0ff07f" + }, + "vmsle_vi": { + "encoding": "011101-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x74003057", + "mask": "0xfc00707f" + }, + "vmsle_vv": { + "encoding": "011101-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x74000057", + "mask": "0xfc00707f" + }, + "vmsle_vx": { + "encoding": "011101-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x74004057", + "mask": "0xfc00707f" + }, + "vmsleu_vi": { + "encoding": "011100-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x70003057", + "mask": "0xfc00707f" + }, + "vmsleu_vv": { + "encoding": "011100-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x70000057", + "mask": "0xfc00707f" + }, + "vmsleu_vx": { + "encoding": "011100-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x70004057", + "mask": "0xfc00707f" + }, + "vmslt_vv": { + "encoding": "011011-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x6c000057", + "mask": "0xfc00707f" + }, + "vmslt_vx": { + "encoding": "011011-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x6c004057", + "mask": "0xfc00707f" + }, + "vmsltu_vv": { + "encoding": "011010-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x68000057", + "mask": "0xfc00707f" + }, + "vmsltu_vx": { + "encoding": "011010-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x68004057", + "mask": "0xfc00707f" + }, + "vmsne_vi": { + "encoding": "011001-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x64003057", + "mask": "0xfc00707f" + }, + "vmsne_vv": { + "encoding": "011001-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x64000057", + "mask": "0xfc00707f" + }, + "vmsne_vx": { + "encoding": "011001-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x64004057", + "mask": "0xfc00707f" + }, + "vmsof_m": { + "encoding": "010100------00010010-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x50012057", + "mask": "0xfc0ff07f" + }, + "vmul_vv": { + "encoding": "100101-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x94002057", + "mask": "0xfc00707f" + }, + "vmul_vx": { + "encoding": "100101-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x94006057", + "mask": "0xfc00707f" + }, + "vmulh_vv": { + "encoding": "100111-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x9c002057", + "mask": "0xfc00707f" + }, + "vmulh_vx": { + "encoding": "100111-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x9c006057", + "mask": "0xfc00707f" + }, + "vmulhsu_vv": { + "encoding": "100110-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x98002057", + "mask": "0xfc00707f" + }, + "vmulhsu_vx": { + "encoding": "100110-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x98006057", + "mask": "0xfc00707f" + }, + "vmulhu_vv": { + "encoding": "100100-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x90002057", + "mask": "0xfc00707f" + }, + "vmulhu_vx": { + "encoding": "100100-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x90006057", + "mask": "0xfc00707f" + }, + "vmv1r_v": { + "encoding": "1001111-----00000011-----1010111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_v"], + "match": "0x9e003057", + "mask": "0xfe0ff07f" + }, + "vmv2r_v": { + "encoding": "1001111-----00001011-----1010111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_v"], + "match": "0x9e00b057", + "mask": "0xfe0ff07f" + }, + "vmv4r_v": { + "encoding": "1001111-----00011011-----1010111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_v"], + "match": "0x9e01b057", + "mask": "0xfe0ff07f" + }, + "vmv8r_v": { + "encoding": "1001111-----00111011-----1010111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_v"], + "match": "0x9e03b057", + "mask": "0xfe0ff07f" + }, + "vmv_s_x": { + "encoding": "010000100000-----110-----1010111", + "variable_fields": ["vd", "rs1"], + "extension": ["rv_v"], + "match": "0x42006057", + "mask": "0xfff0707f" + }, + "vmv_v_i": { + "encoding": "010111100000-----011-----1010111", + "variable_fields": ["vd", "simm5"], + "extension": ["rv_v"], + "match": "0x5e003057", + "mask": "0xfff0707f" + }, + "vmv_v_v": { + "encoding": "010111100000-----000-----1010111", + "variable_fields": ["vd", "vs1"], + "extension": ["rv_v"], + "match": "0x5e000057", + "mask": "0xfff0707f" + }, + "vmv_v_x": { + "encoding": "010111100000-----100-----1010111", + "variable_fields": ["vd", "rs1"], + "extension": ["rv_v"], + "match": "0x5e004057", + "mask": "0xfff0707f" + }, + "vmv_x_s": { + "encoding": "0100001-----00000010-----1010111", + "variable_fields": ["rd", "vs2"], + "extension": ["rv_v"], + "match": "0x42002057", + "mask": "0xfe0ff07f" + }, + "vmxnor_mm": { + "encoding": "0111111----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x7e002057", + "mask": "0xfe00707f" + }, + "vmxor_mm": { + "encoding": "0110111----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x6e002057", + "mask": "0xfe00707f" + }, + "vnclip_wi": { + "encoding": "101111-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xbc003057", + "mask": "0xfc00707f" + }, + "vnclip_wv": { + "encoding": "101111-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xbc000057", + "mask": "0xfc00707f" + }, + "vnclip_wx": { + "encoding": "101111-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xbc004057", + "mask": "0xfc00707f" + }, + "vnclipu_wi": { + "encoding": "101110-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xb8003057", + "mask": "0xfc00707f" + }, + "vnclipu_wv": { + "encoding": "101110-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xb8000057", + "mask": "0xfc00707f" + }, + "vnclipu_wx": { + "encoding": "101110-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xb8004057", + "mask": "0xfc00707f" + }, + "vnmsac_vv": { + "encoding": "101111-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xbc002057", + "mask": "0xfc00707f" + }, + "vnmsac_vx": { + "encoding": "101111-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xbc006057", + "mask": "0xfc00707f" + }, + "vnmsub_vv": { + "encoding": "101011-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xac002057", + "mask": "0xfc00707f" + }, + "vnmsub_vx": { + "encoding": "101011-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xac006057", + "mask": "0xfc00707f" + }, + "vnsra_wi": { + "encoding": "101101-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xb4003057", + "mask": "0xfc00707f" + }, + "vnsra_wv": { + "encoding": "101101-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xb4000057", + "mask": "0xfc00707f" + }, + "vnsra_wx": { + "encoding": "101101-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xb4004057", + "mask": "0xfc00707f" + }, + "vnsrl_wi": { + "encoding": "101100-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xb0003057", + "mask": "0xfc00707f" + }, + "vnsrl_wv": { + "encoding": "101100-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xb0000057", + "mask": "0xfc00707f" + }, + "vnsrl_wx": { + "encoding": "101100-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xb0004057", + "mask": "0xfc00707f" + }, + "vor_vi": { + "encoding": "001010-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x28003057", + "mask": "0xfc00707f" + }, + "vor_vv": { + "encoding": "001010-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x28000057", + "mask": "0xfc00707f" + }, + "vor_vx": { + "encoding": "001010-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x28004057", + "mask": "0xfc00707f" + }, + "vredand_vs": { + "encoding": "000001-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4002057", + "mask": "0xfc00707f" + }, + "vredmax_vs": { + "encoding": "000111-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x1c002057", + "mask": "0xfc00707f" + }, + "vredmaxu_vs": { + "encoding": "000110-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x18002057", + "mask": "0xfc00707f" + }, + "vredmin_vs": { + "encoding": "000101-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x14002057", + "mask": "0xfc00707f" + }, + "vredminu_vs": { + "encoding": "000100-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x10002057", + "mask": "0xfc00707f" + }, + "vredor_vs": { + "encoding": "000010-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x8002057", + "mask": "0xfc00707f" + }, + "vredsum_vs": { + "encoding": "000000-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x2057", + "mask": "0xfc00707f" + }, + "vredxor_vs": { + "encoding": "000011-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc002057", + "mask": "0xfc00707f" + }, + "vrem_vv": { + "encoding": "100011-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x8c002057", + "mask": "0xfc00707f" + }, + "vrem_vx": { + "encoding": "100011-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x8c006057", + "mask": "0xfc00707f" + }, + "vremu_vv": { + "encoding": "100010-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x88002057", + "mask": "0xfc00707f" + }, + "vremu_vx": { + "encoding": "100010-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x88006057", + "mask": "0xfc00707f" + }, + "vrev8_v": { + "encoding": "010010------01001010-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0x4804a057", + "mask": "0xfc0ff07f" + }, + "vrgather_vi": { + "encoding": "001100-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x30003057", + "mask": "0xfc00707f" + }, + "vrgather_vv": { + "encoding": "001100-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x30000057", + "mask": "0xfc00707f" + }, + "vrgather_vx": { + "encoding": "001100-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x30004057", + "mask": "0xfc00707f" + }, + "vrgatherei16_vv": { + "encoding": "001110-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x38000057", + "mask": "0xfc00707f" + }, + "vrol_vv": { + "encoding": "010101-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0x54000057", + "mask": "0xfc00707f" + }, + "vrol_vx": { + "encoding": "010101-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0x54004057", + "mask": "0xfc00707f" + }, + "vror_vi": { + "encoding": "01010------------011-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0x50003057", + "mask": "0xf800707f" + }, + "vror_vv": { + "encoding": "010100-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0x50000057", + "mask": "0xfc00707f" + }, + "vror_vx": { + "encoding": "010100-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0x50004057", + "mask": "0xfc00707f" + }, + "vrsub_vi": { + "encoding": "000011-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc003057", + "mask": "0xfc00707f" + }, + "vrsub_vx": { + "encoding": "000011-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc004057", + "mask": "0xfc00707f" + }, + "vs1r_v": { + "encoding": "000000101000-----000-----0100111", + "variable_fields": ["vs3", "rs1"], + "extension": ["rv_v"], + "match": "0x2800027", + "mask": "0xfff0707f" + }, + "vs2r_v": { + "encoding": "001000101000-----000-----0100111", + "variable_fields": ["vs3", "rs1"], + "extension": ["rv_v"], + "match": "0x22800027", + "mask": "0xfff0707f" + }, + "vs4r_v": { + "encoding": "011000101000-----000-----0100111", + "variable_fields": ["vs3", "rs1"], + "extension": ["rv_v"], + "match": "0x62800027", + "mask": "0xfff0707f" + }, + "vs8r_v": { + "encoding": "111000101000-----000-----0100111", + "variable_fields": ["vs3", "rs1"], + "extension": ["rv_v"], + "match": "0xe2800027", + "mask": "0xfff0707f" + }, + "vsadd_vi": { + "encoding": "100001-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x84003057", + "mask": "0xfc00707f" + }, + "vsadd_vv": { + "encoding": "100001-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x84000057", + "mask": "0xfc00707f" + }, + "vsadd_vx": { + "encoding": "100001-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x84004057", + "mask": "0xfc00707f" + }, + "vsaddu_vi": { + "encoding": "100000-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x80003057", + "mask": "0xfc00707f" + }, + "vsaddu_vv": { + "encoding": "100000-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x80000057", + "mask": "0xfc00707f" + }, + "vsaddu_vx": { + "encoding": "100000-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x80004057", + "mask": "0xfc00707f" + }, + "vsbc_vvm": { + "encoding": "0100100----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x48000057", + "mask": "0xfe00707f" + }, + "vsbc_vxm": { + "encoding": "0100100----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2"], + "extension": ["rv_v"], + "match": "0x48004057", + "mask": "0xfe00707f" + }, + "vse16_v": { + "encoding": "000000-00000-----101-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x5027", + "mask": "0xfdf0707f" + }, + "vse32_v": { + "encoding": "000000-00000-----110-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x6027", + "mask": "0xfdf0707f" + }, + "vse64_v": { + "encoding": "000000-00000-----111-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x7027", + "mask": "0xfdf0707f" + }, + "vse8_v": { + "encoding": "000000-00000-----000-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x27", + "mask": "0xfdf0707f" + }, + "vsetivli": { + "encoding": "11---------------111-----1010111", + "variable_fields": ["rd", "zimm10"], + "extension": ["rv_v"], + "match": "0xc0007057", + "mask": "0xc000707f" + }, + "vsetvl": { + "encoding": "1000000----------111-----1010111", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_v"], + "match": "0x80007057", + "mask": "0xfe00707f" + }, + "vsetvli": { + "encoding": "0----------------111-----1010111", + "variable_fields": ["rd", "rs1", "zimm11"], + "extension": ["rv_v"], + "match": "0x7057", + "mask": "0x8000707f" + }, + "vsext_vf2": { + "encoding": "010010------00111010-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4803a057", + "mask": "0xfc0ff07f" + }, + "vsext_vf4": { + "encoding": "010010------00101010-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4802a057", + "mask": "0xfc0ff07f" + }, + "vsext_vf8": { + "encoding": "010010------00011010-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4801a057", + "mask": "0xfc0ff07f" + }, + "vsha2ch_vv": { + "encoding": "1011101----------010-----1110111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_zvkn", "rv_zvknha", "rv_zvknhb"], + "match": "0xba002077", + "mask": "0xfe00707f" + }, + "vsha2cl_vv": { + "encoding": "1011111----------010-----1110111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_zvkn", "rv_zvknha", "rv_zvknhb"], + "match": "0xbe002077", + "mask": "0xfe00707f" + }, + "vsha2ms_vv": { + "encoding": "1011011----------010-----1110111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_zvkn", "rv_zvknha", "rv_zvknhb"], + "match": "0xb6002077", + "mask": "0xfe00707f" + }, + "vslide1down_vx": { + "encoding": "001111-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x3c006057", + "mask": "0xfc00707f" + }, + "vslide1up_vx": { + "encoding": "001110-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x38006057", + "mask": "0xfc00707f" + }, + "vslidedown_vi": { + "encoding": "001111-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x3c003057", + "mask": "0xfc00707f" + }, + "vslidedown_vx": { + "encoding": "001111-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x3c004057", + "mask": "0xfc00707f" + }, + "vslideup_vi": { + "encoding": "001110-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x38003057", + "mask": "0xfc00707f" + }, + "vslideup_vx": { + "encoding": "001110-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x38004057", + "mask": "0xfc00707f" + }, + "vsll_vi": { + "encoding": "100101-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x94003057", + "mask": "0xfc00707f" + }, + "vsll_vv": { + "encoding": "100101-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x94000057", + "mask": "0xfc00707f" + }, + "vsll_vx": { + "encoding": "100101-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x94004057", + "mask": "0xfc00707f" + }, + "vsm3c_vi": { + "encoding": "1010111----------010-----1110111", + "variable_fields": ["vd", "zimm5", "vs2"], + "extension": ["rv_zvks", "rv_zvksh"], + "match": "0xae002077", + "mask": "0xfe00707f" + }, + "vsm3me_vv": { + "encoding": "1000001----------010-----1110111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_zvks", "rv_zvksh"], + "match": "0x82002077", + "mask": "0xfe00707f" + }, + "vsm4k_vi": { + "encoding": "1000011----------010-----1110111", + "variable_fields": ["vd", "zimm5", "vs2"], + "extension": ["rv_zvks", "rv_zvksed"], + "match": "0x86002077", + "mask": "0xfe00707f" + }, + "vsm4r_vs": { + "encoding": "1010011-----10000010-----1110111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_zvks", "rv_zvksed"], + "match": "0xa6082077", + "mask": "0xfe0ff07f" + }, + "vsm4r_vv": { + "encoding": "1010001-----10000010-----1110111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_zvks", "rv_zvksed"], + "match": "0xa2082077", + "mask": "0xfe0ff07f" + }, + "vsm_v": { + "encoding": "000000101011-----000-----0100111", + "variable_fields": ["vs3", "rs1"], + "extension": ["rv_v"], + "match": "0x2b00027", + "mask": "0xfff0707f" + }, + "vsmul_vv": { + "encoding": "100111-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x9c000057", + "mask": "0xfc00707f" + }, + "vsmul_vx": { + "encoding": "100111-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x9c004057", + "mask": "0xfc00707f" + }, + "vsoxei16_v": { + "encoding": "000011-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc005027", + "mask": "0xfc00707f" + }, + "vsoxei32_v": { + "encoding": "000011-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc006027", + "mask": "0xfc00707f" + }, + "vsoxei64_v": { + "encoding": "000011-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc007027", + "mask": "0xfc00707f" + }, + "vsoxei8_v": { + "encoding": "000011-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc000027", + "mask": "0xfc00707f" + }, + "vsoxseg2ei16_v": { + "encoding": "001011-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x2c005027", + "mask": "0xfc00707f" + }, + "vsoxseg2ei32_v": { + "encoding": "001011-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x2c006027", + "mask": "0xfc00707f" + }, + "vsoxseg2ei64_v": { + "encoding": "001011-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x2c007027", + "mask": "0xfc00707f" + }, + "vsoxseg2ei8_v": { + "encoding": "001011-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x2c000027", + "mask": "0xfc00707f" + }, + "vsoxseg3ei16_v": { + "encoding": "010011-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4c005027", + "mask": "0xfc00707f" + }, + "vsoxseg3ei32_v": { + "encoding": "010011-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4c006027", + "mask": "0xfc00707f" + }, + "vsoxseg3ei64_v": { + "encoding": "010011-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4c007027", + "mask": "0xfc00707f" + }, + "vsoxseg3ei8_v": { + "encoding": "010011-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4c000027", + "mask": "0xfc00707f" + }, + "vsoxseg4ei16_v": { + "encoding": "011011-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x6c005027", + "mask": "0xfc00707f" + }, + "vsoxseg4ei32_v": { + "encoding": "011011-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x6c006027", + "mask": "0xfc00707f" + }, + "vsoxseg4ei64_v": { + "encoding": "011011-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x6c007027", + "mask": "0xfc00707f" + }, + "vsoxseg4ei8_v": { + "encoding": "011011-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x6c000027", + "mask": "0xfc00707f" + }, + "vsoxseg5ei16_v": { + "encoding": "100011-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x8c005027", + "mask": "0xfc00707f" + }, + "vsoxseg5ei32_v": { + "encoding": "100011-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x8c006027", + "mask": "0xfc00707f" + }, + "vsoxseg5ei64_v": { + "encoding": "100011-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x8c007027", + "mask": "0xfc00707f" + }, + "vsoxseg5ei8_v": { + "encoding": "100011-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x8c000027", + "mask": "0xfc00707f" + }, + "vsoxseg6ei16_v": { + "encoding": "101011-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xac005027", + "mask": "0xfc00707f" + }, + "vsoxseg6ei32_v": { + "encoding": "101011-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xac006027", + "mask": "0xfc00707f" + }, + "vsoxseg6ei64_v": { + "encoding": "101011-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xac007027", + "mask": "0xfc00707f" + }, + "vsoxseg6ei8_v": { + "encoding": "101011-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xac000027", + "mask": "0xfc00707f" + }, + "vsoxseg7ei16_v": { + "encoding": "110011-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xcc005027", + "mask": "0xfc00707f" + }, + "vsoxseg7ei32_v": { + "encoding": "110011-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xcc006027", + "mask": "0xfc00707f" + }, + "vsoxseg7ei64_v": { + "encoding": "110011-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xcc007027", + "mask": "0xfc00707f" + }, + "vsoxseg7ei8_v": { + "encoding": "110011-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xcc000027", + "mask": "0xfc00707f" + }, + "vsoxseg8ei16_v": { + "encoding": "111011-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xec005027", + "mask": "0xfc00707f" + }, + "vsoxseg8ei32_v": { + "encoding": "111011-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xec006027", + "mask": "0xfc00707f" + }, + "vsoxseg8ei64_v": { + "encoding": "111011-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xec007027", + "mask": "0xfc00707f" + }, + "vsoxseg8ei8_v": { + "encoding": "111011-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xec000027", + "mask": "0xfc00707f" + }, + "vsra_vi": { + "encoding": "101001-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa4003057", + "mask": "0xfc00707f" + }, + "vsra_vv": { + "encoding": "101001-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa4000057", + "mask": "0xfc00707f" + }, + "vsra_vx": { + "encoding": "101001-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa4004057", + "mask": "0xfc00707f" + }, + "vsrl_vi": { + "encoding": "101000-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa0003057", + "mask": "0xfc00707f" + }, + "vsrl_vv": { + "encoding": "101000-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa0000057", + "mask": "0xfc00707f" + }, + "vsrl_vx": { + "encoding": "101000-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa0004057", + "mask": "0xfc00707f" + }, + "vsse16_v": { + "encoding": "000010-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x8005027", + "mask": "0xfc00707f" + }, + "vsse32_v": { + "encoding": "000010-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x8006027", + "mask": "0xfc00707f" + }, + "vsse64_v": { + "encoding": "000010-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x8007027", + "mask": "0xfc00707f" + }, + "vsse8_v": { + "encoding": "000010-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x8000027", + "mask": "0xfc00707f" + }, + "vsseg2e16_v": { + "encoding": "001000-00000-----101-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x20005027", + "mask": "0xfdf0707f" + }, + "vsseg2e32_v": { + "encoding": "001000-00000-----110-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x20006027", + "mask": "0xfdf0707f" + }, + "vsseg2e64_v": { + "encoding": "001000-00000-----111-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x20007027", + "mask": "0xfdf0707f" + }, + "vsseg2e8_v": { + "encoding": "001000-00000-----000-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x20000027", + "mask": "0xfdf0707f" + }, + "vsseg3e16_v": { + "encoding": "010000-00000-----101-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x40005027", + "mask": "0xfdf0707f" + }, + "vsseg3e32_v": { + "encoding": "010000-00000-----110-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x40006027", + "mask": "0xfdf0707f" + }, + "vsseg3e64_v": { + "encoding": "010000-00000-----111-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x40007027", + "mask": "0xfdf0707f" + }, + "vsseg3e8_v": { + "encoding": "010000-00000-----000-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x40000027", + "mask": "0xfdf0707f" + }, + "vsseg4e16_v": { + "encoding": "011000-00000-----101-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x60005027", + "mask": "0xfdf0707f" + }, + "vsseg4e32_v": { + "encoding": "011000-00000-----110-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x60006027", + "mask": "0xfdf0707f" + }, + "vsseg4e64_v": { + "encoding": "011000-00000-----111-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x60007027", + "mask": "0xfdf0707f" + }, + "vsseg4e8_v": { + "encoding": "011000-00000-----000-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x60000027", + "mask": "0xfdf0707f" + }, + "vsseg5e16_v": { + "encoding": "100000-00000-----101-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x80005027", + "mask": "0xfdf0707f" + }, + "vsseg5e32_v": { + "encoding": "100000-00000-----110-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x80006027", + "mask": "0xfdf0707f" + }, + "vsseg5e64_v": { + "encoding": "100000-00000-----111-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x80007027", + "mask": "0xfdf0707f" + }, + "vsseg5e8_v": { + "encoding": "100000-00000-----000-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x80000027", + "mask": "0xfdf0707f" + }, + "vsseg6e16_v": { + "encoding": "101000-00000-----101-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xa0005027", + "mask": "0xfdf0707f" + }, + "vsseg6e32_v": { + "encoding": "101000-00000-----110-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xa0006027", + "mask": "0xfdf0707f" + }, + "vsseg6e64_v": { + "encoding": "101000-00000-----111-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xa0007027", + "mask": "0xfdf0707f" + }, + "vsseg6e8_v": { + "encoding": "101000-00000-----000-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xa0000027", + "mask": "0xfdf0707f" + }, + "vsseg7e16_v": { + "encoding": "110000-00000-----101-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xc0005027", + "mask": "0xfdf0707f" + }, + "vsseg7e32_v": { + "encoding": "110000-00000-----110-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xc0006027", + "mask": "0xfdf0707f" + }, + "vsseg7e64_v": { + "encoding": "110000-00000-----111-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xc0007027", + "mask": "0xfdf0707f" + }, + "vsseg7e8_v": { + "encoding": "110000-00000-----000-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xc0000027", + "mask": "0xfdf0707f" + }, + "vsseg8e16_v": { + "encoding": "111000-00000-----101-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xe0005027", + "mask": "0xfdf0707f" + }, + "vsseg8e32_v": { + "encoding": "111000-00000-----110-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xe0006027", + "mask": "0xfdf0707f" + }, + "vsseg8e64_v": { + "encoding": "111000-00000-----111-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xe0007027", + "mask": "0xfdf0707f" + }, + "vsseg8e8_v": { + "encoding": "111000-00000-----000-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xe0000027", + "mask": "0xfdf0707f" + }, + "vssra_vi": { + "encoding": "101011-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xac003057", + "mask": "0xfc00707f" + }, + "vssra_vv": { + "encoding": "101011-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xac000057", + "mask": "0xfc00707f" + }, + "vssra_vx": { + "encoding": "101011-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xac004057", + "mask": "0xfc00707f" + }, + "vssrl_vi": { + "encoding": "101010-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa8003057", + "mask": "0xfc00707f" + }, + "vssrl_vv": { + "encoding": "101010-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa8000057", + "mask": "0xfc00707f" + }, + "vssrl_vx": { + "encoding": "101010-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa8004057", + "mask": "0xfc00707f" + }, + "vssseg2e16_v": { + "encoding": "001010-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x28005027", + "mask": "0xfc00707f" + }, + "vssseg2e32_v": { + "encoding": "001010-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x28006027", + "mask": "0xfc00707f" + }, + "vssseg2e64_v": { + "encoding": "001010-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x28007027", + "mask": "0xfc00707f" + }, + "vssseg2e8_v": { + "encoding": "001010-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x28000027", + "mask": "0xfc00707f" + }, + "vssseg3e16_v": { + "encoding": "010010-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x48005027", + "mask": "0xfc00707f" + }, + "vssseg3e32_v": { + "encoding": "010010-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x48006027", + "mask": "0xfc00707f" + }, + "vssseg3e64_v": { + "encoding": "010010-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x48007027", + "mask": "0xfc00707f" + }, + "vssseg3e8_v": { + "encoding": "010010-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x48000027", + "mask": "0xfc00707f" + }, + "vssseg4e16_v": { + "encoding": "011010-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x68005027", + "mask": "0xfc00707f" + }, + "vssseg4e32_v": { + "encoding": "011010-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x68006027", + "mask": "0xfc00707f" + }, + "vssseg4e64_v": { + "encoding": "011010-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x68007027", + "mask": "0xfc00707f" + }, + "vssseg4e8_v": { + "encoding": "011010-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x68000027", + "mask": "0xfc00707f" + }, + "vssseg5e16_v": { + "encoding": "100010-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x88005027", + "mask": "0xfc00707f" + }, + "vssseg5e32_v": { + "encoding": "100010-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x88006027", + "mask": "0xfc00707f" + }, + "vssseg5e64_v": { + "encoding": "100010-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x88007027", + "mask": "0xfc00707f" + }, + "vssseg5e8_v": { + "encoding": "100010-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x88000027", + "mask": "0xfc00707f" + }, + "vssseg6e16_v": { + "encoding": "101010-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xa8005027", + "mask": "0xfc00707f" + }, + "vssseg6e32_v": { + "encoding": "101010-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xa8006027", + "mask": "0xfc00707f" + }, + "vssseg6e64_v": { + "encoding": "101010-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xa8007027", + "mask": "0xfc00707f" + }, + "vssseg6e8_v": { + "encoding": "101010-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xa8000027", + "mask": "0xfc00707f" + }, + "vssseg7e16_v": { + "encoding": "110010-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xc8005027", + "mask": "0xfc00707f" + }, + "vssseg7e32_v": { + "encoding": "110010-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xc8006027", + "mask": "0xfc00707f" + }, + "vssseg7e64_v": { + "encoding": "110010-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xc8007027", + "mask": "0xfc00707f" + }, + "vssseg7e8_v": { + "encoding": "110010-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xc8000027", + "mask": "0xfc00707f" + }, + "vssseg8e16_v": { + "encoding": "111010-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xe8005027", + "mask": "0xfc00707f" + }, + "vssseg8e32_v": { + "encoding": "111010-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xe8006027", + "mask": "0xfc00707f" + }, + "vssseg8e64_v": { + "encoding": "111010-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xe8007027", + "mask": "0xfc00707f" + }, + "vssseg8e8_v": { + "encoding": "111010-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xe8000027", + "mask": "0xfc00707f" + }, + "vssub_vv": { + "encoding": "100011-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x8c000057", + "mask": "0xfc00707f" + }, + "vssub_vx": { + "encoding": "100011-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x8c004057", + "mask": "0xfc00707f" + }, + "vssubu_vv": { + "encoding": "100010-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x88000057", + "mask": "0xfc00707f" + }, + "vssubu_vx": { + "encoding": "100010-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x88004057", + "mask": "0xfc00707f" + }, + "vsub_vv": { + "encoding": "000010-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x8000057", + "mask": "0xfc00707f" + }, + "vsub_vx": { + "encoding": "000010-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x8004057", + "mask": "0xfc00707f" + }, + "vsuxei16_v": { + "encoding": "000001-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4005027", + "mask": "0xfc00707f" + }, + "vsuxei32_v": { + "encoding": "000001-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4006027", + "mask": "0xfc00707f" + }, + "vsuxei64_v": { + "encoding": "000001-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4007027", + "mask": "0xfc00707f" + }, + "vsuxei8_v": { + "encoding": "000001-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4000027", + "mask": "0xfc00707f" + }, + "vsuxseg2ei16_v": { + "encoding": "001001-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x24005027", + "mask": "0xfc00707f" + }, + "vsuxseg2ei32_v": { + "encoding": "001001-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x24006027", + "mask": "0xfc00707f" + }, + "vsuxseg2ei64_v": { + "encoding": "001001-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x24007027", + "mask": "0xfc00707f" + }, + "vsuxseg2ei8_v": { + "encoding": "001001-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x24000027", + "mask": "0xfc00707f" + }, + "vsuxseg3ei16_v": { + "encoding": "010001-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x44005027", + "mask": "0xfc00707f" + }, + "vsuxseg3ei32_v": { + "encoding": "010001-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x44006027", + "mask": "0xfc00707f" + }, + "vsuxseg3ei64_v": { + "encoding": "010001-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x44007027", + "mask": "0xfc00707f" + }, + "vsuxseg3ei8_v": { + "encoding": "010001-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x44000027", + "mask": "0xfc00707f" + }, + "vsuxseg4ei16_v": { + "encoding": "011001-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x64005027", + "mask": "0xfc00707f" + }, + "vsuxseg4ei32_v": { + "encoding": "011001-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x64006027", + "mask": "0xfc00707f" + }, + "vsuxseg4ei64_v": { + "encoding": "011001-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x64007027", + "mask": "0xfc00707f" + }, + "vsuxseg4ei8_v": { + "encoding": "011001-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x64000027", + "mask": "0xfc00707f" + }, + "vsuxseg5ei16_v": { + "encoding": "100001-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x84005027", + "mask": "0xfc00707f" + }, + "vsuxseg5ei32_v": { + "encoding": "100001-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x84006027", + "mask": "0xfc00707f" + }, + "vsuxseg5ei64_v": { + "encoding": "100001-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x84007027", + "mask": "0xfc00707f" + }, + "vsuxseg5ei8_v": { + "encoding": "100001-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x84000027", + "mask": "0xfc00707f" + }, + "vsuxseg6ei16_v": { + "encoding": "101001-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa4005027", + "mask": "0xfc00707f" + }, + "vsuxseg6ei32_v": { + "encoding": "101001-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa4006027", + "mask": "0xfc00707f" + }, + "vsuxseg6ei64_v": { + "encoding": "101001-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa4007027", + "mask": "0xfc00707f" + }, + "vsuxseg6ei8_v": { + "encoding": "101001-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa4000027", + "mask": "0xfc00707f" + }, + "vsuxseg7ei16_v": { + "encoding": "110001-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc4005027", + "mask": "0xfc00707f" + }, + "vsuxseg7ei32_v": { + "encoding": "110001-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc4006027", + "mask": "0xfc00707f" + }, + "vsuxseg7ei64_v": { + "encoding": "110001-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc4007027", + "mask": "0xfc00707f" + }, + "vsuxseg7ei8_v": { + "encoding": "110001-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc4000027", + "mask": "0xfc00707f" + }, + "vsuxseg8ei16_v": { + "encoding": "111001-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xe4005027", + "mask": "0xfc00707f" + }, + "vsuxseg8ei32_v": { + "encoding": "111001-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xe4006027", + "mask": "0xfc00707f" + }, + "vsuxseg8ei64_v": { + "encoding": "111001-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xe4007027", + "mask": "0xfc00707f" + }, + "vsuxseg8ei8_v": { + "encoding": "111001-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xe4000027", + "mask": "0xfc00707f" + }, + "vwadd_vv": { + "encoding": "110001-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc4002057", + "mask": "0xfc00707f" + }, + "vwadd_vx": { + "encoding": "110001-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc4006057", + "mask": "0xfc00707f" + }, + "vwadd_wv": { + "encoding": "110101-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xd4002057", + "mask": "0xfc00707f" + }, + "vwadd_wx": { + "encoding": "110101-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xd4006057", + "mask": "0xfc00707f" + }, + "vwaddu_vv": { + "encoding": "110000-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc0002057", + "mask": "0xfc00707f" + }, + "vwaddu_vx": { + "encoding": "110000-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc0006057", + "mask": "0xfc00707f" + }, + "vwaddu_wv": { + "encoding": "110100-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xd0002057", + "mask": "0xfc00707f" + }, + "vwaddu_wx": { + "encoding": "110100-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xd0006057", + "mask": "0xfc00707f" + }, + "vwmacc_vv": { + "encoding": "111101-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xf4002057", + "mask": "0xfc00707f" + }, + "vwmacc_vx": { + "encoding": "111101-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xf4006057", + "mask": "0xfc00707f" + }, + "vwmaccsu_vv": { + "encoding": "111111-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xfc002057", + "mask": "0xfc00707f" + }, + "vwmaccsu_vx": { + "encoding": "111111-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xfc006057", + "mask": "0xfc00707f" + }, + "vwmaccu_vv": { + "encoding": "111100-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xf0002057", + "mask": "0xfc00707f" + }, + "vwmaccu_vx": { + "encoding": "111100-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xf0006057", + "mask": "0xfc00707f" + }, + "vwmaccus_vx": { + "encoding": "111110-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xf8006057", + "mask": "0xfc00707f" + }, + "vwmul_vv": { + "encoding": "111011-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xec002057", + "mask": "0xfc00707f" + }, + "vwmul_vx": { + "encoding": "111011-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xec006057", + "mask": "0xfc00707f" + }, + "vwmulsu_vv": { + "encoding": "111010-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xe8002057", + "mask": "0xfc00707f" + }, + "vwmulsu_vx": { + "encoding": "111010-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xe8006057", + "mask": "0xfc00707f" + }, + "vwmulu_vv": { + "encoding": "111000-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xe0002057", + "mask": "0xfc00707f" + }, + "vwmulu_vx": { + "encoding": "111000-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xe0006057", + "mask": "0xfc00707f" + }, + "vwredsum_vs": { + "encoding": "110001-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc4000057", + "mask": "0xfc00707f" + }, + "vwredsumu_vs": { + "encoding": "110000-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc0000057", + "mask": "0xfc00707f" + }, + "vwsll_vi": { + "encoding": "110101-----------011-----1010111", + "variable_fields": ["vd", "zimm5", "vs2", "vm"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0xd4003057", + "mask": "0xfc00707f" + }, + "vwsll_vv": { + "encoding": "110101-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0xd4000057", + "mask": "0xfc00707f" + }, + "vwsll_vx": { + "encoding": "110101-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0xd4004057", + "mask": "0xfc00707f" + }, + "vwsub_vv": { + "encoding": "110011-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xcc002057", + "mask": "0xfc00707f" + }, + "vwsub_vx": { + "encoding": "110011-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xcc006057", + "mask": "0xfc00707f" + }, + "vwsub_wv": { + "encoding": "110111-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xdc002057", + "mask": "0xfc00707f" + }, + "vwsub_wx": { + "encoding": "110111-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xdc006057", + "mask": "0xfc00707f" + }, + "vwsubu_vv": { + "encoding": "110010-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc8002057", + "mask": "0xfc00707f" + }, + "vwsubu_vx": { + "encoding": "110010-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc8006057", + "mask": "0xfc00707f" + }, + "vwsubu_wv": { + "encoding": "110110-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xd8002057", + "mask": "0xfc00707f" + }, + "vwsubu_wx": { + "encoding": "110110-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xd8006057", + "mask": "0xfc00707f" + }, + "vxor_vi": { + "encoding": "001011-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x2c003057", + "mask": "0xfc00707f" + }, + "vxor_vv": { + "encoding": "001011-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x2c000057", + "mask": "0xfc00707f" + }, + "vxor_vx": { + "encoding": "001011-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x2c004057", + "mask": "0xfc00707f" + }, + "vzext_vf2": { + "encoding": "010010------00110010-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x48032057", + "mask": "0xfc0ff07f" + }, + "vzext_vf4": { + "encoding": "010010------00100010-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x48022057", + "mask": "0xfc0ff07f" + }, + "vzext_vf8": { + "encoding": "010010------00010010-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x48012057", + "mask": "0xfc0ff07f" + }, + "wfi": { + "encoding": "00010000010100000000000001110011", + "variable_fields": [], + "extension": ["rv_sm"], + "match": "0x10500073", + "mask": "0xffffffff" + }, + "wrs_nto": { + "encoding": "00000000110100000000000001110011", + "variable_fields": [], + "extension": ["rv_zawrs"], + "match": "0xd00073", + "mask": "0xffffffff" + }, + "wrs_sto": { + "encoding": "00000001110100000000000001110011", + "variable_fields": [], + "extension": ["rv_zawrs"], + "match": "0x1d00073", + "mask": "0xffffffff" + }, + "xnor": { + "encoding": "0100000----------100-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbb", "rv_zbkb", "rv_zk", "rv_zkn", "rv_zks"], + "match": "0x40004033", + "mask": "0xfe00707f" + }, + "xor": { + "encoding": "0000000----------100-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_i"], + "match": "0x4033", + "mask": "0xfe00707f" + }, + "xori": { + "encoding": "-----------------100-----0010011", + "variable_fields": ["rd", "rs1", "imm12"], + "extension": ["rv_i"], + "match": "0x4013", + "mask": "0x707f" + }, + "xperm4": { + "encoding": "0010100----------010-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zbkx"], + "match": "0x28002033", + "mask": "0xfe00707f" + }, + "xperm8": { + "encoding": "0010100----------100-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zbkx"], + "match": "0x28004033", + "mask": "0xfe00707f" + }, + "zext_h": { + "encoding": "000010000000-----100-----0111011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_b", "rv64_zbb"], + "match": "0x800403b", + "mask": "0xfff0707f" + }, + "zip": { + "encoding": "000010001111-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv32_zbkb"], + "match": "0x8f01013", + "mask": "0xfff0707f" + } +} diff --git a/backends/opcodes_maker/output/priv-instr-table.tex b/backends/opcodes_maker/output/priv-instr-table.tex new file mode 100644 index 000000000..9422ef068 --- /dev/null +++ b/backends/opcodes_maker/output/priv-instr-table.tex @@ -0,0 +1,326 @@ + +\newpage + +\begin{table}[p] +\begin{small} +\begin{center} + \begin{tabular} {p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}l} + & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & \\ + + & + + \multicolumn{3}{l}{31} & + \multicolumn{2}{r}{27} & + \multicolumn{1}{c}{26} & + \multicolumn{1}{r}{25} & + \multicolumn{3}{l}{24} & + \multicolumn{2}{r}{20} & + \multicolumn{3}{l}{19} & + \multicolumn{2}{r}{15} & + \multicolumn{2}{l}{14} & + \multicolumn{1}{r}{12} & + \multicolumn{4}{l}{11} & + \multicolumn{1}{r}{7} & + \multicolumn{6}{l}{6} & + \multicolumn{1}{r}{0} \\ + \cline{2-33} +& + + +\multicolumn{7}{|c|}{funct7} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{funct3} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{opcode} & R-type \\ +\cline{2-33} +& + +\multicolumn{12}{|c|}{imm[11:0]} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{funct3} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{opcode} & I-type \\ +\cline{2-33} +& + + + + +\multicolumn{32}{c}{} & \\ +\multicolumn{32}{c}{\bf Trap-Return Instructions } & \\ +\cline{2-33} + + & +\multicolumn{7}{|c|}{0001000} & +\multicolumn{5}{c|}{00010} & +\multicolumn{5}{c|}{00000} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{00000} & +\multicolumn{7}{|c|}{1110011} & SRET \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0011000} & +\multicolumn{5}{c|}{00010} & +\multicolumn{5}{c|}{00000} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{00000} & +\multicolumn{7}{|c|}{1110011} & MRET \\ +\cline{2-33} +& + + + + +\multicolumn{32}{c}{} & \\ +\multicolumn{32}{c}{\bf Interrupt-Management Instructions } & \\ +\cline{2-33} + + & +\multicolumn{7}{|c|}{0001000} & +\multicolumn{5}{c|}{00101} & +\multicolumn{5}{c|}{00000} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{00000} & +\multicolumn{7}{|c|}{1110011} & WFI \\ +\cline{2-33} +& + + + + +\multicolumn{32}{c}{} & \\ +\multicolumn{32}{c}{\bf Supervisor Memory-Management Instructions } & \\ +\cline{2-33} + + & +\multicolumn{7}{|c|}{0001001} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{00000} & +\multicolumn{7}{|c|}{1110011} & SFENCE.VMA \\ +\cline{2-33} +& + + + + +\multicolumn{32}{c}{} & \\ +\multicolumn{32}{c}{\bf Hypervisor Memory-Management Instructions } & \\ +\cline{2-33} + + & +\multicolumn{7}{|c|}{0010001} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{00000} & +\multicolumn{7}{|c|}{1110011} & HFENCE.VVMA \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0110001} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{00000} & +\multicolumn{7}{|c|}{1110011} & HFENCE.GVMA \\ +\cline{2-33} +& + + + + +\multicolumn{32}{c}{} & \\ +\multicolumn{32}{c}{\bf Hypervisor Virtual-Machine Load and Store Instructions } & \\ +\cline{2-33} + + & +\multicolumn{7}{|c|}{0110000} & +\multicolumn{5}{c|}{00000} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{100} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1110011} & HLV.B \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0110000} & +\multicolumn{5}{c|}{00001} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{100} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1110011} & HLV.BU \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0110010} & +\multicolumn{5}{c|}{00000} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{100} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1110011} & HLV.H \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0110010} & +\multicolumn{5}{c|}{00001} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{100} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1110011} & HLV.HU \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0110100} & +\multicolumn{5}{c|}{00000} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{100} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1110011} & HLV.W \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0110010} & +\multicolumn{5}{c|}{00011} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{100} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1110011} & HLVX.HU \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0110100} & +\multicolumn{5}{c|}{00011} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{100} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1110011} & HLVX.WU \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0110001} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{100} & +\multicolumn{5}{c|}{00000} & +\multicolumn{7}{|c|}{1110011} & HSV.B \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0110011} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{100} & +\multicolumn{5}{c|}{00000} & +\multicolumn{7}{|c|}{1110011} & HSV.H \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0110101} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{100} & +\multicolumn{5}{c|}{00000} & +\multicolumn{7}{|c|}{1110011} & HSV.W \\ +\cline{2-33} +& + + + + +\multicolumn{32}{c}{} & \\ +\multicolumn{32}{c}{\bf Hypervisor Virtual-Machine Load and Store Instructions, RV64 only } & \\ +\cline{2-33} + + & +\multicolumn{7}{|c|}{0110100} & +\multicolumn{5}{c|}{00001} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{100} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1110011} & HLV.WU \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0110110} & +\multicolumn{5}{c|}{00000} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{100} & +\multicolumn{5}{c|}{rd} & +\multicolumn{7}{|c|}{1110011} & HLV.D \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0110111} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{100} & +\multicolumn{5}{c|}{00000} & +\multicolumn{7}{|c|}{1110011} & HSV.D \\ +\cline{2-33} +& + + + + +\multicolumn{32}{c}{} & \\ +\multicolumn{32}{c}{\bf Svinval Memory-Management Instructions } & \\ +\cline{2-33} + + & +\multicolumn{7}{|c|}{0001011} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{00000} & +\multicolumn{7}{|c|}{1110011} & SINVAL.VMA \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0001100} & +\multicolumn{5}{c|}{00000} & +\multicolumn{5}{c|}{00000} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{00000} & +\multicolumn{7}{|c|}{1110011} & SFENCE.W.INVAL \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0001100} & +\multicolumn{5}{c|}{00001} & +\multicolumn{5}{c|}{00000} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{00000} & +\multicolumn{7}{|c|}{1110011} & SFENCE.INVAL.IR \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0010011} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{00000} & +\multicolumn{7}{|c|}{1110011} & HINVAL.VVMA \\ +\cline{2-33} +& + +\multicolumn{7}{|c|}{0110011} & +\multicolumn{5}{c|}{rs2} & +\multicolumn{5}{c|}{rs1} & +\multicolumn{3}{c|}{000} & +\multicolumn{5}{c|}{00000} & +\multicolumn{7}{|c|}{1110011} & HINVAL.GVMA \\ +\cline{2-33} +& + + + + +\end{tabular} +\end{center} +\end{small} +\caption{RISC-V Privileged Instructions} +\end{table} diff --git a/backends/opcodes_maker/processed_instr_dict.json b/backends/opcodes_maker/processed_instr_dict.json new file mode 100755 index 000000000..c22017c25 --- /dev/null +++ b/backends/opcodes_maker/processed_instr_dict.json @@ -0,0 +1,8044 @@ +{ + "add": { + "encoding": "0000000----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_i"], + "match": "0x33", + "mask": "0xfe00707f" + }, + "add_uw": { + "encoding": "0000100----------000-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_b", "rv64_zba"], + "match": "0x800003b", + "mask": "0xfe00707f" + }, + "addi": { + "encoding": "-----------------000-----0010011", + "variable_fields": ["rd", "rs1", "imm12"], + "extension": ["rv_i"], + "match": "0x13", + "mask": "0x707f" + }, + "addiw": { + "encoding": "-----------------000-----0011011", + "variable_fields": ["rd", "rs1", "imm12"], + "extension": ["rv64_i"], + "match": "0x1b", + "mask": "0x707f" + }, + "addw": { + "encoding": "0000000----------000-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_i"], + "match": "0x3b", + "mask": "0xfe00707f" + }, + "aes32dsi": { + "encoding": "--10101----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2", "bs"], + "extension": ["rv32_zk", "rv32_zkn", "rv32_zknd"], + "match": "0x2a000033", + "mask": "0x3e00707f" + }, + "aes32dsmi": { + "encoding": "--10111----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2", "bs"], + "extension": ["rv32_zk", "rv32_zkn", "rv32_zknd"], + "match": "0x2e000033", + "mask": "0x3e00707f" + }, + "aes32esi": { + "encoding": "--10001----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2", "bs"], + "extension": ["rv32_zk", "rv32_zkn", "rv32_zkne"], + "match": "0x22000033", + "mask": "0x3e00707f" + }, + "aes32esmi": { + "encoding": "--10011----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2", "bs"], + "extension": ["rv32_zk", "rv32_zkn", "rv32_zkne"], + "match": "0x26000033", + "mask": "0x3e00707f" + }, + "aes64ds": { + "encoding": "0011101----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_zk", "rv64_zkn", "rv64_zknd"], + "match": "0x3a000033", + "mask": "0xfe00707f" + }, + "aes64dsm": { + "encoding": "0011111----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_zk", "rv64_zkn", "rv64_zknd"], + "match": "0x3e000033", + "mask": "0xfe00707f" + }, + "aes64es": { + "encoding": "0011001----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_zk", "rv64_zkn", "rv64_zkne"], + "match": "0x32000033", + "mask": "0xfe00707f" + }, + "aes64esm": { + "encoding": "0011011----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_zk", "rv64_zkn", "rv64_zkne"], + "match": "0x36000033", + "mask": "0xfe00707f" + }, + "aes64im": { + "encoding": "001100000000-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_zk", "rv64_zkn", "rv64_zknd"], + "match": "0x30001013", + "mask": "0xfff0707f" + }, + "aes64ks1i": { + "encoding": "00110001---------001-----0010011", + "variable_fields": ["rd", "rs1", "rnum"], + "extension": ["rv64_zk", "rv64_zkn", "rv64_zknd", "rv64_zkne"], + "match": "0x31001013", + "mask": "0xff00707f" + }, + "aes64ks2": { + "encoding": "0111111----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_zk", "rv64_zkn", "rv64_zknd", "rv64_zkne"], + "match": "0x7e000033", + "mask": "0xfe00707f" + }, + "amoadd_b": { + "encoding": "00000------------000-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zabha"], + "match": "0x2f", + "mask": "0xf800707f" + }, + "amoadd_d": { + "encoding": "00000------------011-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv64_a", "rv64_zaamo"], + "match": "0x302f", + "mask": "0xf800707f" + }, + "amoadd_h": { + "encoding": "00000------------001-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zabha"], + "match": "0x102f", + "mask": "0xf800707f" + }, + "amoadd_w": { + "encoding": "00000------------010-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_a", "rv_zaamo"], + "match": "0x202f", + "mask": "0xf800707f" + }, + "amoand_b": { + "encoding": "01100------------000-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zabha"], + "match": "0x6000002f", + "mask": "0xf800707f" + }, + "amoand_d": { + "encoding": "01100------------011-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv64_a", "rv64_zaamo"], + "match": "0x6000302f", + "mask": "0xf800707f" + }, + "amoand_h": { + "encoding": "01100------------001-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zabha"], + "match": "0x6000102f", + "mask": "0xf800707f" + }, + "amoand_w": { + "encoding": "01100------------010-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_a", "rv_zaamo"], + "match": "0x6000202f", + "mask": "0xf800707f" + }, + "amocas_b": { + "encoding": "00101------------000-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zabha"], + "match": "0x2800002f", + "mask": "0xf800707f" + }, + "amocas_d": { + "encoding": "00101------------011-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zacas"], + "match": "0x2800302f", + "mask": "0xf800707f" + }, + "amocas_h": { + "encoding": "00101------------001-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zabha"], + "match": "0x2800102f", + "mask": "0xf800707f" + }, + "amocas_q": { + "encoding": "00101------------100-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv64_zacas"], + "match": "0x2800402f", + "mask": "0xf800707f" + }, + "amocas_w": { + "encoding": "00101------------010-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zacas"], + "match": "0x2800202f", + "mask": "0xf800707f" + }, + "amomax_b": { + "encoding": "10100------------000-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zabha"], + "match": "0xa000002f", + "mask": "0xf800707f" + }, + "amomax_d": { + "encoding": "10100------------011-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv64_a", "rv64_zaamo"], + "match": "0xa000302f", + "mask": "0xf800707f" + }, + "amomax_h": { + "encoding": "10100------------001-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zabha"], + "match": "0xa000102f", + "mask": "0xf800707f" + }, + "amomax_w": { + "encoding": "10100------------010-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_a", "rv_zaamo"], + "match": "0xa000202f", + "mask": "0xf800707f" + }, + "amomaxu_b": { + "encoding": "11100------------000-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zabha"], + "match": "0xe000002f", + "mask": "0xf800707f" + }, + "amomaxu_d": { + "encoding": "11100------------011-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv64_a", "rv64_zaamo"], + "match": "0xe000302f", + "mask": "0xf800707f" + }, + "amomaxu_h": { + "encoding": "11100------------001-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zabha"], + "match": "0xe000102f", + "mask": "0xf800707f" + }, + "amomaxu_w": { + "encoding": "11100------------010-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_a", "rv_zaamo"], + "match": "0xe000202f", + "mask": "0xf800707f" + }, + "amomin_b": { + "encoding": "10000------------000-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zabha"], + "match": "0x8000002f", + "mask": "0xf800707f" + }, + "amomin_d": { + "encoding": "10000------------011-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv64_a", "rv64_zaamo"], + "match": "0x8000302f", + "mask": "0xf800707f" + }, + "amomin_h": { + "encoding": "10000------------001-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zabha"], + "match": "0x8000102f", + "mask": "0xf800707f" + }, + "amomin_w": { + "encoding": "10000------------010-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_a", "rv_zaamo"], + "match": "0x8000202f", + "mask": "0xf800707f" + }, + "amominu_b": { + "encoding": "11000------------000-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zabha"], + "match": "0xc000002f", + "mask": "0xf800707f" + }, + "amominu_d": { + "encoding": "11000------------011-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv64_a", "rv64_zaamo"], + "match": "0xc000302f", + "mask": "0xf800707f" + }, + "amominu_h": { + "encoding": "11000------------001-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zabha"], + "match": "0xc000102f", + "mask": "0xf800707f" + }, + "amominu_w": { + "encoding": "11000------------010-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_a", "rv_zaamo"], + "match": "0xc000202f", + "mask": "0xf800707f" + }, + "amoor_b": { + "encoding": "01000------------000-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zabha"], + "match": "0x4000002f", + "mask": "0xf800707f" + }, + "amoor_d": { + "encoding": "01000------------011-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv64_a", "rv64_zaamo"], + "match": "0x4000302f", + "mask": "0xf800707f" + }, + "amoor_h": { + "encoding": "01000------------001-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zabha"], + "match": "0x4000102f", + "mask": "0xf800707f" + }, + "amoor_w": { + "encoding": "01000------------010-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_a", "rv_zaamo"], + "match": "0x4000202f", + "mask": "0xf800707f" + }, + "amoswap_b": { + "encoding": "00001------------000-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zabha"], + "match": "0x800002f", + "mask": "0xf800707f" + }, + "amoswap_d": { + "encoding": "00001------------011-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv64_a", "rv64_zaamo"], + "match": "0x800302f", + "mask": "0xf800707f" + }, + "amoswap_h": { + "encoding": "00001------------001-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zabha"], + "match": "0x800102f", + "mask": "0xf800707f" + }, + "amoswap_w": { + "encoding": "00001------------010-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_a", "rv_zaamo"], + "match": "0x800202f", + "mask": "0xf800707f" + }, + "amoxor_b": { + "encoding": "00100------------000-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zabha"], + "match": "0x2000002f", + "mask": "0xf800707f" + }, + "amoxor_d": { + "encoding": "00100------------011-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv64_a", "rv64_zaamo"], + "match": "0x2000302f", + "mask": "0xf800707f" + }, + "amoxor_h": { + "encoding": "00100------------001-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zabha"], + "match": "0x2000102f", + "mask": "0xf800707f" + }, + "amoxor_w": { + "encoding": "00100------------010-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_a", "rv_zaamo"], + "match": "0x2000202f", + "mask": "0xf800707f" + }, + "and": { + "encoding": "0000000----------111-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_i"], + "match": "0x7033", + "mask": "0xfe00707f" + }, + "andi": { + "encoding": "-----------------111-----0010011", + "variable_fields": ["rd", "rs1", "imm12"], + "extension": ["rv_i"], + "match": "0x7013", + "mask": "0x707f" + }, + "andn": { + "encoding": "0100000----------111-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbb", "rv_zbkb", "rv_zk", "rv_zkn", "rv_zks"], + "match": "0x40007033", + "mask": "0xfe00707f" + }, + "auipc": { + "encoding": "-------------------------0010111", + "variable_fields": ["rd", "imm20"], + "extension": ["rv_i"], + "match": "0x17", + "mask": "0x7f" + }, + "bclr": { + "encoding": "0100100----------001-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbs"], + "match": "0x48001033", + "mask": "0xfe00707f" + }, + "bclri": { + "encoding": "010010-----------001-----0010011", + "variable_fields": ["rd", "rs1", "shamtd"], + "extension": ["rv64_b", "rv64_zbs"], + "match": "0x48001013", + "mask": "0xfc00707f" + }, + "beq": { + "encoding": "-----------------000-----1100011", + "variable_fields": ["rs1", "rs2", "bimm12hi", "bimm12lo"], + "extension": ["rv_i"], + "match": "0x63", + "mask": "0x707f" + }, + "bext": { + "encoding": "0100100----------101-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbs"], + "match": "0x48005033", + "mask": "0xfe00707f" + }, + "bexti": { + "encoding": "010010-----------101-----0010011", + "variable_fields": ["rd", "rs1", "shamtd"], + "extension": ["rv64_b", "rv64_zbs"], + "match": "0x48005013", + "mask": "0xfc00707f" + }, + "bge": { + "encoding": "-----------------101-----1100011", + "variable_fields": ["rs1", "rs2", "bimm12hi", "bimm12lo"], + "extension": ["rv_i"], + "match": "0x5063", + "mask": "0x707f" + }, + "bgeu": { + "encoding": "-----------------111-----1100011", + "variable_fields": ["rs1", "rs2", "bimm12hi", "bimm12lo"], + "extension": ["rv_i"], + "match": "0x7063", + "mask": "0x707f" + }, + "binv": { + "encoding": "0110100----------001-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbs"], + "match": "0x68001033", + "mask": "0xfe00707f" + }, + "binvi": { + "encoding": "011010-----------001-----0010011", + "variable_fields": ["rd", "rs1", "shamtd"], + "extension": ["rv64_b", "rv64_zbs"], + "match": "0x68001013", + "mask": "0xfc00707f" + }, + "blt": { + "encoding": "-----------------100-----1100011", + "variable_fields": ["rs1", "rs2", "bimm12hi", "bimm12lo"], + "extension": ["rv_i"], + "match": "0x4063", + "mask": "0x707f" + }, + "bltu": { + "encoding": "-----------------110-----1100011", + "variable_fields": ["rs1", "rs2", "bimm12hi", "bimm12lo"], + "extension": ["rv_i"], + "match": "0x6063", + "mask": "0x707f" + }, + "bne": { + "encoding": "-----------------001-----1100011", + "variable_fields": ["rs1", "rs2", "bimm12hi", "bimm12lo"], + "extension": ["rv_i"], + "match": "0x1063", + "mask": "0x707f" + }, + "brev8": { + "encoding": "011010000111-----101-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_zbkb"], + "match": "0x68705013", + "mask": "0xfff0707f" + }, + "bset": { + "encoding": "0010100----------001-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbs"], + "match": "0x28001033", + "mask": "0xfe00707f" + }, + "bseti": { + "encoding": "001010-----------001-----0010011", + "variable_fields": ["rd", "rs1", "shamtd"], + "extension": ["rv64_b", "rv64_zbs"], + "match": "0x28001013", + "mask": "0xfc00707f" + }, + "c_add": { + "encoding": "----------------1001----------10", + "variable_fields": ["rd", "rs2"], + "extension": ["rv_c", "rv_zca"], + "match": "0x9002", + "mask": "0xf003" + }, + "c_addi": { + "encoding": "----------------000-----------01", + "variable_fields": ["rd"], + "extension": ["rv_c", "rv_zca"], + "match": "0x1", + "mask": "0xe003" + }, + "c_addi16sp": { + "encoding": "----------------011-00010-----01", + "variable_fields": [], + "extension": ["rv_c", "rv_zca"], + "match": "0x6101", + "mask": "0xef83" + }, + "c_addi4spn": { + "encoding": "----------------000-----------00", + "variable_fields": ["rd"], + "extension": ["rv_c", "rv_zca"], + "match": "0x0", + "mask": "0xe003" + }, + "c_addiw": { + "encoding": "----------------001-----------01", + "variable_fields": ["rd"], + "extension": ["rv64_c", "rv64_zca"], + "match": "0x2001", + "mask": "0xe003" + }, + "c_addw": { + "encoding": "----------------100111---01---01", + "variable_fields": ["rd", "rs2"], + "extension": ["rv64_c", "rv64_zca"], + "match": "0x9c21", + "mask": "0xfc63" + }, + "c_and": { + "encoding": "----------------100011---11---01", + "variable_fields": ["rd", "rs2"], + "extension": ["rv_c", "rv_zca"], + "match": "0x8c61", + "mask": "0xfc63" + }, + "c_andi": { + "encoding": "----------------100-10--------01", + "variable_fields": ["rd"], + "extension": ["rv_c", "rv_zca"], + "match": "0x8801", + "mask": "0xec03" + }, + "c_beqz": { + "encoding": "----------------110-----------01", + "variable_fields": ["rs1"], + "extension": ["rv_c", "rv_zca"], + "match": "0xc001", + "mask": "0xe003" + }, + "c_bnez": { + "encoding": "----------------111-----------01", + "variable_fields": ["rs1"], + "extension": ["rv_c", "rv_zca"], + "match": "0xe001", + "mask": "0xe003" + }, + "c_ebreak": { + "encoding": "----------------1001000000000010", + "variable_fields": [], + "extension": ["rv_c", "rv_zca"], + "match": "0x9002", + "mask": "0xffff" + }, + "c_fld": { + "encoding": "----------------001-----------00", + "variable_fields": ["rs1", "rd"], + "extension": ["rv_c", "rv_d"], + "match": "0x2000", + "mask": "0xe003" + }, + "c_fldsp": { + "encoding": "----------------001-----------10", + "variable_fields": ["rd"], + "extension": ["rv_c", "rv_d"], + "match": "0x2002", + "mask": "0xe003" + }, + "c_flw": { + "encoding": "----------------011-----------00", + "variable_fields": ["rs1", "rd"], + "extension": ["rv_c", "rv_f"], + "match": "0x6000", + "mask": "0xe003" + }, + "c_flwsp": { + "encoding": "----------------011-----------10", + "variable_fields": ["rd"], + "extension": ["rv_c", "rv_f"], + "match": "0x6002", + "mask": "0xe003" + }, + "c_fsd": { + "encoding": "----------------101-----------00", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv_c", "rv_d"], + "match": "0xa000", + "mask": "0xe003" + }, + "c_fsdsp": { + "encoding": "----------------101-----------10", + "variable_fields": ["rs2"], + "extension": ["rv_c", "rv_d"], + "match": "0xa002", + "mask": "0xe003" + }, + "c_fsw": { + "encoding": "----------------111-----------00", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv_c", "rv_f"], + "match": "0xe000", + "mask": "0xe003" + }, + "c_fswsp": { + "encoding": "----------------111-----------10", + "variable_fields": ["rs2"], + "extension": ["rv_c", "rv_f"], + "match": "0xe002", + "mask": "0xe003" + }, + "c_j": { + "encoding": "----------------101-----------01", + "variable_fields": [], + "extension": ["rv_c", "rv_zca"], + "match": "0xa001", + "mask": "0xe003" + }, + "c_jal": { + "encoding": "----------------001-----------01", + "variable_fields": [], + "extension": ["rv32_c", "rv32_zca"], + "match": "0x2001", + "mask": "0xe003" + }, + "c_jalr": { + "encoding": "----------------1001-----0000010", + "variable_fields": ["rs1"], + "extension": ["rv_c", "rv_zca"], + "match": "0x9002", + "mask": "0xf07f" + }, + "c_jr": { + "encoding": "----------------1000-----0000010", + "variable_fields": ["rs1"], + "extension": ["rv_c", "rv_zca"], + "match": "0x8002", + "mask": "0xf07f" + }, + "c_lbu": { + "encoding": "----------------100000--------00", + "variable_fields": ["rs1", "rd"], + "extension": ["rv_zcb", "rv_zce"], + "match": "0x8000", + "mask": "0xfc03" + }, + "c_ld": { + "encoding": "----------------011-----------00", + "variable_fields": ["rs1", "rd"], + "extension": ["rv64_c", "rv64_zca"], + "match": "0x6000", + "mask": "0xe003" + }, + "c_ldsp": { + "encoding": "----------------011-----------10", + "variable_fields": ["rd"], + "extension": ["rv64_c", "rv64_zca"], + "match": "0x6002", + "mask": "0xe003" + }, + "c_li": { + "encoding": "----------------010-----------01", + "variable_fields": ["rd"], + "extension": ["rv_c", "rv_zca"], + "match": "0x4001", + "mask": "0xe003" + }, + "c_lui": { + "encoding": "----------------011-----------01", + "variable_fields": ["rd"], + "extension": ["rv_c", "rv_zca"], + "match": "0x6001", + "mask": "0xe003" + }, + "c_lw": { + "encoding": "----------------010-----------00", + "variable_fields": ["rs1", "rd"], + "extension": ["rv_c", "rv_zca"], + "match": "0x4000", + "mask": "0xe003" + }, + "c_lwsp": { + "encoding": "----------------010-----------10", + "variable_fields": ["rd"], + "extension": ["rv_c", "rv_zca"], + "match": "0x4002", + "mask": "0xe003" + }, + "c_mul": { + "encoding": "----------------100111---10---01", + "variable_fields": ["rs2", "rd"], + "extension": ["rv_zcb", "rv_zmmul"], + "match": "0x9c41", + "mask": "0xfc63" + }, + "c_mv": { + "encoding": "----------------1000----------10", + "variable_fields": ["rs2", "rd"], + "extension": ["rv_c", "rv_zca"], + "match": "0x8002", + "mask": "0xf003" + }, + "c_nop": { + "encoding": "----------------000-00000-----01", + "variable_fields": [], + "extension": ["rv_c", "rv_zca"], + "match": "0x1", + "mask": "0xef83" + }, + "c_not": { + "encoding": "----------------100111---1110101", + "variable_fields": ["rd"], + "extension": ["rv_zcb", "rv_zce"], + "match": "0x9c75", + "mask": "0xfc7f" + }, + "c_or": { + "encoding": "----------------100011---10---01", + "variable_fields": ["rd", "rs2"], + "extension": ["rv_c", "rv_zca"], + "match": "0x8c41", + "mask": "0xfc63" + }, + "c_sb": { + "encoding": "----------------100010--------00", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv_zcb", "rv_zce"], + "match": "0x8800", + "mask": "0xfc03" + }, + "c_sd": { + "encoding": "----------------111-----------00", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv64_c", "rv64_zca"], + "match": "0xe000", + "mask": "0xe003" + }, + "c_sdsp": { + "encoding": "----------------111-----------10", + "variable_fields": ["rs2"], + "extension": ["rv64_c", "rv64_zca"], + "match": "0xe002", + "mask": "0xe003" + }, + "c_sext_b": { + "encoding": "----------------100111---1100101", + "variable_fields": ["rd"], + "extension": ["rv_zcb", "rv_zbb"], + "match": "0x9c65", + "mask": "0xfc7f" + }, + "c_sext_h": { + "encoding": "----------------100111---1101101", + "variable_fields": ["rd"], + "extension": ["rv_zcb", "rv_zbb"], + "match": "0x9c6d", + "mask": "0xfc7f" + }, + "c_slli": { + "encoding": "----------------000-----------10", + "variable_fields": ["rd", "shamt"], + "extension": ["rv64_c", "rv64_zca"], + "match": "0x2", + "mask": "0xe003" + }, + "c_srai": { + "encoding": "----------------100-01--------01", + "variable_fields": ["rd", "shamt"], + "extension": ["rv64_c", "rv64_zca"], + "match": "0x8401", + "mask": "0xec03" + }, + "c_srli": { + "encoding": "----------------100-00--------01", + "variable_fields": ["rd", "shamt"], + "extension": ["rv64_c", "rv64_zca"], + "match": "0x8001", + "mask": "0xec03" + }, + "c_sub": { + "encoding": "----------------100011---00---01", + "variable_fields": ["rd", "rs2"], + "extension": ["rv_c", "rv_zca"], + "match": "0x8c01", + "mask": "0xfc63" + }, + "c_subw": { + "encoding": "----------------100111---00---01", + "variable_fields": ["rd", "rs2"], + "extension": ["rv64_c", "rv64_zca"], + "match": "0x9c01", + "mask": "0xfc63" + }, + "c_sw": { + "encoding": "----------------110-----------00", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv_c", "rv_zca"], + "match": "0xc000", + "mask": "0xe003" + }, + "c_swsp": { + "encoding": "----------------110-----------10", + "variable_fields": ["rs2"], + "extension": ["rv_c", "rv_zca"], + "match": "0xc002", + "mask": "0xe003" + }, + "c_xor": { + "encoding": "----------------100011---01---01", + "variable_fields": ["rd", "rs2"], + "extension": ["rv_c", "rv_zca"], + "match": "0x8c21", + "mask": "0xfc63" + }, + "c_zext_b": { + "encoding": "----------------100111---1100001", + "variable_fields": ["rd"], + "extension": ["rv_zcb", "rv_zbb"], + "match": "0x9c61", + "mask": "0xfc7f" + }, + "c_zext_h": { + "encoding": "----------------100111---1101001", + "variable_fields": ["rd"], + "extension": ["rv_zcb", "rv_zbb"], + "match": "0x9c69", + "mask": "0xfc7f" + }, + "c_zext_w": { + "encoding": "----------------100111---1110001", + "variable_fields": ["rd"], + "extension": ["rv64_zcb", "rv64_zbb"], + "match": "0x9c71", + "mask": "0xfc7f" + }, + "cbo_clean": { + "encoding": "000000000001-----010000000001111", + "variable_fields": ["rs1"], + "extension": ["rv_zicbom"], + "match": "0x10200f", + "mask": "0xfff07fff" + }, + "cbo_flush": { + "encoding": "000000000010-----010000000001111", + "variable_fields": ["rs1"], + "extension": ["rv_zicbom"], + "match": "0x20200f", + "mask": "0xfff07fff" + }, + "cbo_inval": { + "encoding": "000000000000-----010000000001111", + "variable_fields": ["rs1"], + "extension": ["rv_zicbom"], + "match": "0x200f", + "mask": "0xfff07fff" + }, + "cbo_zero": { + "encoding": "000000000100-----010000000001111", + "variable_fields": ["rs1"], + "extension": ["rv_zicboz"], + "match": "0x40200f", + "mask": "0xfff07fff" + }, + "clmul": { + "encoding": "0000101----------001-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbc", "rv_zbkc", "rv_zk", "rv_zkn", "rv_zks"], + "match": "0xa001033", + "mask": "0xfe00707f" + }, + "clmulh": { + "encoding": "0000101----------011-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbc", "rv_zbkc", "rv_zk", "rv_zkn", "rv_zks"], + "match": "0xa003033", + "mask": "0xfe00707f" + }, + "clmulr": { + "encoding": "0000101----------010-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbc"], + "match": "0xa002033", + "mask": "0xfe00707f" + }, + "clz": { + "encoding": "011000000000-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_b", "rv_zbb"], + "match": "0x60001013", + "mask": "0xfff0707f" + }, + "clzw": { + "encoding": "011000000000-----001-----0011011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_b", "rv64_zbb"], + "match": "0x6000101b", + "mask": "0xfff0707f" + }, + "cm_mva01s": { + "encoding": "----------------101011---11---10", + "variable_fields": [], + "extension": ["rv_zcmp"], + "match": "0xac62", + "mask": "0xfc63" + }, + "cm_mvsa01": { + "encoding": "----------------101011---01---10", + "variable_fields": [], + "extension": ["rv_zcmp"], + "match": "0xac22", + "mask": "0xfc63" + }, + "cm_pop": { + "encoding": "----------------10111010------10", + "variable_fields": [], + "extension": ["rv_zcmp"], + "match": "0xba02", + "mask": "0xff03" + }, + "cm_popret": { + "encoding": "----------------10111110------10", + "variable_fields": [], + "extension": ["rv_zcmp"], + "match": "0xbe02", + "mask": "0xff03" + }, + "cm_popretz": { + "encoding": "----------------10111100------10", + "variable_fields": [], + "extension": ["rv_zcmp"], + "match": "0xbc02", + "mask": "0xff03" + }, + "cm_push": { + "encoding": "----------------10111000------10", + "variable_fields": [], + "extension": ["rv_zcmp"], + "match": "0xb802", + "mask": "0xff03" + }, + "cpop": { + "encoding": "011000000010-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_b", "rv_zbb"], + "match": "0x60201013", + "mask": "0xfff0707f" + }, + "cpopw": { + "encoding": "011000000010-----001-----0011011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_b", "rv64_zbb"], + "match": "0x6020101b", + "mask": "0xfff0707f" + }, + "csrrc": { + "encoding": "-----------------011-----1110011", + "variable_fields": ["rd", "rs1", "csr"], + "extension": ["rv_zicsr"], + "match": "0x3073", + "mask": "0x707f" + }, + "csrrci": { + "encoding": "-----------------111-----1110011", + "variable_fields": ["rd", "csr"], + "extension": ["rv_zicsr"], + "match": "0x7073", + "mask": "0x707f" + }, + "csrrs": { + "encoding": "-----------------010-----1110011", + "variable_fields": ["rd", "rs1", "csr"], + "extension": ["rv_zicsr"], + "match": "0x2073", + "mask": "0x707f" + }, + "csrrsi": { + "encoding": "-----------------110-----1110011", + "variable_fields": ["rd", "csr"], + "extension": ["rv_zicsr"], + "match": "0x6073", + "mask": "0x707f" + }, + "csrrw": { + "encoding": "-----------------001-----1110011", + "variable_fields": ["rd", "rs1", "csr"], + "extension": ["rv_zicsr"], + "match": "0x1073", + "mask": "0x707f" + }, + "csrrwi": { + "encoding": "-----------------101-----1110011", + "variable_fields": ["rd", "zimm", "csr"], + "extension": ["rv_zicsr"], + "match": "0x5073", + "mask": "0x707f" + }, + "ctz": { + "encoding": "011000000001-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_b", "rv_zbb"], + "match": "0x60101013", + "mask": "0xfff0707f" + }, + "ctzw": { + "encoding": "011000000001-----001-----0011011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_b", "rv64_zbb"], + "match": "0x6010101b", + "mask": "0xfff0707f" + }, + "czero_eqz": { + "encoding": "0000111----------101-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zicond"], + "match": "0xe005033", + "mask": "0xfe00707f" + }, + "czero_nez": { + "encoding": "0000111----------111-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zicond"], + "match": "0xe007033", + "mask": "0xfe00707f" + }, + "div": { + "encoding": "0000001----------100-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_m"], + "match": "0x2004033", + "mask": "0xfe00707f" + }, + "divu": { + "encoding": "0000001----------101-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_m"], + "match": "0x2005033", + "mask": "0xfe00707f" + }, + "divuw": { + "encoding": "0000001----------101-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_m"], + "match": "0x200503b", + "mask": "0xfe00707f" + }, + "divw": { + "encoding": "0000001----------100-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_m"], + "match": "0x200403b", + "mask": "0xfe00707f" + }, + "dret": { + "encoding": "01111011001000000000000001110011", + "variable_fields": [], + "extension": ["rv_sdext"], + "match": "0x7b200073", + "mask": "0xffffffff" + }, + "ebreak": { + "encoding": "00000000000100000000000001110011", + "variable_fields": [], + "extension": ["rv_i"], + "match": "0x100073", + "mask": "0xffffffff" + }, + "ecall": { + "encoding": "00000000000000000000000001110011", + "variable_fields": [], + "extension": ["rv_i"], + "match": "0x73", + "mask": "0xffffffff" + }, + "fadd_d": { + "encoding": "0000001------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_d"], + "match": "0x2000053", + "mask": "0xfe00007f" + }, + "fadd_h": { + "encoding": "0000010------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_zfh"], + "match": "0x4000053", + "mask": "0xfe00007f" + }, + "fadd_q": { + "encoding": "0000011------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_q"], + "match": "0x6000053", + "mask": "0xfe00007f" + }, + "fadd_s": { + "encoding": "0000000------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_f"], + "match": "0x53", + "mask": "0xfe00007f" + }, + "fclass_d": { + "encoding": "111000100000-----001-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_d"], + "match": "0xe2001053", + "mask": "0xfff0707f" + }, + "fclass_h": { + "encoding": "111001000000-----001-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_zfh"], + "match": "0xe4001053", + "mask": "0xfff0707f" + }, + "fclass_q": { + "encoding": "111001100000-----001-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_q"], + "match": "0xe6001053", + "mask": "0xfff0707f" + }, + "fclass_s": { + "encoding": "111000000000-----001-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_f"], + "match": "0xe0001053", + "mask": "0xfff0707f" + }, + "fcvt_bf16_s": { + "encoding": "010001001000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_zfbfmin"], + "match": "0x44800053", + "mask": "0xfff0007f" + }, + "fcvt_d_h": { + "encoding": "010000100010-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_d", "rv_zfh"], + "match": "0x42200053", + "mask": "0xfff0007f" + }, + "fcvt_d_l": { + "encoding": "110100100010-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_d"], + "match": "0xd2200053", + "mask": "0xfff0007f" + }, + "fcvt_d_lu": { + "encoding": "110100100011-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_d"], + "match": "0xd2300053", + "mask": "0xfff0007f" + }, + "fcvt_d_q": { + "encoding": "010000100011-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_q"], + "match": "0x42300053", + "mask": "0xfff0007f" + }, + "fcvt_d_s": { + "encoding": "010000100000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_d"], + "match": "0x42000053", + "mask": "0xfff0007f" + }, + "fcvt_d_w": { + "encoding": "110100100000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_d"], + "match": "0xd2000053", + "mask": "0xfff0007f" + }, + "fcvt_d_wu": { + "encoding": "110100100001-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_d"], + "match": "0xd2100053", + "mask": "0xfff0007f" + }, + "fcvt_h_d": { + "encoding": "010001000001-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_d", "rv_zfh"], + "match": "0x44100053", + "mask": "0xfff0007f" + }, + "fcvt_h_l": { + "encoding": "110101000010-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_zfh"], + "match": "0xd4200053", + "mask": "0xfff0007f" + }, + "fcvt_h_lu": { + "encoding": "110101000011-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_zfh"], + "match": "0xd4300053", + "mask": "0xfff0007f" + }, + "fcvt_h_q": { + "encoding": "010001000011-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_q", "rv_zfh"], + "match": "0x44300053", + "mask": "0xfff0007f" + }, + "fcvt_h_s": { + "encoding": "010001000000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_zfh", "rv_zfhmin"], + "match": "0x44000053", + "mask": "0xfff0007f" + }, + "fcvt_h_w": { + "encoding": "110101000000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_zfh"], + "match": "0xd4000053", + "mask": "0xfff0007f" + }, + "fcvt_h_wu": { + "encoding": "110101000001-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_zfh"], + "match": "0xd4100053", + "mask": "0xfff0007f" + }, + "fcvt_l_d": { + "encoding": "110000100010-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_d"], + "match": "0xc2200053", + "mask": "0xfff0007f" + }, + "fcvt_l_h": { + "encoding": "110001000010-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_zfh"], + "match": "0xc4200053", + "mask": "0xfff0007f" + }, + "fcvt_l_q": { + "encoding": "110001100010-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_q"], + "match": "0xc6200053", + "mask": "0xfff0007f" + }, + "fcvt_l_s": { + "encoding": "110000000010-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_f"], + "match": "0xc0200053", + "mask": "0xfff0007f" + }, + "fcvt_lu_d": { + "encoding": "110000100011-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_d"], + "match": "0xc2300053", + "mask": "0xfff0007f" + }, + "fcvt_lu_h": { + "encoding": "110001000011-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_zfh"], + "match": "0xc4300053", + "mask": "0xfff0007f" + }, + "fcvt_lu_q": { + "encoding": "110001100011-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_q"], + "match": "0xc6300053", + "mask": "0xfff0007f" + }, + "fcvt_lu_s": { + "encoding": "110000000011-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_f"], + "match": "0xc0300053", + "mask": "0xfff0007f" + }, + "fcvt_q_d": { + "encoding": "010001100001-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_q"], + "match": "0x46100053", + "mask": "0xfff0007f" + }, + "fcvt_q_h": { + "encoding": "010001100010-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_q", "rv_zfh"], + "match": "0x46200053", + "mask": "0xfff0007f" + }, + "fcvt_q_l": { + "encoding": "110101100010-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_q"], + "match": "0xd6200053", + "mask": "0xfff0007f" + }, + "fcvt_q_lu": { + "encoding": "110101100011-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_q"], + "match": "0xd6300053", + "mask": "0xfff0007f" + }, + "fcvt_q_s": { + "encoding": "010001100000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_q"], + "match": "0x46000053", + "mask": "0xfff0007f" + }, + "fcvt_q_w": { + "encoding": "110101100000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_q"], + "match": "0xd6000053", + "mask": "0xfff0007f" + }, + "fcvt_q_wu": { + "encoding": "110101100001-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_q"], + "match": "0xd6100053", + "mask": "0xfff0007f" + }, + "fcvt_s_bf16": { + "encoding": "010000000110-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_zfbfmin"], + "match": "0x40600053", + "mask": "0xfff0007f" + }, + "fcvt_s_d": { + "encoding": "010000000001-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_d"], + "match": "0x40100053", + "mask": "0xfff0007f" + }, + "fcvt_s_h": { + "encoding": "010000000010-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_zfh", "rv_zfhmin"], + "match": "0x40200053", + "mask": "0xfff0007f" + }, + "fcvt_s_l": { + "encoding": "110100000010-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_f"], + "match": "0xd0200053", + "mask": "0xfff0007f" + }, + "fcvt_s_lu": { + "encoding": "110100000011-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_f"], + "match": "0xd0300053", + "mask": "0xfff0007f" + }, + "fcvt_s_q": { + "encoding": "010000000011-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_q"], + "match": "0x40300053", + "mask": "0xfff0007f" + }, + "fcvt_s_w": { + "encoding": "110100000000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_f"], + "match": "0xd0000053", + "mask": "0xfff0007f" + }, + "fcvt_s_wu": { + "encoding": "110100000001-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_f"], + "match": "0xd0100053", + "mask": "0xfff0007f" + }, + "fcvt_w_d": { + "encoding": "110000100000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_d"], + "match": "0xc2000053", + "mask": "0xfff0007f" + }, + "fcvt_w_h": { + "encoding": "110001000000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_zfh"], + "match": "0xc4000053", + "mask": "0xfff0007f" + }, + "fcvt_w_q": { + "encoding": "110001100000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_q"], + "match": "0xc6000053", + "mask": "0xfff0007f" + }, + "fcvt_w_s": { + "encoding": "110000000000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_f"], + "match": "0xc0000053", + "mask": "0xfff0007f" + }, + "fcvt_wu_d": { + "encoding": "110000100001-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_d"], + "match": "0xc2100053", + "mask": "0xfff0007f" + }, + "fcvt_wu_h": { + "encoding": "110001000001-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_zfh"], + "match": "0xc4100053", + "mask": "0xfff0007f" + }, + "fcvt_wu_q": { + "encoding": "110001100001-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_q"], + "match": "0xc6100053", + "mask": "0xfff0007f" + }, + "fcvt_wu_s": { + "encoding": "110000000001-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_f"], + "match": "0xc0100053", + "mask": "0xfff0007f" + }, + "fcvtmod_w_d": { + "encoding": "110000101000-----001-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_d", "rv_zfa"], + "match": "0xc2801053", + "mask": "0xfff0707f" + }, + "fdiv_d": { + "encoding": "0001101------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_d"], + "match": "0x1a000053", + "mask": "0xfe00007f" + }, + "fdiv_h": { + "encoding": "0001110------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_zfh"], + "match": "0x1c000053", + "mask": "0xfe00007f" + }, + "fdiv_q": { + "encoding": "0001111------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_q"], + "match": "0x1e000053", + "mask": "0xfe00007f" + }, + "fdiv_s": { + "encoding": "0001100------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_f"], + "match": "0x18000053", + "mask": "0xfe00007f" + }, + "fence": { + "encoding": "-----------------000-----0001111", + "variable_fields": ["rd", "rs1", "succ", "pred", "rm"], + "extension": ["rv_i"], + "match": "0xf", + "mask": "0x707f" + }, + "fence_i": { + "encoding": "-----------------001-----0001111", + "variable_fields": ["rd", "rs1", "imm12"], + "extension": ["rv_zifencei"], + "match": "0x100f", + "mask": "0x707f" + }, + "feq_d": { + "encoding": "1010001----------010-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_d"], + "match": "0xa2002053", + "mask": "0xfe00707f" + }, + "feq_h": { + "encoding": "1010010----------010-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfh"], + "match": "0xa4002053", + "mask": "0xfe00707f" + }, + "feq_q": { + "encoding": "1010011----------010-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_q"], + "match": "0xa6002053", + "mask": "0xfe00707f" + }, + "feq_s": { + "encoding": "1010000----------010-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_f"], + "match": "0xa0002053", + "mask": "0xfe00707f" + }, + "fld": { + "encoding": "-----------------011-----0000111", + "variable_fields": ["rd", "rs1", "imm12"], + "extension": ["rv_d"], + "match": "0x3007", + "mask": "0x707f" + }, + "fle_d": { + "encoding": "1010001----------000-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_d"], + "match": "0xa2000053", + "mask": "0xfe00707f" + }, + "fle_h": { + "encoding": "1010010----------000-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfh"], + "match": "0xa4000053", + "mask": "0xfe00707f" + }, + "fle_q": { + "encoding": "1010011----------000-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_q"], + "match": "0xa6000053", + "mask": "0xfe00707f" + }, + "fle_s": { + "encoding": "1010000----------000-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_f"], + "match": "0xa0000053", + "mask": "0xfe00707f" + }, + "fleq_d": { + "encoding": "1010001----------100-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_d", "rv_zfa"], + "match": "0xa2004053", + "mask": "0xfe00707f" + }, + "fleq_h": { + "encoding": "1010010----------100-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfa", "rv_zfh"], + "match": "0xa4004053", + "mask": "0xfe00707f" + }, + "fleq_q": { + "encoding": "1010011----------100-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_q", "rv_zfa"], + "match": "0xa6004053", + "mask": "0xfe00707f" + }, + "fleq_s": { + "encoding": "1010000----------100-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfa"], + "match": "0xa0004053", + "mask": "0xfe00707f" + }, + "flh": { + "encoding": "-----------------001-----0000111", + "variable_fields": ["rd", "rs1", "imm12"], + "extension": ["rv_zfh", "rv_zfhmin", "rv_zhinx"], + "match": "0x1007", + "mask": "0x707f" + }, + "fli_d": { + "encoding": "111100100001-----000-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_d", "rv_zfa"], + "match": "0xf2100053", + "mask": "0xfff0707f" + }, + "fli_h": { + "encoding": "111101000001-----000-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_zfa", "rv_zfh"], + "match": "0xf4100053", + "mask": "0xfff0707f" + }, + "fli_q": { + "encoding": "111101100001-----000-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_q", "rv_zfa"], + "match": "0xf6100053", + "mask": "0xfff0707f" + }, + "fli_s": { + "encoding": "111100000001-----000-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_zfa"], + "match": "0xf0100053", + "mask": "0xfff0707f" + }, + "flq": { + "encoding": "-----------------100-----0000111", + "variable_fields": ["rd", "rs1", "imm12"], + "extension": ["rv_q"], + "match": "0x4007", + "mask": "0x707f" + }, + "flt_d": { + "encoding": "1010001----------001-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_d"], + "match": "0xa2001053", + "mask": "0xfe00707f" + }, + "flt_h": { + "encoding": "1010010----------001-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfh"], + "match": "0xa4001053", + "mask": "0xfe00707f" + }, + "flt_q": { + "encoding": "1010011----------001-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_q"], + "match": "0xa6001053", + "mask": "0xfe00707f" + }, + "flt_s": { + "encoding": "1010000----------001-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_f"], + "match": "0xa0001053", + "mask": "0xfe00707f" + }, + "fltq_d": { + "encoding": "1010001----------101-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_d", "rv_zfa"], + "match": "0xa2005053", + "mask": "0xfe00707f" + }, + "fltq_h": { + "encoding": "1010010----------101-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfa", "rv_zfh"], + "match": "0xa4005053", + "mask": "0xfe00707f" + }, + "fltq_q": { + "encoding": "1010011----------101-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_q", "rv_zfa"], + "match": "0xa6005053", + "mask": "0xfe00707f" + }, + "fltq_s": { + "encoding": "1010000----------101-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfa"], + "match": "0xa0005053", + "mask": "0xfe00707f" + }, + "flw": { + "encoding": "-----------------010-----0000111", + "variable_fields": ["rd", "rs1", "imm12"], + "extension": ["rv_f"], + "match": "0x2007", + "mask": "0x707f" + }, + "fmadd_d": { + "encoding": "-----01------------------1000011", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_d"], + "match": "0x2000043", + "mask": "0x600007f" + }, + "fmadd_h": { + "encoding": "-----10------------------1000011", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_zfh"], + "match": "0x4000043", + "mask": "0x600007f" + }, + "fmadd_q": { + "encoding": "-----11------------------1000011", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_q"], + "match": "0x6000043", + "mask": "0x600007f" + }, + "fmadd_s": { + "encoding": "-----00------------------1000011", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_f"], + "match": "0x43", + "mask": "0x600007f" + }, + "fmax_d": { + "encoding": "0010101----------001-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_d"], + "match": "0x2a001053", + "mask": "0xfe00707f" + }, + "fmax_h": { + "encoding": "0010110----------001-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfh"], + "match": "0x2c001053", + "mask": "0xfe00707f" + }, + "fmax_q": { + "encoding": "0010111----------001-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_q"], + "match": "0x2e001053", + "mask": "0xfe00707f" + }, + "fmax_s": { + "encoding": "0010100----------001-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_f"], + "match": "0x28001053", + "mask": "0xfe00707f" + }, + "fmaxm_d": { + "encoding": "0010101----------011-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_d", "rv_zfa"], + "match": "0x2a003053", + "mask": "0xfe00707f" + }, + "fmaxm_h": { + "encoding": "0010110----------011-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfa", "rv_zfh"], + "match": "0x2c003053", + "mask": "0xfe00707f" + }, + "fmaxm_q": { + "encoding": "0010111----------011-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_q", "rv_zfa"], + "match": "0x2e003053", + "mask": "0xfe00707f" + }, + "fmaxm_s": { + "encoding": "0010100----------011-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfa"], + "match": "0x28003053", + "mask": "0xfe00707f" + }, + "fmin_d": { + "encoding": "0010101----------000-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_d"], + "match": "0x2a000053", + "mask": "0xfe00707f" + }, + "fmin_h": { + "encoding": "0010110----------000-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfh"], + "match": "0x2c000053", + "mask": "0xfe00707f" + }, + "fmin_q": { + "encoding": "0010111----------000-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_q"], + "match": "0x2e000053", + "mask": "0xfe00707f" + }, + "fmin_s": { + "encoding": "0010100----------000-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_f"], + "match": "0x28000053", + "mask": "0xfe00707f" + }, + "fminm_d": { + "encoding": "0010101----------010-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_d", "rv_zfa"], + "match": "0x2a002053", + "mask": "0xfe00707f" + }, + "fminm_h": { + "encoding": "0010110----------010-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfa", "rv_zfh"], + "match": "0x2c002053", + "mask": "0xfe00707f" + }, + "fminm_q": { + "encoding": "0010111----------010-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_q", "rv_zfa"], + "match": "0x2e002053", + "mask": "0xfe00707f" + }, + "fminm_s": { + "encoding": "0010100----------010-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfa"], + "match": "0x28002053", + "mask": "0xfe00707f" + }, + "fmsub_d": { + "encoding": "-----01------------------1000111", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_d"], + "match": "0x2000047", + "mask": "0x600007f" + }, + "fmsub_h": { + "encoding": "-----10------------------1000111", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_zfh"], + "match": "0x4000047", + "mask": "0x600007f" + }, + "fmsub_q": { + "encoding": "-----11------------------1000111", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_q"], + "match": "0x6000047", + "mask": "0x600007f" + }, + "fmsub_s": { + "encoding": "-----00------------------1000111", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_f"], + "match": "0x47", + "mask": "0x600007f" + }, + "fmul_d": { + "encoding": "0001001------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_d"], + "match": "0x12000053", + "mask": "0xfe00007f" + }, + "fmul_h": { + "encoding": "0001010------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_zfh"], + "match": "0x14000053", + "mask": "0xfe00007f" + }, + "fmul_q": { + "encoding": "0001011------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_q"], + "match": "0x16000053", + "mask": "0xfe00007f" + }, + "fmul_s": { + "encoding": "0001000------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_f"], + "match": "0x10000053", + "mask": "0xfe00007f" + }, + "fmv_d_x": { + "encoding": "111100100000-----000-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_d"], + "match": "0xf2000053", + "mask": "0xfff0707f" + }, + "fmv_h_x": { + "encoding": "111101000000-----000-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_f"], + "match": "0xf4000053", + "mask": "0xfff0707f" + }, + "fmv_w_x": { + "encoding": "111100000000-----000-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_f"], + "match": "0xf0000053", + "mask": "0xfff0707f" + }, + "fmv_x_d": { + "encoding": "111000100000-----000-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_d"], + "match": "0xe2000053", + "mask": "0xfff0707f" + }, + "fmv_x_h": { + "encoding": "111001000000-----000-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_zfh", "rv_zfhmin", "rv_zhinx"], + "match": "0xe4000053", + "mask": "0xfff0707f" + }, + "fmv_x_w": { + "encoding": "111000000000-----000-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_f"], + "match": "0xe0000053", + "mask": "0xfff0707f" + }, + "fmvh_x_d": { + "encoding": "111000100001-----000-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv32_d", "rv32_zfa"], + "match": "0xe2100053", + "mask": "0xfff0707f" + }, + "fmvh_x_q": { + "encoding": "111001100001-----000-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_q", "rv64_zfa"], + "match": "0xe6100053", + "mask": "0xfff0707f" + }, + "fmvp_d_x": { + "encoding": "1011001----------000-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv32_d", "rv32_zfa"], + "match": "0xb2000053", + "mask": "0xfe00707f" + }, + "fmvp_q_x": { + "encoding": "1011011----------000-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_q", "rv64_zfa"], + "match": "0xb6000053", + "mask": "0xfe00707f" + }, + "fnmadd_d": { + "encoding": "-----01------------------1001111", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_d"], + "match": "0x200004f", + "mask": "0x600007f" + }, + "fnmadd_h": { + "encoding": "-----10------------------1001111", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_zfh"], + "match": "0x400004f", + "mask": "0x600007f" + }, + "fnmadd_q": { + "encoding": "-----11------------------1001111", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_q"], + "match": "0x600004f", + "mask": "0x600007f" + }, + "fnmadd_s": { + "encoding": "-----00------------------1001111", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_f"], + "match": "0x4f", + "mask": "0x600007f" + }, + "fnmsub_d": { + "encoding": "-----01------------------1001011", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_d"], + "match": "0x200004b", + "mask": "0x600007f" + }, + "fnmsub_h": { + "encoding": "-----10------------------1001011", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_zfh"], + "match": "0x400004b", + "mask": "0x600007f" + }, + "fnmsub_q": { + "encoding": "-----11------------------1001011", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_q"], + "match": "0x600004b", + "mask": "0x600007f" + }, + "fnmsub_s": { + "encoding": "-----00------------------1001011", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_f"], + "match": "0x4b", + "mask": "0x600007f" + }, + "fround_d": { + "encoding": "010000100100-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_d", "rv_zfa"], + "match": "0x42400053", + "mask": "0xfff0007f" + }, + "fround_h": { + "encoding": "010001000100-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_zfa", "rv_zfh"], + "match": "0x44400053", + "mask": "0xfff0007f" + }, + "fround_q": { + "encoding": "010001100100-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_q", "rv_zfa"], + "match": "0x46400053", + "mask": "0xfff0007f" + }, + "fround_s": { + "encoding": "010000000100-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_zfa"], + "match": "0x40400053", + "mask": "0xfff0007f" + }, + "froundnx_d": { + "encoding": "010000100101-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_d", "rv_zfa"], + "match": "0x42500053", + "mask": "0xfff0007f" + }, + "froundnx_h": { + "encoding": "010001000101-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_zfa", "rv_zfh"], + "match": "0x44500053", + "mask": "0xfff0007f" + }, + "froundnx_q": { + "encoding": "010001100101-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_q", "rv_zfa"], + "match": "0x46500053", + "mask": "0xfff0007f" + }, + "froundnx_s": { + "encoding": "010000000101-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_zfa"], + "match": "0x40500053", + "mask": "0xfff0007f" + }, + "fsd": { + "encoding": "-----------------011-----0100111", + "variable_fields": ["rs1", "rs2", "imm12hi", "imm12lo"], + "extension": ["rv_d"], + "match": "0x3027", + "mask": "0x707f" + }, + "fsgnj_d": { + "encoding": "0010001----------000-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_d"], + "match": "0x22000053", + "mask": "0xfe00707f" + }, + "fsgnj_h": { + "encoding": "0010010----------000-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfh"], + "match": "0x24000053", + "mask": "0xfe00707f" + }, + "fsgnj_q": { + "encoding": "0010011----------000-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_q"], + "match": "0x26000053", + "mask": "0xfe00707f" + }, + "fsgnj_s": { + "encoding": "0010000----------000-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_f"], + "match": "0x20000053", + "mask": "0xfe00707f" + }, + "fsgnjn_d": { + "encoding": "0010001----------001-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_d"], + "match": "0x22001053", + "mask": "0xfe00707f" + }, + "fsgnjn_h": { + "encoding": "0010010----------001-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfh"], + "match": "0x24001053", + "mask": "0xfe00707f" + }, + "fsgnjn_q": { + "encoding": "0010011----------001-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_q"], + "match": "0x26001053", + "mask": "0xfe00707f" + }, + "fsgnjn_s": { + "encoding": "0010000----------001-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_f"], + "match": "0x20001053", + "mask": "0xfe00707f" + }, + "fsgnjx_d": { + "encoding": "0010001----------010-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_d"], + "match": "0x22002053", + "mask": "0xfe00707f" + }, + "fsgnjx_h": { + "encoding": "0010010----------010-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfh"], + "match": "0x24002053", + "mask": "0xfe00707f" + }, + "fsgnjx_q": { + "encoding": "0010011----------010-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_q"], + "match": "0x26002053", + "mask": "0xfe00707f" + }, + "fsgnjx_s": { + "encoding": "0010000----------010-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_f"], + "match": "0x20002053", + "mask": "0xfe00707f" + }, + "fsh": { + "encoding": "-----------------001-----0100111", + "variable_fields": ["rs2", "rs1", "imm12hi", "imm12lo"], + "extension": ["rv_zfh", "rv_zfhmin", "rv_zhinx"], + "match": "0x1027", + "mask": "0x707f" + }, + "fsq": { + "encoding": "-----------------100-----0100111", + "variable_fields": ["rs1", "rs2", "imm12hi", "imm12lo"], + "extension": ["rv_q"], + "match": "0x4027", + "mask": "0x707f" + }, + "fsqrt_d": { + "encoding": "010110100000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_d"], + "match": "0x5a000053", + "mask": "0xfff0007f" + }, + "fsqrt_h": { + "encoding": "010111000000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_zfh"], + "match": "0x5c000053", + "mask": "0xfff0007f" + }, + "fsqrt_q": { + "encoding": "010111100000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_q"], + "match": "0x5e000053", + "mask": "0xfff0007f" + }, + "fsqrt_s": { + "encoding": "010110000000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_f"], + "match": "0x58000053", + "mask": "0xfff0007f" + }, + "fsub_d": { + "encoding": "0000101------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_d"], + "match": "0xa000053", + "mask": "0xfe00007f" + }, + "fsub_h": { + "encoding": "0000110------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_zfh"], + "match": "0xc000053", + "mask": "0xfe00007f" + }, + "fsub_q": { + "encoding": "0000111------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_q"], + "match": "0xe000053", + "mask": "0xfe00007f" + }, + "fsub_s": { + "encoding": "0000100------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_f"], + "match": "0x8000053", + "mask": "0xfe00007f" + }, + "fsw": { + "encoding": "-----------------010-----0100111", + "variable_fields": ["rs1", "rs2", "imm12hi", "imm12lo"], + "extension": ["rv_f"], + "match": "0x2027", + "mask": "0x707f" + }, + "hfence_gvma": { + "encoding": "0110001----------000000001110011", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv_h"], + "match": "0x62000073", + "mask": "0xfe007fff" + }, + "hfence_vvma": { + "encoding": "0010001----------000000001110011", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv_h"], + "match": "0x22000073", + "mask": "0xfe007fff" + }, + "hinval_gvma": { + "encoding": "0110011----------000000001110011", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv_svinval", "rv_h"], + "match": "0x66000073", + "mask": "0xfe007fff" + }, + "hinval_vvma": { + "encoding": "0010011----------000000001110011", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv_svinval", "rv_h"], + "match": "0x26000073", + "mask": "0xfe007fff" + }, + "hlv_b": { + "encoding": "011000000000-----100-----1110011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_h"], + "match": "0x60004073", + "mask": "0xfff0707f" + }, + "hlv_bu": { + "encoding": "011000000001-----100-----1110011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_h"], + "match": "0x60104073", + "mask": "0xfff0707f" + }, + "hlv_d": { + "encoding": "011011000000-----100-----1110011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_h"], + "match": "0x6c004073", + "mask": "0xfff0707f" + }, + "hlv_h": { + "encoding": "011001000000-----100-----1110011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_h"], + "match": "0x64004073", + "mask": "0xfff0707f" + }, + "hlv_hu": { + "encoding": "011001000001-----100-----1110011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_h"], + "match": "0x64104073", + "mask": "0xfff0707f" + }, + "hlv_w": { + "encoding": "011010000000-----100-----1110011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_h"], + "match": "0x68004073", + "mask": "0xfff0707f" + }, + "hlv_wu": { + "encoding": "011010000001-----100-----1110011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_h"], + "match": "0x68104073", + "mask": "0xfff0707f" + }, + "hlvx_hu": { + "encoding": "011001000011-----100-----1110011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_h"], + "match": "0x64304073", + "mask": "0xfff0707f" + }, + "hlvx_wu": { + "encoding": "011010000011-----100-----1110011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_h"], + "match": "0x68304073", + "mask": "0xfff0707f" + }, + "hsv_b": { + "encoding": "0110001----------100000001110011", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv_h"], + "match": "0x62004073", + "mask": "0xfe007fff" + }, + "hsv_d": { + "encoding": "0110111----------100000001110011", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv64_h"], + "match": "0x6e004073", + "mask": "0xfe007fff" + }, + "hsv_h": { + "encoding": "0110011----------100000001110011", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv_h"], + "match": "0x66004073", + "mask": "0xfe007fff" + }, + "hsv_w": { + "encoding": "0110101----------100000001110011", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv_h"], + "match": "0x6a004073", + "mask": "0xfe007fff" + }, + "jal": { + "encoding": "-------------------------1101111", + "variable_fields": ["rd"], + "extension": ["rv_i"], + "match": "0x6f", + "mask": "0x7f" + }, + "jalr": { + "encoding": "-----------------000-----1100111", + "variable_fields": ["rd", "rs1", "imm12"], + "extension": ["rv_i"], + "match": "0x67", + "mask": "0x707f" + }, + "lb": { + "encoding": "-----------------000-----0000011", + "variable_fields": ["rd", "rs1", "imm12"], + "extension": ["rv_i"], + "match": "0x3", + "mask": "0x707f" + }, + "lb_aq": { + "encoding": "001101-00000-----000-----0101111", + "variable_fields": ["rd", "rs1", "rl"], + "extension": ["rv_zalasr"], + "match": "0x3400002f", + "mask": "0xfdf0707f" + }, + "lbu": { + "encoding": "-----------------100-----0000011", + "variable_fields": ["rd", "rs1", "imm12"], + "extension": ["rv_i"], + "match": "0x4003", + "mask": "0x707f" + }, + "ld": { + "encoding": "-----------------011-----0000011", + "variable_fields": ["rd", "rs1", "imm12"], + "extension": ["rv64_i"], + "match": "0x3003", + "mask": "0x707f" + }, + "ld_aq": { + "encoding": "001101-00000-----011-----0101111", + "variable_fields": ["rd", "rs1", "rl"], + "extension": ["rv_zalasr"], + "match": "0x3400302f", + "mask": "0xfdf0707f" + }, + "lh": { + "encoding": "-----------------001-----0000011", + "variable_fields": ["rd", "rs1", "imm12"], + "extension": ["rv_i"], + "match": "0x1003", + "mask": "0x707f" + }, + "lh_aq": { + "encoding": "001101-00000-----001-----0101111", + "variable_fields": ["rd", "rs1", "rl"], + "extension": ["rv_zalasr"], + "match": "0x3400102f", + "mask": "0xfdf0707f" + }, + "lhu": { + "encoding": "-----------------101-----0000011", + "variable_fields": ["rd", "rs1", "imm12"], + "extension": ["rv_i"], + "match": "0x5003", + "mask": "0x707f" + }, + "lpad": { + "encoding": "--------------------000000010111", + "variable_fields": ["imm20"], + "extension": ["rv_zicfilp"], + "match": "0x17", + "mask": "0xfff" + }, + "lr_d": { + "encoding": "00010--00000-----011-----0101111", + "variable_fields": ["rd", "rs1", "rl", "aq"], + "extension": ["rv64_a", "rv64_zalrsc"], + "match": "0x1000302f", + "mask": "0xf9f0707f" + }, + "lr_w": { + "encoding": "00010--00000-----010-----0101111", + "variable_fields": ["rd", "rs1", "rl", "aq"], + "extension": ["rv_a", "rv_zalrsc"], + "match": "0x1000202f", + "mask": "0xf9f0707f" + }, + "lui": { + "encoding": "-------------------------0110111", + "variable_fields": ["rd", "imm20"], + "extension": ["rv_i"], + "match": "0x37", + "mask": "0x7f" + }, + "lw": { + "encoding": "-----------------010-----0000011", + "variable_fields": ["rd", "rs1", "imm12"], + "extension": ["rv_i"], + "match": "0x2003", + "mask": "0x707f" + }, + "lw_aq": { + "encoding": "001101-00000-----010-----0101111", + "variable_fields": ["rd", "rs1", "rl"], + "extension": ["rv_zalasr"], + "match": "0x3400202f", + "mask": "0xfdf0707f" + }, + "lwu": { + "encoding": "-----------------110-----0000011", + "variable_fields": ["rd", "rs1", "imm12"], + "extension": ["rv64_i"], + "match": "0x6003", + "mask": "0x707f" + }, + "max": { + "encoding": "0000101----------110-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbb"], + "match": "0xa006033", + "mask": "0xfe00707f" + }, + "maxu": { + "encoding": "0000101----------111-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbb"], + "match": "0xa007033", + "mask": "0xfe00707f" + }, + "min": { + "encoding": "0000101----------100-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbb"], + "match": "0xa004033", + "mask": "0xfe00707f" + }, + "minu": { + "encoding": "0000101----------101-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbb"], + "match": "0xa005033", + "mask": "0xfe00707f" + }, + "mnret": { + "encoding": "01110000001000000000000001110011", + "variable_fields": [], + "extension": ["rv_smrnmi"], + "match": "0x70200073", + "mask": "0xffffffff" + }, + "mop_r_n": { + "encoding": "1-00--0111-------100-----1110011", + "variable_fields": [ + "rd", + "rs1", + "mop_r_t_21_20", + "mop_r_t_27_26", + "mop_r_t_30" + ], + "extension": ["rv_zimop"], + "match": "0x81c04073", + "mask": "0xb3c0707f" + }, + "mop_rr_n": { + "encoding": "1-00--1----------100-----1110011", + "variable_fields": ["rd", "rs1", "rs2", "mop_rr_t_27_26", "mop_rr_t_30"], + "extension": ["rv_zimop"], + "match": "0x82004073", + "mask": "0xb200707f" + }, + "mret": { + "encoding": "00110000001000000000000001110011", + "variable_fields": [], + "extension": ["rv_sm"], + "match": "0x30200073", + "mask": "0xffffffff" + }, + "mul": { + "encoding": "0000001----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_m", "rv_zmmul"], + "match": "0x2000033", + "mask": "0xfe00707f" + }, + "mulh": { + "encoding": "0000001----------001-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_m", "rv_zmmul"], + "match": "0x2001033", + "mask": "0xfe00707f" + }, + "mulhsu": { + "encoding": "0000001----------010-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_m", "rv_zmmul"], + "match": "0x2002033", + "mask": "0xfe00707f" + }, + "mulhu": { + "encoding": "0000001----------011-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_m", "rv_zmmul"], + "match": "0x2003033", + "mask": "0xfe00707f" + }, + "mulw": { + "encoding": "0000001----------000-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_m", "rv64_zmmul"], + "match": "0x200003b", + "mask": "0xfe00707f" + }, + "or": { + "encoding": "0000000----------110-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_i"], + "match": "0x6033", + "mask": "0xfe00707f" + }, + "orc_b": { + "encoding": "001010000111-----101-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_b", "rv_zbb"], + "match": "0x28705013", + "mask": "0xfff0707f" + }, + "ori": { + "encoding": "-----------------110-----0010011", + "variable_fields": ["rd", "rs1", "imm12"], + "extension": ["rv_i"], + "match": "0x6013", + "mask": "0x707f" + }, + "orn": { + "encoding": "0100000----------110-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbb", "rv_zbkb", "rv_zk", "rv_zkn", "rv_zks"], + "match": "0x40006033", + "mask": "0xfe00707f" + }, + "pack": { + "encoding": "0000100----------100-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zbkb", "rv_zk", "rv_zkn", "rv_zks"], + "match": "0x8004033", + "mask": "0xfe00707f" + }, + "packh": { + "encoding": "0000100----------111-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zbkb", "rv_zk", "rv_zkn", "rv_zks"], + "match": "0x8007033", + "mask": "0xfe00707f" + }, + "packw": { + "encoding": "0000100----------100-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_zbkb", "rv64_zk", "rv64_zkn", "rv64_zks"], + "match": "0x800403b", + "mask": "0xfe00707f" + }, + "rem": { + "encoding": "0000001----------110-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_m"], + "match": "0x2006033", + "mask": "0xfe00707f" + }, + "remu": { + "encoding": "0000001----------111-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_m"], + "match": "0x2007033", + "mask": "0xfe00707f" + }, + "remuw": { + "encoding": "0000001----------111-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_m"], + "match": "0x200703b", + "mask": "0xfe00707f" + }, + "remw": { + "encoding": "0000001----------110-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_m"], + "match": "0x200603b", + "mask": "0xfe00707f" + }, + "rev8": { + "encoding": "011010111000-----101-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_b", "rv64_zbb", "rv64_zbkb"], + "match": "0x6b805013", + "mask": "0xfff0707f" + }, + "rol": { + "encoding": "0110000----------001-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbb", "rv_zbkb", "rv_zk", "rv_zkn", "rv_zks"], + "match": "0x60001033", + "mask": "0xfe00707f" + }, + "rolw": { + "encoding": "0110000----------001-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": [ + "rv64_b", + "rv64_zbb", + "rv64_zbkb", + "rv64_zk", + "rv64_zkn", + "rv64_zks" + ], + "match": "0x6000103b", + "mask": "0xfe00707f" + }, + "ror": { + "encoding": "0110000----------101-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbb", "rv_zbkb", "rv_zk", "rv_zkn", "rv_zks"], + "match": "0x60005033", + "mask": "0xfe00707f" + }, + "rori": { + "encoding": "011000-----------101-----0010011", + "variable_fields": ["rd", "rs1", "shamtd"], + "extension": [ + "rv64_b", + "rv64_zbb", + "rv64_zbkb", + "rv64_zk", + "rv64_zkn", + "rv64_zks" + ], + "match": "0x60005013", + "mask": "0xfc00707f" + }, + "roriw": { + "encoding": "0110000----------101-----0011011", + "variable_fields": ["rd", "rs1", "shamtw"], + "extension": [ + "rv64_b", + "rv64_zbb", + "rv64_zbkb", + "rv64_zk", + "rv64_zkn", + "rv64_zks" + ], + "match": "0x6000501b", + "mask": "0xfe00707f" + }, + "rorw": { + "encoding": "0110000----------101-----0111011", + "variable_fields": ["rd", "rs1"], + "extension": [ + "rv64_b", + "rv64_zbb", + "rv64_zbkb", + "rv64_zk", + "rv64_zkn", + "rv64_zks" + ], + "match": "0x6000503b", + "mask": "0xfe00707f" + }, + "sb": { + "encoding": "-----------------000-----0100011", + "variable_fields": ["rs1", "rs2", "imm12hi", "imm12lo"], + "extension": ["rv_i"], + "match": "0x23", + "mask": "0x707f" + }, + "sb_rl": { + "encoding": "00111-1----------000000000101111", + "variable_fields": ["rs1", "rs2", "aq"], + "extension": ["rv_zalasr"], + "match": "0x3a00002f", + "mask": "0xfa007fff" + }, + "sc_d": { + "encoding": "00011------------011-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv64_a", "rv64_zalrsc"], + "match": "0x1800302f", + "mask": "0xf800707f" + }, + "sc_w": { + "encoding": "00011------------010-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_a", "rv_zalrsc"], + "match": "0x1800202f", + "mask": "0xf800707f" + }, + "sctrclr": { + "encoding": "00010000010000000000000001110011", + "variable_fields": [], + "extension": ["rv_smdbltrp"], + "match": "0x10400073", + "mask": "0xffffffff" + }, + "sd": { + "encoding": "-----------------011-----0100011", + "variable_fields": ["rs2", "rs1", "imm12hi", "imm12lo"], + "extension": ["rv64_i"], + "match": "0x3023", + "mask": "0x707f" + }, + "sd_rl": { + "encoding": "00111-1----------011000000101111", + "variable_fields": ["rs1", "rs2", "aq"], + "extension": ["rv_zalasr"], + "match": "0x3a00302f", + "mask": "0xfa007fff" + }, + "sext_b": { + "encoding": "011000000100-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_b", "rv_zbb"], + "match": "0x60401013", + "mask": "0xfff0707f" + }, + "sext_h": { + "encoding": "011000000101-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_b", "rv_zbb"], + "match": "0x60501013", + "mask": "0xfff0707f" + }, + "sfence_inval_ir": { + "encoding": "00011000000100000000000001110011", + "variable_fields": [], + "extension": ["rv_svinval"], + "match": "0x18100073", + "mask": "0xffffffff" + }, + "sfence_vma": { + "encoding": "0001001----------000000001110011", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv_s"], + "match": "0x12000073", + "mask": "0xfe007fff" + }, + "sfence_w_inval": { + "encoding": "00011000000000000000000001110011", + "variable_fields": [], + "extension": ["rv_svinval"], + "match": "0x18000073", + "mask": "0xffffffff" + }, + "sh": { + "encoding": "-----------------001-----0100011", + "variable_fields": ["rs1", "rs2", "imm12hi", "imm12lo"], + "extension": ["rv_i"], + "match": "0x1023", + "mask": "0x707f" + }, + "sh1add": { + "encoding": "0010000----------010-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zba"], + "match": "0x20002033", + "mask": "0xfe00707f" + }, + "sh1add_uw": { + "encoding": "0010000----------010-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_b", "rv64_zba"], + "match": "0x2000203b", + "mask": "0xfe00707f" + }, + "sh2add": { + "encoding": "0010000----------100-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zba"], + "match": "0x20004033", + "mask": "0xfe00707f" + }, + "sh2add_uw": { + "encoding": "0010000----------100-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_b", "rv64_zba"], + "match": "0x2000403b", + "mask": "0xfe00707f" + }, + "sh3add": { + "encoding": "0010000----------110-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zba"], + "match": "0x20006033", + "mask": "0xfe00707f" + }, + "sh3add_uw": { + "encoding": "0010000----------110-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_b", "rv64_zba"], + "match": "0x2000603b", + "mask": "0xfe00707f" + }, + "sh_rl": { + "encoding": "00111-1----------001000000101111", + "variable_fields": ["rs1", "rs2", "aq"], + "extension": ["rv_zalasr"], + "match": "0x3a00102f", + "mask": "0xfa007fff" + }, + "sha256sig0": { + "encoding": "000100000010-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_zk", "rv_zkn", "rv_zknh"], + "match": "0x10201013", + "mask": "0xfff0707f" + }, + "sha256sig1": { + "encoding": "000100000011-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_zk", "rv_zkn", "rv_zknh"], + "match": "0x10301013", + "mask": "0xfff0707f" + }, + "sha256sum0": { + "encoding": "000100000000-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_zk", "rv_zkn", "rv_zknh"], + "match": "0x10001013", + "mask": "0xfff0707f" + }, + "sha256sum1": { + "encoding": "000100000001-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_zk", "rv_zkn", "rv_zknh"], + "match": "0x10101013", + "mask": "0xfff0707f" + }, + "sha512sig0": { + "encoding": "000100000110-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_zk", "rv64_zkn", "rv64_zknh"], + "match": "0x10601013", + "mask": "0xfff0707f" + }, + "sha512sig0h": { + "encoding": "0101110----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv32_zk", "rv32_zkn", "rv32_zknh"], + "match": "0x5c000033", + "mask": "0xfe00707f" + }, + "sha512sig0l": { + "encoding": "0101010----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv32_zk", "rv32_zkn", "rv32_zknh"], + "match": "0x54000033", + "mask": "0xfe00707f" + }, + "sha512sig1": { + "encoding": "000100000111-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_zk", "rv64_zkn", "rv64_zknh"], + "match": "0x10701013", + "mask": "0xfff0707f" + }, + "sha512sig1h": { + "encoding": "0101111----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv32_zk", "rv32_zkn", "rv32_zknh"], + "match": "0x5e000033", + "mask": "0xfe00707f" + }, + "sha512sig1l": { + "encoding": "0101011----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv32_zk", "rv32_zkn", "rv32_zknh"], + "match": "0x56000033", + "mask": "0xfe00707f" + }, + "sha512sum0": { + "encoding": "000100000100-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_zk", "rv64_zkn", "rv64_zknh"], + "match": "0x10401013", + "mask": "0xfff0707f" + }, + "sha512sum0r": { + "encoding": "0101000----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv32_zk", "rv32_zkn", "rv32_zknh"], + "match": "0x50000033", + "mask": "0xfe00707f" + }, + "sha512sum1": { + "encoding": "000100000101-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_zk", "rv64_zkn", "rv64_zknh"], + "match": "0x10501013", + "mask": "0xfff0707f" + }, + "sha512sum1r": { + "encoding": "0101001----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv32_zk", "rv32_zkn", "rv32_zknh"], + "match": "0x52000033", + "mask": "0xfe00707f" + }, + "sinval_vma": { + "encoding": "0001011----------000000001110011", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv_svinval"], + "match": "0x16000073", + "mask": "0xfe007fff" + }, + "sll": { + "encoding": "0000000----------001-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_i"], + "match": "0x1033", + "mask": "0xfe00707f" + }, + "slli": { + "encoding": "000000-----------001-----0010011", + "variable_fields": ["rd", "rs1", "shamtd"], + "extension": ["rv64_i"], + "match": "0x1013", + "mask": "0xfc00707f" + }, + "slli_uw": { + "encoding": "000010-----------001-----0011011", + "variable_fields": ["rd", "rs1", "shamtd"], + "extension": ["rv64_b", "rv64_zba"], + "match": "0x800101b", + "mask": "0xfc00707f" + }, + "slliw": { + "encoding": "0000000----------001-----0011011", + "variable_fields": ["rd", "rs1", "shamtw"], + "extension": ["rv64_i"], + "match": "0x101b", + "mask": "0xfe00707f" + }, + "sllw": { + "encoding": "0000000----------001-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_i"], + "match": "0x103b", + "mask": "0xfe00707f" + }, + "slt": { + "encoding": "0000000----------010-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_i"], + "match": "0x2033", + "mask": "0xfe00707f" + }, + "slti": { + "encoding": "-----------------010-----0010011", + "variable_fields": ["rd", "rs1", "imm12"], + "extension": ["rv_i"], + "match": "0x2013", + "mask": "0x707f" + }, + "sltiu": { + "encoding": "-----------------011-----0010011", + "variable_fields": ["rd", "rs1", "imm12"], + "extension": ["rv_i"], + "match": "0x3013", + "mask": "0x707f" + }, + "sltu": { + "encoding": "0000000----------011-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_i"], + "match": "0x3033", + "mask": "0xfe00707f" + }, + "sm3p0": { + "encoding": "000100001000-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_zks", "rv_zksh"], + "match": "0x10801013", + "mask": "0xfff0707f" + }, + "sm3p1": { + "encoding": "000100001001-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_zks", "rv_zksh"], + "match": "0x10901013", + "mask": "0xfff0707f" + }, + "sm4ed": { + "encoding": "--11000----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2", "bs"], + "extension": ["rv_zks", "rv_zksed"], + "match": "0x30000033", + "mask": "0x3e00707f" + }, + "sm4ks": { + "encoding": "--11010----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2", "bs"], + "extension": ["rv_zks", "rv_zksed"], + "match": "0x34000033", + "mask": "0x3e00707f" + }, + "sra": { + "encoding": "0100000----------101-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_i"], + "match": "0x40005033", + "mask": "0xfe00707f" + }, + "srai": { + "encoding": "010000-----------101-----0010011", + "variable_fields": ["rd", "rs1", "shamtd"], + "extension": ["rv64_i"], + "match": "0x40005013", + "mask": "0xfc00707f" + }, + "sraiw": { + "encoding": "0100000----------101-----0011011", + "variable_fields": ["rd", "rs1", "shamtw"], + "extension": ["rv64_i"], + "match": "0x4000501b", + "mask": "0xfe00707f" + }, + "sraw": { + "encoding": "0100000----------101-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_i"], + "match": "0x4000503b", + "mask": "0xfe00707f" + }, + "sret": { + "encoding": "00010000001000000000000001110011", + "variable_fields": [], + "extension": ["rv_s"], + "match": "0x10200073", + "mask": "0xffffffff" + }, + "srl": { + "encoding": "0000000----------101-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_i"], + "match": "0x5033", + "mask": "0xfe00707f" + }, + "srli": { + "encoding": "000000-----------101-----0010011", + "variable_fields": ["rd", "rs1", "shamtd"], + "extension": ["rv64_i"], + "match": "0x5013", + "mask": "0xfc00707f" + }, + "srliw": { + "encoding": "0000000----------101-----0011011", + "variable_fields": ["rd", "rs1", "shamtw"], + "extension": ["rv64_i"], + "match": "0x501b", + "mask": "0xfe00707f" + }, + "srlw": { + "encoding": "0000000----------101-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_i"], + "match": "0x503b", + "mask": "0xfe00707f" + }, + "ssamoswap_d": { + "encoding": "01001------------011-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zicfiss"], + "match": "0x4800302f", + "mask": "0xf800707f" + }, + "ssamoswap_w": { + "encoding": "01001------------010-----0101111", + "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], + "extension": ["rv_zicfiss"], + "match": "0x4800202f", + "mask": "0xf800707f" + }, + "sspopchk_x1": { + "encoding": "11001101110000001100000001110011", + "variable_fields": [], + "extension": ["rv_zicfiss"], + "match": "0xcdc0c073", + "mask": "0xffffffff" + }, + "sspopchk_x5": { + "encoding": "11001101110000101100000001110011", + "variable_fields": [], + "extension": ["rv_zicfiss"], + "match": "0xcdc2c073", + "mask": "0xffffffff" + }, + "sspush_x1": { + "encoding": "11001110000100000100000001110011", + "variable_fields": [], + "extension": ["rv_zicfiss"], + "match": "0xce104073", + "mask": "0xffffffff" + }, + "sspush_x5": { + "encoding": "11001110010100000100000001110011", + "variable_fields": [], + "extension": ["rv_zicfiss"], + "match": "0xce504073", + "mask": "0xffffffff" + }, + "ssrdp": { + "encoding": "11001101110000000100-----1110011", + "variable_fields": ["rd"], + "extension": ["rv_zicfiss"], + "match": "0xcdc04073", + "mask": "0xfffff07f" + }, + "sub": { + "encoding": "0100000----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_i"], + "match": "0x40000033", + "mask": "0xfe00707f" + }, + "subw": { + "encoding": "0100000----------000-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_i"], + "match": "0x4000003b", + "mask": "0xfe00707f" + }, + "sw": { + "encoding": "-----------------010-----0100011", + "variable_fields": ["rs1", "rs2", "imm12hi", "imm12lo"], + "extension": ["rv_i"], + "match": "0x2023", + "mask": "0x707f" + }, + "sw_rl": { + "encoding": "00111-1----------010000000101111", + "variable_fields": ["rs1", "rs2", "aq"], + "extension": ["rv_zalasr"], + "match": "0x3a00202f", + "mask": "0xfa007fff" + }, + "unzip": { + "encoding": "000010001111-----101-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv32_zbkb"], + "match": "0x8f05013", + "mask": "0xfff0707f" + }, + "vaadd_vv": { + "encoding": "001001-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x24002057", + "mask": "0xfc00707f" + }, + "vaadd_vx": { + "encoding": "001001-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x24006057", + "mask": "0xfc00707f" + }, + "vaaddu_vv": { + "encoding": "001000-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x20002057", + "mask": "0xfc00707f" + }, + "vaaddu_vx": { + "encoding": "001000-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x20006057", + "mask": "0xfc00707f" + }, + "vadc_vim": { + "encoding": "0100000----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2"], + "extension": ["rv_v"], + "match": "0x40003057", + "mask": "0xfe00707f" + }, + "vadc_vvm": { + "encoding": "0100000----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x40000057", + "mask": "0xfe00707f" + }, + "vadc_vxm": { + "encoding": "0100000----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2"], + "extension": ["rv_v"], + "match": "0x40004057", + "mask": "0xfe00707f" + }, + "vadd_vi": { + "encoding": "000000-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x3057", + "mask": "0xfc00707f" + }, + "vadd_vv": { + "encoding": "000000-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x57", + "mask": "0xfc00707f" + }, + "vadd_vx": { + "encoding": "000000-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4057", + "mask": "0xfc00707f" + }, + "vaesdf_vs": { + "encoding": "1010011-----00001010-----1110111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_zvkn", "rv_zvkned"], + "match": "0xa600a077", + "mask": "0xfe0ff07f" + }, + "vaesdf_vv": { + "encoding": "1010001-----00001010-----1110111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_zvkn", "rv_zvkned"], + "match": "0xa200a077", + "mask": "0xfe0ff07f" + }, + "vaesdm_vs": { + "encoding": "1010011-----00000010-----1110111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_zvkn", "rv_zvkned"], + "match": "0xa6002077", + "mask": "0xfe0ff07f" + }, + "vaesdm_vv": { + "encoding": "1010001-----00000010-----1110111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_zvkn", "rv_zvkned"], + "match": "0xa2002077", + "mask": "0xfe0ff07f" + }, + "vaesef_vs": { + "encoding": "1010011-----00011010-----1110111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_zvkn", "rv_zvkned"], + "match": "0xa601a077", + "mask": "0xfe0ff07f" + }, + "vaesef_vv": { + "encoding": "1010001-----00011010-----1110111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_zvkn", "rv_zvkned"], + "match": "0xa201a077", + "mask": "0xfe0ff07f" + }, + "vaesem_vs": { + "encoding": "1010011-----00010010-----1110111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_zvkn", "rv_zvkned"], + "match": "0xa6012077", + "mask": "0xfe0ff07f" + }, + "vaesem_vv": { + "encoding": "1010001-----00010010-----1110111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_zvkn", "rv_zvkned"], + "match": "0xa2012077", + "mask": "0xfe0ff07f" + }, + "vaeskf1_vi": { + "encoding": "1000101----------010-----1110111", + "variable_fields": ["vd", "zimm5", "vs2"], + "extension": ["rv_zvkn", "rv_zvkned"], + "match": "0x8a002077", + "mask": "0xfe00707f" + }, + "vaeskf2_vi": { + "encoding": "1010101----------010-----1110111", + "variable_fields": ["vd", "zimm5", "vs2"], + "extension": ["rv_zvkn", "rv_zvkned"], + "match": "0xaa002077", + "mask": "0xfe00707f" + }, + "vaesz_vs": { + "encoding": "1010011-----00111010-----1110111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_zvkn", "rv_zvkned"], + "match": "0xa603a077", + "mask": "0xfe0ff07f" + }, + "vand_vi": { + "encoding": "001001-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x24003057", + "mask": "0xfc00707f" + }, + "vand_vv": { + "encoding": "001001-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x24000057", + "mask": "0xfc00707f" + }, + "vand_vx": { + "encoding": "001001-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x24004057", + "mask": "0xfc00707f" + }, + "vandn_vv": { + "encoding": "000001-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0x4000057", + "mask": "0xfc00707f" + }, + "vandn_vx": { + "encoding": "000001-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0x4004057", + "mask": "0xfc00707f" + }, + "vasub_vv": { + "encoding": "001011-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x2c002057", + "mask": "0xfc00707f" + }, + "vasub_vx": { + "encoding": "001011-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x2c006057", + "mask": "0xfc00707f" + }, + "vasubu_vv": { + "encoding": "001010-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x28002057", + "mask": "0xfc00707f" + }, + "vasubu_vx": { + "encoding": "001010-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x28006057", + "mask": "0xfc00707f" + }, + "vbrev8_v": { + "encoding": "010010------01000010-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0x48042057", + "mask": "0xfc0ff07f" + }, + "vbrev_v": { + "encoding": "010010------01010010-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0x48052057", + "mask": "0xfc0ff07f" + }, + "vclmul_vv": { + "encoding": "001100-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_zvbc", "rv_zvkn", "rv_zvks"], + "match": "0x30002057", + "mask": "0xfc00707f" + }, + "vclmul_vx": { + "encoding": "001100-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_zvbc", "rv_zvkn", "rv_zvks"], + "match": "0x30006057", + "mask": "0xfc00707f" + }, + "vclmulh_vv": { + "encoding": "001101-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_zvbc", "rv_zvkn", "rv_zvks"], + "match": "0x34002057", + "mask": "0xfc00707f" + }, + "vclmulh_vx": { + "encoding": "001101-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_zvbc", "rv_zvkn", "rv_zvks"], + "match": "0x34006057", + "mask": "0xfc00707f" + }, + "vclz_v": { + "encoding": "010010------01100010-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0x48062057", + "mask": "0xfc0ff07f" + }, + "vcompress_vm": { + "encoding": "0101111----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x5e002057", + "mask": "0xfe00707f" + }, + "vcpop_m": { + "encoding": "010000------10000010-----1010111", + "variable_fields": ["rd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x40082057", + "mask": "0xfc0ff07f" + }, + "vcpop_v": { + "encoding": "010010------01110010-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0x48072057", + "mask": "0xfc0ff07f" + }, + "vctz_v": { + "encoding": "010010------01101010-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0x4806a057", + "mask": "0xfc0ff07f" + }, + "vdiv_vv": { + "encoding": "100001-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x84002057", + "mask": "0xfc00707f" + }, + "vdiv_vx": { + "encoding": "100001-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x84006057", + "mask": "0xfc00707f" + }, + "vdivu_vv": { + "encoding": "100000-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x80002057", + "mask": "0xfc00707f" + }, + "vdivu_vx": { + "encoding": "100000-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x80006057", + "mask": "0xfc00707f" + }, + "vfadd_vf": { + "encoding": "000000-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x5057", + "mask": "0xfc00707f" + }, + "vfadd_vv": { + "encoding": "000000-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x1057", + "mask": "0xfc00707f" + }, + "vfclass_v": { + "encoding": "010011------10000001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4c081057", + "mask": "0xfc0ff07f" + }, + "vfcvt_f_x_v": { + "encoding": "010010------00011001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x48019057", + "mask": "0xfc0ff07f" + }, + "vfcvt_f_xu_v": { + "encoding": "010010------00010001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x48011057", + "mask": "0xfc0ff07f" + }, + "vfcvt_rtz_x_f_v": { + "encoding": "010010------00111001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x48039057", + "mask": "0xfc0ff07f" + }, + "vfcvt_rtz_xu_f_v": { + "encoding": "010010------00110001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x48031057", + "mask": "0xfc0ff07f" + }, + "vfcvt_x_f_v": { + "encoding": "010010------00001001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x48009057", + "mask": "0xfc0ff07f" + }, + "vfcvt_xu_f_v": { + "encoding": "010010------00000001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x48001057", + "mask": "0xfc0ff07f" + }, + "vfdiv_vf": { + "encoding": "100000-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x80005057", + "mask": "0xfc00707f" + }, + "vfdiv_vv": { + "encoding": "100000-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x80001057", + "mask": "0xfc00707f" + }, + "vfirst_m": { + "encoding": "010000------10001010-----1010111", + "variable_fields": ["rd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4008a057", + "mask": "0xfc0ff07f" + }, + "vfmacc_vf": { + "encoding": "101100-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xb0005057", + "mask": "0xfc00707f" + }, + "vfmacc_vv": { + "encoding": "101100-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xb0001057", + "mask": "0xfc00707f" + }, + "vfmadd_vf": { + "encoding": "101000-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa0005057", + "mask": "0xfc00707f" + }, + "vfmadd_vv": { + "encoding": "101000-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa0001057", + "mask": "0xfc00707f" + }, + "vfmax_vf": { + "encoding": "000110-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x18005057", + "mask": "0xfc00707f" + }, + "vfmax_vv": { + "encoding": "000110-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x18001057", + "mask": "0xfc00707f" + }, + "vfmerge_vfm": { + "encoding": "0101110----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2"], + "extension": ["rv_v"], + "match": "0x5c005057", + "mask": "0xfe00707f" + }, + "vfmin_vf": { + "encoding": "000100-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x10005057", + "mask": "0xfc00707f" + }, + "vfmin_vv": { + "encoding": "000100-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x10001057", + "mask": "0xfc00707f" + }, + "vfmsac_vf": { + "encoding": "101110-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xb8005057", + "mask": "0xfc00707f" + }, + "vfmsac_vv": { + "encoding": "101110-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xb8001057", + "mask": "0xfc00707f" + }, + "vfmsub_vf": { + "encoding": "101010-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa8005057", + "mask": "0xfc00707f" + }, + "vfmsub_vv": { + "encoding": "101010-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa8001057", + "mask": "0xfc00707f" + }, + "vfmul_vf": { + "encoding": "100100-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x90005057", + "mask": "0xfc00707f" + }, + "vfmul_vv": { + "encoding": "100100-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x90001057", + "mask": "0xfc00707f" + }, + "vfmv_f_s": { + "encoding": "0100001-----00000001-----1010111", + "variable_fields": ["rd", "vs2"], + "extension": ["rv_v"], + "match": "0x42001057", + "mask": "0xfe0ff07f" + }, + "vfmv_s_f": { + "encoding": "010000100000-----101-----1010111", + "variable_fields": ["vd", "rs1"], + "extension": ["rv_v"], + "match": "0x42005057", + "mask": "0xfff0707f" + }, + "vfmv_v_f": { + "encoding": "010111100000-----101-----1010111", + "variable_fields": ["vd", "rs1"], + "extension": ["rv_v"], + "match": "0x5e005057", + "mask": "0xfff0707f" + }, + "vfncvt_f_f_w": { + "encoding": "010010------10100001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x480a1057", + "mask": "0xfc0ff07f" + }, + "vfncvt_f_x_w": { + "encoding": "010010------10011001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x48099057", + "mask": "0xfc0ff07f" + }, + "vfncvt_f_xu_w": { + "encoding": "010010------10010001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x48091057", + "mask": "0xfc0ff07f" + }, + "vfncvt_rod_f_f_w": { + "encoding": "010010------10101001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x480a9057", + "mask": "0xfc0ff07f" + }, + "vfncvt_rtz_x_f_w": { + "encoding": "010010------10111001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x480b9057", + "mask": "0xfc0ff07f" + }, + "vfncvt_rtz_xu_f_w": { + "encoding": "010010------10110001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x480b1057", + "mask": "0xfc0ff07f" + }, + "vfncvt_x_f_w": { + "encoding": "010010------10001001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x48089057", + "mask": "0xfc0ff07f" + }, + "vfncvt_xu_f_w": { + "encoding": "010010------10000001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x48081057", + "mask": "0xfc0ff07f" + }, + "vfncvtbf16_f_f_w": { + "encoding": "010010------11101001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_zvfbfmin"], + "match": "0x480e9057", + "mask": "0xfc0ff07f" + }, + "vfnmacc_vf": { + "encoding": "101101-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xb4005057", + "mask": "0xfc00707f" + }, + "vfnmacc_vv": { + "encoding": "101101-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xb4001057", + "mask": "0xfc00707f" + }, + "vfnmadd_vf": { + "encoding": "101001-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa4005057", + "mask": "0xfc00707f" + }, + "vfnmadd_vv": { + "encoding": "101001-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa4001057", + "mask": "0xfc00707f" + }, + "vfnmsac_vf": { + "encoding": "101111-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xbc005057", + "mask": "0xfc00707f" + }, + "vfnmsac_vv": { + "encoding": "101111-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xbc001057", + "mask": "0xfc00707f" + }, + "vfnmsub_vf": { + "encoding": "101011-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xac005057", + "mask": "0xfc00707f" + }, + "vfnmsub_vv": { + "encoding": "101011-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xac001057", + "mask": "0xfc00707f" + }, + "vfrdiv_vf": { + "encoding": "100001-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x84005057", + "mask": "0xfc00707f" + }, + "vfrec7_v": { + "encoding": "010011------00101001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4c029057", + "mask": "0xfc0ff07f" + }, + "vfredmax_vs": { + "encoding": "000111-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x1c001057", + "mask": "0xfc00707f" + }, + "vfredmin_vs": { + "encoding": "000101-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x14001057", + "mask": "0xfc00707f" + }, + "vfredosum_vs": { + "encoding": "000011-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc001057", + "mask": "0xfc00707f" + }, + "vfredusum_vs": { + "encoding": "000001-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4001057", + "mask": "0xfc00707f" + }, + "vfrsqrt7_v": { + "encoding": "010011------00100001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4c021057", + "mask": "0xfc0ff07f" + }, + "vfrsub_vf": { + "encoding": "100111-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x9c005057", + "mask": "0xfc00707f" + }, + "vfsgnj_vf": { + "encoding": "001000-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x20005057", + "mask": "0xfc00707f" + }, + "vfsgnj_vv": { + "encoding": "001000-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x20001057", + "mask": "0xfc00707f" + }, + "vfsgnjn_vf": { + "encoding": "001001-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x24005057", + "mask": "0xfc00707f" + }, + "vfsgnjn_vv": { + "encoding": "001001-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x24001057", + "mask": "0xfc00707f" + }, + "vfsgnjx_vf": { + "encoding": "001010-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x28005057", + "mask": "0xfc00707f" + }, + "vfsgnjx_vv": { + "encoding": "001010-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x28001057", + "mask": "0xfc00707f" + }, + "vfslide1down_vf": { + "encoding": "001111-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x3c005057", + "mask": "0xfc00707f" + }, + "vfslide1up_vf": { + "encoding": "001110-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x38005057", + "mask": "0xfc00707f" + }, + "vfsqrt_v": { + "encoding": "010011------00000001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4c001057", + "mask": "0xfc0ff07f" + }, + "vfsub_vf": { + "encoding": "000010-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x8005057", + "mask": "0xfc00707f" + }, + "vfsub_vv": { + "encoding": "000010-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x8001057", + "mask": "0xfc00707f" + }, + "vfwadd_vf": { + "encoding": "110000-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc0005057", + "mask": "0xfc00707f" + }, + "vfwadd_vv": { + "encoding": "110000-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc0001057", + "mask": "0xfc00707f" + }, + "vfwadd_wf": { + "encoding": "110100-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xd0005057", + "mask": "0xfc00707f" + }, + "vfwadd_wv": { + "encoding": "110100-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xd0001057", + "mask": "0xfc00707f" + }, + "vfwcvt_f_f_v": { + "encoding": "010010------01100001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x48061057", + "mask": "0xfc0ff07f" + }, + "vfwcvt_f_x_v": { + "encoding": "010010------01011001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x48059057", + "mask": "0xfc0ff07f" + }, + "vfwcvt_f_xu_v": { + "encoding": "010010------01010001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x48051057", + "mask": "0xfc0ff07f" + }, + "vfwcvt_rtz_x_f_v": { + "encoding": "010010------01111001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x48079057", + "mask": "0xfc0ff07f" + }, + "vfwcvt_rtz_xu_f_v": { + "encoding": "010010------01110001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x48071057", + "mask": "0xfc0ff07f" + }, + "vfwcvt_x_f_v": { + "encoding": "010010------01001001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x48049057", + "mask": "0xfc0ff07f" + }, + "vfwcvt_xu_f_v": { + "encoding": "010010------01000001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x48041057", + "mask": "0xfc0ff07f" + }, + "vfwcvtbf16_f_f_v": { + "encoding": "010010------01101001-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_zvfbfmin"], + "match": "0x48069057", + "mask": "0xfc0ff07f" + }, + "vfwmacc_vf": { + "encoding": "111100-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xf0005057", + "mask": "0xfc00707f" + }, + "vfwmacc_vv": { + "encoding": "111100-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xf0001057", + "mask": "0xfc00707f" + }, + "vfwmaccbf16_vf": { + "encoding": "111011-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_zvfbfwma"], + "match": "0xec005057", + "mask": "0xfc00707f" + }, + "vfwmaccbf16_vv": { + "encoding": "111011-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_zvfbfwma"], + "match": "0xec001057", + "mask": "0xfc00707f" + }, + "vfwmsac_vf": { + "encoding": "111110-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xf8005057", + "mask": "0xfc00707f" + }, + "vfwmsac_vv": { + "encoding": "111110-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xf8001057", + "mask": "0xfc00707f" + }, + "vfwmul_vf": { + "encoding": "111000-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xe0005057", + "mask": "0xfc00707f" + }, + "vfwmul_vv": { + "encoding": "111000-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xe0001057", + "mask": "0xfc00707f" + }, + "vfwnmacc_vf": { + "encoding": "111101-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xf4005057", + "mask": "0xfc00707f" + }, + "vfwnmacc_vv": { + "encoding": "111101-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xf4001057", + "mask": "0xfc00707f" + }, + "vfwnmsac_vf": { + "encoding": "111111-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xfc005057", + "mask": "0xfc00707f" + }, + "vfwnmsac_vv": { + "encoding": "111111-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xfc001057", + "mask": "0xfc00707f" + }, + "vfwredosum_vs": { + "encoding": "110011-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xcc001057", + "mask": "0xfc00707f" + }, + "vfwredusum_vs": { + "encoding": "110001-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc4001057", + "mask": "0xfc00707f" + }, + "vfwsub_vf": { + "encoding": "110010-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc8005057", + "mask": "0xfc00707f" + }, + "vfwsub_vv": { + "encoding": "110010-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc8001057", + "mask": "0xfc00707f" + }, + "vfwsub_wf": { + "encoding": "110110-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xd8005057", + "mask": "0xfc00707f" + }, + "vfwsub_wv": { + "encoding": "110110-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xd8001057", + "mask": "0xfc00707f" + }, + "vghsh_vv": { + "encoding": "1011001----------010-----1110111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_zvkg"], + "match": "0xb2002077", + "mask": "0xfe00707f" + }, + "vgmul_vv": { + "encoding": "1010001-----10001010-----1110111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_zvkg"], + "match": "0xa208a077", + "mask": "0xfe0ff07f" + }, + "vid_v": { + "encoding": "010100-0000010001010-----1010111", + "variable_fields": ["vd", "vm"], + "extension": ["rv_v"], + "match": "0x5008a057", + "mask": "0xfdfff07f" + }, + "viota_m": { + "encoding": "010100------10000010-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x50082057", + "mask": "0xfc0ff07f" + }, + "vl1re16_v": { + "encoding": "000000101000-----101-----0000111", + "variable_fields": ["vd", "rs1"], + "extension": ["rv_v"], + "match": "0x2805007", + "mask": "0xfff0707f" + }, + "vl1re32_v": { + "encoding": "000000101000-----110-----0000111", + "variable_fields": ["vd", "rs1"], + "extension": ["rv_v"], + "match": "0x2806007", + "mask": "0xfff0707f" + }, + "vl1re64_v": { + "encoding": "000000101000-----111-----0000111", + "variable_fields": ["vd", "rs1"], + "extension": ["rv_v"], + "match": "0x2807007", + "mask": "0xfff0707f" + }, + "vl1re8_v": { + "encoding": "000000101000-----000-----0000111", + "variable_fields": ["vd", "rs1"], + "extension": ["rv_v"], + "match": "0x2800007", + "mask": "0xfff0707f" + }, + "vl2re16_v": { + "encoding": "001000101000-----101-----0000111", + "variable_fields": ["vd", "rs1"], + "extension": ["rv_v"], + "match": "0x22805007", + "mask": "0xfff0707f" + }, + "vl2re32_v": { + "encoding": "001000101000-----110-----0000111", + "variable_fields": ["vd", "rs1"], + "extension": ["rv_v"], + "match": "0x22806007", + "mask": "0xfff0707f" + }, + "vl2re64_v": { + "encoding": "001000101000-----111-----0000111", + "variable_fields": ["vd", "rs1"], + "extension": ["rv_v"], + "match": "0x22807007", + "mask": "0xfff0707f" + }, + "vl2re8_v": { + "encoding": "001000101000-----000-----0000111", + "variable_fields": ["vd", "rs1"], + "extension": ["rv_v"], + "match": "0x22800007", + "mask": "0xfff0707f" + }, + "vl4re16_v": { + "encoding": "011000101000-----101-----0000111", + "variable_fields": ["vd", "rs1"], + "extension": ["rv_v"], + "match": "0x62805007", + "mask": "0xfff0707f" + }, + "vl4re32_v": { + "encoding": "011000101000-----110-----0000111", + "variable_fields": ["vd", "rs1"], + "extension": ["rv_v"], + "match": "0x62806007", + "mask": "0xfff0707f" + }, + "vl4re64_v": { + "encoding": "011000101000-----111-----0000111", + "variable_fields": ["vd", "rs1"], + "extension": ["rv_v"], + "match": "0x62807007", + "mask": "0xfff0707f" + }, + "vl4re8_v": { + "encoding": "011000101000-----000-----0000111", + "variable_fields": ["vd", "rs1"], + "extension": ["rv_v"], + "match": "0x62800007", + "mask": "0xfff0707f" + }, + "vl8re16_v": { + "encoding": "111000101000-----101-----0000111", + "variable_fields": ["vd", "rs1"], + "extension": ["rv_v"], + "match": "0xe2805007", + "mask": "0xfff0707f" + }, + "vl8re32_v": { + "encoding": "111000101000-----110-----0000111", + "variable_fields": ["vd", "rs1"], + "extension": ["rv_v"], + "match": "0xe2806007", + "mask": "0xfff0707f" + }, + "vl8re64_v": { + "encoding": "111000101000-----111-----0000111", + "variable_fields": ["vd", "rs1"], + "extension": ["rv_v"], + "match": "0xe2807007", + "mask": "0xfff0707f" + }, + "vl8re8_v": { + "encoding": "111000101000-----000-----0000111", + "variable_fields": ["vd", "rs1"], + "extension": ["rv_v"], + "match": "0xe2800007", + "mask": "0xfff0707f" + }, + "vle16_v": { + "encoding": "000000-00000-----101-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x5007", + "mask": "0xfdf0707f" + }, + "vle16ff_v": { + "encoding": "000000-10000-----101-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x1005007", + "mask": "0xfdf0707f" + }, + "vle32_v": { + "encoding": "000000-00000-----110-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x6007", + "mask": "0xfdf0707f" + }, + "vle32ff_v": { + "encoding": "000000-10000-----110-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x1006007", + "mask": "0xfdf0707f" + }, + "vle64_v": { + "encoding": "000000-00000-----111-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x7007", + "mask": "0xfdf0707f" + }, + "vle64ff_v": { + "encoding": "000000-10000-----111-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x1007007", + "mask": "0xfdf0707f" + }, + "vle8_v": { + "encoding": "000000-00000-----000-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x7", + "mask": "0xfdf0707f" + }, + "vle8ff_v": { + "encoding": "000000-10000-----000-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x1000007", + "mask": "0xfdf0707f" + }, + "vlm_v": { + "encoding": "000000101011-----000-----0000111", + "variable_fields": ["vd", "rs1"], + "extension": ["rv_v"], + "match": "0x2b00007", + "mask": "0xfff0707f" + }, + "vloxei16_v": { + "encoding": "000011-----------101-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc005007", + "mask": "0xfc00707f" + }, + "vloxei32_v": { + "encoding": "000011-----------110-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc006007", + "mask": "0xfc00707f" + }, + "vloxei64_v": { + "encoding": "000011-----------111-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc007007", + "mask": "0xfc00707f" + }, + "vloxei8_v": { + "encoding": "000011-----------000-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc000007", + "mask": "0xfc00707f" + }, + "vloxseg2ei16_v": { + "encoding": "001011-----------101-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x2c005007", + "mask": "0xfc00707f" + }, + "vloxseg2ei32_v": { + "encoding": "001011-----------110-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x2c006007", + "mask": "0xfc00707f" + }, + "vloxseg2ei64_v": { + "encoding": "001011-----------111-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x2c007007", + "mask": "0xfc00707f" + }, + "vloxseg2ei8_v": { + "encoding": "001011-----------000-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x2c000007", + "mask": "0xfc00707f" + }, + "vloxseg3ei16_v": { + "encoding": "010011-----------101-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4c005007", + "mask": "0xfc00707f" + }, + "vloxseg3ei32_v": { + "encoding": "010011-----------110-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4c006007", + "mask": "0xfc00707f" + }, + "vloxseg3ei64_v": { + "encoding": "010011-----------111-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4c007007", + "mask": "0xfc00707f" + }, + "vloxseg3ei8_v": { + "encoding": "010011-----------000-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4c000007", + "mask": "0xfc00707f" + }, + "vloxseg4ei16_v": { + "encoding": "011011-----------101-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x6c005007", + "mask": "0xfc00707f" + }, + "vloxseg4ei32_v": { + "encoding": "011011-----------110-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x6c006007", + "mask": "0xfc00707f" + }, + "vloxseg4ei64_v": { + "encoding": "011011-----------111-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x6c007007", + "mask": "0xfc00707f" + }, + "vloxseg4ei8_v": { + "encoding": "011011-----------000-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x6c000007", + "mask": "0xfc00707f" + }, + "vloxseg5ei16_v": { + "encoding": "100011-----------101-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x8c005007", + "mask": "0xfc00707f" + }, + "vloxseg5ei32_v": { + "encoding": "100011-----------110-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x8c006007", + "mask": "0xfc00707f" + }, + "vloxseg5ei64_v": { + "encoding": "100011-----------111-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x8c007007", + "mask": "0xfc00707f" + }, + "vloxseg5ei8_v": { + "encoding": "100011-----------000-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x8c000007", + "mask": "0xfc00707f" + }, + "vloxseg6ei16_v": { + "encoding": "101011-----------101-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xac005007", + "mask": "0xfc00707f" + }, + "vloxseg6ei32_v": { + "encoding": "101011-----------110-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xac006007", + "mask": "0xfc00707f" + }, + "vloxseg6ei64_v": { + "encoding": "101011-----------111-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xac007007", + "mask": "0xfc00707f" + }, + "vloxseg6ei8_v": { + "encoding": "101011-----------000-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xac000007", + "mask": "0xfc00707f" + }, + "vloxseg7ei16_v": { + "encoding": "110011-----------101-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xcc005007", + "mask": "0xfc00707f" + }, + "vloxseg7ei32_v": { + "encoding": "110011-----------110-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xcc006007", + "mask": "0xfc00707f" + }, + "vloxseg7ei64_v": { + "encoding": "110011-----------111-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xcc007007", + "mask": "0xfc00707f" + }, + "vloxseg7ei8_v": { + "encoding": "110011-----------000-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xcc000007", + "mask": "0xfc00707f" + }, + "vloxseg8ei16_v": { + "encoding": "111011-----------101-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xec005007", + "mask": "0xfc00707f" + }, + "vloxseg8ei32_v": { + "encoding": "111011-----------110-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xec006007", + "mask": "0xfc00707f" + }, + "vloxseg8ei64_v": { + "encoding": "111011-----------111-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xec007007", + "mask": "0xfc00707f" + }, + "vloxseg8ei8_v": { + "encoding": "111011-----------000-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xec000007", + "mask": "0xfc00707f" + }, + "vlse16_v": { + "encoding": "000010-----------101-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x8005007", + "mask": "0xfc00707f" + }, + "vlse32_v": { + "encoding": "000010-----------110-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x8006007", + "mask": "0xfc00707f" + }, + "vlse64_v": { + "encoding": "000010-----------111-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x8007007", + "mask": "0xfc00707f" + }, + "vlse8_v": { + "encoding": "000010-----------000-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x8000007", + "mask": "0xfc00707f" + }, + "vlseg2e16_v": { + "encoding": "001000-00000-----101-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x20005007", + "mask": "0xfdf0707f" + }, + "vlseg2e16ff_v": { + "encoding": "001000-10000-----101-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x21005007", + "mask": "0xfdf0707f" + }, + "vlseg2e32_v": { + "encoding": "001000-00000-----110-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x20006007", + "mask": "0xfdf0707f" + }, + "vlseg2e32ff_v": { + "encoding": "001000-10000-----110-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x21006007", + "mask": "0xfdf0707f" + }, + "vlseg2e64_v": { + "encoding": "001000-00000-----111-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x20007007", + "mask": "0xfdf0707f" + }, + "vlseg2e64ff_v": { + "encoding": "001000-10000-----111-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x21007007", + "mask": "0xfdf0707f" + }, + "vlseg2e8_v": { + "encoding": "001000-00000-----000-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x20000007", + "mask": "0xfdf0707f" + }, + "vlseg2e8ff_v": { + "encoding": "001000-10000-----000-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x21000007", + "mask": "0xfdf0707f" + }, + "vlseg3e16_v": { + "encoding": "010000-00000-----101-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x40005007", + "mask": "0xfdf0707f" + }, + "vlseg3e16ff_v": { + "encoding": "010000-10000-----101-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x41005007", + "mask": "0xfdf0707f" + }, + "vlseg3e32_v": { + "encoding": "010000-00000-----110-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x40006007", + "mask": "0xfdf0707f" + }, + "vlseg3e32ff_v": { + "encoding": "010000-10000-----110-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x41006007", + "mask": "0xfdf0707f" + }, + "vlseg3e64_v": { + "encoding": "010000-00000-----111-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x40007007", + "mask": "0xfdf0707f" + }, + "vlseg3e64ff_v": { + "encoding": "010000-10000-----111-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x41007007", + "mask": "0xfdf0707f" + }, + "vlseg3e8_v": { + "encoding": "010000-00000-----000-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x40000007", + "mask": "0xfdf0707f" + }, + "vlseg3e8ff_v": { + "encoding": "010000-10000-----000-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x41000007", + "mask": "0xfdf0707f" + }, + "vlseg4e16_v": { + "encoding": "011000-00000-----101-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x60005007", + "mask": "0xfdf0707f" + }, + "vlseg4e16ff_v": { + "encoding": "011000-10000-----101-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x61005007", + "mask": "0xfdf0707f" + }, + "vlseg4e32_v": { + "encoding": "011000-00000-----110-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x60006007", + "mask": "0xfdf0707f" + }, + "vlseg4e32ff_v": { + "encoding": "011000-10000-----110-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x61006007", + "mask": "0xfdf0707f" + }, + "vlseg4e64_v": { + "encoding": "011000-00000-----111-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x60007007", + "mask": "0xfdf0707f" + }, + "vlseg4e64ff_v": { + "encoding": "011000-10000-----111-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x61007007", + "mask": "0xfdf0707f" + }, + "vlseg4e8_v": { + "encoding": "011000-00000-----000-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x60000007", + "mask": "0xfdf0707f" + }, + "vlseg4e8ff_v": { + "encoding": "011000-10000-----000-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x61000007", + "mask": "0xfdf0707f" + }, + "vlseg5e16_v": { + "encoding": "100000-00000-----101-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x80005007", + "mask": "0xfdf0707f" + }, + "vlseg5e16ff_v": { + "encoding": "100000-10000-----101-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x81005007", + "mask": "0xfdf0707f" + }, + "vlseg5e32_v": { + "encoding": "100000-00000-----110-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x80006007", + "mask": "0xfdf0707f" + }, + "vlseg5e32ff_v": { + "encoding": "100000-10000-----110-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x81006007", + "mask": "0xfdf0707f" + }, + "vlseg5e64_v": { + "encoding": "100000-00000-----111-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x80007007", + "mask": "0xfdf0707f" + }, + "vlseg5e64ff_v": { + "encoding": "100000-10000-----111-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x81007007", + "mask": "0xfdf0707f" + }, + "vlseg5e8_v": { + "encoding": "100000-00000-----000-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x80000007", + "mask": "0xfdf0707f" + }, + "vlseg5e8ff_v": { + "encoding": "100000-10000-----000-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x81000007", + "mask": "0xfdf0707f" + }, + "vlseg6e16_v": { + "encoding": "101000-00000-----101-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xa0005007", + "mask": "0xfdf0707f" + }, + "vlseg6e16ff_v": { + "encoding": "101000-10000-----101-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xa1005007", + "mask": "0xfdf0707f" + }, + "vlseg6e32_v": { + "encoding": "101000-00000-----110-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xa0006007", + "mask": "0xfdf0707f" + }, + "vlseg6e32ff_v": { + "encoding": "101000-10000-----110-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xa1006007", + "mask": "0xfdf0707f" + }, + "vlseg6e64_v": { + "encoding": "101000-00000-----111-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xa0007007", + "mask": "0xfdf0707f" + }, + "vlseg6e64ff_v": { + "encoding": "101000-10000-----111-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xa1007007", + "mask": "0xfdf0707f" + }, + "vlseg6e8_v": { + "encoding": "101000-00000-----000-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xa0000007", + "mask": "0xfdf0707f" + }, + "vlseg6e8ff_v": { + "encoding": "101000-10000-----000-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xa1000007", + "mask": "0xfdf0707f" + }, + "vlseg7e16_v": { + "encoding": "110000-00000-----101-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xc0005007", + "mask": "0xfdf0707f" + }, + "vlseg7e16ff_v": { + "encoding": "110000-10000-----101-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xc1005007", + "mask": "0xfdf0707f" + }, + "vlseg7e32_v": { + "encoding": "110000-00000-----110-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xc0006007", + "mask": "0xfdf0707f" + }, + "vlseg7e32ff_v": { + "encoding": "110000-10000-----110-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xc1006007", + "mask": "0xfdf0707f" + }, + "vlseg7e64_v": { + "encoding": "110000-00000-----111-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xc0007007", + "mask": "0xfdf0707f" + }, + "vlseg7e64ff_v": { + "encoding": "110000-10000-----111-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xc1007007", + "mask": "0xfdf0707f" + }, + "vlseg7e8_v": { + "encoding": "110000-00000-----000-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xc0000007", + "mask": "0xfdf0707f" + }, + "vlseg7e8ff_v": { + "encoding": "110000-10000-----000-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xc1000007", + "mask": "0xfdf0707f" + }, + "vlseg8e16_v": { + "encoding": "111000-00000-----101-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xe0005007", + "mask": "0xfdf0707f" + }, + "vlseg8e16ff_v": { + "encoding": "111000-10000-----101-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xe1005007", + "mask": "0xfdf0707f" + }, + "vlseg8e32_v": { + "encoding": "111000-00000-----110-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xe0006007", + "mask": "0xfdf0707f" + }, + "vlseg8e32ff_v": { + "encoding": "111000-10000-----110-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xe1006007", + "mask": "0xfdf0707f" + }, + "vlseg8e64_v": { + "encoding": "111000-00000-----111-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xe0007007", + "mask": "0xfdf0707f" + }, + "vlseg8e64ff_v": { + "encoding": "111000-10000-----111-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xe1007007", + "mask": "0xfdf0707f" + }, + "vlseg8e8_v": { + "encoding": "111000-00000-----000-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xe0000007", + "mask": "0xfdf0707f" + }, + "vlseg8e8ff_v": { + "encoding": "111000-10000-----000-----0000111", + "variable_fields": ["vd", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xe1000007", + "mask": "0xfdf0707f" + }, + "vlsseg2e16_v": { + "encoding": "001010-----------101-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x28005007", + "mask": "0xfc00707f" + }, + "vlsseg2e32_v": { + "encoding": "001010-----------110-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x28006007", + "mask": "0xfc00707f" + }, + "vlsseg2e64_v": { + "encoding": "001010-----------111-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x28007007", + "mask": "0xfc00707f" + }, + "vlsseg2e8_v": { + "encoding": "001010-----------000-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x28000007", + "mask": "0xfc00707f" + }, + "vlsseg3e16_v": { + "encoding": "010010-----------101-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x48005007", + "mask": "0xfc00707f" + }, + "vlsseg3e32_v": { + "encoding": "010010-----------110-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x48006007", + "mask": "0xfc00707f" + }, + "vlsseg3e64_v": { + "encoding": "010010-----------111-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x48007007", + "mask": "0xfc00707f" + }, + "vlsseg3e8_v": { + "encoding": "010010-----------000-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x48000007", + "mask": "0xfc00707f" + }, + "vlsseg4e16_v": { + "encoding": "011010-----------101-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x68005007", + "mask": "0xfc00707f" + }, + "vlsseg4e32_v": { + "encoding": "011010-----------110-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x68006007", + "mask": "0xfc00707f" + }, + "vlsseg4e64_v": { + "encoding": "011010-----------111-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x68007007", + "mask": "0xfc00707f" + }, + "vlsseg4e8_v": { + "encoding": "011010-----------000-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x68000007", + "mask": "0xfc00707f" + }, + "vlsseg5e16_v": { + "encoding": "100010-----------101-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x88005007", + "mask": "0xfc00707f" + }, + "vlsseg5e32_v": { + "encoding": "100010-----------110-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x88006007", + "mask": "0xfc00707f" + }, + "vlsseg5e64_v": { + "encoding": "100010-----------111-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x88007007", + "mask": "0xfc00707f" + }, + "vlsseg5e8_v": { + "encoding": "100010-----------000-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x88000007", + "mask": "0xfc00707f" + }, + "vlsseg6e16_v": { + "encoding": "101010-----------101-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xa8005007", + "mask": "0xfc00707f" + }, + "vlsseg6e32_v": { + "encoding": "101010-----------110-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xa8006007", + "mask": "0xfc00707f" + }, + "vlsseg6e64_v": { + "encoding": "101010-----------111-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xa8007007", + "mask": "0xfc00707f" + }, + "vlsseg6e8_v": { + "encoding": "101010-----------000-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xa8000007", + "mask": "0xfc00707f" + }, + "vlsseg7e16_v": { + "encoding": "110010-----------101-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xc8005007", + "mask": "0xfc00707f" + }, + "vlsseg7e32_v": { + "encoding": "110010-----------110-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xc8006007", + "mask": "0xfc00707f" + }, + "vlsseg7e64_v": { + "encoding": "110010-----------111-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xc8007007", + "mask": "0xfc00707f" + }, + "vlsseg7e8_v": { + "encoding": "110010-----------000-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xc8000007", + "mask": "0xfc00707f" + }, + "vlsseg8e16_v": { + "encoding": "111010-----------101-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xe8005007", + "mask": "0xfc00707f" + }, + "vlsseg8e32_v": { + "encoding": "111010-----------110-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xe8006007", + "mask": "0xfc00707f" + }, + "vlsseg8e64_v": { + "encoding": "111010-----------111-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xe8007007", + "mask": "0xfc00707f" + }, + "vlsseg8e8_v": { + "encoding": "111010-----------000-----0000111", + "variable_fields": ["vd", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xe8000007", + "mask": "0xfc00707f" + }, + "vluxei16_v": { + "encoding": "000001-----------101-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4005007", + "mask": "0xfc00707f" + }, + "vluxei32_v": { + "encoding": "000001-----------110-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4006007", + "mask": "0xfc00707f" + }, + "vluxei64_v": { + "encoding": "000001-----------111-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4007007", + "mask": "0xfc00707f" + }, + "vluxei8_v": { + "encoding": "000001-----------000-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4000007", + "mask": "0xfc00707f" + }, + "vluxseg2ei16_v": { + "encoding": "001001-----------101-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x24005007", + "mask": "0xfc00707f" + }, + "vluxseg2ei32_v": { + "encoding": "001001-----------110-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x24006007", + "mask": "0xfc00707f" + }, + "vluxseg2ei64_v": { + "encoding": "001001-----------111-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x24007007", + "mask": "0xfc00707f" + }, + "vluxseg2ei8_v": { + "encoding": "001001-----------000-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x24000007", + "mask": "0xfc00707f" + }, + "vluxseg3ei16_v": { + "encoding": "010001-----------101-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x44005007", + "mask": "0xfc00707f" + }, + "vluxseg3ei32_v": { + "encoding": "010001-----------110-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x44006007", + "mask": "0xfc00707f" + }, + "vluxseg3ei64_v": { + "encoding": "010001-----------111-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x44007007", + "mask": "0xfc00707f" + }, + "vluxseg3ei8_v": { + "encoding": "010001-----------000-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x44000007", + "mask": "0xfc00707f" + }, + "vluxseg4ei16_v": { + "encoding": "011001-----------101-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x64005007", + "mask": "0xfc00707f" + }, + "vluxseg4ei32_v": { + "encoding": "011001-----------110-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x64006007", + "mask": "0xfc00707f" + }, + "vluxseg4ei64_v": { + "encoding": "011001-----------111-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x64007007", + "mask": "0xfc00707f" + }, + "vluxseg4ei8_v": { + "encoding": "011001-----------000-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x64000007", + "mask": "0xfc00707f" + }, + "vluxseg5ei16_v": { + "encoding": "100001-----------101-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x84005007", + "mask": "0xfc00707f" + }, + "vluxseg5ei32_v": { + "encoding": "100001-----------110-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x84006007", + "mask": "0xfc00707f" + }, + "vluxseg5ei64_v": { + "encoding": "100001-----------111-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x84007007", + "mask": "0xfc00707f" + }, + "vluxseg5ei8_v": { + "encoding": "100001-----------000-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x84000007", + "mask": "0xfc00707f" + }, + "vluxseg6ei16_v": { + "encoding": "101001-----------101-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa4005007", + "mask": "0xfc00707f" + }, + "vluxseg6ei32_v": { + "encoding": "101001-----------110-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa4006007", + "mask": "0xfc00707f" + }, + "vluxseg6ei64_v": { + "encoding": "101001-----------111-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa4007007", + "mask": "0xfc00707f" + }, + "vluxseg6ei8_v": { + "encoding": "101001-----------000-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa4000007", + "mask": "0xfc00707f" + }, + "vluxseg7ei16_v": { + "encoding": "110001-----------101-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc4005007", + "mask": "0xfc00707f" + }, + "vluxseg7ei32_v": { + "encoding": "110001-----------110-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc4006007", + "mask": "0xfc00707f" + }, + "vluxseg7ei64_v": { + "encoding": "110001-----------111-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc4007007", + "mask": "0xfc00707f" + }, + "vluxseg7ei8_v": { + "encoding": "110001-----------000-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc4000007", + "mask": "0xfc00707f" + }, + "vluxseg8ei16_v": { + "encoding": "111001-----------101-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xe4005007", + "mask": "0xfc00707f" + }, + "vluxseg8ei32_v": { + "encoding": "111001-----------110-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xe4006007", + "mask": "0xfc00707f" + }, + "vluxseg8ei64_v": { + "encoding": "111001-----------111-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xe4007007", + "mask": "0xfc00707f" + }, + "vluxseg8ei8_v": { + "encoding": "111001-----------000-----0000111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xe4000007", + "mask": "0xfc00707f" + }, + "vmacc_vv": { + "encoding": "101101-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xb4002057", + "mask": "0xfc00707f" + }, + "vmacc_vx": { + "encoding": "101101-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xb4006057", + "mask": "0xfc00707f" + }, + "vmadc_vi": { + "encoding": "0100011----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2"], + "extension": ["rv_v"], + "match": "0x46003057", + "mask": "0xfe00707f" + }, + "vmadc_vim": { + "encoding": "0100010----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2"], + "extension": ["rv_v"], + "match": "0x44003057", + "mask": "0xfe00707f" + }, + "vmadc_vv": { + "encoding": "0100011----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x46000057", + "mask": "0xfe00707f" + }, + "vmadc_vvm": { + "encoding": "0100010----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x44000057", + "mask": "0xfe00707f" + }, + "vmadc_vx": { + "encoding": "0100011----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2"], + "extension": ["rv_v"], + "match": "0x46004057", + "mask": "0xfe00707f" + }, + "vmadc_vxm": { + "encoding": "0100010----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2"], + "extension": ["rv_v"], + "match": "0x44004057", + "mask": "0xfe00707f" + }, + "vmadd_vv": { + "encoding": "101001-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa4002057", + "mask": "0xfc00707f" + }, + "vmadd_vx": { + "encoding": "101001-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa4006057", + "mask": "0xfc00707f" + }, + "vmand_mm": { + "encoding": "0110011----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x66002057", + "mask": "0xfe00707f" + }, + "vmandn_mm": { + "encoding": "0110001----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x62002057", + "mask": "0xfe00707f" + }, + "vmax_vv": { + "encoding": "000111-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x1c000057", + "mask": "0xfc00707f" + }, + "vmax_vx": { + "encoding": "000111-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x1c004057", + "mask": "0xfc00707f" + }, + "vmaxu_vv": { + "encoding": "000110-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x18000057", + "mask": "0xfc00707f" + }, + "vmaxu_vx": { + "encoding": "000110-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x18004057", + "mask": "0xfc00707f" + }, + "vmerge_vim": { + "encoding": "0101110----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2"], + "extension": ["rv_v"], + "match": "0x5c003057", + "mask": "0xfe00707f" + }, + "vmerge_vvm": { + "encoding": "0101110----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x5c000057", + "mask": "0xfe00707f" + }, + "vmerge_vxm": { + "encoding": "0101110----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2"], + "extension": ["rv_v"], + "match": "0x5c004057", + "mask": "0xfe00707f" + }, + "vmfeq_vf": { + "encoding": "011000-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x60005057", + "mask": "0xfc00707f" + }, + "vmfeq_vv": { + "encoding": "011000-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x60001057", + "mask": "0xfc00707f" + }, + "vmfge_vf": { + "encoding": "011111-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x7c005057", + "mask": "0xfc00707f" + }, + "vmfgt_vf": { + "encoding": "011101-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x74005057", + "mask": "0xfc00707f" + }, + "vmfle_vf": { + "encoding": "011001-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x64005057", + "mask": "0xfc00707f" + }, + "vmfle_vv": { + "encoding": "011001-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x64001057", + "mask": "0xfc00707f" + }, + "vmflt_vf": { + "encoding": "011011-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x6c005057", + "mask": "0xfc00707f" + }, + "vmflt_vv": { + "encoding": "011011-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x6c001057", + "mask": "0xfc00707f" + }, + "vmfne_vf": { + "encoding": "011100-----------101-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x70005057", + "mask": "0xfc00707f" + }, + "vmfne_vv": { + "encoding": "011100-----------001-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x70001057", + "mask": "0xfc00707f" + }, + "vmin_vv": { + "encoding": "000101-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x14000057", + "mask": "0xfc00707f" + }, + "vmin_vx": { + "encoding": "000101-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x14004057", + "mask": "0xfc00707f" + }, + "vminu_vv": { + "encoding": "000100-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x10000057", + "mask": "0xfc00707f" + }, + "vminu_vx": { + "encoding": "000100-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x10004057", + "mask": "0xfc00707f" + }, + "vmnand_mm": { + "encoding": "0111011----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x76002057", + "mask": "0xfe00707f" + }, + "vmnor_mm": { + "encoding": "0111101----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x7a002057", + "mask": "0xfe00707f" + }, + "vmor_mm": { + "encoding": "0110101----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x6a002057", + "mask": "0xfe00707f" + }, + "vmorn_mm": { + "encoding": "0111001----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x72002057", + "mask": "0xfe00707f" + }, + "vmsbc_vv": { + "encoding": "0100111----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x4e000057", + "mask": "0xfe00707f" + }, + "vmsbc_vvm": { + "encoding": "0100110----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x4c000057", + "mask": "0xfe00707f" + }, + "vmsbc_vx": { + "encoding": "0100111----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2"], + "extension": ["rv_v"], + "match": "0x4e004057", + "mask": "0xfe00707f" + }, + "vmsbc_vxm": { + "encoding": "0100110----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2"], + "extension": ["rv_v"], + "match": "0x4c004057", + "mask": "0xfe00707f" + }, + "vmsbf_m": { + "encoding": "010100------00001010-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x5000a057", + "mask": "0xfc0ff07f" + }, + "vmseq_vi": { + "encoding": "011000-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x60003057", + "mask": "0xfc00707f" + }, + "vmseq_vv": { + "encoding": "011000-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x60000057", + "mask": "0xfc00707f" + }, + "vmseq_vx": { + "encoding": "011000-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x60004057", + "mask": "0xfc00707f" + }, + "vmsgt_vi": { + "encoding": "011111-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x7c003057", + "mask": "0xfc00707f" + }, + "vmsgt_vx": { + "encoding": "011111-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x7c004057", + "mask": "0xfc00707f" + }, + "vmsgtu_vi": { + "encoding": "011110-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x78003057", + "mask": "0xfc00707f" + }, + "vmsgtu_vx": { + "encoding": "011110-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x78004057", + "mask": "0xfc00707f" + }, + "vmsif_m": { + "encoding": "010100------00011010-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x5001a057", + "mask": "0xfc0ff07f" + }, + "vmsle_vi": { + "encoding": "011101-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x74003057", + "mask": "0xfc00707f" + }, + "vmsle_vv": { + "encoding": "011101-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x74000057", + "mask": "0xfc00707f" + }, + "vmsle_vx": { + "encoding": "011101-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x74004057", + "mask": "0xfc00707f" + }, + "vmsleu_vi": { + "encoding": "011100-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x70003057", + "mask": "0xfc00707f" + }, + "vmsleu_vv": { + "encoding": "011100-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x70000057", + "mask": "0xfc00707f" + }, + "vmsleu_vx": { + "encoding": "011100-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x70004057", + "mask": "0xfc00707f" + }, + "vmslt_vv": { + "encoding": "011011-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x6c000057", + "mask": "0xfc00707f" + }, + "vmslt_vx": { + "encoding": "011011-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x6c004057", + "mask": "0xfc00707f" + }, + "vmsltu_vv": { + "encoding": "011010-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x68000057", + "mask": "0xfc00707f" + }, + "vmsltu_vx": { + "encoding": "011010-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x68004057", + "mask": "0xfc00707f" + }, + "vmsne_vi": { + "encoding": "011001-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x64003057", + "mask": "0xfc00707f" + }, + "vmsne_vv": { + "encoding": "011001-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x64000057", + "mask": "0xfc00707f" + }, + "vmsne_vx": { + "encoding": "011001-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x64004057", + "mask": "0xfc00707f" + }, + "vmsof_m": { + "encoding": "010100------00010010-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x50012057", + "mask": "0xfc0ff07f" + }, + "vmul_vv": { + "encoding": "100101-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x94002057", + "mask": "0xfc00707f" + }, + "vmul_vx": { + "encoding": "100101-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x94006057", + "mask": "0xfc00707f" + }, + "vmulh_vv": { + "encoding": "100111-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x9c002057", + "mask": "0xfc00707f" + }, + "vmulh_vx": { + "encoding": "100111-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x9c006057", + "mask": "0xfc00707f" + }, + "vmulhsu_vv": { + "encoding": "100110-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x98002057", + "mask": "0xfc00707f" + }, + "vmulhsu_vx": { + "encoding": "100110-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x98006057", + "mask": "0xfc00707f" + }, + "vmulhu_vv": { + "encoding": "100100-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x90002057", + "mask": "0xfc00707f" + }, + "vmulhu_vx": { + "encoding": "100100-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x90006057", + "mask": "0xfc00707f" + }, + "vmv1r_v": { + "encoding": "1001111-----00000011-----1010111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_v"], + "match": "0x9e003057", + "mask": "0xfe0ff07f" + }, + "vmv2r_v": { + "encoding": "1001111-----00001011-----1010111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_v"], + "match": "0x9e00b057", + "mask": "0xfe0ff07f" + }, + "vmv4r_v": { + "encoding": "1001111-----00011011-----1010111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_v"], + "match": "0x9e01b057", + "mask": "0xfe0ff07f" + }, + "vmv8r_v": { + "encoding": "1001111-----00111011-----1010111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_v"], + "match": "0x9e03b057", + "mask": "0xfe0ff07f" + }, + "vmv_s_x": { + "encoding": "010000100000-----110-----1010111", + "variable_fields": ["vd", "rs1"], + "extension": ["rv_v"], + "match": "0x42006057", + "mask": "0xfff0707f" + }, + "vmv_v_i": { + "encoding": "010111100000-----011-----1010111", + "variable_fields": ["vd", "simm5"], + "extension": ["rv_v"], + "match": "0x5e003057", + "mask": "0xfff0707f" + }, + "vmv_v_v": { + "encoding": "010111100000-----000-----1010111", + "variable_fields": ["vd", "vs1"], + "extension": ["rv_v"], + "match": "0x5e000057", + "mask": "0xfff0707f" + }, + "vmv_v_x": { + "encoding": "010111100000-----100-----1010111", + "variable_fields": ["vd", "rs1"], + "extension": ["rv_v"], + "match": "0x5e004057", + "mask": "0xfff0707f" + }, + "vmv_x_s": { + "encoding": "0100001-----00000010-----1010111", + "variable_fields": ["rd", "vs2"], + "extension": ["rv_v"], + "match": "0x42002057", + "mask": "0xfe0ff07f" + }, + "vmxnor_mm": { + "encoding": "0111111----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x7e002057", + "mask": "0xfe00707f" + }, + "vmxor_mm": { + "encoding": "0110111----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x6e002057", + "mask": "0xfe00707f" + }, + "vnclip_wi": { + "encoding": "101111-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xbc003057", + "mask": "0xfc00707f" + }, + "vnclip_wv": { + "encoding": "101111-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xbc000057", + "mask": "0xfc00707f" + }, + "vnclip_wx": { + "encoding": "101111-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xbc004057", + "mask": "0xfc00707f" + }, + "vnclipu_wi": { + "encoding": "101110-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xb8003057", + "mask": "0xfc00707f" + }, + "vnclipu_wv": { + "encoding": "101110-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xb8000057", + "mask": "0xfc00707f" + }, + "vnclipu_wx": { + "encoding": "101110-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xb8004057", + "mask": "0xfc00707f" + }, + "vnmsac_vv": { + "encoding": "101111-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xbc002057", + "mask": "0xfc00707f" + }, + "vnmsac_vx": { + "encoding": "101111-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xbc006057", + "mask": "0xfc00707f" + }, + "vnmsub_vv": { + "encoding": "101011-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xac002057", + "mask": "0xfc00707f" + }, + "vnmsub_vx": { + "encoding": "101011-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xac006057", + "mask": "0xfc00707f" + }, + "vnsra_wi": { + "encoding": "101101-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xb4003057", + "mask": "0xfc00707f" + }, + "vnsra_wv": { + "encoding": "101101-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xb4000057", + "mask": "0xfc00707f" + }, + "vnsra_wx": { + "encoding": "101101-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xb4004057", + "mask": "0xfc00707f" + }, + "vnsrl_wi": { + "encoding": "101100-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xb0003057", + "mask": "0xfc00707f" + }, + "vnsrl_wv": { + "encoding": "101100-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xb0000057", + "mask": "0xfc00707f" + }, + "vnsrl_wx": { + "encoding": "101100-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xb0004057", + "mask": "0xfc00707f" + }, + "vor_vi": { + "encoding": "001010-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x28003057", + "mask": "0xfc00707f" + }, + "vor_vv": { + "encoding": "001010-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x28000057", + "mask": "0xfc00707f" + }, + "vor_vx": { + "encoding": "001010-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x28004057", + "mask": "0xfc00707f" + }, + "vredand_vs": { + "encoding": "000001-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4002057", + "mask": "0xfc00707f" + }, + "vredmax_vs": { + "encoding": "000111-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x1c002057", + "mask": "0xfc00707f" + }, + "vredmaxu_vs": { + "encoding": "000110-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x18002057", + "mask": "0xfc00707f" + }, + "vredmin_vs": { + "encoding": "000101-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x14002057", + "mask": "0xfc00707f" + }, + "vredminu_vs": { + "encoding": "000100-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x10002057", + "mask": "0xfc00707f" + }, + "vredor_vs": { + "encoding": "000010-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x8002057", + "mask": "0xfc00707f" + }, + "vredsum_vs": { + "encoding": "000000-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x2057", + "mask": "0xfc00707f" + }, + "vredxor_vs": { + "encoding": "000011-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc002057", + "mask": "0xfc00707f" + }, + "vrem_vv": { + "encoding": "100011-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x8c002057", + "mask": "0xfc00707f" + }, + "vrem_vx": { + "encoding": "100011-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x8c006057", + "mask": "0xfc00707f" + }, + "vremu_vv": { + "encoding": "100010-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x88002057", + "mask": "0xfc00707f" + }, + "vremu_vx": { + "encoding": "100010-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x88006057", + "mask": "0xfc00707f" + }, + "vrev8_v": { + "encoding": "010010------01001010-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0x4804a057", + "mask": "0xfc0ff07f" + }, + "vrgather_vi": { + "encoding": "001100-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x30003057", + "mask": "0xfc00707f" + }, + "vrgather_vv": { + "encoding": "001100-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x30000057", + "mask": "0xfc00707f" + }, + "vrgather_vx": { + "encoding": "001100-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x30004057", + "mask": "0xfc00707f" + }, + "vrgatherei16_vv": { + "encoding": "001110-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x38000057", + "mask": "0xfc00707f" + }, + "vrol_vv": { + "encoding": "010101-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0x54000057", + "mask": "0xfc00707f" + }, + "vrol_vx": { + "encoding": "010101-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0x54004057", + "mask": "0xfc00707f" + }, + "vror_vi": { + "encoding": "01010------------011-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0x50003057", + "mask": "0xf800707f" + }, + "vror_vv": { + "encoding": "010100-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0x50000057", + "mask": "0xfc00707f" + }, + "vror_vx": { + "encoding": "010100-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0x50004057", + "mask": "0xfc00707f" + }, + "vrsub_vi": { + "encoding": "000011-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc003057", + "mask": "0xfc00707f" + }, + "vrsub_vx": { + "encoding": "000011-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc004057", + "mask": "0xfc00707f" + }, + "vs1r_v": { + "encoding": "000000101000-----000-----0100111", + "variable_fields": ["vs3", "rs1"], + "extension": ["rv_v"], + "match": "0x2800027", + "mask": "0xfff0707f" + }, + "vs2r_v": { + "encoding": "001000101000-----000-----0100111", + "variable_fields": ["vs3", "rs1"], + "extension": ["rv_v"], + "match": "0x22800027", + "mask": "0xfff0707f" + }, + "vs4r_v": { + "encoding": "011000101000-----000-----0100111", + "variable_fields": ["vs3", "rs1"], + "extension": ["rv_v"], + "match": "0x62800027", + "mask": "0xfff0707f" + }, + "vs8r_v": { + "encoding": "111000101000-----000-----0100111", + "variable_fields": ["vs3", "rs1"], + "extension": ["rv_v"], + "match": "0xe2800027", + "mask": "0xfff0707f" + }, + "vsadd_vi": { + "encoding": "100001-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x84003057", + "mask": "0xfc00707f" + }, + "vsadd_vv": { + "encoding": "100001-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x84000057", + "mask": "0xfc00707f" + }, + "vsadd_vx": { + "encoding": "100001-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x84004057", + "mask": "0xfc00707f" + }, + "vsaddu_vi": { + "encoding": "100000-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x80003057", + "mask": "0xfc00707f" + }, + "vsaddu_vv": { + "encoding": "100000-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x80000057", + "mask": "0xfc00707f" + }, + "vsaddu_vx": { + "encoding": "100000-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x80004057", + "mask": "0xfc00707f" + }, + "vsbc_vvm": { + "encoding": "0100100----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x48000057", + "mask": "0xfe00707f" + }, + "vsbc_vxm": { + "encoding": "0100100----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2"], + "extension": ["rv_v"], + "match": "0x48004057", + "mask": "0xfe00707f" + }, + "vse16_v": { + "encoding": "000000-00000-----101-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x5027", + "mask": "0xfdf0707f" + }, + "vse32_v": { + "encoding": "000000-00000-----110-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x6027", + "mask": "0xfdf0707f" + }, + "vse64_v": { + "encoding": "000000-00000-----111-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x7027", + "mask": "0xfdf0707f" + }, + "vse8_v": { + "encoding": "000000-00000-----000-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x27", + "mask": "0xfdf0707f" + }, + "vsetivli": { + "encoding": "11---------------111-----1010111", + "variable_fields": ["rd", "zimm10"], + "extension": ["rv_v"], + "match": "0xc0007057", + "mask": "0xc000707f" + }, + "vsetvl": { + "encoding": "1000000----------111-----1010111", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_v"], + "match": "0x80007057", + "mask": "0xfe00707f" + }, + "vsetvli": { + "encoding": "0----------------111-----1010111", + "variable_fields": ["rd", "rs1", "zimm11"], + "extension": ["rv_v"], + "match": "0x7057", + "mask": "0x8000707f" + }, + "vsext_vf2": { + "encoding": "010010------00111010-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4803a057", + "mask": "0xfc0ff07f" + }, + "vsext_vf4": { + "encoding": "010010------00101010-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4802a057", + "mask": "0xfc0ff07f" + }, + "vsext_vf8": { + "encoding": "010010------00011010-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4801a057", + "mask": "0xfc0ff07f" + }, + "vsha2ch_vv": { + "encoding": "1011101----------010-----1110111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_zvkn", "rv_zvknha", "rv_zvknhb"], + "match": "0xba002077", + "mask": "0xfe00707f" + }, + "vsha2cl_vv": { + "encoding": "1011111----------010-----1110111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_zvkn", "rv_zvknha", "rv_zvknhb"], + "match": "0xbe002077", + "mask": "0xfe00707f" + }, + "vsha2ms_vv": { + "encoding": "1011011----------010-----1110111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_zvkn", "rv_zvknha", "rv_zvknhb"], + "match": "0xb6002077", + "mask": "0xfe00707f" + }, + "vslide1down_vx": { + "encoding": "001111-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x3c006057", + "mask": "0xfc00707f" + }, + "vslide1up_vx": { + "encoding": "001110-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x38006057", + "mask": "0xfc00707f" + }, + "vslidedown_vi": { + "encoding": "001111-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x3c003057", + "mask": "0xfc00707f" + }, + "vslidedown_vx": { + "encoding": "001111-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x3c004057", + "mask": "0xfc00707f" + }, + "vslideup_vi": { + "encoding": "001110-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x38003057", + "mask": "0xfc00707f" + }, + "vslideup_vx": { + "encoding": "001110-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x38004057", + "mask": "0xfc00707f" + }, + "vsll_vi": { + "encoding": "100101-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x94003057", + "mask": "0xfc00707f" + }, + "vsll_vv": { + "encoding": "100101-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x94000057", + "mask": "0xfc00707f" + }, + "vsll_vx": { + "encoding": "100101-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x94004057", + "mask": "0xfc00707f" + }, + "vsm3c_vi": { + "encoding": "1010111----------010-----1110111", + "variable_fields": ["vd", "zimm5", "vs2"], + "extension": ["rv_zvks", "rv_zvksh"], + "match": "0xae002077", + "mask": "0xfe00707f" + }, + "vsm3me_vv": { + "encoding": "1000001----------010-----1110111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_zvks", "rv_zvksh"], + "match": "0x82002077", + "mask": "0xfe00707f" + }, + "vsm4k_vi": { + "encoding": "1000011----------010-----1110111", + "variable_fields": ["vd", "zimm5", "vs2"], + "extension": ["rv_zvks", "rv_zvksed"], + "match": "0x86002077", + "mask": "0xfe00707f" + }, + "vsm4r_vs": { + "encoding": "1010011-----10000010-----1110111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_zvks", "rv_zvksed"], + "match": "0xa6082077", + "mask": "0xfe0ff07f" + }, + "vsm4r_vv": { + "encoding": "1010001-----10000010-----1110111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_zvks", "rv_zvksed"], + "match": "0xa2082077", + "mask": "0xfe0ff07f" + }, + "vsm_v": { + "encoding": "000000101011-----000-----0100111", + "variable_fields": ["vs3", "rs1"], + "extension": ["rv_v"], + "match": "0x2b00027", + "mask": "0xfff0707f" + }, + "vsmul_vv": { + "encoding": "100111-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x9c000057", + "mask": "0xfc00707f" + }, + "vsmul_vx": { + "encoding": "100111-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x9c004057", + "mask": "0xfc00707f" + }, + "vsoxei16_v": { + "encoding": "000011-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc005027", + "mask": "0xfc00707f" + }, + "vsoxei32_v": { + "encoding": "000011-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc006027", + "mask": "0xfc00707f" + }, + "vsoxei64_v": { + "encoding": "000011-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc007027", + "mask": "0xfc00707f" + }, + "vsoxei8_v": { + "encoding": "000011-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc000027", + "mask": "0xfc00707f" + }, + "vsoxseg2ei16_v": { + "encoding": "001011-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x2c005027", + "mask": "0xfc00707f" + }, + "vsoxseg2ei32_v": { + "encoding": "001011-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x2c006027", + "mask": "0xfc00707f" + }, + "vsoxseg2ei64_v": { + "encoding": "001011-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x2c007027", + "mask": "0xfc00707f" + }, + "vsoxseg2ei8_v": { + "encoding": "001011-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x2c000027", + "mask": "0xfc00707f" + }, + "vsoxseg3ei16_v": { + "encoding": "010011-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4c005027", + "mask": "0xfc00707f" + }, + "vsoxseg3ei32_v": { + "encoding": "010011-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4c006027", + "mask": "0xfc00707f" + }, + "vsoxseg3ei64_v": { + "encoding": "010011-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4c007027", + "mask": "0xfc00707f" + }, + "vsoxseg3ei8_v": { + "encoding": "010011-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4c000027", + "mask": "0xfc00707f" + }, + "vsoxseg4ei16_v": { + "encoding": "011011-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x6c005027", + "mask": "0xfc00707f" + }, + "vsoxseg4ei32_v": { + "encoding": "011011-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x6c006027", + "mask": "0xfc00707f" + }, + "vsoxseg4ei64_v": { + "encoding": "011011-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x6c007027", + "mask": "0xfc00707f" + }, + "vsoxseg4ei8_v": { + "encoding": "011011-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x6c000027", + "mask": "0xfc00707f" + }, + "vsoxseg5ei16_v": { + "encoding": "100011-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x8c005027", + "mask": "0xfc00707f" + }, + "vsoxseg5ei32_v": { + "encoding": "100011-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x8c006027", + "mask": "0xfc00707f" + }, + "vsoxseg5ei64_v": { + "encoding": "100011-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x8c007027", + "mask": "0xfc00707f" + }, + "vsoxseg5ei8_v": { + "encoding": "100011-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x8c000027", + "mask": "0xfc00707f" + }, + "vsoxseg6ei16_v": { + "encoding": "101011-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xac005027", + "mask": "0xfc00707f" + }, + "vsoxseg6ei32_v": { + "encoding": "101011-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xac006027", + "mask": "0xfc00707f" + }, + "vsoxseg6ei64_v": { + "encoding": "101011-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xac007027", + "mask": "0xfc00707f" + }, + "vsoxseg6ei8_v": { + "encoding": "101011-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xac000027", + "mask": "0xfc00707f" + }, + "vsoxseg7ei16_v": { + "encoding": "110011-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xcc005027", + "mask": "0xfc00707f" + }, + "vsoxseg7ei32_v": { + "encoding": "110011-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xcc006027", + "mask": "0xfc00707f" + }, + "vsoxseg7ei64_v": { + "encoding": "110011-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xcc007027", + "mask": "0xfc00707f" + }, + "vsoxseg7ei8_v": { + "encoding": "110011-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xcc000027", + "mask": "0xfc00707f" + }, + "vsoxseg8ei16_v": { + "encoding": "111011-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xec005027", + "mask": "0xfc00707f" + }, + "vsoxseg8ei32_v": { + "encoding": "111011-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xec006027", + "mask": "0xfc00707f" + }, + "vsoxseg8ei64_v": { + "encoding": "111011-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xec007027", + "mask": "0xfc00707f" + }, + "vsoxseg8ei8_v": { + "encoding": "111011-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xec000027", + "mask": "0xfc00707f" + }, + "vsra_vi": { + "encoding": "101001-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa4003057", + "mask": "0xfc00707f" + }, + "vsra_vv": { + "encoding": "101001-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa4000057", + "mask": "0xfc00707f" + }, + "vsra_vx": { + "encoding": "101001-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa4004057", + "mask": "0xfc00707f" + }, + "vsrl_vi": { + "encoding": "101000-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa0003057", + "mask": "0xfc00707f" + }, + "vsrl_vv": { + "encoding": "101000-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa0000057", + "mask": "0xfc00707f" + }, + "vsrl_vx": { + "encoding": "101000-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa0004057", + "mask": "0xfc00707f" + }, + "vsse16_v": { + "encoding": "000010-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x8005027", + "mask": "0xfc00707f" + }, + "vsse32_v": { + "encoding": "000010-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x8006027", + "mask": "0xfc00707f" + }, + "vsse64_v": { + "encoding": "000010-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x8007027", + "mask": "0xfc00707f" + }, + "vsse8_v": { + "encoding": "000010-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x8000027", + "mask": "0xfc00707f" + }, + "vsseg2e16_v": { + "encoding": "001000-00000-----101-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x20005027", + "mask": "0xfdf0707f" + }, + "vsseg2e32_v": { + "encoding": "001000-00000-----110-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x20006027", + "mask": "0xfdf0707f" + }, + "vsseg2e64_v": { + "encoding": "001000-00000-----111-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x20007027", + "mask": "0xfdf0707f" + }, + "vsseg2e8_v": { + "encoding": "001000-00000-----000-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x20000027", + "mask": "0xfdf0707f" + }, + "vsseg3e16_v": { + "encoding": "010000-00000-----101-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x40005027", + "mask": "0xfdf0707f" + }, + "vsseg3e32_v": { + "encoding": "010000-00000-----110-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x40006027", + "mask": "0xfdf0707f" + }, + "vsseg3e64_v": { + "encoding": "010000-00000-----111-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x40007027", + "mask": "0xfdf0707f" + }, + "vsseg3e8_v": { + "encoding": "010000-00000-----000-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x40000027", + "mask": "0xfdf0707f" + }, + "vsseg4e16_v": { + "encoding": "011000-00000-----101-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x60005027", + "mask": "0xfdf0707f" + }, + "vsseg4e32_v": { + "encoding": "011000-00000-----110-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x60006027", + "mask": "0xfdf0707f" + }, + "vsseg4e64_v": { + "encoding": "011000-00000-----111-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x60007027", + "mask": "0xfdf0707f" + }, + "vsseg4e8_v": { + "encoding": "011000-00000-----000-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x60000027", + "mask": "0xfdf0707f" + }, + "vsseg5e16_v": { + "encoding": "100000-00000-----101-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x80005027", + "mask": "0xfdf0707f" + }, + "vsseg5e32_v": { + "encoding": "100000-00000-----110-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x80006027", + "mask": "0xfdf0707f" + }, + "vsseg5e64_v": { + "encoding": "100000-00000-----111-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x80007027", + "mask": "0xfdf0707f" + }, + "vsseg5e8_v": { + "encoding": "100000-00000-----000-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0x80000027", + "mask": "0xfdf0707f" + }, + "vsseg6e16_v": { + "encoding": "101000-00000-----101-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xa0005027", + "mask": "0xfdf0707f" + }, + "vsseg6e32_v": { + "encoding": "101000-00000-----110-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xa0006027", + "mask": "0xfdf0707f" + }, + "vsseg6e64_v": { + "encoding": "101000-00000-----111-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xa0007027", + "mask": "0xfdf0707f" + }, + "vsseg6e8_v": { + "encoding": "101000-00000-----000-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xa0000027", + "mask": "0xfdf0707f" + }, + "vsseg7e16_v": { + "encoding": "110000-00000-----101-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xc0005027", + "mask": "0xfdf0707f" + }, + "vsseg7e32_v": { + "encoding": "110000-00000-----110-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xc0006027", + "mask": "0xfdf0707f" + }, + "vsseg7e64_v": { + "encoding": "110000-00000-----111-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xc0007027", + "mask": "0xfdf0707f" + }, + "vsseg7e8_v": { + "encoding": "110000-00000-----000-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xc0000027", + "mask": "0xfdf0707f" + }, + "vsseg8e16_v": { + "encoding": "111000-00000-----101-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xe0005027", + "mask": "0xfdf0707f" + }, + "vsseg8e32_v": { + "encoding": "111000-00000-----110-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xe0006027", + "mask": "0xfdf0707f" + }, + "vsseg8e64_v": { + "encoding": "111000-00000-----111-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xe0007027", + "mask": "0xfdf0707f" + }, + "vsseg8e8_v": { + "encoding": "111000-00000-----000-----0100111", + "variable_fields": ["vs3", "rs1", "vm"], + "extension": ["rv_v"], + "match": "0xe0000027", + "mask": "0xfdf0707f" + }, + "vssra_vi": { + "encoding": "101011-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xac003057", + "mask": "0xfc00707f" + }, + "vssra_vv": { + "encoding": "101011-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xac000057", + "mask": "0xfc00707f" + }, + "vssra_vx": { + "encoding": "101011-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xac004057", + "mask": "0xfc00707f" + }, + "vssrl_vi": { + "encoding": "101010-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa8003057", + "mask": "0xfc00707f" + }, + "vssrl_vv": { + "encoding": "101010-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa8000057", + "mask": "0xfc00707f" + }, + "vssrl_vx": { + "encoding": "101010-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa8004057", + "mask": "0xfc00707f" + }, + "vssseg2e16_v": { + "encoding": "001010-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x28005027", + "mask": "0xfc00707f" + }, + "vssseg2e32_v": { + "encoding": "001010-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x28006027", + "mask": "0xfc00707f" + }, + "vssseg2e64_v": { + "encoding": "001010-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x28007027", + "mask": "0xfc00707f" + }, + "vssseg2e8_v": { + "encoding": "001010-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x28000027", + "mask": "0xfc00707f" + }, + "vssseg3e16_v": { + "encoding": "010010-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x48005027", + "mask": "0xfc00707f" + }, + "vssseg3e32_v": { + "encoding": "010010-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x48006027", + "mask": "0xfc00707f" + }, + "vssseg3e64_v": { + "encoding": "010010-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x48007027", + "mask": "0xfc00707f" + }, + "vssseg3e8_v": { + "encoding": "010010-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x48000027", + "mask": "0xfc00707f" + }, + "vssseg4e16_v": { + "encoding": "011010-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x68005027", + "mask": "0xfc00707f" + }, + "vssseg4e32_v": { + "encoding": "011010-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x68006027", + "mask": "0xfc00707f" + }, + "vssseg4e64_v": { + "encoding": "011010-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x68007027", + "mask": "0xfc00707f" + }, + "vssseg4e8_v": { + "encoding": "011010-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x68000027", + "mask": "0xfc00707f" + }, + "vssseg5e16_v": { + "encoding": "100010-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x88005027", + "mask": "0xfc00707f" + }, + "vssseg5e32_v": { + "encoding": "100010-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x88006027", + "mask": "0xfc00707f" + }, + "vssseg5e64_v": { + "encoding": "100010-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x88007027", + "mask": "0xfc00707f" + }, + "vssseg5e8_v": { + "encoding": "100010-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0x88000027", + "mask": "0xfc00707f" + }, + "vssseg6e16_v": { + "encoding": "101010-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xa8005027", + "mask": "0xfc00707f" + }, + "vssseg6e32_v": { + "encoding": "101010-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xa8006027", + "mask": "0xfc00707f" + }, + "vssseg6e64_v": { + "encoding": "101010-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xa8007027", + "mask": "0xfc00707f" + }, + "vssseg6e8_v": { + "encoding": "101010-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xa8000027", + "mask": "0xfc00707f" + }, + "vssseg7e16_v": { + "encoding": "110010-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xc8005027", + "mask": "0xfc00707f" + }, + "vssseg7e32_v": { + "encoding": "110010-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xc8006027", + "mask": "0xfc00707f" + }, + "vssseg7e64_v": { + "encoding": "110010-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xc8007027", + "mask": "0xfc00707f" + }, + "vssseg7e8_v": { + "encoding": "110010-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xc8000027", + "mask": "0xfc00707f" + }, + "vssseg8e16_v": { + "encoding": "111010-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xe8005027", + "mask": "0xfc00707f" + }, + "vssseg8e32_v": { + "encoding": "111010-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xe8006027", + "mask": "0xfc00707f" + }, + "vssseg8e64_v": { + "encoding": "111010-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xe8007027", + "mask": "0xfc00707f" + }, + "vssseg8e8_v": { + "encoding": "111010-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "rs2", "vm"], + "extension": ["rv_v"], + "match": "0xe8000027", + "mask": "0xfc00707f" + }, + "vssub_vv": { + "encoding": "100011-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x8c000057", + "mask": "0xfc00707f" + }, + "vssub_vx": { + "encoding": "100011-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x8c004057", + "mask": "0xfc00707f" + }, + "vssubu_vv": { + "encoding": "100010-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x88000057", + "mask": "0xfc00707f" + }, + "vssubu_vx": { + "encoding": "100010-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x88004057", + "mask": "0xfc00707f" + }, + "vsub_vv": { + "encoding": "000010-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x8000057", + "mask": "0xfc00707f" + }, + "vsub_vx": { + "encoding": "000010-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x8004057", + "mask": "0xfc00707f" + }, + "vsuxei16_v": { + "encoding": "000001-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4005027", + "mask": "0xfc00707f" + }, + "vsuxei32_v": { + "encoding": "000001-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4006027", + "mask": "0xfc00707f" + }, + "vsuxei64_v": { + "encoding": "000001-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4007027", + "mask": "0xfc00707f" + }, + "vsuxei8_v": { + "encoding": "000001-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x4000027", + "mask": "0xfc00707f" + }, + "vsuxseg2ei16_v": { + "encoding": "001001-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x24005027", + "mask": "0xfc00707f" + }, + "vsuxseg2ei32_v": { + "encoding": "001001-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x24006027", + "mask": "0xfc00707f" + }, + "vsuxseg2ei64_v": { + "encoding": "001001-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x24007027", + "mask": "0xfc00707f" + }, + "vsuxseg2ei8_v": { + "encoding": "001001-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x24000027", + "mask": "0xfc00707f" + }, + "vsuxseg3ei16_v": { + "encoding": "010001-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x44005027", + "mask": "0xfc00707f" + }, + "vsuxseg3ei32_v": { + "encoding": "010001-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x44006027", + "mask": "0xfc00707f" + }, + "vsuxseg3ei64_v": { + "encoding": "010001-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x44007027", + "mask": "0xfc00707f" + }, + "vsuxseg3ei8_v": { + "encoding": "010001-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x44000027", + "mask": "0xfc00707f" + }, + "vsuxseg4ei16_v": { + "encoding": "011001-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x64005027", + "mask": "0xfc00707f" + }, + "vsuxseg4ei32_v": { + "encoding": "011001-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x64006027", + "mask": "0xfc00707f" + }, + "vsuxseg4ei64_v": { + "encoding": "011001-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x64007027", + "mask": "0xfc00707f" + }, + "vsuxseg4ei8_v": { + "encoding": "011001-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x64000027", + "mask": "0xfc00707f" + }, + "vsuxseg5ei16_v": { + "encoding": "100001-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x84005027", + "mask": "0xfc00707f" + }, + "vsuxseg5ei32_v": { + "encoding": "100001-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x84006027", + "mask": "0xfc00707f" + }, + "vsuxseg5ei64_v": { + "encoding": "100001-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x84007027", + "mask": "0xfc00707f" + }, + "vsuxseg5ei8_v": { + "encoding": "100001-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x84000027", + "mask": "0xfc00707f" + }, + "vsuxseg6ei16_v": { + "encoding": "101001-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa4005027", + "mask": "0xfc00707f" + }, + "vsuxseg6ei32_v": { + "encoding": "101001-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa4006027", + "mask": "0xfc00707f" + }, + "vsuxseg6ei64_v": { + "encoding": "101001-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa4007027", + "mask": "0xfc00707f" + }, + "vsuxseg6ei8_v": { + "encoding": "101001-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xa4000027", + "mask": "0xfc00707f" + }, + "vsuxseg7ei16_v": { + "encoding": "110001-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc4005027", + "mask": "0xfc00707f" + }, + "vsuxseg7ei32_v": { + "encoding": "110001-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc4006027", + "mask": "0xfc00707f" + }, + "vsuxseg7ei64_v": { + "encoding": "110001-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc4007027", + "mask": "0xfc00707f" + }, + "vsuxseg7ei8_v": { + "encoding": "110001-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc4000027", + "mask": "0xfc00707f" + }, + "vsuxseg8ei16_v": { + "encoding": "111001-----------101-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xe4005027", + "mask": "0xfc00707f" + }, + "vsuxseg8ei32_v": { + "encoding": "111001-----------110-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xe4006027", + "mask": "0xfc00707f" + }, + "vsuxseg8ei64_v": { + "encoding": "111001-----------111-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xe4007027", + "mask": "0xfc00707f" + }, + "vsuxseg8ei8_v": { + "encoding": "111001-----------000-----0100111", + "variable_fields": ["vs3", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xe4000027", + "mask": "0xfc00707f" + }, + "vwadd_vv": { + "encoding": "110001-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc4002057", + "mask": "0xfc00707f" + }, + "vwadd_vx": { + "encoding": "110001-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc4006057", + "mask": "0xfc00707f" + }, + "vwadd_wv": { + "encoding": "110101-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xd4002057", + "mask": "0xfc00707f" + }, + "vwadd_wx": { + "encoding": "110101-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xd4006057", + "mask": "0xfc00707f" + }, + "vwaddu_vv": { + "encoding": "110000-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc0002057", + "mask": "0xfc00707f" + }, + "vwaddu_vx": { + "encoding": "110000-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc0006057", + "mask": "0xfc00707f" + }, + "vwaddu_wv": { + "encoding": "110100-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xd0002057", + "mask": "0xfc00707f" + }, + "vwaddu_wx": { + "encoding": "110100-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xd0006057", + "mask": "0xfc00707f" + }, + "vwmacc_vv": { + "encoding": "111101-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xf4002057", + "mask": "0xfc00707f" + }, + "vwmacc_vx": { + "encoding": "111101-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xf4006057", + "mask": "0xfc00707f" + }, + "vwmaccsu_vv": { + "encoding": "111111-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xfc002057", + "mask": "0xfc00707f" + }, + "vwmaccsu_vx": { + "encoding": "111111-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xfc006057", + "mask": "0xfc00707f" + }, + "vwmaccu_vv": { + "encoding": "111100-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xf0002057", + "mask": "0xfc00707f" + }, + "vwmaccu_vx": { + "encoding": "111100-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xf0006057", + "mask": "0xfc00707f" + }, + "vwmaccus_vx": { + "encoding": "111110-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xf8006057", + "mask": "0xfc00707f" + }, + "vwmul_vv": { + "encoding": "111011-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xec002057", + "mask": "0xfc00707f" + }, + "vwmul_vx": { + "encoding": "111011-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xec006057", + "mask": "0xfc00707f" + }, + "vwmulsu_vv": { + "encoding": "111010-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xe8002057", + "mask": "0xfc00707f" + }, + "vwmulsu_vx": { + "encoding": "111010-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xe8006057", + "mask": "0xfc00707f" + }, + "vwmulu_vv": { + "encoding": "111000-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xe0002057", + "mask": "0xfc00707f" + }, + "vwmulu_vx": { + "encoding": "111000-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xe0006057", + "mask": "0xfc00707f" + }, + "vwredsum_vs": { + "encoding": "110001-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc4000057", + "mask": "0xfc00707f" + }, + "vwredsumu_vs": { + "encoding": "110000-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc0000057", + "mask": "0xfc00707f" + }, + "vwsll_vi": { + "encoding": "110101-----------011-----1010111", + "variable_fields": ["vd", "zimm5", "vs2", "vm"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0xd4003057", + "mask": "0xfc00707f" + }, + "vwsll_vv": { + "encoding": "110101-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0xd4000057", + "mask": "0xfc00707f" + }, + "vwsll_vx": { + "encoding": "110101-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0xd4004057", + "mask": "0xfc00707f" + }, + "vwsub_vv": { + "encoding": "110011-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xcc002057", + "mask": "0xfc00707f" + }, + "vwsub_vx": { + "encoding": "110011-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xcc006057", + "mask": "0xfc00707f" + }, + "vwsub_wv": { + "encoding": "110111-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xdc002057", + "mask": "0xfc00707f" + }, + "vwsub_wx": { + "encoding": "110111-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xdc006057", + "mask": "0xfc00707f" + }, + "vwsubu_vv": { + "encoding": "110010-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc8002057", + "mask": "0xfc00707f" + }, + "vwsubu_vx": { + "encoding": "110010-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xc8006057", + "mask": "0xfc00707f" + }, + "vwsubu_wv": { + "encoding": "110110-----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xd8002057", + "mask": "0xfc00707f" + }, + "vwsubu_wx": { + "encoding": "110110-----------110-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0xd8006057", + "mask": "0xfc00707f" + }, + "vxor_vi": { + "encoding": "001011-----------011-----1010111", + "variable_fields": ["vd", "simm5", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x2c003057", + "mask": "0xfc00707f" + }, + "vxor_vv": { + "encoding": "001011-----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x2c000057", + "mask": "0xfc00707f" + }, + "vxor_vx": { + "encoding": "001011-----------100-----1010111", + "variable_fields": ["vd", "rs1", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x2c004057", + "mask": "0xfc00707f" + }, + "vzext_vf2": { + "encoding": "010010------00110010-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x48032057", + "mask": "0xfc0ff07f" + }, + "vzext_vf4": { + "encoding": "010010------00100010-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x48022057", + "mask": "0xfc0ff07f" + }, + "vzext_vf8": { + "encoding": "010010------00010010-----1010111", + "variable_fields": ["vd", "vs2", "vm"], + "extension": ["rv_v"], + "match": "0x48012057", + "mask": "0xfc0ff07f" + }, + "wfi": { + "encoding": "00010000010100000000000001110011", + "variable_fields": [], + "extension": ["rv_sm"], + "match": "0x10500073", + "mask": "0xffffffff" + }, + "wrs_nto": { + "encoding": "00000000110100000000000001110011", + "variable_fields": [], + "extension": ["rv_zawrs"], + "match": "0xd00073", + "mask": "0xffffffff" + }, + "wrs_sto": { + "encoding": "00000001110100000000000001110011", + "variable_fields": [], + "extension": ["rv_zawrs"], + "match": "0x1d00073", + "mask": "0xffffffff" + }, + "xnor": { + "encoding": "0100000----------100-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbb", "rv_zbkb", "rv_zk", "rv_zkn", "rv_zks"], + "match": "0x40004033", + "mask": "0xfe00707f" + }, + "xor": { + "encoding": "0000000----------100-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_i"], + "match": "0x4033", + "mask": "0xfe00707f" + }, + "xori": { + "encoding": "-----------------100-----0010011", + "variable_fields": ["rd", "rs1", "imm12"], + "extension": ["rv_i"], + "match": "0x4013", + "mask": "0x707f" + }, + "xperm4": { + "encoding": "0010100----------010-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zbkx"], + "match": "0x28002033", + "mask": "0xfe00707f" + }, + "xperm8": { + "encoding": "0010100----------100-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zbkx"], + "match": "0x28004033", + "mask": "0xfe00707f" + }, + "zext_h": { + "encoding": "000010000000-----100-----0111011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_b", "rv64_zbb"], + "match": "0x800403b", + "mask": "0xfff0707f" + }, + "zip": { + "encoding": "000010001111-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv32_zbkb"], + "match": "0x8f01013", + "mask": "0xfff0707f" + } +} diff --git a/backends/opcodes_maker/sorted_instr_dict.json b/backends/opcodes_maker/sorted_instr_dict.json new file mode 100644 index 000000000..dfd4e5b91 --- /dev/null +++ b/backends/opcodes_maker/sorted_instr_dict.json @@ -0,0 +1,8044 @@ +{ + "add": { + "encoding": "0000000----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_i"], + "match": "0x33", + "mask": "0xfe00707f" + }, + "add_uw": { + "encoding": "0000100----------000-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_b", "rv64_zba"], + "match": "0x800003b", + "mask": "0xfe00707f" + }, + "addi": { + "encoding": "-----------------000-----0010011", + "variable_fields": ["imm12", "rd", "rs1"], + "extension": ["rv_i"], + "match": "0x13", + "mask": "0x707f" + }, + "addiw": { + "encoding": "-----------------000-----0011011", + "variable_fields": ["imm12", "rd", "rs1"], + "extension": ["rv64_i"], + "match": "0x1b", + "mask": "0x707f" + }, + "addw": { + "encoding": "0000000----------000-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_i"], + "match": "0x3b", + "mask": "0xfe00707f" + }, + "aes32dsi": { + "encoding": "--10101----------000-----0110011", + "variable_fields": ["bs", "rd", "rs1", "rs2"], + "extension": ["rv32_zk", "rv32_zkn", "rv32_zknd"], + "match": "0x2a000033", + "mask": "0x3e00707f" + }, + "aes32dsmi": { + "encoding": "--10111----------000-----0110011", + "variable_fields": ["bs", "rd", "rs1", "rs2"], + "extension": ["rv32_zk", "rv32_zkn", "rv32_zknd"], + "match": "0x2e000033", + "mask": "0x3e00707f" + }, + "aes32esi": { + "encoding": "--10001----------000-----0110011", + "variable_fields": ["bs", "rd", "rs1", "rs2"], + "extension": ["rv32_zk", "rv32_zkn", "rv32_zkne"], + "match": "0x22000033", + "mask": "0x3e00707f" + }, + "aes32esmi": { + "encoding": "--10011----------000-----0110011", + "variable_fields": ["bs", "rd", "rs1", "rs2"], + "extension": ["rv32_zk", "rv32_zkn", "rv32_zkne"], + "match": "0x26000033", + "mask": "0x3e00707f" + }, + "aes64ds": { + "encoding": "0011101----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_zk", "rv64_zkn", "rv64_zknd"], + "match": "0x3a000033", + "mask": "0xfe00707f" + }, + "aes64dsm": { + "encoding": "0011111----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_zk", "rv64_zkn", "rv64_zknd"], + "match": "0x3e000033", + "mask": "0xfe00707f" + }, + "aes64es": { + "encoding": "0011001----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_zk", "rv64_zkn", "rv64_zkne"], + "match": "0x32000033", + "mask": "0xfe00707f" + }, + "aes64esm": { + "encoding": "0011011----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_zk", "rv64_zkn", "rv64_zkne"], + "match": "0x36000033", + "mask": "0xfe00707f" + }, + "aes64im": { + "encoding": "001100000000-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_zk", "rv64_zkn", "rv64_zknd"], + "match": "0x30001013", + "mask": "0xfff0707f" + }, + "aes64ks1i": { + "encoding": "00110001---------001-----0010011", + "variable_fields": ["rd", "rnum", "rs1"], + "extension": ["rv64_zk", "rv64_zkn", "rv64_zknd", "rv64_zkne"], + "match": "0x31001013", + "mask": "0xff00707f" + }, + "aes64ks2": { + "encoding": "0111111----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_zk", "rv64_zkn", "rv64_zknd", "rv64_zkne"], + "match": "0x7e000033", + "mask": "0xfe00707f" + }, + "amoadd_b": { + "encoding": "00000------------000-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv_zabha"], + "match": "0x2f", + "mask": "0xf800707f" + }, + "amoadd_d": { + "encoding": "00000------------011-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv64_a", "rv64_zaamo"], + "match": "0x302f", + "mask": "0xf800707f" + }, + "amoadd_h": { + "encoding": "00000------------001-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv_zabha"], + "match": "0x102f", + "mask": "0xf800707f" + }, + "amoadd_w": { + "encoding": "00000------------010-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv_a", "rv_zaamo"], + "match": "0x202f", + "mask": "0xf800707f" + }, + "amoand_b": { + "encoding": "01100------------000-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv_zabha"], + "match": "0x6000002f", + "mask": "0xf800707f" + }, + "amoand_d": { + "encoding": "01100------------011-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv64_a", "rv64_zaamo"], + "match": "0x6000302f", + "mask": "0xf800707f" + }, + "amoand_h": { + "encoding": "01100------------001-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv_zabha"], + "match": "0x6000102f", + "mask": "0xf800707f" + }, + "amoand_w": { + "encoding": "01100------------010-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv_a", "rv_zaamo"], + "match": "0x6000202f", + "mask": "0xf800707f" + }, + "amocas_b": { + "encoding": "00101------------000-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv_zabha"], + "match": "0x2800002f", + "mask": "0xf800707f" + }, + "amocas_d": { + "encoding": "00101------------011-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv_zacas"], + "match": "0x2800302f", + "mask": "0xf800707f" + }, + "amocas_h": { + "encoding": "00101------------001-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv_zabha"], + "match": "0x2800102f", + "mask": "0xf800707f" + }, + "amocas_q": { + "encoding": "00101------------100-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv64_zacas"], + "match": "0x2800402f", + "mask": "0xf800707f" + }, + "amocas_w": { + "encoding": "00101------------010-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv_zacas"], + "match": "0x2800202f", + "mask": "0xf800707f" + }, + "amomax_b": { + "encoding": "10100------------000-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv_zabha"], + "match": "0xa000002f", + "mask": "0xf800707f" + }, + "amomax_d": { + "encoding": "10100------------011-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv64_a", "rv64_zaamo"], + "match": "0xa000302f", + "mask": "0xf800707f" + }, + "amomax_h": { + "encoding": "10100------------001-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv_zabha"], + "match": "0xa000102f", + "mask": "0xf800707f" + }, + "amomax_w": { + "encoding": "10100------------010-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv_a", "rv_zaamo"], + "match": "0xa000202f", + "mask": "0xf800707f" + }, + "amomaxu_b": { + "encoding": "11100------------000-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv_zabha"], + "match": "0xe000002f", + "mask": "0xf800707f" + }, + "amomaxu_d": { + "encoding": "11100------------011-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv64_a", "rv64_zaamo"], + "match": "0xe000302f", + "mask": "0xf800707f" + }, + "amomaxu_h": { + "encoding": "11100------------001-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv_zabha"], + "match": "0xe000102f", + "mask": "0xf800707f" + }, + "amomaxu_w": { + "encoding": "11100------------010-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv_a", "rv_zaamo"], + "match": "0xe000202f", + "mask": "0xf800707f" + }, + "amomin_b": { + "encoding": "10000------------000-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv_zabha"], + "match": "0x8000002f", + "mask": "0xf800707f" + }, + "amomin_d": { + "encoding": "10000------------011-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv64_a", "rv64_zaamo"], + "match": "0x8000302f", + "mask": "0xf800707f" + }, + "amomin_h": { + "encoding": "10000------------001-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv_zabha"], + "match": "0x8000102f", + "mask": "0xf800707f" + }, + "amomin_w": { + "encoding": "10000------------010-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv_a", "rv_zaamo"], + "match": "0x8000202f", + "mask": "0xf800707f" + }, + "amominu_b": { + "encoding": "11000------------000-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv_zabha"], + "match": "0xc000002f", + "mask": "0xf800707f" + }, + "amominu_d": { + "encoding": "11000------------011-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv64_a", "rv64_zaamo"], + "match": "0xc000302f", + "mask": "0xf800707f" + }, + "amominu_h": { + "encoding": "11000------------001-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv_zabha"], + "match": "0xc000102f", + "mask": "0xf800707f" + }, + "amominu_w": { + "encoding": "11000------------010-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv_a", "rv_zaamo"], + "match": "0xc000202f", + "mask": "0xf800707f" + }, + "amoor_b": { + "encoding": "01000------------000-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv_zabha"], + "match": "0x4000002f", + "mask": "0xf800707f" + }, + "amoor_d": { + "encoding": "01000------------011-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv64_a", "rv64_zaamo"], + "match": "0x4000302f", + "mask": "0xf800707f" + }, + "amoor_h": { + "encoding": "01000------------001-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv_zabha"], + "match": "0x4000102f", + "mask": "0xf800707f" + }, + "amoor_w": { + "encoding": "01000------------010-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv_a", "rv_zaamo"], + "match": "0x4000202f", + "mask": "0xf800707f" + }, + "amoswap_b": { + "encoding": "00001------------000-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv_zabha"], + "match": "0x800002f", + "mask": "0xf800707f" + }, + "amoswap_d": { + "encoding": "00001------------011-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv64_a", "rv64_zaamo"], + "match": "0x800302f", + "mask": "0xf800707f" + }, + "amoswap_h": { + "encoding": "00001------------001-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv_zabha"], + "match": "0x800102f", + "mask": "0xf800707f" + }, + "amoswap_w": { + "encoding": "00001------------010-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv_a", "rv_zaamo"], + "match": "0x800202f", + "mask": "0xf800707f" + }, + "amoxor_b": { + "encoding": "00100------------000-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv_zabha"], + "match": "0x2000002f", + "mask": "0xf800707f" + }, + "amoxor_d": { + "encoding": "00100------------011-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv64_a", "rv64_zaamo"], + "match": "0x2000302f", + "mask": "0xf800707f" + }, + "amoxor_h": { + "encoding": "00100------------001-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv_zabha"], + "match": "0x2000102f", + "mask": "0xf800707f" + }, + "amoxor_w": { + "encoding": "00100------------010-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv_a", "rv_zaamo"], + "match": "0x2000202f", + "mask": "0xf800707f" + }, + "and": { + "encoding": "0000000----------111-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_i"], + "match": "0x7033", + "mask": "0xfe00707f" + }, + "andi": { + "encoding": "-----------------111-----0010011", + "variable_fields": ["imm12", "rd", "rs1"], + "extension": ["rv_i"], + "match": "0x7013", + "mask": "0x707f" + }, + "andn": { + "encoding": "0100000----------111-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbb", "rv_zbkb", "rv_zk", "rv_zkn", "rv_zks"], + "match": "0x40007033", + "mask": "0xfe00707f" + }, + "auipc": { + "encoding": "-------------------------0010111", + "variable_fields": ["imm20", "rd"], + "extension": ["rv_i"], + "match": "0x17", + "mask": "0x7f" + }, + "bclr": { + "encoding": "0100100----------001-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbs"], + "match": "0x48001033", + "mask": "0xfe00707f" + }, + "bclri": { + "encoding": "010010-----------001-----0010011", + "variable_fields": ["rd", "rs1", "shamtd"], + "extension": ["rv64_b", "rv64_zbs"], + "match": "0x48001013", + "mask": "0xfc00707f" + }, + "beq": { + "encoding": "-----------------000-----1100011", + "variable_fields": ["bimm12hi", "bimm12lo", "rs1", "rs2"], + "extension": ["rv_i"], + "match": "0x63", + "mask": "0x707f" + }, + "bext": { + "encoding": "0100100----------101-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbs"], + "match": "0x48005033", + "mask": "0xfe00707f" + }, + "bexti": { + "encoding": "010010-----------101-----0010011", + "variable_fields": ["rd", "rs1", "shamtd"], + "extension": ["rv64_b", "rv64_zbs"], + "match": "0x48005013", + "mask": "0xfc00707f" + }, + "bge": { + "encoding": "-----------------101-----1100011", + "variable_fields": ["bimm12hi", "bimm12lo", "rs1", "rs2"], + "extension": ["rv_i"], + "match": "0x5063", + "mask": "0x707f" + }, + "bgeu": { + "encoding": "-----------------111-----1100011", + "variable_fields": ["bimm12hi", "bimm12lo", "rs1", "rs2"], + "extension": ["rv_i"], + "match": "0x7063", + "mask": "0x707f" + }, + "binv": { + "encoding": "0110100----------001-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbs"], + "match": "0x68001033", + "mask": "0xfe00707f" + }, + "binvi": { + "encoding": "011010-----------001-----0010011", + "variable_fields": ["rd", "rs1", "shamtd"], + "extension": ["rv64_b", "rv64_zbs"], + "match": "0x68001013", + "mask": "0xfc00707f" + }, + "blt": { + "encoding": "-----------------100-----1100011", + "variable_fields": ["bimm12hi", "bimm12lo", "rs1", "rs2"], + "extension": ["rv_i"], + "match": "0x4063", + "mask": "0x707f" + }, + "bltu": { + "encoding": "-----------------110-----1100011", + "variable_fields": ["bimm12hi", "bimm12lo", "rs1", "rs2"], + "extension": ["rv_i"], + "match": "0x6063", + "mask": "0x707f" + }, + "bne": { + "encoding": "-----------------001-----1100011", + "variable_fields": ["bimm12hi", "bimm12lo", "rs1", "rs2"], + "extension": ["rv_i"], + "match": "0x1063", + "mask": "0x707f" + }, + "brev8": { + "encoding": "011010000111-----101-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_zbkb"], + "match": "0x68705013", + "mask": "0xfff0707f" + }, + "bset": { + "encoding": "0010100----------001-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbs"], + "match": "0x28001033", + "mask": "0xfe00707f" + }, + "bseti": { + "encoding": "001010-----------001-----0010011", + "variable_fields": ["rd", "rs1", "shamtd"], + "extension": ["rv64_b", "rv64_zbs"], + "match": "0x28001013", + "mask": "0xfc00707f" + }, + "c_add": { + "encoding": "----------------1001----------10", + "variable_fields": ["rd", "rs2"], + "extension": ["rv_c", "rv_zca"], + "match": "0x9002", + "mask": "0xf003" + }, + "c_addi": { + "encoding": "----------------000-----------01", + "variable_fields": ["rd"], + "extension": ["rv_c", "rv_zca"], + "match": "0x1", + "mask": "0xe003" + }, + "c_addi16sp": { + "encoding": "----------------011-00010-----01", + "variable_fields": [], + "extension": ["rv_c", "rv_zca"], + "match": "0x6101", + "mask": "0xef83" + }, + "c_addi4spn": { + "encoding": "----------------000-----------00", + "variable_fields": ["rd"], + "extension": ["rv_c", "rv_zca"], + "match": "0x0", + "mask": "0xe003" + }, + "c_addiw": { + "encoding": "----------------001-----------01", + "variable_fields": ["rd"], + "extension": ["rv64_c", "rv64_zca"], + "match": "0x2001", + "mask": "0xe003" + }, + "c_addw": { + "encoding": "----------------100111---01---01", + "variable_fields": ["rd", "rs2"], + "extension": ["rv64_c", "rv64_zca"], + "match": "0x9c21", + "mask": "0xfc63" + }, + "c_and": { + "encoding": "----------------100011---11---01", + "variable_fields": ["rd", "rs2"], + "extension": ["rv_c", "rv_zca"], + "match": "0x8c61", + "mask": "0xfc63" + }, + "c_andi": { + "encoding": "----------------100-10--------01", + "variable_fields": ["rd"], + "extension": ["rv_c", "rv_zca"], + "match": "0x8801", + "mask": "0xec03" + }, + "c_beqz": { + "encoding": "----------------110-----------01", + "variable_fields": ["rs1"], + "extension": ["rv_c", "rv_zca"], + "match": "0xc001", + "mask": "0xe003" + }, + "c_bnez": { + "encoding": "----------------111-----------01", + "variable_fields": ["rs1"], + "extension": ["rv_c", "rv_zca"], + "match": "0xe001", + "mask": "0xe003" + }, + "c_ebreak": { + "encoding": "----------------1001000000000010", + "variable_fields": [], + "extension": ["rv_c", "rv_zca"], + "match": "0x9002", + "mask": "0xffff" + }, + "c_fld": { + "encoding": "----------------001-----------00", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_c", "rv_d"], + "match": "0x2000", + "mask": "0xe003" + }, + "c_fldsp": { + "encoding": "----------------001-----------10", + "variable_fields": ["rd"], + "extension": ["rv_c", "rv_d"], + "match": "0x2002", + "mask": "0xe003" + }, + "c_flw": { + "encoding": "----------------011-----------00", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_c", "rv_f"], + "match": "0x6000", + "mask": "0xe003" + }, + "c_flwsp": { + "encoding": "----------------011-----------10", + "variable_fields": ["rd"], + "extension": ["rv_c", "rv_f"], + "match": "0x6002", + "mask": "0xe003" + }, + "c_fsd": { + "encoding": "----------------101-----------00", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv_c", "rv_d"], + "match": "0xa000", + "mask": "0xe003" + }, + "c_fsdsp": { + "encoding": "----------------101-----------10", + "variable_fields": ["rs2"], + "extension": ["rv_c", "rv_d"], + "match": "0xa002", + "mask": "0xe003" + }, + "c_fsw": { + "encoding": "----------------111-----------00", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv_c", "rv_f"], + "match": "0xe000", + "mask": "0xe003" + }, + "c_fswsp": { + "encoding": "----------------111-----------10", + "variable_fields": ["rs2"], + "extension": ["rv_c", "rv_f"], + "match": "0xe002", + "mask": "0xe003" + }, + "c_j": { + "encoding": "----------------101-----------01", + "variable_fields": [], + "extension": ["rv_c", "rv_zca"], + "match": "0xa001", + "mask": "0xe003" + }, + "c_jal": { + "encoding": "----------------001-----------01", + "variable_fields": [], + "extension": ["rv32_c", "rv32_zca"], + "match": "0x2001", + "mask": "0xe003" + }, + "c_jalr": { + "encoding": "----------------1001-----0000010", + "variable_fields": ["rs1"], + "extension": ["rv_c", "rv_zca"], + "match": "0x9002", + "mask": "0xf07f" + }, + "c_jr": { + "encoding": "----------------1000-----0000010", + "variable_fields": ["rs1"], + "extension": ["rv_c", "rv_zca"], + "match": "0x8002", + "mask": "0xf07f" + }, + "c_lbu": { + "encoding": "----------------100000--------00", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_zcb", "rv_zce"], + "match": "0x8000", + "mask": "0xfc03" + }, + "c_ld": { + "encoding": "----------------011-----------00", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_c", "rv64_zca"], + "match": "0x6000", + "mask": "0xe003" + }, + "c_ldsp": { + "encoding": "----------------011-----------10", + "variable_fields": ["rd"], + "extension": ["rv64_c", "rv64_zca"], + "match": "0x6002", + "mask": "0xe003" + }, + "c_li": { + "encoding": "----------------010-----------01", + "variable_fields": ["rd"], + "extension": ["rv_c", "rv_zca"], + "match": "0x4001", + "mask": "0xe003" + }, + "c_lui": { + "encoding": "----------------011-----------01", + "variable_fields": ["rd"], + "extension": ["rv_c", "rv_zca"], + "match": "0x6001", + "mask": "0xe003" + }, + "c_lw": { + "encoding": "----------------010-----------00", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_c", "rv_zca"], + "match": "0x4000", + "mask": "0xe003" + }, + "c_lwsp": { + "encoding": "----------------010-----------10", + "variable_fields": ["rd"], + "extension": ["rv_c", "rv_zca"], + "match": "0x4002", + "mask": "0xe003" + }, + "c_mul": { + "encoding": "----------------100111---10---01", + "variable_fields": ["rd", "rs2"], + "extension": ["rv_zcb", "rv_zmmul"], + "match": "0x9c41", + "mask": "0xfc63" + }, + "c_mv": { + "encoding": "----------------1000----------10", + "variable_fields": ["rd", "rs2"], + "extension": ["rv_c", "rv_zca"], + "match": "0x8002", + "mask": "0xf003" + }, + "c_nop": { + "encoding": "----------------000-00000-----01", + "variable_fields": [], + "extension": ["rv_c", "rv_zca"], + "match": "0x1", + "mask": "0xef83" + }, + "c_not": { + "encoding": "----------------100111---1110101", + "variable_fields": ["rd"], + "extension": ["rv_zcb", "rv_zce"], + "match": "0x9c75", + "mask": "0xfc7f" + }, + "c_or": { + "encoding": "----------------100011---10---01", + "variable_fields": ["rd", "rs2"], + "extension": ["rv_c", "rv_zca"], + "match": "0x8c41", + "mask": "0xfc63" + }, + "c_sb": { + "encoding": "----------------100010--------00", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv_zcb", "rv_zce"], + "match": "0x8800", + "mask": "0xfc03" + }, + "c_sd": { + "encoding": "----------------111-----------00", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv64_c", "rv64_zca"], + "match": "0xe000", + "mask": "0xe003" + }, + "c_sdsp": { + "encoding": "----------------111-----------10", + "variable_fields": ["rs2"], + "extension": ["rv64_c", "rv64_zca"], + "match": "0xe002", + "mask": "0xe003" + }, + "c_sext_b": { + "encoding": "----------------100111---1100101", + "variable_fields": ["rd"], + "extension": ["rv_zbb", "rv_zcb"], + "match": "0x9c65", + "mask": "0xfc7f" + }, + "c_sext_h": { + "encoding": "----------------100111---1101101", + "variable_fields": ["rd"], + "extension": ["rv_zbb", "rv_zcb"], + "match": "0x9c6d", + "mask": "0xfc7f" + }, + "c_slli": { + "encoding": "----------------000-----------10", + "variable_fields": ["rd", "shamt"], + "extension": ["rv64_c", "rv64_zca"], + "match": "0x2", + "mask": "0xe003" + }, + "c_srai": { + "encoding": "----------------100-01--------01", + "variable_fields": ["rd", "shamt"], + "extension": ["rv64_c", "rv64_zca"], + "match": "0x8401", + "mask": "0xec03" + }, + "c_srli": { + "encoding": "----------------100-00--------01", + "variable_fields": ["rd", "shamt"], + "extension": ["rv64_c", "rv64_zca"], + "match": "0x8001", + "mask": "0xec03" + }, + "c_sub": { + "encoding": "----------------100011---00---01", + "variable_fields": ["rd", "rs2"], + "extension": ["rv_c", "rv_zca"], + "match": "0x8c01", + "mask": "0xfc63" + }, + "c_subw": { + "encoding": "----------------100111---00---01", + "variable_fields": ["rd", "rs2"], + "extension": ["rv64_c", "rv64_zca"], + "match": "0x9c01", + "mask": "0xfc63" + }, + "c_sw": { + "encoding": "----------------110-----------00", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv_c", "rv_zca"], + "match": "0xc000", + "mask": "0xe003" + }, + "c_swsp": { + "encoding": "----------------110-----------10", + "variable_fields": ["rs2"], + "extension": ["rv_c", "rv_zca"], + "match": "0xc002", + "mask": "0xe003" + }, + "c_xor": { + "encoding": "----------------100011---01---01", + "variable_fields": ["rd", "rs2"], + "extension": ["rv_c", "rv_zca"], + "match": "0x8c21", + "mask": "0xfc63" + }, + "c_zext_b": { + "encoding": "----------------100111---1100001", + "variable_fields": ["rd"], + "extension": ["rv_zbb", "rv_zcb"], + "match": "0x9c61", + "mask": "0xfc7f" + }, + "c_zext_h": { + "encoding": "----------------100111---1101001", + "variable_fields": ["rd"], + "extension": ["rv_zbb", "rv_zcb"], + "match": "0x9c69", + "mask": "0xfc7f" + }, + "c_zext_w": { + "encoding": "----------------100111---1110001", + "variable_fields": ["rd"], + "extension": ["rv64_zbb", "rv64_zcb"], + "match": "0x9c71", + "mask": "0xfc7f" + }, + "cbo_clean": { + "encoding": "000000000001-----010000000001111", + "variable_fields": ["rs1"], + "extension": ["rv_zicbom"], + "match": "0x10200f", + "mask": "0xfff07fff" + }, + "cbo_flush": { + "encoding": "000000000010-----010000000001111", + "variable_fields": ["rs1"], + "extension": ["rv_zicbom"], + "match": "0x20200f", + "mask": "0xfff07fff" + }, + "cbo_inval": { + "encoding": "000000000000-----010000000001111", + "variable_fields": ["rs1"], + "extension": ["rv_zicbom"], + "match": "0x200f", + "mask": "0xfff07fff" + }, + "cbo_zero": { + "encoding": "000000000100-----010000000001111", + "variable_fields": ["rs1"], + "extension": ["rv_zicboz"], + "match": "0x40200f", + "mask": "0xfff07fff" + }, + "clmul": { + "encoding": "0000101----------001-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbc", "rv_zbkc", "rv_zk", "rv_zkn", "rv_zks"], + "match": "0xa001033", + "mask": "0xfe00707f" + }, + "clmulh": { + "encoding": "0000101----------011-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbc", "rv_zbkc", "rv_zk", "rv_zkn", "rv_zks"], + "match": "0xa003033", + "mask": "0xfe00707f" + }, + "clmulr": { + "encoding": "0000101----------010-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbc"], + "match": "0xa002033", + "mask": "0xfe00707f" + }, + "clz": { + "encoding": "011000000000-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_b", "rv_zbb"], + "match": "0x60001013", + "mask": "0xfff0707f" + }, + "clzw": { + "encoding": "011000000000-----001-----0011011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_b", "rv64_zbb"], + "match": "0x6000101b", + "mask": "0xfff0707f" + }, + "cm_mva01s": { + "encoding": "----------------101011---11---10", + "variable_fields": [], + "extension": ["rv_zcmp"], + "match": "0xac62", + "mask": "0xfc63" + }, + "cm_mvsa01": { + "encoding": "----------------101011---01---10", + "variable_fields": [], + "extension": ["rv_zcmp"], + "match": "0xac22", + "mask": "0xfc63" + }, + "cm_pop": { + "encoding": "----------------10111010------10", + "variable_fields": [], + "extension": ["rv_zcmp"], + "match": "0xba02", + "mask": "0xff03" + }, + "cm_popret": { + "encoding": "----------------10111110------10", + "variable_fields": [], + "extension": ["rv_zcmp"], + "match": "0xbe02", + "mask": "0xff03" + }, + "cm_popretz": { + "encoding": "----------------10111100------10", + "variable_fields": [], + "extension": ["rv_zcmp"], + "match": "0xbc02", + "mask": "0xff03" + }, + "cm_push": { + "encoding": "----------------10111000------10", + "variable_fields": [], + "extension": ["rv_zcmp"], + "match": "0xb802", + "mask": "0xff03" + }, + "cpop": { + "encoding": "011000000010-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_b", "rv_zbb"], + "match": "0x60201013", + "mask": "0xfff0707f" + }, + "cpopw": { + "encoding": "011000000010-----001-----0011011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_b", "rv64_zbb"], + "match": "0x6020101b", + "mask": "0xfff0707f" + }, + "csrrc": { + "encoding": "-----------------011-----1110011", + "variable_fields": ["csr", "rd", "rs1"], + "extension": ["rv_zicsr"], + "match": "0x3073", + "mask": "0x707f" + }, + "csrrci": { + "encoding": "-----------------111-----1110011", + "variable_fields": ["csr", "rd"], + "extension": ["rv_zicsr"], + "match": "0x7073", + "mask": "0x707f" + }, + "csrrs": { + "encoding": "-----------------010-----1110011", + "variable_fields": ["csr", "rd", "rs1"], + "extension": ["rv_zicsr"], + "match": "0x2073", + "mask": "0x707f" + }, + "csrrsi": { + "encoding": "-----------------110-----1110011", + "variable_fields": ["csr", "rd"], + "extension": ["rv_zicsr"], + "match": "0x6073", + "mask": "0x707f" + }, + "csrrw": { + "encoding": "-----------------001-----1110011", + "variable_fields": ["csr", "rd", "rs1"], + "extension": ["rv_zicsr"], + "match": "0x1073", + "mask": "0x707f" + }, + "csrrwi": { + "encoding": "-----------------101-----1110011", + "variable_fields": ["csr", "rd", "zimm"], + "extension": ["rv_zicsr"], + "match": "0x5073", + "mask": "0x707f" + }, + "ctz": { + "encoding": "011000000001-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_b", "rv_zbb"], + "match": "0x60101013", + "mask": "0xfff0707f" + }, + "ctzw": { + "encoding": "011000000001-----001-----0011011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_b", "rv64_zbb"], + "match": "0x6010101b", + "mask": "0xfff0707f" + }, + "czero_eqz": { + "encoding": "0000111----------101-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zicond"], + "match": "0xe005033", + "mask": "0xfe00707f" + }, + "czero_nez": { + "encoding": "0000111----------111-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zicond"], + "match": "0xe007033", + "mask": "0xfe00707f" + }, + "div": { + "encoding": "0000001----------100-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_m"], + "match": "0x2004033", + "mask": "0xfe00707f" + }, + "divu": { + "encoding": "0000001----------101-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_m"], + "match": "0x2005033", + "mask": "0xfe00707f" + }, + "divuw": { + "encoding": "0000001----------101-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_m"], + "match": "0x200503b", + "mask": "0xfe00707f" + }, + "divw": { + "encoding": "0000001----------100-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_m"], + "match": "0x200403b", + "mask": "0xfe00707f" + }, + "dret": { + "encoding": "01111011001000000000000001110011", + "variable_fields": [], + "extension": ["rv_sdext"], + "match": "0x7b200073", + "mask": "0xffffffff" + }, + "ebreak": { + "encoding": "00000000000100000000000001110011", + "variable_fields": [], + "extension": ["rv_i"], + "match": "0x100073", + "mask": "0xffffffff" + }, + "ecall": { + "encoding": "00000000000000000000000001110011", + "variable_fields": [], + "extension": ["rv_i"], + "match": "0x73", + "mask": "0xffffffff" + }, + "fadd_d": { + "encoding": "0000001------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_d"], + "match": "0x2000053", + "mask": "0xfe00007f" + }, + "fadd_h": { + "encoding": "0000010------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_zfh"], + "match": "0x4000053", + "mask": "0xfe00007f" + }, + "fadd_q": { + "encoding": "0000011------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_q"], + "match": "0x6000053", + "mask": "0xfe00007f" + }, + "fadd_s": { + "encoding": "0000000------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_f"], + "match": "0x53", + "mask": "0xfe00007f" + }, + "fclass_d": { + "encoding": "111000100000-----001-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_d"], + "match": "0xe2001053", + "mask": "0xfff0707f" + }, + "fclass_h": { + "encoding": "111001000000-----001-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_zfh"], + "match": "0xe4001053", + "mask": "0xfff0707f" + }, + "fclass_q": { + "encoding": "111001100000-----001-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_q"], + "match": "0xe6001053", + "mask": "0xfff0707f" + }, + "fclass_s": { + "encoding": "111000000000-----001-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_f"], + "match": "0xe0001053", + "mask": "0xfff0707f" + }, + "fcvt_bf16_s": { + "encoding": "010001001000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_zfbfmin"], + "match": "0x44800053", + "mask": "0xfff0007f" + }, + "fcvt_d_h": { + "encoding": "010000100010-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_d", "rv_zfh"], + "match": "0x42200053", + "mask": "0xfff0007f" + }, + "fcvt_d_l": { + "encoding": "110100100010-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_d"], + "match": "0xd2200053", + "mask": "0xfff0007f" + }, + "fcvt_d_lu": { + "encoding": "110100100011-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_d"], + "match": "0xd2300053", + "mask": "0xfff0007f" + }, + "fcvt_d_q": { + "encoding": "010000100011-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_q"], + "match": "0x42300053", + "mask": "0xfff0007f" + }, + "fcvt_d_s": { + "encoding": "010000100000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_d"], + "match": "0x42000053", + "mask": "0xfff0007f" + }, + "fcvt_d_w": { + "encoding": "110100100000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_d"], + "match": "0xd2000053", + "mask": "0xfff0007f" + }, + "fcvt_d_wu": { + "encoding": "110100100001-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_d"], + "match": "0xd2100053", + "mask": "0xfff0007f" + }, + "fcvt_h_d": { + "encoding": "010001000001-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_d", "rv_zfh"], + "match": "0x44100053", + "mask": "0xfff0007f" + }, + "fcvt_h_l": { + "encoding": "110101000010-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_zfh"], + "match": "0xd4200053", + "mask": "0xfff0007f" + }, + "fcvt_h_lu": { + "encoding": "110101000011-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_zfh"], + "match": "0xd4300053", + "mask": "0xfff0007f" + }, + "fcvt_h_q": { + "encoding": "010001000011-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_q", "rv_zfh"], + "match": "0x44300053", + "mask": "0xfff0007f" + }, + "fcvt_h_s": { + "encoding": "010001000000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_zfh", "rv_zfhmin"], + "match": "0x44000053", + "mask": "0xfff0007f" + }, + "fcvt_h_w": { + "encoding": "110101000000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_zfh"], + "match": "0xd4000053", + "mask": "0xfff0007f" + }, + "fcvt_h_wu": { + "encoding": "110101000001-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_zfh"], + "match": "0xd4100053", + "mask": "0xfff0007f" + }, + "fcvt_l_d": { + "encoding": "110000100010-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_d"], + "match": "0xc2200053", + "mask": "0xfff0007f" + }, + "fcvt_l_h": { + "encoding": "110001000010-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_zfh"], + "match": "0xc4200053", + "mask": "0xfff0007f" + }, + "fcvt_l_q": { + "encoding": "110001100010-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_q"], + "match": "0xc6200053", + "mask": "0xfff0007f" + }, + "fcvt_l_s": { + "encoding": "110000000010-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_f"], + "match": "0xc0200053", + "mask": "0xfff0007f" + }, + "fcvt_lu_d": { + "encoding": "110000100011-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_d"], + "match": "0xc2300053", + "mask": "0xfff0007f" + }, + "fcvt_lu_h": { + "encoding": "110001000011-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_zfh"], + "match": "0xc4300053", + "mask": "0xfff0007f" + }, + "fcvt_lu_q": { + "encoding": "110001100011-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_q"], + "match": "0xc6300053", + "mask": "0xfff0007f" + }, + "fcvt_lu_s": { + "encoding": "110000000011-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_f"], + "match": "0xc0300053", + "mask": "0xfff0007f" + }, + "fcvt_q_d": { + "encoding": "010001100001-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_q"], + "match": "0x46100053", + "mask": "0xfff0007f" + }, + "fcvt_q_h": { + "encoding": "010001100010-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_q", "rv_zfh"], + "match": "0x46200053", + "mask": "0xfff0007f" + }, + "fcvt_q_l": { + "encoding": "110101100010-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_q"], + "match": "0xd6200053", + "mask": "0xfff0007f" + }, + "fcvt_q_lu": { + "encoding": "110101100011-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_q"], + "match": "0xd6300053", + "mask": "0xfff0007f" + }, + "fcvt_q_s": { + "encoding": "010001100000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_q"], + "match": "0x46000053", + "mask": "0xfff0007f" + }, + "fcvt_q_w": { + "encoding": "110101100000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_q"], + "match": "0xd6000053", + "mask": "0xfff0007f" + }, + "fcvt_q_wu": { + "encoding": "110101100001-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_q"], + "match": "0xd6100053", + "mask": "0xfff0007f" + }, + "fcvt_s_bf16": { + "encoding": "010000000110-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_zfbfmin"], + "match": "0x40600053", + "mask": "0xfff0007f" + }, + "fcvt_s_d": { + "encoding": "010000000001-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_d"], + "match": "0x40100053", + "mask": "0xfff0007f" + }, + "fcvt_s_h": { + "encoding": "010000000010-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_zfh", "rv_zfhmin"], + "match": "0x40200053", + "mask": "0xfff0007f" + }, + "fcvt_s_l": { + "encoding": "110100000010-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_f"], + "match": "0xd0200053", + "mask": "0xfff0007f" + }, + "fcvt_s_lu": { + "encoding": "110100000011-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv64_f"], + "match": "0xd0300053", + "mask": "0xfff0007f" + }, + "fcvt_s_q": { + "encoding": "010000000011-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_q"], + "match": "0x40300053", + "mask": "0xfff0007f" + }, + "fcvt_s_w": { + "encoding": "110100000000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_f"], + "match": "0xd0000053", + "mask": "0xfff0007f" + }, + "fcvt_s_wu": { + "encoding": "110100000001-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_f"], + "match": "0xd0100053", + "mask": "0xfff0007f" + }, + "fcvt_w_d": { + "encoding": "110000100000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_d"], + "match": "0xc2000053", + "mask": "0xfff0007f" + }, + "fcvt_w_h": { + "encoding": "110001000000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_zfh"], + "match": "0xc4000053", + "mask": "0xfff0007f" + }, + "fcvt_w_q": { + "encoding": "110001100000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_q"], + "match": "0xc6000053", + "mask": "0xfff0007f" + }, + "fcvt_w_s": { + "encoding": "110000000000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_f"], + "match": "0xc0000053", + "mask": "0xfff0007f" + }, + "fcvt_wu_d": { + "encoding": "110000100001-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_d"], + "match": "0xc2100053", + "mask": "0xfff0007f" + }, + "fcvt_wu_h": { + "encoding": "110001000001-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_zfh"], + "match": "0xc4100053", + "mask": "0xfff0007f" + }, + "fcvt_wu_q": { + "encoding": "110001100001-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_q"], + "match": "0xc6100053", + "mask": "0xfff0007f" + }, + "fcvt_wu_s": { + "encoding": "110000000001-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_f"], + "match": "0xc0100053", + "mask": "0xfff0007f" + }, + "fcvtmod_w_d": { + "encoding": "110000101000-----001-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_d", "rv_zfa"], + "match": "0xc2801053", + "mask": "0xfff0707f" + }, + "fdiv_d": { + "encoding": "0001101------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_d"], + "match": "0x1a000053", + "mask": "0xfe00007f" + }, + "fdiv_h": { + "encoding": "0001110------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_zfh"], + "match": "0x1c000053", + "mask": "0xfe00007f" + }, + "fdiv_q": { + "encoding": "0001111------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_q"], + "match": "0x1e000053", + "mask": "0xfe00007f" + }, + "fdiv_s": { + "encoding": "0001100------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_f"], + "match": "0x18000053", + "mask": "0xfe00007f" + }, + "fence": { + "encoding": "-----------------000-----0001111", + "variable_fields": ["pred", "rd", "rm", "rs1", "succ"], + "extension": ["rv_i"], + "match": "0xf", + "mask": "0x707f" + }, + "fence_i": { + "encoding": "-----------------001-----0001111", + "variable_fields": ["imm12", "rd", "rs1"], + "extension": ["rv_zifencei"], + "match": "0x100f", + "mask": "0x707f" + }, + "feq_d": { + "encoding": "1010001----------010-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_d"], + "match": "0xa2002053", + "mask": "0xfe00707f" + }, + "feq_h": { + "encoding": "1010010----------010-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfh"], + "match": "0xa4002053", + "mask": "0xfe00707f" + }, + "feq_q": { + "encoding": "1010011----------010-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_q"], + "match": "0xa6002053", + "mask": "0xfe00707f" + }, + "feq_s": { + "encoding": "1010000----------010-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_f"], + "match": "0xa0002053", + "mask": "0xfe00707f" + }, + "fld": { + "encoding": "-----------------011-----0000111", + "variable_fields": ["imm12", "rd", "rs1"], + "extension": ["rv_d"], + "match": "0x3007", + "mask": "0x707f" + }, + "fle_d": { + "encoding": "1010001----------000-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_d"], + "match": "0xa2000053", + "mask": "0xfe00707f" + }, + "fle_h": { + "encoding": "1010010----------000-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfh"], + "match": "0xa4000053", + "mask": "0xfe00707f" + }, + "fle_q": { + "encoding": "1010011----------000-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_q"], + "match": "0xa6000053", + "mask": "0xfe00707f" + }, + "fle_s": { + "encoding": "1010000----------000-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_f"], + "match": "0xa0000053", + "mask": "0xfe00707f" + }, + "fleq_d": { + "encoding": "1010001----------100-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_d", "rv_zfa"], + "match": "0xa2004053", + "mask": "0xfe00707f" + }, + "fleq_h": { + "encoding": "1010010----------100-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfa", "rv_zfh"], + "match": "0xa4004053", + "mask": "0xfe00707f" + }, + "fleq_q": { + "encoding": "1010011----------100-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_q", "rv_zfa"], + "match": "0xa6004053", + "mask": "0xfe00707f" + }, + "fleq_s": { + "encoding": "1010000----------100-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfa"], + "match": "0xa0004053", + "mask": "0xfe00707f" + }, + "flh": { + "encoding": "-----------------001-----0000111", + "variable_fields": ["imm12", "rd", "rs1"], + "extension": ["rv_zfh", "rv_zfhmin", "rv_zhinx"], + "match": "0x1007", + "mask": "0x707f" + }, + "fli_d": { + "encoding": "111100100001-----000-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_d", "rv_zfa"], + "match": "0xf2100053", + "mask": "0xfff0707f" + }, + "fli_h": { + "encoding": "111101000001-----000-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_zfa", "rv_zfh"], + "match": "0xf4100053", + "mask": "0xfff0707f" + }, + "fli_q": { + "encoding": "111101100001-----000-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_q", "rv_zfa"], + "match": "0xf6100053", + "mask": "0xfff0707f" + }, + "fli_s": { + "encoding": "111100000001-----000-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_zfa"], + "match": "0xf0100053", + "mask": "0xfff0707f" + }, + "flq": { + "encoding": "-----------------100-----0000111", + "variable_fields": ["imm12", "rd", "rs1"], + "extension": ["rv_q"], + "match": "0x4007", + "mask": "0x707f" + }, + "flt_d": { + "encoding": "1010001----------001-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_d"], + "match": "0xa2001053", + "mask": "0xfe00707f" + }, + "flt_h": { + "encoding": "1010010----------001-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfh"], + "match": "0xa4001053", + "mask": "0xfe00707f" + }, + "flt_q": { + "encoding": "1010011----------001-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_q"], + "match": "0xa6001053", + "mask": "0xfe00707f" + }, + "flt_s": { + "encoding": "1010000----------001-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_f"], + "match": "0xa0001053", + "mask": "0xfe00707f" + }, + "fltq_d": { + "encoding": "1010001----------101-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_d", "rv_zfa"], + "match": "0xa2005053", + "mask": "0xfe00707f" + }, + "fltq_h": { + "encoding": "1010010----------101-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfa", "rv_zfh"], + "match": "0xa4005053", + "mask": "0xfe00707f" + }, + "fltq_q": { + "encoding": "1010011----------101-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_q", "rv_zfa"], + "match": "0xa6005053", + "mask": "0xfe00707f" + }, + "fltq_s": { + "encoding": "1010000----------101-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfa"], + "match": "0xa0005053", + "mask": "0xfe00707f" + }, + "flw": { + "encoding": "-----------------010-----0000111", + "variable_fields": ["imm12", "rd", "rs1"], + "extension": ["rv_f"], + "match": "0x2007", + "mask": "0x707f" + }, + "fmadd_d": { + "encoding": "-----01------------------1000011", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_d"], + "match": "0x2000043", + "mask": "0x600007f" + }, + "fmadd_h": { + "encoding": "-----10------------------1000011", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_zfh"], + "match": "0x4000043", + "mask": "0x600007f" + }, + "fmadd_q": { + "encoding": "-----11------------------1000011", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_q"], + "match": "0x6000043", + "mask": "0x600007f" + }, + "fmadd_s": { + "encoding": "-----00------------------1000011", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_f"], + "match": "0x43", + "mask": "0x600007f" + }, + "fmax_d": { + "encoding": "0010101----------001-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_d"], + "match": "0x2a001053", + "mask": "0xfe00707f" + }, + "fmax_h": { + "encoding": "0010110----------001-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfh"], + "match": "0x2c001053", + "mask": "0xfe00707f" + }, + "fmax_q": { + "encoding": "0010111----------001-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_q"], + "match": "0x2e001053", + "mask": "0xfe00707f" + }, + "fmax_s": { + "encoding": "0010100----------001-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_f"], + "match": "0x28001053", + "mask": "0xfe00707f" + }, + "fmaxm_d": { + "encoding": "0010101----------011-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_d", "rv_zfa"], + "match": "0x2a003053", + "mask": "0xfe00707f" + }, + "fmaxm_h": { + "encoding": "0010110----------011-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfa", "rv_zfh"], + "match": "0x2c003053", + "mask": "0xfe00707f" + }, + "fmaxm_q": { + "encoding": "0010111----------011-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_q", "rv_zfa"], + "match": "0x2e003053", + "mask": "0xfe00707f" + }, + "fmaxm_s": { + "encoding": "0010100----------011-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfa"], + "match": "0x28003053", + "mask": "0xfe00707f" + }, + "fmin_d": { + "encoding": "0010101----------000-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_d"], + "match": "0x2a000053", + "mask": "0xfe00707f" + }, + "fmin_h": { + "encoding": "0010110----------000-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfh"], + "match": "0x2c000053", + "mask": "0xfe00707f" + }, + "fmin_q": { + "encoding": "0010111----------000-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_q"], + "match": "0x2e000053", + "mask": "0xfe00707f" + }, + "fmin_s": { + "encoding": "0010100----------000-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_f"], + "match": "0x28000053", + "mask": "0xfe00707f" + }, + "fminm_d": { + "encoding": "0010101----------010-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_d", "rv_zfa"], + "match": "0x2a002053", + "mask": "0xfe00707f" + }, + "fminm_h": { + "encoding": "0010110----------010-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfa", "rv_zfh"], + "match": "0x2c002053", + "mask": "0xfe00707f" + }, + "fminm_q": { + "encoding": "0010111----------010-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_q", "rv_zfa"], + "match": "0x2e002053", + "mask": "0xfe00707f" + }, + "fminm_s": { + "encoding": "0010100----------010-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfa"], + "match": "0x28002053", + "mask": "0xfe00707f" + }, + "fmsub_d": { + "encoding": "-----01------------------1000111", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_d"], + "match": "0x2000047", + "mask": "0x600007f" + }, + "fmsub_h": { + "encoding": "-----10------------------1000111", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_zfh"], + "match": "0x4000047", + "mask": "0x600007f" + }, + "fmsub_q": { + "encoding": "-----11------------------1000111", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_q"], + "match": "0x6000047", + "mask": "0x600007f" + }, + "fmsub_s": { + "encoding": "-----00------------------1000111", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_f"], + "match": "0x47", + "mask": "0x600007f" + }, + "fmul_d": { + "encoding": "0001001------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_d"], + "match": "0x12000053", + "mask": "0xfe00007f" + }, + "fmul_h": { + "encoding": "0001010------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_zfh"], + "match": "0x14000053", + "mask": "0xfe00007f" + }, + "fmul_q": { + "encoding": "0001011------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_q"], + "match": "0x16000053", + "mask": "0xfe00007f" + }, + "fmul_s": { + "encoding": "0001000------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_f"], + "match": "0x10000053", + "mask": "0xfe00007f" + }, + "fmv_d_x": { + "encoding": "111100100000-----000-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_d"], + "match": "0xf2000053", + "mask": "0xfff0707f" + }, + "fmv_h_x": { + "encoding": "111101000000-----000-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_f"], + "match": "0xf4000053", + "mask": "0xfff0707f" + }, + "fmv_w_x": { + "encoding": "111100000000-----000-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_f"], + "match": "0xf0000053", + "mask": "0xfff0707f" + }, + "fmv_x_d": { + "encoding": "111000100000-----000-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_d"], + "match": "0xe2000053", + "mask": "0xfff0707f" + }, + "fmv_x_h": { + "encoding": "111001000000-----000-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_zfh", "rv_zfhmin", "rv_zhinx"], + "match": "0xe4000053", + "mask": "0xfff0707f" + }, + "fmv_x_w": { + "encoding": "111000000000-----000-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_f"], + "match": "0xe0000053", + "mask": "0xfff0707f" + }, + "fmvh_x_d": { + "encoding": "111000100001-----000-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv32_d", "rv32_zfa"], + "match": "0xe2100053", + "mask": "0xfff0707f" + }, + "fmvh_x_q": { + "encoding": "111001100001-----000-----1010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_q", "rv64_zfa"], + "match": "0xe6100053", + "mask": "0xfff0707f" + }, + "fmvp_d_x": { + "encoding": "1011001----------000-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv32_d", "rv32_zfa"], + "match": "0xb2000053", + "mask": "0xfe00707f" + }, + "fmvp_q_x": { + "encoding": "1011011----------000-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_q", "rv64_zfa"], + "match": "0xb6000053", + "mask": "0xfe00707f" + }, + "fnmadd_d": { + "encoding": "-----01------------------1001111", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_d"], + "match": "0x200004f", + "mask": "0x600007f" + }, + "fnmadd_h": { + "encoding": "-----10------------------1001111", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_zfh"], + "match": "0x400004f", + "mask": "0x600007f" + }, + "fnmadd_q": { + "encoding": "-----11------------------1001111", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_q"], + "match": "0x600004f", + "mask": "0x600007f" + }, + "fnmadd_s": { + "encoding": "-----00------------------1001111", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_f"], + "match": "0x4f", + "mask": "0x600007f" + }, + "fnmsub_d": { + "encoding": "-----01------------------1001011", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_d"], + "match": "0x200004b", + "mask": "0x600007f" + }, + "fnmsub_h": { + "encoding": "-----10------------------1001011", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_zfh"], + "match": "0x400004b", + "mask": "0x600007f" + }, + "fnmsub_q": { + "encoding": "-----11------------------1001011", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_q"], + "match": "0x600004b", + "mask": "0x600007f" + }, + "fnmsub_s": { + "encoding": "-----00------------------1001011", + "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], + "extension": ["rv_f"], + "match": "0x4b", + "mask": "0x600007f" + }, + "fround_d": { + "encoding": "010000100100-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_d", "rv_zfa"], + "match": "0x42400053", + "mask": "0xfff0007f" + }, + "fround_h": { + "encoding": "010001000100-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_zfa", "rv_zfh"], + "match": "0x44400053", + "mask": "0xfff0007f" + }, + "fround_q": { + "encoding": "010001100100-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_q", "rv_zfa"], + "match": "0x46400053", + "mask": "0xfff0007f" + }, + "fround_s": { + "encoding": "010000000100-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_zfa"], + "match": "0x40400053", + "mask": "0xfff0007f" + }, + "froundnx_d": { + "encoding": "010000100101-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_d", "rv_zfa"], + "match": "0x42500053", + "mask": "0xfff0007f" + }, + "froundnx_h": { + "encoding": "010001000101-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_zfa", "rv_zfh"], + "match": "0x44500053", + "mask": "0xfff0007f" + }, + "froundnx_q": { + "encoding": "010001100101-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_q", "rv_zfa"], + "match": "0x46500053", + "mask": "0xfff0007f" + }, + "froundnx_s": { + "encoding": "010000000101-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_zfa"], + "match": "0x40500053", + "mask": "0xfff0007f" + }, + "fsd": { + "encoding": "-----------------011-----0100111", + "variable_fields": ["imm12hi", "imm12lo", "rs1", "rs2"], + "extension": ["rv_d"], + "match": "0x3027", + "mask": "0x707f" + }, + "fsgnj_d": { + "encoding": "0010001----------000-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_d"], + "match": "0x22000053", + "mask": "0xfe00707f" + }, + "fsgnj_h": { + "encoding": "0010010----------000-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfh"], + "match": "0x24000053", + "mask": "0xfe00707f" + }, + "fsgnj_q": { + "encoding": "0010011----------000-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_q"], + "match": "0x26000053", + "mask": "0xfe00707f" + }, + "fsgnj_s": { + "encoding": "0010000----------000-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_f"], + "match": "0x20000053", + "mask": "0xfe00707f" + }, + "fsgnjn_d": { + "encoding": "0010001----------001-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_d"], + "match": "0x22001053", + "mask": "0xfe00707f" + }, + "fsgnjn_h": { + "encoding": "0010010----------001-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfh"], + "match": "0x24001053", + "mask": "0xfe00707f" + }, + "fsgnjn_q": { + "encoding": "0010011----------001-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_q"], + "match": "0x26001053", + "mask": "0xfe00707f" + }, + "fsgnjn_s": { + "encoding": "0010000----------001-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_f"], + "match": "0x20001053", + "mask": "0xfe00707f" + }, + "fsgnjx_d": { + "encoding": "0010001----------010-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_d"], + "match": "0x22002053", + "mask": "0xfe00707f" + }, + "fsgnjx_h": { + "encoding": "0010010----------010-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zfh"], + "match": "0x24002053", + "mask": "0xfe00707f" + }, + "fsgnjx_q": { + "encoding": "0010011----------010-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_q"], + "match": "0x26002053", + "mask": "0xfe00707f" + }, + "fsgnjx_s": { + "encoding": "0010000----------010-----1010011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_f"], + "match": "0x20002053", + "mask": "0xfe00707f" + }, + "fsh": { + "encoding": "-----------------001-----0100111", + "variable_fields": ["imm12hi", "imm12lo", "rs1", "rs2"], + "extension": ["rv_zfh", "rv_zfhmin", "rv_zhinx"], + "match": "0x1027", + "mask": "0x707f" + }, + "fsq": { + "encoding": "-----------------100-----0100111", + "variable_fields": ["imm12hi", "imm12lo", "rs1", "rs2"], + "extension": ["rv_q"], + "match": "0x4027", + "mask": "0x707f" + }, + "fsqrt_d": { + "encoding": "010110100000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_d"], + "match": "0x5a000053", + "mask": "0xfff0007f" + }, + "fsqrt_h": { + "encoding": "010111000000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_zfh"], + "match": "0x5c000053", + "mask": "0xfff0007f" + }, + "fsqrt_q": { + "encoding": "010111100000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_q"], + "match": "0x5e000053", + "mask": "0xfff0007f" + }, + "fsqrt_s": { + "encoding": "010110000000-------------1010011", + "variable_fields": ["rd", "rm", "rs1"], + "extension": ["rv_f"], + "match": "0x58000053", + "mask": "0xfff0007f" + }, + "fsub_d": { + "encoding": "0000101------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_d"], + "match": "0xa000053", + "mask": "0xfe00007f" + }, + "fsub_h": { + "encoding": "0000110------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_zfh"], + "match": "0xc000053", + "mask": "0xfe00007f" + }, + "fsub_q": { + "encoding": "0000111------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_q"], + "match": "0xe000053", + "mask": "0xfe00007f" + }, + "fsub_s": { + "encoding": "0000100------------------1010011", + "variable_fields": ["rd", "rm", "rs1", "rs2"], + "extension": ["rv_f"], + "match": "0x8000053", + "mask": "0xfe00007f" + }, + "fsw": { + "encoding": "-----------------010-----0100111", + "variable_fields": ["imm12hi", "imm12lo", "rs1", "rs2"], + "extension": ["rv_f"], + "match": "0x2027", + "mask": "0x707f" + }, + "hfence_gvma": { + "encoding": "0110001----------000000001110011", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv_h"], + "match": "0x62000073", + "mask": "0xfe007fff" + }, + "hfence_vvma": { + "encoding": "0010001----------000000001110011", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv_h"], + "match": "0x22000073", + "mask": "0xfe007fff" + }, + "hinval_gvma": { + "encoding": "0110011----------000000001110011", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv_h", "rv_svinval"], + "match": "0x66000073", + "mask": "0xfe007fff" + }, + "hinval_vvma": { + "encoding": "0010011----------000000001110011", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv_h", "rv_svinval"], + "match": "0x26000073", + "mask": "0xfe007fff" + }, + "hlv_b": { + "encoding": "011000000000-----100-----1110011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_h"], + "match": "0x60004073", + "mask": "0xfff0707f" + }, + "hlv_bu": { + "encoding": "011000000001-----100-----1110011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_h"], + "match": "0x60104073", + "mask": "0xfff0707f" + }, + "hlv_d": { + "encoding": "011011000000-----100-----1110011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_h"], + "match": "0x6c004073", + "mask": "0xfff0707f" + }, + "hlv_h": { + "encoding": "011001000000-----100-----1110011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_h"], + "match": "0x64004073", + "mask": "0xfff0707f" + }, + "hlv_hu": { + "encoding": "011001000001-----100-----1110011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_h"], + "match": "0x64104073", + "mask": "0xfff0707f" + }, + "hlv_w": { + "encoding": "011010000000-----100-----1110011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_h"], + "match": "0x68004073", + "mask": "0xfff0707f" + }, + "hlv_wu": { + "encoding": "011010000001-----100-----1110011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_h"], + "match": "0x68104073", + "mask": "0xfff0707f" + }, + "hlvx_hu": { + "encoding": "011001000011-----100-----1110011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_h"], + "match": "0x64304073", + "mask": "0xfff0707f" + }, + "hlvx_wu": { + "encoding": "011010000011-----100-----1110011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_h"], + "match": "0x68304073", + "mask": "0xfff0707f" + }, + "hsv_b": { + "encoding": "0110001----------100000001110011", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv_h"], + "match": "0x62004073", + "mask": "0xfe007fff" + }, + "hsv_d": { + "encoding": "0110111----------100000001110011", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv64_h"], + "match": "0x6e004073", + "mask": "0xfe007fff" + }, + "hsv_h": { + "encoding": "0110011----------100000001110011", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv_h"], + "match": "0x66004073", + "mask": "0xfe007fff" + }, + "hsv_w": { + "encoding": "0110101----------100000001110011", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv_h"], + "match": "0x6a004073", + "mask": "0xfe007fff" + }, + "jal": { + "encoding": "-------------------------1101111", + "variable_fields": ["rd"], + "extension": ["rv_i"], + "match": "0x6f", + "mask": "0x7f" + }, + "jalr": { + "encoding": "-----------------000-----1100111", + "variable_fields": ["imm12", "rd", "rs1"], + "extension": ["rv_i"], + "match": "0x67", + "mask": "0x707f" + }, + "lb": { + "encoding": "-----------------000-----0000011", + "variable_fields": ["imm12", "rd", "rs1"], + "extension": ["rv_i"], + "match": "0x3", + "mask": "0x707f" + }, + "lb_aq": { + "encoding": "001101-00000-----000-----0101111", + "variable_fields": ["rd", "rl", "rs1"], + "extension": ["rv_zalasr"], + "match": "0x3400002f", + "mask": "0xfdf0707f" + }, + "lbu": { + "encoding": "-----------------100-----0000011", + "variable_fields": ["imm12", "rd", "rs1"], + "extension": ["rv_i"], + "match": "0x4003", + "mask": "0x707f" + }, + "ld": { + "encoding": "-----------------011-----0000011", + "variable_fields": ["imm12", "rd", "rs1"], + "extension": ["rv64_i"], + "match": "0x3003", + "mask": "0x707f" + }, + "ld_aq": { + "encoding": "001101-00000-----011-----0101111", + "variable_fields": ["rd", "rl", "rs1"], + "extension": ["rv_zalasr"], + "match": "0x3400302f", + "mask": "0xfdf0707f" + }, + "lh": { + "encoding": "-----------------001-----0000011", + "variable_fields": ["imm12", "rd", "rs1"], + "extension": ["rv_i"], + "match": "0x1003", + "mask": "0x707f" + }, + "lh_aq": { + "encoding": "001101-00000-----001-----0101111", + "variable_fields": ["rd", "rl", "rs1"], + "extension": ["rv_zalasr"], + "match": "0x3400102f", + "mask": "0xfdf0707f" + }, + "lhu": { + "encoding": "-----------------101-----0000011", + "variable_fields": ["imm12", "rd", "rs1"], + "extension": ["rv_i"], + "match": "0x5003", + "mask": "0x707f" + }, + "lpad": { + "encoding": "--------------------000000010111", + "variable_fields": ["imm20"], + "extension": ["rv_zicfilp"], + "match": "0x17", + "mask": "0xfff" + }, + "lr_d": { + "encoding": "00010--00000-----011-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1"], + "extension": ["rv64_a", "rv64_zalrsc"], + "match": "0x1000302f", + "mask": "0xf9f0707f" + }, + "lr_w": { + "encoding": "00010--00000-----010-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1"], + "extension": ["rv_a", "rv_zalrsc"], + "match": "0x1000202f", + "mask": "0xf9f0707f" + }, + "lui": { + "encoding": "-------------------------0110111", + "variable_fields": ["imm20", "rd"], + "extension": ["rv_i"], + "match": "0x37", + "mask": "0x7f" + }, + "lw": { + "encoding": "-----------------010-----0000011", + "variable_fields": ["imm12", "rd", "rs1"], + "extension": ["rv_i"], + "match": "0x2003", + "mask": "0x707f" + }, + "lw_aq": { + "encoding": "001101-00000-----010-----0101111", + "variable_fields": ["rd", "rl", "rs1"], + "extension": ["rv_zalasr"], + "match": "0x3400202f", + "mask": "0xfdf0707f" + }, + "lwu": { + "encoding": "-----------------110-----0000011", + "variable_fields": ["imm12", "rd", "rs1"], + "extension": ["rv64_i"], + "match": "0x6003", + "mask": "0x707f" + }, + "max": { + "encoding": "0000101----------110-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbb"], + "match": "0xa006033", + "mask": "0xfe00707f" + }, + "maxu": { + "encoding": "0000101----------111-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbb"], + "match": "0xa007033", + "mask": "0xfe00707f" + }, + "min": { + "encoding": "0000101----------100-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbb"], + "match": "0xa004033", + "mask": "0xfe00707f" + }, + "minu": { + "encoding": "0000101----------101-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbb"], + "match": "0xa005033", + "mask": "0xfe00707f" + }, + "mnret": { + "encoding": "01110000001000000000000001110011", + "variable_fields": [], + "extension": ["rv_smrnmi"], + "match": "0x70200073", + "mask": "0xffffffff" + }, + "mop_r_n": { + "encoding": "1-00--0111-------100-----1110011", + "variable_fields": [ + "mop_r_t_21_20", + "mop_r_t_27_26", + "mop_r_t_30", + "rd", + "rs1" + ], + "extension": ["rv_zimop"], + "match": "0x81c04073", + "mask": "0xb3c0707f" + }, + "mop_rr_n": { + "encoding": "1-00--1----------100-----1110011", + "variable_fields": ["mop_rr_t_27_26", "mop_rr_t_30", "rd", "rs1", "rs2"], + "extension": ["rv_zimop"], + "match": "0x82004073", + "mask": "0xb200707f" + }, + "mret": { + "encoding": "00110000001000000000000001110011", + "variable_fields": [], + "extension": ["rv_sm"], + "match": "0x30200073", + "mask": "0xffffffff" + }, + "mul": { + "encoding": "0000001----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_m", "rv_zmmul"], + "match": "0x2000033", + "mask": "0xfe00707f" + }, + "mulh": { + "encoding": "0000001----------001-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_m", "rv_zmmul"], + "match": "0x2001033", + "mask": "0xfe00707f" + }, + "mulhsu": { + "encoding": "0000001----------010-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_m", "rv_zmmul"], + "match": "0x2002033", + "mask": "0xfe00707f" + }, + "mulhu": { + "encoding": "0000001----------011-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_m", "rv_zmmul"], + "match": "0x2003033", + "mask": "0xfe00707f" + }, + "mulw": { + "encoding": "0000001----------000-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_m", "rv64_zmmul"], + "match": "0x200003b", + "mask": "0xfe00707f" + }, + "or": { + "encoding": "0000000----------110-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_i"], + "match": "0x6033", + "mask": "0xfe00707f" + }, + "orc_b": { + "encoding": "001010000111-----101-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_b", "rv_zbb"], + "match": "0x28705013", + "mask": "0xfff0707f" + }, + "ori": { + "encoding": "-----------------110-----0010011", + "variable_fields": ["imm12", "rd", "rs1"], + "extension": ["rv_i"], + "match": "0x6013", + "mask": "0x707f" + }, + "orn": { + "encoding": "0100000----------110-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbb", "rv_zbkb", "rv_zk", "rv_zkn", "rv_zks"], + "match": "0x40006033", + "mask": "0xfe00707f" + }, + "pack": { + "encoding": "0000100----------100-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zbkb", "rv_zk", "rv_zkn", "rv_zks"], + "match": "0x8004033", + "mask": "0xfe00707f" + }, + "packh": { + "encoding": "0000100----------111-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zbkb", "rv_zk", "rv_zkn", "rv_zks"], + "match": "0x8007033", + "mask": "0xfe00707f" + }, + "packw": { + "encoding": "0000100----------100-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_zbkb", "rv64_zk", "rv64_zkn", "rv64_zks"], + "match": "0x800403b", + "mask": "0xfe00707f" + }, + "rem": { + "encoding": "0000001----------110-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_m"], + "match": "0x2006033", + "mask": "0xfe00707f" + }, + "remu": { + "encoding": "0000001----------111-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_m"], + "match": "0x2007033", + "mask": "0xfe00707f" + }, + "remuw": { + "encoding": "0000001----------111-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_m"], + "match": "0x200703b", + "mask": "0xfe00707f" + }, + "remw": { + "encoding": "0000001----------110-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_m"], + "match": "0x200603b", + "mask": "0xfe00707f" + }, + "rev8": { + "encoding": "011010111000-----101-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_b", "rv64_zbb", "rv64_zbkb"], + "match": "0x6b805013", + "mask": "0xfff0707f" + }, + "rol": { + "encoding": "0110000----------001-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbb", "rv_zbkb", "rv_zk", "rv_zkn", "rv_zks"], + "match": "0x60001033", + "mask": "0xfe00707f" + }, + "rolw": { + "encoding": "0110000----------001-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": [ + "rv64_b", + "rv64_zbb", + "rv64_zbkb", + "rv64_zk", + "rv64_zkn", + "rv64_zks" + ], + "match": "0x6000103b", + "mask": "0xfe00707f" + }, + "ror": { + "encoding": "0110000----------101-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbb", "rv_zbkb", "rv_zk", "rv_zkn", "rv_zks"], + "match": "0x60005033", + "mask": "0xfe00707f" + }, + "rori": { + "encoding": "011000-----------101-----0010011", + "variable_fields": ["rd", "rs1", "shamtd"], + "extension": [ + "rv64_b", + "rv64_zbb", + "rv64_zbkb", + "rv64_zk", + "rv64_zkn", + "rv64_zks" + ], + "match": "0x60005013", + "mask": "0xfc00707f" + }, + "roriw": { + "encoding": "0110000----------101-----0011011", + "variable_fields": ["rd", "rs1", "shamtw"], + "extension": [ + "rv64_b", + "rv64_zbb", + "rv64_zbkb", + "rv64_zk", + "rv64_zkn", + "rv64_zks" + ], + "match": "0x6000501b", + "mask": "0xfe00707f" + }, + "rorw": { + "encoding": "0110000----------101-----0111011", + "variable_fields": ["rd", "rs1"], + "extension": [ + "rv64_b", + "rv64_zbb", + "rv64_zbkb", + "rv64_zk", + "rv64_zkn", + "rv64_zks" + ], + "match": "0x6000503b", + "mask": "0xfe00707f" + }, + "sb": { + "encoding": "-----------------000-----0100011", + "variable_fields": ["imm12hi", "imm12lo", "rs1", "rs2"], + "extension": ["rv_i"], + "match": "0x23", + "mask": "0x707f" + }, + "sb_rl": { + "encoding": "00111-1----------000000000101111", + "variable_fields": ["aq", "rs1", "rs2"], + "extension": ["rv_zalasr"], + "match": "0x3a00002f", + "mask": "0xfa007fff" + }, + "sc_d": { + "encoding": "00011------------011-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv64_a", "rv64_zalrsc"], + "match": "0x1800302f", + "mask": "0xf800707f" + }, + "sc_w": { + "encoding": "00011------------010-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv_a", "rv_zalrsc"], + "match": "0x1800202f", + "mask": "0xf800707f" + }, + "sctrclr": { + "encoding": "00010000010000000000000001110011", + "variable_fields": [], + "extension": ["rv_smdbltrp"], + "match": "0x10400073", + "mask": "0xffffffff" + }, + "sd": { + "encoding": "-----------------011-----0100011", + "variable_fields": ["imm12hi", "imm12lo", "rs1", "rs2"], + "extension": ["rv64_i"], + "match": "0x3023", + "mask": "0x707f" + }, + "sd_rl": { + "encoding": "00111-1----------011000000101111", + "variable_fields": ["aq", "rs1", "rs2"], + "extension": ["rv_zalasr"], + "match": "0x3a00302f", + "mask": "0xfa007fff" + }, + "sext_b": { + "encoding": "011000000100-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_b", "rv_zbb"], + "match": "0x60401013", + "mask": "0xfff0707f" + }, + "sext_h": { + "encoding": "011000000101-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_b", "rv_zbb"], + "match": "0x60501013", + "mask": "0xfff0707f" + }, + "sfence_inval_ir": { + "encoding": "00011000000100000000000001110011", + "variable_fields": [], + "extension": ["rv_svinval"], + "match": "0x18100073", + "mask": "0xffffffff" + }, + "sfence_vma": { + "encoding": "0001001----------000000001110011", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv_s"], + "match": "0x12000073", + "mask": "0xfe007fff" + }, + "sfence_w_inval": { + "encoding": "00011000000000000000000001110011", + "variable_fields": [], + "extension": ["rv_svinval"], + "match": "0x18000073", + "mask": "0xffffffff" + }, + "sh": { + "encoding": "-----------------001-----0100011", + "variable_fields": ["imm12hi", "imm12lo", "rs1", "rs2"], + "extension": ["rv_i"], + "match": "0x1023", + "mask": "0x707f" + }, + "sh1add": { + "encoding": "0010000----------010-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zba"], + "match": "0x20002033", + "mask": "0xfe00707f" + }, + "sh1add_uw": { + "encoding": "0010000----------010-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_b", "rv64_zba"], + "match": "0x2000203b", + "mask": "0xfe00707f" + }, + "sh2add": { + "encoding": "0010000----------100-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zba"], + "match": "0x20004033", + "mask": "0xfe00707f" + }, + "sh2add_uw": { + "encoding": "0010000----------100-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_b", "rv64_zba"], + "match": "0x2000403b", + "mask": "0xfe00707f" + }, + "sh3add": { + "encoding": "0010000----------110-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zba"], + "match": "0x20006033", + "mask": "0xfe00707f" + }, + "sh3add_uw": { + "encoding": "0010000----------110-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_b", "rv64_zba"], + "match": "0x2000603b", + "mask": "0xfe00707f" + }, + "sh_rl": { + "encoding": "00111-1----------001000000101111", + "variable_fields": ["aq", "rs1", "rs2"], + "extension": ["rv_zalasr"], + "match": "0x3a00102f", + "mask": "0xfa007fff" + }, + "sha256sig0": { + "encoding": "000100000010-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_zk", "rv_zkn", "rv_zknh"], + "match": "0x10201013", + "mask": "0xfff0707f" + }, + "sha256sig1": { + "encoding": "000100000011-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_zk", "rv_zkn", "rv_zknh"], + "match": "0x10301013", + "mask": "0xfff0707f" + }, + "sha256sum0": { + "encoding": "000100000000-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_zk", "rv_zkn", "rv_zknh"], + "match": "0x10001013", + "mask": "0xfff0707f" + }, + "sha256sum1": { + "encoding": "000100000001-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_zk", "rv_zkn", "rv_zknh"], + "match": "0x10101013", + "mask": "0xfff0707f" + }, + "sha512sig0": { + "encoding": "000100000110-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_zk", "rv64_zkn", "rv64_zknh"], + "match": "0x10601013", + "mask": "0xfff0707f" + }, + "sha512sig0h": { + "encoding": "0101110----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv32_zk", "rv32_zkn", "rv32_zknh"], + "match": "0x5c000033", + "mask": "0xfe00707f" + }, + "sha512sig0l": { + "encoding": "0101010----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv32_zk", "rv32_zkn", "rv32_zknh"], + "match": "0x54000033", + "mask": "0xfe00707f" + }, + "sha512sig1": { + "encoding": "000100000111-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_zk", "rv64_zkn", "rv64_zknh"], + "match": "0x10701013", + "mask": "0xfff0707f" + }, + "sha512sig1h": { + "encoding": "0101111----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv32_zk", "rv32_zkn", "rv32_zknh"], + "match": "0x5e000033", + "mask": "0xfe00707f" + }, + "sha512sig1l": { + "encoding": "0101011----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv32_zk", "rv32_zkn", "rv32_zknh"], + "match": "0x56000033", + "mask": "0xfe00707f" + }, + "sha512sum0": { + "encoding": "000100000100-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_zk", "rv64_zkn", "rv64_zknh"], + "match": "0x10401013", + "mask": "0xfff0707f" + }, + "sha512sum0r": { + "encoding": "0101000----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv32_zk", "rv32_zkn", "rv32_zknh"], + "match": "0x50000033", + "mask": "0xfe00707f" + }, + "sha512sum1": { + "encoding": "000100000101-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_zk", "rv64_zkn", "rv64_zknh"], + "match": "0x10501013", + "mask": "0xfff0707f" + }, + "sha512sum1r": { + "encoding": "0101001----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv32_zk", "rv32_zkn", "rv32_zknh"], + "match": "0x52000033", + "mask": "0xfe00707f" + }, + "sinval_vma": { + "encoding": "0001011----------000000001110011", + "variable_fields": ["rs1", "rs2"], + "extension": ["rv_svinval"], + "match": "0x16000073", + "mask": "0xfe007fff" + }, + "sll": { + "encoding": "0000000----------001-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_i"], + "match": "0x1033", + "mask": "0xfe00707f" + }, + "slli": { + "encoding": "000000-----------001-----0010011", + "variable_fields": ["rd", "rs1", "shamtd"], + "extension": ["rv64_i"], + "match": "0x1013", + "mask": "0xfc00707f" + }, + "slli_uw": { + "encoding": "000010-----------001-----0011011", + "variable_fields": ["rd", "rs1", "shamtd"], + "extension": ["rv64_b", "rv64_zba"], + "match": "0x800101b", + "mask": "0xfc00707f" + }, + "slliw": { + "encoding": "0000000----------001-----0011011", + "variable_fields": ["rd", "rs1", "shamtw"], + "extension": ["rv64_i"], + "match": "0x101b", + "mask": "0xfe00707f" + }, + "sllw": { + "encoding": "0000000----------001-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_i"], + "match": "0x103b", + "mask": "0xfe00707f" + }, + "slt": { + "encoding": "0000000----------010-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_i"], + "match": "0x2033", + "mask": "0xfe00707f" + }, + "slti": { + "encoding": "-----------------010-----0010011", + "variable_fields": ["imm12", "rd", "rs1"], + "extension": ["rv_i"], + "match": "0x2013", + "mask": "0x707f" + }, + "sltiu": { + "encoding": "-----------------011-----0010011", + "variable_fields": ["imm12", "rd", "rs1"], + "extension": ["rv_i"], + "match": "0x3013", + "mask": "0x707f" + }, + "sltu": { + "encoding": "0000000----------011-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_i"], + "match": "0x3033", + "mask": "0xfe00707f" + }, + "sm3p0": { + "encoding": "000100001000-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_zks", "rv_zksh"], + "match": "0x10801013", + "mask": "0xfff0707f" + }, + "sm3p1": { + "encoding": "000100001001-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv_zks", "rv_zksh"], + "match": "0x10901013", + "mask": "0xfff0707f" + }, + "sm4ed": { + "encoding": "--11000----------000-----0110011", + "variable_fields": ["bs", "rd", "rs1", "rs2"], + "extension": ["rv_zks", "rv_zksed"], + "match": "0x30000033", + "mask": "0x3e00707f" + }, + "sm4ks": { + "encoding": "--11010----------000-----0110011", + "variable_fields": ["bs", "rd", "rs1", "rs2"], + "extension": ["rv_zks", "rv_zksed"], + "match": "0x34000033", + "mask": "0x3e00707f" + }, + "sra": { + "encoding": "0100000----------101-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_i"], + "match": "0x40005033", + "mask": "0xfe00707f" + }, + "srai": { + "encoding": "010000-----------101-----0010011", + "variable_fields": ["rd", "rs1", "shamtd"], + "extension": ["rv64_i"], + "match": "0x40005013", + "mask": "0xfc00707f" + }, + "sraiw": { + "encoding": "0100000----------101-----0011011", + "variable_fields": ["rd", "rs1", "shamtw"], + "extension": ["rv64_i"], + "match": "0x4000501b", + "mask": "0xfe00707f" + }, + "sraw": { + "encoding": "0100000----------101-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_i"], + "match": "0x4000503b", + "mask": "0xfe00707f" + }, + "sret": { + "encoding": "00010000001000000000000001110011", + "variable_fields": [], + "extension": ["rv_s"], + "match": "0x10200073", + "mask": "0xffffffff" + }, + "srl": { + "encoding": "0000000----------101-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_i"], + "match": "0x5033", + "mask": "0xfe00707f" + }, + "srli": { + "encoding": "000000-----------101-----0010011", + "variable_fields": ["rd", "rs1", "shamtd"], + "extension": ["rv64_i"], + "match": "0x5013", + "mask": "0xfc00707f" + }, + "srliw": { + "encoding": "0000000----------101-----0011011", + "variable_fields": ["rd", "rs1", "shamtw"], + "extension": ["rv64_i"], + "match": "0x501b", + "mask": "0xfe00707f" + }, + "srlw": { + "encoding": "0000000----------101-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_i"], + "match": "0x503b", + "mask": "0xfe00707f" + }, + "ssamoswap_d": { + "encoding": "01001------------011-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv_zicfiss"], + "match": "0x4800302f", + "mask": "0xf800707f" + }, + "ssamoswap_w": { + "encoding": "01001------------010-----0101111", + "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], + "extension": ["rv_zicfiss"], + "match": "0x4800202f", + "mask": "0xf800707f" + }, + "sspopchk_x1": { + "encoding": "11001101110000001100000001110011", + "variable_fields": [], + "extension": ["rv_zicfiss"], + "match": "0xcdc0c073", + "mask": "0xffffffff" + }, + "sspopchk_x5": { + "encoding": "11001101110000101100000001110011", + "variable_fields": [], + "extension": ["rv_zicfiss"], + "match": "0xcdc2c073", + "mask": "0xffffffff" + }, + "sspush_x1": { + "encoding": "11001110000100000100000001110011", + "variable_fields": [], + "extension": ["rv_zicfiss"], + "match": "0xce104073", + "mask": "0xffffffff" + }, + "sspush_x5": { + "encoding": "11001110010100000100000001110011", + "variable_fields": [], + "extension": ["rv_zicfiss"], + "match": "0xce504073", + "mask": "0xffffffff" + }, + "ssrdp": { + "encoding": "11001101110000000100-----1110011", + "variable_fields": ["rd"], + "extension": ["rv_zicfiss"], + "match": "0xcdc04073", + "mask": "0xfffff07f" + }, + "sub": { + "encoding": "0100000----------000-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_i"], + "match": "0x40000033", + "mask": "0xfe00707f" + }, + "subw": { + "encoding": "0100000----------000-----0111011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv64_i"], + "match": "0x4000003b", + "mask": "0xfe00707f" + }, + "sw": { + "encoding": "-----------------010-----0100011", + "variable_fields": ["imm12hi", "imm12lo", "rs1", "rs2"], + "extension": ["rv_i"], + "match": "0x2023", + "mask": "0x707f" + }, + "sw_rl": { + "encoding": "00111-1----------010000000101111", + "variable_fields": ["aq", "rs1", "rs2"], + "extension": ["rv_zalasr"], + "match": "0x3a00202f", + "mask": "0xfa007fff" + }, + "unzip": { + "encoding": "000010001111-----101-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv32_zbkb"], + "match": "0x8f05013", + "mask": "0xfff0707f" + }, + "vaadd_vv": { + "encoding": "001001-----------010-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x24002057", + "mask": "0xfc00707f" + }, + "vaadd_vx": { + "encoding": "001001-----------110-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x24006057", + "mask": "0xfc00707f" + }, + "vaaddu_vv": { + "encoding": "001000-----------010-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x20002057", + "mask": "0xfc00707f" + }, + "vaaddu_vx": { + "encoding": "001000-----------110-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x20006057", + "mask": "0xfc00707f" + }, + "vadc_vim": { + "encoding": "0100000----------011-----1010111", + "variable_fields": ["simm5", "vd", "vs2"], + "extension": ["rv_v"], + "match": "0x40003057", + "mask": "0xfe00707f" + }, + "vadc_vvm": { + "encoding": "0100000----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x40000057", + "mask": "0xfe00707f" + }, + "vadc_vxm": { + "encoding": "0100000----------100-----1010111", + "variable_fields": ["rs1", "vd", "vs2"], + "extension": ["rv_v"], + "match": "0x40004057", + "mask": "0xfe00707f" + }, + "vadd_vi": { + "encoding": "000000-----------011-----1010111", + "variable_fields": ["simm5", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x3057", + "mask": "0xfc00707f" + }, + "vadd_vv": { + "encoding": "000000-----------000-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x57", + "mask": "0xfc00707f" + }, + "vadd_vx": { + "encoding": "000000-----------100-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x4057", + "mask": "0xfc00707f" + }, + "vaesdf_vs": { + "encoding": "1010011-----00001010-----1110111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_zvkn", "rv_zvkned"], + "match": "0xa600a077", + "mask": "0xfe0ff07f" + }, + "vaesdf_vv": { + "encoding": "1010001-----00001010-----1110111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_zvkn", "rv_zvkned"], + "match": "0xa200a077", + "mask": "0xfe0ff07f" + }, + "vaesdm_vs": { + "encoding": "1010011-----00000010-----1110111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_zvkn", "rv_zvkned"], + "match": "0xa6002077", + "mask": "0xfe0ff07f" + }, + "vaesdm_vv": { + "encoding": "1010001-----00000010-----1110111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_zvkn", "rv_zvkned"], + "match": "0xa2002077", + "mask": "0xfe0ff07f" + }, + "vaesef_vs": { + "encoding": "1010011-----00011010-----1110111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_zvkn", "rv_zvkned"], + "match": "0xa601a077", + "mask": "0xfe0ff07f" + }, + "vaesef_vv": { + "encoding": "1010001-----00011010-----1110111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_zvkn", "rv_zvkned"], + "match": "0xa201a077", + "mask": "0xfe0ff07f" + }, + "vaesem_vs": { + "encoding": "1010011-----00010010-----1110111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_zvkn", "rv_zvkned"], + "match": "0xa6012077", + "mask": "0xfe0ff07f" + }, + "vaesem_vv": { + "encoding": "1010001-----00010010-----1110111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_zvkn", "rv_zvkned"], + "match": "0xa2012077", + "mask": "0xfe0ff07f" + }, + "vaeskf1_vi": { + "encoding": "1000101----------010-----1110111", + "variable_fields": ["vd", "vs2", "zimm5"], + "extension": ["rv_zvkn", "rv_zvkned"], + "match": "0x8a002077", + "mask": "0xfe00707f" + }, + "vaeskf2_vi": { + "encoding": "1010101----------010-----1110111", + "variable_fields": ["vd", "vs2", "zimm5"], + "extension": ["rv_zvkn", "rv_zvkned"], + "match": "0xaa002077", + "mask": "0xfe00707f" + }, + "vaesz_vs": { + "encoding": "1010011-----00111010-----1110111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_zvkn", "rv_zvkned"], + "match": "0xa603a077", + "mask": "0xfe0ff07f" + }, + "vand_vi": { + "encoding": "001001-----------011-----1010111", + "variable_fields": ["simm5", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x24003057", + "mask": "0xfc00707f" + }, + "vand_vv": { + "encoding": "001001-----------000-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x24000057", + "mask": "0xfc00707f" + }, + "vand_vx": { + "encoding": "001001-----------100-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x24004057", + "mask": "0xfc00707f" + }, + "vandn_vv": { + "encoding": "000001-----------000-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0x4000057", + "mask": "0xfc00707f" + }, + "vandn_vx": { + "encoding": "000001-----------100-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0x4004057", + "mask": "0xfc00707f" + }, + "vasub_vv": { + "encoding": "001011-----------010-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x2c002057", + "mask": "0xfc00707f" + }, + "vasub_vx": { + "encoding": "001011-----------110-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x2c006057", + "mask": "0xfc00707f" + }, + "vasubu_vv": { + "encoding": "001010-----------010-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x28002057", + "mask": "0xfc00707f" + }, + "vasubu_vx": { + "encoding": "001010-----------110-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x28006057", + "mask": "0xfc00707f" + }, + "vbrev8_v": { + "encoding": "010010------01000010-----1010111", + "variable_fields": ["vd", "vm", "vs2"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0x48042057", + "mask": "0xfc0ff07f" + }, + "vbrev_v": { + "encoding": "010010------01010010-----1010111", + "variable_fields": ["vd", "vm", "vs2"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0x48052057", + "mask": "0xfc0ff07f" + }, + "vclmul_vv": { + "encoding": "001100-----------010-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_zvbc", "rv_zvkn", "rv_zvks"], + "match": "0x30002057", + "mask": "0xfc00707f" + }, + "vclmul_vx": { + "encoding": "001100-----------110-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_zvbc", "rv_zvkn", "rv_zvks"], + "match": "0x30006057", + "mask": "0xfc00707f" + }, + "vclmulh_vv": { + "encoding": "001101-----------010-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_zvbc", "rv_zvkn", "rv_zvks"], + "match": "0x34002057", + "mask": "0xfc00707f" + }, + "vclmulh_vx": { + "encoding": "001101-----------110-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_zvbc", "rv_zvkn", "rv_zvks"], + "match": "0x34006057", + "mask": "0xfc00707f" + }, + "vclz_v": { + "encoding": "010010------01100010-----1010111", + "variable_fields": ["vd", "vm", "vs2"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0x48062057", + "mask": "0xfc0ff07f" + }, + "vcompress_vm": { + "encoding": "0101111----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x5e002057", + "mask": "0xfe00707f" + }, + "vcpop_m": { + "encoding": "010000------10000010-----1010111", + "variable_fields": ["rd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x40082057", + "mask": "0xfc0ff07f" + }, + "vcpop_v": { + "encoding": "010010------01110010-----1010111", + "variable_fields": ["vd", "vm", "vs2"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0x48072057", + "mask": "0xfc0ff07f" + }, + "vctz_v": { + "encoding": "010010------01101010-----1010111", + "variable_fields": ["vd", "vm", "vs2"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0x4806a057", + "mask": "0xfc0ff07f" + }, + "vdiv_vv": { + "encoding": "100001-----------010-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x84002057", + "mask": "0xfc00707f" + }, + "vdiv_vx": { + "encoding": "100001-----------110-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x84006057", + "mask": "0xfc00707f" + }, + "vdivu_vv": { + "encoding": "100000-----------010-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x80002057", + "mask": "0xfc00707f" + }, + "vdivu_vx": { + "encoding": "100000-----------110-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x80006057", + "mask": "0xfc00707f" + }, + "vfadd_vf": { + "encoding": "000000-----------101-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x5057", + "mask": "0xfc00707f" + }, + "vfadd_vv": { + "encoding": "000000-----------001-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x1057", + "mask": "0xfc00707f" + }, + "vfclass_v": { + "encoding": "010011------10000001-----1010111", + "variable_fields": ["vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x4c081057", + "mask": "0xfc0ff07f" + }, + "vfcvt_f_x_v": { + "encoding": "010010------00011001-----1010111", + "variable_fields": ["vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x48019057", + "mask": "0xfc0ff07f" + }, + "vfcvt_f_xu_v": { + "encoding": "010010------00010001-----1010111", + "variable_fields": ["vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x48011057", + "mask": "0xfc0ff07f" + }, + "vfcvt_rtz_x_f_v": { + "encoding": "010010------00111001-----1010111", + "variable_fields": ["vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x48039057", + "mask": "0xfc0ff07f" + }, + "vfcvt_rtz_xu_f_v": { + "encoding": "010010------00110001-----1010111", + "variable_fields": ["vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x48031057", + "mask": "0xfc0ff07f" + }, + "vfcvt_x_f_v": { + "encoding": "010010------00001001-----1010111", + "variable_fields": ["vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x48009057", + "mask": "0xfc0ff07f" + }, + "vfcvt_xu_f_v": { + "encoding": "010010------00000001-----1010111", + "variable_fields": ["vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x48001057", + "mask": "0xfc0ff07f" + }, + "vfdiv_vf": { + "encoding": "100000-----------101-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x80005057", + "mask": "0xfc00707f" + }, + "vfdiv_vv": { + "encoding": "100000-----------001-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x80001057", + "mask": "0xfc00707f" + }, + "vfirst_m": { + "encoding": "010000------10001010-----1010111", + "variable_fields": ["rd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x4008a057", + "mask": "0xfc0ff07f" + }, + "vfmacc_vf": { + "encoding": "101100-----------101-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xb0005057", + "mask": "0xfc00707f" + }, + "vfmacc_vv": { + "encoding": "101100-----------001-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xb0001057", + "mask": "0xfc00707f" + }, + "vfmadd_vf": { + "encoding": "101000-----------101-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xa0005057", + "mask": "0xfc00707f" + }, + "vfmadd_vv": { + "encoding": "101000-----------001-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xa0001057", + "mask": "0xfc00707f" + }, + "vfmax_vf": { + "encoding": "000110-----------101-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x18005057", + "mask": "0xfc00707f" + }, + "vfmax_vv": { + "encoding": "000110-----------001-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x18001057", + "mask": "0xfc00707f" + }, + "vfmerge_vfm": { + "encoding": "0101110----------101-----1010111", + "variable_fields": ["rs1", "vd", "vs2"], + "extension": ["rv_v"], + "match": "0x5c005057", + "mask": "0xfe00707f" + }, + "vfmin_vf": { + "encoding": "000100-----------101-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x10005057", + "mask": "0xfc00707f" + }, + "vfmin_vv": { + "encoding": "000100-----------001-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x10001057", + "mask": "0xfc00707f" + }, + "vfmsac_vf": { + "encoding": "101110-----------101-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xb8005057", + "mask": "0xfc00707f" + }, + "vfmsac_vv": { + "encoding": "101110-----------001-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xb8001057", + "mask": "0xfc00707f" + }, + "vfmsub_vf": { + "encoding": "101010-----------101-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xa8005057", + "mask": "0xfc00707f" + }, + "vfmsub_vv": { + "encoding": "101010-----------001-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xa8001057", + "mask": "0xfc00707f" + }, + "vfmul_vf": { + "encoding": "100100-----------101-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x90005057", + "mask": "0xfc00707f" + }, + "vfmul_vv": { + "encoding": "100100-----------001-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x90001057", + "mask": "0xfc00707f" + }, + "vfmv_f_s": { + "encoding": "0100001-----00000001-----1010111", + "variable_fields": ["rd", "vs2"], + "extension": ["rv_v"], + "match": "0x42001057", + "mask": "0xfe0ff07f" + }, + "vfmv_s_f": { + "encoding": "010000100000-----101-----1010111", + "variable_fields": ["rs1", "vd"], + "extension": ["rv_v"], + "match": "0x42005057", + "mask": "0xfff0707f" + }, + "vfmv_v_f": { + "encoding": "010111100000-----101-----1010111", + "variable_fields": ["rs1", "vd"], + "extension": ["rv_v"], + "match": "0x5e005057", + "mask": "0xfff0707f" + }, + "vfncvt_f_f_w": { + "encoding": "010010------10100001-----1010111", + "variable_fields": ["vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x480a1057", + "mask": "0xfc0ff07f" + }, + "vfncvt_f_x_w": { + "encoding": "010010------10011001-----1010111", + "variable_fields": ["vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x48099057", + "mask": "0xfc0ff07f" + }, + "vfncvt_f_xu_w": { + "encoding": "010010------10010001-----1010111", + "variable_fields": ["vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x48091057", + "mask": "0xfc0ff07f" + }, + "vfncvt_rod_f_f_w": { + "encoding": "010010------10101001-----1010111", + "variable_fields": ["vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x480a9057", + "mask": "0xfc0ff07f" + }, + "vfncvt_rtz_x_f_w": { + "encoding": "010010------10111001-----1010111", + "variable_fields": ["vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x480b9057", + "mask": "0xfc0ff07f" + }, + "vfncvt_rtz_xu_f_w": { + "encoding": "010010------10110001-----1010111", + "variable_fields": ["vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x480b1057", + "mask": "0xfc0ff07f" + }, + "vfncvt_x_f_w": { + "encoding": "010010------10001001-----1010111", + "variable_fields": ["vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x48089057", + "mask": "0xfc0ff07f" + }, + "vfncvt_xu_f_w": { + "encoding": "010010------10000001-----1010111", + "variable_fields": ["vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x48081057", + "mask": "0xfc0ff07f" + }, + "vfncvtbf16_f_f_w": { + "encoding": "010010------11101001-----1010111", + "variable_fields": ["vd", "vm", "vs2"], + "extension": ["rv_zvfbfmin"], + "match": "0x480e9057", + "mask": "0xfc0ff07f" + }, + "vfnmacc_vf": { + "encoding": "101101-----------101-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xb4005057", + "mask": "0xfc00707f" + }, + "vfnmacc_vv": { + "encoding": "101101-----------001-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xb4001057", + "mask": "0xfc00707f" + }, + "vfnmadd_vf": { + "encoding": "101001-----------101-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xa4005057", + "mask": "0xfc00707f" + }, + "vfnmadd_vv": { + "encoding": "101001-----------001-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xa4001057", + "mask": "0xfc00707f" + }, + "vfnmsac_vf": { + "encoding": "101111-----------101-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xbc005057", + "mask": "0xfc00707f" + }, + "vfnmsac_vv": { + "encoding": "101111-----------001-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xbc001057", + "mask": "0xfc00707f" + }, + "vfnmsub_vf": { + "encoding": "101011-----------101-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xac005057", + "mask": "0xfc00707f" + }, + "vfnmsub_vv": { + "encoding": "101011-----------001-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xac001057", + "mask": "0xfc00707f" + }, + "vfrdiv_vf": { + "encoding": "100001-----------101-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x84005057", + "mask": "0xfc00707f" + }, + "vfrec7_v": { + "encoding": "010011------00101001-----1010111", + "variable_fields": ["vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x4c029057", + "mask": "0xfc0ff07f" + }, + "vfredmax_vs": { + "encoding": "000111-----------001-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x1c001057", + "mask": "0xfc00707f" + }, + "vfredmin_vs": { + "encoding": "000101-----------001-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x14001057", + "mask": "0xfc00707f" + }, + "vfredosum_vs": { + "encoding": "000011-----------001-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xc001057", + "mask": "0xfc00707f" + }, + "vfredusum_vs": { + "encoding": "000001-----------001-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x4001057", + "mask": "0xfc00707f" + }, + "vfrsqrt7_v": { + "encoding": "010011------00100001-----1010111", + "variable_fields": ["vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x4c021057", + "mask": "0xfc0ff07f" + }, + "vfrsub_vf": { + "encoding": "100111-----------101-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x9c005057", + "mask": "0xfc00707f" + }, + "vfsgnj_vf": { + "encoding": "001000-----------101-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x20005057", + "mask": "0xfc00707f" + }, + "vfsgnj_vv": { + "encoding": "001000-----------001-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x20001057", + "mask": "0xfc00707f" + }, + "vfsgnjn_vf": { + "encoding": "001001-----------101-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x24005057", + "mask": "0xfc00707f" + }, + "vfsgnjn_vv": { + "encoding": "001001-----------001-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x24001057", + "mask": "0xfc00707f" + }, + "vfsgnjx_vf": { + "encoding": "001010-----------101-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x28005057", + "mask": "0xfc00707f" + }, + "vfsgnjx_vv": { + "encoding": "001010-----------001-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x28001057", + "mask": "0xfc00707f" + }, + "vfslide1down_vf": { + "encoding": "001111-----------101-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x3c005057", + "mask": "0xfc00707f" + }, + "vfslide1up_vf": { + "encoding": "001110-----------101-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x38005057", + "mask": "0xfc00707f" + }, + "vfsqrt_v": { + "encoding": "010011------00000001-----1010111", + "variable_fields": ["vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x4c001057", + "mask": "0xfc0ff07f" + }, + "vfsub_vf": { + "encoding": "000010-----------101-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x8005057", + "mask": "0xfc00707f" + }, + "vfsub_vv": { + "encoding": "000010-----------001-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x8001057", + "mask": "0xfc00707f" + }, + "vfwadd_vf": { + "encoding": "110000-----------101-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xc0005057", + "mask": "0xfc00707f" + }, + "vfwadd_vv": { + "encoding": "110000-----------001-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xc0001057", + "mask": "0xfc00707f" + }, + "vfwadd_wf": { + "encoding": "110100-----------101-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xd0005057", + "mask": "0xfc00707f" + }, + "vfwadd_wv": { + "encoding": "110100-----------001-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xd0001057", + "mask": "0xfc00707f" + }, + "vfwcvt_f_f_v": { + "encoding": "010010------01100001-----1010111", + "variable_fields": ["vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x48061057", + "mask": "0xfc0ff07f" + }, + "vfwcvt_f_x_v": { + "encoding": "010010------01011001-----1010111", + "variable_fields": ["vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x48059057", + "mask": "0xfc0ff07f" + }, + "vfwcvt_f_xu_v": { + "encoding": "010010------01010001-----1010111", + "variable_fields": ["vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x48051057", + "mask": "0xfc0ff07f" + }, + "vfwcvt_rtz_x_f_v": { + "encoding": "010010------01111001-----1010111", + "variable_fields": ["vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x48079057", + "mask": "0xfc0ff07f" + }, + "vfwcvt_rtz_xu_f_v": { + "encoding": "010010------01110001-----1010111", + "variable_fields": ["vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x48071057", + "mask": "0xfc0ff07f" + }, + "vfwcvt_x_f_v": { + "encoding": "010010------01001001-----1010111", + "variable_fields": ["vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x48049057", + "mask": "0xfc0ff07f" + }, + "vfwcvt_xu_f_v": { + "encoding": "010010------01000001-----1010111", + "variable_fields": ["vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x48041057", + "mask": "0xfc0ff07f" + }, + "vfwcvtbf16_f_f_v": { + "encoding": "010010------01101001-----1010111", + "variable_fields": ["vd", "vm", "vs2"], + "extension": ["rv_zvfbfmin"], + "match": "0x48069057", + "mask": "0xfc0ff07f" + }, + "vfwmacc_vf": { + "encoding": "111100-----------101-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xf0005057", + "mask": "0xfc00707f" + }, + "vfwmacc_vv": { + "encoding": "111100-----------001-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xf0001057", + "mask": "0xfc00707f" + }, + "vfwmaccbf16_vf": { + "encoding": "111011-----------101-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_zvfbfwma"], + "match": "0xec005057", + "mask": "0xfc00707f" + }, + "vfwmaccbf16_vv": { + "encoding": "111011-----------001-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_zvfbfwma"], + "match": "0xec001057", + "mask": "0xfc00707f" + }, + "vfwmsac_vf": { + "encoding": "111110-----------101-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xf8005057", + "mask": "0xfc00707f" + }, + "vfwmsac_vv": { + "encoding": "111110-----------001-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xf8001057", + "mask": "0xfc00707f" + }, + "vfwmul_vf": { + "encoding": "111000-----------101-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xe0005057", + "mask": "0xfc00707f" + }, + "vfwmul_vv": { + "encoding": "111000-----------001-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xe0001057", + "mask": "0xfc00707f" + }, + "vfwnmacc_vf": { + "encoding": "111101-----------101-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xf4005057", + "mask": "0xfc00707f" + }, + "vfwnmacc_vv": { + "encoding": "111101-----------001-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xf4001057", + "mask": "0xfc00707f" + }, + "vfwnmsac_vf": { + "encoding": "111111-----------101-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xfc005057", + "mask": "0xfc00707f" + }, + "vfwnmsac_vv": { + "encoding": "111111-----------001-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xfc001057", + "mask": "0xfc00707f" + }, + "vfwredosum_vs": { + "encoding": "110011-----------001-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xcc001057", + "mask": "0xfc00707f" + }, + "vfwredusum_vs": { + "encoding": "110001-----------001-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xc4001057", + "mask": "0xfc00707f" + }, + "vfwsub_vf": { + "encoding": "110010-----------101-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xc8005057", + "mask": "0xfc00707f" + }, + "vfwsub_vv": { + "encoding": "110010-----------001-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xc8001057", + "mask": "0xfc00707f" + }, + "vfwsub_wf": { + "encoding": "110110-----------101-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xd8005057", + "mask": "0xfc00707f" + }, + "vfwsub_wv": { + "encoding": "110110-----------001-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xd8001057", + "mask": "0xfc00707f" + }, + "vghsh_vv": { + "encoding": "1011001----------010-----1110111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_zvkg"], + "match": "0xb2002077", + "mask": "0xfe00707f" + }, + "vgmul_vv": { + "encoding": "1010001-----10001010-----1110111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_zvkg"], + "match": "0xa208a077", + "mask": "0xfe0ff07f" + }, + "vid_v": { + "encoding": "010100-0000010001010-----1010111", + "variable_fields": ["vd", "vm"], + "extension": ["rv_v"], + "match": "0x5008a057", + "mask": "0xfdfff07f" + }, + "viota_m": { + "encoding": "010100------10000010-----1010111", + "variable_fields": ["vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x50082057", + "mask": "0xfc0ff07f" + }, + "vl1re16_v": { + "encoding": "000000101000-----101-----0000111", + "variable_fields": ["rs1", "vd"], + "extension": ["rv_v"], + "match": "0x2805007", + "mask": "0xfff0707f" + }, + "vl1re32_v": { + "encoding": "000000101000-----110-----0000111", + "variable_fields": ["rs1", "vd"], + "extension": ["rv_v"], + "match": "0x2806007", + "mask": "0xfff0707f" + }, + "vl1re64_v": { + "encoding": "000000101000-----111-----0000111", + "variable_fields": ["rs1", "vd"], + "extension": ["rv_v"], + "match": "0x2807007", + "mask": "0xfff0707f" + }, + "vl1re8_v": { + "encoding": "000000101000-----000-----0000111", + "variable_fields": ["rs1", "vd"], + "extension": ["rv_v"], + "match": "0x2800007", + "mask": "0xfff0707f" + }, + "vl2re16_v": { + "encoding": "001000101000-----101-----0000111", + "variable_fields": ["rs1", "vd"], + "extension": ["rv_v"], + "match": "0x22805007", + "mask": "0xfff0707f" + }, + "vl2re32_v": { + "encoding": "001000101000-----110-----0000111", + "variable_fields": ["rs1", "vd"], + "extension": ["rv_v"], + "match": "0x22806007", + "mask": "0xfff0707f" + }, + "vl2re64_v": { + "encoding": "001000101000-----111-----0000111", + "variable_fields": ["rs1", "vd"], + "extension": ["rv_v"], + "match": "0x22807007", + "mask": "0xfff0707f" + }, + "vl2re8_v": { + "encoding": "001000101000-----000-----0000111", + "variable_fields": ["rs1", "vd"], + "extension": ["rv_v"], + "match": "0x22800007", + "mask": "0xfff0707f" + }, + "vl4re16_v": { + "encoding": "011000101000-----101-----0000111", + "variable_fields": ["rs1", "vd"], + "extension": ["rv_v"], + "match": "0x62805007", + "mask": "0xfff0707f" + }, + "vl4re32_v": { + "encoding": "011000101000-----110-----0000111", + "variable_fields": ["rs1", "vd"], + "extension": ["rv_v"], + "match": "0x62806007", + "mask": "0xfff0707f" + }, + "vl4re64_v": { + "encoding": "011000101000-----111-----0000111", + "variable_fields": ["rs1", "vd"], + "extension": ["rv_v"], + "match": "0x62807007", + "mask": "0xfff0707f" + }, + "vl4re8_v": { + "encoding": "011000101000-----000-----0000111", + "variable_fields": ["rs1", "vd"], + "extension": ["rv_v"], + "match": "0x62800007", + "mask": "0xfff0707f" + }, + "vl8re16_v": { + "encoding": "111000101000-----101-----0000111", + "variable_fields": ["rs1", "vd"], + "extension": ["rv_v"], + "match": "0xe2805007", + "mask": "0xfff0707f" + }, + "vl8re32_v": { + "encoding": "111000101000-----110-----0000111", + "variable_fields": ["rs1", "vd"], + "extension": ["rv_v"], + "match": "0xe2806007", + "mask": "0xfff0707f" + }, + "vl8re64_v": { + "encoding": "111000101000-----111-----0000111", + "variable_fields": ["rs1", "vd"], + "extension": ["rv_v"], + "match": "0xe2807007", + "mask": "0xfff0707f" + }, + "vl8re8_v": { + "encoding": "111000101000-----000-----0000111", + "variable_fields": ["rs1", "vd"], + "extension": ["rv_v"], + "match": "0xe2800007", + "mask": "0xfff0707f" + }, + "vle16_v": { + "encoding": "000000-00000-----101-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x5007", + "mask": "0xfdf0707f" + }, + "vle16ff_v": { + "encoding": "000000-10000-----101-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x1005007", + "mask": "0xfdf0707f" + }, + "vle32_v": { + "encoding": "000000-00000-----110-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x6007", + "mask": "0xfdf0707f" + }, + "vle32ff_v": { + "encoding": "000000-10000-----110-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x1006007", + "mask": "0xfdf0707f" + }, + "vle64_v": { + "encoding": "000000-00000-----111-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x7007", + "mask": "0xfdf0707f" + }, + "vle64ff_v": { + "encoding": "000000-10000-----111-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x1007007", + "mask": "0xfdf0707f" + }, + "vle8_v": { + "encoding": "000000-00000-----000-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x7", + "mask": "0xfdf0707f" + }, + "vle8ff_v": { + "encoding": "000000-10000-----000-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x1000007", + "mask": "0xfdf0707f" + }, + "vlm_v": { + "encoding": "000000101011-----000-----0000111", + "variable_fields": ["rs1", "vd"], + "extension": ["rv_v"], + "match": "0x2b00007", + "mask": "0xfff0707f" + }, + "vloxei16_v": { + "encoding": "000011-----------101-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xc005007", + "mask": "0xfc00707f" + }, + "vloxei32_v": { + "encoding": "000011-----------110-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xc006007", + "mask": "0xfc00707f" + }, + "vloxei64_v": { + "encoding": "000011-----------111-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xc007007", + "mask": "0xfc00707f" + }, + "vloxei8_v": { + "encoding": "000011-----------000-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xc000007", + "mask": "0xfc00707f" + }, + "vloxseg2ei16_v": { + "encoding": "001011-----------101-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x2c005007", + "mask": "0xfc00707f" + }, + "vloxseg2ei32_v": { + "encoding": "001011-----------110-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x2c006007", + "mask": "0xfc00707f" + }, + "vloxseg2ei64_v": { + "encoding": "001011-----------111-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x2c007007", + "mask": "0xfc00707f" + }, + "vloxseg2ei8_v": { + "encoding": "001011-----------000-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x2c000007", + "mask": "0xfc00707f" + }, + "vloxseg3ei16_v": { + "encoding": "010011-----------101-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x4c005007", + "mask": "0xfc00707f" + }, + "vloxseg3ei32_v": { + "encoding": "010011-----------110-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x4c006007", + "mask": "0xfc00707f" + }, + "vloxseg3ei64_v": { + "encoding": "010011-----------111-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x4c007007", + "mask": "0xfc00707f" + }, + "vloxseg3ei8_v": { + "encoding": "010011-----------000-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x4c000007", + "mask": "0xfc00707f" + }, + "vloxseg4ei16_v": { + "encoding": "011011-----------101-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x6c005007", + "mask": "0xfc00707f" + }, + "vloxseg4ei32_v": { + "encoding": "011011-----------110-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x6c006007", + "mask": "0xfc00707f" + }, + "vloxseg4ei64_v": { + "encoding": "011011-----------111-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x6c007007", + "mask": "0xfc00707f" + }, + "vloxseg4ei8_v": { + "encoding": "011011-----------000-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x6c000007", + "mask": "0xfc00707f" + }, + "vloxseg5ei16_v": { + "encoding": "100011-----------101-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x8c005007", + "mask": "0xfc00707f" + }, + "vloxseg5ei32_v": { + "encoding": "100011-----------110-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x8c006007", + "mask": "0xfc00707f" + }, + "vloxseg5ei64_v": { + "encoding": "100011-----------111-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x8c007007", + "mask": "0xfc00707f" + }, + "vloxseg5ei8_v": { + "encoding": "100011-----------000-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x8c000007", + "mask": "0xfc00707f" + }, + "vloxseg6ei16_v": { + "encoding": "101011-----------101-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xac005007", + "mask": "0xfc00707f" + }, + "vloxseg6ei32_v": { + "encoding": "101011-----------110-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xac006007", + "mask": "0xfc00707f" + }, + "vloxseg6ei64_v": { + "encoding": "101011-----------111-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xac007007", + "mask": "0xfc00707f" + }, + "vloxseg6ei8_v": { + "encoding": "101011-----------000-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xac000007", + "mask": "0xfc00707f" + }, + "vloxseg7ei16_v": { + "encoding": "110011-----------101-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xcc005007", + "mask": "0xfc00707f" + }, + "vloxseg7ei32_v": { + "encoding": "110011-----------110-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xcc006007", + "mask": "0xfc00707f" + }, + "vloxseg7ei64_v": { + "encoding": "110011-----------111-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xcc007007", + "mask": "0xfc00707f" + }, + "vloxseg7ei8_v": { + "encoding": "110011-----------000-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xcc000007", + "mask": "0xfc00707f" + }, + "vloxseg8ei16_v": { + "encoding": "111011-----------101-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xec005007", + "mask": "0xfc00707f" + }, + "vloxseg8ei32_v": { + "encoding": "111011-----------110-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xec006007", + "mask": "0xfc00707f" + }, + "vloxseg8ei64_v": { + "encoding": "111011-----------111-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xec007007", + "mask": "0xfc00707f" + }, + "vloxseg8ei8_v": { + "encoding": "111011-----------000-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xec000007", + "mask": "0xfc00707f" + }, + "vlse16_v": { + "encoding": "000010-----------101-----0000111", + "variable_fields": ["rs1", "rs2", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x8005007", + "mask": "0xfc00707f" + }, + "vlse32_v": { + "encoding": "000010-----------110-----0000111", + "variable_fields": ["rs1", "rs2", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x8006007", + "mask": "0xfc00707f" + }, + "vlse64_v": { + "encoding": "000010-----------111-----0000111", + "variable_fields": ["rs1", "rs2", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x8007007", + "mask": "0xfc00707f" + }, + "vlse8_v": { + "encoding": "000010-----------000-----0000111", + "variable_fields": ["rs1", "rs2", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x8000007", + "mask": "0xfc00707f" + }, + "vlseg2e16_v": { + "encoding": "001000-00000-----101-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x20005007", + "mask": "0xfdf0707f" + }, + "vlseg2e16ff_v": { + "encoding": "001000-10000-----101-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x21005007", + "mask": "0xfdf0707f" + }, + "vlseg2e32_v": { + "encoding": "001000-00000-----110-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x20006007", + "mask": "0xfdf0707f" + }, + "vlseg2e32ff_v": { + "encoding": "001000-10000-----110-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x21006007", + "mask": "0xfdf0707f" + }, + "vlseg2e64_v": { + "encoding": "001000-00000-----111-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x20007007", + "mask": "0xfdf0707f" + }, + "vlseg2e64ff_v": { + "encoding": "001000-10000-----111-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x21007007", + "mask": "0xfdf0707f" + }, + "vlseg2e8_v": { + "encoding": "001000-00000-----000-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x20000007", + "mask": "0xfdf0707f" + }, + "vlseg2e8ff_v": { + "encoding": "001000-10000-----000-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x21000007", + "mask": "0xfdf0707f" + }, + "vlseg3e16_v": { + "encoding": "010000-00000-----101-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x40005007", + "mask": "0xfdf0707f" + }, + "vlseg3e16ff_v": { + "encoding": "010000-10000-----101-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x41005007", + "mask": "0xfdf0707f" + }, + "vlseg3e32_v": { + "encoding": "010000-00000-----110-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x40006007", + "mask": "0xfdf0707f" + }, + "vlseg3e32ff_v": { + "encoding": "010000-10000-----110-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x41006007", + "mask": "0xfdf0707f" + }, + "vlseg3e64_v": { + "encoding": "010000-00000-----111-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x40007007", + "mask": "0xfdf0707f" + }, + "vlseg3e64ff_v": { + "encoding": "010000-10000-----111-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x41007007", + "mask": "0xfdf0707f" + }, + "vlseg3e8_v": { + "encoding": "010000-00000-----000-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x40000007", + "mask": "0xfdf0707f" + }, + "vlseg3e8ff_v": { + "encoding": "010000-10000-----000-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x41000007", + "mask": "0xfdf0707f" + }, + "vlseg4e16_v": { + "encoding": "011000-00000-----101-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x60005007", + "mask": "0xfdf0707f" + }, + "vlseg4e16ff_v": { + "encoding": "011000-10000-----101-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x61005007", + "mask": "0xfdf0707f" + }, + "vlseg4e32_v": { + "encoding": "011000-00000-----110-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x60006007", + "mask": "0xfdf0707f" + }, + "vlseg4e32ff_v": { + "encoding": "011000-10000-----110-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x61006007", + "mask": "0xfdf0707f" + }, + "vlseg4e64_v": { + "encoding": "011000-00000-----111-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x60007007", + "mask": "0xfdf0707f" + }, + "vlseg4e64ff_v": { + "encoding": "011000-10000-----111-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x61007007", + "mask": "0xfdf0707f" + }, + "vlseg4e8_v": { + "encoding": "011000-00000-----000-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x60000007", + "mask": "0xfdf0707f" + }, + "vlseg4e8ff_v": { + "encoding": "011000-10000-----000-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x61000007", + "mask": "0xfdf0707f" + }, + "vlseg5e16_v": { + "encoding": "100000-00000-----101-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x80005007", + "mask": "0xfdf0707f" + }, + "vlseg5e16ff_v": { + "encoding": "100000-10000-----101-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x81005007", + "mask": "0xfdf0707f" + }, + "vlseg5e32_v": { + "encoding": "100000-00000-----110-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x80006007", + "mask": "0xfdf0707f" + }, + "vlseg5e32ff_v": { + "encoding": "100000-10000-----110-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x81006007", + "mask": "0xfdf0707f" + }, + "vlseg5e64_v": { + "encoding": "100000-00000-----111-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x80007007", + "mask": "0xfdf0707f" + }, + "vlseg5e64ff_v": { + "encoding": "100000-10000-----111-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x81007007", + "mask": "0xfdf0707f" + }, + "vlseg5e8_v": { + "encoding": "100000-00000-----000-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x80000007", + "mask": "0xfdf0707f" + }, + "vlseg5e8ff_v": { + "encoding": "100000-10000-----000-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x81000007", + "mask": "0xfdf0707f" + }, + "vlseg6e16_v": { + "encoding": "101000-00000-----101-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0xa0005007", + "mask": "0xfdf0707f" + }, + "vlseg6e16ff_v": { + "encoding": "101000-10000-----101-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0xa1005007", + "mask": "0xfdf0707f" + }, + "vlseg6e32_v": { + "encoding": "101000-00000-----110-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0xa0006007", + "mask": "0xfdf0707f" + }, + "vlseg6e32ff_v": { + "encoding": "101000-10000-----110-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0xa1006007", + "mask": "0xfdf0707f" + }, + "vlseg6e64_v": { + "encoding": "101000-00000-----111-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0xa0007007", + "mask": "0xfdf0707f" + }, + "vlseg6e64ff_v": { + "encoding": "101000-10000-----111-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0xa1007007", + "mask": "0xfdf0707f" + }, + "vlseg6e8_v": { + "encoding": "101000-00000-----000-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0xa0000007", + "mask": "0xfdf0707f" + }, + "vlseg6e8ff_v": { + "encoding": "101000-10000-----000-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0xa1000007", + "mask": "0xfdf0707f" + }, + "vlseg7e16_v": { + "encoding": "110000-00000-----101-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0xc0005007", + "mask": "0xfdf0707f" + }, + "vlseg7e16ff_v": { + "encoding": "110000-10000-----101-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0xc1005007", + "mask": "0xfdf0707f" + }, + "vlseg7e32_v": { + "encoding": "110000-00000-----110-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0xc0006007", + "mask": "0xfdf0707f" + }, + "vlseg7e32ff_v": { + "encoding": "110000-10000-----110-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0xc1006007", + "mask": "0xfdf0707f" + }, + "vlseg7e64_v": { + "encoding": "110000-00000-----111-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0xc0007007", + "mask": "0xfdf0707f" + }, + "vlseg7e64ff_v": { + "encoding": "110000-10000-----111-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0xc1007007", + "mask": "0xfdf0707f" + }, + "vlseg7e8_v": { + "encoding": "110000-00000-----000-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0xc0000007", + "mask": "0xfdf0707f" + }, + "vlseg7e8ff_v": { + "encoding": "110000-10000-----000-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0xc1000007", + "mask": "0xfdf0707f" + }, + "vlseg8e16_v": { + "encoding": "111000-00000-----101-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0xe0005007", + "mask": "0xfdf0707f" + }, + "vlseg8e16ff_v": { + "encoding": "111000-10000-----101-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0xe1005007", + "mask": "0xfdf0707f" + }, + "vlseg8e32_v": { + "encoding": "111000-00000-----110-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0xe0006007", + "mask": "0xfdf0707f" + }, + "vlseg8e32ff_v": { + "encoding": "111000-10000-----110-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0xe1006007", + "mask": "0xfdf0707f" + }, + "vlseg8e64_v": { + "encoding": "111000-00000-----111-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0xe0007007", + "mask": "0xfdf0707f" + }, + "vlseg8e64ff_v": { + "encoding": "111000-10000-----111-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0xe1007007", + "mask": "0xfdf0707f" + }, + "vlseg8e8_v": { + "encoding": "111000-00000-----000-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0xe0000007", + "mask": "0xfdf0707f" + }, + "vlseg8e8ff_v": { + "encoding": "111000-10000-----000-----0000111", + "variable_fields": ["rs1", "vd", "vm"], + "extension": ["rv_v"], + "match": "0xe1000007", + "mask": "0xfdf0707f" + }, + "vlsseg2e16_v": { + "encoding": "001010-----------101-----0000111", + "variable_fields": ["rs1", "rs2", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x28005007", + "mask": "0xfc00707f" + }, + "vlsseg2e32_v": { + "encoding": "001010-----------110-----0000111", + "variable_fields": ["rs1", "rs2", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x28006007", + "mask": "0xfc00707f" + }, + "vlsseg2e64_v": { + "encoding": "001010-----------111-----0000111", + "variable_fields": ["rs1", "rs2", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x28007007", + "mask": "0xfc00707f" + }, + "vlsseg2e8_v": { + "encoding": "001010-----------000-----0000111", + "variable_fields": ["rs1", "rs2", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x28000007", + "mask": "0xfc00707f" + }, + "vlsseg3e16_v": { + "encoding": "010010-----------101-----0000111", + "variable_fields": ["rs1", "rs2", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x48005007", + "mask": "0xfc00707f" + }, + "vlsseg3e32_v": { + "encoding": "010010-----------110-----0000111", + "variable_fields": ["rs1", "rs2", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x48006007", + "mask": "0xfc00707f" + }, + "vlsseg3e64_v": { + "encoding": "010010-----------111-----0000111", + "variable_fields": ["rs1", "rs2", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x48007007", + "mask": "0xfc00707f" + }, + "vlsseg3e8_v": { + "encoding": "010010-----------000-----0000111", + "variable_fields": ["rs1", "rs2", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x48000007", + "mask": "0xfc00707f" + }, + "vlsseg4e16_v": { + "encoding": "011010-----------101-----0000111", + "variable_fields": ["rs1", "rs2", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x68005007", + "mask": "0xfc00707f" + }, + "vlsseg4e32_v": { + "encoding": "011010-----------110-----0000111", + "variable_fields": ["rs1", "rs2", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x68006007", + "mask": "0xfc00707f" + }, + "vlsseg4e64_v": { + "encoding": "011010-----------111-----0000111", + "variable_fields": ["rs1", "rs2", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x68007007", + "mask": "0xfc00707f" + }, + "vlsseg4e8_v": { + "encoding": "011010-----------000-----0000111", + "variable_fields": ["rs1", "rs2", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x68000007", + "mask": "0xfc00707f" + }, + "vlsseg5e16_v": { + "encoding": "100010-----------101-----0000111", + "variable_fields": ["rs1", "rs2", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x88005007", + "mask": "0xfc00707f" + }, + "vlsseg5e32_v": { + "encoding": "100010-----------110-----0000111", + "variable_fields": ["rs1", "rs2", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x88006007", + "mask": "0xfc00707f" + }, + "vlsseg5e64_v": { + "encoding": "100010-----------111-----0000111", + "variable_fields": ["rs1", "rs2", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x88007007", + "mask": "0xfc00707f" + }, + "vlsseg5e8_v": { + "encoding": "100010-----------000-----0000111", + "variable_fields": ["rs1", "rs2", "vd", "vm"], + "extension": ["rv_v"], + "match": "0x88000007", + "mask": "0xfc00707f" + }, + "vlsseg6e16_v": { + "encoding": "101010-----------101-----0000111", + "variable_fields": ["rs1", "rs2", "vd", "vm"], + "extension": ["rv_v"], + "match": "0xa8005007", + "mask": "0xfc00707f" + }, + "vlsseg6e32_v": { + "encoding": "101010-----------110-----0000111", + "variable_fields": ["rs1", "rs2", "vd", "vm"], + "extension": ["rv_v"], + "match": "0xa8006007", + "mask": "0xfc00707f" + }, + "vlsseg6e64_v": { + "encoding": "101010-----------111-----0000111", + "variable_fields": ["rs1", "rs2", "vd", "vm"], + "extension": ["rv_v"], + "match": "0xa8007007", + "mask": "0xfc00707f" + }, + "vlsseg6e8_v": { + "encoding": "101010-----------000-----0000111", + "variable_fields": ["rs1", "rs2", "vd", "vm"], + "extension": ["rv_v"], + "match": "0xa8000007", + "mask": "0xfc00707f" + }, + "vlsseg7e16_v": { + "encoding": "110010-----------101-----0000111", + "variable_fields": ["rs1", "rs2", "vd", "vm"], + "extension": ["rv_v"], + "match": "0xc8005007", + "mask": "0xfc00707f" + }, + "vlsseg7e32_v": { + "encoding": "110010-----------110-----0000111", + "variable_fields": ["rs1", "rs2", "vd", "vm"], + "extension": ["rv_v"], + "match": "0xc8006007", + "mask": "0xfc00707f" + }, + "vlsseg7e64_v": { + "encoding": "110010-----------111-----0000111", + "variable_fields": ["rs1", "rs2", "vd", "vm"], + "extension": ["rv_v"], + "match": "0xc8007007", + "mask": "0xfc00707f" + }, + "vlsseg7e8_v": { + "encoding": "110010-----------000-----0000111", + "variable_fields": ["rs1", "rs2", "vd", "vm"], + "extension": ["rv_v"], + "match": "0xc8000007", + "mask": "0xfc00707f" + }, + "vlsseg8e16_v": { + "encoding": "111010-----------101-----0000111", + "variable_fields": ["rs1", "rs2", "vd", "vm"], + "extension": ["rv_v"], + "match": "0xe8005007", + "mask": "0xfc00707f" + }, + "vlsseg8e32_v": { + "encoding": "111010-----------110-----0000111", + "variable_fields": ["rs1", "rs2", "vd", "vm"], + "extension": ["rv_v"], + "match": "0xe8006007", + "mask": "0xfc00707f" + }, + "vlsseg8e64_v": { + "encoding": "111010-----------111-----0000111", + "variable_fields": ["rs1", "rs2", "vd", "vm"], + "extension": ["rv_v"], + "match": "0xe8007007", + "mask": "0xfc00707f" + }, + "vlsseg8e8_v": { + "encoding": "111010-----------000-----0000111", + "variable_fields": ["rs1", "rs2", "vd", "vm"], + "extension": ["rv_v"], + "match": "0xe8000007", + "mask": "0xfc00707f" + }, + "vluxei16_v": { + "encoding": "000001-----------101-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x4005007", + "mask": "0xfc00707f" + }, + "vluxei32_v": { + "encoding": "000001-----------110-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x4006007", + "mask": "0xfc00707f" + }, + "vluxei64_v": { + "encoding": "000001-----------111-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x4007007", + "mask": "0xfc00707f" + }, + "vluxei8_v": { + "encoding": "000001-----------000-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x4000007", + "mask": "0xfc00707f" + }, + "vluxseg2ei16_v": { + "encoding": "001001-----------101-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x24005007", + "mask": "0xfc00707f" + }, + "vluxseg2ei32_v": { + "encoding": "001001-----------110-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x24006007", + "mask": "0xfc00707f" + }, + "vluxseg2ei64_v": { + "encoding": "001001-----------111-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x24007007", + "mask": "0xfc00707f" + }, + "vluxseg2ei8_v": { + "encoding": "001001-----------000-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x24000007", + "mask": "0xfc00707f" + }, + "vluxseg3ei16_v": { + "encoding": "010001-----------101-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x44005007", + "mask": "0xfc00707f" + }, + "vluxseg3ei32_v": { + "encoding": "010001-----------110-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x44006007", + "mask": "0xfc00707f" + }, + "vluxseg3ei64_v": { + "encoding": "010001-----------111-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x44007007", + "mask": "0xfc00707f" + }, + "vluxseg3ei8_v": { + "encoding": "010001-----------000-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x44000007", + "mask": "0xfc00707f" + }, + "vluxseg4ei16_v": { + "encoding": "011001-----------101-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x64005007", + "mask": "0xfc00707f" + }, + "vluxseg4ei32_v": { + "encoding": "011001-----------110-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x64006007", + "mask": "0xfc00707f" + }, + "vluxseg4ei64_v": { + "encoding": "011001-----------111-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x64007007", + "mask": "0xfc00707f" + }, + "vluxseg4ei8_v": { + "encoding": "011001-----------000-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x64000007", + "mask": "0xfc00707f" + }, + "vluxseg5ei16_v": { + "encoding": "100001-----------101-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x84005007", + "mask": "0xfc00707f" + }, + "vluxseg5ei32_v": { + "encoding": "100001-----------110-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x84006007", + "mask": "0xfc00707f" + }, + "vluxseg5ei64_v": { + "encoding": "100001-----------111-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x84007007", + "mask": "0xfc00707f" + }, + "vluxseg5ei8_v": { + "encoding": "100001-----------000-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x84000007", + "mask": "0xfc00707f" + }, + "vluxseg6ei16_v": { + "encoding": "101001-----------101-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xa4005007", + "mask": "0xfc00707f" + }, + "vluxseg6ei32_v": { + "encoding": "101001-----------110-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xa4006007", + "mask": "0xfc00707f" + }, + "vluxseg6ei64_v": { + "encoding": "101001-----------111-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xa4007007", + "mask": "0xfc00707f" + }, + "vluxseg6ei8_v": { + "encoding": "101001-----------000-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xa4000007", + "mask": "0xfc00707f" + }, + "vluxseg7ei16_v": { + "encoding": "110001-----------101-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xc4005007", + "mask": "0xfc00707f" + }, + "vluxseg7ei32_v": { + "encoding": "110001-----------110-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xc4006007", + "mask": "0xfc00707f" + }, + "vluxseg7ei64_v": { + "encoding": "110001-----------111-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xc4007007", + "mask": "0xfc00707f" + }, + "vluxseg7ei8_v": { + "encoding": "110001-----------000-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xc4000007", + "mask": "0xfc00707f" + }, + "vluxseg8ei16_v": { + "encoding": "111001-----------101-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xe4005007", + "mask": "0xfc00707f" + }, + "vluxseg8ei32_v": { + "encoding": "111001-----------110-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xe4006007", + "mask": "0xfc00707f" + }, + "vluxseg8ei64_v": { + "encoding": "111001-----------111-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xe4007007", + "mask": "0xfc00707f" + }, + "vluxseg8ei8_v": { + "encoding": "111001-----------000-----0000111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xe4000007", + "mask": "0xfc00707f" + }, + "vmacc_vv": { + "encoding": "101101-----------010-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xb4002057", + "mask": "0xfc00707f" + }, + "vmacc_vx": { + "encoding": "101101-----------110-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xb4006057", + "mask": "0xfc00707f" + }, + "vmadc_vi": { + "encoding": "0100011----------011-----1010111", + "variable_fields": ["simm5", "vd", "vs2"], + "extension": ["rv_v"], + "match": "0x46003057", + "mask": "0xfe00707f" + }, + "vmadc_vim": { + "encoding": "0100010----------011-----1010111", + "variable_fields": ["simm5", "vd", "vs2"], + "extension": ["rv_v"], + "match": "0x44003057", + "mask": "0xfe00707f" + }, + "vmadc_vv": { + "encoding": "0100011----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x46000057", + "mask": "0xfe00707f" + }, + "vmadc_vvm": { + "encoding": "0100010----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x44000057", + "mask": "0xfe00707f" + }, + "vmadc_vx": { + "encoding": "0100011----------100-----1010111", + "variable_fields": ["rs1", "vd", "vs2"], + "extension": ["rv_v"], + "match": "0x46004057", + "mask": "0xfe00707f" + }, + "vmadc_vxm": { + "encoding": "0100010----------100-----1010111", + "variable_fields": ["rs1", "vd", "vs2"], + "extension": ["rv_v"], + "match": "0x44004057", + "mask": "0xfe00707f" + }, + "vmadd_vv": { + "encoding": "101001-----------010-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xa4002057", + "mask": "0xfc00707f" + }, + "vmadd_vx": { + "encoding": "101001-----------110-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xa4006057", + "mask": "0xfc00707f" + }, + "vmand_mm": { + "encoding": "0110011----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x66002057", + "mask": "0xfe00707f" + }, + "vmandn_mm": { + "encoding": "0110001----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x62002057", + "mask": "0xfe00707f" + }, + "vmax_vv": { + "encoding": "000111-----------000-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x1c000057", + "mask": "0xfc00707f" + }, + "vmax_vx": { + "encoding": "000111-----------100-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x1c004057", + "mask": "0xfc00707f" + }, + "vmaxu_vv": { + "encoding": "000110-----------000-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x18000057", + "mask": "0xfc00707f" + }, + "vmaxu_vx": { + "encoding": "000110-----------100-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x18004057", + "mask": "0xfc00707f" + }, + "vmerge_vim": { + "encoding": "0101110----------011-----1010111", + "variable_fields": ["simm5", "vd", "vs2"], + "extension": ["rv_v"], + "match": "0x5c003057", + "mask": "0xfe00707f" + }, + "vmerge_vvm": { + "encoding": "0101110----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x5c000057", + "mask": "0xfe00707f" + }, + "vmerge_vxm": { + "encoding": "0101110----------100-----1010111", + "variable_fields": ["rs1", "vd", "vs2"], + "extension": ["rv_v"], + "match": "0x5c004057", + "mask": "0xfe00707f" + }, + "vmfeq_vf": { + "encoding": "011000-----------101-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x60005057", + "mask": "0xfc00707f" + }, + "vmfeq_vv": { + "encoding": "011000-----------001-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x60001057", + "mask": "0xfc00707f" + }, + "vmfge_vf": { + "encoding": "011111-----------101-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x7c005057", + "mask": "0xfc00707f" + }, + "vmfgt_vf": { + "encoding": "011101-----------101-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x74005057", + "mask": "0xfc00707f" + }, + "vmfle_vf": { + "encoding": "011001-----------101-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x64005057", + "mask": "0xfc00707f" + }, + "vmfle_vv": { + "encoding": "011001-----------001-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x64001057", + "mask": "0xfc00707f" + }, + "vmflt_vf": { + "encoding": "011011-----------101-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x6c005057", + "mask": "0xfc00707f" + }, + "vmflt_vv": { + "encoding": "011011-----------001-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x6c001057", + "mask": "0xfc00707f" + }, + "vmfne_vf": { + "encoding": "011100-----------101-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x70005057", + "mask": "0xfc00707f" + }, + "vmfne_vv": { + "encoding": "011100-----------001-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x70001057", + "mask": "0xfc00707f" + }, + "vmin_vv": { + "encoding": "000101-----------000-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x14000057", + "mask": "0xfc00707f" + }, + "vmin_vx": { + "encoding": "000101-----------100-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x14004057", + "mask": "0xfc00707f" + }, + "vminu_vv": { + "encoding": "000100-----------000-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x10000057", + "mask": "0xfc00707f" + }, + "vminu_vx": { + "encoding": "000100-----------100-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x10004057", + "mask": "0xfc00707f" + }, + "vmnand_mm": { + "encoding": "0111011----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x76002057", + "mask": "0xfe00707f" + }, + "vmnor_mm": { + "encoding": "0111101----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x7a002057", + "mask": "0xfe00707f" + }, + "vmor_mm": { + "encoding": "0110101----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x6a002057", + "mask": "0xfe00707f" + }, + "vmorn_mm": { + "encoding": "0111001----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x72002057", + "mask": "0xfe00707f" + }, + "vmsbc_vv": { + "encoding": "0100111----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x4e000057", + "mask": "0xfe00707f" + }, + "vmsbc_vvm": { + "encoding": "0100110----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x4c000057", + "mask": "0xfe00707f" + }, + "vmsbc_vx": { + "encoding": "0100111----------100-----1010111", + "variable_fields": ["rs1", "vd", "vs2"], + "extension": ["rv_v"], + "match": "0x4e004057", + "mask": "0xfe00707f" + }, + "vmsbc_vxm": { + "encoding": "0100110----------100-----1010111", + "variable_fields": ["rs1", "vd", "vs2"], + "extension": ["rv_v"], + "match": "0x4c004057", + "mask": "0xfe00707f" + }, + "vmsbf_m": { + "encoding": "010100------00001010-----1010111", + "variable_fields": ["vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x5000a057", + "mask": "0xfc0ff07f" + }, + "vmseq_vi": { + "encoding": "011000-----------011-----1010111", + "variable_fields": ["simm5", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x60003057", + "mask": "0xfc00707f" + }, + "vmseq_vv": { + "encoding": "011000-----------000-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x60000057", + "mask": "0xfc00707f" + }, + "vmseq_vx": { + "encoding": "011000-----------100-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x60004057", + "mask": "0xfc00707f" + }, + "vmsgt_vi": { + "encoding": "011111-----------011-----1010111", + "variable_fields": ["simm5", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x7c003057", + "mask": "0xfc00707f" + }, + "vmsgt_vx": { + "encoding": "011111-----------100-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x7c004057", + "mask": "0xfc00707f" + }, + "vmsgtu_vi": { + "encoding": "011110-----------011-----1010111", + "variable_fields": ["simm5", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x78003057", + "mask": "0xfc00707f" + }, + "vmsgtu_vx": { + "encoding": "011110-----------100-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x78004057", + "mask": "0xfc00707f" + }, + "vmsif_m": { + "encoding": "010100------00011010-----1010111", + "variable_fields": ["vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x5001a057", + "mask": "0xfc0ff07f" + }, + "vmsle_vi": { + "encoding": "011101-----------011-----1010111", + "variable_fields": ["simm5", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x74003057", + "mask": "0xfc00707f" + }, + "vmsle_vv": { + "encoding": "011101-----------000-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x74000057", + "mask": "0xfc00707f" + }, + "vmsle_vx": { + "encoding": "011101-----------100-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x74004057", + "mask": "0xfc00707f" + }, + "vmsleu_vi": { + "encoding": "011100-----------011-----1010111", + "variable_fields": ["simm5", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x70003057", + "mask": "0xfc00707f" + }, + "vmsleu_vv": { + "encoding": "011100-----------000-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x70000057", + "mask": "0xfc00707f" + }, + "vmsleu_vx": { + "encoding": "011100-----------100-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x70004057", + "mask": "0xfc00707f" + }, + "vmslt_vv": { + "encoding": "011011-----------000-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x6c000057", + "mask": "0xfc00707f" + }, + "vmslt_vx": { + "encoding": "011011-----------100-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x6c004057", + "mask": "0xfc00707f" + }, + "vmsltu_vv": { + "encoding": "011010-----------000-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x68000057", + "mask": "0xfc00707f" + }, + "vmsltu_vx": { + "encoding": "011010-----------100-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x68004057", + "mask": "0xfc00707f" + }, + "vmsne_vi": { + "encoding": "011001-----------011-----1010111", + "variable_fields": ["simm5", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x64003057", + "mask": "0xfc00707f" + }, + "vmsne_vv": { + "encoding": "011001-----------000-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x64000057", + "mask": "0xfc00707f" + }, + "vmsne_vx": { + "encoding": "011001-----------100-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x64004057", + "mask": "0xfc00707f" + }, + "vmsof_m": { + "encoding": "010100------00010010-----1010111", + "variable_fields": ["vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x50012057", + "mask": "0xfc0ff07f" + }, + "vmul_vv": { + "encoding": "100101-----------010-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x94002057", + "mask": "0xfc00707f" + }, + "vmul_vx": { + "encoding": "100101-----------110-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x94006057", + "mask": "0xfc00707f" + }, + "vmulh_vv": { + "encoding": "100111-----------010-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x9c002057", + "mask": "0xfc00707f" + }, + "vmulh_vx": { + "encoding": "100111-----------110-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x9c006057", + "mask": "0xfc00707f" + }, + "vmulhsu_vv": { + "encoding": "100110-----------010-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x98002057", + "mask": "0xfc00707f" + }, + "vmulhsu_vx": { + "encoding": "100110-----------110-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x98006057", + "mask": "0xfc00707f" + }, + "vmulhu_vv": { + "encoding": "100100-----------010-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x90002057", + "mask": "0xfc00707f" + }, + "vmulhu_vx": { + "encoding": "100100-----------110-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x90006057", + "mask": "0xfc00707f" + }, + "vmv1r_v": { + "encoding": "1001111-----00000011-----1010111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_v"], + "match": "0x9e003057", + "mask": "0xfe0ff07f" + }, + "vmv2r_v": { + "encoding": "1001111-----00001011-----1010111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_v"], + "match": "0x9e00b057", + "mask": "0xfe0ff07f" + }, + "vmv4r_v": { + "encoding": "1001111-----00011011-----1010111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_v"], + "match": "0x9e01b057", + "mask": "0xfe0ff07f" + }, + "vmv8r_v": { + "encoding": "1001111-----00111011-----1010111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_v"], + "match": "0x9e03b057", + "mask": "0xfe0ff07f" + }, + "vmv_s_x": { + "encoding": "010000100000-----110-----1010111", + "variable_fields": ["rs1", "vd"], + "extension": ["rv_v"], + "match": "0x42006057", + "mask": "0xfff0707f" + }, + "vmv_v_i": { + "encoding": "010111100000-----011-----1010111", + "variable_fields": ["simm5", "vd"], + "extension": ["rv_v"], + "match": "0x5e003057", + "mask": "0xfff0707f" + }, + "vmv_v_v": { + "encoding": "010111100000-----000-----1010111", + "variable_fields": ["vd", "vs1"], + "extension": ["rv_v"], + "match": "0x5e000057", + "mask": "0xfff0707f" + }, + "vmv_v_x": { + "encoding": "010111100000-----100-----1010111", + "variable_fields": ["rs1", "vd"], + "extension": ["rv_v"], + "match": "0x5e004057", + "mask": "0xfff0707f" + }, + "vmv_x_s": { + "encoding": "0100001-----00000010-----1010111", + "variable_fields": ["rd", "vs2"], + "extension": ["rv_v"], + "match": "0x42002057", + "mask": "0xfe0ff07f" + }, + "vmxnor_mm": { + "encoding": "0111111----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x7e002057", + "mask": "0xfe00707f" + }, + "vmxor_mm": { + "encoding": "0110111----------010-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x6e002057", + "mask": "0xfe00707f" + }, + "vnclip_wi": { + "encoding": "101111-----------011-----1010111", + "variable_fields": ["simm5", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xbc003057", + "mask": "0xfc00707f" + }, + "vnclip_wv": { + "encoding": "101111-----------000-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xbc000057", + "mask": "0xfc00707f" + }, + "vnclip_wx": { + "encoding": "101111-----------100-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xbc004057", + "mask": "0xfc00707f" + }, + "vnclipu_wi": { + "encoding": "101110-----------011-----1010111", + "variable_fields": ["simm5", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xb8003057", + "mask": "0xfc00707f" + }, + "vnclipu_wv": { + "encoding": "101110-----------000-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xb8000057", + "mask": "0xfc00707f" + }, + "vnclipu_wx": { + "encoding": "101110-----------100-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xb8004057", + "mask": "0xfc00707f" + }, + "vnmsac_vv": { + "encoding": "101111-----------010-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xbc002057", + "mask": "0xfc00707f" + }, + "vnmsac_vx": { + "encoding": "101111-----------110-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xbc006057", + "mask": "0xfc00707f" + }, + "vnmsub_vv": { + "encoding": "101011-----------010-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xac002057", + "mask": "0xfc00707f" + }, + "vnmsub_vx": { + "encoding": "101011-----------110-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xac006057", + "mask": "0xfc00707f" + }, + "vnsra_wi": { + "encoding": "101101-----------011-----1010111", + "variable_fields": ["simm5", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xb4003057", + "mask": "0xfc00707f" + }, + "vnsra_wv": { + "encoding": "101101-----------000-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xb4000057", + "mask": "0xfc00707f" + }, + "vnsra_wx": { + "encoding": "101101-----------100-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xb4004057", + "mask": "0xfc00707f" + }, + "vnsrl_wi": { + "encoding": "101100-----------011-----1010111", + "variable_fields": ["simm5", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xb0003057", + "mask": "0xfc00707f" + }, + "vnsrl_wv": { + "encoding": "101100-----------000-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xb0000057", + "mask": "0xfc00707f" + }, + "vnsrl_wx": { + "encoding": "101100-----------100-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xb0004057", + "mask": "0xfc00707f" + }, + "vor_vi": { + "encoding": "001010-----------011-----1010111", + "variable_fields": ["simm5", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x28003057", + "mask": "0xfc00707f" + }, + "vor_vv": { + "encoding": "001010-----------000-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x28000057", + "mask": "0xfc00707f" + }, + "vor_vx": { + "encoding": "001010-----------100-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x28004057", + "mask": "0xfc00707f" + }, + "vredand_vs": { + "encoding": "000001-----------010-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x4002057", + "mask": "0xfc00707f" + }, + "vredmax_vs": { + "encoding": "000111-----------010-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x1c002057", + "mask": "0xfc00707f" + }, + "vredmaxu_vs": { + "encoding": "000110-----------010-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x18002057", + "mask": "0xfc00707f" + }, + "vredmin_vs": { + "encoding": "000101-----------010-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x14002057", + "mask": "0xfc00707f" + }, + "vredminu_vs": { + "encoding": "000100-----------010-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x10002057", + "mask": "0xfc00707f" + }, + "vredor_vs": { + "encoding": "000010-----------010-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x8002057", + "mask": "0xfc00707f" + }, + "vredsum_vs": { + "encoding": "000000-----------010-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x2057", + "mask": "0xfc00707f" + }, + "vredxor_vs": { + "encoding": "000011-----------010-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xc002057", + "mask": "0xfc00707f" + }, + "vrem_vv": { + "encoding": "100011-----------010-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x8c002057", + "mask": "0xfc00707f" + }, + "vrem_vx": { + "encoding": "100011-----------110-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x8c006057", + "mask": "0xfc00707f" + }, + "vremu_vv": { + "encoding": "100010-----------010-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x88002057", + "mask": "0xfc00707f" + }, + "vremu_vx": { + "encoding": "100010-----------110-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x88006057", + "mask": "0xfc00707f" + }, + "vrev8_v": { + "encoding": "010010------01001010-----1010111", + "variable_fields": ["vd", "vm", "vs2"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0x4804a057", + "mask": "0xfc0ff07f" + }, + "vrgather_vi": { + "encoding": "001100-----------011-----1010111", + "variable_fields": ["simm5", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x30003057", + "mask": "0xfc00707f" + }, + "vrgather_vv": { + "encoding": "001100-----------000-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x30000057", + "mask": "0xfc00707f" + }, + "vrgather_vx": { + "encoding": "001100-----------100-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x30004057", + "mask": "0xfc00707f" + }, + "vrgatherei16_vv": { + "encoding": "001110-----------000-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x38000057", + "mask": "0xfc00707f" + }, + "vrol_vv": { + "encoding": "010101-----------000-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0x54000057", + "mask": "0xfc00707f" + }, + "vrol_vx": { + "encoding": "010101-----------100-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0x54004057", + "mask": "0xfc00707f" + }, + "vror_vi": { + "encoding": "01010------------011-----1010111", + "variable_fields": ["vd", "vm", "vs2"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0x50003057", + "mask": "0xf800707f" + }, + "vror_vv": { + "encoding": "010100-----------000-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0x50000057", + "mask": "0xfc00707f" + }, + "vror_vx": { + "encoding": "010100-----------100-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0x50004057", + "mask": "0xfc00707f" + }, + "vrsub_vi": { + "encoding": "000011-----------011-----1010111", + "variable_fields": ["simm5", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xc003057", + "mask": "0xfc00707f" + }, + "vrsub_vx": { + "encoding": "000011-----------100-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xc004057", + "mask": "0xfc00707f" + }, + "vs1r_v": { + "encoding": "000000101000-----000-----0100111", + "variable_fields": ["rs1", "vs3"], + "extension": ["rv_v"], + "match": "0x2800027", + "mask": "0xfff0707f" + }, + "vs2r_v": { + "encoding": "001000101000-----000-----0100111", + "variable_fields": ["rs1", "vs3"], + "extension": ["rv_v"], + "match": "0x22800027", + "mask": "0xfff0707f" + }, + "vs4r_v": { + "encoding": "011000101000-----000-----0100111", + "variable_fields": ["rs1", "vs3"], + "extension": ["rv_v"], + "match": "0x62800027", + "mask": "0xfff0707f" + }, + "vs8r_v": { + "encoding": "111000101000-----000-----0100111", + "variable_fields": ["rs1", "vs3"], + "extension": ["rv_v"], + "match": "0xe2800027", + "mask": "0xfff0707f" + }, + "vsadd_vi": { + "encoding": "100001-----------011-----1010111", + "variable_fields": ["simm5", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x84003057", + "mask": "0xfc00707f" + }, + "vsadd_vv": { + "encoding": "100001-----------000-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x84000057", + "mask": "0xfc00707f" + }, + "vsadd_vx": { + "encoding": "100001-----------100-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x84004057", + "mask": "0xfc00707f" + }, + "vsaddu_vi": { + "encoding": "100000-----------011-----1010111", + "variable_fields": ["simm5", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x80003057", + "mask": "0xfc00707f" + }, + "vsaddu_vv": { + "encoding": "100000-----------000-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x80000057", + "mask": "0xfc00707f" + }, + "vsaddu_vx": { + "encoding": "100000-----------100-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x80004057", + "mask": "0xfc00707f" + }, + "vsbc_vvm": { + "encoding": "0100100----------000-----1010111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x48000057", + "mask": "0xfe00707f" + }, + "vsbc_vxm": { + "encoding": "0100100----------100-----1010111", + "variable_fields": ["rs1", "vd", "vs2"], + "extension": ["rv_v"], + "match": "0x48004057", + "mask": "0xfe00707f" + }, + "vse16_v": { + "encoding": "000000-00000-----101-----0100111", + "variable_fields": ["rs1", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0x5027", + "mask": "0xfdf0707f" + }, + "vse32_v": { + "encoding": "000000-00000-----110-----0100111", + "variable_fields": ["rs1", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0x6027", + "mask": "0xfdf0707f" + }, + "vse64_v": { + "encoding": "000000-00000-----111-----0100111", + "variable_fields": ["rs1", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0x7027", + "mask": "0xfdf0707f" + }, + "vse8_v": { + "encoding": "000000-00000-----000-----0100111", + "variable_fields": ["rs1", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0x27", + "mask": "0xfdf0707f" + }, + "vsetivli": { + "encoding": "11---------------111-----1010111", + "variable_fields": ["rd", "zimm10"], + "extension": ["rv_v"], + "match": "0xc0007057", + "mask": "0xc000707f" + }, + "vsetvl": { + "encoding": "1000000----------111-----1010111", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_v"], + "match": "0x80007057", + "mask": "0xfe00707f" + }, + "vsetvli": { + "encoding": "0----------------111-----1010111", + "variable_fields": ["rd", "rs1", "zimm11"], + "extension": ["rv_v"], + "match": "0x7057", + "mask": "0x8000707f" + }, + "vsext_vf2": { + "encoding": "010010------00111010-----1010111", + "variable_fields": ["vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x4803a057", + "mask": "0xfc0ff07f" + }, + "vsext_vf4": { + "encoding": "010010------00101010-----1010111", + "variable_fields": ["vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x4802a057", + "mask": "0xfc0ff07f" + }, + "vsext_vf8": { + "encoding": "010010------00011010-----1010111", + "variable_fields": ["vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x4801a057", + "mask": "0xfc0ff07f" + }, + "vsha2ch_vv": { + "encoding": "1011101----------010-----1110111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_zvkn", "rv_zvknha", "rv_zvknhb"], + "match": "0xba002077", + "mask": "0xfe00707f" + }, + "vsha2cl_vv": { + "encoding": "1011111----------010-----1110111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_zvkn", "rv_zvknha", "rv_zvknhb"], + "match": "0xbe002077", + "mask": "0xfe00707f" + }, + "vsha2ms_vv": { + "encoding": "1011011----------010-----1110111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_zvkn", "rv_zvknha", "rv_zvknhb"], + "match": "0xb6002077", + "mask": "0xfe00707f" + }, + "vslide1down_vx": { + "encoding": "001111-----------110-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x3c006057", + "mask": "0xfc00707f" + }, + "vslide1up_vx": { + "encoding": "001110-----------110-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x38006057", + "mask": "0xfc00707f" + }, + "vslidedown_vi": { + "encoding": "001111-----------011-----1010111", + "variable_fields": ["simm5", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x3c003057", + "mask": "0xfc00707f" + }, + "vslidedown_vx": { + "encoding": "001111-----------100-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x3c004057", + "mask": "0xfc00707f" + }, + "vslideup_vi": { + "encoding": "001110-----------011-----1010111", + "variable_fields": ["simm5", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x38003057", + "mask": "0xfc00707f" + }, + "vslideup_vx": { + "encoding": "001110-----------100-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x38004057", + "mask": "0xfc00707f" + }, + "vsll_vi": { + "encoding": "100101-----------011-----1010111", + "variable_fields": ["simm5", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x94003057", + "mask": "0xfc00707f" + }, + "vsll_vv": { + "encoding": "100101-----------000-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x94000057", + "mask": "0xfc00707f" + }, + "vsll_vx": { + "encoding": "100101-----------100-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x94004057", + "mask": "0xfc00707f" + }, + "vsm3c_vi": { + "encoding": "1010111----------010-----1110111", + "variable_fields": ["vd", "vs2", "zimm5"], + "extension": ["rv_zvks", "rv_zvksh"], + "match": "0xae002077", + "mask": "0xfe00707f" + }, + "vsm3me_vv": { + "encoding": "1000001----------010-----1110111", + "variable_fields": ["vd", "vs1", "vs2"], + "extension": ["rv_zvks", "rv_zvksh"], + "match": "0x82002077", + "mask": "0xfe00707f" + }, + "vsm4k_vi": { + "encoding": "1000011----------010-----1110111", + "variable_fields": ["vd", "vs2", "zimm5"], + "extension": ["rv_zvks", "rv_zvksed"], + "match": "0x86002077", + "mask": "0xfe00707f" + }, + "vsm4r_vs": { + "encoding": "1010011-----10000010-----1110111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_zvks", "rv_zvksed"], + "match": "0xa6082077", + "mask": "0xfe0ff07f" + }, + "vsm4r_vv": { + "encoding": "1010001-----10000010-----1110111", + "variable_fields": ["vd", "vs2"], + "extension": ["rv_zvks", "rv_zvksed"], + "match": "0xa2082077", + "mask": "0xfe0ff07f" + }, + "vsm_v": { + "encoding": "000000101011-----000-----0100111", + "variable_fields": ["rs1", "vs3"], + "extension": ["rv_v"], + "match": "0x2b00027", + "mask": "0xfff0707f" + }, + "vsmul_vv": { + "encoding": "100111-----------000-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x9c000057", + "mask": "0xfc00707f" + }, + "vsmul_vx": { + "encoding": "100111-----------100-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x9c004057", + "mask": "0xfc00707f" + }, + "vsoxei16_v": { + "encoding": "000011-----------101-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0xc005027", + "mask": "0xfc00707f" + }, + "vsoxei32_v": { + "encoding": "000011-----------110-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0xc006027", + "mask": "0xfc00707f" + }, + "vsoxei64_v": { + "encoding": "000011-----------111-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0xc007027", + "mask": "0xfc00707f" + }, + "vsoxei8_v": { + "encoding": "000011-----------000-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0xc000027", + "mask": "0xfc00707f" + }, + "vsoxseg2ei16_v": { + "encoding": "001011-----------101-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0x2c005027", + "mask": "0xfc00707f" + }, + "vsoxseg2ei32_v": { + "encoding": "001011-----------110-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0x2c006027", + "mask": "0xfc00707f" + }, + "vsoxseg2ei64_v": { + "encoding": "001011-----------111-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0x2c007027", + "mask": "0xfc00707f" + }, + "vsoxseg2ei8_v": { + "encoding": "001011-----------000-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0x2c000027", + "mask": "0xfc00707f" + }, + "vsoxseg3ei16_v": { + "encoding": "010011-----------101-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0x4c005027", + "mask": "0xfc00707f" + }, + "vsoxseg3ei32_v": { + "encoding": "010011-----------110-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0x4c006027", + "mask": "0xfc00707f" + }, + "vsoxseg3ei64_v": { + "encoding": "010011-----------111-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0x4c007027", + "mask": "0xfc00707f" + }, + "vsoxseg3ei8_v": { + "encoding": "010011-----------000-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0x4c000027", + "mask": "0xfc00707f" + }, + "vsoxseg4ei16_v": { + "encoding": "011011-----------101-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0x6c005027", + "mask": "0xfc00707f" + }, + "vsoxseg4ei32_v": { + "encoding": "011011-----------110-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0x6c006027", + "mask": "0xfc00707f" + }, + "vsoxseg4ei64_v": { + "encoding": "011011-----------111-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0x6c007027", + "mask": "0xfc00707f" + }, + "vsoxseg4ei8_v": { + "encoding": "011011-----------000-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0x6c000027", + "mask": "0xfc00707f" + }, + "vsoxseg5ei16_v": { + "encoding": "100011-----------101-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0x8c005027", + "mask": "0xfc00707f" + }, + "vsoxseg5ei32_v": { + "encoding": "100011-----------110-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0x8c006027", + "mask": "0xfc00707f" + }, + "vsoxseg5ei64_v": { + "encoding": "100011-----------111-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0x8c007027", + "mask": "0xfc00707f" + }, + "vsoxseg5ei8_v": { + "encoding": "100011-----------000-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0x8c000027", + "mask": "0xfc00707f" + }, + "vsoxseg6ei16_v": { + "encoding": "101011-----------101-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0xac005027", + "mask": "0xfc00707f" + }, + "vsoxseg6ei32_v": { + "encoding": "101011-----------110-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0xac006027", + "mask": "0xfc00707f" + }, + "vsoxseg6ei64_v": { + "encoding": "101011-----------111-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0xac007027", + "mask": "0xfc00707f" + }, + "vsoxseg6ei8_v": { + "encoding": "101011-----------000-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0xac000027", + "mask": "0xfc00707f" + }, + "vsoxseg7ei16_v": { + "encoding": "110011-----------101-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0xcc005027", + "mask": "0xfc00707f" + }, + "vsoxseg7ei32_v": { + "encoding": "110011-----------110-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0xcc006027", + "mask": "0xfc00707f" + }, + "vsoxseg7ei64_v": { + "encoding": "110011-----------111-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0xcc007027", + "mask": "0xfc00707f" + }, + "vsoxseg7ei8_v": { + "encoding": "110011-----------000-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0xcc000027", + "mask": "0xfc00707f" + }, + "vsoxseg8ei16_v": { + "encoding": "111011-----------101-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0xec005027", + "mask": "0xfc00707f" + }, + "vsoxseg8ei32_v": { + "encoding": "111011-----------110-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0xec006027", + "mask": "0xfc00707f" + }, + "vsoxseg8ei64_v": { + "encoding": "111011-----------111-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0xec007027", + "mask": "0xfc00707f" + }, + "vsoxseg8ei8_v": { + "encoding": "111011-----------000-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0xec000027", + "mask": "0xfc00707f" + }, + "vsra_vi": { + "encoding": "101001-----------011-----1010111", + "variable_fields": ["simm5", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xa4003057", + "mask": "0xfc00707f" + }, + "vsra_vv": { + "encoding": "101001-----------000-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xa4000057", + "mask": "0xfc00707f" + }, + "vsra_vx": { + "encoding": "101001-----------100-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xa4004057", + "mask": "0xfc00707f" + }, + "vsrl_vi": { + "encoding": "101000-----------011-----1010111", + "variable_fields": ["simm5", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xa0003057", + "mask": "0xfc00707f" + }, + "vsrl_vv": { + "encoding": "101000-----------000-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xa0000057", + "mask": "0xfc00707f" + }, + "vsrl_vx": { + "encoding": "101000-----------100-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xa0004057", + "mask": "0xfc00707f" + }, + "vsse16_v": { + "encoding": "000010-----------101-----0100111", + "variable_fields": ["rs1", "rs2", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0x8005027", + "mask": "0xfc00707f" + }, + "vsse32_v": { + "encoding": "000010-----------110-----0100111", + "variable_fields": ["rs1", "rs2", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0x8006027", + "mask": "0xfc00707f" + }, + "vsse64_v": { + "encoding": "000010-----------111-----0100111", + "variable_fields": ["rs1", "rs2", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0x8007027", + "mask": "0xfc00707f" + }, + "vsse8_v": { + "encoding": "000010-----------000-----0100111", + "variable_fields": ["rs1", "rs2", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0x8000027", + "mask": "0xfc00707f" + }, + "vsseg2e16_v": { + "encoding": "001000-00000-----101-----0100111", + "variable_fields": ["rs1", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0x20005027", + "mask": "0xfdf0707f" + }, + "vsseg2e32_v": { + "encoding": "001000-00000-----110-----0100111", + "variable_fields": ["rs1", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0x20006027", + "mask": "0xfdf0707f" + }, + "vsseg2e64_v": { + "encoding": "001000-00000-----111-----0100111", + "variable_fields": ["rs1", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0x20007027", + "mask": "0xfdf0707f" + }, + "vsseg2e8_v": { + "encoding": "001000-00000-----000-----0100111", + "variable_fields": ["rs1", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0x20000027", + "mask": "0xfdf0707f" + }, + "vsseg3e16_v": { + "encoding": "010000-00000-----101-----0100111", + "variable_fields": ["rs1", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0x40005027", + "mask": "0xfdf0707f" + }, + "vsseg3e32_v": { + "encoding": "010000-00000-----110-----0100111", + "variable_fields": ["rs1", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0x40006027", + "mask": "0xfdf0707f" + }, + "vsseg3e64_v": { + "encoding": "010000-00000-----111-----0100111", + "variable_fields": ["rs1", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0x40007027", + "mask": "0xfdf0707f" + }, + "vsseg3e8_v": { + "encoding": "010000-00000-----000-----0100111", + "variable_fields": ["rs1", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0x40000027", + "mask": "0xfdf0707f" + }, + "vsseg4e16_v": { + "encoding": "011000-00000-----101-----0100111", + "variable_fields": ["rs1", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0x60005027", + "mask": "0xfdf0707f" + }, + "vsseg4e32_v": { + "encoding": "011000-00000-----110-----0100111", + "variable_fields": ["rs1", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0x60006027", + "mask": "0xfdf0707f" + }, + "vsseg4e64_v": { + "encoding": "011000-00000-----111-----0100111", + "variable_fields": ["rs1", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0x60007027", + "mask": "0xfdf0707f" + }, + "vsseg4e8_v": { + "encoding": "011000-00000-----000-----0100111", + "variable_fields": ["rs1", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0x60000027", + "mask": "0xfdf0707f" + }, + "vsseg5e16_v": { + "encoding": "100000-00000-----101-----0100111", + "variable_fields": ["rs1", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0x80005027", + "mask": "0xfdf0707f" + }, + "vsseg5e32_v": { + "encoding": "100000-00000-----110-----0100111", + "variable_fields": ["rs1", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0x80006027", + "mask": "0xfdf0707f" + }, + "vsseg5e64_v": { + "encoding": "100000-00000-----111-----0100111", + "variable_fields": ["rs1", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0x80007027", + "mask": "0xfdf0707f" + }, + "vsseg5e8_v": { + "encoding": "100000-00000-----000-----0100111", + "variable_fields": ["rs1", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0x80000027", + "mask": "0xfdf0707f" + }, + "vsseg6e16_v": { + "encoding": "101000-00000-----101-----0100111", + "variable_fields": ["rs1", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0xa0005027", + "mask": "0xfdf0707f" + }, + "vsseg6e32_v": { + "encoding": "101000-00000-----110-----0100111", + "variable_fields": ["rs1", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0xa0006027", + "mask": "0xfdf0707f" + }, + "vsseg6e64_v": { + "encoding": "101000-00000-----111-----0100111", + "variable_fields": ["rs1", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0xa0007027", + "mask": "0xfdf0707f" + }, + "vsseg6e8_v": { + "encoding": "101000-00000-----000-----0100111", + "variable_fields": ["rs1", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0xa0000027", + "mask": "0xfdf0707f" + }, + "vsseg7e16_v": { + "encoding": "110000-00000-----101-----0100111", + "variable_fields": ["rs1", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0xc0005027", + "mask": "0xfdf0707f" + }, + "vsseg7e32_v": { + "encoding": "110000-00000-----110-----0100111", + "variable_fields": ["rs1", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0xc0006027", + "mask": "0xfdf0707f" + }, + "vsseg7e64_v": { + "encoding": "110000-00000-----111-----0100111", + "variable_fields": ["rs1", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0xc0007027", + "mask": "0xfdf0707f" + }, + "vsseg7e8_v": { + "encoding": "110000-00000-----000-----0100111", + "variable_fields": ["rs1", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0xc0000027", + "mask": "0xfdf0707f" + }, + "vsseg8e16_v": { + "encoding": "111000-00000-----101-----0100111", + "variable_fields": ["rs1", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0xe0005027", + "mask": "0xfdf0707f" + }, + "vsseg8e32_v": { + "encoding": "111000-00000-----110-----0100111", + "variable_fields": ["rs1", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0xe0006027", + "mask": "0xfdf0707f" + }, + "vsseg8e64_v": { + "encoding": "111000-00000-----111-----0100111", + "variable_fields": ["rs1", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0xe0007027", + "mask": "0xfdf0707f" + }, + "vsseg8e8_v": { + "encoding": "111000-00000-----000-----0100111", + "variable_fields": ["rs1", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0xe0000027", + "mask": "0xfdf0707f" + }, + "vssra_vi": { + "encoding": "101011-----------011-----1010111", + "variable_fields": ["simm5", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xac003057", + "mask": "0xfc00707f" + }, + "vssra_vv": { + "encoding": "101011-----------000-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xac000057", + "mask": "0xfc00707f" + }, + "vssra_vx": { + "encoding": "101011-----------100-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xac004057", + "mask": "0xfc00707f" + }, + "vssrl_vi": { + "encoding": "101010-----------011-----1010111", + "variable_fields": ["simm5", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xa8003057", + "mask": "0xfc00707f" + }, + "vssrl_vv": { + "encoding": "101010-----------000-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xa8000057", + "mask": "0xfc00707f" + }, + "vssrl_vx": { + "encoding": "101010-----------100-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xa8004057", + "mask": "0xfc00707f" + }, + "vssseg2e16_v": { + "encoding": "001010-----------101-----0100111", + "variable_fields": ["rs1", "rs2", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0x28005027", + "mask": "0xfc00707f" + }, + "vssseg2e32_v": { + "encoding": "001010-----------110-----0100111", + "variable_fields": ["rs1", "rs2", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0x28006027", + "mask": "0xfc00707f" + }, + "vssseg2e64_v": { + "encoding": "001010-----------111-----0100111", + "variable_fields": ["rs1", "rs2", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0x28007027", + "mask": "0xfc00707f" + }, + "vssseg2e8_v": { + "encoding": "001010-----------000-----0100111", + "variable_fields": ["rs1", "rs2", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0x28000027", + "mask": "0xfc00707f" + }, + "vssseg3e16_v": { + "encoding": "010010-----------101-----0100111", + "variable_fields": ["rs1", "rs2", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0x48005027", + "mask": "0xfc00707f" + }, + "vssseg3e32_v": { + "encoding": "010010-----------110-----0100111", + "variable_fields": ["rs1", "rs2", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0x48006027", + "mask": "0xfc00707f" + }, + "vssseg3e64_v": { + "encoding": "010010-----------111-----0100111", + "variable_fields": ["rs1", "rs2", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0x48007027", + "mask": "0xfc00707f" + }, + "vssseg3e8_v": { + "encoding": "010010-----------000-----0100111", + "variable_fields": ["rs1", "rs2", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0x48000027", + "mask": "0xfc00707f" + }, + "vssseg4e16_v": { + "encoding": "011010-----------101-----0100111", + "variable_fields": ["rs1", "rs2", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0x68005027", + "mask": "0xfc00707f" + }, + "vssseg4e32_v": { + "encoding": "011010-----------110-----0100111", + "variable_fields": ["rs1", "rs2", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0x68006027", + "mask": "0xfc00707f" + }, + "vssseg4e64_v": { + "encoding": "011010-----------111-----0100111", + "variable_fields": ["rs1", "rs2", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0x68007027", + "mask": "0xfc00707f" + }, + "vssseg4e8_v": { + "encoding": "011010-----------000-----0100111", + "variable_fields": ["rs1", "rs2", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0x68000027", + "mask": "0xfc00707f" + }, + "vssseg5e16_v": { + "encoding": "100010-----------101-----0100111", + "variable_fields": ["rs1", "rs2", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0x88005027", + "mask": "0xfc00707f" + }, + "vssseg5e32_v": { + "encoding": "100010-----------110-----0100111", + "variable_fields": ["rs1", "rs2", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0x88006027", + "mask": "0xfc00707f" + }, + "vssseg5e64_v": { + "encoding": "100010-----------111-----0100111", + "variable_fields": ["rs1", "rs2", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0x88007027", + "mask": "0xfc00707f" + }, + "vssseg5e8_v": { + "encoding": "100010-----------000-----0100111", + "variable_fields": ["rs1", "rs2", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0x88000027", + "mask": "0xfc00707f" + }, + "vssseg6e16_v": { + "encoding": "101010-----------101-----0100111", + "variable_fields": ["rs1", "rs2", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0xa8005027", + "mask": "0xfc00707f" + }, + "vssseg6e32_v": { + "encoding": "101010-----------110-----0100111", + "variable_fields": ["rs1", "rs2", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0xa8006027", + "mask": "0xfc00707f" + }, + "vssseg6e64_v": { + "encoding": "101010-----------111-----0100111", + "variable_fields": ["rs1", "rs2", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0xa8007027", + "mask": "0xfc00707f" + }, + "vssseg6e8_v": { + "encoding": "101010-----------000-----0100111", + "variable_fields": ["rs1", "rs2", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0xa8000027", + "mask": "0xfc00707f" + }, + "vssseg7e16_v": { + "encoding": "110010-----------101-----0100111", + "variable_fields": ["rs1", "rs2", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0xc8005027", + "mask": "0xfc00707f" + }, + "vssseg7e32_v": { + "encoding": "110010-----------110-----0100111", + "variable_fields": ["rs1", "rs2", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0xc8006027", + "mask": "0xfc00707f" + }, + "vssseg7e64_v": { + "encoding": "110010-----------111-----0100111", + "variable_fields": ["rs1", "rs2", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0xc8007027", + "mask": "0xfc00707f" + }, + "vssseg7e8_v": { + "encoding": "110010-----------000-----0100111", + "variable_fields": ["rs1", "rs2", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0xc8000027", + "mask": "0xfc00707f" + }, + "vssseg8e16_v": { + "encoding": "111010-----------101-----0100111", + "variable_fields": ["rs1", "rs2", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0xe8005027", + "mask": "0xfc00707f" + }, + "vssseg8e32_v": { + "encoding": "111010-----------110-----0100111", + "variable_fields": ["rs1", "rs2", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0xe8006027", + "mask": "0xfc00707f" + }, + "vssseg8e64_v": { + "encoding": "111010-----------111-----0100111", + "variable_fields": ["rs1", "rs2", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0xe8007027", + "mask": "0xfc00707f" + }, + "vssseg8e8_v": { + "encoding": "111010-----------000-----0100111", + "variable_fields": ["rs1", "rs2", "vm", "vs3"], + "extension": ["rv_v"], + "match": "0xe8000027", + "mask": "0xfc00707f" + }, + "vssub_vv": { + "encoding": "100011-----------000-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x8c000057", + "mask": "0xfc00707f" + }, + "vssub_vx": { + "encoding": "100011-----------100-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x8c004057", + "mask": "0xfc00707f" + }, + "vssubu_vv": { + "encoding": "100010-----------000-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x88000057", + "mask": "0xfc00707f" + }, + "vssubu_vx": { + "encoding": "100010-----------100-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x88004057", + "mask": "0xfc00707f" + }, + "vsub_vv": { + "encoding": "000010-----------000-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x8000057", + "mask": "0xfc00707f" + }, + "vsub_vx": { + "encoding": "000010-----------100-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x8004057", + "mask": "0xfc00707f" + }, + "vsuxei16_v": { + "encoding": "000001-----------101-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0x4005027", + "mask": "0xfc00707f" + }, + "vsuxei32_v": { + "encoding": "000001-----------110-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0x4006027", + "mask": "0xfc00707f" + }, + "vsuxei64_v": { + "encoding": "000001-----------111-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0x4007027", + "mask": "0xfc00707f" + }, + "vsuxei8_v": { + "encoding": "000001-----------000-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0x4000027", + "mask": "0xfc00707f" + }, + "vsuxseg2ei16_v": { + "encoding": "001001-----------101-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0x24005027", + "mask": "0xfc00707f" + }, + "vsuxseg2ei32_v": { + "encoding": "001001-----------110-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0x24006027", + "mask": "0xfc00707f" + }, + "vsuxseg2ei64_v": { + "encoding": "001001-----------111-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0x24007027", + "mask": "0xfc00707f" + }, + "vsuxseg2ei8_v": { + "encoding": "001001-----------000-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0x24000027", + "mask": "0xfc00707f" + }, + "vsuxseg3ei16_v": { + "encoding": "010001-----------101-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0x44005027", + "mask": "0xfc00707f" + }, + "vsuxseg3ei32_v": { + "encoding": "010001-----------110-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0x44006027", + "mask": "0xfc00707f" + }, + "vsuxseg3ei64_v": { + "encoding": "010001-----------111-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0x44007027", + "mask": "0xfc00707f" + }, + "vsuxseg3ei8_v": { + "encoding": "010001-----------000-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0x44000027", + "mask": "0xfc00707f" + }, + "vsuxseg4ei16_v": { + "encoding": "011001-----------101-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0x64005027", + "mask": "0xfc00707f" + }, + "vsuxseg4ei32_v": { + "encoding": "011001-----------110-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0x64006027", + "mask": "0xfc00707f" + }, + "vsuxseg4ei64_v": { + "encoding": "011001-----------111-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0x64007027", + "mask": "0xfc00707f" + }, + "vsuxseg4ei8_v": { + "encoding": "011001-----------000-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0x64000027", + "mask": "0xfc00707f" + }, + "vsuxseg5ei16_v": { + "encoding": "100001-----------101-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0x84005027", + "mask": "0xfc00707f" + }, + "vsuxseg5ei32_v": { + "encoding": "100001-----------110-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0x84006027", + "mask": "0xfc00707f" + }, + "vsuxseg5ei64_v": { + "encoding": "100001-----------111-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0x84007027", + "mask": "0xfc00707f" + }, + "vsuxseg5ei8_v": { + "encoding": "100001-----------000-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0x84000027", + "mask": "0xfc00707f" + }, + "vsuxseg6ei16_v": { + "encoding": "101001-----------101-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0xa4005027", + "mask": "0xfc00707f" + }, + "vsuxseg6ei32_v": { + "encoding": "101001-----------110-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0xa4006027", + "mask": "0xfc00707f" + }, + "vsuxseg6ei64_v": { + "encoding": "101001-----------111-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0xa4007027", + "mask": "0xfc00707f" + }, + "vsuxseg6ei8_v": { + "encoding": "101001-----------000-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0xa4000027", + "mask": "0xfc00707f" + }, + "vsuxseg7ei16_v": { + "encoding": "110001-----------101-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0xc4005027", + "mask": "0xfc00707f" + }, + "vsuxseg7ei32_v": { + "encoding": "110001-----------110-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0xc4006027", + "mask": "0xfc00707f" + }, + "vsuxseg7ei64_v": { + "encoding": "110001-----------111-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0xc4007027", + "mask": "0xfc00707f" + }, + "vsuxseg7ei8_v": { + "encoding": "110001-----------000-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0xc4000027", + "mask": "0xfc00707f" + }, + "vsuxseg8ei16_v": { + "encoding": "111001-----------101-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0xe4005027", + "mask": "0xfc00707f" + }, + "vsuxseg8ei32_v": { + "encoding": "111001-----------110-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0xe4006027", + "mask": "0xfc00707f" + }, + "vsuxseg8ei64_v": { + "encoding": "111001-----------111-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0xe4007027", + "mask": "0xfc00707f" + }, + "vsuxseg8ei8_v": { + "encoding": "111001-----------000-----0100111", + "variable_fields": ["rs1", "vm", "vs2", "vs3"], + "extension": ["rv_v"], + "match": "0xe4000027", + "mask": "0xfc00707f" + }, + "vwadd_vv": { + "encoding": "110001-----------010-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xc4002057", + "mask": "0xfc00707f" + }, + "vwadd_vx": { + "encoding": "110001-----------110-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xc4006057", + "mask": "0xfc00707f" + }, + "vwadd_wv": { + "encoding": "110101-----------010-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xd4002057", + "mask": "0xfc00707f" + }, + "vwadd_wx": { + "encoding": "110101-----------110-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xd4006057", + "mask": "0xfc00707f" + }, + "vwaddu_vv": { + "encoding": "110000-----------010-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xc0002057", + "mask": "0xfc00707f" + }, + "vwaddu_vx": { + "encoding": "110000-----------110-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xc0006057", + "mask": "0xfc00707f" + }, + "vwaddu_wv": { + "encoding": "110100-----------010-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xd0002057", + "mask": "0xfc00707f" + }, + "vwaddu_wx": { + "encoding": "110100-----------110-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xd0006057", + "mask": "0xfc00707f" + }, + "vwmacc_vv": { + "encoding": "111101-----------010-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xf4002057", + "mask": "0xfc00707f" + }, + "vwmacc_vx": { + "encoding": "111101-----------110-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xf4006057", + "mask": "0xfc00707f" + }, + "vwmaccsu_vv": { + "encoding": "111111-----------010-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xfc002057", + "mask": "0xfc00707f" + }, + "vwmaccsu_vx": { + "encoding": "111111-----------110-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xfc006057", + "mask": "0xfc00707f" + }, + "vwmaccu_vv": { + "encoding": "111100-----------010-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xf0002057", + "mask": "0xfc00707f" + }, + "vwmaccu_vx": { + "encoding": "111100-----------110-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xf0006057", + "mask": "0xfc00707f" + }, + "vwmaccus_vx": { + "encoding": "111110-----------110-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xf8006057", + "mask": "0xfc00707f" + }, + "vwmul_vv": { + "encoding": "111011-----------010-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xec002057", + "mask": "0xfc00707f" + }, + "vwmul_vx": { + "encoding": "111011-----------110-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xec006057", + "mask": "0xfc00707f" + }, + "vwmulsu_vv": { + "encoding": "111010-----------010-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xe8002057", + "mask": "0xfc00707f" + }, + "vwmulsu_vx": { + "encoding": "111010-----------110-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xe8006057", + "mask": "0xfc00707f" + }, + "vwmulu_vv": { + "encoding": "111000-----------010-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xe0002057", + "mask": "0xfc00707f" + }, + "vwmulu_vx": { + "encoding": "111000-----------110-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xe0006057", + "mask": "0xfc00707f" + }, + "vwredsum_vs": { + "encoding": "110001-----------000-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xc4000057", + "mask": "0xfc00707f" + }, + "vwredsumu_vs": { + "encoding": "110000-----------000-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xc0000057", + "mask": "0xfc00707f" + }, + "vwsll_vi": { + "encoding": "110101-----------011-----1010111", + "variable_fields": ["vd", "vm", "vs2", "zimm5"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0xd4003057", + "mask": "0xfc00707f" + }, + "vwsll_vv": { + "encoding": "110101-----------000-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0xd4000057", + "mask": "0xfc00707f" + }, + "vwsll_vx": { + "encoding": "110101-----------100-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], + "match": "0xd4004057", + "mask": "0xfc00707f" + }, + "vwsub_vv": { + "encoding": "110011-----------010-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xcc002057", + "mask": "0xfc00707f" + }, + "vwsub_vx": { + "encoding": "110011-----------110-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xcc006057", + "mask": "0xfc00707f" + }, + "vwsub_wv": { + "encoding": "110111-----------010-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xdc002057", + "mask": "0xfc00707f" + }, + "vwsub_wx": { + "encoding": "110111-----------110-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xdc006057", + "mask": "0xfc00707f" + }, + "vwsubu_vv": { + "encoding": "110010-----------010-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xc8002057", + "mask": "0xfc00707f" + }, + "vwsubu_vx": { + "encoding": "110010-----------110-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xc8006057", + "mask": "0xfc00707f" + }, + "vwsubu_wv": { + "encoding": "110110-----------010-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0xd8002057", + "mask": "0xfc00707f" + }, + "vwsubu_wx": { + "encoding": "110110-----------110-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0xd8006057", + "mask": "0xfc00707f" + }, + "vxor_vi": { + "encoding": "001011-----------011-----1010111", + "variable_fields": ["simm5", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x2c003057", + "mask": "0xfc00707f" + }, + "vxor_vv": { + "encoding": "001011-----------000-----1010111", + "variable_fields": ["vd", "vm", "vs1", "vs2"], + "extension": ["rv_v"], + "match": "0x2c000057", + "mask": "0xfc00707f" + }, + "vxor_vx": { + "encoding": "001011-----------100-----1010111", + "variable_fields": ["rs1", "vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x2c004057", + "mask": "0xfc00707f" + }, + "vzext_vf2": { + "encoding": "010010------00110010-----1010111", + "variable_fields": ["vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x48032057", + "mask": "0xfc0ff07f" + }, + "vzext_vf4": { + "encoding": "010010------00100010-----1010111", + "variable_fields": ["vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x48022057", + "mask": "0xfc0ff07f" + }, + "vzext_vf8": { + "encoding": "010010------00010010-----1010111", + "variable_fields": ["vd", "vm", "vs2"], + "extension": ["rv_v"], + "match": "0x48012057", + "mask": "0xfc0ff07f" + }, + "wfi": { + "encoding": "00010000010100000000000001110011", + "variable_fields": [], + "extension": ["rv_sm"], + "match": "0x10500073", + "mask": "0xffffffff" + }, + "wrs_nto": { + "encoding": "00000000110100000000000001110011", + "variable_fields": [], + "extension": ["rv_zawrs"], + "match": "0xd00073", + "mask": "0xffffffff" + }, + "wrs_sto": { + "encoding": "00000001110100000000000001110011", + "variable_fields": [], + "extension": ["rv_zawrs"], + "match": "0x1d00073", + "mask": "0xffffffff" + }, + "xnor": { + "encoding": "0100000----------100-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_b", "rv_zbb", "rv_zbkb", "rv_zk", "rv_zkn", "rv_zks"], + "match": "0x40004033", + "mask": "0xfe00707f" + }, + "xor": { + "encoding": "0000000----------100-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_i"], + "match": "0x4033", + "mask": "0xfe00707f" + }, + "xori": { + "encoding": "-----------------100-----0010011", + "variable_fields": ["imm12", "rd", "rs1"], + "extension": ["rv_i"], + "match": "0x4013", + "mask": "0x707f" + }, + "xperm4": { + "encoding": "0010100----------010-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zbkx"], + "match": "0x28002033", + "mask": "0xfe00707f" + }, + "xperm8": { + "encoding": "0010100----------100-----0110011", + "variable_fields": ["rd", "rs1", "rs2"], + "extension": ["rv_zbkx"], + "match": "0x28004033", + "mask": "0xfe00707f" + }, + "zext_h": { + "encoding": "000010000000-----100-----0111011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv64_b", "rv64_zbb"], + "match": "0x800403b", + "mask": "0xfff0707f" + }, + "zip": { + "encoding": "000010001111-----001-----0010011", + "variable_fields": ["rd", "rs1"], + "extension": ["rv32_zbkb"], + "match": "0x8f01013", + "mask": "0xfff0707f" + } +} diff --git a/backends/opcodes_maker/sorter.py b/backends/opcodes_maker/sorter.py index b2b07deac..bde4f78a1 100644 --- a/backends/opcodes_maker/sorter.py +++ b/backends/opcodes_maker/sorter.py @@ -16,15 +16,17 @@ def sort_instr_json(dir_name, outname): # Add the processed entry to the sorted data sorted_data[key] = entry + # Write the sorted data with an indentation of 2 spaces with open(outname, "w") as file: - json.dump(sorted_data, file, indent=4) + json.dump(sorted_data, file, indent=2) - print(json.dumps(sorted_data, indent=4)) + print(json.dumps(sorted_data, indent=2)) def main(): - sort_instr_json("instr_dict.json", "udb_sorted_data.json") - sort_instr_json("instr_dict.json", "opcodes_sorted_data.json") + # Uncomment and adjust file names as needed + # sort_instr_json("instr_dict.json", "udb_sorted_data.json") + sort_instr_json("processed_instr_dict.json", "sorted_instr_dict.json") main() diff --git a/backends/opcodes_maker/yaml_to_json.py b/backends/opcodes_maker/yaml_to_json.py index a566e6dba..e7961b095 100755 --- a/backends/opcodes_maker/yaml_to_json.py +++ b/backends/opcodes_maker/yaml_to_json.py @@ -10,7 +10,6 @@ def load_fieldo() -> dict: this_dir = os.path.dirname(os.path.abspath(__file__)) json_path = os.path.join(this_dir, "fieldo.json") - try: with open(json_path) as f: return json.load(f) @@ -21,7 +20,7 @@ def load_fieldo() -> dict: # Set of register names that need transformation. -reg_names = {"qs1", "qs2", "qd", "fs1", "fs2", "fd"} +reg_names = {"qs1", "qs2", "qd", "fs1", "fs2", "fd", "hs1", "dd", "hd"} fieldo = load_fieldo() @@ -81,29 +80,75 @@ def canonical_immediate_names( ) -> List[str]: """ Given a YAML immediate variable (its base name and location), return a list of canonical - field names strictly from the fieldo mapping. + field names from fieldo. + + This function supports several formats: - For composite locations (detected by "|" in the location), we assume a branch-immediate split: - - The high part uses the range (31, 25) - - The low part uses the range (11, 7) + 1. Standard composite format of the form "X-Y|Z-W" (e.g. "31-25|11-7"). + For branch instructions (when var_name is "imm" and instr_name starts with "b"), + the prefix is forced to "bimm". - If left_shift is True and multiple candidates exist, the lookup will prefer the one starting with 'bimm'. + 2. A new compound format with four parts separated by "|" (e.g. "31|7|30-25|11-8"). + In that case, we derive: + - High part: MSB from the first part and LSB from the lower end of the third part. + - Low part: MSB from the first number in the fourth part and LSB from the second part. + For branch instructions, the prefix is forced to "bimm". + + 3. Non-composite locations in the form "X-Y". """ - if "|" in location: - parts = location.split("|") - if len(parts) == 4: - # Use a default prefix based on instruction name if left_shift is not set. - # Otherwise, simply use the variable name so that the left_shift flag in lookup_immediate_by_range can choose 'bimm' if available. + parts = location.split("|") + if len(parts) == 4 and var_name == "imm" and instr_name.lower().startswith("b"): + # New compound format, e.g.: "31|7|30-25|11-8" + try: + # For the high part: take the first part as MSB and the lower end of the third part as LSB. + high_msb = int(parts[0]) + high_lsb = int(parts[2].split("-")[-1]) + # For the low part: take the first number of the fourth part as MSB and the second part as LSB. + low_msb = int(parts[3].split("-")[0]) + low_lsb = int(parts[1]) + except Exception as e: + print( + f"Warning: invalid branch compound immediate format in location '{location}': {e}" + ) + return [] + hi_candidate = lookup_immediate_by_range( + "bimm", high_msb, high_lsb, instr_name, left_shift=left_shift + ) + lo_candidate = lookup_immediate_by_range( + "bimm", low_msb, low_lsb, instr_name, left_shift=left_shift + ) + if hi_candidate is None or lo_candidate is None: + print( + f"Warning: composite immediate candidate not found in fieldo for {var_name} with location {location}" + ) + return [] + return [hi_candidate, lo_candidate] + elif "|" in location: + # Standard composite format, e.g.: "31-25|11-7" + import re + + match = re.match(r"(\d+-\d+)\|(\d+-\d+)", location) + if match: + high_range = match.group(1) + low_range = match.group(2) + try: + high_msb, high_lsb = map(int, high_range.split("-")) + low_msb, low_lsb = map(int, low_range.split("-")) + except Exception as e: + print( + f"Warning: invalid composite immediate range in location '{location}': {e}" + ) + return [] prefix = ( - var_name - if left_shift - else ("bimm" if instr_name.lower().startswith("b") else var_name) + "bimm" + if var_name == "imm" and instr_name.lower().startswith("b") + else var_name ) hi_candidate = lookup_immediate_by_range( - prefix, 31, 25, instr_name, left_shift=left_shift + prefix, high_msb, high_lsb, instr_name, left_shift=left_shift ) lo_candidate = lookup_immediate_by_range( - prefix, 11, 7, instr_name, left_shift=left_shift + prefix, low_msb, low_lsb, instr_name, left_shift=left_shift ) if hi_candidate is None or lo_candidate is None: print( @@ -112,8 +157,10 @@ def canonical_immediate_names( return [] return [hi_candidate, lo_candidate] else: - # For other composite formats, attempt a basic lookup using the first two numbers. - nums = list(map(int, re.findall(r"\d+", location))) + # Fallback: try to extract numbers and use the first two. + from re import findall + + nums = list(map(int, findall(r"\d+", location))) if len(nums) >= 2: high, low = nums[0], nums[1] candidate = lookup_immediate_by_range( @@ -126,6 +173,7 @@ def canonical_immediate_names( ) return [] else: + # Non-composite format: "X-Y" try: high, low = map(int, location.split("-")) except Exception: @@ -135,6 +183,13 @@ def canonical_immediate_names( var_name, high, low, instr_name, left_shift=left_shift ) if candidate: + # If candidate ends with "hi", attempt to get its complementary lower-part. + if candidate.endswith("hi"): + lo_candidate = lookup_immediate_by_range( + var_name, 11, 7, instr_name, left_shift=left_shift + ) + if lo_candidate: + return [candidate, lo_candidate] return [candidate] else: print( @@ -149,17 +204,24 @@ def GetVariables(vars: List[Dict[str, str]], instr_name: str = "") -> List[str]: - For registers (names in reg_names), the first character is replaced with "r". - For "shamt", the field is renamed to "shamtw" if its width is 5 or "shamtd" if 6. - - For immediates (base names "imm", "simm", "zimm", "jimm", or those starting with "c_"), - the canonical names are determined strictly by looking them up in fieldo. + - For immediates (variable names "imm", "simm", "zimm", "jimm", or those starting with "c_"), + the canonical names are determined strictly via fieldo. Only names found in fieldo are used. - - If the immediate field has a 'left_shift' attribute equal to 1, the left_shift flag is passed so that, - if multiple canonical candidates exist, the candidate starting with 'bimm' is preferred. + - If an immediate has a 'left_shift' attribute equal to 1, that flag is passed on to influence candidate selection. + - For any other variable field, it is added only if it exists in fieldo. + - Special case: if the YAML variable is "hs1", it is renamed to "rs1". """ result = [] for var in reversed(vars): - var_name = var["name"] + # Normalize variable name to lowercase + var_name = var["name"].lower() + location = var.get("location", "") - if var_name in reg_names: + if ( + var_name in reg_names + or var_name.startswith("q") + or var_name.startswith("f") + ): result.append("r" + var_name[1:]) elif var_name == "shamt": size = range_size(location) @@ -170,7 +232,6 @@ def GetVariables(vars: List[Dict[str, str]], instr_name: str = "") -> List[str]: else: result.append(var_name) elif var_name in ("imm", "simm", "zimm", "jimm") or var_name.startswith("c_"): - # Check for left_shift attribute (equals 1) and pass that flag along. left_shift_flag = var.get("left_shift", 0) == 1 canon_names = canonical_immediate_names( var_name, location, instr_name, left_shift=left_shift_flag @@ -182,7 +243,13 @@ def GetVariables(vars: List[Dict[str, str]], instr_name: str = "") -> List[str]: f"Warning: Skipping immediate field {var_name} with location {location} since no fieldo mapping was found." ) else: - result.append(var_name) + # Only add the variable if it exists in fieldo. + if var_name in fieldo: + result.append(var_name) + else: + print( + f"Warning: Variable field '{var_name}' not found in fieldo mapping; skipping." + ) return result @@ -266,7 +333,6 @@ def convert(file_dir: str, json_out: Dict[str, Any]) -> None: return instr_name = data["name"].replace(".", "_") - print(instr_name) encodings = data["encoding"] @@ -329,7 +395,6 @@ def main(): args = parser.parse_args() - # Ensure input directory exists if not os.path.isdir(args.input_dir): parser.error(f"Input directory does not exist: {args.input_dir}") @@ -348,10 +413,7 @@ def main(): print(f"Warning: Failed to process {yaml_file}: {str(e)}") continue - insts_sorted = {} - for inst in sorted(inst_dict): - insts_sorted[inst] = inst_dict[inst] - + insts_sorted = {inst: inst_dict[inst] for inst in sorted(inst_dict)} with open(output_file, "w") as outfile: json.dump(insts_sorted, outfile, indent=4) From 19610a6cb280d1675a9bdddf32c4838d6c2fd4dd Mon Sep 17 00:00:00 2001 From: Afonso Oliveira Date: Wed, 12 Mar 2025 09:55:58 +0000 Subject: [PATCH 24/33] Add JAL corner case Signed-off-by: Afonso Oliveira --- backends/opcodes_maker/yaml_to_json.py | 44 ++++++++++++++++++-------- 1 file changed, 31 insertions(+), 13 deletions(-) diff --git a/backends/opcodes_maker/yaml_to_json.py b/backends/opcodes_maker/yaml_to_json.py index e7961b095..ce9cba157 100755 --- a/backends/opcodes_maker/yaml_to_json.py +++ b/backends/opcodes_maker/yaml_to_json.py @@ -82,29 +82,26 @@ def canonical_immediate_names( Given a YAML immediate variable (its base name and location), return a list of canonical field names from fieldo. - This function supports several formats: + Supports several formats: - 1. Standard composite format of the form "X-Y|Z-W" (e.g. "31-25|11-7"). - For branch instructions (when var_name is "imm" and instr_name starts with "b"), - the prefix is forced to "bimm". + 1. For branch instructions (name starts with 'b') and a 4-part compound format, + e.g. "31|7|30-25|11-8", it extracts the two parts using 'bimm' as the prefix. - 2. A new compound format with four parts separated by "|" (e.g. "31|7|30-25|11-8"). - In that case, we derive: - - High part: MSB from the first part and LSB from the lower end of the third part. - - Low part: MSB from the first number in the fourth part and LSB from the second part. - For branch instructions, the prefix is forced to "bimm". + 2. For jump instructions (name starts with 'j') with a 4-part compound format, + e.g. "31|19-12|20|30-21", it extracts the overall high (from part 0) and low (from part 1) + and uses the 'jimm' prefix. - 3. Non-composite locations in the form "X-Y". + 3. For a standard composite format "X-Y|Z-W", it compares the two ranges. + 4. For non-composite formats "X-Y", it does a simple lookup. """ parts = location.split("|") if len(parts) == 4 and var_name == "imm" and instr_name.lower().startswith("b"): - # New compound format, e.g.: "31|7|30-25|11-8" + # Branch compound format, e.g.: "31|7|30-25|11-8" try: - # For the high part: take the first part as MSB and the lower end of the third part as LSB. high_msb = int(parts[0]) high_lsb = int(parts[2].split("-")[-1]) - # For the low part: take the first number of the fourth part as MSB and the second part as LSB. low_msb = int(parts[3].split("-")[0]) + # parts[1] should be a simple number when converting for branch immediates. low_lsb = int(parts[1]) except Exception as e: print( @@ -123,6 +120,27 @@ def canonical_immediate_names( ) return [] return [hi_candidate, lo_candidate] + elif len(parts) == 4 and var_name == "imm" and instr_name.lower().startswith("j"): + # Jump compound format, e.g.: "31|19-12|20|30-21" + try: + # For jump immediates, the canonical field typically covers the whole range. + # We extract the overall high (first part) and the lower end of the second part. + high = int(parts[0]) + low = int(parts[1].split("-")[1]) + except Exception as e: + print( + f"Warning: invalid jump compound immediate format in location '{location}': {e}" + ) + return [] + candidate = lookup_immediate_by_range( + "jimm", high, low, instr_name, left_shift=left_shift + ) + if candidate is None: + print( + f"Warning: jump compound immediate candidate not found in fieldo for {var_name} with location {location}" + ) + return [] + return [candidate] elif "|" in location: # Standard composite format, e.g.: "31-25|11-7" import re From 6bc6ec4947939c74ddd10e220a2f8f91f5b09fd9 Mon Sep 17 00:00:00 2001 From: Afonso Oliveira Date: Wed, 12 Mar 2025 10:30:44 +0000 Subject: [PATCH 25/33] Fix V extension instructions. Signed-off-by: Afonso Oliveira --- arch/inst/A/amoadd.d.yaml | 0 arch/inst/A/amoadd.w.yaml | 0 arch/inst/A/amoand.d.yaml | 0 arch/inst/A/amoand.w.yaml | 0 arch/inst/A/amomax.d.yaml | 0 arch/inst/A/amomax.w.yaml | 0 arch/inst/A/amomaxu.d.yaml | 0 arch/inst/A/amomaxu.w.yaml | 0 arch/inst/A/amomin.d.yaml | 0 arch/inst/A/amomin.w.yaml | 0 arch/inst/A/amominu.d.yaml | 0 arch/inst/A/amominu.w.yaml | 0 arch/inst/A/amoor.d.yaml | 0 arch/inst/A/amoor.w.yaml | 0 arch/inst/A/amoswap.d.yaml | 0 arch/inst/A/amoswap.w.yaml | 0 arch/inst/A/amoxor.d.yaml | 0 arch/inst/A/amoxor.w.yaml | 0 arch/inst/A/lr.d.yaml | 0 arch/inst/A/lr.w.yaml | 0 arch/inst/A/sc.d.yaml | 0 arch/inst/A/sc.w.yaml | 0 arch/inst/B/add.uw.yaml | 0 arch/inst/B/andn.yaml | 0 arch/inst/B/bclr.yaml | 0 arch/inst/B/bclri.yaml | 0 arch/inst/B/bext.yaml | 0 arch/inst/B/bexti.yaml | 0 arch/inst/B/binv.yaml | 0 arch/inst/B/binvi.yaml | 0 arch/inst/B/bset.yaml | 0 arch/inst/B/bseti.yaml | 0 arch/inst/B/clmul.yaml | 0 arch/inst/B/clmulh.yaml | 0 arch/inst/B/clmulr.yaml | 0 arch/inst/B/clz.yaml | 0 arch/inst/B/clzw.yaml | 0 arch/inst/B/cpop.yaml | 0 arch/inst/B/cpopw.yaml | 0 arch/inst/B/ctz.yaml | 0 arch/inst/B/ctzw.yaml | 0 arch/inst/B/max.yaml | 0 arch/inst/B/maxu.yaml | 0 arch/inst/B/min.yaml | 0 arch/inst/B/minu.yaml | 0 arch/inst/B/orc.b.yaml | 0 arch/inst/B/orn.yaml | 0 arch/inst/B/rev8.yaml | 0 arch/inst/B/rol.yaml | 0 arch/inst/B/rolw.yaml | 0 arch/inst/B/ror.yaml | 0 arch/inst/B/rori.yaml | 0 arch/inst/B/roriw.yaml | 0 arch/inst/B/rorw.yaml | 0 arch/inst/B/sext.b.yaml | 0 arch/inst/B/sext.h.yaml | 0 arch/inst/B/sh1add.uw.yaml | 0 arch/inst/B/sh1add.yaml | 0 arch/inst/B/sh2add.uw.yaml | 0 arch/inst/B/sh2add.yaml | 0 arch/inst/B/sh3add.uw.yaml | 0 arch/inst/B/sh3add.yaml | 0 arch/inst/B/slli.uw.yaml | 0 arch/inst/B/xnor.yaml | 0 arch/inst/B/zext.h.yaml | 0 arch/inst/C/c.add.yaml | 0 arch/inst/C/c.addi.yaml | 0 arch/inst/C/c.addi16sp.yaml | 0 arch/inst/C/c.addi4spn.yaml | 0 arch/inst/C/c.addiw.yaml | 0 arch/inst/C/c.addw.yaml | 0 arch/inst/C/c.and.yaml | 0 arch/inst/C/c.andi.yaml | 0 arch/inst/C/c.beqz.yaml | 0 arch/inst/C/c.bnez.yaml | 0 arch/inst/C/c.ebreak.yaml | 0 arch/inst/C/c.fld.yaml | 0 arch/inst/C/c.fldsp.yaml | 0 arch/inst/C/c.flw.yaml | 0 arch/inst/C/c.flwsp.yaml | 0 arch/inst/C/c.fsd.yaml | 0 arch/inst/C/c.fsdsp.yaml | 0 arch/inst/C/c.fsw.yaml | 0 arch/inst/C/c.fswsp.yaml | 0 arch/inst/C/c.j.yaml | 0 arch/inst/C/c.jal.yaml | 0 arch/inst/C/c.jalr.yaml | 0 arch/inst/C/c.jr.yaml | 0 arch/inst/C/c.ld.yaml | 0 arch/inst/C/c.ldsp.yaml | 0 arch/inst/C/c.li.yaml | 0 arch/inst/C/c.lui.yaml | 0 arch/inst/C/c.lw.yaml | 0 arch/inst/C/c.lwsp.yaml | 0 arch/inst/C/c.mv.yaml | 0 arch/inst/C/c.nop.yaml | 0 arch/inst/C/c.or.yaml | 0 arch/inst/C/c.sd.yaml | 0 arch/inst/C/c.sdsp.yaml | 0 arch/inst/C/c.slli.yaml | 0 arch/inst/C/c.srai.yaml | 0 arch/inst/C/c.srli.yaml | 0 arch/inst/C/c.sub.yaml | 0 arch/inst/C/c.subw.yaml | 0 arch/inst/C/c.sw.yaml | 0 arch/inst/C/c.swsp.yaml | 0 arch/inst/C/c.xor.yaml | 0 arch/inst/D/fadd.d.yaml | 0 arch/inst/D/fclass.d.yaml | 0 arch/inst/D/fcvt.d.l.yaml | 0 arch/inst/D/fcvt.d.lu.yaml | 0 arch/inst/D/fcvt.d.s.yaml | 0 arch/inst/D/fcvt.d.w.yaml | 0 arch/inst/D/fcvt.d.wu.yaml | 0 arch/inst/D/fcvt.l.d.yaml | 0 arch/inst/D/fcvt.lu.d.yaml | 0 arch/inst/D/fcvt.s.d.yaml | 0 arch/inst/D/fcvt.w.d.yaml | 0 arch/inst/D/fcvt.wu.d.yaml | 0 arch/inst/D/fcvtmod.w.d.yaml | 0 arch/inst/D/fdiv.d.yaml | 0 arch/inst/D/feq.d.yaml | 0 arch/inst/D/fld.yaml | 0 arch/inst/D/fle.d.yaml | 0 arch/inst/D/fleq.d.yaml | 0 arch/inst/D/fli.d.yaml | 0 arch/inst/D/flt.d.yaml | 0 arch/inst/D/fltq.d.yaml | 0 arch/inst/D/fmadd.d.yaml | 0 arch/inst/D/fmax.d.yaml | 0 arch/inst/D/fmaxm.d.yaml | 0 arch/inst/D/fmin.d.yaml | 0 arch/inst/D/fminm.d.yaml | 0 arch/inst/D/fmsub.d.yaml | 0 arch/inst/D/fmul.d.yaml | 0 arch/inst/D/fmv.d.x.yaml | 0 arch/inst/D/fmv.x.d.yaml | 0 arch/inst/D/fmvh.x.d.yaml | 0 arch/inst/D/fmvp.d.x.yaml | 0 arch/inst/D/fnmadd.d.yaml | 0 arch/inst/D/fnmsub.d.yaml | 0 arch/inst/D/fround.d.yaml | 0 arch/inst/D/froundnx.d.yaml | 0 arch/inst/D/fsd.yaml | 0 arch/inst/D/fsgnj.d.yaml | 0 arch/inst/D/fsgnjn.d.yaml | 0 arch/inst/D/fsgnjx.d.yaml | 0 arch/inst/D/fsqrt.d.yaml | 0 arch/inst/D/fsub.d.yaml | 0 arch/inst/F/fadd.s.yaml | 0 arch/inst/F/fclass.s.yaml | 0 arch/inst/F/fcvt.l.s.yaml | 0 arch/inst/F/fcvt.lu.s.yaml | 0 arch/inst/F/fcvt.s.l.yaml | 0 arch/inst/F/fcvt.s.lu.yaml | 0 arch/inst/F/fcvt.s.w.yaml | 0 arch/inst/F/fcvt.s.wu.yaml | 0 arch/inst/F/fcvt.w.s.yaml | 0 arch/inst/F/fcvt.wu.s.yaml | 0 arch/inst/F/fdiv.s.yaml | 0 arch/inst/F/feq.s.yaml | 0 arch/inst/F/fle.s.yaml | 0 arch/inst/F/fleq.s.yaml | 0 arch/inst/F/fli.s.yaml | 0 arch/inst/F/flt.s.yaml | 0 arch/inst/F/fltq.s.yaml | 0 arch/inst/F/flw.yaml | 0 arch/inst/F/fmadd.s.yaml | 0 arch/inst/F/fmax.s.yaml | 0 arch/inst/F/fmaxm.s.yaml | 0 arch/inst/F/fmin.s.yaml | 0 arch/inst/F/fminm.s.yaml | 0 arch/inst/F/fmsub.s.yaml | 0 arch/inst/F/fmul.s.yaml | 0 arch/inst/F/fmv.w.x.yaml | 0 arch/inst/F/fmv.x.w.yaml | 0 arch/inst/F/fnmadd.s.yaml | 0 arch/inst/F/fnmsub.s.yaml | 0 arch/inst/F/fround.s.yaml | 0 arch/inst/F/froundnx.s.yaml | 0 arch/inst/F/fsgnj.s.yaml | 0 arch/inst/F/fsgnjn.s.yaml | 0 arch/inst/F/fsgnjx.s.yaml | 0 arch/inst/F/fsqrt.s.yaml | 0 arch/inst/F/fsub.s.yaml | 0 arch/inst/F/fsw.yaml | 0 arch/inst/H/hfence.gvma.yaml | 0 arch/inst/H/hfence.vvma.yaml | 0 arch/inst/H/hlv.b.yaml | 0 arch/inst/H/hlv.bu.yaml | 0 arch/inst/H/hlv.d.yaml | 0 arch/inst/H/hlv.h.yaml | 0 arch/inst/H/hlv.hu.yaml | 0 arch/inst/H/hlv.w.yaml | 0 arch/inst/H/hlv.wu.yaml | 0 arch/inst/H/hlvx.hu.yaml | 0 arch/inst/H/hlvx.wu.yaml | 0 arch/inst/H/hsv.b.yaml | 0 arch/inst/H/hsv.d.yaml | 0 arch/inst/H/hsv.h.yaml | 0 arch/inst/H/hsv.w.yaml | 0 arch/inst/I/add.yaml | 0 arch/inst/I/addi.yaml | 0 arch/inst/I/addiw.yaml | 0 arch/inst/I/addw.yaml | 0 arch/inst/I/and.yaml | 0 arch/inst/I/andi.yaml | 0 arch/inst/I/auipc.yaml | 0 arch/inst/I/beq.yaml | 0 arch/inst/I/bge.yaml | 0 arch/inst/I/bgeu.yaml | 0 arch/inst/I/blt.yaml | 0 arch/inst/I/bltu.yaml | 0 arch/inst/I/bne.yaml | 0 arch/inst/I/ebreak.yaml | 0 arch/inst/I/ecall.yaml | 0 arch/inst/I/fence.yaml | 0 arch/inst/I/jal.yaml | 0 arch/inst/I/jalr.yaml | 0 arch/inst/I/lb.yaml | 0 arch/inst/I/lbu.yaml | 0 arch/inst/I/ld.yaml | 0 arch/inst/I/lh.yaml | 0 arch/inst/I/lhu.yaml | 0 arch/inst/I/lui.yaml | 0 arch/inst/I/lw.yaml | 0 arch/inst/I/lwu.yaml | 0 arch/inst/I/mret.yaml | 0 arch/inst/I/or.yaml | 0 arch/inst/I/ori.yaml | 0 arch/inst/I/sb.yaml | 0 arch/inst/I/sd.yaml | 0 arch/inst/I/sh.yaml | 0 arch/inst/I/sll.yaml | 0 arch/inst/I/slli.yaml | 0 arch/inst/I/slliw.yaml | 0 arch/inst/I/sllw.yaml | 0 arch/inst/I/slt.yaml | 0 arch/inst/I/slti.yaml | 0 arch/inst/I/sltiu.yaml | 0 arch/inst/I/sltu.yaml | 0 arch/inst/I/sra.yaml | 0 arch/inst/I/srai.yaml | 0 arch/inst/I/sraiw.yaml | 0 arch/inst/I/sraw.yaml | 0 arch/inst/I/srl.yaml | 0 arch/inst/I/srli.yaml | 0 arch/inst/I/srliw.yaml | 0 arch/inst/I/srlw.yaml | 0 arch/inst/I/sub.yaml | 0 arch/inst/I/subw.yaml | 0 arch/inst/I/sw.yaml | 0 arch/inst/I/wfi.yaml | 0 arch/inst/I/xor.yaml | 0 arch/inst/I/xori.yaml | 0 arch/inst/M/div.yaml | 0 arch/inst/M/divu.yaml | 0 arch/inst/M/divuw.yaml | 0 arch/inst/M/divw.yaml | 0 arch/inst/M/mul.yaml | 0 arch/inst/M/mulh.yaml | 0 arch/inst/M/mulhsu.yaml | 0 arch/inst/M/mulhu.yaml | 0 arch/inst/M/mulw.yaml | 0 arch/inst/M/rem.yaml | 0 arch/inst/M/remu.yaml | 0 arch/inst/M/remuw.yaml | 0 arch/inst/M/remw.yaml | 0 arch/inst/Q/fadd.q.yaml | 0 arch/inst/Q/fclass.q.yaml | 0 arch/inst/Q/fcvt.d.q.yaml | 0 arch/inst/Q/fcvt.h.q.yaml | 0 arch/inst/Q/fcvt.l.q.yaml | 0 arch/inst/Q/fcvt.lu.q.yaml | 0 arch/inst/Q/fcvt.q.d.yaml | 0 arch/inst/Q/fcvt.q.h.yaml | 0 arch/inst/Q/fcvt.q.l.yaml | 0 arch/inst/Q/fcvt.q.lu.yaml | 0 arch/inst/Q/fcvt.q.s.yaml | 0 arch/inst/Q/fcvt.q.w.yaml | 0 arch/inst/Q/fcvt.q.wu.yaml | 0 arch/inst/Q/fcvt.s.q.yaml | 0 arch/inst/Q/fcvt.w.q.yaml | 0 arch/inst/Q/fcvt.wu.q.yaml | 0 arch/inst/Q/fdiv.q.yaml | 0 arch/inst/Q/feq.q.yaml | 0 arch/inst/Q/fle.q.yaml | 0 arch/inst/Q/fleq.q.yaml | 0 arch/inst/Q/fli.q.yaml | 0 arch/inst/Q/flq.yaml | 0 arch/inst/Q/flt.q.yaml | 0 arch/inst/Q/fltq.q.yaml | 0 arch/inst/Q/fmadd.q.yaml | 0 arch/inst/Q/fmax.q.yaml | 0 arch/inst/Q/fmaxm.q.yaml | 0 arch/inst/Q/fmin.q.yaml | 0 arch/inst/Q/fminm.q.yaml | 0 arch/inst/Q/fmsub.q.yaml | 0 arch/inst/Q/fmul.q.yaml | 0 arch/inst/Q/fmvh.x.q.yaml | 0 arch/inst/Q/fmvp.q.x.yaml | 0 arch/inst/Q/fnmadd.q.yaml | 0 arch/inst/Q/fnmsub.q.yaml | 0 arch/inst/Q/fround.q.yaml | 0 arch/inst/Q/froundnx.q.yaml | 0 arch/inst/Q/fsgnj.q.yaml | 0 arch/inst/Q/fsgnjn.q.yaml | 0 arch/inst/Q/fsgnjx.q.yaml | 0 arch/inst/Q/fsq.yaml | 0 arch/inst/Q/fsqrt.q.yaml | 0 arch/inst/Q/fsub.q.yaml | 0 arch/inst/S/sfence.vma.yaml | 0 arch/inst/S/sret.yaml | 0 arch/inst/Sdext/dret.yaml | 0 arch/inst/Smdbltrp/sctrclr.yaml | 0 arch/inst/Smrnmi/mnret.yaml | 0 arch/inst/Svinval/hinval.gvma.yaml | 0 arch/inst/Svinval/hinval.vvma.yaml | 0 arch/inst/Svinval/sfence.inval.ir.yaml | 0 arch/inst/Svinval/sfence.w.inval.yaml | 0 arch/inst/Svinval/sinval.vma.yaml | 0 arch/inst/V/vaadd.vv.yaml | 0 arch/inst/V/vaadd.vx.yaml | 0 arch/inst/V/vaaddu.vv.yaml | 0 arch/inst/V/vaaddu.vx.yaml | 0 arch/inst/V/vadc.vim.yaml | 0 arch/inst/V/vadc.vvm.yaml | 0 arch/inst/V/vadc.vxm.yaml | 0 arch/inst/V/vadd.vi.yaml | 0 arch/inst/V/vadd.vv.yaml | 0 arch/inst/V/vadd.vx.yaml | 0 arch/inst/V/vand.vi.yaml | 0 arch/inst/V/vand.vv.yaml | 0 arch/inst/V/vand.vx.yaml | 0 arch/inst/V/vasub.vv.yaml | 0 arch/inst/V/vasub.vx.yaml | 0 arch/inst/V/vasubu.vv.yaml | 0 arch/inst/V/vasubu.vx.yaml | 0 arch/inst/V/vcompress.vm.yaml | 0 arch/inst/V/vcpop.m.yaml | 0 arch/inst/V/vdiv.vv.yaml | 0 arch/inst/V/vdiv.vx.yaml | 0 arch/inst/V/vdivu.vv.yaml | 0 arch/inst/V/vdivu.vx.yaml | 0 arch/inst/V/vfadd.vf.yaml | 0 arch/inst/V/vfadd.vv.yaml | 0 arch/inst/V/vfclass.v.yaml | 0 arch/inst/V/vfcvt.f.x.v.yaml | 0 arch/inst/V/vfcvt.f.xu.v.yaml | 0 arch/inst/V/vfcvt.rtz.x.f.v.yaml | 0 arch/inst/V/vfcvt.rtz.xu.f.v.yaml | 0 arch/inst/V/vfcvt.x.f.v.yaml | 0 arch/inst/V/vfcvt.xu.f.v.yaml | 0 arch/inst/V/vfdiv.vf.yaml | 0 arch/inst/V/vfdiv.vv.yaml | 0 arch/inst/V/vfirst.m.yaml | 0 arch/inst/V/vfmacc.vf.yaml | 0 arch/inst/V/vfmacc.vv.yaml | 0 arch/inst/V/vfmadd.vf.yaml | 0 arch/inst/V/vfmadd.vv.yaml | 0 arch/inst/V/vfmax.vf.yaml | 0 arch/inst/V/vfmax.vv.yaml | 0 arch/inst/V/vfmerge.vfm.yaml | 0 arch/inst/V/vfmin.vf.yaml | 0 arch/inst/V/vfmin.vv.yaml | 0 arch/inst/V/vfmsac.vf.yaml | 0 arch/inst/V/vfmsac.vv.yaml | 0 arch/inst/V/vfmsub.vf.yaml | 0 arch/inst/V/vfmsub.vv.yaml | 0 arch/inst/V/vfmul.vf.yaml | 0 arch/inst/V/vfmul.vv.yaml | 0 arch/inst/V/vfmv.f.s.yaml | 0 arch/inst/V/vfmv.s.f.yaml | 0 arch/inst/V/vfmv.v.f.yaml | 0 arch/inst/V/vfncvt.f.f.w.yaml | 0 arch/inst/V/vfncvt.f.x.w.yaml | 0 arch/inst/V/vfncvt.f.xu.w.yaml | 0 arch/inst/V/vfncvt.rod.f.f.w.yaml | 0 arch/inst/V/vfncvt.rtz.x.f.w.yaml | 0 arch/inst/V/vfncvt.rtz.xu.f.w.yaml | 0 arch/inst/V/vfncvt.x.f.w.yaml | 0 arch/inst/V/vfncvt.xu.f.w.yaml | 0 arch/inst/V/vfnmacc.vf.yaml | 0 arch/inst/V/vfnmacc.vv.yaml | 0 arch/inst/V/vfnmadd.vf.yaml | 0 arch/inst/V/vfnmadd.vv.yaml | 0 arch/inst/V/vfnmsac.vf.yaml | 0 arch/inst/V/vfnmsac.vv.yaml | 0 arch/inst/V/vfnmsub.vf.yaml | 0 arch/inst/V/vfnmsub.vv.yaml | 0 arch/inst/V/vfrdiv.vf.yaml | 0 arch/inst/V/vfrec7.v.yaml | 0 arch/inst/V/vfredmax.vs.yaml | 0 arch/inst/V/vfredmin.vs.yaml | 0 arch/inst/V/vfredosum.vs.yaml | 0 arch/inst/V/vfredusum.vs.yaml | 0 arch/inst/V/vfrsqrt7.v.yaml | 0 arch/inst/V/vfrsub.vf.yaml | 0 arch/inst/V/vfsgnj.vf.yaml | 0 arch/inst/V/vfsgnj.vv.yaml | 0 arch/inst/V/vfsgnjn.vf.yaml | 0 arch/inst/V/vfsgnjn.vv.yaml | 0 arch/inst/V/vfsgnjx.vf.yaml | 0 arch/inst/V/vfsgnjx.vv.yaml | 0 arch/inst/V/vfslide1down.vf.yaml | 0 arch/inst/V/vfslide1up.vf.yaml | 0 arch/inst/V/vfsqrt.v.yaml | 0 arch/inst/V/vfsub.vf.yaml | 0 arch/inst/V/vfsub.vv.yaml | 0 arch/inst/V/vfwadd.vf.yaml | 0 arch/inst/V/vfwadd.vv.yaml | 0 arch/inst/V/vfwadd.wf.yaml | 0 arch/inst/V/vfwadd.wv.yaml | 0 arch/inst/V/vfwcvt.f.f.v.yaml | 0 arch/inst/V/vfwcvt.f.x.v.yaml | 0 arch/inst/V/vfwcvt.f.xu.v.yaml | 0 arch/inst/V/vfwcvt.rtz.x.f.v.yaml | 0 arch/inst/V/vfwcvt.rtz.xu.f.v.yaml | 0 arch/inst/V/vfwcvt.x.f.v.yaml | 0 arch/inst/V/vfwcvt.xu.f.v.yaml | 0 arch/inst/V/vfwmacc.vf.yaml | 0 arch/inst/V/vfwmacc.vv.yaml | 0 arch/inst/V/vfwmsac.vf.yaml | 0 arch/inst/V/vfwmsac.vv.yaml | 0 arch/inst/V/vfwmul.vf.yaml | 0 arch/inst/V/vfwmul.vv.yaml | 0 arch/inst/V/vfwnmacc.vf.yaml | 0 arch/inst/V/vfwnmacc.vv.yaml | 0 arch/inst/V/vfwnmsac.vf.yaml | 0 arch/inst/V/vfwnmsac.vv.yaml | 0 arch/inst/V/vfwredosum.vs.yaml | 0 arch/inst/V/vfwredusum.vs.yaml | 0 arch/inst/V/vfwsub.vf.yaml | 0 arch/inst/V/vfwsub.vv.yaml | 0 arch/inst/V/vfwsub.wf.yaml | 0 arch/inst/V/vfwsub.wv.yaml | 0 arch/inst/V/vid.v.yaml | 0 arch/inst/V/viota.m.yaml | 0 arch/inst/V/vl1re16.v.yaml | 0 arch/inst/V/vl1re32.v.yaml | 0 arch/inst/V/vl1re64.v.yaml | 0 arch/inst/V/vl1re8.v.yaml | 0 arch/inst/V/vl2re16.v.yaml | 0 arch/inst/V/vl2re32.v.yaml | 0 arch/inst/V/vl2re64.v.yaml | 0 arch/inst/V/vl2re8.v.yaml | 0 arch/inst/V/vl4re16.v.yaml | 0 arch/inst/V/vl4re32.v.yaml | 0 arch/inst/V/vl4re64.v.yaml | 0 arch/inst/V/vl4re8.v.yaml | 0 arch/inst/V/vl8re16.v.yaml | 0 arch/inst/V/vl8re32.v.yaml | 0 arch/inst/V/vl8re64.v.yaml | 0 arch/inst/V/vl8re8.v.yaml | 0 arch/inst/V/vle16.v.yaml | 0 arch/inst/V/vle16ff.v.yaml | 0 arch/inst/V/vle32.v.yaml | 0 arch/inst/V/vle32ff.v.yaml | 0 arch/inst/V/vle64.v.yaml | 0 arch/inst/V/vle64ff.v.yaml | 0 arch/inst/V/vle8.v.yaml | 0 arch/inst/V/vle8ff.v.yaml | 0 arch/inst/V/vlm.v.yaml | 0 arch/inst/V/vloxei16.v.yaml | 0 arch/inst/V/vloxei32.v.yaml | 0 arch/inst/V/vloxei64.v.yaml | 0 arch/inst/V/vloxei8.v.yaml | 0 arch/inst/V/vloxseg2ei16.v.yaml | 0 arch/inst/V/vloxseg2ei32.v.yaml | 0 arch/inst/V/vloxseg2ei64.v.yaml | 0 arch/inst/V/vloxseg2ei8.v.yaml | 0 arch/inst/V/vloxseg3ei16.v.yaml | 0 arch/inst/V/vloxseg3ei32.v.yaml | 0 arch/inst/V/vloxseg3ei64.v.yaml | 0 arch/inst/V/vloxseg3ei8.v.yaml | 0 arch/inst/V/vloxseg4ei16.v.yaml | 0 arch/inst/V/vloxseg4ei32.v.yaml | 0 arch/inst/V/vloxseg4ei64.v.yaml | 0 arch/inst/V/vloxseg4ei8.v.yaml | 0 arch/inst/V/vloxseg5ei16.v.yaml | 0 arch/inst/V/vloxseg5ei32.v.yaml | 0 arch/inst/V/vloxseg5ei64.v.yaml | 0 arch/inst/V/vloxseg5ei8.v.yaml | 0 arch/inst/V/vloxseg6ei16.v.yaml | 0 arch/inst/V/vloxseg6ei32.v.yaml | 0 arch/inst/V/vloxseg6ei64.v.yaml | 0 arch/inst/V/vloxseg6ei8.v.yaml | 0 arch/inst/V/vloxseg7ei16.v.yaml | 0 arch/inst/V/vloxseg7ei32.v.yaml | 0 arch/inst/V/vloxseg7ei64.v.yaml | 0 arch/inst/V/vloxseg7ei8.v.yaml | 0 arch/inst/V/vloxseg8ei16.v.yaml | 0 arch/inst/V/vloxseg8ei32.v.yaml | 0 arch/inst/V/vloxseg8ei64.v.yaml | 0 arch/inst/V/vloxseg8ei8.v.yaml | 0 arch/inst/V/vlse16.v.yaml | 0 arch/inst/V/vlse32.v.yaml | 0 arch/inst/V/vlse64.v.yaml | 0 arch/inst/V/vlse8.v.yaml | 0 arch/inst/V/vlseg2e16.v.yaml | 0 arch/inst/V/vlseg2e16ff.v.yaml | 0 arch/inst/V/vlseg2e32.v.yaml | 0 arch/inst/V/vlseg2e32ff.v.yaml | 0 arch/inst/V/vlseg2e64.v.yaml | 0 arch/inst/V/vlseg2e64ff.v.yaml | 0 arch/inst/V/vlseg2e8.v.yaml | 0 arch/inst/V/vlseg2e8ff.v.yaml | 0 arch/inst/V/vlseg3e16.v.yaml | 0 arch/inst/V/vlseg3e16ff.v.yaml | 0 arch/inst/V/vlseg3e32.v.yaml | 0 arch/inst/V/vlseg3e32ff.v.yaml | 0 arch/inst/V/vlseg3e64.v.yaml | 0 arch/inst/V/vlseg3e64ff.v.yaml | 0 arch/inst/V/vlseg3e8.v.yaml | 0 arch/inst/V/vlseg3e8ff.v.yaml | 0 arch/inst/V/vlseg4e16.v.yaml | 0 arch/inst/V/vlseg4e16ff.v.yaml | 0 arch/inst/V/vlseg4e32.v.yaml | 0 arch/inst/V/vlseg4e32ff.v.yaml | 0 arch/inst/V/vlseg4e64.v.yaml | 0 arch/inst/V/vlseg4e64ff.v.yaml | 0 arch/inst/V/vlseg4e8.v.yaml | 0 arch/inst/V/vlseg4e8ff.v.yaml | 0 arch/inst/V/vlseg5e16.v.yaml | 0 arch/inst/V/vlseg5e16ff.v.yaml | 0 arch/inst/V/vlseg5e32.v.yaml | 0 arch/inst/V/vlseg5e32ff.v.yaml | 0 arch/inst/V/vlseg5e64.v.yaml | 0 arch/inst/V/vlseg5e64ff.v.yaml | 0 arch/inst/V/vlseg5e8.v.yaml | 0 arch/inst/V/vlseg5e8ff.v.yaml | 0 arch/inst/V/vlseg6e16.v.yaml | 0 arch/inst/V/vlseg6e16ff.v.yaml | 0 arch/inst/V/vlseg6e32.v.yaml | 0 arch/inst/V/vlseg6e32ff.v.yaml | 0 arch/inst/V/vlseg6e64.v.yaml | 0 arch/inst/V/vlseg6e64ff.v.yaml | 0 arch/inst/V/vlseg6e8.v.yaml | 0 arch/inst/V/vlseg6e8ff.v.yaml | 0 arch/inst/V/vlseg7e16.v.yaml | 0 arch/inst/V/vlseg7e16ff.v.yaml | 0 arch/inst/V/vlseg7e32.v.yaml | 0 arch/inst/V/vlseg7e32ff.v.yaml | 0 arch/inst/V/vlseg7e64.v.yaml | 0 arch/inst/V/vlseg7e64ff.v.yaml | 0 arch/inst/V/vlseg7e8.v.yaml | 0 arch/inst/V/vlseg7e8ff.v.yaml | 0 arch/inst/V/vlseg8e16.v.yaml | 0 arch/inst/V/vlseg8e16ff.v.yaml | 0 arch/inst/V/vlseg8e32.v.yaml | 0 arch/inst/V/vlseg8e32ff.v.yaml | 0 arch/inst/V/vlseg8e64.v.yaml | 0 arch/inst/V/vlseg8e64ff.v.yaml | 0 arch/inst/V/vlseg8e8.v.yaml | 0 arch/inst/V/vlseg8e8ff.v.yaml | 0 arch/inst/V/vlsseg2e16.v.yaml | 0 arch/inst/V/vlsseg2e32.v.yaml | 0 arch/inst/V/vlsseg2e64.v.yaml | 0 arch/inst/V/vlsseg2e8.v.yaml | 0 arch/inst/V/vlsseg3e16.v.yaml | 0 arch/inst/V/vlsseg3e32.v.yaml | 0 arch/inst/V/vlsseg3e64.v.yaml | 0 arch/inst/V/vlsseg3e8.v.yaml | 0 arch/inst/V/vlsseg4e16.v.yaml | 0 arch/inst/V/vlsseg4e32.v.yaml | 0 arch/inst/V/vlsseg4e64.v.yaml | 0 arch/inst/V/vlsseg4e8.v.yaml | 0 arch/inst/V/vlsseg5e16.v.yaml | 0 arch/inst/V/vlsseg5e32.v.yaml | 0 arch/inst/V/vlsseg5e64.v.yaml | 0 arch/inst/V/vlsseg5e8.v.yaml | 0 arch/inst/V/vlsseg6e16.v.yaml | 0 arch/inst/V/vlsseg6e32.v.yaml | 0 arch/inst/V/vlsseg6e64.v.yaml | 0 arch/inst/V/vlsseg6e8.v.yaml | 0 arch/inst/V/vlsseg7e16.v.yaml | 0 arch/inst/V/vlsseg7e32.v.yaml | 0 arch/inst/V/vlsseg7e64.v.yaml | 0 arch/inst/V/vlsseg7e8.v.yaml | 0 arch/inst/V/vlsseg8e16.v.yaml | 0 arch/inst/V/vlsseg8e32.v.yaml | 0 arch/inst/V/vlsseg8e64.v.yaml | 0 arch/inst/V/vlsseg8e8.v.yaml | 0 arch/inst/V/vluxei16.v.yaml | 0 arch/inst/V/vluxei32.v.yaml | 0 arch/inst/V/vluxei64.v.yaml | 0 arch/inst/V/vluxei8.v.yaml | 0 arch/inst/V/vluxseg2ei16.v.yaml | 0 arch/inst/V/vluxseg2ei32.v.yaml | 0 arch/inst/V/vluxseg2ei64.v.yaml | 0 arch/inst/V/vluxseg2ei8.v.yaml | 0 arch/inst/V/vluxseg3ei16.v.yaml | 0 arch/inst/V/vluxseg3ei32.v.yaml | 0 arch/inst/V/vluxseg3ei64.v.yaml | 0 arch/inst/V/vluxseg3ei8.v.yaml | 0 arch/inst/V/vluxseg4ei16.v.yaml | 0 arch/inst/V/vluxseg4ei32.v.yaml | 0 arch/inst/V/vluxseg4ei64.v.yaml | 0 arch/inst/V/vluxseg4ei8.v.yaml | 0 arch/inst/V/vluxseg5ei16.v.yaml | 0 arch/inst/V/vluxseg5ei32.v.yaml | 0 arch/inst/V/vluxseg5ei64.v.yaml | 0 arch/inst/V/vluxseg5ei8.v.yaml | 0 arch/inst/V/vluxseg6ei16.v.yaml | 0 arch/inst/V/vluxseg6ei32.v.yaml | 0 arch/inst/V/vluxseg6ei64.v.yaml | 0 arch/inst/V/vluxseg6ei8.v.yaml | 0 arch/inst/V/vluxseg7ei16.v.yaml | 0 arch/inst/V/vluxseg7ei32.v.yaml | 0 arch/inst/V/vluxseg7ei64.v.yaml | 0 arch/inst/V/vluxseg7ei8.v.yaml | 0 arch/inst/V/vluxseg8ei16.v.yaml | 0 arch/inst/V/vluxseg8ei32.v.yaml | 0 arch/inst/V/vluxseg8ei64.v.yaml | 0 arch/inst/V/vluxseg8ei8.v.yaml | 0 arch/inst/V/vmacc.vv.yaml | 0 arch/inst/V/vmacc.vx.yaml | 0 arch/inst/V/vmadc.vi.yaml | 0 arch/inst/V/vmadc.vim.yaml | 0 arch/inst/V/vmadc.vv.yaml | 0 arch/inst/V/vmadc.vvm.yaml | 0 arch/inst/V/vmadc.vx.yaml | 0 arch/inst/V/vmadc.vxm.yaml | 0 arch/inst/V/vmadd.vv.yaml | 0 arch/inst/V/vmadd.vx.yaml | 0 arch/inst/V/vmand.mm.yaml | 0 arch/inst/V/vmandn.mm.yaml | 0 arch/inst/V/vmax.vv.yaml | 0 arch/inst/V/vmax.vx.yaml | 0 arch/inst/V/vmaxu.vv.yaml | 0 arch/inst/V/vmaxu.vx.yaml | 0 arch/inst/V/vmerge.vim.yaml | 0 arch/inst/V/vmerge.vvm.yaml | 0 arch/inst/V/vmerge.vxm.yaml | 0 arch/inst/V/vmfeq.vf.yaml | 0 arch/inst/V/vmfeq.vv.yaml | 0 arch/inst/V/vmfge.vf.yaml | 0 arch/inst/V/vmfgt.vf.yaml | 0 arch/inst/V/vmfle.vf.yaml | 0 arch/inst/V/vmfle.vv.yaml | 0 arch/inst/V/vmflt.vf.yaml | 0 arch/inst/V/vmflt.vv.yaml | 0 arch/inst/V/vmfne.vf.yaml | 0 arch/inst/V/vmfne.vv.yaml | 0 arch/inst/V/vmin.vv.yaml | 0 arch/inst/V/vmin.vx.yaml | 0 arch/inst/V/vminu.vv.yaml | 0 arch/inst/V/vminu.vx.yaml | 0 arch/inst/V/vmnand.mm.yaml | 0 arch/inst/V/vmnor.mm.yaml | 0 arch/inst/V/vmor.mm.yaml | 0 arch/inst/V/vmorn.mm.yaml | 0 arch/inst/V/vmsbc.vv.yaml | 0 arch/inst/V/vmsbc.vvm.yaml | 0 arch/inst/V/vmsbc.vx.yaml | 0 arch/inst/V/vmsbc.vxm.yaml | 0 arch/inst/V/vmsbf.m.yaml | 0 arch/inst/V/vmseq.vi.yaml | 0 arch/inst/V/vmseq.vv.yaml | 0 arch/inst/V/vmseq.vx.yaml | 0 arch/inst/V/vmsgt.vi.yaml | 0 arch/inst/V/vmsgt.vx.yaml | 0 arch/inst/V/vmsgtu.vi.yaml | 0 arch/inst/V/vmsgtu.vx.yaml | 0 arch/inst/V/vmsif.m.yaml | 0 arch/inst/V/vmsle.vi.yaml | 0 arch/inst/V/vmsle.vv.yaml | 0 arch/inst/V/vmsle.vx.yaml | 0 arch/inst/V/vmsleu.vi.yaml | 0 arch/inst/V/vmsleu.vv.yaml | 0 arch/inst/V/vmsleu.vx.yaml | 0 arch/inst/V/vmslt.vv.yaml | 0 arch/inst/V/vmslt.vx.yaml | 0 arch/inst/V/vmsltu.vv.yaml | 0 arch/inst/V/vmsltu.vx.yaml | 0 arch/inst/V/vmsne.vi.yaml | 0 arch/inst/V/vmsne.vv.yaml | 0 arch/inst/V/vmsne.vx.yaml | 0 arch/inst/V/vmsof.m.yaml | 0 arch/inst/V/vmul.vv.yaml | 0 arch/inst/V/vmul.vx.yaml | 0 arch/inst/V/vmulh.vv.yaml | 0 arch/inst/V/vmulh.vx.yaml | 0 arch/inst/V/vmulhsu.vv.yaml | 0 arch/inst/V/vmulhsu.vx.yaml | 0 arch/inst/V/vmulhu.vv.yaml | 0 arch/inst/V/vmulhu.vx.yaml | 0 arch/inst/V/vmv.s.x.yaml | 0 arch/inst/V/vmv.v.i.yaml | 0 arch/inst/V/vmv.v.v.yaml | 0 arch/inst/V/vmv.v.x.yaml | 0 arch/inst/V/vmv.x.s.yaml | 0 arch/inst/V/vmv1r.v.yaml | 0 arch/inst/V/vmv2r.v.yaml | 0 arch/inst/V/vmv4r.v.yaml | 0 arch/inst/V/vmv8r.v.yaml | 0 arch/inst/V/vmxnor.mm.yaml | 0 arch/inst/V/vmxor.mm.yaml | 0 arch/inst/V/vnclip.wi.yaml | 0 arch/inst/V/vnclip.wv.yaml | 0 arch/inst/V/vnclip.wx.yaml | 0 arch/inst/V/vnclipu.wi.yaml | 0 arch/inst/V/vnclipu.wv.yaml | 0 arch/inst/V/vnclipu.wx.yaml | 0 arch/inst/V/vnmsac.vv.yaml | 0 arch/inst/V/vnmsac.vx.yaml | 0 arch/inst/V/vnmsub.vv.yaml | 0 arch/inst/V/vnmsub.vx.yaml | 0 arch/inst/V/vnsra.wi.yaml | 0 arch/inst/V/vnsra.wv.yaml | 0 arch/inst/V/vnsra.wx.yaml | 0 arch/inst/V/vnsrl.wi.yaml | 0 arch/inst/V/vnsrl.wv.yaml | 0 arch/inst/V/vnsrl.wx.yaml | 0 arch/inst/V/vor.vi.yaml | 0 arch/inst/V/vor.vv.yaml | 0 arch/inst/V/vor.vx.yaml | 0 arch/inst/V/vredand.vs.yaml | 0 arch/inst/V/vredmax.vs.yaml | 0 arch/inst/V/vredmaxu.vs.yaml | 0 arch/inst/V/vredmin.vs.yaml | 0 arch/inst/V/vredminu.vs.yaml | 0 arch/inst/V/vredor.vs.yaml | 0 arch/inst/V/vredsum.vs.yaml | 0 arch/inst/V/vredxor.vs.yaml | 0 arch/inst/V/vrem.vv.yaml | 0 arch/inst/V/vrem.vx.yaml | 0 arch/inst/V/vremu.vv.yaml | 0 arch/inst/V/vremu.vx.yaml | 0 arch/inst/V/vrgather.vi.yaml | 0 arch/inst/V/vrgather.vv.yaml | 0 arch/inst/V/vrgather.vx.yaml | 0 arch/inst/V/vrgatherei16.vv.yaml | 0 arch/inst/V/vrsub.vi.yaml | 0 arch/inst/V/vrsub.vx.yaml | 0 arch/inst/V/vs1r.v.yaml | 0 arch/inst/V/vs2r.v.yaml | 0 arch/inst/V/vs4r.v.yaml | 0 arch/inst/V/vs8r.v.yaml | 0 arch/inst/V/vsadd.vi.yaml | 0 arch/inst/V/vsadd.vv.yaml | 0 arch/inst/V/vsadd.vx.yaml | 0 arch/inst/V/vsaddu.vi.yaml | 0 arch/inst/V/vsaddu.vv.yaml | 0 arch/inst/V/vsaddu.vx.yaml | 0 arch/inst/V/vsbc.vvm.yaml | 0 arch/inst/V/vsbc.vxm.yaml | 0 arch/inst/V/vse16.v.yaml | 0 arch/inst/V/vse32.v.yaml | 0 arch/inst/V/vse64.v.yaml | 0 arch/inst/V/vse8.v.yaml | 0 arch/inst/V/vsetivli.yaml | 4 ++-- arch/inst/V/vsetvl.yaml | 0 arch/inst/V/vsetvli.yaml | 2 +- arch/inst/V/vsext.vf2.yaml | 0 arch/inst/V/vsext.vf4.yaml | 0 arch/inst/V/vsext.vf8.yaml | 0 arch/inst/V/vslide1down.vx.yaml | 0 arch/inst/V/vslide1up.vx.yaml | 0 arch/inst/V/vslidedown.vi.yaml | 0 arch/inst/V/vslidedown.vx.yaml | 0 arch/inst/V/vslideup.vi.yaml | 0 arch/inst/V/vslideup.vx.yaml | 0 arch/inst/V/vsll.vi.yaml | 0 arch/inst/V/vsll.vv.yaml | 0 arch/inst/V/vsll.vx.yaml | 0 arch/inst/V/vsm.v.yaml | 0 arch/inst/V/vsmul.vv.yaml | 0 arch/inst/V/vsmul.vx.yaml | 0 arch/inst/V/vsoxei16.v.yaml | 0 arch/inst/V/vsoxei32.v.yaml | 0 arch/inst/V/vsoxei64.v.yaml | 0 arch/inst/V/vsoxei8.v.yaml | 0 arch/inst/V/vsoxseg2ei16.v.yaml | 0 arch/inst/V/vsoxseg2ei32.v.yaml | 0 arch/inst/V/vsoxseg2ei64.v.yaml | 0 arch/inst/V/vsoxseg2ei8.v.yaml | 0 arch/inst/V/vsoxseg3ei16.v.yaml | 0 arch/inst/V/vsoxseg3ei32.v.yaml | 0 arch/inst/V/vsoxseg3ei64.v.yaml | 0 arch/inst/V/vsoxseg3ei8.v.yaml | 0 arch/inst/V/vsoxseg4ei16.v.yaml | 0 arch/inst/V/vsoxseg4ei32.v.yaml | 0 arch/inst/V/vsoxseg4ei64.v.yaml | 0 arch/inst/V/vsoxseg4ei8.v.yaml | 0 arch/inst/V/vsoxseg5ei16.v.yaml | 0 arch/inst/V/vsoxseg5ei32.v.yaml | 0 arch/inst/V/vsoxseg5ei64.v.yaml | 0 arch/inst/V/vsoxseg5ei8.v.yaml | 0 arch/inst/V/vsoxseg6ei16.v.yaml | 0 arch/inst/V/vsoxseg6ei32.v.yaml | 0 arch/inst/V/vsoxseg6ei64.v.yaml | 0 arch/inst/V/vsoxseg6ei8.v.yaml | 0 arch/inst/V/vsoxseg7ei16.v.yaml | 0 arch/inst/V/vsoxseg7ei32.v.yaml | 0 arch/inst/V/vsoxseg7ei64.v.yaml | 0 arch/inst/V/vsoxseg7ei8.v.yaml | 0 arch/inst/V/vsoxseg8ei16.v.yaml | 0 arch/inst/V/vsoxseg8ei32.v.yaml | 0 arch/inst/V/vsoxseg8ei64.v.yaml | 0 arch/inst/V/vsoxseg8ei8.v.yaml | 0 arch/inst/V/vsra.vi.yaml | 0 arch/inst/V/vsra.vv.yaml | 0 arch/inst/V/vsra.vx.yaml | 0 arch/inst/V/vsrl.vi.yaml | 0 arch/inst/V/vsrl.vv.yaml | 0 arch/inst/V/vsrl.vx.yaml | 0 arch/inst/V/vsse16.v.yaml | 0 arch/inst/V/vsse32.v.yaml | 0 arch/inst/V/vsse64.v.yaml | 0 arch/inst/V/vsse8.v.yaml | 0 arch/inst/V/vsseg2e16.v.yaml | 0 arch/inst/V/vsseg2e32.v.yaml | 0 arch/inst/V/vsseg2e64.v.yaml | 0 arch/inst/V/vsseg2e8.v.yaml | 0 arch/inst/V/vsseg3e16.v.yaml | 0 arch/inst/V/vsseg3e32.v.yaml | 0 arch/inst/V/vsseg3e64.v.yaml | 0 arch/inst/V/vsseg3e8.v.yaml | 0 arch/inst/V/vsseg4e16.v.yaml | 0 arch/inst/V/vsseg4e32.v.yaml | 0 arch/inst/V/vsseg4e64.v.yaml | 0 arch/inst/V/vsseg4e8.v.yaml | 0 arch/inst/V/vsseg5e16.v.yaml | 0 arch/inst/V/vsseg5e32.v.yaml | 0 arch/inst/V/vsseg5e64.v.yaml | 0 arch/inst/V/vsseg5e8.v.yaml | 0 arch/inst/V/vsseg6e16.v.yaml | 0 arch/inst/V/vsseg6e32.v.yaml | 0 arch/inst/V/vsseg6e64.v.yaml | 0 arch/inst/V/vsseg6e8.v.yaml | 0 arch/inst/V/vsseg7e16.v.yaml | 0 arch/inst/V/vsseg7e32.v.yaml | 0 arch/inst/V/vsseg7e64.v.yaml | 0 arch/inst/V/vsseg7e8.v.yaml | 0 arch/inst/V/vsseg8e16.v.yaml | 0 arch/inst/V/vsseg8e32.v.yaml | 0 arch/inst/V/vsseg8e64.v.yaml | 0 arch/inst/V/vsseg8e8.v.yaml | 0 arch/inst/V/vssra.vi.yaml | 0 arch/inst/V/vssra.vv.yaml | 0 arch/inst/V/vssra.vx.yaml | 0 arch/inst/V/vssrl.vi.yaml | 0 arch/inst/V/vssrl.vv.yaml | 0 arch/inst/V/vssrl.vx.yaml | 0 arch/inst/V/vssseg2e16.v.yaml | 0 arch/inst/V/vssseg2e32.v.yaml | 0 arch/inst/V/vssseg2e64.v.yaml | 0 arch/inst/V/vssseg2e8.v.yaml | 0 arch/inst/V/vssseg3e16.v.yaml | 0 arch/inst/V/vssseg3e32.v.yaml | 0 arch/inst/V/vssseg3e64.v.yaml | 0 arch/inst/V/vssseg3e8.v.yaml | 0 arch/inst/V/vssseg4e16.v.yaml | 0 arch/inst/V/vssseg4e32.v.yaml | 0 arch/inst/V/vssseg4e64.v.yaml | 0 arch/inst/V/vssseg4e8.v.yaml | 0 arch/inst/V/vssseg5e16.v.yaml | 0 arch/inst/V/vssseg5e32.v.yaml | 0 arch/inst/V/vssseg5e64.v.yaml | 0 arch/inst/V/vssseg5e8.v.yaml | 0 arch/inst/V/vssseg6e16.v.yaml | 0 arch/inst/V/vssseg6e32.v.yaml | 0 arch/inst/V/vssseg6e64.v.yaml | 0 arch/inst/V/vssseg6e8.v.yaml | 0 arch/inst/V/vssseg7e16.v.yaml | 0 arch/inst/V/vssseg7e32.v.yaml | 0 arch/inst/V/vssseg7e64.v.yaml | 0 arch/inst/V/vssseg7e8.v.yaml | 0 arch/inst/V/vssseg8e16.v.yaml | 0 arch/inst/V/vssseg8e32.v.yaml | 0 arch/inst/V/vssseg8e64.v.yaml | 0 arch/inst/V/vssseg8e8.v.yaml | 0 arch/inst/V/vssub.vv.yaml | 0 arch/inst/V/vssub.vx.yaml | 0 arch/inst/V/vssubu.vv.yaml | 0 arch/inst/V/vssubu.vx.yaml | 0 arch/inst/V/vsub.vv.yaml | 0 arch/inst/V/vsub.vx.yaml | 0 arch/inst/V/vsuxei16.v.yaml | 0 arch/inst/V/vsuxei32.v.yaml | 0 arch/inst/V/vsuxei64.v.yaml | 0 arch/inst/V/vsuxei8.v.yaml | 0 arch/inst/V/vsuxseg2ei16.v.yaml | 0 arch/inst/V/vsuxseg2ei32.v.yaml | 0 arch/inst/V/vsuxseg2ei64.v.yaml | 0 arch/inst/V/vsuxseg2ei8.v.yaml | 0 arch/inst/V/vsuxseg3ei16.v.yaml | 0 arch/inst/V/vsuxseg3ei32.v.yaml | 0 arch/inst/V/vsuxseg3ei64.v.yaml | 0 arch/inst/V/vsuxseg3ei8.v.yaml | 0 arch/inst/V/vsuxseg4ei16.v.yaml | 0 arch/inst/V/vsuxseg4ei32.v.yaml | 0 arch/inst/V/vsuxseg4ei64.v.yaml | 0 arch/inst/V/vsuxseg4ei8.v.yaml | 0 arch/inst/V/vsuxseg5ei16.v.yaml | 0 arch/inst/V/vsuxseg5ei32.v.yaml | 0 arch/inst/V/vsuxseg5ei64.v.yaml | 0 arch/inst/V/vsuxseg5ei8.v.yaml | 0 arch/inst/V/vsuxseg6ei16.v.yaml | 0 arch/inst/V/vsuxseg6ei32.v.yaml | 0 arch/inst/V/vsuxseg6ei64.v.yaml | 0 arch/inst/V/vsuxseg6ei8.v.yaml | 0 arch/inst/V/vsuxseg7ei16.v.yaml | 0 arch/inst/V/vsuxseg7ei32.v.yaml | 0 arch/inst/V/vsuxseg7ei64.v.yaml | 0 arch/inst/V/vsuxseg7ei8.v.yaml | 0 arch/inst/V/vsuxseg8ei16.v.yaml | 0 arch/inst/V/vsuxseg8ei32.v.yaml | 0 arch/inst/V/vsuxseg8ei64.v.yaml | 0 arch/inst/V/vsuxseg8ei8.v.yaml | 0 arch/inst/V/vwadd.vv.yaml | 0 arch/inst/V/vwadd.vx.yaml | 0 arch/inst/V/vwadd.wv.yaml | 0 arch/inst/V/vwadd.wx.yaml | 0 arch/inst/V/vwaddu.vv.yaml | 0 arch/inst/V/vwaddu.vx.yaml | 0 arch/inst/V/vwaddu.wv.yaml | 0 arch/inst/V/vwaddu.wx.yaml | 0 arch/inst/V/vwmacc.vv.yaml | 0 arch/inst/V/vwmacc.vx.yaml | 0 arch/inst/V/vwmaccsu.vv.yaml | 0 arch/inst/V/vwmaccsu.vx.yaml | 0 arch/inst/V/vwmaccu.vv.yaml | 0 arch/inst/V/vwmaccu.vx.yaml | 0 arch/inst/V/vwmaccus.vx.yaml | 0 arch/inst/V/vwmul.vv.yaml | 0 arch/inst/V/vwmul.vx.yaml | 0 arch/inst/V/vwmulsu.vv.yaml | 0 arch/inst/V/vwmulsu.vx.yaml | 0 arch/inst/V/vwmulu.vv.yaml | 0 arch/inst/V/vwmulu.vx.yaml | 0 arch/inst/V/vwredsum.vs.yaml | 0 arch/inst/V/vwredsumu.vs.yaml | 0 arch/inst/V/vwsub.vv.yaml | 0 arch/inst/V/vwsub.vx.yaml | 0 arch/inst/V/vwsub.wv.yaml | 0 arch/inst/V/vwsub.wx.yaml | 0 arch/inst/V/vwsubu.vv.yaml | 0 arch/inst/V/vwsubu.vx.yaml | 0 arch/inst/V/vwsubu.wv.yaml | 0 arch/inst/V/vwsubu.wx.yaml | 0 arch/inst/V/vxor.vi.yaml | 0 arch/inst/V/vxor.vv.yaml | 0 arch/inst/V/vxor.vx.yaml | 0 arch/inst/V/vzext.vf2.yaml | 0 arch/inst/V/vzext.vf4.yaml | 0 arch/inst/V/vzext.vf8.yaml | 0 arch/inst/Zabha/amoadd.b.yaml | 0 arch/inst/Zabha/amoadd.h.yaml | 0 arch/inst/Zabha/amoand.b.yaml | 0 arch/inst/Zabha/amoand.h.yaml | 0 arch/inst/Zabha/amocas.b.yaml | 0 arch/inst/Zabha/amocas.h.yaml | 0 arch/inst/Zabha/amomax.b.yaml | 0 arch/inst/Zabha/amomax.h.yaml | 0 arch/inst/Zabha/amomaxu.b.yaml | 0 arch/inst/Zabha/amomaxu.h.yaml | 0 arch/inst/Zabha/amomin.b.yaml | 0 arch/inst/Zabha/amomin.h.yaml | 0 arch/inst/Zabha/amominu.b.yaml | 0 arch/inst/Zabha/amominu.h.yaml | 0 arch/inst/Zabha/amoor.b.yaml | 0 arch/inst/Zabha/amoor.h.yaml | 0 arch/inst/Zabha/amoswap.b.yaml | 0 arch/inst/Zabha/amoswap.h.yaml | 0 arch/inst/Zabha/amoxor.b.yaml | 0 arch/inst/Zabha/amoxor.h.yaml | 0 arch/inst/Zacas/amocas.d.yaml | 0 arch/inst/Zacas/amocas.q.yaml | 0 arch/inst/Zacas/amocas.w.yaml | 0 arch/inst/Zalasr/lb.aq.yaml | 0 arch/inst/Zalasr/ld.aq.yaml | 0 arch/inst/Zalasr/lh.aq.yaml | 0 arch/inst/Zalasr/lw.aq.yaml | 0 arch/inst/Zalasr/sb.rl.yaml | 0 arch/inst/Zalasr/sd.rl.yaml | 0 arch/inst/Zalasr/sh.rl.yaml | 0 arch/inst/Zalasr/sw.rl.yaml | 0 arch/inst/Zawrs/wrs.nto.yaml | 0 arch/inst/Zawrs/wrs.sto.yaml | 0 arch/inst/Zbkb/brev8.yaml | 0 arch/inst/Zbkb/unzip.yaml | 0 arch/inst/Zbkb/zip.yaml | 0 arch/inst/Zbkx/xperm4.yaml | 0 arch/inst/Zbkx/xperm8.yaml | 0 arch/inst/Zcb/c.lbu.yaml | 0 arch/inst/Zcb/c.lh.yaml | 0 arch/inst/Zcb/c.lhu.yaml | 0 arch/inst/Zcb/c.mul.yaml | 0 arch/inst/Zcb/c.not.yaml | 0 arch/inst/Zcb/c.sb.yaml | 0 arch/inst/Zcb/c.sext.b.yaml | 0 arch/inst/Zcb/c.sext.h.yaml | 0 arch/inst/Zcb/c.sh.yaml | 0 arch/inst/Zcb/c.zext.b.yaml | 0 arch/inst/Zcb/c.zext.h.yaml | 0 arch/inst/Zcb/c.zext.w.yaml | 0 arch/inst/Zcmp/cm.mva01s.yaml | 0 arch/inst/Zcmp/cm.mvsa01.yaml | 0 arch/inst/Zcmp/cm.pop.yaml | 0 arch/inst/Zcmp/cm.popret.yaml | 0 arch/inst/Zcmp/cm.popretz.yaml | 0 arch/inst/Zcmp/cm.push.yaml | 0 arch/inst/Zfbfmin/fcvt.bf16.s.yaml | 0 arch/inst/Zfbfmin/fcvt.s.bf16.yaml | 0 arch/inst/Zfh/fadd.h.yaml | 0 arch/inst/Zfh/fclass.h.yaml | 0 arch/inst/Zfh/fcvt.d.h.yaml | 0 arch/inst/Zfh/fcvt.h.d.yaml | 0 arch/inst/Zfh/fcvt.h.l.yaml | 0 arch/inst/Zfh/fcvt.h.lu.yaml | 0 arch/inst/Zfh/fcvt.h.s.yaml | 0 arch/inst/Zfh/fcvt.h.w.yaml | 0 arch/inst/Zfh/fcvt.h.wu.yaml | 0 arch/inst/Zfh/fcvt.l.h.yaml | 0 arch/inst/Zfh/fcvt.lu.h.yaml | 0 arch/inst/Zfh/fcvt.s.h.yaml | 0 arch/inst/Zfh/fcvt.w.h.yaml | 0 arch/inst/Zfh/fcvt.wu.h.yaml | 0 arch/inst/Zfh/fdiv.h.yaml | 0 arch/inst/Zfh/feq.h.yaml | 0 arch/inst/Zfh/fle.h.yaml | 0 arch/inst/Zfh/fleq.h.yaml | 0 arch/inst/Zfh/flh.yaml | 0 arch/inst/Zfh/fli.h.yaml | 0 arch/inst/Zfh/flt.h.yaml | 0 arch/inst/Zfh/fltq.h.yaml | 0 arch/inst/Zfh/fmadd.h.yaml | 0 arch/inst/Zfh/fmax.h.yaml | 0 arch/inst/Zfh/fmaxm.h.yaml | 0 arch/inst/Zfh/fmin.h.yaml | 0 arch/inst/Zfh/fminm.h.yaml | 0 arch/inst/Zfh/fmsub.h.yaml | 0 arch/inst/Zfh/fmul.h.yaml | 0 arch/inst/Zfh/fmv.h.x.yaml | 0 arch/inst/Zfh/fmv.x.h.yaml | 0 arch/inst/Zfh/fnmadd.h.yaml | 0 arch/inst/Zfh/fnmsub.h.yaml | 0 arch/inst/Zfh/fround.h.yaml | 0 arch/inst/Zfh/froundnx.h.yaml | 0 arch/inst/Zfh/fsgnj.h.yaml | 0 arch/inst/Zfh/fsgnjn.h.yaml | 0 arch/inst/Zfh/fsgnjx.h.yaml | 0 arch/inst/Zfh/fsh.yaml | 0 arch/inst/Zfh/fsqrt.h.yaml | 0 arch/inst/Zfh/fsub.h.yaml | 0 arch/inst/Zicbom/cbo.clean.yaml | 0 arch/inst/Zicbom/cbo.flush.yaml | 0 arch/inst/Zicbom/cbo.inval.yaml | 0 arch/inst/Zicboz/cbo.zero.yaml | 0 arch/inst/Zicfilp/lpad.yaml | 0 arch/inst/Zicfiss/ssamoswap.d.yaml | 0 arch/inst/Zicfiss/ssamoswap.w.yaml | 0 arch/inst/Zicfiss/sspopchk.x1.yaml | 0 arch/inst/Zicfiss/sspopchk.x5.yaml | 0 arch/inst/Zicfiss/sspush.x1.yaml | 0 arch/inst/Zicfiss/sspush.x5.yaml | 0 arch/inst/Zicfiss/ssrdp.yaml | 0 arch/inst/Zicond/czero.eqz.yaml | 0 arch/inst/Zicond/czero.nez.yaml | 0 arch/inst/Zicsr/csrrc.yaml | 0 arch/inst/Zicsr/csrrci.yaml | 0 arch/inst/Zicsr/csrrs.yaml | 0 arch/inst/Zicsr/csrrsi.yaml | 0 arch/inst/Zicsr/csrrw.yaml | 0 arch/inst/Zicsr/csrrwi.yaml | 2 +- arch/inst/Zifencei/fence.i.yaml | 0 arch/inst/Zimop/mop.r.n.yaml | 0 arch/inst/Zimop/mop.rr.n.yaml | 0 arch/inst/Zk/aes32dsi.yaml | 0 arch/inst/Zk/aes32dsmi.yaml | 0 arch/inst/Zk/aes32esi.yaml | 0 arch/inst/Zk/aes32esmi.yaml | 0 arch/inst/Zk/aes64ds.yaml | 0 arch/inst/Zk/aes64dsm.yaml | 0 arch/inst/Zk/aes64es.yaml | 0 arch/inst/Zk/aes64esm.yaml | 0 arch/inst/Zk/aes64im.yaml | 0 arch/inst/Zk/aes64ks1i.yaml | 0 arch/inst/Zk/aes64ks2.yaml | 0 arch/inst/Zk/pack.yaml | 0 arch/inst/Zk/packh.yaml | 0 arch/inst/Zk/packw.yaml | 0 arch/inst/Zk/sha256sig0.yaml | 0 arch/inst/Zk/sha256sig1.yaml | 0 arch/inst/Zk/sha256sum0.yaml | 0 arch/inst/Zk/sha256sum1.yaml | 0 arch/inst/Zk/sha512sig0.yaml | 0 arch/inst/Zk/sha512sig0h.yaml | 0 arch/inst/Zk/sha512sig0l.yaml | 0 arch/inst/Zk/sha512sig1.yaml | 0 arch/inst/Zk/sha512sig1h.yaml | 0 arch/inst/Zk/sha512sig1l.yaml | 0 arch/inst/Zk/sha512sum0.yaml | 0 arch/inst/Zk/sha512sum0r.yaml | 0 arch/inst/Zk/sha512sum1.yaml | 0 arch/inst/Zk/sha512sum1r.yaml | 0 arch/inst/Zks/sm3p0.yaml | 0 arch/inst/Zks/sm3p1.yaml | 0 arch/inst/Zks/sm4ed.yaml | 0 arch/inst/Zks/sm4ks.yaml | 0 arch/inst/Zvbb/vandn.vv.yaml | 0 arch/inst/Zvbb/vandn.vx.yaml | 0 arch/inst/Zvbb/vbrev.v.yaml | 0 arch/inst/Zvbb/vbrev8.v.yaml | 0 arch/inst/Zvbb/vclz.v.yaml | 0 arch/inst/Zvbb/vcpop.v.yaml | 0 arch/inst/Zvbb/vctz.v.yaml | 0 arch/inst/Zvbb/vrev8.v.yaml | 0 arch/inst/Zvbb/vrol.vv.yaml | 0 arch/inst/Zvbb/vrol.vx.yaml | 0 arch/inst/Zvbb/vror.vi.yaml | 0 arch/inst/Zvbb/vror.vv.yaml | 0 arch/inst/Zvbb/vror.vx.yaml | 0 arch/inst/Zvbb/vwsll.vi.yaml | 2 +- arch/inst/Zvbb/vwsll.vv.yaml | 0 arch/inst/Zvbb/vwsll.vx.yaml | 0 arch/inst/Zvbc/vclmul.vv.yaml | 0 arch/inst/Zvbc/vclmul.vx.yaml | 0 arch/inst/Zvbc/vclmulh.vv.yaml | 0 arch/inst/Zvbc/vclmulh.vx.yaml | 0 arch/inst/Zvfbfmin/vfncvtbf16.f.f.w.yaml | 0 arch/inst/Zvfbfmin/vfwcvtbf16.f.f.v.yaml | 0 arch/inst/Zvfbfwma/vfwmaccbf16.vf.yaml | 0 arch/inst/Zvfbfwma/vfwmaccbf16.vv.yaml | 0 arch/inst/Zvkg/vghsh.vv.yaml | 0 arch/inst/Zvkg/vgmul.vv.yaml | 0 arch/inst/Zvkn/vaesdf.vs.yaml | 0 arch/inst/Zvkn/vaesdf.vv.yaml | 0 arch/inst/Zvkn/vaesdm.vs.yaml | 0 arch/inst/Zvkn/vaesdm.vv.yaml | 0 arch/inst/Zvkn/vaesef.vs.yaml | 0 arch/inst/Zvkn/vaesef.vv.yaml | 0 arch/inst/Zvkn/vaesem.vs.yaml | 0 arch/inst/Zvkn/vaesem.vv.yaml | 0 arch/inst/Zvkn/vaeskf1.vi.yaml | 2 +- arch/inst/Zvkn/vaeskf2.vi.yaml | 2 +- arch/inst/Zvkn/vaesz.vs.yaml | 0 arch/inst/Zvkn/vsha2ch.vv.yaml | 0 arch/inst/Zvkn/vsha2cl.vv.yaml | 0 arch/inst/Zvkn/vsha2ms.vv.yaml | 0 arch/inst/Zvks/vsm3c.vi.yaml | 2 +- arch/inst/Zvks/vsm3me.vv.yaml | 0 arch/inst/Zvks/vsm4k.vi.yaml | 2 +- arch/inst/Zvks/vsm4r.vs.yaml | 0 arch/inst/Zvks/vsm4r.vv.yaml | 0 1147 files changed, 9 insertions(+), 9 deletions(-) mode change 100644 => 100755 arch/inst/A/amoadd.d.yaml mode change 100644 => 100755 arch/inst/A/amoadd.w.yaml mode change 100644 => 100755 arch/inst/A/amoand.d.yaml mode change 100644 => 100755 arch/inst/A/amoand.w.yaml mode change 100644 => 100755 arch/inst/A/amomax.d.yaml mode change 100644 => 100755 arch/inst/A/amomax.w.yaml mode change 100644 => 100755 arch/inst/A/amomaxu.d.yaml mode change 100644 => 100755 arch/inst/A/amomaxu.w.yaml mode change 100644 => 100755 arch/inst/A/amomin.d.yaml mode change 100644 => 100755 arch/inst/A/amomin.w.yaml mode change 100644 => 100755 arch/inst/A/amominu.d.yaml mode change 100644 => 100755 arch/inst/A/amominu.w.yaml mode change 100644 => 100755 arch/inst/A/amoor.d.yaml mode change 100644 => 100755 arch/inst/A/amoor.w.yaml mode change 100644 => 100755 arch/inst/A/amoswap.d.yaml mode change 100644 => 100755 arch/inst/A/amoswap.w.yaml mode change 100644 => 100755 arch/inst/A/amoxor.d.yaml mode change 100644 => 100755 arch/inst/A/amoxor.w.yaml mode change 100644 => 100755 arch/inst/A/lr.d.yaml mode change 100644 => 100755 arch/inst/A/lr.w.yaml mode change 100644 => 100755 arch/inst/A/sc.d.yaml mode change 100644 => 100755 arch/inst/A/sc.w.yaml mode change 100644 => 100755 arch/inst/B/add.uw.yaml mode change 100644 => 100755 arch/inst/B/andn.yaml mode change 100644 => 100755 arch/inst/B/bclr.yaml mode change 100644 => 100755 arch/inst/B/bclri.yaml mode change 100644 => 100755 arch/inst/B/bext.yaml mode change 100644 => 100755 arch/inst/B/bexti.yaml mode change 100644 => 100755 arch/inst/B/binv.yaml mode change 100644 => 100755 arch/inst/B/binvi.yaml mode change 100644 => 100755 arch/inst/B/bset.yaml mode change 100644 => 100755 arch/inst/B/bseti.yaml mode change 100644 => 100755 arch/inst/B/clmul.yaml mode change 100644 => 100755 arch/inst/B/clmulh.yaml mode change 100644 => 100755 arch/inst/B/clmulr.yaml mode change 100644 => 100755 arch/inst/B/clz.yaml mode change 100644 => 100755 arch/inst/B/clzw.yaml mode change 100644 => 100755 arch/inst/B/cpop.yaml mode change 100644 => 100755 arch/inst/B/cpopw.yaml mode change 100644 => 100755 arch/inst/B/ctz.yaml mode change 100644 => 100755 arch/inst/B/ctzw.yaml mode change 100644 => 100755 arch/inst/B/max.yaml mode change 100644 => 100755 arch/inst/B/maxu.yaml mode change 100644 => 100755 arch/inst/B/min.yaml mode change 100644 => 100755 arch/inst/B/minu.yaml mode change 100644 => 100755 arch/inst/B/orc.b.yaml mode change 100644 => 100755 arch/inst/B/orn.yaml mode change 100644 => 100755 arch/inst/B/rev8.yaml mode change 100644 => 100755 arch/inst/B/rol.yaml mode change 100644 => 100755 arch/inst/B/rolw.yaml mode change 100644 => 100755 arch/inst/B/ror.yaml mode change 100644 => 100755 arch/inst/B/rori.yaml mode change 100644 => 100755 arch/inst/B/roriw.yaml mode change 100644 => 100755 arch/inst/B/rorw.yaml mode change 100644 => 100755 arch/inst/B/sext.b.yaml mode change 100644 => 100755 arch/inst/B/sext.h.yaml mode change 100644 => 100755 arch/inst/B/sh1add.uw.yaml mode change 100644 => 100755 arch/inst/B/sh1add.yaml mode change 100644 => 100755 arch/inst/B/sh2add.uw.yaml mode change 100644 => 100755 arch/inst/B/sh2add.yaml mode change 100644 => 100755 arch/inst/B/sh3add.uw.yaml mode change 100644 => 100755 arch/inst/B/sh3add.yaml mode change 100644 => 100755 arch/inst/B/slli.uw.yaml mode change 100644 => 100755 arch/inst/B/xnor.yaml mode change 100644 => 100755 arch/inst/B/zext.h.yaml mode change 100644 => 100755 arch/inst/C/c.add.yaml mode change 100644 => 100755 arch/inst/C/c.addi.yaml mode change 100644 => 100755 arch/inst/C/c.addi16sp.yaml mode change 100644 => 100755 arch/inst/C/c.addi4spn.yaml mode change 100644 => 100755 arch/inst/C/c.addiw.yaml mode change 100644 => 100755 arch/inst/C/c.addw.yaml mode change 100644 => 100755 arch/inst/C/c.and.yaml mode change 100644 => 100755 arch/inst/C/c.andi.yaml mode change 100644 => 100755 arch/inst/C/c.beqz.yaml mode change 100644 => 100755 arch/inst/C/c.bnez.yaml mode change 100644 => 100755 arch/inst/C/c.ebreak.yaml mode change 100644 => 100755 arch/inst/C/c.fld.yaml mode change 100644 => 100755 arch/inst/C/c.fldsp.yaml mode change 100644 => 100755 arch/inst/C/c.flw.yaml mode change 100644 => 100755 arch/inst/C/c.flwsp.yaml mode change 100644 => 100755 arch/inst/C/c.fsd.yaml mode change 100644 => 100755 arch/inst/C/c.fsdsp.yaml mode change 100644 => 100755 arch/inst/C/c.fsw.yaml mode change 100644 => 100755 arch/inst/C/c.fswsp.yaml mode change 100644 => 100755 arch/inst/C/c.j.yaml mode change 100644 => 100755 arch/inst/C/c.jal.yaml mode change 100644 => 100755 arch/inst/C/c.jalr.yaml mode change 100644 => 100755 arch/inst/C/c.jr.yaml mode change 100644 => 100755 arch/inst/C/c.ld.yaml mode change 100644 => 100755 arch/inst/C/c.ldsp.yaml mode change 100644 => 100755 arch/inst/C/c.li.yaml mode change 100644 => 100755 arch/inst/C/c.lui.yaml mode change 100644 => 100755 arch/inst/C/c.lw.yaml mode change 100644 => 100755 arch/inst/C/c.lwsp.yaml mode change 100644 => 100755 arch/inst/C/c.mv.yaml mode change 100644 => 100755 arch/inst/C/c.nop.yaml mode change 100644 => 100755 arch/inst/C/c.or.yaml mode change 100644 => 100755 arch/inst/C/c.sd.yaml mode change 100644 => 100755 arch/inst/C/c.sdsp.yaml mode change 100644 => 100755 arch/inst/C/c.slli.yaml mode change 100644 => 100755 arch/inst/C/c.srai.yaml mode change 100644 => 100755 arch/inst/C/c.srli.yaml mode change 100644 => 100755 arch/inst/C/c.sub.yaml mode change 100644 => 100755 arch/inst/C/c.subw.yaml mode change 100644 => 100755 arch/inst/C/c.sw.yaml mode change 100644 => 100755 arch/inst/C/c.swsp.yaml mode change 100644 => 100755 arch/inst/C/c.xor.yaml mode change 100644 => 100755 arch/inst/D/fadd.d.yaml mode change 100644 => 100755 arch/inst/D/fclass.d.yaml mode change 100644 => 100755 arch/inst/D/fcvt.d.l.yaml mode change 100644 => 100755 arch/inst/D/fcvt.d.lu.yaml mode change 100644 => 100755 arch/inst/D/fcvt.d.s.yaml mode change 100644 => 100755 arch/inst/D/fcvt.d.w.yaml mode change 100644 => 100755 arch/inst/D/fcvt.d.wu.yaml mode change 100644 => 100755 arch/inst/D/fcvt.l.d.yaml mode change 100644 => 100755 arch/inst/D/fcvt.lu.d.yaml mode change 100644 => 100755 arch/inst/D/fcvt.s.d.yaml mode change 100644 => 100755 arch/inst/D/fcvt.w.d.yaml mode change 100644 => 100755 arch/inst/D/fcvt.wu.d.yaml mode change 100644 => 100755 arch/inst/D/fcvtmod.w.d.yaml mode change 100644 => 100755 arch/inst/D/fdiv.d.yaml mode change 100644 => 100755 arch/inst/D/feq.d.yaml mode change 100644 => 100755 arch/inst/D/fld.yaml mode change 100644 => 100755 arch/inst/D/fle.d.yaml mode change 100644 => 100755 arch/inst/D/fleq.d.yaml mode change 100644 => 100755 arch/inst/D/fli.d.yaml mode change 100644 => 100755 arch/inst/D/flt.d.yaml mode change 100644 => 100755 arch/inst/D/fltq.d.yaml mode change 100644 => 100755 arch/inst/D/fmadd.d.yaml mode change 100644 => 100755 arch/inst/D/fmax.d.yaml mode change 100644 => 100755 arch/inst/D/fmaxm.d.yaml mode change 100644 => 100755 arch/inst/D/fmin.d.yaml mode change 100644 => 100755 arch/inst/D/fminm.d.yaml mode change 100644 => 100755 arch/inst/D/fmsub.d.yaml mode change 100644 => 100755 arch/inst/D/fmul.d.yaml mode change 100644 => 100755 arch/inst/D/fmv.d.x.yaml mode change 100644 => 100755 arch/inst/D/fmv.x.d.yaml mode change 100644 => 100755 arch/inst/D/fmvh.x.d.yaml mode change 100644 => 100755 arch/inst/D/fmvp.d.x.yaml mode change 100644 => 100755 arch/inst/D/fnmadd.d.yaml mode change 100644 => 100755 arch/inst/D/fnmsub.d.yaml mode change 100644 => 100755 arch/inst/D/fround.d.yaml mode change 100644 => 100755 arch/inst/D/froundnx.d.yaml mode change 100644 => 100755 arch/inst/D/fsd.yaml mode change 100644 => 100755 arch/inst/D/fsgnj.d.yaml mode change 100644 => 100755 arch/inst/D/fsgnjn.d.yaml mode change 100644 => 100755 arch/inst/D/fsgnjx.d.yaml mode change 100644 => 100755 arch/inst/D/fsqrt.d.yaml mode change 100644 => 100755 arch/inst/D/fsub.d.yaml mode change 100644 => 100755 arch/inst/F/fadd.s.yaml mode change 100644 => 100755 arch/inst/F/fclass.s.yaml mode change 100644 => 100755 arch/inst/F/fcvt.l.s.yaml mode change 100644 => 100755 arch/inst/F/fcvt.lu.s.yaml mode change 100644 => 100755 arch/inst/F/fcvt.s.l.yaml mode change 100644 => 100755 arch/inst/F/fcvt.s.lu.yaml mode change 100644 => 100755 arch/inst/F/fcvt.s.w.yaml mode change 100644 => 100755 arch/inst/F/fcvt.s.wu.yaml mode change 100644 => 100755 arch/inst/F/fcvt.w.s.yaml mode change 100644 => 100755 arch/inst/F/fcvt.wu.s.yaml mode change 100644 => 100755 arch/inst/F/fdiv.s.yaml mode change 100644 => 100755 arch/inst/F/feq.s.yaml mode change 100644 => 100755 arch/inst/F/fle.s.yaml mode change 100644 => 100755 arch/inst/F/fleq.s.yaml mode change 100644 => 100755 arch/inst/F/fli.s.yaml mode change 100644 => 100755 arch/inst/F/flt.s.yaml mode change 100644 => 100755 arch/inst/F/fltq.s.yaml mode change 100644 => 100755 arch/inst/F/flw.yaml mode change 100644 => 100755 arch/inst/F/fmadd.s.yaml mode change 100644 => 100755 arch/inst/F/fmax.s.yaml mode change 100644 => 100755 arch/inst/F/fmaxm.s.yaml mode change 100644 => 100755 arch/inst/F/fmin.s.yaml mode change 100644 => 100755 arch/inst/F/fminm.s.yaml mode change 100644 => 100755 arch/inst/F/fmsub.s.yaml mode change 100644 => 100755 arch/inst/F/fmul.s.yaml mode change 100644 => 100755 arch/inst/F/fmv.w.x.yaml mode change 100644 => 100755 arch/inst/F/fmv.x.w.yaml mode change 100644 => 100755 arch/inst/F/fnmadd.s.yaml mode change 100644 => 100755 arch/inst/F/fnmsub.s.yaml mode change 100644 => 100755 arch/inst/F/fround.s.yaml mode change 100644 => 100755 arch/inst/F/froundnx.s.yaml mode change 100644 => 100755 arch/inst/F/fsgnj.s.yaml mode change 100644 => 100755 arch/inst/F/fsgnjn.s.yaml mode change 100644 => 100755 arch/inst/F/fsgnjx.s.yaml mode change 100644 => 100755 arch/inst/F/fsqrt.s.yaml mode change 100644 => 100755 arch/inst/F/fsub.s.yaml mode change 100644 => 100755 arch/inst/F/fsw.yaml mode change 100644 => 100755 arch/inst/H/hfence.gvma.yaml mode change 100644 => 100755 arch/inst/H/hfence.vvma.yaml mode change 100644 => 100755 arch/inst/H/hlv.b.yaml mode change 100644 => 100755 arch/inst/H/hlv.bu.yaml mode change 100644 => 100755 arch/inst/H/hlv.d.yaml mode change 100644 => 100755 arch/inst/H/hlv.h.yaml mode change 100644 => 100755 arch/inst/H/hlv.hu.yaml mode change 100644 => 100755 arch/inst/H/hlv.w.yaml mode change 100644 => 100755 arch/inst/H/hlv.wu.yaml mode change 100644 => 100755 arch/inst/H/hlvx.hu.yaml mode change 100644 => 100755 arch/inst/H/hlvx.wu.yaml mode change 100644 => 100755 arch/inst/H/hsv.b.yaml mode change 100644 => 100755 arch/inst/H/hsv.d.yaml mode change 100644 => 100755 arch/inst/H/hsv.h.yaml mode change 100644 => 100755 arch/inst/H/hsv.w.yaml mode change 100644 => 100755 arch/inst/I/add.yaml mode change 100644 => 100755 arch/inst/I/addi.yaml mode change 100644 => 100755 arch/inst/I/addiw.yaml mode change 100644 => 100755 arch/inst/I/addw.yaml mode change 100644 => 100755 arch/inst/I/and.yaml mode change 100644 => 100755 arch/inst/I/andi.yaml mode change 100644 => 100755 arch/inst/I/auipc.yaml mode change 100644 => 100755 arch/inst/I/beq.yaml mode change 100644 => 100755 arch/inst/I/bge.yaml mode change 100644 => 100755 arch/inst/I/bgeu.yaml mode change 100644 => 100755 arch/inst/I/blt.yaml mode change 100644 => 100755 arch/inst/I/bltu.yaml mode change 100644 => 100755 arch/inst/I/bne.yaml mode change 100644 => 100755 arch/inst/I/ebreak.yaml mode change 100644 => 100755 arch/inst/I/ecall.yaml mode change 100644 => 100755 arch/inst/I/fence.yaml mode change 100644 => 100755 arch/inst/I/jal.yaml mode change 100644 => 100755 arch/inst/I/jalr.yaml mode change 100644 => 100755 arch/inst/I/lb.yaml mode change 100644 => 100755 arch/inst/I/lbu.yaml mode change 100644 => 100755 arch/inst/I/ld.yaml mode change 100644 => 100755 arch/inst/I/lh.yaml mode change 100644 => 100755 arch/inst/I/lhu.yaml mode change 100644 => 100755 arch/inst/I/lui.yaml mode change 100644 => 100755 arch/inst/I/lw.yaml mode change 100644 => 100755 arch/inst/I/lwu.yaml mode change 100644 => 100755 arch/inst/I/mret.yaml mode change 100644 => 100755 arch/inst/I/or.yaml mode change 100644 => 100755 arch/inst/I/ori.yaml mode change 100644 => 100755 arch/inst/I/sb.yaml mode change 100644 => 100755 arch/inst/I/sd.yaml mode change 100644 => 100755 arch/inst/I/sh.yaml mode change 100644 => 100755 arch/inst/I/sll.yaml mode change 100644 => 100755 arch/inst/I/slli.yaml mode change 100644 => 100755 arch/inst/I/slliw.yaml mode change 100644 => 100755 arch/inst/I/sllw.yaml mode change 100644 => 100755 arch/inst/I/slt.yaml mode change 100644 => 100755 arch/inst/I/slti.yaml mode change 100644 => 100755 arch/inst/I/sltiu.yaml mode change 100644 => 100755 arch/inst/I/sltu.yaml mode change 100644 => 100755 arch/inst/I/sra.yaml mode change 100644 => 100755 arch/inst/I/srai.yaml mode change 100644 => 100755 arch/inst/I/sraiw.yaml mode change 100644 => 100755 arch/inst/I/sraw.yaml mode change 100644 => 100755 arch/inst/I/srl.yaml mode change 100644 => 100755 arch/inst/I/srli.yaml mode change 100644 => 100755 arch/inst/I/srliw.yaml mode change 100644 => 100755 arch/inst/I/srlw.yaml mode change 100644 => 100755 arch/inst/I/sub.yaml mode change 100644 => 100755 arch/inst/I/subw.yaml mode change 100644 => 100755 arch/inst/I/sw.yaml mode change 100644 => 100755 arch/inst/I/wfi.yaml mode change 100644 => 100755 arch/inst/I/xor.yaml mode change 100644 => 100755 arch/inst/I/xori.yaml mode change 100644 => 100755 arch/inst/M/div.yaml mode change 100644 => 100755 arch/inst/M/divu.yaml mode change 100644 => 100755 arch/inst/M/divuw.yaml mode change 100644 => 100755 arch/inst/M/divw.yaml mode change 100644 => 100755 arch/inst/M/mul.yaml mode change 100644 => 100755 arch/inst/M/mulh.yaml mode change 100644 => 100755 arch/inst/M/mulhsu.yaml mode change 100644 => 100755 arch/inst/M/mulhu.yaml mode change 100644 => 100755 arch/inst/M/mulw.yaml mode change 100644 => 100755 arch/inst/M/rem.yaml mode change 100644 => 100755 arch/inst/M/remu.yaml mode change 100644 => 100755 arch/inst/M/remuw.yaml mode change 100644 => 100755 arch/inst/M/remw.yaml mode change 100644 => 100755 arch/inst/Q/fadd.q.yaml mode change 100644 => 100755 arch/inst/Q/fclass.q.yaml mode change 100644 => 100755 arch/inst/Q/fcvt.d.q.yaml mode change 100644 => 100755 arch/inst/Q/fcvt.h.q.yaml mode change 100644 => 100755 arch/inst/Q/fcvt.l.q.yaml mode change 100644 => 100755 arch/inst/Q/fcvt.lu.q.yaml mode change 100644 => 100755 arch/inst/Q/fcvt.q.d.yaml mode change 100644 => 100755 arch/inst/Q/fcvt.q.h.yaml mode change 100644 => 100755 arch/inst/Q/fcvt.q.l.yaml mode change 100644 => 100755 arch/inst/Q/fcvt.q.lu.yaml mode change 100644 => 100755 arch/inst/Q/fcvt.q.s.yaml mode change 100644 => 100755 arch/inst/Q/fcvt.q.w.yaml mode change 100644 => 100755 arch/inst/Q/fcvt.q.wu.yaml mode change 100644 => 100755 arch/inst/Q/fcvt.s.q.yaml mode change 100644 => 100755 arch/inst/Q/fcvt.w.q.yaml mode change 100644 => 100755 arch/inst/Q/fcvt.wu.q.yaml mode change 100644 => 100755 arch/inst/Q/fdiv.q.yaml mode change 100644 => 100755 arch/inst/Q/feq.q.yaml mode change 100644 => 100755 arch/inst/Q/fle.q.yaml mode change 100644 => 100755 arch/inst/Q/fleq.q.yaml mode change 100644 => 100755 arch/inst/Q/fli.q.yaml mode change 100644 => 100755 arch/inst/Q/flq.yaml mode change 100644 => 100755 arch/inst/Q/flt.q.yaml mode change 100644 => 100755 arch/inst/Q/fltq.q.yaml mode change 100644 => 100755 arch/inst/Q/fmadd.q.yaml mode change 100644 => 100755 arch/inst/Q/fmax.q.yaml mode change 100644 => 100755 arch/inst/Q/fmaxm.q.yaml mode change 100644 => 100755 arch/inst/Q/fmin.q.yaml mode change 100644 => 100755 arch/inst/Q/fminm.q.yaml mode change 100644 => 100755 arch/inst/Q/fmsub.q.yaml mode change 100644 => 100755 arch/inst/Q/fmul.q.yaml mode change 100644 => 100755 arch/inst/Q/fmvh.x.q.yaml mode change 100644 => 100755 arch/inst/Q/fmvp.q.x.yaml mode change 100644 => 100755 arch/inst/Q/fnmadd.q.yaml mode change 100644 => 100755 arch/inst/Q/fnmsub.q.yaml mode change 100644 => 100755 arch/inst/Q/fround.q.yaml mode change 100644 => 100755 arch/inst/Q/froundnx.q.yaml mode change 100644 => 100755 arch/inst/Q/fsgnj.q.yaml mode change 100644 => 100755 arch/inst/Q/fsgnjn.q.yaml mode change 100644 => 100755 arch/inst/Q/fsgnjx.q.yaml mode change 100644 => 100755 arch/inst/Q/fsq.yaml mode change 100644 => 100755 arch/inst/Q/fsqrt.q.yaml mode change 100644 => 100755 arch/inst/Q/fsub.q.yaml mode change 100644 => 100755 arch/inst/S/sfence.vma.yaml mode change 100644 => 100755 arch/inst/S/sret.yaml mode change 100644 => 100755 arch/inst/Sdext/dret.yaml mode change 100644 => 100755 arch/inst/Smdbltrp/sctrclr.yaml mode change 100644 => 100755 arch/inst/Smrnmi/mnret.yaml mode change 100644 => 100755 arch/inst/Svinval/hinval.gvma.yaml mode change 100644 => 100755 arch/inst/Svinval/hinval.vvma.yaml mode change 100644 => 100755 arch/inst/Svinval/sfence.inval.ir.yaml mode change 100644 => 100755 arch/inst/Svinval/sfence.w.inval.yaml mode change 100644 => 100755 arch/inst/Svinval/sinval.vma.yaml mode change 100644 => 100755 arch/inst/V/vaadd.vv.yaml mode change 100644 => 100755 arch/inst/V/vaadd.vx.yaml mode change 100644 => 100755 arch/inst/V/vaaddu.vv.yaml mode change 100644 => 100755 arch/inst/V/vaaddu.vx.yaml mode change 100644 => 100755 arch/inst/V/vadc.vim.yaml mode change 100644 => 100755 arch/inst/V/vadc.vvm.yaml mode change 100644 => 100755 arch/inst/V/vadc.vxm.yaml mode change 100644 => 100755 arch/inst/V/vadd.vi.yaml mode change 100644 => 100755 arch/inst/V/vadd.vv.yaml mode change 100644 => 100755 arch/inst/V/vadd.vx.yaml mode change 100644 => 100755 arch/inst/V/vand.vi.yaml mode change 100644 => 100755 arch/inst/V/vand.vv.yaml mode change 100644 => 100755 arch/inst/V/vand.vx.yaml mode change 100644 => 100755 arch/inst/V/vasub.vv.yaml mode change 100644 => 100755 arch/inst/V/vasub.vx.yaml mode change 100644 => 100755 arch/inst/V/vasubu.vv.yaml mode change 100644 => 100755 arch/inst/V/vasubu.vx.yaml mode change 100644 => 100755 arch/inst/V/vcompress.vm.yaml mode change 100644 => 100755 arch/inst/V/vcpop.m.yaml mode change 100644 => 100755 arch/inst/V/vdiv.vv.yaml mode change 100644 => 100755 arch/inst/V/vdiv.vx.yaml mode change 100644 => 100755 arch/inst/V/vdivu.vv.yaml mode change 100644 => 100755 arch/inst/V/vdivu.vx.yaml mode change 100644 => 100755 arch/inst/V/vfadd.vf.yaml mode change 100644 => 100755 arch/inst/V/vfadd.vv.yaml mode change 100644 => 100755 arch/inst/V/vfclass.v.yaml mode change 100644 => 100755 arch/inst/V/vfcvt.f.x.v.yaml mode change 100644 => 100755 arch/inst/V/vfcvt.f.xu.v.yaml mode change 100644 => 100755 arch/inst/V/vfcvt.rtz.x.f.v.yaml mode change 100644 => 100755 arch/inst/V/vfcvt.rtz.xu.f.v.yaml mode change 100644 => 100755 arch/inst/V/vfcvt.x.f.v.yaml mode change 100644 => 100755 arch/inst/V/vfcvt.xu.f.v.yaml mode change 100644 => 100755 arch/inst/V/vfdiv.vf.yaml mode change 100644 => 100755 arch/inst/V/vfdiv.vv.yaml mode change 100644 => 100755 arch/inst/V/vfirst.m.yaml mode change 100644 => 100755 arch/inst/V/vfmacc.vf.yaml mode change 100644 => 100755 arch/inst/V/vfmacc.vv.yaml mode change 100644 => 100755 arch/inst/V/vfmadd.vf.yaml mode change 100644 => 100755 arch/inst/V/vfmadd.vv.yaml mode change 100644 => 100755 arch/inst/V/vfmax.vf.yaml mode change 100644 => 100755 arch/inst/V/vfmax.vv.yaml mode change 100644 => 100755 arch/inst/V/vfmerge.vfm.yaml mode change 100644 => 100755 arch/inst/V/vfmin.vf.yaml mode change 100644 => 100755 arch/inst/V/vfmin.vv.yaml mode change 100644 => 100755 arch/inst/V/vfmsac.vf.yaml mode change 100644 => 100755 arch/inst/V/vfmsac.vv.yaml mode change 100644 => 100755 arch/inst/V/vfmsub.vf.yaml mode change 100644 => 100755 arch/inst/V/vfmsub.vv.yaml mode change 100644 => 100755 arch/inst/V/vfmul.vf.yaml mode change 100644 => 100755 arch/inst/V/vfmul.vv.yaml mode change 100644 => 100755 arch/inst/V/vfmv.f.s.yaml mode change 100644 => 100755 arch/inst/V/vfmv.s.f.yaml mode change 100644 => 100755 arch/inst/V/vfmv.v.f.yaml mode change 100644 => 100755 arch/inst/V/vfncvt.f.f.w.yaml mode change 100644 => 100755 arch/inst/V/vfncvt.f.x.w.yaml mode change 100644 => 100755 arch/inst/V/vfncvt.f.xu.w.yaml mode change 100644 => 100755 arch/inst/V/vfncvt.rod.f.f.w.yaml mode change 100644 => 100755 arch/inst/V/vfncvt.rtz.x.f.w.yaml mode change 100644 => 100755 arch/inst/V/vfncvt.rtz.xu.f.w.yaml mode change 100644 => 100755 arch/inst/V/vfncvt.x.f.w.yaml mode change 100644 => 100755 arch/inst/V/vfncvt.xu.f.w.yaml mode change 100644 => 100755 arch/inst/V/vfnmacc.vf.yaml mode change 100644 => 100755 arch/inst/V/vfnmacc.vv.yaml mode change 100644 => 100755 arch/inst/V/vfnmadd.vf.yaml mode change 100644 => 100755 arch/inst/V/vfnmadd.vv.yaml mode change 100644 => 100755 arch/inst/V/vfnmsac.vf.yaml mode change 100644 => 100755 arch/inst/V/vfnmsac.vv.yaml mode change 100644 => 100755 arch/inst/V/vfnmsub.vf.yaml mode change 100644 => 100755 arch/inst/V/vfnmsub.vv.yaml mode change 100644 => 100755 arch/inst/V/vfrdiv.vf.yaml mode change 100644 => 100755 arch/inst/V/vfrec7.v.yaml mode change 100644 => 100755 arch/inst/V/vfredmax.vs.yaml mode change 100644 => 100755 arch/inst/V/vfredmin.vs.yaml mode change 100644 => 100755 arch/inst/V/vfredosum.vs.yaml mode change 100644 => 100755 arch/inst/V/vfredusum.vs.yaml mode change 100644 => 100755 arch/inst/V/vfrsqrt7.v.yaml mode change 100644 => 100755 arch/inst/V/vfrsub.vf.yaml mode change 100644 => 100755 arch/inst/V/vfsgnj.vf.yaml mode change 100644 => 100755 arch/inst/V/vfsgnj.vv.yaml mode change 100644 => 100755 arch/inst/V/vfsgnjn.vf.yaml mode change 100644 => 100755 arch/inst/V/vfsgnjn.vv.yaml mode change 100644 => 100755 arch/inst/V/vfsgnjx.vf.yaml mode change 100644 => 100755 arch/inst/V/vfsgnjx.vv.yaml mode change 100644 => 100755 arch/inst/V/vfslide1down.vf.yaml mode change 100644 => 100755 arch/inst/V/vfslide1up.vf.yaml mode change 100644 => 100755 arch/inst/V/vfsqrt.v.yaml mode change 100644 => 100755 arch/inst/V/vfsub.vf.yaml mode change 100644 => 100755 arch/inst/V/vfsub.vv.yaml mode change 100644 => 100755 arch/inst/V/vfwadd.vf.yaml mode change 100644 => 100755 arch/inst/V/vfwadd.vv.yaml mode change 100644 => 100755 arch/inst/V/vfwadd.wf.yaml mode change 100644 => 100755 arch/inst/V/vfwadd.wv.yaml mode change 100644 => 100755 arch/inst/V/vfwcvt.f.f.v.yaml mode change 100644 => 100755 arch/inst/V/vfwcvt.f.x.v.yaml mode change 100644 => 100755 arch/inst/V/vfwcvt.f.xu.v.yaml mode change 100644 => 100755 arch/inst/V/vfwcvt.rtz.x.f.v.yaml mode change 100644 => 100755 arch/inst/V/vfwcvt.rtz.xu.f.v.yaml mode change 100644 => 100755 arch/inst/V/vfwcvt.x.f.v.yaml mode change 100644 => 100755 arch/inst/V/vfwcvt.xu.f.v.yaml mode change 100644 => 100755 arch/inst/V/vfwmacc.vf.yaml mode change 100644 => 100755 arch/inst/V/vfwmacc.vv.yaml mode change 100644 => 100755 arch/inst/V/vfwmsac.vf.yaml mode change 100644 => 100755 arch/inst/V/vfwmsac.vv.yaml mode change 100644 => 100755 arch/inst/V/vfwmul.vf.yaml mode change 100644 => 100755 arch/inst/V/vfwmul.vv.yaml mode change 100644 => 100755 arch/inst/V/vfwnmacc.vf.yaml mode change 100644 => 100755 arch/inst/V/vfwnmacc.vv.yaml mode change 100644 => 100755 arch/inst/V/vfwnmsac.vf.yaml mode change 100644 => 100755 arch/inst/V/vfwnmsac.vv.yaml mode change 100644 => 100755 arch/inst/V/vfwredosum.vs.yaml mode change 100644 => 100755 arch/inst/V/vfwredusum.vs.yaml mode change 100644 => 100755 arch/inst/V/vfwsub.vf.yaml mode change 100644 => 100755 arch/inst/V/vfwsub.vv.yaml mode change 100644 => 100755 arch/inst/V/vfwsub.wf.yaml mode change 100644 => 100755 arch/inst/V/vfwsub.wv.yaml mode change 100644 => 100755 arch/inst/V/vid.v.yaml mode change 100644 => 100755 arch/inst/V/viota.m.yaml mode change 100644 => 100755 arch/inst/V/vl1re16.v.yaml mode change 100644 => 100755 arch/inst/V/vl1re32.v.yaml mode change 100644 => 100755 arch/inst/V/vl1re64.v.yaml mode change 100644 => 100755 arch/inst/V/vl1re8.v.yaml mode change 100644 => 100755 arch/inst/V/vl2re16.v.yaml mode change 100644 => 100755 arch/inst/V/vl2re32.v.yaml mode change 100644 => 100755 arch/inst/V/vl2re64.v.yaml mode change 100644 => 100755 arch/inst/V/vl2re8.v.yaml mode change 100644 => 100755 arch/inst/V/vl4re16.v.yaml mode change 100644 => 100755 arch/inst/V/vl4re32.v.yaml mode change 100644 => 100755 arch/inst/V/vl4re64.v.yaml mode change 100644 => 100755 arch/inst/V/vl4re8.v.yaml mode change 100644 => 100755 arch/inst/V/vl8re16.v.yaml mode change 100644 => 100755 arch/inst/V/vl8re32.v.yaml mode change 100644 => 100755 arch/inst/V/vl8re64.v.yaml mode change 100644 => 100755 arch/inst/V/vl8re8.v.yaml mode change 100644 => 100755 arch/inst/V/vle16.v.yaml mode change 100644 => 100755 arch/inst/V/vle16ff.v.yaml mode change 100644 => 100755 arch/inst/V/vle32.v.yaml mode change 100644 => 100755 arch/inst/V/vle32ff.v.yaml mode change 100644 => 100755 arch/inst/V/vle64.v.yaml mode change 100644 => 100755 arch/inst/V/vle64ff.v.yaml mode change 100644 => 100755 arch/inst/V/vle8.v.yaml mode change 100644 => 100755 arch/inst/V/vle8ff.v.yaml mode change 100644 => 100755 arch/inst/V/vlm.v.yaml mode change 100644 => 100755 arch/inst/V/vloxei16.v.yaml mode change 100644 => 100755 arch/inst/V/vloxei32.v.yaml mode change 100644 => 100755 arch/inst/V/vloxei64.v.yaml mode change 100644 => 100755 arch/inst/V/vloxei8.v.yaml mode change 100644 => 100755 arch/inst/V/vloxseg2ei16.v.yaml mode change 100644 => 100755 arch/inst/V/vloxseg2ei32.v.yaml mode change 100644 => 100755 arch/inst/V/vloxseg2ei64.v.yaml mode change 100644 => 100755 arch/inst/V/vloxseg2ei8.v.yaml mode change 100644 => 100755 arch/inst/V/vloxseg3ei16.v.yaml mode change 100644 => 100755 arch/inst/V/vloxseg3ei32.v.yaml mode change 100644 => 100755 arch/inst/V/vloxseg3ei64.v.yaml mode change 100644 => 100755 arch/inst/V/vloxseg3ei8.v.yaml mode change 100644 => 100755 arch/inst/V/vloxseg4ei16.v.yaml mode change 100644 => 100755 arch/inst/V/vloxseg4ei32.v.yaml mode change 100644 => 100755 arch/inst/V/vloxseg4ei64.v.yaml mode change 100644 => 100755 arch/inst/V/vloxseg4ei8.v.yaml mode change 100644 => 100755 arch/inst/V/vloxseg5ei16.v.yaml mode change 100644 => 100755 arch/inst/V/vloxseg5ei32.v.yaml mode change 100644 => 100755 arch/inst/V/vloxseg5ei64.v.yaml mode change 100644 => 100755 arch/inst/V/vloxseg5ei8.v.yaml mode change 100644 => 100755 arch/inst/V/vloxseg6ei16.v.yaml mode change 100644 => 100755 arch/inst/V/vloxseg6ei32.v.yaml mode change 100644 => 100755 arch/inst/V/vloxseg6ei64.v.yaml mode change 100644 => 100755 arch/inst/V/vloxseg6ei8.v.yaml mode change 100644 => 100755 arch/inst/V/vloxseg7ei16.v.yaml mode change 100644 => 100755 arch/inst/V/vloxseg7ei32.v.yaml mode change 100644 => 100755 arch/inst/V/vloxseg7ei64.v.yaml mode change 100644 => 100755 arch/inst/V/vloxseg7ei8.v.yaml mode change 100644 => 100755 arch/inst/V/vloxseg8ei16.v.yaml mode change 100644 => 100755 arch/inst/V/vloxseg8ei32.v.yaml mode change 100644 => 100755 arch/inst/V/vloxseg8ei64.v.yaml mode change 100644 => 100755 arch/inst/V/vloxseg8ei8.v.yaml mode change 100644 => 100755 arch/inst/V/vlse16.v.yaml mode change 100644 => 100755 arch/inst/V/vlse32.v.yaml mode change 100644 => 100755 arch/inst/V/vlse64.v.yaml mode change 100644 => 100755 arch/inst/V/vlse8.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg2e16.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg2e16ff.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg2e32.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg2e32ff.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg2e64.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg2e64ff.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg2e8.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg2e8ff.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg3e16.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg3e16ff.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg3e32.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg3e32ff.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg3e64.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg3e64ff.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg3e8.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg3e8ff.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg4e16.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg4e16ff.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg4e32.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg4e32ff.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg4e64.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg4e64ff.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg4e8.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg4e8ff.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg5e16.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg5e16ff.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg5e32.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg5e32ff.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg5e64.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg5e64ff.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg5e8.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg5e8ff.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg6e16.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg6e16ff.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg6e32.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg6e32ff.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg6e64.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg6e64ff.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg6e8.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg6e8ff.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg7e16.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg7e16ff.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg7e32.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg7e32ff.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg7e64.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg7e64ff.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg7e8.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg7e8ff.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg8e16.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg8e16ff.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg8e32.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg8e32ff.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg8e64.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg8e64ff.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg8e8.v.yaml mode change 100644 => 100755 arch/inst/V/vlseg8e8ff.v.yaml mode change 100644 => 100755 arch/inst/V/vlsseg2e16.v.yaml mode change 100644 => 100755 arch/inst/V/vlsseg2e32.v.yaml mode change 100644 => 100755 arch/inst/V/vlsseg2e64.v.yaml mode change 100644 => 100755 arch/inst/V/vlsseg2e8.v.yaml mode change 100644 => 100755 arch/inst/V/vlsseg3e16.v.yaml mode change 100644 => 100755 arch/inst/V/vlsseg3e32.v.yaml mode change 100644 => 100755 arch/inst/V/vlsseg3e64.v.yaml mode change 100644 => 100755 arch/inst/V/vlsseg3e8.v.yaml mode change 100644 => 100755 arch/inst/V/vlsseg4e16.v.yaml mode change 100644 => 100755 arch/inst/V/vlsseg4e32.v.yaml mode change 100644 => 100755 arch/inst/V/vlsseg4e64.v.yaml mode change 100644 => 100755 arch/inst/V/vlsseg4e8.v.yaml mode change 100644 => 100755 arch/inst/V/vlsseg5e16.v.yaml mode change 100644 => 100755 arch/inst/V/vlsseg5e32.v.yaml mode change 100644 => 100755 arch/inst/V/vlsseg5e64.v.yaml mode change 100644 => 100755 arch/inst/V/vlsseg5e8.v.yaml mode change 100644 => 100755 arch/inst/V/vlsseg6e16.v.yaml mode change 100644 => 100755 arch/inst/V/vlsseg6e32.v.yaml mode change 100644 => 100755 arch/inst/V/vlsseg6e64.v.yaml mode change 100644 => 100755 arch/inst/V/vlsseg6e8.v.yaml mode change 100644 => 100755 arch/inst/V/vlsseg7e16.v.yaml mode change 100644 => 100755 arch/inst/V/vlsseg7e32.v.yaml mode change 100644 => 100755 arch/inst/V/vlsseg7e64.v.yaml mode change 100644 => 100755 arch/inst/V/vlsseg7e8.v.yaml mode change 100644 => 100755 arch/inst/V/vlsseg8e16.v.yaml mode change 100644 => 100755 arch/inst/V/vlsseg8e32.v.yaml mode change 100644 => 100755 arch/inst/V/vlsseg8e64.v.yaml mode change 100644 => 100755 arch/inst/V/vlsseg8e8.v.yaml mode change 100644 => 100755 arch/inst/V/vluxei16.v.yaml mode change 100644 => 100755 arch/inst/V/vluxei32.v.yaml mode change 100644 => 100755 arch/inst/V/vluxei64.v.yaml mode change 100644 => 100755 arch/inst/V/vluxei8.v.yaml mode change 100644 => 100755 arch/inst/V/vluxseg2ei16.v.yaml mode change 100644 => 100755 arch/inst/V/vluxseg2ei32.v.yaml mode change 100644 => 100755 arch/inst/V/vluxseg2ei64.v.yaml mode change 100644 => 100755 arch/inst/V/vluxseg2ei8.v.yaml mode change 100644 => 100755 arch/inst/V/vluxseg3ei16.v.yaml mode change 100644 => 100755 arch/inst/V/vluxseg3ei32.v.yaml mode change 100644 => 100755 arch/inst/V/vluxseg3ei64.v.yaml mode change 100644 => 100755 arch/inst/V/vluxseg3ei8.v.yaml mode change 100644 => 100755 arch/inst/V/vluxseg4ei16.v.yaml mode change 100644 => 100755 arch/inst/V/vluxseg4ei32.v.yaml mode change 100644 => 100755 arch/inst/V/vluxseg4ei64.v.yaml mode change 100644 => 100755 arch/inst/V/vluxseg4ei8.v.yaml mode change 100644 => 100755 arch/inst/V/vluxseg5ei16.v.yaml mode change 100644 => 100755 arch/inst/V/vluxseg5ei32.v.yaml mode change 100644 => 100755 arch/inst/V/vluxseg5ei64.v.yaml mode change 100644 => 100755 arch/inst/V/vluxseg5ei8.v.yaml mode change 100644 => 100755 arch/inst/V/vluxseg6ei16.v.yaml mode change 100644 => 100755 arch/inst/V/vluxseg6ei32.v.yaml mode change 100644 => 100755 arch/inst/V/vluxseg6ei64.v.yaml mode change 100644 => 100755 arch/inst/V/vluxseg6ei8.v.yaml mode change 100644 => 100755 arch/inst/V/vluxseg7ei16.v.yaml mode change 100644 => 100755 arch/inst/V/vluxseg7ei32.v.yaml mode change 100644 => 100755 arch/inst/V/vluxseg7ei64.v.yaml mode change 100644 => 100755 arch/inst/V/vluxseg7ei8.v.yaml mode change 100644 => 100755 arch/inst/V/vluxseg8ei16.v.yaml mode change 100644 => 100755 arch/inst/V/vluxseg8ei32.v.yaml mode change 100644 => 100755 arch/inst/V/vluxseg8ei64.v.yaml mode change 100644 => 100755 arch/inst/V/vluxseg8ei8.v.yaml mode change 100644 => 100755 arch/inst/V/vmacc.vv.yaml mode change 100644 => 100755 arch/inst/V/vmacc.vx.yaml mode change 100644 => 100755 arch/inst/V/vmadc.vi.yaml mode change 100644 => 100755 arch/inst/V/vmadc.vim.yaml mode change 100644 => 100755 arch/inst/V/vmadc.vv.yaml mode change 100644 => 100755 arch/inst/V/vmadc.vvm.yaml mode change 100644 => 100755 arch/inst/V/vmadc.vx.yaml mode change 100644 => 100755 arch/inst/V/vmadc.vxm.yaml mode change 100644 => 100755 arch/inst/V/vmadd.vv.yaml mode change 100644 => 100755 arch/inst/V/vmadd.vx.yaml mode change 100644 => 100755 arch/inst/V/vmand.mm.yaml mode change 100644 => 100755 arch/inst/V/vmandn.mm.yaml mode change 100644 => 100755 arch/inst/V/vmax.vv.yaml mode change 100644 => 100755 arch/inst/V/vmax.vx.yaml mode change 100644 => 100755 arch/inst/V/vmaxu.vv.yaml mode change 100644 => 100755 arch/inst/V/vmaxu.vx.yaml mode change 100644 => 100755 arch/inst/V/vmerge.vim.yaml mode change 100644 => 100755 arch/inst/V/vmerge.vvm.yaml mode change 100644 => 100755 arch/inst/V/vmerge.vxm.yaml mode change 100644 => 100755 arch/inst/V/vmfeq.vf.yaml mode change 100644 => 100755 arch/inst/V/vmfeq.vv.yaml mode change 100644 => 100755 arch/inst/V/vmfge.vf.yaml mode change 100644 => 100755 arch/inst/V/vmfgt.vf.yaml mode change 100644 => 100755 arch/inst/V/vmfle.vf.yaml mode change 100644 => 100755 arch/inst/V/vmfle.vv.yaml mode change 100644 => 100755 arch/inst/V/vmflt.vf.yaml mode change 100644 => 100755 arch/inst/V/vmflt.vv.yaml mode change 100644 => 100755 arch/inst/V/vmfne.vf.yaml mode change 100644 => 100755 arch/inst/V/vmfne.vv.yaml mode change 100644 => 100755 arch/inst/V/vmin.vv.yaml mode change 100644 => 100755 arch/inst/V/vmin.vx.yaml mode change 100644 => 100755 arch/inst/V/vminu.vv.yaml mode change 100644 => 100755 arch/inst/V/vminu.vx.yaml mode change 100644 => 100755 arch/inst/V/vmnand.mm.yaml mode change 100644 => 100755 arch/inst/V/vmnor.mm.yaml mode change 100644 => 100755 arch/inst/V/vmor.mm.yaml mode change 100644 => 100755 arch/inst/V/vmorn.mm.yaml mode change 100644 => 100755 arch/inst/V/vmsbc.vv.yaml mode change 100644 => 100755 arch/inst/V/vmsbc.vvm.yaml mode change 100644 => 100755 arch/inst/V/vmsbc.vx.yaml mode change 100644 => 100755 arch/inst/V/vmsbc.vxm.yaml mode change 100644 => 100755 arch/inst/V/vmsbf.m.yaml mode change 100644 => 100755 arch/inst/V/vmseq.vi.yaml mode change 100644 => 100755 arch/inst/V/vmseq.vv.yaml mode change 100644 => 100755 arch/inst/V/vmseq.vx.yaml mode change 100644 => 100755 arch/inst/V/vmsgt.vi.yaml mode change 100644 => 100755 arch/inst/V/vmsgt.vx.yaml mode change 100644 => 100755 arch/inst/V/vmsgtu.vi.yaml mode change 100644 => 100755 arch/inst/V/vmsgtu.vx.yaml mode change 100644 => 100755 arch/inst/V/vmsif.m.yaml mode change 100644 => 100755 arch/inst/V/vmsle.vi.yaml mode change 100644 => 100755 arch/inst/V/vmsle.vv.yaml mode change 100644 => 100755 arch/inst/V/vmsle.vx.yaml mode change 100644 => 100755 arch/inst/V/vmsleu.vi.yaml mode change 100644 => 100755 arch/inst/V/vmsleu.vv.yaml mode change 100644 => 100755 arch/inst/V/vmsleu.vx.yaml mode change 100644 => 100755 arch/inst/V/vmslt.vv.yaml mode change 100644 => 100755 arch/inst/V/vmslt.vx.yaml mode change 100644 => 100755 arch/inst/V/vmsltu.vv.yaml mode change 100644 => 100755 arch/inst/V/vmsltu.vx.yaml mode change 100644 => 100755 arch/inst/V/vmsne.vi.yaml mode change 100644 => 100755 arch/inst/V/vmsne.vv.yaml mode change 100644 => 100755 arch/inst/V/vmsne.vx.yaml mode change 100644 => 100755 arch/inst/V/vmsof.m.yaml mode change 100644 => 100755 arch/inst/V/vmul.vv.yaml mode change 100644 => 100755 arch/inst/V/vmul.vx.yaml mode change 100644 => 100755 arch/inst/V/vmulh.vv.yaml mode change 100644 => 100755 arch/inst/V/vmulh.vx.yaml mode change 100644 => 100755 arch/inst/V/vmulhsu.vv.yaml mode change 100644 => 100755 arch/inst/V/vmulhsu.vx.yaml mode change 100644 => 100755 arch/inst/V/vmulhu.vv.yaml mode change 100644 => 100755 arch/inst/V/vmulhu.vx.yaml mode change 100644 => 100755 arch/inst/V/vmv.s.x.yaml mode change 100644 => 100755 arch/inst/V/vmv.v.i.yaml mode change 100644 => 100755 arch/inst/V/vmv.v.v.yaml mode change 100644 => 100755 arch/inst/V/vmv.v.x.yaml mode change 100644 => 100755 arch/inst/V/vmv.x.s.yaml mode change 100644 => 100755 arch/inst/V/vmv1r.v.yaml mode change 100644 => 100755 arch/inst/V/vmv2r.v.yaml mode change 100644 => 100755 arch/inst/V/vmv4r.v.yaml mode change 100644 => 100755 arch/inst/V/vmv8r.v.yaml mode change 100644 => 100755 arch/inst/V/vmxnor.mm.yaml mode change 100644 => 100755 arch/inst/V/vmxor.mm.yaml mode change 100644 => 100755 arch/inst/V/vnclip.wi.yaml mode change 100644 => 100755 arch/inst/V/vnclip.wv.yaml mode change 100644 => 100755 arch/inst/V/vnclip.wx.yaml mode change 100644 => 100755 arch/inst/V/vnclipu.wi.yaml mode change 100644 => 100755 arch/inst/V/vnclipu.wv.yaml mode change 100644 => 100755 arch/inst/V/vnclipu.wx.yaml mode change 100644 => 100755 arch/inst/V/vnmsac.vv.yaml mode change 100644 => 100755 arch/inst/V/vnmsac.vx.yaml mode change 100644 => 100755 arch/inst/V/vnmsub.vv.yaml mode change 100644 => 100755 arch/inst/V/vnmsub.vx.yaml mode change 100644 => 100755 arch/inst/V/vnsra.wi.yaml mode change 100644 => 100755 arch/inst/V/vnsra.wv.yaml mode change 100644 => 100755 arch/inst/V/vnsra.wx.yaml mode change 100644 => 100755 arch/inst/V/vnsrl.wi.yaml mode change 100644 => 100755 arch/inst/V/vnsrl.wv.yaml mode change 100644 => 100755 arch/inst/V/vnsrl.wx.yaml mode change 100644 => 100755 arch/inst/V/vor.vi.yaml mode change 100644 => 100755 arch/inst/V/vor.vv.yaml mode change 100644 => 100755 arch/inst/V/vor.vx.yaml mode change 100644 => 100755 arch/inst/V/vredand.vs.yaml mode change 100644 => 100755 arch/inst/V/vredmax.vs.yaml mode change 100644 => 100755 arch/inst/V/vredmaxu.vs.yaml mode change 100644 => 100755 arch/inst/V/vredmin.vs.yaml mode change 100644 => 100755 arch/inst/V/vredminu.vs.yaml mode change 100644 => 100755 arch/inst/V/vredor.vs.yaml mode change 100644 => 100755 arch/inst/V/vredsum.vs.yaml mode change 100644 => 100755 arch/inst/V/vredxor.vs.yaml mode change 100644 => 100755 arch/inst/V/vrem.vv.yaml mode change 100644 => 100755 arch/inst/V/vrem.vx.yaml mode change 100644 => 100755 arch/inst/V/vremu.vv.yaml mode change 100644 => 100755 arch/inst/V/vremu.vx.yaml mode change 100644 => 100755 arch/inst/V/vrgather.vi.yaml mode change 100644 => 100755 arch/inst/V/vrgather.vv.yaml mode change 100644 => 100755 arch/inst/V/vrgather.vx.yaml mode change 100644 => 100755 arch/inst/V/vrgatherei16.vv.yaml mode change 100644 => 100755 arch/inst/V/vrsub.vi.yaml mode change 100644 => 100755 arch/inst/V/vrsub.vx.yaml mode change 100644 => 100755 arch/inst/V/vs1r.v.yaml mode change 100644 => 100755 arch/inst/V/vs2r.v.yaml mode change 100644 => 100755 arch/inst/V/vs4r.v.yaml mode change 100644 => 100755 arch/inst/V/vs8r.v.yaml mode change 100644 => 100755 arch/inst/V/vsadd.vi.yaml mode change 100644 => 100755 arch/inst/V/vsadd.vv.yaml mode change 100644 => 100755 arch/inst/V/vsadd.vx.yaml mode change 100644 => 100755 arch/inst/V/vsaddu.vi.yaml mode change 100644 => 100755 arch/inst/V/vsaddu.vv.yaml mode change 100644 => 100755 arch/inst/V/vsaddu.vx.yaml mode change 100644 => 100755 arch/inst/V/vsbc.vvm.yaml mode change 100644 => 100755 arch/inst/V/vsbc.vxm.yaml mode change 100644 => 100755 arch/inst/V/vse16.v.yaml mode change 100644 => 100755 arch/inst/V/vse32.v.yaml mode change 100644 => 100755 arch/inst/V/vse64.v.yaml mode change 100644 => 100755 arch/inst/V/vse8.v.yaml mode change 100644 => 100755 arch/inst/V/vsetivli.yaml mode change 100644 => 100755 arch/inst/V/vsetvl.yaml mode change 100644 => 100755 arch/inst/V/vsetvli.yaml mode change 100644 => 100755 arch/inst/V/vsext.vf2.yaml mode change 100644 => 100755 arch/inst/V/vsext.vf4.yaml mode change 100644 => 100755 arch/inst/V/vsext.vf8.yaml mode change 100644 => 100755 arch/inst/V/vslide1down.vx.yaml mode change 100644 => 100755 arch/inst/V/vslide1up.vx.yaml mode change 100644 => 100755 arch/inst/V/vslidedown.vi.yaml mode change 100644 => 100755 arch/inst/V/vslidedown.vx.yaml mode change 100644 => 100755 arch/inst/V/vslideup.vi.yaml mode change 100644 => 100755 arch/inst/V/vslideup.vx.yaml mode change 100644 => 100755 arch/inst/V/vsll.vi.yaml mode change 100644 => 100755 arch/inst/V/vsll.vv.yaml mode change 100644 => 100755 arch/inst/V/vsll.vx.yaml mode change 100644 => 100755 arch/inst/V/vsm.v.yaml mode change 100644 => 100755 arch/inst/V/vsmul.vv.yaml mode change 100644 => 100755 arch/inst/V/vsmul.vx.yaml mode change 100644 => 100755 arch/inst/V/vsoxei16.v.yaml mode change 100644 => 100755 arch/inst/V/vsoxei32.v.yaml mode change 100644 => 100755 arch/inst/V/vsoxei64.v.yaml mode change 100644 => 100755 arch/inst/V/vsoxei8.v.yaml mode change 100644 => 100755 arch/inst/V/vsoxseg2ei16.v.yaml mode change 100644 => 100755 arch/inst/V/vsoxseg2ei32.v.yaml mode change 100644 => 100755 arch/inst/V/vsoxseg2ei64.v.yaml mode change 100644 => 100755 arch/inst/V/vsoxseg2ei8.v.yaml mode change 100644 => 100755 arch/inst/V/vsoxseg3ei16.v.yaml mode change 100644 => 100755 arch/inst/V/vsoxseg3ei32.v.yaml mode change 100644 => 100755 arch/inst/V/vsoxseg3ei64.v.yaml mode change 100644 => 100755 arch/inst/V/vsoxseg3ei8.v.yaml mode change 100644 => 100755 arch/inst/V/vsoxseg4ei16.v.yaml mode change 100644 => 100755 arch/inst/V/vsoxseg4ei32.v.yaml mode change 100644 => 100755 arch/inst/V/vsoxseg4ei64.v.yaml mode change 100644 => 100755 arch/inst/V/vsoxseg4ei8.v.yaml mode change 100644 => 100755 arch/inst/V/vsoxseg5ei16.v.yaml mode change 100644 => 100755 arch/inst/V/vsoxseg5ei32.v.yaml mode change 100644 => 100755 arch/inst/V/vsoxseg5ei64.v.yaml mode change 100644 => 100755 arch/inst/V/vsoxseg5ei8.v.yaml mode change 100644 => 100755 arch/inst/V/vsoxseg6ei16.v.yaml mode change 100644 => 100755 arch/inst/V/vsoxseg6ei32.v.yaml mode change 100644 => 100755 arch/inst/V/vsoxseg6ei64.v.yaml mode change 100644 => 100755 arch/inst/V/vsoxseg6ei8.v.yaml mode change 100644 => 100755 arch/inst/V/vsoxseg7ei16.v.yaml mode change 100644 => 100755 arch/inst/V/vsoxseg7ei32.v.yaml mode change 100644 => 100755 arch/inst/V/vsoxseg7ei64.v.yaml mode change 100644 => 100755 arch/inst/V/vsoxseg7ei8.v.yaml mode change 100644 => 100755 arch/inst/V/vsoxseg8ei16.v.yaml mode change 100644 => 100755 arch/inst/V/vsoxseg8ei32.v.yaml mode change 100644 => 100755 arch/inst/V/vsoxseg8ei64.v.yaml mode change 100644 => 100755 arch/inst/V/vsoxseg8ei8.v.yaml mode change 100644 => 100755 arch/inst/V/vsra.vi.yaml mode change 100644 => 100755 arch/inst/V/vsra.vv.yaml mode change 100644 => 100755 arch/inst/V/vsra.vx.yaml mode change 100644 => 100755 arch/inst/V/vsrl.vi.yaml mode change 100644 => 100755 arch/inst/V/vsrl.vv.yaml mode change 100644 => 100755 arch/inst/V/vsrl.vx.yaml mode change 100644 => 100755 arch/inst/V/vsse16.v.yaml mode change 100644 => 100755 arch/inst/V/vsse32.v.yaml mode change 100644 => 100755 arch/inst/V/vsse64.v.yaml mode change 100644 => 100755 arch/inst/V/vsse8.v.yaml mode change 100644 => 100755 arch/inst/V/vsseg2e16.v.yaml mode change 100644 => 100755 arch/inst/V/vsseg2e32.v.yaml mode change 100644 => 100755 arch/inst/V/vsseg2e64.v.yaml mode change 100644 => 100755 arch/inst/V/vsseg2e8.v.yaml mode change 100644 => 100755 arch/inst/V/vsseg3e16.v.yaml mode change 100644 => 100755 arch/inst/V/vsseg3e32.v.yaml mode change 100644 => 100755 arch/inst/V/vsseg3e64.v.yaml mode change 100644 => 100755 arch/inst/V/vsseg3e8.v.yaml mode change 100644 => 100755 arch/inst/V/vsseg4e16.v.yaml mode change 100644 => 100755 arch/inst/V/vsseg4e32.v.yaml mode change 100644 => 100755 arch/inst/V/vsseg4e64.v.yaml mode change 100644 => 100755 arch/inst/V/vsseg4e8.v.yaml mode change 100644 => 100755 arch/inst/V/vsseg5e16.v.yaml mode change 100644 => 100755 arch/inst/V/vsseg5e32.v.yaml mode change 100644 => 100755 arch/inst/V/vsseg5e64.v.yaml mode change 100644 => 100755 arch/inst/V/vsseg5e8.v.yaml mode change 100644 => 100755 arch/inst/V/vsseg6e16.v.yaml mode change 100644 => 100755 arch/inst/V/vsseg6e32.v.yaml mode change 100644 => 100755 arch/inst/V/vsseg6e64.v.yaml mode change 100644 => 100755 arch/inst/V/vsseg6e8.v.yaml mode change 100644 => 100755 arch/inst/V/vsseg7e16.v.yaml mode change 100644 => 100755 arch/inst/V/vsseg7e32.v.yaml mode change 100644 => 100755 arch/inst/V/vsseg7e64.v.yaml mode change 100644 => 100755 arch/inst/V/vsseg7e8.v.yaml mode change 100644 => 100755 arch/inst/V/vsseg8e16.v.yaml mode change 100644 => 100755 arch/inst/V/vsseg8e32.v.yaml mode change 100644 => 100755 arch/inst/V/vsseg8e64.v.yaml mode change 100644 => 100755 arch/inst/V/vsseg8e8.v.yaml mode change 100644 => 100755 arch/inst/V/vssra.vi.yaml mode change 100644 => 100755 arch/inst/V/vssra.vv.yaml mode change 100644 => 100755 arch/inst/V/vssra.vx.yaml mode change 100644 => 100755 arch/inst/V/vssrl.vi.yaml mode change 100644 => 100755 arch/inst/V/vssrl.vv.yaml mode change 100644 => 100755 arch/inst/V/vssrl.vx.yaml mode change 100644 => 100755 arch/inst/V/vssseg2e16.v.yaml mode change 100644 => 100755 arch/inst/V/vssseg2e32.v.yaml mode change 100644 => 100755 arch/inst/V/vssseg2e64.v.yaml mode change 100644 => 100755 arch/inst/V/vssseg2e8.v.yaml mode change 100644 => 100755 arch/inst/V/vssseg3e16.v.yaml mode change 100644 => 100755 arch/inst/V/vssseg3e32.v.yaml mode change 100644 => 100755 arch/inst/V/vssseg3e64.v.yaml mode change 100644 => 100755 arch/inst/V/vssseg3e8.v.yaml mode change 100644 => 100755 arch/inst/V/vssseg4e16.v.yaml mode change 100644 => 100755 arch/inst/V/vssseg4e32.v.yaml mode change 100644 => 100755 arch/inst/V/vssseg4e64.v.yaml mode change 100644 => 100755 arch/inst/V/vssseg4e8.v.yaml mode change 100644 => 100755 arch/inst/V/vssseg5e16.v.yaml mode change 100644 => 100755 arch/inst/V/vssseg5e32.v.yaml mode change 100644 => 100755 arch/inst/V/vssseg5e64.v.yaml mode change 100644 => 100755 arch/inst/V/vssseg5e8.v.yaml mode change 100644 => 100755 arch/inst/V/vssseg6e16.v.yaml mode change 100644 => 100755 arch/inst/V/vssseg6e32.v.yaml mode change 100644 => 100755 arch/inst/V/vssseg6e64.v.yaml mode change 100644 => 100755 arch/inst/V/vssseg6e8.v.yaml mode change 100644 => 100755 arch/inst/V/vssseg7e16.v.yaml mode change 100644 => 100755 arch/inst/V/vssseg7e32.v.yaml mode change 100644 => 100755 arch/inst/V/vssseg7e64.v.yaml mode change 100644 => 100755 arch/inst/V/vssseg7e8.v.yaml mode change 100644 => 100755 arch/inst/V/vssseg8e16.v.yaml mode change 100644 => 100755 arch/inst/V/vssseg8e32.v.yaml mode change 100644 => 100755 arch/inst/V/vssseg8e64.v.yaml mode change 100644 => 100755 arch/inst/V/vssseg8e8.v.yaml mode change 100644 => 100755 arch/inst/V/vssub.vv.yaml mode change 100644 => 100755 arch/inst/V/vssub.vx.yaml mode change 100644 => 100755 arch/inst/V/vssubu.vv.yaml mode change 100644 => 100755 arch/inst/V/vssubu.vx.yaml mode change 100644 => 100755 arch/inst/V/vsub.vv.yaml mode change 100644 => 100755 arch/inst/V/vsub.vx.yaml mode change 100644 => 100755 arch/inst/V/vsuxei16.v.yaml mode change 100644 => 100755 arch/inst/V/vsuxei32.v.yaml mode change 100644 => 100755 arch/inst/V/vsuxei64.v.yaml mode change 100644 => 100755 arch/inst/V/vsuxei8.v.yaml mode change 100644 => 100755 arch/inst/V/vsuxseg2ei16.v.yaml mode change 100644 => 100755 arch/inst/V/vsuxseg2ei32.v.yaml mode change 100644 => 100755 arch/inst/V/vsuxseg2ei64.v.yaml mode change 100644 => 100755 arch/inst/V/vsuxseg2ei8.v.yaml mode change 100644 => 100755 arch/inst/V/vsuxseg3ei16.v.yaml mode change 100644 => 100755 arch/inst/V/vsuxseg3ei32.v.yaml mode change 100644 => 100755 arch/inst/V/vsuxseg3ei64.v.yaml mode change 100644 => 100755 arch/inst/V/vsuxseg3ei8.v.yaml mode change 100644 => 100755 arch/inst/V/vsuxseg4ei16.v.yaml mode change 100644 => 100755 arch/inst/V/vsuxseg4ei32.v.yaml mode change 100644 => 100755 arch/inst/V/vsuxseg4ei64.v.yaml mode change 100644 => 100755 arch/inst/V/vsuxseg4ei8.v.yaml mode change 100644 => 100755 arch/inst/V/vsuxseg5ei16.v.yaml mode change 100644 => 100755 arch/inst/V/vsuxseg5ei32.v.yaml mode change 100644 => 100755 arch/inst/V/vsuxseg5ei64.v.yaml mode change 100644 => 100755 arch/inst/V/vsuxseg5ei8.v.yaml mode change 100644 => 100755 arch/inst/V/vsuxseg6ei16.v.yaml mode change 100644 => 100755 arch/inst/V/vsuxseg6ei32.v.yaml mode change 100644 => 100755 arch/inst/V/vsuxseg6ei64.v.yaml mode change 100644 => 100755 arch/inst/V/vsuxseg6ei8.v.yaml mode change 100644 => 100755 arch/inst/V/vsuxseg7ei16.v.yaml mode change 100644 => 100755 arch/inst/V/vsuxseg7ei32.v.yaml mode change 100644 => 100755 arch/inst/V/vsuxseg7ei64.v.yaml mode change 100644 => 100755 arch/inst/V/vsuxseg7ei8.v.yaml mode change 100644 => 100755 arch/inst/V/vsuxseg8ei16.v.yaml mode change 100644 => 100755 arch/inst/V/vsuxseg8ei32.v.yaml mode change 100644 => 100755 arch/inst/V/vsuxseg8ei64.v.yaml mode change 100644 => 100755 arch/inst/V/vsuxseg8ei8.v.yaml mode change 100644 => 100755 arch/inst/V/vwadd.vv.yaml mode change 100644 => 100755 arch/inst/V/vwadd.vx.yaml mode change 100644 => 100755 arch/inst/V/vwadd.wv.yaml mode change 100644 => 100755 arch/inst/V/vwadd.wx.yaml mode change 100644 => 100755 arch/inst/V/vwaddu.vv.yaml mode change 100644 => 100755 arch/inst/V/vwaddu.vx.yaml mode change 100644 => 100755 arch/inst/V/vwaddu.wv.yaml mode change 100644 => 100755 arch/inst/V/vwaddu.wx.yaml mode change 100644 => 100755 arch/inst/V/vwmacc.vv.yaml mode change 100644 => 100755 arch/inst/V/vwmacc.vx.yaml mode change 100644 => 100755 arch/inst/V/vwmaccsu.vv.yaml mode change 100644 => 100755 arch/inst/V/vwmaccsu.vx.yaml mode change 100644 => 100755 arch/inst/V/vwmaccu.vv.yaml mode change 100644 => 100755 arch/inst/V/vwmaccu.vx.yaml mode change 100644 => 100755 arch/inst/V/vwmaccus.vx.yaml mode change 100644 => 100755 arch/inst/V/vwmul.vv.yaml mode change 100644 => 100755 arch/inst/V/vwmul.vx.yaml mode change 100644 => 100755 arch/inst/V/vwmulsu.vv.yaml mode change 100644 => 100755 arch/inst/V/vwmulsu.vx.yaml mode change 100644 => 100755 arch/inst/V/vwmulu.vv.yaml mode change 100644 => 100755 arch/inst/V/vwmulu.vx.yaml mode change 100644 => 100755 arch/inst/V/vwredsum.vs.yaml mode change 100644 => 100755 arch/inst/V/vwredsumu.vs.yaml mode change 100644 => 100755 arch/inst/V/vwsub.vv.yaml mode change 100644 => 100755 arch/inst/V/vwsub.vx.yaml mode change 100644 => 100755 arch/inst/V/vwsub.wv.yaml mode change 100644 => 100755 arch/inst/V/vwsub.wx.yaml mode change 100644 => 100755 arch/inst/V/vwsubu.vv.yaml mode change 100644 => 100755 arch/inst/V/vwsubu.vx.yaml mode change 100644 => 100755 arch/inst/V/vwsubu.wv.yaml mode change 100644 => 100755 arch/inst/V/vwsubu.wx.yaml mode change 100644 => 100755 arch/inst/V/vxor.vi.yaml mode change 100644 => 100755 arch/inst/V/vxor.vv.yaml mode change 100644 => 100755 arch/inst/V/vxor.vx.yaml mode change 100644 => 100755 arch/inst/V/vzext.vf2.yaml mode change 100644 => 100755 arch/inst/V/vzext.vf4.yaml mode change 100644 => 100755 arch/inst/V/vzext.vf8.yaml mode change 100644 => 100755 arch/inst/Zabha/amoadd.b.yaml mode change 100644 => 100755 arch/inst/Zabha/amoadd.h.yaml mode change 100644 => 100755 arch/inst/Zabha/amoand.b.yaml mode change 100644 => 100755 arch/inst/Zabha/amoand.h.yaml mode change 100644 => 100755 arch/inst/Zabha/amocas.b.yaml mode change 100644 => 100755 arch/inst/Zabha/amocas.h.yaml mode change 100644 => 100755 arch/inst/Zabha/amomax.b.yaml mode change 100644 => 100755 arch/inst/Zabha/amomax.h.yaml mode change 100644 => 100755 arch/inst/Zabha/amomaxu.b.yaml mode change 100644 => 100755 arch/inst/Zabha/amomaxu.h.yaml mode change 100644 => 100755 arch/inst/Zabha/amomin.b.yaml mode change 100644 => 100755 arch/inst/Zabha/amomin.h.yaml mode change 100644 => 100755 arch/inst/Zabha/amominu.b.yaml mode change 100644 => 100755 arch/inst/Zabha/amominu.h.yaml mode change 100644 => 100755 arch/inst/Zabha/amoor.b.yaml mode change 100644 => 100755 arch/inst/Zabha/amoor.h.yaml mode change 100644 => 100755 arch/inst/Zabha/amoswap.b.yaml mode change 100644 => 100755 arch/inst/Zabha/amoswap.h.yaml mode change 100644 => 100755 arch/inst/Zabha/amoxor.b.yaml mode change 100644 => 100755 arch/inst/Zabha/amoxor.h.yaml mode change 100644 => 100755 arch/inst/Zacas/amocas.d.yaml mode change 100644 => 100755 arch/inst/Zacas/amocas.q.yaml mode change 100644 => 100755 arch/inst/Zacas/amocas.w.yaml mode change 100644 => 100755 arch/inst/Zalasr/lb.aq.yaml mode change 100644 => 100755 arch/inst/Zalasr/ld.aq.yaml mode change 100644 => 100755 arch/inst/Zalasr/lh.aq.yaml mode change 100644 => 100755 arch/inst/Zalasr/lw.aq.yaml mode change 100644 => 100755 arch/inst/Zalasr/sb.rl.yaml mode change 100644 => 100755 arch/inst/Zalasr/sd.rl.yaml mode change 100644 => 100755 arch/inst/Zalasr/sh.rl.yaml mode change 100644 => 100755 arch/inst/Zalasr/sw.rl.yaml mode change 100644 => 100755 arch/inst/Zawrs/wrs.nto.yaml mode change 100644 => 100755 arch/inst/Zawrs/wrs.sto.yaml mode change 100644 => 100755 arch/inst/Zbkb/brev8.yaml mode change 100644 => 100755 arch/inst/Zbkb/unzip.yaml mode change 100644 => 100755 arch/inst/Zbkb/zip.yaml mode change 100644 => 100755 arch/inst/Zbkx/xperm4.yaml mode change 100644 => 100755 arch/inst/Zbkx/xperm8.yaml mode change 100644 => 100755 arch/inst/Zcb/c.lbu.yaml mode change 100644 => 100755 arch/inst/Zcb/c.lh.yaml mode change 100644 => 100755 arch/inst/Zcb/c.lhu.yaml mode change 100644 => 100755 arch/inst/Zcb/c.mul.yaml mode change 100644 => 100755 arch/inst/Zcb/c.not.yaml mode change 100644 => 100755 arch/inst/Zcb/c.sb.yaml mode change 100644 => 100755 arch/inst/Zcb/c.sext.b.yaml mode change 100644 => 100755 arch/inst/Zcb/c.sext.h.yaml mode change 100644 => 100755 arch/inst/Zcb/c.sh.yaml mode change 100644 => 100755 arch/inst/Zcb/c.zext.b.yaml mode change 100644 => 100755 arch/inst/Zcb/c.zext.h.yaml mode change 100644 => 100755 arch/inst/Zcb/c.zext.w.yaml mode change 100644 => 100755 arch/inst/Zcmp/cm.mva01s.yaml mode change 100644 => 100755 arch/inst/Zcmp/cm.mvsa01.yaml mode change 100644 => 100755 arch/inst/Zcmp/cm.pop.yaml mode change 100644 => 100755 arch/inst/Zcmp/cm.popret.yaml mode change 100644 => 100755 arch/inst/Zcmp/cm.popretz.yaml mode change 100644 => 100755 arch/inst/Zcmp/cm.push.yaml mode change 100644 => 100755 arch/inst/Zfbfmin/fcvt.bf16.s.yaml mode change 100644 => 100755 arch/inst/Zfbfmin/fcvt.s.bf16.yaml mode change 100644 => 100755 arch/inst/Zfh/fadd.h.yaml mode change 100644 => 100755 arch/inst/Zfh/fclass.h.yaml mode change 100644 => 100755 arch/inst/Zfh/fcvt.d.h.yaml mode change 100644 => 100755 arch/inst/Zfh/fcvt.h.d.yaml mode change 100644 => 100755 arch/inst/Zfh/fcvt.h.l.yaml mode change 100644 => 100755 arch/inst/Zfh/fcvt.h.lu.yaml mode change 100644 => 100755 arch/inst/Zfh/fcvt.h.s.yaml mode change 100644 => 100755 arch/inst/Zfh/fcvt.h.w.yaml mode change 100644 => 100755 arch/inst/Zfh/fcvt.h.wu.yaml mode change 100644 => 100755 arch/inst/Zfh/fcvt.l.h.yaml mode change 100644 => 100755 arch/inst/Zfh/fcvt.lu.h.yaml mode change 100644 => 100755 arch/inst/Zfh/fcvt.s.h.yaml mode change 100644 => 100755 arch/inst/Zfh/fcvt.w.h.yaml mode change 100644 => 100755 arch/inst/Zfh/fcvt.wu.h.yaml mode change 100644 => 100755 arch/inst/Zfh/fdiv.h.yaml mode change 100644 => 100755 arch/inst/Zfh/feq.h.yaml mode change 100644 => 100755 arch/inst/Zfh/fle.h.yaml mode change 100644 => 100755 arch/inst/Zfh/fleq.h.yaml mode change 100644 => 100755 arch/inst/Zfh/flh.yaml mode change 100644 => 100755 arch/inst/Zfh/fli.h.yaml mode change 100644 => 100755 arch/inst/Zfh/flt.h.yaml mode change 100644 => 100755 arch/inst/Zfh/fltq.h.yaml mode change 100644 => 100755 arch/inst/Zfh/fmadd.h.yaml mode change 100644 => 100755 arch/inst/Zfh/fmax.h.yaml mode change 100644 => 100755 arch/inst/Zfh/fmaxm.h.yaml mode change 100644 => 100755 arch/inst/Zfh/fmin.h.yaml mode change 100644 => 100755 arch/inst/Zfh/fminm.h.yaml mode change 100644 => 100755 arch/inst/Zfh/fmsub.h.yaml mode change 100644 => 100755 arch/inst/Zfh/fmul.h.yaml mode change 100644 => 100755 arch/inst/Zfh/fmv.h.x.yaml mode change 100644 => 100755 arch/inst/Zfh/fmv.x.h.yaml mode change 100644 => 100755 arch/inst/Zfh/fnmadd.h.yaml mode change 100644 => 100755 arch/inst/Zfh/fnmsub.h.yaml mode change 100644 => 100755 arch/inst/Zfh/fround.h.yaml mode change 100644 => 100755 arch/inst/Zfh/froundnx.h.yaml mode change 100644 => 100755 arch/inst/Zfh/fsgnj.h.yaml mode change 100644 => 100755 arch/inst/Zfh/fsgnjn.h.yaml mode change 100644 => 100755 arch/inst/Zfh/fsgnjx.h.yaml mode change 100644 => 100755 arch/inst/Zfh/fsh.yaml mode change 100644 => 100755 arch/inst/Zfh/fsqrt.h.yaml mode change 100644 => 100755 arch/inst/Zfh/fsub.h.yaml mode change 100644 => 100755 arch/inst/Zicbom/cbo.clean.yaml mode change 100644 => 100755 arch/inst/Zicbom/cbo.flush.yaml mode change 100644 => 100755 arch/inst/Zicbom/cbo.inval.yaml mode change 100644 => 100755 arch/inst/Zicboz/cbo.zero.yaml mode change 100644 => 100755 arch/inst/Zicfilp/lpad.yaml mode change 100644 => 100755 arch/inst/Zicfiss/ssamoswap.d.yaml mode change 100644 => 100755 arch/inst/Zicfiss/ssamoswap.w.yaml mode change 100644 => 100755 arch/inst/Zicfiss/sspopchk.x1.yaml mode change 100644 => 100755 arch/inst/Zicfiss/sspopchk.x5.yaml mode change 100644 => 100755 arch/inst/Zicfiss/sspush.x1.yaml mode change 100644 => 100755 arch/inst/Zicfiss/sspush.x5.yaml mode change 100644 => 100755 arch/inst/Zicfiss/ssrdp.yaml mode change 100644 => 100755 arch/inst/Zicond/czero.eqz.yaml mode change 100644 => 100755 arch/inst/Zicond/czero.nez.yaml mode change 100644 => 100755 arch/inst/Zicsr/csrrc.yaml mode change 100644 => 100755 arch/inst/Zicsr/csrrci.yaml mode change 100644 => 100755 arch/inst/Zicsr/csrrs.yaml mode change 100644 => 100755 arch/inst/Zicsr/csrrsi.yaml mode change 100644 => 100755 arch/inst/Zicsr/csrrw.yaml mode change 100644 => 100755 arch/inst/Zicsr/csrrwi.yaml mode change 100644 => 100755 arch/inst/Zifencei/fence.i.yaml mode change 100644 => 100755 arch/inst/Zimop/mop.r.n.yaml mode change 100644 => 100755 arch/inst/Zimop/mop.rr.n.yaml mode change 100644 => 100755 arch/inst/Zk/aes32dsi.yaml mode change 100644 => 100755 arch/inst/Zk/aes32dsmi.yaml mode change 100644 => 100755 arch/inst/Zk/aes32esi.yaml mode change 100644 => 100755 arch/inst/Zk/aes32esmi.yaml mode change 100644 => 100755 arch/inst/Zk/aes64ds.yaml mode change 100644 => 100755 arch/inst/Zk/aes64dsm.yaml mode change 100644 => 100755 arch/inst/Zk/aes64es.yaml mode change 100644 => 100755 arch/inst/Zk/aes64esm.yaml mode change 100644 => 100755 arch/inst/Zk/aes64im.yaml mode change 100644 => 100755 arch/inst/Zk/aes64ks1i.yaml mode change 100644 => 100755 arch/inst/Zk/aes64ks2.yaml mode change 100644 => 100755 arch/inst/Zk/pack.yaml mode change 100644 => 100755 arch/inst/Zk/packh.yaml mode change 100644 => 100755 arch/inst/Zk/packw.yaml mode change 100644 => 100755 arch/inst/Zk/sha256sig0.yaml mode change 100644 => 100755 arch/inst/Zk/sha256sig1.yaml mode change 100644 => 100755 arch/inst/Zk/sha256sum0.yaml mode change 100644 => 100755 arch/inst/Zk/sha256sum1.yaml mode change 100644 => 100755 arch/inst/Zk/sha512sig0.yaml mode change 100644 => 100755 arch/inst/Zk/sha512sig0h.yaml mode change 100644 => 100755 arch/inst/Zk/sha512sig0l.yaml mode change 100644 => 100755 arch/inst/Zk/sha512sig1.yaml mode change 100644 => 100755 arch/inst/Zk/sha512sig1h.yaml mode change 100644 => 100755 arch/inst/Zk/sha512sig1l.yaml mode change 100644 => 100755 arch/inst/Zk/sha512sum0.yaml mode change 100644 => 100755 arch/inst/Zk/sha512sum0r.yaml mode change 100644 => 100755 arch/inst/Zk/sha512sum1.yaml mode change 100644 => 100755 arch/inst/Zk/sha512sum1r.yaml mode change 100644 => 100755 arch/inst/Zks/sm3p0.yaml mode change 100644 => 100755 arch/inst/Zks/sm3p1.yaml mode change 100644 => 100755 arch/inst/Zks/sm4ed.yaml mode change 100644 => 100755 arch/inst/Zks/sm4ks.yaml mode change 100644 => 100755 arch/inst/Zvbb/vandn.vv.yaml mode change 100644 => 100755 arch/inst/Zvbb/vandn.vx.yaml mode change 100644 => 100755 arch/inst/Zvbb/vbrev.v.yaml mode change 100644 => 100755 arch/inst/Zvbb/vbrev8.v.yaml mode change 100644 => 100755 arch/inst/Zvbb/vclz.v.yaml mode change 100644 => 100755 arch/inst/Zvbb/vcpop.v.yaml mode change 100644 => 100755 arch/inst/Zvbb/vctz.v.yaml mode change 100644 => 100755 arch/inst/Zvbb/vrev8.v.yaml mode change 100644 => 100755 arch/inst/Zvbb/vrol.vv.yaml mode change 100644 => 100755 arch/inst/Zvbb/vrol.vx.yaml mode change 100644 => 100755 arch/inst/Zvbb/vror.vi.yaml mode change 100644 => 100755 arch/inst/Zvbb/vror.vv.yaml mode change 100644 => 100755 arch/inst/Zvbb/vror.vx.yaml mode change 100644 => 100755 arch/inst/Zvbb/vwsll.vi.yaml mode change 100644 => 100755 arch/inst/Zvbb/vwsll.vv.yaml mode change 100644 => 100755 arch/inst/Zvbb/vwsll.vx.yaml mode change 100644 => 100755 arch/inst/Zvbc/vclmul.vv.yaml mode change 100644 => 100755 arch/inst/Zvbc/vclmul.vx.yaml mode change 100644 => 100755 arch/inst/Zvbc/vclmulh.vv.yaml mode change 100644 => 100755 arch/inst/Zvbc/vclmulh.vx.yaml mode change 100644 => 100755 arch/inst/Zvfbfmin/vfncvtbf16.f.f.w.yaml mode change 100644 => 100755 arch/inst/Zvfbfmin/vfwcvtbf16.f.f.v.yaml mode change 100644 => 100755 arch/inst/Zvfbfwma/vfwmaccbf16.vf.yaml mode change 100644 => 100755 arch/inst/Zvfbfwma/vfwmaccbf16.vv.yaml mode change 100644 => 100755 arch/inst/Zvkg/vghsh.vv.yaml mode change 100644 => 100755 arch/inst/Zvkg/vgmul.vv.yaml mode change 100644 => 100755 arch/inst/Zvkn/vaesdf.vs.yaml mode change 100644 => 100755 arch/inst/Zvkn/vaesdf.vv.yaml mode change 100644 => 100755 arch/inst/Zvkn/vaesdm.vs.yaml mode change 100644 => 100755 arch/inst/Zvkn/vaesdm.vv.yaml mode change 100644 => 100755 arch/inst/Zvkn/vaesef.vs.yaml mode change 100644 => 100755 arch/inst/Zvkn/vaesef.vv.yaml mode change 100644 => 100755 arch/inst/Zvkn/vaesem.vs.yaml mode change 100644 => 100755 arch/inst/Zvkn/vaesem.vv.yaml mode change 100644 => 100755 arch/inst/Zvkn/vaeskf1.vi.yaml mode change 100644 => 100755 arch/inst/Zvkn/vaeskf2.vi.yaml mode change 100644 => 100755 arch/inst/Zvkn/vaesz.vs.yaml mode change 100644 => 100755 arch/inst/Zvkn/vsha2ch.vv.yaml mode change 100644 => 100755 arch/inst/Zvkn/vsha2cl.vv.yaml mode change 100644 => 100755 arch/inst/Zvkn/vsha2ms.vv.yaml mode change 100644 => 100755 arch/inst/Zvks/vsm3c.vi.yaml mode change 100644 => 100755 arch/inst/Zvks/vsm3me.vv.yaml mode change 100644 => 100755 arch/inst/Zvks/vsm4k.vi.yaml mode change 100644 => 100755 arch/inst/Zvks/vsm4r.vs.yaml mode change 100644 => 100755 arch/inst/Zvks/vsm4r.vv.yaml diff --git a/arch/inst/A/amoadd.d.yaml b/arch/inst/A/amoadd.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/A/amoadd.w.yaml b/arch/inst/A/amoadd.w.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/A/amoand.d.yaml b/arch/inst/A/amoand.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/A/amoand.w.yaml b/arch/inst/A/amoand.w.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/A/amomax.d.yaml b/arch/inst/A/amomax.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/A/amomax.w.yaml b/arch/inst/A/amomax.w.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/A/amomaxu.d.yaml b/arch/inst/A/amomaxu.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/A/amomaxu.w.yaml b/arch/inst/A/amomaxu.w.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/A/amomin.d.yaml b/arch/inst/A/amomin.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/A/amomin.w.yaml b/arch/inst/A/amomin.w.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/A/amominu.d.yaml b/arch/inst/A/amominu.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/A/amominu.w.yaml b/arch/inst/A/amominu.w.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/A/amoor.d.yaml b/arch/inst/A/amoor.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/A/amoor.w.yaml b/arch/inst/A/amoor.w.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/A/amoswap.d.yaml b/arch/inst/A/amoswap.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/A/amoswap.w.yaml b/arch/inst/A/amoswap.w.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/A/amoxor.d.yaml b/arch/inst/A/amoxor.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/A/amoxor.w.yaml b/arch/inst/A/amoxor.w.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/A/lr.d.yaml b/arch/inst/A/lr.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/A/lr.w.yaml b/arch/inst/A/lr.w.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/A/sc.d.yaml b/arch/inst/A/sc.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/A/sc.w.yaml b/arch/inst/A/sc.w.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/B/add.uw.yaml b/arch/inst/B/add.uw.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/B/andn.yaml b/arch/inst/B/andn.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/B/bclr.yaml b/arch/inst/B/bclr.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/B/bclri.yaml b/arch/inst/B/bclri.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/B/bext.yaml b/arch/inst/B/bext.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/B/bexti.yaml b/arch/inst/B/bexti.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/B/binv.yaml b/arch/inst/B/binv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/B/binvi.yaml b/arch/inst/B/binvi.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/B/bset.yaml b/arch/inst/B/bset.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/B/bseti.yaml b/arch/inst/B/bseti.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/B/clmul.yaml b/arch/inst/B/clmul.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/B/clmulh.yaml b/arch/inst/B/clmulh.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/B/clmulr.yaml b/arch/inst/B/clmulr.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/B/clz.yaml b/arch/inst/B/clz.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/B/clzw.yaml b/arch/inst/B/clzw.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/B/cpop.yaml b/arch/inst/B/cpop.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/B/cpopw.yaml b/arch/inst/B/cpopw.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/B/ctz.yaml b/arch/inst/B/ctz.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/B/ctzw.yaml b/arch/inst/B/ctzw.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/B/max.yaml b/arch/inst/B/max.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/B/maxu.yaml b/arch/inst/B/maxu.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/B/min.yaml b/arch/inst/B/min.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/B/minu.yaml b/arch/inst/B/minu.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/B/orc.b.yaml b/arch/inst/B/orc.b.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/B/orn.yaml b/arch/inst/B/orn.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/B/rev8.yaml b/arch/inst/B/rev8.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/B/rol.yaml b/arch/inst/B/rol.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/B/rolw.yaml b/arch/inst/B/rolw.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/B/ror.yaml b/arch/inst/B/ror.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/B/rori.yaml b/arch/inst/B/rori.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/B/roriw.yaml b/arch/inst/B/roriw.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/B/rorw.yaml b/arch/inst/B/rorw.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/B/sext.b.yaml b/arch/inst/B/sext.b.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/B/sext.h.yaml b/arch/inst/B/sext.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/B/sh1add.uw.yaml b/arch/inst/B/sh1add.uw.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/B/sh1add.yaml b/arch/inst/B/sh1add.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/B/sh2add.uw.yaml b/arch/inst/B/sh2add.uw.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/B/sh2add.yaml b/arch/inst/B/sh2add.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/B/sh3add.uw.yaml b/arch/inst/B/sh3add.uw.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/B/sh3add.yaml b/arch/inst/B/sh3add.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/B/slli.uw.yaml b/arch/inst/B/slli.uw.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/B/xnor.yaml b/arch/inst/B/xnor.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/B/zext.h.yaml b/arch/inst/B/zext.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/C/c.add.yaml b/arch/inst/C/c.add.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/C/c.addi.yaml b/arch/inst/C/c.addi.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/C/c.addi16sp.yaml b/arch/inst/C/c.addi16sp.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/C/c.addi4spn.yaml b/arch/inst/C/c.addi4spn.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/C/c.addiw.yaml b/arch/inst/C/c.addiw.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/C/c.addw.yaml b/arch/inst/C/c.addw.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/C/c.and.yaml b/arch/inst/C/c.and.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/C/c.andi.yaml b/arch/inst/C/c.andi.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/C/c.beqz.yaml b/arch/inst/C/c.beqz.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/C/c.bnez.yaml b/arch/inst/C/c.bnez.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/C/c.ebreak.yaml b/arch/inst/C/c.ebreak.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/C/c.fld.yaml b/arch/inst/C/c.fld.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/C/c.fldsp.yaml b/arch/inst/C/c.fldsp.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/C/c.flw.yaml b/arch/inst/C/c.flw.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/C/c.flwsp.yaml b/arch/inst/C/c.flwsp.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/C/c.fsd.yaml b/arch/inst/C/c.fsd.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/C/c.fsdsp.yaml b/arch/inst/C/c.fsdsp.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/C/c.fsw.yaml b/arch/inst/C/c.fsw.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/C/c.fswsp.yaml b/arch/inst/C/c.fswsp.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/C/c.j.yaml b/arch/inst/C/c.j.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/C/c.jal.yaml b/arch/inst/C/c.jal.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/C/c.jalr.yaml b/arch/inst/C/c.jalr.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/C/c.jr.yaml b/arch/inst/C/c.jr.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/C/c.ld.yaml b/arch/inst/C/c.ld.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/C/c.ldsp.yaml b/arch/inst/C/c.ldsp.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/C/c.li.yaml b/arch/inst/C/c.li.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/C/c.lui.yaml b/arch/inst/C/c.lui.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/C/c.lw.yaml b/arch/inst/C/c.lw.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/C/c.lwsp.yaml b/arch/inst/C/c.lwsp.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/C/c.mv.yaml b/arch/inst/C/c.mv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/C/c.nop.yaml b/arch/inst/C/c.nop.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/C/c.or.yaml b/arch/inst/C/c.or.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/C/c.sd.yaml b/arch/inst/C/c.sd.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/C/c.sdsp.yaml b/arch/inst/C/c.sdsp.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/C/c.slli.yaml b/arch/inst/C/c.slli.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/C/c.srai.yaml b/arch/inst/C/c.srai.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/C/c.srli.yaml b/arch/inst/C/c.srli.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/C/c.sub.yaml b/arch/inst/C/c.sub.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/C/c.subw.yaml b/arch/inst/C/c.subw.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/C/c.sw.yaml b/arch/inst/C/c.sw.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/C/c.swsp.yaml b/arch/inst/C/c.swsp.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/C/c.xor.yaml b/arch/inst/C/c.xor.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/D/fadd.d.yaml b/arch/inst/D/fadd.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/D/fclass.d.yaml b/arch/inst/D/fclass.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/D/fcvt.d.l.yaml b/arch/inst/D/fcvt.d.l.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/D/fcvt.d.lu.yaml b/arch/inst/D/fcvt.d.lu.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/D/fcvt.d.s.yaml b/arch/inst/D/fcvt.d.s.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/D/fcvt.d.w.yaml b/arch/inst/D/fcvt.d.w.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/D/fcvt.d.wu.yaml b/arch/inst/D/fcvt.d.wu.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/D/fcvt.l.d.yaml b/arch/inst/D/fcvt.l.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/D/fcvt.lu.d.yaml b/arch/inst/D/fcvt.lu.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/D/fcvt.s.d.yaml b/arch/inst/D/fcvt.s.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/D/fcvt.w.d.yaml b/arch/inst/D/fcvt.w.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/D/fcvt.wu.d.yaml b/arch/inst/D/fcvt.wu.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/D/fcvtmod.w.d.yaml b/arch/inst/D/fcvtmod.w.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/D/fdiv.d.yaml b/arch/inst/D/fdiv.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/D/feq.d.yaml b/arch/inst/D/feq.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/D/fld.yaml b/arch/inst/D/fld.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/D/fle.d.yaml b/arch/inst/D/fle.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/D/fleq.d.yaml b/arch/inst/D/fleq.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/D/fli.d.yaml b/arch/inst/D/fli.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/D/flt.d.yaml b/arch/inst/D/flt.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/D/fltq.d.yaml b/arch/inst/D/fltq.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/D/fmadd.d.yaml b/arch/inst/D/fmadd.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/D/fmax.d.yaml b/arch/inst/D/fmax.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/D/fmaxm.d.yaml b/arch/inst/D/fmaxm.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/D/fmin.d.yaml b/arch/inst/D/fmin.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/D/fminm.d.yaml b/arch/inst/D/fminm.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/D/fmsub.d.yaml b/arch/inst/D/fmsub.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/D/fmul.d.yaml b/arch/inst/D/fmul.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/D/fmv.d.x.yaml b/arch/inst/D/fmv.d.x.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/D/fmv.x.d.yaml b/arch/inst/D/fmv.x.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/D/fmvh.x.d.yaml b/arch/inst/D/fmvh.x.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/D/fmvp.d.x.yaml b/arch/inst/D/fmvp.d.x.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/D/fnmadd.d.yaml b/arch/inst/D/fnmadd.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/D/fnmsub.d.yaml b/arch/inst/D/fnmsub.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/D/fround.d.yaml b/arch/inst/D/fround.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/D/froundnx.d.yaml b/arch/inst/D/froundnx.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/D/fsd.yaml b/arch/inst/D/fsd.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/D/fsgnj.d.yaml b/arch/inst/D/fsgnj.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/D/fsgnjn.d.yaml b/arch/inst/D/fsgnjn.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/D/fsgnjx.d.yaml b/arch/inst/D/fsgnjx.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/D/fsqrt.d.yaml b/arch/inst/D/fsqrt.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/D/fsub.d.yaml b/arch/inst/D/fsub.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/F/fadd.s.yaml b/arch/inst/F/fadd.s.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/F/fclass.s.yaml b/arch/inst/F/fclass.s.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/F/fcvt.l.s.yaml b/arch/inst/F/fcvt.l.s.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/F/fcvt.lu.s.yaml b/arch/inst/F/fcvt.lu.s.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/F/fcvt.s.l.yaml b/arch/inst/F/fcvt.s.l.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/F/fcvt.s.lu.yaml b/arch/inst/F/fcvt.s.lu.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/F/fcvt.s.w.yaml b/arch/inst/F/fcvt.s.w.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/F/fcvt.s.wu.yaml b/arch/inst/F/fcvt.s.wu.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/F/fcvt.w.s.yaml b/arch/inst/F/fcvt.w.s.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/F/fcvt.wu.s.yaml b/arch/inst/F/fcvt.wu.s.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/F/fdiv.s.yaml b/arch/inst/F/fdiv.s.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/F/feq.s.yaml b/arch/inst/F/feq.s.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/F/fle.s.yaml b/arch/inst/F/fle.s.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/F/fleq.s.yaml b/arch/inst/F/fleq.s.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/F/fli.s.yaml b/arch/inst/F/fli.s.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/F/flt.s.yaml b/arch/inst/F/flt.s.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/F/fltq.s.yaml b/arch/inst/F/fltq.s.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/F/flw.yaml b/arch/inst/F/flw.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/F/fmadd.s.yaml b/arch/inst/F/fmadd.s.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/F/fmax.s.yaml b/arch/inst/F/fmax.s.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/F/fmaxm.s.yaml b/arch/inst/F/fmaxm.s.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/F/fmin.s.yaml b/arch/inst/F/fmin.s.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/F/fminm.s.yaml b/arch/inst/F/fminm.s.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/F/fmsub.s.yaml b/arch/inst/F/fmsub.s.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/F/fmul.s.yaml b/arch/inst/F/fmul.s.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/F/fmv.w.x.yaml b/arch/inst/F/fmv.w.x.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/F/fmv.x.w.yaml b/arch/inst/F/fmv.x.w.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/F/fnmadd.s.yaml b/arch/inst/F/fnmadd.s.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/F/fnmsub.s.yaml b/arch/inst/F/fnmsub.s.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/F/fround.s.yaml b/arch/inst/F/fround.s.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/F/froundnx.s.yaml b/arch/inst/F/froundnx.s.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/F/fsgnj.s.yaml b/arch/inst/F/fsgnj.s.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/F/fsgnjn.s.yaml b/arch/inst/F/fsgnjn.s.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/F/fsgnjx.s.yaml b/arch/inst/F/fsgnjx.s.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/F/fsqrt.s.yaml b/arch/inst/F/fsqrt.s.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/F/fsub.s.yaml b/arch/inst/F/fsub.s.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/F/fsw.yaml b/arch/inst/F/fsw.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/H/hfence.gvma.yaml b/arch/inst/H/hfence.gvma.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/H/hfence.vvma.yaml b/arch/inst/H/hfence.vvma.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/H/hlv.b.yaml b/arch/inst/H/hlv.b.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/H/hlv.bu.yaml b/arch/inst/H/hlv.bu.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/H/hlv.d.yaml b/arch/inst/H/hlv.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/H/hlv.h.yaml b/arch/inst/H/hlv.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/H/hlv.hu.yaml b/arch/inst/H/hlv.hu.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/H/hlv.w.yaml b/arch/inst/H/hlv.w.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/H/hlv.wu.yaml b/arch/inst/H/hlv.wu.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/H/hlvx.hu.yaml b/arch/inst/H/hlvx.hu.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/H/hlvx.wu.yaml b/arch/inst/H/hlvx.wu.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/H/hsv.b.yaml b/arch/inst/H/hsv.b.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/H/hsv.d.yaml b/arch/inst/H/hsv.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/H/hsv.h.yaml b/arch/inst/H/hsv.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/H/hsv.w.yaml b/arch/inst/H/hsv.w.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/add.yaml b/arch/inst/I/add.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/addi.yaml b/arch/inst/I/addi.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/addiw.yaml b/arch/inst/I/addiw.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/addw.yaml b/arch/inst/I/addw.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/and.yaml b/arch/inst/I/and.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/andi.yaml b/arch/inst/I/andi.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/auipc.yaml b/arch/inst/I/auipc.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/beq.yaml b/arch/inst/I/beq.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/bge.yaml b/arch/inst/I/bge.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/bgeu.yaml b/arch/inst/I/bgeu.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/blt.yaml b/arch/inst/I/blt.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/bltu.yaml b/arch/inst/I/bltu.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/bne.yaml b/arch/inst/I/bne.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/ebreak.yaml b/arch/inst/I/ebreak.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/ecall.yaml b/arch/inst/I/ecall.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/fence.yaml b/arch/inst/I/fence.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/jal.yaml b/arch/inst/I/jal.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/jalr.yaml b/arch/inst/I/jalr.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/lb.yaml b/arch/inst/I/lb.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/lbu.yaml b/arch/inst/I/lbu.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/ld.yaml b/arch/inst/I/ld.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/lh.yaml b/arch/inst/I/lh.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/lhu.yaml b/arch/inst/I/lhu.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/lui.yaml b/arch/inst/I/lui.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/lw.yaml b/arch/inst/I/lw.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/lwu.yaml b/arch/inst/I/lwu.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/mret.yaml b/arch/inst/I/mret.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/or.yaml b/arch/inst/I/or.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/ori.yaml b/arch/inst/I/ori.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/sb.yaml b/arch/inst/I/sb.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/sd.yaml b/arch/inst/I/sd.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/sh.yaml b/arch/inst/I/sh.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/sll.yaml b/arch/inst/I/sll.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/slli.yaml b/arch/inst/I/slli.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/slliw.yaml b/arch/inst/I/slliw.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/sllw.yaml b/arch/inst/I/sllw.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/slt.yaml b/arch/inst/I/slt.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/slti.yaml b/arch/inst/I/slti.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/sltiu.yaml b/arch/inst/I/sltiu.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/sltu.yaml b/arch/inst/I/sltu.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/sra.yaml b/arch/inst/I/sra.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/srai.yaml b/arch/inst/I/srai.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/sraiw.yaml b/arch/inst/I/sraiw.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/sraw.yaml b/arch/inst/I/sraw.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/srl.yaml b/arch/inst/I/srl.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/srli.yaml b/arch/inst/I/srli.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/srliw.yaml b/arch/inst/I/srliw.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/srlw.yaml b/arch/inst/I/srlw.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/sub.yaml b/arch/inst/I/sub.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/subw.yaml b/arch/inst/I/subw.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/sw.yaml b/arch/inst/I/sw.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/wfi.yaml b/arch/inst/I/wfi.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/xor.yaml b/arch/inst/I/xor.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/I/xori.yaml b/arch/inst/I/xori.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/M/div.yaml b/arch/inst/M/div.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/M/divu.yaml b/arch/inst/M/divu.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/M/divuw.yaml b/arch/inst/M/divuw.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/M/divw.yaml b/arch/inst/M/divw.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/M/mul.yaml b/arch/inst/M/mul.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/M/mulh.yaml b/arch/inst/M/mulh.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/M/mulhsu.yaml b/arch/inst/M/mulhsu.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/M/mulhu.yaml b/arch/inst/M/mulhu.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/M/mulw.yaml b/arch/inst/M/mulw.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/M/rem.yaml b/arch/inst/M/rem.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/M/remu.yaml b/arch/inst/M/remu.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/M/remuw.yaml b/arch/inst/M/remuw.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/M/remw.yaml b/arch/inst/M/remw.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Q/fadd.q.yaml b/arch/inst/Q/fadd.q.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Q/fclass.q.yaml b/arch/inst/Q/fclass.q.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Q/fcvt.d.q.yaml b/arch/inst/Q/fcvt.d.q.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Q/fcvt.h.q.yaml b/arch/inst/Q/fcvt.h.q.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Q/fcvt.l.q.yaml b/arch/inst/Q/fcvt.l.q.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Q/fcvt.lu.q.yaml b/arch/inst/Q/fcvt.lu.q.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Q/fcvt.q.d.yaml b/arch/inst/Q/fcvt.q.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Q/fcvt.q.h.yaml b/arch/inst/Q/fcvt.q.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Q/fcvt.q.l.yaml b/arch/inst/Q/fcvt.q.l.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Q/fcvt.q.lu.yaml b/arch/inst/Q/fcvt.q.lu.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Q/fcvt.q.s.yaml b/arch/inst/Q/fcvt.q.s.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Q/fcvt.q.w.yaml b/arch/inst/Q/fcvt.q.w.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Q/fcvt.q.wu.yaml b/arch/inst/Q/fcvt.q.wu.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Q/fcvt.s.q.yaml b/arch/inst/Q/fcvt.s.q.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Q/fcvt.w.q.yaml b/arch/inst/Q/fcvt.w.q.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Q/fcvt.wu.q.yaml b/arch/inst/Q/fcvt.wu.q.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Q/fdiv.q.yaml b/arch/inst/Q/fdiv.q.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Q/feq.q.yaml b/arch/inst/Q/feq.q.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Q/fle.q.yaml b/arch/inst/Q/fle.q.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Q/fleq.q.yaml b/arch/inst/Q/fleq.q.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Q/fli.q.yaml b/arch/inst/Q/fli.q.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Q/flq.yaml b/arch/inst/Q/flq.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Q/flt.q.yaml b/arch/inst/Q/flt.q.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Q/fltq.q.yaml b/arch/inst/Q/fltq.q.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Q/fmadd.q.yaml b/arch/inst/Q/fmadd.q.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Q/fmax.q.yaml b/arch/inst/Q/fmax.q.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Q/fmaxm.q.yaml b/arch/inst/Q/fmaxm.q.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Q/fmin.q.yaml b/arch/inst/Q/fmin.q.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Q/fminm.q.yaml b/arch/inst/Q/fminm.q.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Q/fmsub.q.yaml b/arch/inst/Q/fmsub.q.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Q/fmul.q.yaml b/arch/inst/Q/fmul.q.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Q/fmvh.x.q.yaml b/arch/inst/Q/fmvh.x.q.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Q/fmvp.q.x.yaml b/arch/inst/Q/fmvp.q.x.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Q/fnmadd.q.yaml b/arch/inst/Q/fnmadd.q.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Q/fnmsub.q.yaml b/arch/inst/Q/fnmsub.q.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Q/fround.q.yaml b/arch/inst/Q/fround.q.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Q/froundnx.q.yaml b/arch/inst/Q/froundnx.q.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Q/fsgnj.q.yaml b/arch/inst/Q/fsgnj.q.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Q/fsgnjn.q.yaml b/arch/inst/Q/fsgnjn.q.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Q/fsgnjx.q.yaml b/arch/inst/Q/fsgnjx.q.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Q/fsq.yaml b/arch/inst/Q/fsq.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Q/fsqrt.q.yaml b/arch/inst/Q/fsqrt.q.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Q/fsub.q.yaml b/arch/inst/Q/fsub.q.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/S/sfence.vma.yaml b/arch/inst/S/sfence.vma.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/S/sret.yaml b/arch/inst/S/sret.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Sdext/dret.yaml b/arch/inst/Sdext/dret.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Smdbltrp/sctrclr.yaml b/arch/inst/Smdbltrp/sctrclr.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Smrnmi/mnret.yaml b/arch/inst/Smrnmi/mnret.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Svinval/hinval.gvma.yaml b/arch/inst/Svinval/hinval.gvma.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Svinval/hinval.vvma.yaml b/arch/inst/Svinval/hinval.vvma.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Svinval/sfence.inval.ir.yaml b/arch/inst/Svinval/sfence.inval.ir.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Svinval/sfence.w.inval.yaml b/arch/inst/Svinval/sfence.w.inval.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Svinval/sinval.vma.yaml b/arch/inst/Svinval/sinval.vma.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vaadd.vv.yaml b/arch/inst/V/vaadd.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vaadd.vx.yaml b/arch/inst/V/vaadd.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vaaddu.vv.yaml b/arch/inst/V/vaaddu.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vaaddu.vx.yaml b/arch/inst/V/vaaddu.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vadc.vim.yaml b/arch/inst/V/vadc.vim.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vadc.vvm.yaml b/arch/inst/V/vadc.vvm.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vadc.vxm.yaml b/arch/inst/V/vadc.vxm.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vadd.vi.yaml b/arch/inst/V/vadd.vi.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vadd.vv.yaml b/arch/inst/V/vadd.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vadd.vx.yaml b/arch/inst/V/vadd.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vand.vi.yaml b/arch/inst/V/vand.vi.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vand.vv.yaml b/arch/inst/V/vand.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vand.vx.yaml b/arch/inst/V/vand.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vasub.vv.yaml b/arch/inst/V/vasub.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vasub.vx.yaml b/arch/inst/V/vasub.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vasubu.vv.yaml b/arch/inst/V/vasubu.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vasubu.vx.yaml b/arch/inst/V/vasubu.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vcompress.vm.yaml b/arch/inst/V/vcompress.vm.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vcpop.m.yaml b/arch/inst/V/vcpop.m.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vdiv.vv.yaml b/arch/inst/V/vdiv.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vdiv.vx.yaml b/arch/inst/V/vdiv.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vdivu.vv.yaml b/arch/inst/V/vdivu.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vdivu.vx.yaml b/arch/inst/V/vdivu.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfadd.vf.yaml b/arch/inst/V/vfadd.vf.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfadd.vv.yaml b/arch/inst/V/vfadd.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfclass.v.yaml b/arch/inst/V/vfclass.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfcvt.f.x.v.yaml b/arch/inst/V/vfcvt.f.x.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfcvt.f.xu.v.yaml b/arch/inst/V/vfcvt.f.xu.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfcvt.rtz.x.f.v.yaml b/arch/inst/V/vfcvt.rtz.x.f.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfcvt.rtz.xu.f.v.yaml b/arch/inst/V/vfcvt.rtz.xu.f.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfcvt.x.f.v.yaml b/arch/inst/V/vfcvt.x.f.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfcvt.xu.f.v.yaml b/arch/inst/V/vfcvt.xu.f.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfdiv.vf.yaml b/arch/inst/V/vfdiv.vf.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfdiv.vv.yaml b/arch/inst/V/vfdiv.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfirst.m.yaml b/arch/inst/V/vfirst.m.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfmacc.vf.yaml b/arch/inst/V/vfmacc.vf.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfmacc.vv.yaml b/arch/inst/V/vfmacc.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfmadd.vf.yaml b/arch/inst/V/vfmadd.vf.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfmadd.vv.yaml b/arch/inst/V/vfmadd.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfmax.vf.yaml b/arch/inst/V/vfmax.vf.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfmax.vv.yaml b/arch/inst/V/vfmax.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfmerge.vfm.yaml b/arch/inst/V/vfmerge.vfm.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfmin.vf.yaml b/arch/inst/V/vfmin.vf.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfmin.vv.yaml b/arch/inst/V/vfmin.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfmsac.vf.yaml b/arch/inst/V/vfmsac.vf.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfmsac.vv.yaml b/arch/inst/V/vfmsac.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfmsub.vf.yaml b/arch/inst/V/vfmsub.vf.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfmsub.vv.yaml b/arch/inst/V/vfmsub.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfmul.vf.yaml b/arch/inst/V/vfmul.vf.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfmul.vv.yaml b/arch/inst/V/vfmul.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfmv.f.s.yaml b/arch/inst/V/vfmv.f.s.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfmv.s.f.yaml b/arch/inst/V/vfmv.s.f.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfmv.v.f.yaml b/arch/inst/V/vfmv.v.f.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfncvt.f.f.w.yaml b/arch/inst/V/vfncvt.f.f.w.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfncvt.f.x.w.yaml b/arch/inst/V/vfncvt.f.x.w.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfncvt.f.xu.w.yaml b/arch/inst/V/vfncvt.f.xu.w.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfncvt.rod.f.f.w.yaml b/arch/inst/V/vfncvt.rod.f.f.w.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfncvt.rtz.x.f.w.yaml b/arch/inst/V/vfncvt.rtz.x.f.w.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfncvt.rtz.xu.f.w.yaml b/arch/inst/V/vfncvt.rtz.xu.f.w.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfncvt.x.f.w.yaml b/arch/inst/V/vfncvt.x.f.w.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfncvt.xu.f.w.yaml b/arch/inst/V/vfncvt.xu.f.w.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfnmacc.vf.yaml b/arch/inst/V/vfnmacc.vf.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfnmacc.vv.yaml b/arch/inst/V/vfnmacc.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfnmadd.vf.yaml b/arch/inst/V/vfnmadd.vf.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfnmadd.vv.yaml b/arch/inst/V/vfnmadd.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfnmsac.vf.yaml b/arch/inst/V/vfnmsac.vf.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfnmsac.vv.yaml b/arch/inst/V/vfnmsac.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfnmsub.vf.yaml b/arch/inst/V/vfnmsub.vf.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfnmsub.vv.yaml b/arch/inst/V/vfnmsub.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfrdiv.vf.yaml b/arch/inst/V/vfrdiv.vf.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfrec7.v.yaml b/arch/inst/V/vfrec7.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfredmax.vs.yaml b/arch/inst/V/vfredmax.vs.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfredmin.vs.yaml b/arch/inst/V/vfredmin.vs.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfredosum.vs.yaml b/arch/inst/V/vfredosum.vs.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfredusum.vs.yaml b/arch/inst/V/vfredusum.vs.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfrsqrt7.v.yaml b/arch/inst/V/vfrsqrt7.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfrsub.vf.yaml b/arch/inst/V/vfrsub.vf.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfsgnj.vf.yaml b/arch/inst/V/vfsgnj.vf.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfsgnj.vv.yaml b/arch/inst/V/vfsgnj.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfsgnjn.vf.yaml b/arch/inst/V/vfsgnjn.vf.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfsgnjn.vv.yaml b/arch/inst/V/vfsgnjn.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfsgnjx.vf.yaml b/arch/inst/V/vfsgnjx.vf.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfsgnjx.vv.yaml b/arch/inst/V/vfsgnjx.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfslide1down.vf.yaml b/arch/inst/V/vfslide1down.vf.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfslide1up.vf.yaml b/arch/inst/V/vfslide1up.vf.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfsqrt.v.yaml b/arch/inst/V/vfsqrt.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfsub.vf.yaml b/arch/inst/V/vfsub.vf.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfsub.vv.yaml b/arch/inst/V/vfsub.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfwadd.vf.yaml b/arch/inst/V/vfwadd.vf.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfwadd.vv.yaml b/arch/inst/V/vfwadd.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfwadd.wf.yaml b/arch/inst/V/vfwadd.wf.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfwadd.wv.yaml b/arch/inst/V/vfwadd.wv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfwcvt.f.f.v.yaml b/arch/inst/V/vfwcvt.f.f.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfwcvt.f.x.v.yaml b/arch/inst/V/vfwcvt.f.x.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfwcvt.f.xu.v.yaml b/arch/inst/V/vfwcvt.f.xu.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfwcvt.rtz.x.f.v.yaml b/arch/inst/V/vfwcvt.rtz.x.f.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfwcvt.rtz.xu.f.v.yaml b/arch/inst/V/vfwcvt.rtz.xu.f.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfwcvt.x.f.v.yaml b/arch/inst/V/vfwcvt.x.f.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfwcvt.xu.f.v.yaml b/arch/inst/V/vfwcvt.xu.f.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfwmacc.vf.yaml b/arch/inst/V/vfwmacc.vf.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfwmacc.vv.yaml b/arch/inst/V/vfwmacc.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfwmsac.vf.yaml b/arch/inst/V/vfwmsac.vf.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfwmsac.vv.yaml b/arch/inst/V/vfwmsac.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfwmul.vf.yaml b/arch/inst/V/vfwmul.vf.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfwmul.vv.yaml b/arch/inst/V/vfwmul.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfwnmacc.vf.yaml b/arch/inst/V/vfwnmacc.vf.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfwnmacc.vv.yaml b/arch/inst/V/vfwnmacc.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfwnmsac.vf.yaml b/arch/inst/V/vfwnmsac.vf.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfwnmsac.vv.yaml b/arch/inst/V/vfwnmsac.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfwredosum.vs.yaml b/arch/inst/V/vfwredosum.vs.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfwredusum.vs.yaml b/arch/inst/V/vfwredusum.vs.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfwsub.vf.yaml b/arch/inst/V/vfwsub.vf.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfwsub.vv.yaml b/arch/inst/V/vfwsub.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfwsub.wf.yaml b/arch/inst/V/vfwsub.wf.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vfwsub.wv.yaml b/arch/inst/V/vfwsub.wv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vid.v.yaml b/arch/inst/V/vid.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/viota.m.yaml b/arch/inst/V/viota.m.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vl1re16.v.yaml b/arch/inst/V/vl1re16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vl1re32.v.yaml b/arch/inst/V/vl1re32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vl1re64.v.yaml b/arch/inst/V/vl1re64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vl1re8.v.yaml b/arch/inst/V/vl1re8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vl2re16.v.yaml b/arch/inst/V/vl2re16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vl2re32.v.yaml b/arch/inst/V/vl2re32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vl2re64.v.yaml b/arch/inst/V/vl2re64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vl2re8.v.yaml b/arch/inst/V/vl2re8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vl4re16.v.yaml b/arch/inst/V/vl4re16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vl4re32.v.yaml b/arch/inst/V/vl4re32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vl4re64.v.yaml b/arch/inst/V/vl4re64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vl4re8.v.yaml b/arch/inst/V/vl4re8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vl8re16.v.yaml b/arch/inst/V/vl8re16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vl8re32.v.yaml b/arch/inst/V/vl8re32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vl8re64.v.yaml b/arch/inst/V/vl8re64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vl8re8.v.yaml b/arch/inst/V/vl8re8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vle16.v.yaml b/arch/inst/V/vle16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vle16ff.v.yaml b/arch/inst/V/vle16ff.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vle32.v.yaml b/arch/inst/V/vle32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vle32ff.v.yaml b/arch/inst/V/vle32ff.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vle64.v.yaml b/arch/inst/V/vle64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vle64ff.v.yaml b/arch/inst/V/vle64ff.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vle8.v.yaml b/arch/inst/V/vle8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vle8ff.v.yaml b/arch/inst/V/vle8ff.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlm.v.yaml b/arch/inst/V/vlm.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vloxei16.v.yaml b/arch/inst/V/vloxei16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vloxei32.v.yaml b/arch/inst/V/vloxei32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vloxei64.v.yaml b/arch/inst/V/vloxei64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vloxei8.v.yaml b/arch/inst/V/vloxei8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vloxseg2ei16.v.yaml b/arch/inst/V/vloxseg2ei16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vloxseg2ei32.v.yaml b/arch/inst/V/vloxseg2ei32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vloxseg2ei64.v.yaml b/arch/inst/V/vloxseg2ei64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vloxseg2ei8.v.yaml b/arch/inst/V/vloxseg2ei8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vloxseg3ei16.v.yaml b/arch/inst/V/vloxseg3ei16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vloxseg3ei32.v.yaml b/arch/inst/V/vloxseg3ei32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vloxseg3ei64.v.yaml b/arch/inst/V/vloxseg3ei64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vloxseg3ei8.v.yaml b/arch/inst/V/vloxseg3ei8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vloxseg4ei16.v.yaml b/arch/inst/V/vloxseg4ei16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vloxseg4ei32.v.yaml b/arch/inst/V/vloxseg4ei32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vloxseg4ei64.v.yaml b/arch/inst/V/vloxseg4ei64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vloxseg4ei8.v.yaml b/arch/inst/V/vloxseg4ei8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vloxseg5ei16.v.yaml b/arch/inst/V/vloxseg5ei16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vloxseg5ei32.v.yaml b/arch/inst/V/vloxseg5ei32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vloxseg5ei64.v.yaml b/arch/inst/V/vloxseg5ei64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vloxseg5ei8.v.yaml b/arch/inst/V/vloxseg5ei8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vloxseg6ei16.v.yaml b/arch/inst/V/vloxseg6ei16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vloxseg6ei32.v.yaml b/arch/inst/V/vloxseg6ei32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vloxseg6ei64.v.yaml b/arch/inst/V/vloxseg6ei64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vloxseg6ei8.v.yaml b/arch/inst/V/vloxseg6ei8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vloxseg7ei16.v.yaml b/arch/inst/V/vloxseg7ei16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vloxseg7ei32.v.yaml b/arch/inst/V/vloxseg7ei32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vloxseg7ei64.v.yaml b/arch/inst/V/vloxseg7ei64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vloxseg7ei8.v.yaml b/arch/inst/V/vloxseg7ei8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vloxseg8ei16.v.yaml b/arch/inst/V/vloxseg8ei16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vloxseg8ei32.v.yaml b/arch/inst/V/vloxseg8ei32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vloxseg8ei64.v.yaml b/arch/inst/V/vloxseg8ei64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vloxseg8ei8.v.yaml b/arch/inst/V/vloxseg8ei8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlse16.v.yaml b/arch/inst/V/vlse16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlse32.v.yaml b/arch/inst/V/vlse32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlse64.v.yaml b/arch/inst/V/vlse64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlse8.v.yaml b/arch/inst/V/vlse8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg2e16.v.yaml b/arch/inst/V/vlseg2e16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg2e16ff.v.yaml b/arch/inst/V/vlseg2e16ff.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg2e32.v.yaml b/arch/inst/V/vlseg2e32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg2e32ff.v.yaml b/arch/inst/V/vlseg2e32ff.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg2e64.v.yaml b/arch/inst/V/vlseg2e64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg2e64ff.v.yaml b/arch/inst/V/vlseg2e64ff.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg2e8.v.yaml b/arch/inst/V/vlseg2e8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg2e8ff.v.yaml b/arch/inst/V/vlseg2e8ff.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg3e16.v.yaml b/arch/inst/V/vlseg3e16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg3e16ff.v.yaml b/arch/inst/V/vlseg3e16ff.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg3e32.v.yaml b/arch/inst/V/vlseg3e32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg3e32ff.v.yaml b/arch/inst/V/vlseg3e32ff.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg3e64.v.yaml b/arch/inst/V/vlseg3e64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg3e64ff.v.yaml b/arch/inst/V/vlseg3e64ff.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg3e8.v.yaml b/arch/inst/V/vlseg3e8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg3e8ff.v.yaml b/arch/inst/V/vlseg3e8ff.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg4e16.v.yaml b/arch/inst/V/vlseg4e16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg4e16ff.v.yaml b/arch/inst/V/vlseg4e16ff.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg4e32.v.yaml b/arch/inst/V/vlseg4e32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg4e32ff.v.yaml b/arch/inst/V/vlseg4e32ff.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg4e64.v.yaml b/arch/inst/V/vlseg4e64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg4e64ff.v.yaml b/arch/inst/V/vlseg4e64ff.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg4e8.v.yaml b/arch/inst/V/vlseg4e8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg4e8ff.v.yaml b/arch/inst/V/vlseg4e8ff.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg5e16.v.yaml b/arch/inst/V/vlseg5e16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg5e16ff.v.yaml b/arch/inst/V/vlseg5e16ff.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg5e32.v.yaml b/arch/inst/V/vlseg5e32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg5e32ff.v.yaml b/arch/inst/V/vlseg5e32ff.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg5e64.v.yaml b/arch/inst/V/vlseg5e64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg5e64ff.v.yaml b/arch/inst/V/vlseg5e64ff.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg5e8.v.yaml b/arch/inst/V/vlseg5e8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg5e8ff.v.yaml b/arch/inst/V/vlseg5e8ff.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg6e16.v.yaml b/arch/inst/V/vlseg6e16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg6e16ff.v.yaml b/arch/inst/V/vlseg6e16ff.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg6e32.v.yaml b/arch/inst/V/vlseg6e32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg6e32ff.v.yaml b/arch/inst/V/vlseg6e32ff.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg6e64.v.yaml b/arch/inst/V/vlseg6e64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg6e64ff.v.yaml b/arch/inst/V/vlseg6e64ff.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg6e8.v.yaml b/arch/inst/V/vlseg6e8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg6e8ff.v.yaml b/arch/inst/V/vlseg6e8ff.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg7e16.v.yaml b/arch/inst/V/vlseg7e16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg7e16ff.v.yaml b/arch/inst/V/vlseg7e16ff.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg7e32.v.yaml b/arch/inst/V/vlseg7e32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg7e32ff.v.yaml b/arch/inst/V/vlseg7e32ff.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg7e64.v.yaml b/arch/inst/V/vlseg7e64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg7e64ff.v.yaml b/arch/inst/V/vlseg7e64ff.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg7e8.v.yaml b/arch/inst/V/vlseg7e8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg7e8ff.v.yaml b/arch/inst/V/vlseg7e8ff.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg8e16.v.yaml b/arch/inst/V/vlseg8e16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg8e16ff.v.yaml b/arch/inst/V/vlseg8e16ff.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg8e32.v.yaml b/arch/inst/V/vlseg8e32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg8e32ff.v.yaml b/arch/inst/V/vlseg8e32ff.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg8e64.v.yaml b/arch/inst/V/vlseg8e64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg8e64ff.v.yaml b/arch/inst/V/vlseg8e64ff.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg8e8.v.yaml b/arch/inst/V/vlseg8e8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlseg8e8ff.v.yaml b/arch/inst/V/vlseg8e8ff.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlsseg2e16.v.yaml b/arch/inst/V/vlsseg2e16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlsseg2e32.v.yaml b/arch/inst/V/vlsseg2e32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlsseg2e64.v.yaml b/arch/inst/V/vlsseg2e64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlsseg2e8.v.yaml b/arch/inst/V/vlsseg2e8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlsseg3e16.v.yaml b/arch/inst/V/vlsseg3e16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlsseg3e32.v.yaml b/arch/inst/V/vlsseg3e32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlsseg3e64.v.yaml b/arch/inst/V/vlsseg3e64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlsseg3e8.v.yaml b/arch/inst/V/vlsseg3e8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlsseg4e16.v.yaml b/arch/inst/V/vlsseg4e16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlsseg4e32.v.yaml b/arch/inst/V/vlsseg4e32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlsseg4e64.v.yaml b/arch/inst/V/vlsseg4e64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlsseg4e8.v.yaml b/arch/inst/V/vlsseg4e8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlsseg5e16.v.yaml b/arch/inst/V/vlsseg5e16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlsseg5e32.v.yaml b/arch/inst/V/vlsseg5e32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlsseg5e64.v.yaml b/arch/inst/V/vlsseg5e64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlsseg5e8.v.yaml b/arch/inst/V/vlsseg5e8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlsseg6e16.v.yaml b/arch/inst/V/vlsseg6e16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlsseg6e32.v.yaml b/arch/inst/V/vlsseg6e32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlsseg6e64.v.yaml b/arch/inst/V/vlsseg6e64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlsseg6e8.v.yaml b/arch/inst/V/vlsseg6e8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlsseg7e16.v.yaml b/arch/inst/V/vlsseg7e16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlsseg7e32.v.yaml b/arch/inst/V/vlsseg7e32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlsseg7e64.v.yaml b/arch/inst/V/vlsseg7e64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlsseg7e8.v.yaml b/arch/inst/V/vlsseg7e8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlsseg8e16.v.yaml b/arch/inst/V/vlsseg8e16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlsseg8e32.v.yaml b/arch/inst/V/vlsseg8e32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlsseg8e64.v.yaml b/arch/inst/V/vlsseg8e64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vlsseg8e8.v.yaml b/arch/inst/V/vlsseg8e8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vluxei16.v.yaml b/arch/inst/V/vluxei16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vluxei32.v.yaml b/arch/inst/V/vluxei32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vluxei64.v.yaml b/arch/inst/V/vluxei64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vluxei8.v.yaml b/arch/inst/V/vluxei8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vluxseg2ei16.v.yaml b/arch/inst/V/vluxseg2ei16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vluxseg2ei32.v.yaml b/arch/inst/V/vluxseg2ei32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vluxseg2ei64.v.yaml b/arch/inst/V/vluxseg2ei64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vluxseg2ei8.v.yaml b/arch/inst/V/vluxseg2ei8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vluxseg3ei16.v.yaml b/arch/inst/V/vluxseg3ei16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vluxseg3ei32.v.yaml b/arch/inst/V/vluxseg3ei32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vluxseg3ei64.v.yaml b/arch/inst/V/vluxseg3ei64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vluxseg3ei8.v.yaml b/arch/inst/V/vluxseg3ei8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vluxseg4ei16.v.yaml b/arch/inst/V/vluxseg4ei16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vluxseg4ei32.v.yaml b/arch/inst/V/vluxseg4ei32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vluxseg4ei64.v.yaml b/arch/inst/V/vluxseg4ei64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vluxseg4ei8.v.yaml b/arch/inst/V/vluxseg4ei8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vluxseg5ei16.v.yaml b/arch/inst/V/vluxseg5ei16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vluxseg5ei32.v.yaml b/arch/inst/V/vluxseg5ei32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vluxseg5ei64.v.yaml b/arch/inst/V/vluxseg5ei64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vluxseg5ei8.v.yaml b/arch/inst/V/vluxseg5ei8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vluxseg6ei16.v.yaml b/arch/inst/V/vluxseg6ei16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vluxseg6ei32.v.yaml b/arch/inst/V/vluxseg6ei32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vluxseg6ei64.v.yaml b/arch/inst/V/vluxseg6ei64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vluxseg6ei8.v.yaml b/arch/inst/V/vluxseg6ei8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vluxseg7ei16.v.yaml b/arch/inst/V/vluxseg7ei16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vluxseg7ei32.v.yaml b/arch/inst/V/vluxseg7ei32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vluxseg7ei64.v.yaml b/arch/inst/V/vluxseg7ei64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vluxseg7ei8.v.yaml b/arch/inst/V/vluxseg7ei8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vluxseg8ei16.v.yaml b/arch/inst/V/vluxseg8ei16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vluxseg8ei32.v.yaml b/arch/inst/V/vluxseg8ei32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vluxseg8ei64.v.yaml b/arch/inst/V/vluxseg8ei64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vluxseg8ei8.v.yaml b/arch/inst/V/vluxseg8ei8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmacc.vv.yaml b/arch/inst/V/vmacc.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmacc.vx.yaml b/arch/inst/V/vmacc.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmadc.vi.yaml b/arch/inst/V/vmadc.vi.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmadc.vim.yaml b/arch/inst/V/vmadc.vim.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmadc.vv.yaml b/arch/inst/V/vmadc.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmadc.vvm.yaml b/arch/inst/V/vmadc.vvm.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmadc.vx.yaml b/arch/inst/V/vmadc.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmadc.vxm.yaml b/arch/inst/V/vmadc.vxm.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmadd.vv.yaml b/arch/inst/V/vmadd.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmadd.vx.yaml b/arch/inst/V/vmadd.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmand.mm.yaml b/arch/inst/V/vmand.mm.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmandn.mm.yaml b/arch/inst/V/vmandn.mm.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmax.vv.yaml b/arch/inst/V/vmax.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmax.vx.yaml b/arch/inst/V/vmax.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmaxu.vv.yaml b/arch/inst/V/vmaxu.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmaxu.vx.yaml b/arch/inst/V/vmaxu.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmerge.vim.yaml b/arch/inst/V/vmerge.vim.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmerge.vvm.yaml b/arch/inst/V/vmerge.vvm.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmerge.vxm.yaml b/arch/inst/V/vmerge.vxm.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmfeq.vf.yaml b/arch/inst/V/vmfeq.vf.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmfeq.vv.yaml b/arch/inst/V/vmfeq.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmfge.vf.yaml b/arch/inst/V/vmfge.vf.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmfgt.vf.yaml b/arch/inst/V/vmfgt.vf.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmfle.vf.yaml b/arch/inst/V/vmfle.vf.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmfle.vv.yaml b/arch/inst/V/vmfle.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmflt.vf.yaml b/arch/inst/V/vmflt.vf.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmflt.vv.yaml b/arch/inst/V/vmflt.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmfne.vf.yaml b/arch/inst/V/vmfne.vf.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmfne.vv.yaml b/arch/inst/V/vmfne.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmin.vv.yaml b/arch/inst/V/vmin.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmin.vx.yaml b/arch/inst/V/vmin.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vminu.vv.yaml b/arch/inst/V/vminu.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vminu.vx.yaml b/arch/inst/V/vminu.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmnand.mm.yaml b/arch/inst/V/vmnand.mm.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmnor.mm.yaml b/arch/inst/V/vmnor.mm.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmor.mm.yaml b/arch/inst/V/vmor.mm.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmorn.mm.yaml b/arch/inst/V/vmorn.mm.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmsbc.vv.yaml b/arch/inst/V/vmsbc.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmsbc.vvm.yaml b/arch/inst/V/vmsbc.vvm.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmsbc.vx.yaml b/arch/inst/V/vmsbc.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmsbc.vxm.yaml b/arch/inst/V/vmsbc.vxm.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmsbf.m.yaml b/arch/inst/V/vmsbf.m.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmseq.vi.yaml b/arch/inst/V/vmseq.vi.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmseq.vv.yaml b/arch/inst/V/vmseq.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmseq.vx.yaml b/arch/inst/V/vmseq.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmsgt.vi.yaml b/arch/inst/V/vmsgt.vi.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmsgt.vx.yaml b/arch/inst/V/vmsgt.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmsgtu.vi.yaml b/arch/inst/V/vmsgtu.vi.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmsgtu.vx.yaml b/arch/inst/V/vmsgtu.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmsif.m.yaml b/arch/inst/V/vmsif.m.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmsle.vi.yaml b/arch/inst/V/vmsle.vi.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmsle.vv.yaml b/arch/inst/V/vmsle.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmsle.vx.yaml b/arch/inst/V/vmsle.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmsleu.vi.yaml b/arch/inst/V/vmsleu.vi.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmsleu.vv.yaml b/arch/inst/V/vmsleu.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmsleu.vx.yaml b/arch/inst/V/vmsleu.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmslt.vv.yaml b/arch/inst/V/vmslt.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmslt.vx.yaml b/arch/inst/V/vmslt.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmsltu.vv.yaml b/arch/inst/V/vmsltu.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmsltu.vx.yaml b/arch/inst/V/vmsltu.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmsne.vi.yaml b/arch/inst/V/vmsne.vi.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmsne.vv.yaml b/arch/inst/V/vmsne.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmsne.vx.yaml b/arch/inst/V/vmsne.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmsof.m.yaml b/arch/inst/V/vmsof.m.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmul.vv.yaml b/arch/inst/V/vmul.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmul.vx.yaml b/arch/inst/V/vmul.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmulh.vv.yaml b/arch/inst/V/vmulh.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmulh.vx.yaml b/arch/inst/V/vmulh.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmulhsu.vv.yaml b/arch/inst/V/vmulhsu.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmulhsu.vx.yaml b/arch/inst/V/vmulhsu.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmulhu.vv.yaml b/arch/inst/V/vmulhu.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmulhu.vx.yaml b/arch/inst/V/vmulhu.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmv.s.x.yaml b/arch/inst/V/vmv.s.x.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmv.v.i.yaml b/arch/inst/V/vmv.v.i.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmv.v.v.yaml b/arch/inst/V/vmv.v.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmv.v.x.yaml b/arch/inst/V/vmv.v.x.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmv.x.s.yaml b/arch/inst/V/vmv.x.s.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmv1r.v.yaml b/arch/inst/V/vmv1r.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmv2r.v.yaml b/arch/inst/V/vmv2r.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmv4r.v.yaml b/arch/inst/V/vmv4r.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmv8r.v.yaml b/arch/inst/V/vmv8r.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmxnor.mm.yaml b/arch/inst/V/vmxnor.mm.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vmxor.mm.yaml b/arch/inst/V/vmxor.mm.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vnclip.wi.yaml b/arch/inst/V/vnclip.wi.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vnclip.wv.yaml b/arch/inst/V/vnclip.wv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vnclip.wx.yaml b/arch/inst/V/vnclip.wx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vnclipu.wi.yaml b/arch/inst/V/vnclipu.wi.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vnclipu.wv.yaml b/arch/inst/V/vnclipu.wv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vnclipu.wx.yaml b/arch/inst/V/vnclipu.wx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vnmsac.vv.yaml b/arch/inst/V/vnmsac.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vnmsac.vx.yaml b/arch/inst/V/vnmsac.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vnmsub.vv.yaml b/arch/inst/V/vnmsub.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vnmsub.vx.yaml b/arch/inst/V/vnmsub.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vnsra.wi.yaml b/arch/inst/V/vnsra.wi.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vnsra.wv.yaml b/arch/inst/V/vnsra.wv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vnsra.wx.yaml b/arch/inst/V/vnsra.wx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vnsrl.wi.yaml b/arch/inst/V/vnsrl.wi.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vnsrl.wv.yaml b/arch/inst/V/vnsrl.wv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vnsrl.wx.yaml b/arch/inst/V/vnsrl.wx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vor.vi.yaml b/arch/inst/V/vor.vi.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vor.vv.yaml b/arch/inst/V/vor.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vor.vx.yaml b/arch/inst/V/vor.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vredand.vs.yaml b/arch/inst/V/vredand.vs.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vredmax.vs.yaml b/arch/inst/V/vredmax.vs.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vredmaxu.vs.yaml b/arch/inst/V/vredmaxu.vs.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vredmin.vs.yaml b/arch/inst/V/vredmin.vs.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vredminu.vs.yaml b/arch/inst/V/vredminu.vs.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vredor.vs.yaml b/arch/inst/V/vredor.vs.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vredsum.vs.yaml b/arch/inst/V/vredsum.vs.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vredxor.vs.yaml b/arch/inst/V/vredxor.vs.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vrem.vv.yaml b/arch/inst/V/vrem.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vrem.vx.yaml b/arch/inst/V/vrem.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vremu.vv.yaml b/arch/inst/V/vremu.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vremu.vx.yaml b/arch/inst/V/vremu.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vrgather.vi.yaml b/arch/inst/V/vrgather.vi.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vrgather.vv.yaml b/arch/inst/V/vrgather.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vrgather.vx.yaml b/arch/inst/V/vrgather.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vrgatherei16.vv.yaml b/arch/inst/V/vrgatherei16.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vrsub.vi.yaml b/arch/inst/V/vrsub.vi.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vrsub.vx.yaml b/arch/inst/V/vrsub.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vs1r.v.yaml b/arch/inst/V/vs1r.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vs2r.v.yaml b/arch/inst/V/vs2r.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vs4r.v.yaml b/arch/inst/V/vs4r.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vs8r.v.yaml b/arch/inst/V/vs8r.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsadd.vi.yaml b/arch/inst/V/vsadd.vi.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsadd.vv.yaml b/arch/inst/V/vsadd.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsadd.vx.yaml b/arch/inst/V/vsadd.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsaddu.vi.yaml b/arch/inst/V/vsaddu.vi.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsaddu.vv.yaml b/arch/inst/V/vsaddu.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsaddu.vx.yaml b/arch/inst/V/vsaddu.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsbc.vvm.yaml b/arch/inst/V/vsbc.vvm.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsbc.vxm.yaml b/arch/inst/V/vsbc.vxm.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vse16.v.yaml b/arch/inst/V/vse16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vse32.v.yaml b/arch/inst/V/vse32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vse64.v.yaml b/arch/inst/V/vse64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vse8.v.yaml b/arch/inst/V/vse8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsetivli.yaml b/arch/inst/V/vsetivli.yaml old mode 100644 new mode 100755 index e45be1043..7701b93b7 --- a/arch/inst/V/vsetivli.yaml +++ b/arch/inst/V/vsetivli.yaml @@ -11,9 +11,9 @@ assembly: xd, imm encoding: match: 11---------------111-----1010111 variables: - - name: zimm10 + - name: imm location: 29-20 - - name: uimm + - name: imm location: 19-15 - name: rd location: 11-7 diff --git a/arch/inst/V/vsetvl.yaml b/arch/inst/V/vsetvl.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsetvli.yaml b/arch/inst/V/vsetvli.yaml old mode 100644 new mode 100755 index aeb3569bb..b85fb18d3 --- a/arch/inst/V/vsetvli.yaml +++ b/arch/inst/V/vsetvli.yaml @@ -11,7 +11,7 @@ assembly: xs1, xd, imm encoding: match: 0----------------111-----1010111 variables: - - name: zimm11 + - name: imm location: 30-20 - name: rs1 location: 19-15 diff --git a/arch/inst/V/vsext.vf2.yaml b/arch/inst/V/vsext.vf2.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsext.vf4.yaml b/arch/inst/V/vsext.vf4.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsext.vf8.yaml b/arch/inst/V/vsext.vf8.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vslide1down.vx.yaml b/arch/inst/V/vslide1down.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vslide1up.vx.yaml b/arch/inst/V/vslide1up.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vslidedown.vi.yaml b/arch/inst/V/vslidedown.vi.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vslidedown.vx.yaml b/arch/inst/V/vslidedown.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vslideup.vi.yaml b/arch/inst/V/vslideup.vi.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vslideup.vx.yaml b/arch/inst/V/vslideup.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsll.vi.yaml b/arch/inst/V/vsll.vi.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsll.vv.yaml b/arch/inst/V/vsll.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsll.vx.yaml b/arch/inst/V/vsll.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsm.v.yaml b/arch/inst/V/vsm.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsmul.vv.yaml b/arch/inst/V/vsmul.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsmul.vx.yaml b/arch/inst/V/vsmul.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsoxei16.v.yaml b/arch/inst/V/vsoxei16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsoxei32.v.yaml b/arch/inst/V/vsoxei32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsoxei64.v.yaml b/arch/inst/V/vsoxei64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsoxei8.v.yaml b/arch/inst/V/vsoxei8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsoxseg2ei16.v.yaml b/arch/inst/V/vsoxseg2ei16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsoxseg2ei32.v.yaml b/arch/inst/V/vsoxseg2ei32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsoxseg2ei64.v.yaml b/arch/inst/V/vsoxseg2ei64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsoxseg2ei8.v.yaml b/arch/inst/V/vsoxseg2ei8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsoxseg3ei16.v.yaml b/arch/inst/V/vsoxseg3ei16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsoxseg3ei32.v.yaml b/arch/inst/V/vsoxseg3ei32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsoxseg3ei64.v.yaml b/arch/inst/V/vsoxseg3ei64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsoxseg3ei8.v.yaml b/arch/inst/V/vsoxseg3ei8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsoxseg4ei16.v.yaml b/arch/inst/V/vsoxseg4ei16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsoxseg4ei32.v.yaml b/arch/inst/V/vsoxseg4ei32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsoxseg4ei64.v.yaml b/arch/inst/V/vsoxseg4ei64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsoxseg4ei8.v.yaml b/arch/inst/V/vsoxseg4ei8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsoxseg5ei16.v.yaml b/arch/inst/V/vsoxseg5ei16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsoxseg5ei32.v.yaml b/arch/inst/V/vsoxseg5ei32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsoxseg5ei64.v.yaml b/arch/inst/V/vsoxseg5ei64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsoxseg5ei8.v.yaml b/arch/inst/V/vsoxseg5ei8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsoxseg6ei16.v.yaml b/arch/inst/V/vsoxseg6ei16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsoxseg6ei32.v.yaml b/arch/inst/V/vsoxseg6ei32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsoxseg6ei64.v.yaml b/arch/inst/V/vsoxseg6ei64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsoxseg6ei8.v.yaml b/arch/inst/V/vsoxseg6ei8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsoxseg7ei16.v.yaml b/arch/inst/V/vsoxseg7ei16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsoxseg7ei32.v.yaml b/arch/inst/V/vsoxseg7ei32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsoxseg7ei64.v.yaml b/arch/inst/V/vsoxseg7ei64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsoxseg7ei8.v.yaml b/arch/inst/V/vsoxseg7ei8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsoxseg8ei16.v.yaml b/arch/inst/V/vsoxseg8ei16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsoxseg8ei32.v.yaml b/arch/inst/V/vsoxseg8ei32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsoxseg8ei64.v.yaml b/arch/inst/V/vsoxseg8ei64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsoxseg8ei8.v.yaml b/arch/inst/V/vsoxseg8ei8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsra.vi.yaml b/arch/inst/V/vsra.vi.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsra.vv.yaml b/arch/inst/V/vsra.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsra.vx.yaml b/arch/inst/V/vsra.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsrl.vi.yaml b/arch/inst/V/vsrl.vi.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsrl.vv.yaml b/arch/inst/V/vsrl.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsrl.vx.yaml b/arch/inst/V/vsrl.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsse16.v.yaml b/arch/inst/V/vsse16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsse32.v.yaml b/arch/inst/V/vsse32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsse64.v.yaml b/arch/inst/V/vsse64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsse8.v.yaml b/arch/inst/V/vsse8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsseg2e16.v.yaml b/arch/inst/V/vsseg2e16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsseg2e32.v.yaml b/arch/inst/V/vsseg2e32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsseg2e64.v.yaml b/arch/inst/V/vsseg2e64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsseg2e8.v.yaml b/arch/inst/V/vsseg2e8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsseg3e16.v.yaml b/arch/inst/V/vsseg3e16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsseg3e32.v.yaml b/arch/inst/V/vsseg3e32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsseg3e64.v.yaml b/arch/inst/V/vsseg3e64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsseg3e8.v.yaml b/arch/inst/V/vsseg3e8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsseg4e16.v.yaml b/arch/inst/V/vsseg4e16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsseg4e32.v.yaml b/arch/inst/V/vsseg4e32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsseg4e64.v.yaml b/arch/inst/V/vsseg4e64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsseg4e8.v.yaml b/arch/inst/V/vsseg4e8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsseg5e16.v.yaml b/arch/inst/V/vsseg5e16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsseg5e32.v.yaml b/arch/inst/V/vsseg5e32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsseg5e64.v.yaml b/arch/inst/V/vsseg5e64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsseg5e8.v.yaml b/arch/inst/V/vsseg5e8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsseg6e16.v.yaml b/arch/inst/V/vsseg6e16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsseg6e32.v.yaml b/arch/inst/V/vsseg6e32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsseg6e64.v.yaml b/arch/inst/V/vsseg6e64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsseg6e8.v.yaml b/arch/inst/V/vsseg6e8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsseg7e16.v.yaml b/arch/inst/V/vsseg7e16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsseg7e32.v.yaml b/arch/inst/V/vsseg7e32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsseg7e64.v.yaml b/arch/inst/V/vsseg7e64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsseg7e8.v.yaml b/arch/inst/V/vsseg7e8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsseg8e16.v.yaml b/arch/inst/V/vsseg8e16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsseg8e32.v.yaml b/arch/inst/V/vsseg8e32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsseg8e64.v.yaml b/arch/inst/V/vsseg8e64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsseg8e8.v.yaml b/arch/inst/V/vsseg8e8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vssra.vi.yaml b/arch/inst/V/vssra.vi.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vssra.vv.yaml b/arch/inst/V/vssra.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vssra.vx.yaml b/arch/inst/V/vssra.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vssrl.vi.yaml b/arch/inst/V/vssrl.vi.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vssrl.vv.yaml b/arch/inst/V/vssrl.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vssrl.vx.yaml b/arch/inst/V/vssrl.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vssseg2e16.v.yaml b/arch/inst/V/vssseg2e16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vssseg2e32.v.yaml b/arch/inst/V/vssseg2e32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vssseg2e64.v.yaml b/arch/inst/V/vssseg2e64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vssseg2e8.v.yaml b/arch/inst/V/vssseg2e8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vssseg3e16.v.yaml b/arch/inst/V/vssseg3e16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vssseg3e32.v.yaml b/arch/inst/V/vssseg3e32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vssseg3e64.v.yaml b/arch/inst/V/vssseg3e64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vssseg3e8.v.yaml b/arch/inst/V/vssseg3e8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vssseg4e16.v.yaml b/arch/inst/V/vssseg4e16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vssseg4e32.v.yaml b/arch/inst/V/vssseg4e32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vssseg4e64.v.yaml b/arch/inst/V/vssseg4e64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vssseg4e8.v.yaml b/arch/inst/V/vssseg4e8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vssseg5e16.v.yaml b/arch/inst/V/vssseg5e16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vssseg5e32.v.yaml b/arch/inst/V/vssseg5e32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vssseg5e64.v.yaml b/arch/inst/V/vssseg5e64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vssseg5e8.v.yaml b/arch/inst/V/vssseg5e8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vssseg6e16.v.yaml b/arch/inst/V/vssseg6e16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vssseg6e32.v.yaml b/arch/inst/V/vssseg6e32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vssseg6e64.v.yaml b/arch/inst/V/vssseg6e64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vssseg6e8.v.yaml b/arch/inst/V/vssseg6e8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vssseg7e16.v.yaml b/arch/inst/V/vssseg7e16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vssseg7e32.v.yaml b/arch/inst/V/vssseg7e32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vssseg7e64.v.yaml b/arch/inst/V/vssseg7e64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vssseg7e8.v.yaml b/arch/inst/V/vssseg7e8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vssseg8e16.v.yaml b/arch/inst/V/vssseg8e16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vssseg8e32.v.yaml b/arch/inst/V/vssseg8e32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vssseg8e64.v.yaml b/arch/inst/V/vssseg8e64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vssseg8e8.v.yaml b/arch/inst/V/vssseg8e8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vssub.vv.yaml b/arch/inst/V/vssub.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vssub.vx.yaml b/arch/inst/V/vssub.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vssubu.vv.yaml b/arch/inst/V/vssubu.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vssubu.vx.yaml b/arch/inst/V/vssubu.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsub.vv.yaml b/arch/inst/V/vsub.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsub.vx.yaml b/arch/inst/V/vsub.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsuxei16.v.yaml b/arch/inst/V/vsuxei16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsuxei32.v.yaml b/arch/inst/V/vsuxei32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsuxei64.v.yaml b/arch/inst/V/vsuxei64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsuxei8.v.yaml b/arch/inst/V/vsuxei8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsuxseg2ei16.v.yaml b/arch/inst/V/vsuxseg2ei16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsuxseg2ei32.v.yaml b/arch/inst/V/vsuxseg2ei32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsuxseg2ei64.v.yaml b/arch/inst/V/vsuxseg2ei64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsuxseg2ei8.v.yaml b/arch/inst/V/vsuxseg2ei8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsuxseg3ei16.v.yaml b/arch/inst/V/vsuxseg3ei16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsuxseg3ei32.v.yaml b/arch/inst/V/vsuxseg3ei32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsuxseg3ei64.v.yaml b/arch/inst/V/vsuxseg3ei64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsuxseg3ei8.v.yaml b/arch/inst/V/vsuxseg3ei8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsuxseg4ei16.v.yaml b/arch/inst/V/vsuxseg4ei16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsuxseg4ei32.v.yaml b/arch/inst/V/vsuxseg4ei32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsuxseg4ei64.v.yaml b/arch/inst/V/vsuxseg4ei64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsuxseg4ei8.v.yaml b/arch/inst/V/vsuxseg4ei8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsuxseg5ei16.v.yaml b/arch/inst/V/vsuxseg5ei16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsuxseg5ei32.v.yaml b/arch/inst/V/vsuxseg5ei32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsuxseg5ei64.v.yaml b/arch/inst/V/vsuxseg5ei64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsuxseg5ei8.v.yaml b/arch/inst/V/vsuxseg5ei8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsuxseg6ei16.v.yaml b/arch/inst/V/vsuxseg6ei16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsuxseg6ei32.v.yaml b/arch/inst/V/vsuxseg6ei32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsuxseg6ei64.v.yaml b/arch/inst/V/vsuxseg6ei64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsuxseg6ei8.v.yaml b/arch/inst/V/vsuxseg6ei8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsuxseg7ei16.v.yaml b/arch/inst/V/vsuxseg7ei16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsuxseg7ei32.v.yaml b/arch/inst/V/vsuxseg7ei32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsuxseg7ei64.v.yaml b/arch/inst/V/vsuxseg7ei64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsuxseg7ei8.v.yaml b/arch/inst/V/vsuxseg7ei8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsuxseg8ei16.v.yaml b/arch/inst/V/vsuxseg8ei16.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsuxseg8ei32.v.yaml b/arch/inst/V/vsuxseg8ei32.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsuxseg8ei64.v.yaml b/arch/inst/V/vsuxseg8ei64.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vsuxseg8ei8.v.yaml b/arch/inst/V/vsuxseg8ei8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vwadd.vv.yaml b/arch/inst/V/vwadd.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vwadd.vx.yaml b/arch/inst/V/vwadd.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vwadd.wv.yaml b/arch/inst/V/vwadd.wv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vwadd.wx.yaml b/arch/inst/V/vwadd.wx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vwaddu.vv.yaml b/arch/inst/V/vwaddu.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vwaddu.vx.yaml b/arch/inst/V/vwaddu.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vwaddu.wv.yaml b/arch/inst/V/vwaddu.wv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vwaddu.wx.yaml b/arch/inst/V/vwaddu.wx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vwmacc.vv.yaml b/arch/inst/V/vwmacc.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vwmacc.vx.yaml b/arch/inst/V/vwmacc.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vwmaccsu.vv.yaml b/arch/inst/V/vwmaccsu.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vwmaccsu.vx.yaml b/arch/inst/V/vwmaccsu.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vwmaccu.vv.yaml b/arch/inst/V/vwmaccu.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vwmaccu.vx.yaml b/arch/inst/V/vwmaccu.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vwmaccus.vx.yaml b/arch/inst/V/vwmaccus.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vwmul.vv.yaml b/arch/inst/V/vwmul.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vwmul.vx.yaml b/arch/inst/V/vwmul.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vwmulsu.vv.yaml b/arch/inst/V/vwmulsu.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vwmulsu.vx.yaml b/arch/inst/V/vwmulsu.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vwmulu.vv.yaml b/arch/inst/V/vwmulu.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vwmulu.vx.yaml b/arch/inst/V/vwmulu.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vwredsum.vs.yaml b/arch/inst/V/vwredsum.vs.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vwredsumu.vs.yaml b/arch/inst/V/vwredsumu.vs.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vwsub.vv.yaml b/arch/inst/V/vwsub.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vwsub.vx.yaml b/arch/inst/V/vwsub.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vwsub.wv.yaml b/arch/inst/V/vwsub.wv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vwsub.wx.yaml b/arch/inst/V/vwsub.wx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vwsubu.vv.yaml b/arch/inst/V/vwsubu.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vwsubu.vx.yaml b/arch/inst/V/vwsubu.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vwsubu.wv.yaml b/arch/inst/V/vwsubu.wv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vwsubu.wx.yaml b/arch/inst/V/vwsubu.wx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vxor.vi.yaml b/arch/inst/V/vxor.vi.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vxor.vv.yaml b/arch/inst/V/vxor.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vxor.vx.yaml b/arch/inst/V/vxor.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vzext.vf2.yaml b/arch/inst/V/vzext.vf2.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vzext.vf4.yaml b/arch/inst/V/vzext.vf4.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/V/vzext.vf8.yaml b/arch/inst/V/vzext.vf8.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zabha/amoadd.b.yaml b/arch/inst/Zabha/amoadd.b.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zabha/amoadd.h.yaml b/arch/inst/Zabha/amoadd.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zabha/amoand.b.yaml b/arch/inst/Zabha/amoand.b.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zabha/amoand.h.yaml b/arch/inst/Zabha/amoand.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zabha/amocas.b.yaml b/arch/inst/Zabha/amocas.b.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zabha/amocas.h.yaml b/arch/inst/Zabha/amocas.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zabha/amomax.b.yaml b/arch/inst/Zabha/amomax.b.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zabha/amomax.h.yaml b/arch/inst/Zabha/amomax.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zabha/amomaxu.b.yaml b/arch/inst/Zabha/amomaxu.b.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zabha/amomaxu.h.yaml b/arch/inst/Zabha/amomaxu.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zabha/amomin.b.yaml b/arch/inst/Zabha/amomin.b.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zabha/amomin.h.yaml b/arch/inst/Zabha/amomin.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zabha/amominu.b.yaml b/arch/inst/Zabha/amominu.b.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zabha/amominu.h.yaml b/arch/inst/Zabha/amominu.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zabha/amoor.b.yaml b/arch/inst/Zabha/amoor.b.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zabha/amoor.h.yaml b/arch/inst/Zabha/amoor.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zabha/amoswap.b.yaml b/arch/inst/Zabha/amoswap.b.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zabha/amoswap.h.yaml b/arch/inst/Zabha/amoswap.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zabha/amoxor.b.yaml b/arch/inst/Zabha/amoxor.b.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zabha/amoxor.h.yaml b/arch/inst/Zabha/amoxor.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zacas/amocas.d.yaml b/arch/inst/Zacas/amocas.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zacas/amocas.q.yaml b/arch/inst/Zacas/amocas.q.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zacas/amocas.w.yaml b/arch/inst/Zacas/amocas.w.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zalasr/lb.aq.yaml b/arch/inst/Zalasr/lb.aq.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zalasr/ld.aq.yaml b/arch/inst/Zalasr/ld.aq.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zalasr/lh.aq.yaml b/arch/inst/Zalasr/lh.aq.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zalasr/lw.aq.yaml b/arch/inst/Zalasr/lw.aq.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zalasr/sb.rl.yaml b/arch/inst/Zalasr/sb.rl.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zalasr/sd.rl.yaml b/arch/inst/Zalasr/sd.rl.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zalasr/sh.rl.yaml b/arch/inst/Zalasr/sh.rl.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zalasr/sw.rl.yaml b/arch/inst/Zalasr/sw.rl.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zawrs/wrs.nto.yaml b/arch/inst/Zawrs/wrs.nto.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zawrs/wrs.sto.yaml b/arch/inst/Zawrs/wrs.sto.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zbkb/brev8.yaml b/arch/inst/Zbkb/brev8.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zbkb/unzip.yaml b/arch/inst/Zbkb/unzip.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zbkb/zip.yaml b/arch/inst/Zbkb/zip.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zbkx/xperm4.yaml b/arch/inst/Zbkx/xperm4.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zbkx/xperm8.yaml b/arch/inst/Zbkx/xperm8.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zcb/c.lbu.yaml b/arch/inst/Zcb/c.lbu.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zcb/c.lh.yaml b/arch/inst/Zcb/c.lh.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zcb/c.lhu.yaml b/arch/inst/Zcb/c.lhu.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zcb/c.mul.yaml b/arch/inst/Zcb/c.mul.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zcb/c.not.yaml b/arch/inst/Zcb/c.not.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zcb/c.sb.yaml b/arch/inst/Zcb/c.sb.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zcb/c.sext.b.yaml b/arch/inst/Zcb/c.sext.b.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zcb/c.sext.h.yaml b/arch/inst/Zcb/c.sext.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zcb/c.sh.yaml b/arch/inst/Zcb/c.sh.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zcb/c.zext.b.yaml b/arch/inst/Zcb/c.zext.b.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zcb/c.zext.h.yaml b/arch/inst/Zcb/c.zext.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zcb/c.zext.w.yaml b/arch/inst/Zcb/c.zext.w.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zcmp/cm.mva01s.yaml b/arch/inst/Zcmp/cm.mva01s.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zcmp/cm.mvsa01.yaml b/arch/inst/Zcmp/cm.mvsa01.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zcmp/cm.pop.yaml b/arch/inst/Zcmp/cm.pop.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zcmp/cm.popret.yaml b/arch/inst/Zcmp/cm.popret.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zcmp/cm.popretz.yaml b/arch/inst/Zcmp/cm.popretz.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zcmp/cm.push.yaml b/arch/inst/Zcmp/cm.push.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zfbfmin/fcvt.bf16.s.yaml b/arch/inst/Zfbfmin/fcvt.bf16.s.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zfbfmin/fcvt.s.bf16.yaml b/arch/inst/Zfbfmin/fcvt.s.bf16.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zfh/fadd.h.yaml b/arch/inst/Zfh/fadd.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zfh/fclass.h.yaml b/arch/inst/Zfh/fclass.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zfh/fcvt.d.h.yaml b/arch/inst/Zfh/fcvt.d.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zfh/fcvt.h.d.yaml b/arch/inst/Zfh/fcvt.h.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zfh/fcvt.h.l.yaml b/arch/inst/Zfh/fcvt.h.l.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zfh/fcvt.h.lu.yaml b/arch/inst/Zfh/fcvt.h.lu.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zfh/fcvt.h.s.yaml b/arch/inst/Zfh/fcvt.h.s.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zfh/fcvt.h.w.yaml b/arch/inst/Zfh/fcvt.h.w.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zfh/fcvt.h.wu.yaml b/arch/inst/Zfh/fcvt.h.wu.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zfh/fcvt.l.h.yaml b/arch/inst/Zfh/fcvt.l.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zfh/fcvt.lu.h.yaml b/arch/inst/Zfh/fcvt.lu.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zfh/fcvt.s.h.yaml b/arch/inst/Zfh/fcvt.s.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zfh/fcvt.w.h.yaml b/arch/inst/Zfh/fcvt.w.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zfh/fcvt.wu.h.yaml b/arch/inst/Zfh/fcvt.wu.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zfh/fdiv.h.yaml b/arch/inst/Zfh/fdiv.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zfh/feq.h.yaml b/arch/inst/Zfh/feq.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zfh/fle.h.yaml b/arch/inst/Zfh/fle.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zfh/fleq.h.yaml b/arch/inst/Zfh/fleq.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zfh/flh.yaml b/arch/inst/Zfh/flh.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zfh/fli.h.yaml b/arch/inst/Zfh/fli.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zfh/flt.h.yaml b/arch/inst/Zfh/flt.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zfh/fltq.h.yaml b/arch/inst/Zfh/fltq.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zfh/fmadd.h.yaml b/arch/inst/Zfh/fmadd.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zfh/fmax.h.yaml b/arch/inst/Zfh/fmax.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zfh/fmaxm.h.yaml b/arch/inst/Zfh/fmaxm.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zfh/fmin.h.yaml b/arch/inst/Zfh/fmin.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zfh/fminm.h.yaml b/arch/inst/Zfh/fminm.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zfh/fmsub.h.yaml b/arch/inst/Zfh/fmsub.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zfh/fmul.h.yaml b/arch/inst/Zfh/fmul.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zfh/fmv.h.x.yaml b/arch/inst/Zfh/fmv.h.x.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zfh/fmv.x.h.yaml b/arch/inst/Zfh/fmv.x.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zfh/fnmadd.h.yaml b/arch/inst/Zfh/fnmadd.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zfh/fnmsub.h.yaml b/arch/inst/Zfh/fnmsub.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zfh/fround.h.yaml b/arch/inst/Zfh/fround.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zfh/froundnx.h.yaml b/arch/inst/Zfh/froundnx.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zfh/fsgnj.h.yaml b/arch/inst/Zfh/fsgnj.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zfh/fsgnjn.h.yaml b/arch/inst/Zfh/fsgnjn.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zfh/fsgnjx.h.yaml b/arch/inst/Zfh/fsgnjx.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zfh/fsh.yaml b/arch/inst/Zfh/fsh.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zfh/fsqrt.h.yaml b/arch/inst/Zfh/fsqrt.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zfh/fsub.h.yaml b/arch/inst/Zfh/fsub.h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zicbom/cbo.clean.yaml b/arch/inst/Zicbom/cbo.clean.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zicbom/cbo.flush.yaml b/arch/inst/Zicbom/cbo.flush.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zicbom/cbo.inval.yaml b/arch/inst/Zicbom/cbo.inval.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zicboz/cbo.zero.yaml b/arch/inst/Zicboz/cbo.zero.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zicfilp/lpad.yaml b/arch/inst/Zicfilp/lpad.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zicfiss/ssamoswap.d.yaml b/arch/inst/Zicfiss/ssamoswap.d.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zicfiss/ssamoswap.w.yaml b/arch/inst/Zicfiss/ssamoswap.w.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zicfiss/sspopchk.x1.yaml b/arch/inst/Zicfiss/sspopchk.x1.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zicfiss/sspopchk.x5.yaml b/arch/inst/Zicfiss/sspopchk.x5.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zicfiss/sspush.x1.yaml b/arch/inst/Zicfiss/sspush.x1.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zicfiss/sspush.x5.yaml b/arch/inst/Zicfiss/sspush.x5.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zicfiss/ssrdp.yaml b/arch/inst/Zicfiss/ssrdp.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zicond/czero.eqz.yaml b/arch/inst/Zicond/czero.eqz.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zicond/czero.nez.yaml b/arch/inst/Zicond/czero.nez.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zicsr/csrrc.yaml b/arch/inst/Zicsr/csrrc.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zicsr/csrrci.yaml b/arch/inst/Zicsr/csrrci.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zicsr/csrrs.yaml b/arch/inst/Zicsr/csrrs.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zicsr/csrrsi.yaml b/arch/inst/Zicsr/csrrsi.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zicsr/csrrw.yaml b/arch/inst/Zicsr/csrrw.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zicsr/csrrwi.yaml b/arch/inst/Zicsr/csrrwi.yaml old mode 100644 new mode 100755 index 473236a8b..188dcd4ec --- a/arch/inst/Zicsr/csrrwi.yaml +++ b/arch/inst/Zicsr/csrrwi.yaml @@ -13,7 +13,7 @@ description: | If `rd=x0`, then the instruction shall not read the CSR and shall not cause any of the side effects that might occur on a CSR read. definedBy: Zicsr -assembly: xd, zimm, csr +assembly: xd, imm, csr encoding: match: -----------------101-----1110011 variables: diff --git a/arch/inst/Zifencei/fence.i.yaml b/arch/inst/Zifencei/fence.i.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zimop/mop.r.n.yaml b/arch/inst/Zimop/mop.r.n.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zimop/mop.rr.n.yaml b/arch/inst/Zimop/mop.rr.n.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zk/aes32dsi.yaml b/arch/inst/Zk/aes32dsi.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zk/aes32dsmi.yaml b/arch/inst/Zk/aes32dsmi.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zk/aes32esi.yaml b/arch/inst/Zk/aes32esi.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zk/aes32esmi.yaml b/arch/inst/Zk/aes32esmi.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zk/aes64ds.yaml b/arch/inst/Zk/aes64ds.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zk/aes64dsm.yaml b/arch/inst/Zk/aes64dsm.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zk/aes64es.yaml b/arch/inst/Zk/aes64es.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zk/aes64esm.yaml b/arch/inst/Zk/aes64esm.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zk/aes64im.yaml b/arch/inst/Zk/aes64im.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zk/aes64ks1i.yaml b/arch/inst/Zk/aes64ks1i.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zk/aes64ks2.yaml b/arch/inst/Zk/aes64ks2.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zk/pack.yaml b/arch/inst/Zk/pack.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zk/packh.yaml b/arch/inst/Zk/packh.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zk/packw.yaml b/arch/inst/Zk/packw.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zk/sha256sig0.yaml b/arch/inst/Zk/sha256sig0.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zk/sha256sig1.yaml b/arch/inst/Zk/sha256sig1.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zk/sha256sum0.yaml b/arch/inst/Zk/sha256sum0.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zk/sha256sum1.yaml b/arch/inst/Zk/sha256sum1.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zk/sha512sig0.yaml b/arch/inst/Zk/sha512sig0.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zk/sha512sig0h.yaml b/arch/inst/Zk/sha512sig0h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zk/sha512sig0l.yaml b/arch/inst/Zk/sha512sig0l.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zk/sha512sig1.yaml b/arch/inst/Zk/sha512sig1.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zk/sha512sig1h.yaml b/arch/inst/Zk/sha512sig1h.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zk/sha512sig1l.yaml b/arch/inst/Zk/sha512sig1l.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zk/sha512sum0.yaml b/arch/inst/Zk/sha512sum0.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zk/sha512sum0r.yaml b/arch/inst/Zk/sha512sum0r.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zk/sha512sum1.yaml b/arch/inst/Zk/sha512sum1.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zk/sha512sum1r.yaml b/arch/inst/Zk/sha512sum1r.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zks/sm3p0.yaml b/arch/inst/Zks/sm3p0.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zks/sm3p1.yaml b/arch/inst/Zks/sm3p1.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zks/sm4ed.yaml b/arch/inst/Zks/sm4ed.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zks/sm4ks.yaml b/arch/inst/Zks/sm4ks.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zvbb/vandn.vv.yaml b/arch/inst/Zvbb/vandn.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zvbb/vandn.vx.yaml b/arch/inst/Zvbb/vandn.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zvbb/vbrev.v.yaml b/arch/inst/Zvbb/vbrev.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zvbb/vbrev8.v.yaml b/arch/inst/Zvbb/vbrev8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zvbb/vclz.v.yaml b/arch/inst/Zvbb/vclz.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zvbb/vcpop.v.yaml b/arch/inst/Zvbb/vcpop.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zvbb/vctz.v.yaml b/arch/inst/Zvbb/vctz.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zvbb/vrev8.v.yaml b/arch/inst/Zvbb/vrev8.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zvbb/vrol.vv.yaml b/arch/inst/Zvbb/vrol.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zvbb/vrol.vx.yaml b/arch/inst/Zvbb/vrol.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zvbb/vror.vi.yaml b/arch/inst/Zvbb/vror.vi.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zvbb/vror.vv.yaml b/arch/inst/Zvbb/vror.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zvbb/vror.vx.yaml b/arch/inst/Zvbb/vror.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zvbb/vwsll.vi.yaml b/arch/inst/Zvbb/vwsll.vi.yaml old mode 100644 new mode 100755 index ae3468bc7..27c7799b4 --- a/arch/inst/Zvbb/vwsll.vi.yaml +++ b/arch/inst/Zvbb/vwsll.vi.yaml @@ -16,7 +16,7 @@ encoding: location: 25-25 - name: vs2 location: 24-20 - - name: zimm5 + - name: imm location: 19-15 - name: vd location: 11-7 diff --git a/arch/inst/Zvbb/vwsll.vv.yaml b/arch/inst/Zvbb/vwsll.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zvbb/vwsll.vx.yaml b/arch/inst/Zvbb/vwsll.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zvbc/vclmul.vv.yaml b/arch/inst/Zvbc/vclmul.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zvbc/vclmul.vx.yaml b/arch/inst/Zvbc/vclmul.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zvbc/vclmulh.vv.yaml b/arch/inst/Zvbc/vclmulh.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zvbc/vclmulh.vx.yaml b/arch/inst/Zvbc/vclmulh.vx.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zvfbfmin/vfncvtbf16.f.f.w.yaml b/arch/inst/Zvfbfmin/vfncvtbf16.f.f.w.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zvfbfmin/vfwcvtbf16.f.f.v.yaml b/arch/inst/Zvfbfmin/vfwcvtbf16.f.f.v.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zvfbfwma/vfwmaccbf16.vf.yaml b/arch/inst/Zvfbfwma/vfwmaccbf16.vf.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zvfbfwma/vfwmaccbf16.vv.yaml b/arch/inst/Zvfbfwma/vfwmaccbf16.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zvkg/vghsh.vv.yaml b/arch/inst/Zvkg/vghsh.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zvkg/vgmul.vv.yaml b/arch/inst/Zvkg/vgmul.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zvkn/vaesdf.vs.yaml b/arch/inst/Zvkn/vaesdf.vs.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zvkn/vaesdf.vv.yaml b/arch/inst/Zvkn/vaesdf.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zvkn/vaesdm.vs.yaml b/arch/inst/Zvkn/vaesdm.vs.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zvkn/vaesdm.vv.yaml b/arch/inst/Zvkn/vaesdm.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zvkn/vaesef.vs.yaml b/arch/inst/Zvkn/vaesef.vs.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zvkn/vaesef.vv.yaml b/arch/inst/Zvkn/vaesef.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zvkn/vaesem.vs.yaml b/arch/inst/Zvkn/vaesem.vs.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zvkn/vaesem.vv.yaml b/arch/inst/Zvkn/vaesem.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zvkn/vaeskf1.vi.yaml b/arch/inst/Zvkn/vaeskf1.vi.yaml old mode 100644 new mode 100755 index 89ca6562d..b296fe28a --- a/arch/inst/Zvkn/vaeskf1.vi.yaml +++ b/arch/inst/Zvkn/vaeskf1.vi.yaml @@ -14,7 +14,7 @@ encoding: variables: - name: vs2 location: 24-20 - - name: zimm5 + - name: imm location: 19-15 - name: vd location: 11-7 diff --git a/arch/inst/Zvkn/vaeskf2.vi.yaml b/arch/inst/Zvkn/vaeskf2.vi.yaml old mode 100644 new mode 100755 index ac12aef4f..d66f44612 --- a/arch/inst/Zvkn/vaeskf2.vi.yaml +++ b/arch/inst/Zvkn/vaeskf2.vi.yaml @@ -14,7 +14,7 @@ encoding: variables: - name: vs2 location: 24-20 - - name: zimm5 + - name: imm location: 19-15 - name: vd location: 11-7 diff --git a/arch/inst/Zvkn/vaesz.vs.yaml b/arch/inst/Zvkn/vaesz.vs.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zvkn/vsha2ch.vv.yaml b/arch/inst/Zvkn/vsha2ch.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zvkn/vsha2cl.vv.yaml b/arch/inst/Zvkn/vsha2cl.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zvkn/vsha2ms.vv.yaml b/arch/inst/Zvkn/vsha2ms.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zvks/vsm3c.vi.yaml b/arch/inst/Zvks/vsm3c.vi.yaml old mode 100644 new mode 100755 index 98ed236f7..c93c133f3 --- a/arch/inst/Zvks/vsm3c.vi.yaml +++ b/arch/inst/Zvks/vsm3c.vi.yaml @@ -14,7 +14,7 @@ encoding: variables: - name: vs2 location: 24-20 - - name: zimm5 + - name: imm location: 19-15 - name: vd location: 11-7 diff --git a/arch/inst/Zvks/vsm3me.vv.yaml b/arch/inst/Zvks/vsm3me.vv.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zvks/vsm4k.vi.yaml b/arch/inst/Zvks/vsm4k.vi.yaml old mode 100644 new mode 100755 index b1b897326..01cd22dcc --- a/arch/inst/Zvks/vsm4k.vi.yaml +++ b/arch/inst/Zvks/vsm4k.vi.yaml @@ -14,7 +14,7 @@ encoding: variables: - name: vs2 location: 24-20 - - name: zimm5 + - name: imm location: 19-15 - name: vd location: 11-7 diff --git a/arch/inst/Zvks/vsm4r.vs.yaml b/arch/inst/Zvks/vsm4r.vs.yaml old mode 100644 new mode 100755 diff --git a/arch/inst/Zvks/vsm4r.vv.yaml b/arch/inst/Zvks/vsm4r.vv.yaml old mode 100644 new mode 100755 From 4a2085ed9c8b575b80f5f2dadeb7fc7a272b4aed Mon Sep 17 00:00:00 2001 From: Afonso Oliveira Date: Wed, 12 Mar 2025 10:53:06 +0000 Subject: [PATCH 26/33] Enahnce pairs on immediates Signed-off-by: Afonso Oliveira --- backends/opcodes_maker/yaml_to_json.py | 70 +++++++++++++++++++++----- 1 file changed, 57 insertions(+), 13 deletions(-) diff --git a/backends/opcodes_maker/yaml_to_json.py b/backends/opcodes_maker/yaml_to_json.py index ce9cba157..471f88501 100755 --- a/backends/opcodes_maker/yaml_to_json.py +++ b/backends/opcodes_maker/yaml_to_json.py @@ -83,16 +83,11 @@ def canonical_immediate_names( field names from fieldo. Supports several formats: - - 1. For branch instructions (name starts with 'b') and a 4-part compound format, - e.g. "31|7|30-25|11-8", it extracts the two parts using 'bimm' as the prefix. - - 2. For jump instructions (name starts with 'j') with a 4-part compound format, - e.g. "31|19-12|20|30-21", it extracts the overall high (from part 0) and low (from part 1) - and uses the 'jimm' prefix. - - 3. For a standard composite format "X-Y|Z-W", it compares the two ranges. - 4. For non-composite formats "X-Y", it does a simple lookup. + 1. For branch instructions (name starts with 'b') with a 4‑part compound format. + 2. For jump instructions (name starts with 'j') with a 4‑part compound format. + 3. For composite immediates in the form "X-Y|Z-W". + 4. For composite immediates in the form "X|Z-W" where the high part is a single number. + 5. For non‐composite formats "X-Y". """ parts = location.split("|") if len(parts) == 4 and var_name == "imm" and instr_name.lower().startswith("b"): @@ -101,7 +96,6 @@ def canonical_immediate_names( high_msb = int(parts[0]) high_lsb = int(parts[2].split("-")[-1]) low_msb = int(parts[3].split("-")[0]) - # parts[1] should be a simple number when converting for branch immediates. low_lsb = int(parts[1]) except Exception as e: print( @@ -123,8 +117,6 @@ def canonical_immediate_names( elif len(parts) == 4 and var_name == "imm" and instr_name.lower().startswith("j"): # Jump compound format, e.g.: "31|19-12|20|30-21" try: - # For jump immediates, the canonical field typically covers the whole range. - # We extract the overall high (first part) and the lower end of the second part. high = int(parts[0]) low = int(parts[1].split("-")[1]) except Exception as e: @@ -141,6 +133,58 @@ def canonical_immediate_names( ) return [] return [candidate] + elif "|" in location and len(parts) == 2: + # New branch: composite immediate in the form "X|Z-W" (or "X|Z" if both parts are single numbers) + # For a single number, treat it as "X-X". + high_part = parts[0].strip() + low_part = parts[1].strip() + if "-" not in high_part: + high_range = f"{high_part}-{high_part}" + else: + high_range = high_part + if "-" not in low_part: + low_range = f"{low_part}-{low_part}" + else: + low_range = low_part + try: + high_msb, high_lsb = map(int, high_range.split("-")) + low_msb, low_lsb = map(int, low_range.split("-")) + except Exception as e: + print( + f"Warning: invalid composite immediate format in location '{location}': {e}" + ) + return [] + # Use "bimm" if the instruction starts with b, otherwise keep var_name (e.g. "imm") + prefix = ( + "bimm" + if var_name == "imm" and instr_name.lower().startswith("b") + else var_name + ) + hi_candidate = lookup_immediate_by_range( + prefix, high_msb, high_lsb, instr_name, left_shift=left_shift + ) + lo_candidate = lookup_immediate_by_range( + prefix, low_msb, low_lsb, instr_name, left_shift=left_shift + ) + # NEW: if we found a hi candidate that ends with "hi", look for its complementary lo. + if hi_candidate and hi_candidate.endswith("hi"): + desired_lo = hi_candidate.replace("hi", "lo") + # Check if the desired lo exists in fieldo with the expected msb and lsb. + try: + if ( + desired_lo in fieldo + and fieldo[desired_lo].get("msb") == low_msb + and fieldo[desired_lo].get("lsb") == low_lsb + ): + lo_candidate = desired_lo + except Exception: + pass + if hi_candidate is None or lo_candidate is None: + print( + f"Warning: composite immediate candidate not found in fieldo for {var_name} with location {location}" + ) + return [] + return [hi_candidate, lo_candidate] elif "|" in location: # Standard composite format, e.g.: "31-25|11-7" import re From e69e2ed66df070d094c96c1ec98bd01d37af1d9d Mon Sep 17 00:00:00 2001 From: Afonso Oliveira Date: Thu, 13 Mar 2025 14:40:57 +0000 Subject: [PATCH 27/33] Final approach to script. Signed-off-by: Afonso Oliveira --- backends/opcodes_maker/yaml_to_json.py | 495 ++++++++++++++++++++----- 1 file changed, 406 insertions(+), 89 deletions(-) diff --git a/backends/opcodes_maker/yaml_to_json.py b/backends/opcodes_maker/yaml_to_json.py index 471f88501..63442d044 100755 --- a/backends/opcodes_maker/yaml_to_json.py +++ b/backends/opcodes_maker/yaml_to_json.py @@ -5,9 +5,58 @@ import sys import yaml import json +from re import findall + +# Mapping of instructions to their canonical fields +# needed for compressed instructions since their immediates have a syntax impossible (to the best of my knowledge) to replicate +HARDCODED_FIELDS = { + # Compressed instructions + "c_addi": ["rd_rs1_n0", "c_nzimm6lo", "c_nzimm6hi"], + "c_addi16sp": ["c_nzimm10hi", "c_nzimm10lo"], + "c_addi4spn": ["rd_p", "c_nzuimm10"], + "c_addiw": ["rd_rs1_n0", "c_imm6lo", "c_imm6hi"], + "c_andi": ["rd_rs1_p", "c_imm6hi", "c_imm6lo"], + "c_beqz": ["rs1_p", "c_bimm9lo", "c_bimm9hi"], + "c_bnez": ["rs1_p", "c_bimm9lo", "c_bimm9hi"], + "c_fld": ["rd_p", "rs1_p", "c_uimm8lo", "c_uimm8hi"], + "c_fldsp": ["rd", "c_uimm9sphi", "c_uimm9splo"], + "c_flw": ["rd_p", "rs1_p", "c_uimm7lo", "c_uimm7hi"], + "c_flwsp": ["rd", "c_uimm8sphi", "c_uimm8splo"], + "c_fsd": ["rs1_p", "rs2_p", "c_uimm8lo", "c_uimm8hi"], + "c_fsdsp": ["c_rs2", "c_uimm9sp_s"], + "c_fsw": ["rs1_p", "rs2_p", "c_uimm7lo", "c_uimm7hi"], + "c_fswsp": ["c_rs2", "c_uimm8sp_s"], + "c_j": ["c_imm12"], + "c_jal": ["c_imm12"], + "c_jr": ["rs1_n0"], + "c_lbu": ["rd_p", "rs1_p", "c_uimm2"], + "c_ld": ["rd_p", "rs1_p", "c_uimm8lo", "c_uimm8hi"], + "c_ldsp": ["rd_n0", "c_uimm9sphi", "c_uimm9splo"], + "c_lh": ["rd_p", "rs1_p", "c_uimm1"], + "c_lhu": ["rd_p", "rs1_p", "c_uimm1"], + "c_li": ["rd_n0", "c_imm6lo", "c_imm6hi"], + "c_lui": ["rd_n2", "c_nzimm18hi", "c_nzimm18lo"], + "c_lw": ["rd_p", "rs1_p", "c_uimm7lo", "c_uimm7hi"], + "c_lwsp": ["rd_n0", "c_uimm8sphi", "c_uimm8splo"], + "c_mv": ["rd_n0", "c_rs2_n0"], + "c_nop": ["c_nzimm6hi", "c_nzimm6lo"], + "c_sb": ["rs2_p", "rs1_p", "c_uimm2"], + "c_sd": ["rs1_p", "rs2_p", "c_uimm8hi", "c_uimm8lo"], + "c_sdsp": ["c_rs2", "c_uimm9sp_s"], + "c_sh": ["rs2_p", "rs1_p", "c_uimm1"], + "c_slli": ["rd_rs1_n0", "c_nzuimm6hi", "c_nzuimm6lo"], + "c_srai": ["rd_rs1_p", "c_nzuimm6lo", "c_nzuimm6hi"], + "c_srli": ["rd_rs1_p", "c_nzuimm6lo", "c_nzuimm6hi"], + "c_sw": ["rs1_p", "rs2_p", "c_uimm7lo", "c_uimm7hi"], + "c_swsp": ["c_rs2", "c_uimm8sp_s"], + # CM instructions + "cm_mva01s": ["c_sreg1", "c_sreg2"], + "cm_mvsa01": ["c_sreg1", "c_sreg2"], +} def load_fieldo() -> dict: + """Load the fieldo.json file from the current directory.""" this_dir = os.path.dirname(os.path.abspath(__file__)) json_path = os.path.join(this_dir, "fieldo.json") try: @@ -19,13 +68,13 @@ def load_fieldo() -> dict: raise ValueError(f"Invalid JSON format in fieldo.json") -# Set of register names that need transformation. +# Register names that need special handling reg_names = {"qs1", "qs2", "qd", "fs1", "fs2", "fd", "hs1", "dd", "hd"} fieldo = load_fieldo() def range_size(range_str: str) -> int: - """Compute the bit width from a range string like '31-20'.""" + """Calculate the width of a bit range like '31-20'. Returns 0 if invalid.""" try: end, start = map(int, range_str.split("-")) return abs(end - start) + 1 @@ -34,142 +83,272 @@ def range_size(range_str: str) -> int: def lookup_immediate_by_range( - var_base: str, high: int, low: int, instr_name: str, left_shift: bool = False + var_base: str, + high: int, + low: int, + instr_name: str, + left_shift: bool = False, + hi: int = 0, + lo: int = 0, ) -> Union[str, None]: """ - Look up a canonical field name from the fieldo mapping based on the bit range. - - When multiple candidates are found and left_shift is True, prefer the one that - starts with 'bimm'. + Find a canonical field name in fieldo that matches the bit range. + + Args: + var_base: Base variable name (e.g., 'imm', 'bimm') + high: Most significant bit position + low: Least significant bit position + instr_name: Name of the instruction for context + left_shift: Flag for left-shift operations + hi: Set to 1 when looking for high portion of a field + lo: Set to 1 when looking for low portion of a field + + Returns: + Canonical field name or None if not found """ + # Search for fields that match the bit range candidates = [] for key, field in fieldo.items(): if field.get("msb") == high and field.get("lsb") == low: + # Handle standard immediates if var_base == "imm": if "imm" in key and not key.startswith("c_") and key != "csr": candidates.append(key) - elif var_base.startswith("c_"): + # Handle compressed immediates + elif var_base.startswith("c_") or var_base.startswith("c_imm"): if key.startswith("c_"): candidates.append(key) + # Handle other field types else: if key.startswith(var_base): candidates.append(key) + + # Filter by hi/lo flags if requested + if hi == 1: + candidates = [c for c in candidates if "hi" in c.lower()] + if lo == 1: + candidates = [c for c in candidates if "lo" in c.lower()] + + print( + f"DEBUG: lookup_immediate_by_range: var_base='{var_base}', high={high}, low={low}, hi_flag={hi}, lo_flag={lo}, candidates={candidates}" + ) + + # Pick the best candidate if candidates: if len(candidates) == 1: return candidates[0] else: + # Apply heuristics for multiple candidates if left_shift: - # If left_shift flag is set, check for a candidate starting with 'bimm' for cand in candidates: if cand.startswith("bimm"): return cand + + # Prefer "zimm" for imm fields if var_base == "imm" and "zimm" in candidates: return "zimm" + + # Instruction-specific preferences lower_instr = instr_name.lower() for cand in candidates: if lower_instr.startswith("j") and cand.startswith("jimm"): return cand if lower_instr.startswith("b") and cand.startswith("bimm"): return cand + + # Default to first candidate return candidates[0] + return None def canonical_immediate_names( - var_name: str, location: str, instr_name: str, left_shift: bool = False + var_name: str, + location: str, + instr_name: str, + left_shift: bool = False, + not_val: Union[str, None] = None, ) -> List[str]: """ - Given a YAML immediate variable (its base name and location), return a list of canonical - field names from fieldo. - - Supports several formats: - 1. For branch instructions (name starts with 'b') with a 4‑part compound format. - 2. For jump instructions (name starts with 'j') with a 4‑part compound format. - 3. For composite immediates in the form "X-Y|Z-W". - 4. For composite immediates in the form "X|Z-W" where the high part is a single number. - 5. For non‐composite formats "X-Y". + Map YAML immediate variables to canonical field names. + + This function handles various immediate encoding formats: + - 4-part branch immediates + - 4-part jump immediates + - 3-part compressed store/load immediates + - 2-part immediates + - Standard composite formats + - Single range immediates + + Returns list of canonical field names or empty list if not found. """ + print( + f"DEBUG: canonical_immediate_names: var_name='{var_name}', location='{location}', instr_name='{instr_name}', not_val='{not_val}'" + ) parts = location.split("|") + + # Handle 4-part branch immediates (format: 31|7|30-25|11-8) if len(parts) == 4 and var_name == "imm" and instr_name.lower().startswith("b"): - # Branch compound format, e.g.: "31|7|30-25|11-8" try: high_msb = int(parts[0]) high_lsb = int(parts[2].split("-")[-1]) low_msb = int(parts[3].split("-")[0]) low_lsb = int(parts[1]) except Exception as e: - print( - f"Warning: invalid branch compound immediate format in location '{location}': {e}" - ) + print(f"DEBUG: Error parsing 4-part branch composite immediate: {e}") return [] + hi_candidate = lookup_immediate_by_range( "bimm", high_msb, high_lsb, instr_name, left_shift=left_shift ) lo_candidate = lookup_immediate_by_range( "bimm", low_msb, low_lsb, instr_name, left_shift=left_shift ) + + print( + f"DEBUG: 4-part branch composite: hi_candidate='{hi_candidate}', lo_candidate='{lo_candidate}'" + ) if hi_candidate is None or lo_candidate is None: print( - f"Warning: composite immediate candidate not found in fieldo for {var_name} with location {location}" + f"DEBUG: 4-part branch composite immediate candidate not found for location '{location}'" ) return [] return [hi_candidate, lo_candidate] + + # Handle 4-part jump immediates (jal instruction) elif len(parts) == 4 and var_name == "imm" and instr_name.lower().startswith("j"): - # Jump compound format, e.g.: "31|19-12|20|30-21" try: high = int(parts[0]) low = int(parts[1].split("-")[1]) except Exception as e: - print( - f"Warning: invalid jump compound immediate format in location '{location}': {e}" - ) + print(f"DEBUG: Error parsing 4-part jump composite immediate: {e}") return [] + candidate = lookup_immediate_by_range( "jimm", high, low, instr_name, left_shift=left_shift ) + print(f"DEBUG: 4-part jump composite: candidate='{candidate}'") if candidate is None: + return [] + return [candidate] + + # Handle 3-part compressed store/load immediates (e.g., c.sw format: 5|12-10|6) + elif "|" in location and len(parts) == 3: + try: + # The three parts need special adjustments based on encoding format + low_msb = int(parts[0].strip()) - 1 # e.g., 5 becomes 4 + low_lsb = int(parts[2].strip()) - 4 # e.g., 6 becomes 2 + high_range = parts[1].strip() # e.g., "12-10" + high_msb, high_lsb = map(int, high_range.split("-")) + except Exception as e: + print(f"DEBUG: Error parsing 3-part composite immediate: {e}") + return [] + + print( + f"DEBUG: 3-part composite immediate: computed high=({high_msb},{high_lsb}), computed low=({low_msb},{low_lsb})" + ) + + # Use c_uimm prefix for c_sw/c_sd/c_ld instructions + if ( + instr_name.lower().startswith("c_sw") + or instr_name.lower().startswith("c_sd") + or instr_name.lower().startswith("c_ld") + ): + prefix = "c_uimm" print( - f"Warning: jump compound immediate candidate not found in fieldo for {var_name} with location {location}" + "DEBUG: Instruction starts with 'c_sw/c_sd/c_ld', using prefix 'c_uimm'" + ) + else: + prefix = var_name + print( + f"DEBUG: Using default prefix '{prefix}' for 3-part composite immediate" + ) + + hi_candidate = lookup_immediate_by_range( + prefix, high_msb, high_lsb, instr_name, left_shift=left_shift, hi=1 + ) + lo_candidate = lookup_immediate_by_range( + prefix, low_msb, low_lsb, instr_name, left_shift=left_shift, lo=1 + ) + + print( + f"DEBUG: 3-part composite immediate: hi_candidate='{hi_candidate}', lo_candidate='{lo_candidate}'" + ) + + # Try to find matching high/low pairs + if hi_candidate and hi_candidate.endswith("hi"): + desired_lo = hi_candidate.replace("hi", "lo") + print(f"DEBUG: Attempting to use paired lower candidate: '{desired_lo}'") + try: + if ( + desired_lo in fieldo + and fieldo[desired_lo].get("msb") == low_msb + and fieldo[desired_lo].get("lsb") == low_lsb + ): + lo_candidate = desired_lo + print(f"DEBUG: Paired lower candidate found: '{lo_candidate}'") + except Exception: + pass + + if hi_candidate is None or lo_candidate is None: + print( + f"DEBUG: 3-part composite immediate candidate not found for location '{location}'" ) return [] - return [candidate] + + # Return low part first (important for store instructions) + return [lo_candidate, hi_candidate] + + # Handle 2-part composite immediates (format: X|Y or X|Y-Z) elif "|" in location and len(parts) == 2: - # New branch: composite immediate in the form "X|Z-W" (or "X|Z" if both parts are single numbers) - # For a single number, treat it as "X-X". high_part = parts[0].strip() low_part = parts[1].strip() + + # Convert single-bit locations to range format if "-" not in high_part: high_range = f"{high_part}-{high_part}" else: high_range = high_part + if "-" not in low_part: low_range = f"{low_part}-{low_part}" else: low_range = low_part + try: high_msb, high_lsb = map(int, high_range.split("-")) low_msb, low_lsb = map(int, low_range.split("-")) except Exception as e: - print( - f"Warning: invalid composite immediate format in location '{location}': {e}" - ) + print(f"DEBUG: Error parsing 2-part composite immediate ranges: {e}") return [] - # Use "bimm" if the instruction starts with b, otherwise keep var_name (e.g. "imm") - prefix = ( - "bimm" - if var_name == "imm" and instr_name.lower().startswith("b") - else var_name + + print( + f"DEBUG: 2-part composite immediate parts: high=({high_msb},{high_lsb}), low=({low_msb},{low_lsb})" ) + + # Use bimm prefix for branch instructions + if var_name == "imm" and instr_name.lower().startswith("b"): + prefix = "bimm" + print("DEBUG: Branch immediate, using prefix 'bimm'") + else: + prefix = var_name + print(f"DEBUG: Using default prefix '{prefix}'") + hi_candidate = lookup_immediate_by_range( prefix, high_msb, high_lsb, instr_name, left_shift=left_shift ) lo_candidate = lookup_immediate_by_range( prefix, low_msb, low_lsb, instr_name, left_shift=left_shift ) - # NEW: if we found a hi candidate that ends with "hi", look for its complementary lo. + + print( + f"DEBUG: 2-part composite immediate: hi_candidate='{hi_candidate}', lo_candidate='{lo_candidate}'" + ) + + # Look for paired hi/lo fields if hi_candidate and hi_candidate.endswith("hi"): desired_lo = hi_candidate.replace("hi", "lo") - # Check if the desired lo exists in fieldo with the expected msb and lsb. + print(f"DEBUG: Attempting to use paired lower candidate: '{desired_lo}'") try: if ( desired_lo in fieldo @@ -177,18 +356,20 @@ def canonical_immediate_names( and fieldo[desired_lo].get("lsb") == low_lsb ): lo_candidate = desired_lo + print(f"DEBUG: Paired lower candidate found: '{lo_candidate}'") except Exception: pass + if hi_candidate is None or lo_candidate is None: print( - f"Warning: composite immediate candidate not found in fieldo for {var_name} with location {location}" + f"DEBUG: 2-part composite immediate candidate not found for location '{location}'" ) return [] + return [hi_candidate, lo_candidate] - elif "|" in location: - # Standard composite format, e.g.: "31-25|11-7" - import re + # Handle standard format X-Y|Z-W with regex + elif "|" in location: match = re.match(r"(\d+-\d+)\|(\d+-\d+)", location) if match: high_range = match.group(1) @@ -197,10 +378,9 @@ def canonical_immediate_names( high_msb, high_lsb = map(int, high_range.split("-")) low_msb, low_lsb = map(int, low_range.split("-")) except Exception as e: - print( - f"Warning: invalid composite immediate range in location '{location}': {e}" - ) + print(f"DEBUG: Error parsing standard composite ranges: {e}") return [] + prefix = ( "bimm" if var_name == "imm" and instr_name.lower().startswith("b") @@ -212,40 +392,53 @@ def canonical_immediate_names( lo_candidate = lookup_immediate_by_range( prefix, low_msb, low_lsb, instr_name, left_shift=left_shift ) + + print( + f"DEBUG: standard composite: hi_candidate='{hi_candidate}', lo_candidate='{lo_candidate}'" + ) if hi_candidate is None or lo_candidate is None: - print( - f"Warning: composite immediate candidate not found in fieldo for {var_name} with location {location}" - ) return [] return [hi_candidate, lo_candidate] - else: - # Fallback: try to extract numbers and use the first two. - from re import findall + else: + # Fall back to number extraction nums = list(map(int, findall(r"\d+", location))) if len(nums) >= 2: high, low = nums[0], nums[1] candidate = lookup_immediate_by_range( var_name, high, low, instr_name, left_shift=left_shift ) + print(f"DEBUG: fallback composite: candidate='{candidate}'") if candidate: return [candidate] print( - f"Warning: composite immediate candidate not found in fieldo for {var_name} with location {location}" + f"DEBUG: Fallback composite immediate candidate not found for location '{location}'" ) return [] + + # Handle simple range format X-Y or single bit X else: - # Non-composite format: "X-Y" try: - high, low = map(int, location.split("-")) + # Handle single bit cases (e.g., "26" instead of "26-26") + if isinstance(location, int) or ( + isinstance(location, str) and location.isdigit() + ): + high = low = int(location) + else: + high, low = map(int, location.split("-")) except Exception: - print(f"Warning: invalid immediate location {location} for {var_name}") + print( + f"DEBUG: Invalid immediate location '{location}' for variable '{var_name}'" + ) return [] + candidate = lookup_immediate_by_range( var_name, high, low, instr_name, left_shift=left_shift ) + print(f"DEBUG: non-composite: candidate='{candidate}'") + if candidate: - # If candidate ends with "hi", attempt to get its complementary lower-part. + # For "hi" fields, try to find the corresponding "lo" field if candidate.endswith("hi"): lo_candidate = lookup_immediate_by_range( var_name, 11, 7, instr_name, left_shift=left_shift @@ -255,48 +448,76 @@ def canonical_immediate_names( return [candidate] else: print( - f"Warning: No fieldo canonical name for {var_name} with range {location}" + f"DEBUG: No fieldo canonical name for {var_name} with range {location}" ) return [] def GetVariables(vars: List[Dict[str, str]], instr_name: str = "") -> List[str]: """ - Process the YAML variable definitions and return a list of variable names as expected by the generator. - - - For registers (names in reg_names), the first character is replaced with "r". - - For "shamt", the field is renamed to "shamtw" if its width is 5 or "shamtd" if 6. - - For immediates (variable names "imm", "simm", "zimm", "jimm", or those starting with "c_"), - the canonical names are determined strictly via fieldo. - Only names found in fieldo are used. - - If an immediate has a 'left_shift' attribute equal to 1, that flag is passed on to influence candidate selection. - - For any other variable field, it is added only if it exists in fieldo. - - Special case: if the YAML variable is "hs1", it is renamed to "rs1". + Extract field names from YAML variables. + + This processes variables from YAML and maps them to canonical field names + using various heuristics for different field types. """ + # Use hardcoded fields for certain instructions + if instr_name in HARDCODED_FIELDS: + print( + f"Using hardcoded fields for {instr_name}: {HARDCODED_FIELDS[instr_name]}" + ) + return HARDCODED_FIELDS[instr_name] + result = [] for var in reversed(vars): - # Normalize variable name to lowercase - var_name = var["name"].lower() + var_name = str(var["name"]).lower().strip() - location = var.get("location", "") - if ( - var_name in reg_names - or var_name.startswith("q") - or var_name.startswith("f") - ): - result.append("r" + var_name[1:]) - elif var_name == "shamt": + # Get location and handle integer values + location_val = var.get("location", "") + if isinstance(location_val, int): + # Convert single integer to range format + location = f"{location_val}-{location_val}" + else: + location = str(location_val).strip() + + # SPECIAL CASE: Always preserve original "fm" field name + # This prevents it from being replaced with "rm" due to bit position overlap + if var_name == "fm": + result.append("fm") + continue + + # Handle register pair naming with slash + if "/" in var_name: + if var_name == "rd/rs1": + not_val = var.get("not", None) + if not_val is not None and str(not_val).strip() == "0": + result.append("rd_rs1_n0") + else: + result.append("rd_rs1_p") + else: + result.append(var_name) + continue + + # Handle shift amount fields + if var_name == "shamt": size = range_size(location) if size == 5: result.append("shamtw") elif size == 6: result.append("shamtd") else: - result.append(var_name) - elif var_name in ("imm", "simm", "zimm", "jimm") or var_name.startswith("c_"): + result.append("shamt") + continue + + # Handle immediate fields + if var_name in ("imm", "simm", "zimm", "jimm") or var_name.startswith("c_"): left_shift_flag = var.get("left_shift", 0) == 1 + not_val = var.get("not", None) canon_names = canonical_immediate_names( - var_name, location, instr_name, left_shift=left_shift_flag + var_name, + location, + instr_name, + left_shift=left_shift_flag, + not_val=not_val, ) if canon_names: result.extend(canon_names) @@ -304,18 +525,98 @@ def GetVariables(vars: List[Dict[str, str]], instr_name: str = "") -> List[str]: print( f"Warning: Skipping immediate field {var_name} with location {location} since no fieldo mapping was found." ) + result.append(var_name) # Add the original name as fallback + continue + + # Handle special register names + if ( + var_name in reg_names + or var_name.startswith("q") + or var_name.startswith("f") + ): + result.append("r" + var_name[1:]) + continue + + # Handle general variables with bit positions + if location: + try: + msb, lsb = map(int, location.split("-")) + candidate = None + + # Try exact match first + if var_name in fieldo: + field = fieldo[var_name] + if field.get("msb") == msb and field.get("lsb") == lsb: + candidate = var_name + + # Try compressed variants + if candidate is None: + prefix = "c_" + var_name + comp_candidates = [ + key + for key, field in fieldo.items() + if key.startswith(prefix) + and field.get("msb") == msb + and field.get("lsb") == lsb + ] + if comp_candidates: + candidate = comp_candidates[0] + + # Try name-based matches + if candidate is None: + all_candidates = [ + key + for key, field in fieldo.items() + if var_name in key + and field.get("msb") == msb + and field.get("lsb") == lsb + ] + if all_candidates: + # Prefer exact match, then _p variants, then first match + for cand in all_candidates: + if cand == var_name: + candidate = cand + break + if candidate is None: + for cand in all_candidates: + if "_p" in cand: + candidate = cand + break + if candidate is None: + candidate = all_candidates[0] + + if candidate: + result.append(candidate) + elif var_name in fieldo: + result.append(var_name) + else: + # Add original name as fallback + result.append(var_name) + print( + f"Warning: Variable field '{var_name}' not found in fieldo mapping with location {location}; using original name" + ) + except Exception as e: + # Add original name when parsing fails + result.append(var_name) + print( + f"Warning: Could not parse location '{location}' for variable '{var_name}': {e}" + ) else: - # Only add the variable if it exists in fieldo. + # Handle variables without location if var_name in fieldo: result.append(var_name) else: + # Add original name as fallback + result.append(var_name) print( - f"Warning: Variable field '{var_name}' not found in fieldo mapping; skipping." + f"Warning: Variable field '{var_name}' not found in fieldo mapping; using original name" ) + return result def GetMatchMask(bit_str: str) -> str: + """Convert a bit string with dashes to hex, replacing dashes with zeros.""" new_bit_str = "" for bit in bit_str: if bit == "-": @@ -326,6 +627,7 @@ def GetMatchMask(bit_str: str) -> str: def GetMask(bit_str: str) -> str: + """Create a mask from a bit string, with 1's for bits and 0's for dashes.""" mask_str = "" for bit in bit_str: if bit == "-": @@ -336,7 +638,7 @@ def GetMask(bit_str: str) -> str: def process_extension(ext: Union[str, dict]) -> List[str]: - """Process an extension definition into a list of strings.""" + """Extract extension names from YAML definedBy field.""" if isinstance(ext, str): return [ext.lower()] elif isinstance(ext, dict): @@ -359,7 +661,7 @@ def process_extension(ext: Union[str, dict]) -> List[str]: def GetExtensions(ext: Union[str, dict, list], base: str) -> List[str]: - """Get a list of extensions with proper prefix.""" + """Get a list of extensions with RV prefix and remove duplicates.""" prefix = f"rv{base}_" final_extensions = [] @@ -377,6 +679,7 @@ def GetExtensions(ext: Union[str, dict, list], base: str) -> List[str]: def GetEncodings(enc: str) -> str: + """Pad encoding to 32 bits if needed.""" n = len(enc) if n < 32: return "-" * (32 - n) + enc @@ -384,10 +687,12 @@ def GetEncodings(enc: str) -> str: def convert(file_dir: str, json_out: Dict[str, Any]) -> None: + """Process a single YAML file into JSON format.""" try: with open(file_dir) as file: data = yaml.safe_load(file) + # Skip non-instruction files if data["kind"] != "instruction": print( f"Error: File {file_dir} has kind '{data['kind']}', expected 'instruction'. Skipping." @@ -398,17 +703,19 @@ def convert(file_dir: str, json_out: Dict[str, Any]) -> None: print(instr_name) encodings = data["encoding"] - # USE RV_64 + # Handle RV64 variant if present rv64_flag = False if "RV64" in encodings: encodings = encodings["RV64"] rv64_flag = True enc_match = GetEncodings(encodings["match"]) + # Extract variable fields var_names = [] if "variables" in encodings: var_names = GetVariables(encodings["variables"], instr_name) + # Extract extension information extensions = [] prefix = "" if rv64_flag: @@ -424,9 +731,11 @@ def convert(file_dir: str, json_out: Dict[str, Any]) -> None: ) extensions = [] + # Calculate match and mask values match_hex = GetMatchMask(enc_match) match_mask = GetMask(enc_match) + # Store instruction data json_out[instr_name] = { "encoding": enc_match, "variable_fields": var_names, @@ -440,6 +749,7 @@ def convert(file_dir: str, json_out: Dict[str, Any]) -> None: def find_yaml_files(path: str) -> List[str]: + """Find all YAML files in a directory tree.""" yaml_files = [] for root, _, files in os.walk(path): for file in files: @@ -449,6 +759,7 @@ def find_yaml_files(path: str) -> List[str]: def main(): + """Main entry point for the script.""" parser = argparse.ArgumentParser( description="Convert YAML instruction files to JSON" ) @@ -457,13 +768,16 @@ def main(): args = parser.parse_args() + # Validate input directory if not os.path.isdir(args.input_dir): parser.error(f"Input directory does not exist: {args.input_dir}") + # Find YAML files yaml_files = find_yaml_files(args.input_dir) if not yaml_files: parser.error(f"No YAML files found in {args.input_dir}") + # Process files inst_dict = {} output_file = os.path.join(args.output_dir, "instr_dict.json") @@ -475,7 +789,10 @@ def main(): print(f"Warning: Failed to process {yaml_file}: {str(e)}") continue + # Sort alphabetically insts_sorted = {inst: inst_dict[inst] for inst in sorted(inst_dict)} + + # Write output with open(output_file, "w") as outfile: json.dump(insts_sorted, outfile, indent=4) From a9f13e0777211917980121dcf324940828cdbd07 Mon Sep 17 00:00:00 2001 From: Afonso Oliveira Date: Thu, 13 Mar 2025 14:30:25 +0000 Subject: [PATCH 28/33] Fix C extension rd/rs1. Signed-off-by: Afonso Oliveira --- arch/inst/C/c.add.yaml | 3 ++- arch/inst/C/c.addi.yaml | 2 +- arch/inst/C/c.addiw.yaml | 2 +- arch/inst/C/c.addw.yaml | 2 +- arch/inst/C/c.and.yaml | 2 +- arch/inst/C/c.andi.yaml | 2 +- arch/inst/C/c.or.yaml | 2 +- arch/inst/C/c.slli.yaml | 2 +- arch/inst/C/c.srai.yaml | 2 +- arch/inst/C/c.srli.yaml | 2 +- arch/inst/C/c.sub.yaml | 2 +- arch/inst/C/c.subw.yaml | 2 +- arch/inst/C/c.xor.yaml | 2 +- 13 files changed, 14 insertions(+), 13 deletions(-) diff --git a/arch/inst/C/c.add.yaml b/arch/inst/C/c.add.yaml index c2249358b..1c0729a87 100755 --- a/arch/inst/C/c.add.yaml +++ b/arch/inst/C/c.add.yaml @@ -17,8 +17,9 @@ encoding: variables: - name: rs2 location: 6-2 - - name: rd + - name: rd/rs1 location: 11-7 + not: 0 access: s: always u: always diff --git a/arch/inst/C/c.addi.yaml b/arch/inst/C/c.addi.yaml index 6263e0c8f..e4245ea0f 100755 --- a/arch/inst/C/c.addi.yaml +++ b/arch/inst/C/c.addi.yaml @@ -20,7 +20,7 @@ encoding: - name: imm location: 12|6-2 not: 0 - - name: rd + - name: rd/rs1 location: 11-7 not: 0 access: diff --git a/arch/inst/C/c.addiw.yaml b/arch/inst/C/c.addiw.yaml index d1c409584..13c358740 100755 --- a/arch/inst/C/c.addiw.yaml +++ b/arch/inst/C/c.addiw.yaml @@ -20,7 +20,7 @@ encoding: variables: - name: imm location: 12|6-2 - - name: rd + - name: rd/rs1 location: 11-7 not: 0 access: diff --git a/arch/inst/C/c.addw.yaml b/arch/inst/C/c.addw.yaml index a78674a86..12aee8ecc 100755 --- a/arch/inst/C/c.addw.yaml +++ b/arch/inst/C/c.addw.yaml @@ -19,7 +19,7 @@ encoding: variables: - name: rs2 location: 4-2 - - name: rd + - name: rd/rs1 location: 9-7 access: s: always diff --git a/arch/inst/C/c.and.yaml b/arch/inst/C/c.and.yaml index ba2648f0b..addc3db3d 100755 --- a/arch/inst/C/c.and.yaml +++ b/arch/inst/C/c.and.yaml @@ -18,7 +18,7 @@ encoding: variables: - name: rs2 location: 4-2 - - name: rd + - name: rd/rs1 location: 9-7 access: s: always diff --git a/arch/inst/C/c.andi.yaml b/arch/inst/C/c.andi.yaml index 3ef3ac838..358a37088 100755 --- a/arch/inst/C/c.andi.yaml +++ b/arch/inst/C/c.andi.yaml @@ -18,7 +18,7 @@ encoding: variables: - name: imm location: 12|6-2 - - name: rd + - name: rd/rs1 location: 9-7 access: s: always diff --git a/arch/inst/C/c.or.yaml b/arch/inst/C/c.or.yaml index b14f348c1..1a98f13f1 100755 --- a/arch/inst/C/c.or.yaml +++ b/arch/inst/C/c.or.yaml @@ -18,7 +18,7 @@ encoding: variables: - name: rs2 location: 4-2 - - name: rd + - name: rd/rs1 location: 9-7 access: s: always diff --git a/arch/inst/C/c.slli.yaml b/arch/inst/C/c.slli.yaml index 01dad72a7..4c356a00f 100755 --- a/arch/inst/C/c.slli.yaml +++ b/arch/inst/C/c.slli.yaml @@ -18,7 +18,7 @@ encoding: variables: - name: shamt location: 12|6-2 - - name: rd + - name: rd/rs1 location: 11-7 not: 0 access: diff --git a/arch/inst/C/c.srai.yaml b/arch/inst/C/c.srai.yaml index 0aa734184..cbbc5f4fc 100755 --- a/arch/inst/C/c.srai.yaml +++ b/arch/inst/C/c.srai.yaml @@ -19,7 +19,7 @@ encoding: variables: - name: shamt location: 12|6-2 - - name: rd + - name: rd/rs1 location: 9-7 access: s: always diff --git a/arch/inst/C/c.srli.yaml b/arch/inst/C/c.srli.yaml index 86112f61c..b60054a8c 100755 --- a/arch/inst/C/c.srli.yaml +++ b/arch/inst/C/c.srli.yaml @@ -19,7 +19,7 @@ encoding: variables: - name: shamt location: 12|6-2 - - name: rd + - name: rd/rs1 location: 9-7 access: s: always diff --git a/arch/inst/C/c.sub.yaml b/arch/inst/C/c.sub.yaml index 32757173a..5e6f97e4d 100755 --- a/arch/inst/C/c.sub.yaml +++ b/arch/inst/C/c.sub.yaml @@ -18,7 +18,7 @@ encoding: variables: - name: rs2 location: 4-2 - - name: rd + - name: rd/rs1 location: 9-7 access: s: always diff --git a/arch/inst/C/c.subw.yaml b/arch/inst/C/c.subw.yaml index 36ecadfe5..82c781076 100755 --- a/arch/inst/C/c.subw.yaml +++ b/arch/inst/C/c.subw.yaml @@ -19,7 +19,7 @@ encoding: variables: - name: rs2 location: 4-2 - - name: rd + - name: rd/rs1 location: 9-7 access: s: always diff --git a/arch/inst/C/c.xor.yaml b/arch/inst/C/c.xor.yaml index 5700c7b63..3139a5e03 100755 --- a/arch/inst/C/c.xor.yaml +++ b/arch/inst/C/c.xor.yaml @@ -18,7 +18,7 @@ encoding: variables: - name: rs2 location: 4-2 - - name: rd + - name: rd/rs1 location: 9-7 access: s: always From 6424ed43a515b376bba77a170dba76f37541f53c Mon Sep 17 00:00:00 2001 From: Afonso Oliveira Date: Thu, 13 Mar 2025 15:02:56 +0000 Subject: [PATCH 29/33] Fix file mode on YAML files --- arch/inst/A/amoadd.d.yaml | 0 arch/inst/A/amoadd.w.yaml | 0 arch/inst/A/amoand.d.yaml | 0 arch/inst/A/amoand.w.yaml | 0 arch/inst/A/amomax.d.yaml | 0 arch/inst/A/amomax.w.yaml | 0 arch/inst/A/amomaxu.d.yaml | 0 arch/inst/A/amomaxu.w.yaml | 0 arch/inst/A/amomin.d.yaml | 0 arch/inst/A/amomin.w.yaml | 0 arch/inst/A/amominu.d.yaml | 0 arch/inst/A/amominu.w.yaml | 0 arch/inst/A/amoor.d.yaml | 0 arch/inst/A/amoor.w.yaml | 0 arch/inst/A/amoswap.d.yaml | 0 arch/inst/A/amoswap.w.yaml | 0 arch/inst/A/amoxor.d.yaml | 0 arch/inst/A/amoxor.w.yaml | 0 arch/inst/A/lr.d.yaml | 0 arch/inst/A/lr.w.yaml | 0 arch/inst/A/sc.d.yaml | 0 arch/inst/A/sc.w.yaml | 0 arch/inst/B/add.uw.yaml | 0 arch/inst/B/andn.yaml | 0 arch/inst/B/bclr.yaml | 0 arch/inst/B/bclri.yaml | 0 arch/inst/B/bext.yaml | 0 arch/inst/B/bexti.yaml | 0 arch/inst/B/binv.yaml | 0 arch/inst/B/binvi.yaml | 0 arch/inst/B/bset.yaml | 0 arch/inst/B/bseti.yaml | 0 arch/inst/B/clmul.yaml | 0 arch/inst/B/clmulh.yaml | 0 arch/inst/B/clmulr.yaml | 0 arch/inst/B/clz.yaml | 0 arch/inst/B/clzw.yaml | 0 arch/inst/B/cpop.yaml | 0 arch/inst/B/cpopw.yaml | 0 arch/inst/B/ctz.yaml | 0 arch/inst/B/ctzw.yaml | 0 arch/inst/B/max.yaml | 0 arch/inst/B/maxu.yaml | 0 arch/inst/B/min.yaml | 0 arch/inst/B/minu.yaml | 0 arch/inst/B/orc.b.yaml | 0 arch/inst/B/orn.yaml | 0 arch/inst/B/rev8.yaml | 0 arch/inst/B/rol.yaml | 0 arch/inst/B/rolw.yaml | 0 arch/inst/B/ror.yaml | 0 arch/inst/B/rori.yaml | 0 arch/inst/B/roriw.yaml | 0 arch/inst/B/rorw.yaml | 0 arch/inst/B/sext.b.yaml | 0 arch/inst/B/sext.h.yaml | 0 arch/inst/B/sh1add.uw.yaml | 0 arch/inst/B/sh1add.yaml | 0 arch/inst/B/sh2add.uw.yaml | 0 arch/inst/B/sh2add.yaml | 0 arch/inst/B/sh3add.uw.yaml | 0 arch/inst/B/sh3add.yaml | 0 arch/inst/B/slli.uw.yaml | 0 arch/inst/B/xnor.yaml | 0 arch/inst/B/zext.h.yaml | 0 arch/inst/C/c.add.yaml | 0 arch/inst/C/c.addi.yaml | 0 arch/inst/C/c.addi16sp.yaml | 0 arch/inst/C/c.addi4spn.yaml | 0 arch/inst/C/c.addiw.yaml | 0 arch/inst/C/c.addw.yaml | 0 arch/inst/C/c.and.yaml | 0 arch/inst/C/c.andi.yaml | 0 arch/inst/C/c.beqz.yaml | 0 arch/inst/C/c.bnez.yaml | 0 arch/inst/C/c.ebreak.yaml | 0 arch/inst/C/c.fld.yaml | 0 arch/inst/C/c.fldsp.yaml | 0 arch/inst/C/c.flw.yaml | 0 arch/inst/C/c.flwsp.yaml | 0 arch/inst/C/c.fsd.yaml | 0 arch/inst/C/c.fsdsp.yaml | 0 arch/inst/C/c.fsw.yaml | 0 arch/inst/C/c.fswsp.yaml | 0 arch/inst/C/c.j.yaml | 0 arch/inst/C/c.jal.yaml | 0 arch/inst/C/c.jalr.yaml | 0 arch/inst/C/c.jr.yaml | 0 arch/inst/C/c.ld.yaml | 0 arch/inst/C/c.ldsp.yaml | 0 arch/inst/C/c.li.yaml | 0 arch/inst/C/c.lui.yaml | 0 arch/inst/C/c.lw.yaml | 0 arch/inst/C/c.lwsp.yaml | 0 arch/inst/C/c.mv.yaml | 0 arch/inst/C/c.nop.yaml | 0 arch/inst/C/c.or.yaml | 0 arch/inst/C/c.sd.yaml | 0 arch/inst/C/c.sdsp.yaml | 0 arch/inst/C/c.slli.yaml | 0 arch/inst/C/c.srai.yaml | 0 arch/inst/C/c.srli.yaml | 0 arch/inst/C/c.sub.yaml | 0 arch/inst/C/c.subw.yaml | 0 arch/inst/C/c.sw.yaml | 0 arch/inst/C/c.swsp.yaml | 0 arch/inst/C/c.xor.yaml | 0 arch/inst/D/fadd.d.yaml | 0 arch/inst/D/fclass.d.yaml | 0 arch/inst/D/fcvt.d.l.yaml | 0 arch/inst/D/fcvt.d.lu.yaml | 0 arch/inst/D/fcvt.d.s.yaml | 0 arch/inst/D/fcvt.d.w.yaml | 0 arch/inst/D/fcvt.d.wu.yaml | 0 arch/inst/D/fcvt.l.d.yaml | 0 arch/inst/D/fcvt.lu.d.yaml | 0 arch/inst/D/fcvt.s.d.yaml | 0 arch/inst/D/fcvt.w.d.yaml | 0 arch/inst/D/fcvt.wu.d.yaml | 0 arch/inst/D/fcvtmod.w.d.yaml | 0 arch/inst/D/fdiv.d.yaml | 0 arch/inst/D/feq.d.yaml | 0 arch/inst/D/fld.yaml | 0 arch/inst/D/fle.d.yaml | 0 arch/inst/D/fleq.d.yaml | 0 arch/inst/D/fli.d.yaml | 0 arch/inst/D/flt.d.yaml | 0 arch/inst/D/fltq.d.yaml | 0 arch/inst/D/fmadd.d.yaml | 0 arch/inst/D/fmax.d.yaml | 0 arch/inst/D/fmaxm.d.yaml | 0 arch/inst/D/fmin.d.yaml | 0 arch/inst/D/fminm.d.yaml | 0 arch/inst/D/fmsub.d.yaml | 0 arch/inst/D/fmul.d.yaml | 0 arch/inst/D/fmv.d.x.yaml | 0 arch/inst/D/fmv.x.d.yaml | 0 arch/inst/D/fmvh.x.d.yaml | 0 arch/inst/D/fmvp.d.x.yaml | 0 arch/inst/D/fnmadd.d.yaml | 0 arch/inst/D/fnmsub.d.yaml | 0 arch/inst/D/fround.d.yaml | 0 arch/inst/D/froundnx.d.yaml | 0 arch/inst/D/fsd.yaml | 0 arch/inst/D/fsgnj.d.yaml | 0 arch/inst/D/fsgnjn.d.yaml | 0 arch/inst/D/fsgnjx.d.yaml | 0 arch/inst/D/fsqrt.d.yaml | 0 arch/inst/D/fsub.d.yaml | 0 arch/inst/F/fadd.s.yaml | 0 arch/inst/F/fclass.s.yaml | 0 arch/inst/F/fcvt.l.s.yaml | 0 arch/inst/F/fcvt.lu.s.yaml | 0 arch/inst/F/fcvt.s.l.yaml | 0 arch/inst/F/fcvt.s.lu.yaml | 0 arch/inst/F/fcvt.s.w.yaml | 0 arch/inst/F/fcvt.s.wu.yaml | 0 arch/inst/F/fcvt.w.s.yaml | 0 arch/inst/F/fcvt.wu.s.yaml | 0 arch/inst/F/fdiv.s.yaml | 0 arch/inst/F/feq.s.yaml | 0 arch/inst/F/fle.s.yaml | 0 arch/inst/F/fleq.s.yaml | 0 arch/inst/F/fli.s.yaml | 0 arch/inst/F/flt.s.yaml | 0 arch/inst/F/fltq.s.yaml | 0 arch/inst/F/flw.yaml | 0 arch/inst/F/fmadd.s.yaml | 0 arch/inst/F/fmax.s.yaml | 0 arch/inst/F/fmaxm.s.yaml | 0 arch/inst/F/fmin.s.yaml | 0 arch/inst/F/fminm.s.yaml | 0 arch/inst/F/fmsub.s.yaml | 0 arch/inst/F/fmul.s.yaml | 0 arch/inst/F/fmv.w.x.yaml | 0 arch/inst/F/fmv.x.w.yaml | 0 arch/inst/F/fnmadd.s.yaml | 0 arch/inst/F/fnmsub.s.yaml | 0 arch/inst/F/fround.s.yaml | 0 arch/inst/F/froundnx.s.yaml | 0 arch/inst/F/fsgnj.s.yaml | 0 arch/inst/F/fsgnjn.s.yaml | 0 arch/inst/F/fsgnjx.s.yaml | 0 arch/inst/F/fsqrt.s.yaml | 0 arch/inst/F/fsub.s.yaml | 0 arch/inst/F/fsw.yaml | 0 arch/inst/H/hfence.gvma.yaml | 0 arch/inst/H/hfence.vvma.yaml | 0 arch/inst/H/hlv.b.yaml | 0 arch/inst/H/hlv.bu.yaml | 0 arch/inst/H/hlv.d.yaml | 0 arch/inst/H/hlv.h.yaml | 0 arch/inst/H/hlv.hu.yaml | 0 arch/inst/H/hlv.w.yaml | 0 arch/inst/H/hlv.wu.yaml | 0 arch/inst/H/hlvx.hu.yaml | 0 arch/inst/H/hlvx.wu.yaml | 0 arch/inst/H/hsv.b.yaml | 0 arch/inst/H/hsv.d.yaml | 0 arch/inst/H/hsv.h.yaml | 0 arch/inst/H/hsv.w.yaml | 0 arch/inst/I/add.yaml | 0 arch/inst/I/addi.yaml | 0 arch/inst/I/addiw.yaml | 0 arch/inst/I/addw.yaml | 0 arch/inst/I/and.yaml | 0 arch/inst/I/andi.yaml | 0 arch/inst/I/auipc.yaml | 0 arch/inst/I/beq.yaml | 0 arch/inst/I/bge.yaml | 0 arch/inst/I/bgeu.yaml | 0 arch/inst/I/blt.yaml | 0 arch/inst/I/bltu.yaml | 0 arch/inst/I/bne.yaml | 0 arch/inst/I/ebreak.yaml | 0 arch/inst/I/ecall.yaml | 0 arch/inst/I/fence.yaml | 0 arch/inst/I/jal.yaml | 0 arch/inst/I/jalr.yaml | 0 arch/inst/I/lb.yaml | 0 arch/inst/I/lbu.yaml | 0 arch/inst/I/ld.yaml | 0 arch/inst/I/lh.yaml | 0 arch/inst/I/lhu.yaml | 0 arch/inst/I/lui.yaml | 0 arch/inst/I/lw.yaml | 0 arch/inst/I/lwu.yaml | 0 arch/inst/I/mret.yaml | 0 arch/inst/I/or.yaml | 0 arch/inst/I/ori.yaml | 0 arch/inst/I/sb.yaml | 0 arch/inst/I/sd.yaml | 0 arch/inst/I/sh.yaml | 0 arch/inst/I/sll.yaml | 0 arch/inst/I/slli.yaml | 0 arch/inst/I/slliw.yaml | 0 arch/inst/I/sllw.yaml | 0 arch/inst/I/slt.yaml | 0 arch/inst/I/slti.yaml | 0 arch/inst/I/sltiu.yaml | 0 arch/inst/I/sltu.yaml | 0 arch/inst/I/sra.yaml | 0 arch/inst/I/srai.yaml | 0 arch/inst/I/sraiw.yaml | 0 arch/inst/I/sraw.yaml | 0 arch/inst/I/srl.yaml | 0 arch/inst/I/srli.yaml | 0 arch/inst/I/srliw.yaml | 0 arch/inst/I/srlw.yaml | 0 arch/inst/I/sub.yaml | 0 arch/inst/I/subw.yaml | 0 arch/inst/I/sw.yaml | 0 arch/inst/I/wfi.yaml | 0 arch/inst/I/xor.yaml | 0 arch/inst/I/xori.yaml | 0 arch/inst/M/div.yaml | 0 arch/inst/M/divu.yaml | 0 arch/inst/M/divuw.yaml | 0 arch/inst/M/divw.yaml | 0 arch/inst/M/mul.yaml | 0 arch/inst/M/mulh.yaml | 0 arch/inst/M/mulhsu.yaml | 0 arch/inst/M/mulhu.yaml | 0 arch/inst/M/mulw.yaml | 0 arch/inst/M/rem.yaml | 0 arch/inst/M/remu.yaml | 0 arch/inst/M/remuw.yaml | 0 arch/inst/M/remw.yaml | 0 arch/inst/Q/fadd.q.yaml | 0 arch/inst/Q/fclass.q.yaml | 0 arch/inst/Q/fcvt.d.q.yaml | 0 arch/inst/Q/fcvt.h.q.yaml | 0 arch/inst/Q/fcvt.l.q.yaml | 0 arch/inst/Q/fcvt.lu.q.yaml | 0 arch/inst/Q/fcvt.q.d.yaml | 0 arch/inst/Q/fcvt.q.h.yaml | 0 arch/inst/Q/fcvt.q.l.yaml | 0 arch/inst/Q/fcvt.q.lu.yaml | 0 arch/inst/Q/fcvt.q.s.yaml | 0 arch/inst/Q/fcvt.q.w.yaml | 0 arch/inst/Q/fcvt.q.wu.yaml | 0 arch/inst/Q/fcvt.s.q.yaml | 0 arch/inst/Q/fcvt.w.q.yaml | 0 arch/inst/Q/fcvt.wu.q.yaml | 0 arch/inst/Q/fdiv.q.yaml | 0 arch/inst/Q/feq.q.yaml | 0 arch/inst/Q/fle.q.yaml | 0 arch/inst/Q/fleq.q.yaml | 0 arch/inst/Q/fli.q.yaml | 0 arch/inst/Q/flq.yaml | 0 arch/inst/Q/flt.q.yaml | 0 arch/inst/Q/fltq.q.yaml | 0 arch/inst/Q/fmadd.q.yaml | 0 arch/inst/Q/fmax.q.yaml | 0 arch/inst/Q/fmaxm.q.yaml | 0 arch/inst/Q/fmin.q.yaml | 0 arch/inst/Q/fminm.q.yaml | 0 arch/inst/Q/fmsub.q.yaml | 0 arch/inst/Q/fmul.q.yaml | 0 arch/inst/Q/fmvh.x.q.yaml | 0 arch/inst/Q/fmvp.q.x.yaml | 0 arch/inst/Q/fnmadd.q.yaml | 0 arch/inst/Q/fnmsub.q.yaml | 0 arch/inst/Q/fround.q.yaml | 0 arch/inst/Q/froundnx.q.yaml | 0 arch/inst/Q/fsgnj.q.yaml | 0 arch/inst/Q/fsgnjn.q.yaml | 0 arch/inst/Q/fsgnjx.q.yaml | 0 arch/inst/Q/fsq.yaml | 0 arch/inst/Q/fsqrt.q.yaml | 0 arch/inst/Q/fsub.q.yaml | 0 arch/inst/S/sfence.vma.yaml | 0 arch/inst/S/sret.yaml | 0 arch/inst/Sdext/dret.yaml | 0 arch/inst/Smdbltrp/sctrclr.yaml | 0 arch/inst/Smrnmi/mnret.yaml | 0 arch/inst/Svinval/hinval.gvma.yaml | 0 arch/inst/Svinval/hinval.vvma.yaml | 0 arch/inst/Svinval/sfence.inval.ir.yaml | 0 arch/inst/Svinval/sfence.w.inval.yaml | 0 arch/inst/Svinval/sinval.vma.yaml | 0 arch/inst/V/vaadd.vv.yaml | 0 arch/inst/V/vaadd.vx.yaml | 0 arch/inst/V/vaaddu.vv.yaml | 0 arch/inst/V/vaaddu.vx.yaml | 0 arch/inst/V/vadc.vim.yaml | 0 arch/inst/V/vadc.vvm.yaml | 0 arch/inst/V/vadc.vxm.yaml | 0 arch/inst/V/vadd.vi.yaml | 0 arch/inst/V/vadd.vv.yaml | 0 arch/inst/V/vadd.vx.yaml | 0 arch/inst/V/vand.vi.yaml | 0 arch/inst/V/vand.vv.yaml | 0 arch/inst/V/vand.vx.yaml | 0 arch/inst/V/vasub.vv.yaml | 0 arch/inst/V/vasub.vx.yaml | 0 arch/inst/V/vasubu.vv.yaml | 0 arch/inst/V/vasubu.vx.yaml | 0 arch/inst/V/vcompress.vm.yaml | 0 arch/inst/V/vcpop.m.yaml | 0 arch/inst/V/vdiv.vv.yaml | 0 arch/inst/V/vdiv.vx.yaml | 0 arch/inst/V/vdivu.vv.yaml | 0 arch/inst/V/vdivu.vx.yaml | 0 arch/inst/V/vfadd.vf.yaml | 0 arch/inst/V/vfadd.vv.yaml | 0 arch/inst/V/vfclass.v.yaml | 0 arch/inst/V/vfcvt.f.x.v.yaml | 0 arch/inst/V/vfcvt.f.xu.v.yaml | 0 arch/inst/V/vfcvt.rtz.x.f.v.yaml | 0 arch/inst/V/vfcvt.rtz.xu.f.v.yaml | 0 arch/inst/V/vfcvt.x.f.v.yaml | 0 arch/inst/V/vfcvt.xu.f.v.yaml | 0 arch/inst/V/vfdiv.vf.yaml | 0 arch/inst/V/vfdiv.vv.yaml | 0 arch/inst/V/vfirst.m.yaml | 0 arch/inst/V/vfmacc.vf.yaml | 0 arch/inst/V/vfmacc.vv.yaml | 0 arch/inst/V/vfmadd.vf.yaml | 0 arch/inst/V/vfmadd.vv.yaml | 0 arch/inst/V/vfmax.vf.yaml | 0 arch/inst/V/vfmax.vv.yaml | 0 arch/inst/V/vfmerge.vfm.yaml | 0 arch/inst/V/vfmin.vf.yaml | 0 arch/inst/V/vfmin.vv.yaml | 0 arch/inst/V/vfmsac.vf.yaml | 0 arch/inst/V/vfmsac.vv.yaml | 0 arch/inst/V/vfmsub.vf.yaml | 0 arch/inst/V/vfmsub.vv.yaml | 0 arch/inst/V/vfmul.vf.yaml | 0 arch/inst/V/vfmul.vv.yaml | 0 arch/inst/V/vfmv.f.s.yaml | 0 arch/inst/V/vfmv.s.f.yaml | 0 arch/inst/V/vfmv.v.f.yaml | 0 arch/inst/V/vfncvt.f.f.w.yaml | 0 arch/inst/V/vfncvt.f.x.w.yaml | 0 arch/inst/V/vfncvt.f.xu.w.yaml | 0 arch/inst/V/vfncvt.rod.f.f.w.yaml | 0 arch/inst/V/vfncvt.rtz.x.f.w.yaml | 0 arch/inst/V/vfncvt.rtz.xu.f.w.yaml | 0 arch/inst/V/vfncvt.x.f.w.yaml | 0 arch/inst/V/vfncvt.xu.f.w.yaml | 0 arch/inst/V/vfnmacc.vf.yaml | 0 arch/inst/V/vfnmacc.vv.yaml | 0 arch/inst/V/vfnmadd.vf.yaml | 0 arch/inst/V/vfnmadd.vv.yaml | 0 arch/inst/V/vfnmsac.vf.yaml | 0 arch/inst/V/vfnmsac.vv.yaml | 0 arch/inst/V/vfnmsub.vf.yaml | 0 arch/inst/V/vfnmsub.vv.yaml | 0 arch/inst/V/vfrdiv.vf.yaml | 0 arch/inst/V/vfrec7.v.yaml | 0 arch/inst/V/vfredmax.vs.yaml | 0 arch/inst/V/vfredmin.vs.yaml | 0 arch/inst/V/vfredosum.vs.yaml | 0 arch/inst/V/vfredusum.vs.yaml | 0 arch/inst/V/vfrsqrt7.v.yaml | 0 arch/inst/V/vfrsub.vf.yaml | 0 arch/inst/V/vfsgnj.vf.yaml | 0 arch/inst/V/vfsgnj.vv.yaml | 0 arch/inst/V/vfsgnjn.vf.yaml | 0 arch/inst/V/vfsgnjn.vv.yaml | 0 arch/inst/V/vfsgnjx.vf.yaml | 0 arch/inst/V/vfsgnjx.vv.yaml | 0 arch/inst/V/vfslide1down.vf.yaml | 0 arch/inst/V/vfslide1up.vf.yaml | 0 arch/inst/V/vfsqrt.v.yaml | 0 arch/inst/V/vfsub.vf.yaml | 0 arch/inst/V/vfsub.vv.yaml | 0 arch/inst/V/vfwadd.vf.yaml | 0 arch/inst/V/vfwadd.vv.yaml | 0 arch/inst/V/vfwadd.wf.yaml | 0 arch/inst/V/vfwadd.wv.yaml | 0 arch/inst/V/vfwcvt.f.f.v.yaml | 0 arch/inst/V/vfwcvt.f.x.v.yaml | 0 arch/inst/V/vfwcvt.f.xu.v.yaml | 0 arch/inst/V/vfwcvt.rtz.x.f.v.yaml | 0 arch/inst/V/vfwcvt.rtz.xu.f.v.yaml | 0 arch/inst/V/vfwcvt.x.f.v.yaml | 0 arch/inst/V/vfwcvt.xu.f.v.yaml | 0 arch/inst/V/vfwmacc.vf.yaml | 0 arch/inst/V/vfwmacc.vv.yaml | 0 arch/inst/V/vfwmsac.vf.yaml | 0 arch/inst/V/vfwmsac.vv.yaml | 0 arch/inst/V/vfwmul.vf.yaml | 0 arch/inst/V/vfwmul.vv.yaml | 0 arch/inst/V/vfwnmacc.vf.yaml | 0 arch/inst/V/vfwnmacc.vv.yaml | 0 arch/inst/V/vfwnmsac.vf.yaml | 0 arch/inst/V/vfwnmsac.vv.yaml | 0 arch/inst/V/vfwredosum.vs.yaml | 0 arch/inst/V/vfwredusum.vs.yaml | 0 arch/inst/V/vfwsub.vf.yaml | 0 arch/inst/V/vfwsub.vv.yaml | 0 arch/inst/V/vfwsub.wf.yaml | 0 arch/inst/V/vfwsub.wv.yaml | 0 arch/inst/V/vid.v.yaml | 0 arch/inst/V/viota.m.yaml | 0 arch/inst/V/vl1re16.v.yaml | 0 arch/inst/V/vl1re32.v.yaml | 0 arch/inst/V/vl1re64.v.yaml | 0 arch/inst/V/vl1re8.v.yaml | 0 arch/inst/V/vl2re16.v.yaml | 0 arch/inst/V/vl2re32.v.yaml | 0 arch/inst/V/vl2re64.v.yaml | 0 arch/inst/V/vl2re8.v.yaml | 0 arch/inst/V/vl4re16.v.yaml | 0 arch/inst/V/vl4re32.v.yaml | 0 arch/inst/V/vl4re64.v.yaml | 0 arch/inst/V/vl4re8.v.yaml | 0 arch/inst/V/vl8re16.v.yaml | 0 arch/inst/V/vl8re32.v.yaml | 0 arch/inst/V/vl8re64.v.yaml | 0 arch/inst/V/vl8re8.v.yaml | 0 arch/inst/V/vle16.v.yaml | 0 arch/inst/V/vle16ff.v.yaml | 0 arch/inst/V/vle32.v.yaml | 0 arch/inst/V/vle32ff.v.yaml | 0 arch/inst/V/vle64.v.yaml | 0 arch/inst/V/vle64ff.v.yaml | 0 arch/inst/V/vle8.v.yaml | 0 arch/inst/V/vle8ff.v.yaml | 0 arch/inst/V/vlm.v.yaml | 0 arch/inst/V/vloxei16.v.yaml | 0 arch/inst/V/vloxei32.v.yaml | 0 arch/inst/V/vloxei64.v.yaml | 0 arch/inst/V/vloxei8.v.yaml | 0 arch/inst/V/vloxseg2ei16.v.yaml | 0 arch/inst/V/vloxseg2ei32.v.yaml | 0 arch/inst/V/vloxseg2ei64.v.yaml | 0 arch/inst/V/vloxseg2ei8.v.yaml | 0 arch/inst/V/vloxseg3ei16.v.yaml | 0 arch/inst/V/vloxseg3ei32.v.yaml | 0 arch/inst/V/vloxseg3ei64.v.yaml | 0 arch/inst/V/vloxseg3ei8.v.yaml | 0 arch/inst/V/vloxseg4ei16.v.yaml | 0 arch/inst/V/vloxseg4ei32.v.yaml | 0 arch/inst/V/vloxseg4ei64.v.yaml | 0 arch/inst/V/vloxseg4ei8.v.yaml | 0 arch/inst/V/vloxseg5ei16.v.yaml | 0 arch/inst/V/vloxseg5ei32.v.yaml | 0 arch/inst/V/vloxseg5ei64.v.yaml | 0 arch/inst/V/vloxseg5ei8.v.yaml | 0 arch/inst/V/vloxseg6ei16.v.yaml | 0 arch/inst/V/vloxseg6ei32.v.yaml | 0 arch/inst/V/vloxseg6ei64.v.yaml | 0 arch/inst/V/vloxseg6ei8.v.yaml | 0 arch/inst/V/vloxseg7ei16.v.yaml | 0 arch/inst/V/vloxseg7ei32.v.yaml | 0 arch/inst/V/vloxseg7ei64.v.yaml | 0 arch/inst/V/vloxseg7ei8.v.yaml | 0 arch/inst/V/vloxseg8ei16.v.yaml | 0 arch/inst/V/vloxseg8ei32.v.yaml | 0 arch/inst/V/vloxseg8ei64.v.yaml | 0 arch/inst/V/vloxseg8ei8.v.yaml | 0 arch/inst/V/vlse16.v.yaml | 0 arch/inst/V/vlse32.v.yaml | 0 arch/inst/V/vlse64.v.yaml | 0 arch/inst/V/vlse8.v.yaml | 0 arch/inst/V/vlseg2e16.v.yaml | 0 arch/inst/V/vlseg2e16ff.v.yaml | 0 arch/inst/V/vlseg2e32.v.yaml | 0 arch/inst/V/vlseg2e32ff.v.yaml | 0 arch/inst/V/vlseg2e64.v.yaml | 0 arch/inst/V/vlseg2e64ff.v.yaml | 0 arch/inst/V/vlseg2e8.v.yaml | 0 arch/inst/V/vlseg2e8ff.v.yaml | 0 arch/inst/V/vlseg3e16.v.yaml | 0 arch/inst/V/vlseg3e16ff.v.yaml | 0 arch/inst/V/vlseg3e32.v.yaml | 0 arch/inst/V/vlseg3e32ff.v.yaml | 0 arch/inst/V/vlseg3e64.v.yaml | 0 arch/inst/V/vlseg3e64ff.v.yaml | 0 arch/inst/V/vlseg3e8.v.yaml | 0 arch/inst/V/vlseg3e8ff.v.yaml | 0 arch/inst/V/vlseg4e16.v.yaml | 0 arch/inst/V/vlseg4e16ff.v.yaml | 0 arch/inst/V/vlseg4e32.v.yaml | 0 arch/inst/V/vlseg4e32ff.v.yaml | 0 arch/inst/V/vlseg4e64.v.yaml | 0 arch/inst/V/vlseg4e64ff.v.yaml | 0 arch/inst/V/vlseg4e8.v.yaml | 0 arch/inst/V/vlseg4e8ff.v.yaml | 0 arch/inst/V/vlseg5e16.v.yaml | 0 arch/inst/V/vlseg5e16ff.v.yaml | 0 arch/inst/V/vlseg5e32.v.yaml | 0 arch/inst/V/vlseg5e32ff.v.yaml | 0 arch/inst/V/vlseg5e64.v.yaml | 0 arch/inst/V/vlseg5e64ff.v.yaml | 0 arch/inst/V/vlseg5e8.v.yaml | 0 arch/inst/V/vlseg5e8ff.v.yaml | 0 arch/inst/V/vlseg6e16.v.yaml | 0 arch/inst/V/vlseg6e16ff.v.yaml | 0 arch/inst/V/vlseg6e32.v.yaml | 0 arch/inst/V/vlseg6e32ff.v.yaml | 0 arch/inst/V/vlseg6e64.v.yaml | 0 arch/inst/V/vlseg6e64ff.v.yaml | 0 arch/inst/V/vlseg6e8.v.yaml | 0 arch/inst/V/vlseg6e8ff.v.yaml | 0 arch/inst/V/vlseg7e16.v.yaml | 0 arch/inst/V/vlseg7e16ff.v.yaml | 0 arch/inst/V/vlseg7e32.v.yaml | 0 arch/inst/V/vlseg7e32ff.v.yaml | 0 arch/inst/V/vlseg7e64.v.yaml | 0 arch/inst/V/vlseg7e64ff.v.yaml | 0 arch/inst/V/vlseg7e8.v.yaml | 0 arch/inst/V/vlseg7e8ff.v.yaml | 0 arch/inst/V/vlseg8e16.v.yaml | 0 arch/inst/V/vlseg8e16ff.v.yaml | 0 arch/inst/V/vlseg8e32.v.yaml | 0 arch/inst/V/vlseg8e32ff.v.yaml | 0 arch/inst/V/vlseg8e64.v.yaml | 0 arch/inst/V/vlseg8e64ff.v.yaml | 0 arch/inst/V/vlseg8e8.v.yaml | 0 arch/inst/V/vlseg8e8ff.v.yaml | 0 arch/inst/V/vlsseg2e16.v.yaml | 0 arch/inst/V/vlsseg2e32.v.yaml | 0 arch/inst/V/vlsseg2e64.v.yaml | 0 arch/inst/V/vlsseg2e8.v.yaml | 0 arch/inst/V/vlsseg3e16.v.yaml | 0 arch/inst/V/vlsseg3e32.v.yaml | 0 arch/inst/V/vlsseg3e64.v.yaml | 0 arch/inst/V/vlsseg3e8.v.yaml | 0 arch/inst/V/vlsseg4e16.v.yaml | 0 arch/inst/V/vlsseg4e32.v.yaml | 0 arch/inst/V/vlsseg4e64.v.yaml | 0 arch/inst/V/vlsseg4e8.v.yaml | 0 arch/inst/V/vlsseg5e16.v.yaml | 0 arch/inst/V/vlsseg5e32.v.yaml | 0 arch/inst/V/vlsseg5e64.v.yaml | 0 arch/inst/V/vlsseg5e8.v.yaml | 0 arch/inst/V/vlsseg6e16.v.yaml | 0 arch/inst/V/vlsseg6e32.v.yaml | 0 arch/inst/V/vlsseg6e64.v.yaml | 0 arch/inst/V/vlsseg6e8.v.yaml | 0 arch/inst/V/vlsseg7e16.v.yaml | 0 arch/inst/V/vlsseg7e32.v.yaml | 0 arch/inst/V/vlsseg7e64.v.yaml | 0 arch/inst/V/vlsseg7e8.v.yaml | 0 arch/inst/V/vlsseg8e16.v.yaml | 0 arch/inst/V/vlsseg8e32.v.yaml | 0 arch/inst/V/vlsseg8e64.v.yaml | 0 arch/inst/V/vlsseg8e8.v.yaml | 0 arch/inst/V/vluxei16.v.yaml | 0 arch/inst/V/vluxei32.v.yaml | 0 arch/inst/V/vluxei64.v.yaml | 0 arch/inst/V/vluxei8.v.yaml | 0 arch/inst/V/vluxseg2ei16.v.yaml | 0 arch/inst/V/vluxseg2ei32.v.yaml | 0 arch/inst/V/vluxseg2ei64.v.yaml | 0 arch/inst/V/vluxseg2ei8.v.yaml | 0 arch/inst/V/vluxseg3ei16.v.yaml | 0 arch/inst/V/vluxseg3ei32.v.yaml | 0 arch/inst/V/vluxseg3ei64.v.yaml | 0 arch/inst/V/vluxseg3ei8.v.yaml | 0 arch/inst/V/vluxseg4ei16.v.yaml | 0 arch/inst/V/vluxseg4ei32.v.yaml | 0 arch/inst/V/vluxseg4ei64.v.yaml | 0 arch/inst/V/vluxseg4ei8.v.yaml | 0 arch/inst/V/vluxseg5ei16.v.yaml | 0 arch/inst/V/vluxseg5ei32.v.yaml | 0 arch/inst/V/vluxseg5ei64.v.yaml | 0 arch/inst/V/vluxseg5ei8.v.yaml | 0 arch/inst/V/vluxseg6ei16.v.yaml | 0 arch/inst/V/vluxseg6ei32.v.yaml | 0 arch/inst/V/vluxseg6ei64.v.yaml | 0 arch/inst/V/vluxseg6ei8.v.yaml | 0 arch/inst/V/vluxseg7ei16.v.yaml | 0 arch/inst/V/vluxseg7ei32.v.yaml | 0 arch/inst/V/vluxseg7ei64.v.yaml | 0 arch/inst/V/vluxseg7ei8.v.yaml | 0 arch/inst/V/vluxseg8ei16.v.yaml | 0 arch/inst/V/vluxseg8ei32.v.yaml | 0 arch/inst/V/vluxseg8ei64.v.yaml | 0 arch/inst/V/vluxseg8ei8.v.yaml | 0 arch/inst/V/vmacc.vv.yaml | 0 arch/inst/V/vmacc.vx.yaml | 0 arch/inst/V/vmadc.vi.yaml | 0 arch/inst/V/vmadc.vim.yaml | 0 arch/inst/V/vmadc.vv.yaml | 0 arch/inst/V/vmadc.vvm.yaml | 0 arch/inst/V/vmadc.vx.yaml | 0 arch/inst/V/vmadc.vxm.yaml | 0 arch/inst/V/vmadd.vv.yaml | 0 arch/inst/V/vmadd.vx.yaml | 0 arch/inst/V/vmand.mm.yaml | 0 arch/inst/V/vmandn.mm.yaml | 0 arch/inst/V/vmax.vv.yaml | 0 arch/inst/V/vmax.vx.yaml | 0 arch/inst/V/vmaxu.vv.yaml | 0 arch/inst/V/vmaxu.vx.yaml | 0 arch/inst/V/vmerge.vim.yaml | 0 arch/inst/V/vmerge.vvm.yaml | 0 arch/inst/V/vmerge.vxm.yaml | 0 arch/inst/V/vmfeq.vf.yaml | 0 arch/inst/V/vmfeq.vv.yaml | 0 arch/inst/V/vmfge.vf.yaml | 0 arch/inst/V/vmfgt.vf.yaml | 0 arch/inst/V/vmfle.vf.yaml | 0 arch/inst/V/vmfle.vv.yaml | 0 arch/inst/V/vmflt.vf.yaml | 0 arch/inst/V/vmflt.vv.yaml | 0 arch/inst/V/vmfne.vf.yaml | 0 arch/inst/V/vmfne.vv.yaml | 0 arch/inst/V/vmin.vv.yaml | 0 arch/inst/V/vmin.vx.yaml | 0 arch/inst/V/vminu.vv.yaml | 0 arch/inst/V/vminu.vx.yaml | 0 arch/inst/V/vmnand.mm.yaml | 0 arch/inst/V/vmnor.mm.yaml | 0 arch/inst/V/vmor.mm.yaml | 0 arch/inst/V/vmorn.mm.yaml | 0 arch/inst/V/vmsbc.vv.yaml | 0 arch/inst/V/vmsbc.vvm.yaml | 0 arch/inst/V/vmsbc.vx.yaml | 0 arch/inst/V/vmsbc.vxm.yaml | 0 arch/inst/V/vmsbf.m.yaml | 0 arch/inst/V/vmseq.vi.yaml | 0 arch/inst/V/vmseq.vv.yaml | 0 arch/inst/V/vmseq.vx.yaml | 0 arch/inst/V/vmsgt.vi.yaml | 0 arch/inst/V/vmsgt.vx.yaml | 0 arch/inst/V/vmsgtu.vi.yaml | 0 arch/inst/V/vmsgtu.vx.yaml | 0 arch/inst/V/vmsif.m.yaml | 0 arch/inst/V/vmsle.vi.yaml | 0 arch/inst/V/vmsle.vv.yaml | 0 arch/inst/V/vmsle.vx.yaml | 0 arch/inst/V/vmsleu.vi.yaml | 0 arch/inst/V/vmsleu.vv.yaml | 0 arch/inst/V/vmsleu.vx.yaml | 0 arch/inst/V/vmslt.vv.yaml | 0 arch/inst/V/vmslt.vx.yaml | 0 arch/inst/V/vmsltu.vv.yaml | 0 arch/inst/V/vmsltu.vx.yaml | 0 arch/inst/V/vmsne.vi.yaml | 0 arch/inst/V/vmsne.vv.yaml | 0 arch/inst/V/vmsne.vx.yaml | 0 arch/inst/V/vmsof.m.yaml | 0 arch/inst/V/vmul.vv.yaml | 0 arch/inst/V/vmul.vx.yaml | 0 arch/inst/V/vmulh.vv.yaml | 0 arch/inst/V/vmulh.vx.yaml | 0 arch/inst/V/vmulhsu.vv.yaml | 0 arch/inst/V/vmulhsu.vx.yaml | 0 arch/inst/V/vmulhu.vv.yaml | 0 arch/inst/V/vmulhu.vx.yaml | 0 arch/inst/V/vmv.s.x.yaml | 0 arch/inst/V/vmv.v.i.yaml | 0 arch/inst/V/vmv.v.v.yaml | 0 arch/inst/V/vmv.v.x.yaml | 0 arch/inst/V/vmv.x.s.yaml | 0 arch/inst/V/vmv1r.v.yaml | 0 arch/inst/V/vmv2r.v.yaml | 0 arch/inst/V/vmv4r.v.yaml | 0 arch/inst/V/vmv8r.v.yaml | 0 arch/inst/V/vmxnor.mm.yaml | 0 arch/inst/V/vmxor.mm.yaml | 0 arch/inst/V/vnclip.wi.yaml | 0 arch/inst/V/vnclip.wv.yaml | 0 arch/inst/V/vnclip.wx.yaml | 0 arch/inst/V/vnclipu.wi.yaml | 0 arch/inst/V/vnclipu.wv.yaml | 0 arch/inst/V/vnclipu.wx.yaml | 0 arch/inst/V/vnmsac.vv.yaml | 0 arch/inst/V/vnmsac.vx.yaml | 0 arch/inst/V/vnmsub.vv.yaml | 0 arch/inst/V/vnmsub.vx.yaml | 0 arch/inst/V/vnsra.wi.yaml | 0 arch/inst/V/vnsra.wv.yaml | 0 arch/inst/V/vnsra.wx.yaml | 0 arch/inst/V/vnsrl.wi.yaml | 0 arch/inst/V/vnsrl.wv.yaml | 0 arch/inst/V/vnsrl.wx.yaml | 0 arch/inst/V/vor.vi.yaml | 0 arch/inst/V/vor.vv.yaml | 0 arch/inst/V/vor.vx.yaml | 0 arch/inst/V/vredand.vs.yaml | 0 arch/inst/V/vredmax.vs.yaml | 0 arch/inst/V/vredmaxu.vs.yaml | 0 arch/inst/V/vredmin.vs.yaml | 0 arch/inst/V/vredminu.vs.yaml | 0 arch/inst/V/vredor.vs.yaml | 0 arch/inst/V/vredsum.vs.yaml | 0 arch/inst/V/vredxor.vs.yaml | 0 arch/inst/V/vrem.vv.yaml | 0 arch/inst/V/vrem.vx.yaml | 0 arch/inst/V/vremu.vv.yaml | 0 arch/inst/V/vremu.vx.yaml | 0 arch/inst/V/vrgather.vi.yaml | 0 arch/inst/V/vrgather.vv.yaml | 0 arch/inst/V/vrgather.vx.yaml | 0 arch/inst/V/vrgatherei16.vv.yaml | 0 arch/inst/V/vrsub.vi.yaml | 0 arch/inst/V/vrsub.vx.yaml | 0 arch/inst/V/vs1r.v.yaml | 0 arch/inst/V/vs2r.v.yaml | 0 arch/inst/V/vs4r.v.yaml | 0 arch/inst/V/vs8r.v.yaml | 0 arch/inst/V/vsadd.vi.yaml | 0 arch/inst/V/vsadd.vv.yaml | 0 arch/inst/V/vsadd.vx.yaml | 0 arch/inst/V/vsaddu.vi.yaml | 0 arch/inst/V/vsaddu.vv.yaml | 0 arch/inst/V/vsaddu.vx.yaml | 0 arch/inst/V/vsbc.vvm.yaml | 0 arch/inst/V/vsbc.vxm.yaml | 0 arch/inst/V/vse16.v.yaml | 0 arch/inst/V/vse32.v.yaml | 0 arch/inst/V/vse64.v.yaml | 0 arch/inst/V/vse8.v.yaml | 0 arch/inst/V/vsetivli.yaml | 0 arch/inst/V/vsetvl.yaml | 0 arch/inst/V/vsetvli.yaml | 0 arch/inst/V/vsext.vf2.yaml | 0 arch/inst/V/vsext.vf4.yaml | 0 arch/inst/V/vsext.vf8.yaml | 0 arch/inst/V/vslide1down.vx.yaml | 0 arch/inst/V/vslide1up.vx.yaml | 0 arch/inst/V/vslidedown.vi.yaml | 0 arch/inst/V/vslidedown.vx.yaml | 0 arch/inst/V/vslideup.vi.yaml | 0 arch/inst/V/vslideup.vx.yaml | 0 arch/inst/V/vsll.vi.yaml | 0 arch/inst/V/vsll.vv.yaml | 0 arch/inst/V/vsll.vx.yaml | 0 arch/inst/V/vsm.v.yaml | 0 arch/inst/V/vsmul.vv.yaml | 0 arch/inst/V/vsmul.vx.yaml | 0 arch/inst/V/vsoxei16.v.yaml | 0 arch/inst/V/vsoxei32.v.yaml | 0 arch/inst/V/vsoxei64.v.yaml | 0 arch/inst/V/vsoxei8.v.yaml | 0 arch/inst/V/vsoxseg2ei16.v.yaml | 0 arch/inst/V/vsoxseg2ei32.v.yaml | 0 arch/inst/V/vsoxseg2ei64.v.yaml | 0 arch/inst/V/vsoxseg2ei8.v.yaml | 0 arch/inst/V/vsoxseg3ei16.v.yaml | 0 arch/inst/V/vsoxseg3ei32.v.yaml | 0 arch/inst/V/vsoxseg3ei64.v.yaml | 0 arch/inst/V/vsoxseg3ei8.v.yaml | 0 arch/inst/V/vsoxseg4ei16.v.yaml | 0 arch/inst/V/vsoxseg4ei32.v.yaml | 0 arch/inst/V/vsoxseg4ei64.v.yaml | 0 arch/inst/V/vsoxseg4ei8.v.yaml | 0 arch/inst/V/vsoxseg5ei16.v.yaml | 0 arch/inst/V/vsoxseg5ei32.v.yaml | 0 arch/inst/V/vsoxseg5ei64.v.yaml | 0 arch/inst/V/vsoxseg5ei8.v.yaml | 0 arch/inst/V/vsoxseg6ei16.v.yaml | 0 arch/inst/V/vsoxseg6ei32.v.yaml | 0 arch/inst/V/vsoxseg6ei64.v.yaml | 0 arch/inst/V/vsoxseg6ei8.v.yaml | 0 arch/inst/V/vsoxseg7ei16.v.yaml | 0 arch/inst/V/vsoxseg7ei32.v.yaml | 0 arch/inst/V/vsoxseg7ei64.v.yaml | 0 arch/inst/V/vsoxseg7ei8.v.yaml | 0 arch/inst/V/vsoxseg8ei16.v.yaml | 0 arch/inst/V/vsoxseg8ei32.v.yaml | 0 arch/inst/V/vsoxseg8ei64.v.yaml | 0 arch/inst/V/vsoxseg8ei8.v.yaml | 0 arch/inst/V/vsra.vi.yaml | 0 arch/inst/V/vsra.vv.yaml | 0 arch/inst/V/vsra.vx.yaml | 0 arch/inst/V/vsrl.vi.yaml | 0 arch/inst/V/vsrl.vv.yaml | 0 arch/inst/V/vsrl.vx.yaml | 0 arch/inst/V/vsse16.v.yaml | 0 arch/inst/V/vsse32.v.yaml | 0 arch/inst/V/vsse64.v.yaml | 0 arch/inst/V/vsse8.v.yaml | 0 arch/inst/V/vsseg2e16.v.yaml | 0 arch/inst/V/vsseg2e32.v.yaml | 0 arch/inst/V/vsseg2e64.v.yaml | 0 arch/inst/V/vsseg2e8.v.yaml | 0 arch/inst/V/vsseg3e16.v.yaml | 0 arch/inst/V/vsseg3e32.v.yaml | 0 arch/inst/V/vsseg3e64.v.yaml | 0 arch/inst/V/vsseg3e8.v.yaml | 0 arch/inst/V/vsseg4e16.v.yaml | 0 arch/inst/V/vsseg4e32.v.yaml | 0 arch/inst/V/vsseg4e64.v.yaml | 0 arch/inst/V/vsseg4e8.v.yaml | 0 arch/inst/V/vsseg5e16.v.yaml | 0 arch/inst/V/vsseg5e32.v.yaml | 0 arch/inst/V/vsseg5e64.v.yaml | 0 arch/inst/V/vsseg5e8.v.yaml | 0 arch/inst/V/vsseg6e16.v.yaml | 0 arch/inst/V/vsseg6e32.v.yaml | 0 arch/inst/V/vsseg6e64.v.yaml | 0 arch/inst/V/vsseg6e8.v.yaml | 0 arch/inst/V/vsseg7e16.v.yaml | 0 arch/inst/V/vsseg7e32.v.yaml | 0 arch/inst/V/vsseg7e64.v.yaml | 0 arch/inst/V/vsseg7e8.v.yaml | 0 arch/inst/V/vsseg8e16.v.yaml | 0 arch/inst/V/vsseg8e32.v.yaml | 0 arch/inst/V/vsseg8e64.v.yaml | 0 arch/inst/V/vsseg8e8.v.yaml | 0 arch/inst/V/vssra.vi.yaml | 0 arch/inst/V/vssra.vv.yaml | 0 arch/inst/V/vssra.vx.yaml | 0 arch/inst/V/vssrl.vi.yaml | 0 arch/inst/V/vssrl.vv.yaml | 0 arch/inst/V/vssrl.vx.yaml | 0 arch/inst/V/vssseg2e16.v.yaml | 0 arch/inst/V/vssseg2e32.v.yaml | 0 arch/inst/V/vssseg2e64.v.yaml | 0 arch/inst/V/vssseg2e8.v.yaml | 0 arch/inst/V/vssseg3e16.v.yaml | 0 arch/inst/V/vssseg3e32.v.yaml | 0 arch/inst/V/vssseg3e64.v.yaml | 0 arch/inst/V/vssseg3e8.v.yaml | 0 arch/inst/V/vssseg4e16.v.yaml | 0 arch/inst/V/vssseg4e32.v.yaml | 0 arch/inst/V/vssseg4e64.v.yaml | 0 arch/inst/V/vssseg4e8.v.yaml | 0 arch/inst/V/vssseg5e16.v.yaml | 0 arch/inst/V/vssseg5e32.v.yaml | 0 arch/inst/V/vssseg5e64.v.yaml | 0 arch/inst/V/vssseg5e8.v.yaml | 0 arch/inst/V/vssseg6e16.v.yaml | 0 arch/inst/V/vssseg6e32.v.yaml | 0 arch/inst/V/vssseg6e64.v.yaml | 0 arch/inst/V/vssseg6e8.v.yaml | 0 arch/inst/V/vssseg7e16.v.yaml | 0 arch/inst/V/vssseg7e32.v.yaml | 0 arch/inst/V/vssseg7e64.v.yaml | 0 arch/inst/V/vssseg7e8.v.yaml | 0 arch/inst/V/vssseg8e16.v.yaml | 0 arch/inst/V/vssseg8e32.v.yaml | 0 arch/inst/V/vssseg8e64.v.yaml | 0 arch/inst/V/vssseg8e8.v.yaml | 0 arch/inst/V/vssub.vv.yaml | 0 arch/inst/V/vssub.vx.yaml | 0 arch/inst/V/vssubu.vv.yaml | 0 arch/inst/V/vssubu.vx.yaml | 0 arch/inst/V/vsub.vv.yaml | 0 arch/inst/V/vsub.vx.yaml | 0 arch/inst/V/vsuxei16.v.yaml | 0 arch/inst/V/vsuxei32.v.yaml | 0 arch/inst/V/vsuxei64.v.yaml | 0 arch/inst/V/vsuxei8.v.yaml | 0 arch/inst/V/vsuxseg2ei16.v.yaml | 0 arch/inst/V/vsuxseg2ei32.v.yaml | 0 arch/inst/V/vsuxseg2ei64.v.yaml | 0 arch/inst/V/vsuxseg2ei8.v.yaml | 0 arch/inst/V/vsuxseg3ei16.v.yaml | 0 arch/inst/V/vsuxseg3ei32.v.yaml | 0 arch/inst/V/vsuxseg3ei64.v.yaml | 0 arch/inst/V/vsuxseg3ei8.v.yaml | 0 arch/inst/V/vsuxseg4ei16.v.yaml | 0 arch/inst/V/vsuxseg4ei32.v.yaml | 0 arch/inst/V/vsuxseg4ei64.v.yaml | 0 arch/inst/V/vsuxseg4ei8.v.yaml | 0 arch/inst/V/vsuxseg5ei16.v.yaml | 0 arch/inst/V/vsuxseg5ei32.v.yaml | 0 arch/inst/V/vsuxseg5ei64.v.yaml | 0 arch/inst/V/vsuxseg5ei8.v.yaml | 0 arch/inst/V/vsuxseg6ei16.v.yaml | 0 arch/inst/V/vsuxseg6ei32.v.yaml | 0 arch/inst/V/vsuxseg6ei64.v.yaml | 0 arch/inst/V/vsuxseg6ei8.v.yaml | 0 arch/inst/V/vsuxseg7ei16.v.yaml | 0 arch/inst/V/vsuxseg7ei32.v.yaml | 0 arch/inst/V/vsuxseg7ei64.v.yaml | 0 arch/inst/V/vsuxseg7ei8.v.yaml | 0 arch/inst/V/vsuxseg8ei16.v.yaml | 0 arch/inst/V/vsuxseg8ei32.v.yaml | 0 arch/inst/V/vsuxseg8ei64.v.yaml | 0 arch/inst/V/vsuxseg8ei8.v.yaml | 0 arch/inst/V/vwadd.vv.yaml | 0 arch/inst/V/vwadd.vx.yaml | 0 arch/inst/V/vwadd.wv.yaml | 0 arch/inst/V/vwadd.wx.yaml | 0 arch/inst/V/vwaddu.vv.yaml | 0 arch/inst/V/vwaddu.vx.yaml | 0 arch/inst/V/vwaddu.wv.yaml | 0 arch/inst/V/vwaddu.wx.yaml | 0 arch/inst/V/vwmacc.vv.yaml | 0 arch/inst/V/vwmacc.vx.yaml | 0 arch/inst/V/vwmaccsu.vv.yaml | 0 arch/inst/V/vwmaccsu.vx.yaml | 0 arch/inst/V/vwmaccu.vv.yaml | 0 arch/inst/V/vwmaccu.vx.yaml | 0 arch/inst/V/vwmaccus.vx.yaml | 0 arch/inst/V/vwmul.vv.yaml | 0 arch/inst/V/vwmul.vx.yaml | 0 arch/inst/V/vwmulsu.vv.yaml | 0 arch/inst/V/vwmulsu.vx.yaml | 0 arch/inst/V/vwmulu.vv.yaml | 0 arch/inst/V/vwmulu.vx.yaml | 0 arch/inst/V/vwredsum.vs.yaml | 0 arch/inst/V/vwredsumu.vs.yaml | 0 arch/inst/V/vwsub.vv.yaml | 0 arch/inst/V/vwsub.vx.yaml | 0 arch/inst/V/vwsub.wv.yaml | 0 arch/inst/V/vwsub.wx.yaml | 0 arch/inst/V/vwsubu.vv.yaml | 0 arch/inst/V/vwsubu.vx.yaml | 0 arch/inst/V/vwsubu.wv.yaml | 0 arch/inst/V/vwsubu.wx.yaml | 0 arch/inst/V/vxor.vi.yaml | 0 arch/inst/V/vxor.vv.yaml | 0 arch/inst/V/vxor.vx.yaml | 0 arch/inst/V/vzext.vf2.yaml | 0 arch/inst/V/vzext.vf4.yaml | 0 arch/inst/V/vzext.vf8.yaml | 0 arch/inst/Zabha/amoadd.b.yaml | 0 arch/inst/Zabha/amoadd.h.yaml | 0 arch/inst/Zabha/amoand.b.yaml | 0 arch/inst/Zabha/amoand.h.yaml | 0 arch/inst/Zabha/amocas.b.yaml | 0 arch/inst/Zabha/amocas.h.yaml | 0 arch/inst/Zabha/amomax.b.yaml | 0 arch/inst/Zabha/amomax.h.yaml | 0 arch/inst/Zabha/amomaxu.b.yaml | 0 arch/inst/Zabha/amomaxu.h.yaml | 0 arch/inst/Zabha/amomin.b.yaml | 0 arch/inst/Zabha/amomin.h.yaml | 0 arch/inst/Zabha/amominu.b.yaml | 0 arch/inst/Zabha/amominu.h.yaml | 0 arch/inst/Zabha/amoor.b.yaml | 0 arch/inst/Zabha/amoor.h.yaml | 0 arch/inst/Zabha/amoswap.b.yaml | 0 arch/inst/Zabha/amoswap.h.yaml | 0 arch/inst/Zabha/amoxor.b.yaml | 0 arch/inst/Zabha/amoxor.h.yaml | 0 arch/inst/Zacas/amocas.d.yaml | 0 arch/inst/Zacas/amocas.q.yaml | 0 arch/inst/Zacas/amocas.w.yaml | 0 arch/inst/Zalasr/lb.aq.yaml | 0 arch/inst/Zalasr/ld.aq.yaml | 0 arch/inst/Zalasr/lh.aq.yaml | 0 arch/inst/Zalasr/lw.aq.yaml | 0 arch/inst/Zalasr/sb.rl.yaml | 0 arch/inst/Zalasr/sd.rl.yaml | 0 arch/inst/Zalasr/sh.rl.yaml | 0 arch/inst/Zalasr/sw.rl.yaml | 0 arch/inst/Zawrs/wrs.nto.yaml | 0 arch/inst/Zawrs/wrs.sto.yaml | 0 arch/inst/Zbkb/brev8.yaml | 0 arch/inst/Zbkb/unzip.yaml | 0 arch/inst/Zbkb/zip.yaml | 0 arch/inst/Zbkx/xperm4.yaml | 0 arch/inst/Zbkx/xperm8.yaml | 0 arch/inst/Zcb/c.lbu.yaml | 0 arch/inst/Zcb/c.lh.yaml | 0 arch/inst/Zcb/c.lhu.yaml | 0 arch/inst/Zcb/c.mul.yaml | 0 arch/inst/Zcb/c.not.yaml | 0 arch/inst/Zcb/c.sb.yaml | 0 arch/inst/Zcb/c.sext.b.yaml | 0 arch/inst/Zcb/c.sext.h.yaml | 0 arch/inst/Zcb/c.sh.yaml | 0 arch/inst/Zcb/c.zext.b.yaml | 0 arch/inst/Zcb/c.zext.h.yaml | 0 arch/inst/Zcb/c.zext.w.yaml | 0 arch/inst/Zcmp/cm.mva01s.yaml | 0 arch/inst/Zcmp/cm.mvsa01.yaml | 0 arch/inst/Zcmp/cm.pop.yaml | 0 arch/inst/Zcmp/cm.popret.yaml | 0 arch/inst/Zcmp/cm.popretz.yaml | 0 arch/inst/Zcmp/cm.push.yaml | 0 arch/inst/Zfbfmin/fcvt.bf16.s.yaml | 0 arch/inst/Zfbfmin/fcvt.s.bf16.yaml | 0 arch/inst/Zfh/fadd.h.yaml | 0 arch/inst/Zfh/fclass.h.yaml | 0 arch/inst/Zfh/fcvt.d.h.yaml | 0 arch/inst/Zfh/fcvt.h.d.yaml | 0 arch/inst/Zfh/fcvt.h.l.yaml | 0 arch/inst/Zfh/fcvt.h.lu.yaml | 0 arch/inst/Zfh/fcvt.h.s.yaml | 0 arch/inst/Zfh/fcvt.h.w.yaml | 0 arch/inst/Zfh/fcvt.h.wu.yaml | 0 arch/inst/Zfh/fcvt.l.h.yaml | 0 arch/inst/Zfh/fcvt.lu.h.yaml | 0 arch/inst/Zfh/fcvt.s.h.yaml | 0 arch/inst/Zfh/fcvt.w.h.yaml | 0 arch/inst/Zfh/fcvt.wu.h.yaml | 0 arch/inst/Zfh/fdiv.h.yaml | 0 arch/inst/Zfh/feq.h.yaml | 0 arch/inst/Zfh/fle.h.yaml | 0 arch/inst/Zfh/fleq.h.yaml | 0 arch/inst/Zfh/flh.yaml | 0 arch/inst/Zfh/fli.h.yaml | 0 arch/inst/Zfh/flt.h.yaml | 0 arch/inst/Zfh/fltq.h.yaml | 0 arch/inst/Zfh/fmadd.h.yaml | 0 arch/inst/Zfh/fmax.h.yaml | 0 arch/inst/Zfh/fmaxm.h.yaml | 0 arch/inst/Zfh/fmin.h.yaml | 0 arch/inst/Zfh/fminm.h.yaml | 0 arch/inst/Zfh/fmsub.h.yaml | 0 arch/inst/Zfh/fmul.h.yaml | 0 arch/inst/Zfh/fmv.h.x.yaml | 0 arch/inst/Zfh/fmv.x.h.yaml | 0 arch/inst/Zfh/fnmadd.h.yaml | 0 arch/inst/Zfh/fnmsub.h.yaml | 0 arch/inst/Zfh/fround.h.yaml | 0 arch/inst/Zfh/froundnx.h.yaml | 0 arch/inst/Zfh/fsgnj.h.yaml | 0 arch/inst/Zfh/fsgnjn.h.yaml | 0 arch/inst/Zfh/fsgnjx.h.yaml | 0 arch/inst/Zfh/fsh.yaml | 0 arch/inst/Zfh/fsqrt.h.yaml | 0 arch/inst/Zfh/fsub.h.yaml | 0 arch/inst/Zicbom/cbo.clean.yaml | 0 arch/inst/Zicbom/cbo.flush.yaml | 0 arch/inst/Zicbom/cbo.inval.yaml | 0 arch/inst/Zicboz/cbo.zero.yaml | 0 arch/inst/Zicfilp/lpad.yaml | 0 arch/inst/Zicfiss/ssamoswap.d.yaml | 0 arch/inst/Zicfiss/ssamoswap.w.yaml | 0 arch/inst/Zicfiss/sspopchk.x1.yaml | 0 arch/inst/Zicfiss/sspopchk.x5.yaml | 0 arch/inst/Zicfiss/sspush.x1.yaml | 0 arch/inst/Zicfiss/sspush.x5.yaml | 0 arch/inst/Zicfiss/ssrdp.yaml | 0 arch/inst/Zicond/czero.eqz.yaml | 0 arch/inst/Zicond/czero.nez.yaml | 0 arch/inst/Zicsr/csrrc.yaml | 0 arch/inst/Zicsr/csrrci.yaml | 0 arch/inst/Zicsr/csrrs.yaml | 0 arch/inst/Zicsr/csrrsi.yaml | 0 arch/inst/Zicsr/csrrw.yaml | 0 arch/inst/Zicsr/csrrwi.yaml | 0 arch/inst/Zifencei/fence.i.yaml | 0 arch/inst/Zimop/mop.r.n.yaml | 0 arch/inst/Zimop/mop.rr.n.yaml | 0 arch/inst/Zk/aes32dsi.yaml | 0 arch/inst/Zk/aes32dsmi.yaml | 0 arch/inst/Zk/aes32esi.yaml | 0 arch/inst/Zk/aes32esmi.yaml | 0 arch/inst/Zk/aes64ds.yaml | 0 arch/inst/Zk/aes64dsm.yaml | 0 arch/inst/Zk/aes64es.yaml | 0 arch/inst/Zk/aes64esm.yaml | 0 arch/inst/Zk/aes64im.yaml | 0 arch/inst/Zk/aes64ks1i.yaml | 0 arch/inst/Zk/aes64ks2.yaml | 0 arch/inst/Zk/pack.yaml | 0 arch/inst/Zk/packh.yaml | 0 arch/inst/Zk/packw.yaml | 0 arch/inst/Zk/sha256sig0.yaml | 0 arch/inst/Zk/sha256sig1.yaml | 0 arch/inst/Zk/sha256sum0.yaml | 0 arch/inst/Zk/sha256sum1.yaml | 0 arch/inst/Zk/sha512sig0.yaml | 0 arch/inst/Zk/sha512sig0h.yaml | 0 arch/inst/Zk/sha512sig0l.yaml | 0 arch/inst/Zk/sha512sig1.yaml | 0 arch/inst/Zk/sha512sig1h.yaml | 0 arch/inst/Zk/sha512sig1l.yaml | 0 arch/inst/Zk/sha512sum0.yaml | 0 arch/inst/Zk/sha512sum0r.yaml | 0 arch/inst/Zk/sha512sum1.yaml | 0 arch/inst/Zk/sha512sum1r.yaml | 0 arch/inst/Zks/sm3p0.yaml | 0 arch/inst/Zks/sm3p1.yaml | 0 arch/inst/Zks/sm4ed.yaml | 0 arch/inst/Zks/sm4ks.yaml | 0 arch/inst/Zvbb/vandn.vv.yaml | 0 arch/inst/Zvbb/vandn.vx.yaml | 0 arch/inst/Zvbb/vbrev.v.yaml | 0 arch/inst/Zvbb/vbrev8.v.yaml | 0 arch/inst/Zvbb/vclz.v.yaml | 0 arch/inst/Zvbb/vcpop.v.yaml | 0 arch/inst/Zvbb/vctz.v.yaml | 0 arch/inst/Zvbb/vrev8.v.yaml | 0 arch/inst/Zvbb/vrol.vv.yaml | 0 arch/inst/Zvbb/vrol.vx.yaml | 0 arch/inst/Zvbb/vror.vi.yaml | 0 arch/inst/Zvbb/vror.vv.yaml | 0 arch/inst/Zvbb/vror.vx.yaml | 0 arch/inst/Zvbb/vwsll.vi.yaml | 0 arch/inst/Zvbb/vwsll.vv.yaml | 0 arch/inst/Zvbb/vwsll.vx.yaml | 0 arch/inst/Zvbc/vclmul.vv.yaml | 0 arch/inst/Zvbc/vclmul.vx.yaml | 0 arch/inst/Zvbc/vclmulh.vv.yaml | 0 arch/inst/Zvbc/vclmulh.vx.yaml | 0 arch/inst/Zvfbfmin/vfncvtbf16.f.f.w.yaml | 0 arch/inst/Zvfbfmin/vfwcvtbf16.f.f.v.yaml | 0 arch/inst/Zvfbfwma/vfwmaccbf16.vf.yaml | 0 arch/inst/Zvfbfwma/vfwmaccbf16.vv.yaml | 0 arch/inst/Zvkg/vghsh.vv.yaml | 0 arch/inst/Zvkg/vgmul.vv.yaml | 0 arch/inst/Zvkn/vaesdf.vs.yaml | 0 arch/inst/Zvkn/vaesdf.vv.yaml | 0 arch/inst/Zvkn/vaesdm.vs.yaml | 0 arch/inst/Zvkn/vaesdm.vv.yaml | 0 arch/inst/Zvkn/vaesef.vs.yaml | 0 arch/inst/Zvkn/vaesef.vv.yaml | 0 arch/inst/Zvkn/vaesem.vs.yaml | 0 arch/inst/Zvkn/vaesem.vv.yaml | 0 arch/inst/Zvkn/vaeskf1.vi.yaml | 0 arch/inst/Zvkn/vaeskf2.vi.yaml | 0 arch/inst/Zvkn/vaesz.vs.yaml | 0 arch/inst/Zvkn/vsha2ch.vv.yaml | 0 arch/inst/Zvkn/vsha2cl.vv.yaml | 0 arch/inst/Zvkn/vsha2ms.vv.yaml | 0 arch/inst/Zvks/vsm3c.vi.yaml | 0 arch/inst/Zvks/vsm3me.vv.yaml | 0 arch/inst/Zvks/vsm4k.vi.yaml | 0 arch/inst/Zvks/vsm4r.vs.yaml | 0 arch/inst/Zvks/vsm4r.vv.yaml | 0 1147 files changed, 0 insertions(+), 0 deletions(-) mode change 100755 => 100644 arch/inst/A/amoadd.d.yaml mode change 100755 => 100644 arch/inst/A/amoadd.w.yaml mode change 100755 => 100644 arch/inst/A/amoand.d.yaml mode change 100755 => 100644 arch/inst/A/amoand.w.yaml mode change 100755 => 100644 arch/inst/A/amomax.d.yaml mode change 100755 => 100644 arch/inst/A/amomax.w.yaml mode change 100755 => 100644 arch/inst/A/amomaxu.d.yaml mode change 100755 => 100644 arch/inst/A/amomaxu.w.yaml mode change 100755 => 100644 arch/inst/A/amomin.d.yaml mode change 100755 => 100644 arch/inst/A/amomin.w.yaml mode change 100755 => 100644 arch/inst/A/amominu.d.yaml mode change 100755 => 100644 arch/inst/A/amominu.w.yaml mode change 100755 => 100644 arch/inst/A/amoor.d.yaml mode change 100755 => 100644 arch/inst/A/amoor.w.yaml mode change 100755 => 100644 arch/inst/A/amoswap.d.yaml mode change 100755 => 100644 arch/inst/A/amoswap.w.yaml mode change 100755 => 100644 arch/inst/A/amoxor.d.yaml mode change 100755 => 100644 arch/inst/A/amoxor.w.yaml mode change 100755 => 100644 arch/inst/A/lr.d.yaml mode change 100755 => 100644 arch/inst/A/lr.w.yaml mode change 100755 => 100644 arch/inst/A/sc.d.yaml mode change 100755 => 100644 arch/inst/A/sc.w.yaml mode change 100755 => 100644 arch/inst/B/add.uw.yaml mode change 100755 => 100644 arch/inst/B/andn.yaml mode change 100755 => 100644 arch/inst/B/bclr.yaml mode change 100755 => 100644 arch/inst/B/bclri.yaml mode change 100755 => 100644 arch/inst/B/bext.yaml mode change 100755 => 100644 arch/inst/B/bexti.yaml mode change 100755 => 100644 arch/inst/B/binv.yaml mode change 100755 => 100644 arch/inst/B/binvi.yaml mode change 100755 => 100644 arch/inst/B/bset.yaml mode change 100755 => 100644 arch/inst/B/bseti.yaml mode change 100755 => 100644 arch/inst/B/clmul.yaml mode change 100755 => 100644 arch/inst/B/clmulh.yaml mode change 100755 => 100644 arch/inst/B/clmulr.yaml mode change 100755 => 100644 arch/inst/B/clz.yaml mode change 100755 => 100644 arch/inst/B/clzw.yaml mode change 100755 => 100644 arch/inst/B/cpop.yaml mode change 100755 => 100644 arch/inst/B/cpopw.yaml mode change 100755 => 100644 arch/inst/B/ctz.yaml mode change 100755 => 100644 arch/inst/B/ctzw.yaml mode change 100755 => 100644 arch/inst/B/max.yaml mode change 100755 => 100644 arch/inst/B/maxu.yaml mode change 100755 => 100644 arch/inst/B/min.yaml mode change 100755 => 100644 arch/inst/B/minu.yaml mode change 100755 => 100644 arch/inst/B/orc.b.yaml mode change 100755 => 100644 arch/inst/B/orn.yaml mode change 100755 => 100644 arch/inst/B/rev8.yaml mode change 100755 => 100644 arch/inst/B/rol.yaml mode change 100755 => 100644 arch/inst/B/rolw.yaml mode change 100755 => 100644 arch/inst/B/ror.yaml mode change 100755 => 100644 arch/inst/B/rori.yaml mode change 100755 => 100644 arch/inst/B/roriw.yaml mode change 100755 => 100644 arch/inst/B/rorw.yaml mode change 100755 => 100644 arch/inst/B/sext.b.yaml mode change 100755 => 100644 arch/inst/B/sext.h.yaml mode change 100755 => 100644 arch/inst/B/sh1add.uw.yaml mode change 100755 => 100644 arch/inst/B/sh1add.yaml mode change 100755 => 100644 arch/inst/B/sh2add.uw.yaml mode change 100755 => 100644 arch/inst/B/sh2add.yaml mode change 100755 => 100644 arch/inst/B/sh3add.uw.yaml mode change 100755 => 100644 arch/inst/B/sh3add.yaml mode change 100755 => 100644 arch/inst/B/slli.uw.yaml mode change 100755 => 100644 arch/inst/B/xnor.yaml mode change 100755 => 100644 arch/inst/B/zext.h.yaml mode change 100755 => 100644 arch/inst/C/c.add.yaml mode change 100755 => 100644 arch/inst/C/c.addi.yaml mode change 100755 => 100644 arch/inst/C/c.addi16sp.yaml mode change 100755 => 100644 arch/inst/C/c.addi4spn.yaml mode change 100755 => 100644 arch/inst/C/c.addiw.yaml mode change 100755 => 100644 arch/inst/C/c.addw.yaml mode change 100755 => 100644 arch/inst/C/c.and.yaml mode change 100755 => 100644 arch/inst/C/c.andi.yaml mode change 100755 => 100644 arch/inst/C/c.beqz.yaml mode change 100755 => 100644 arch/inst/C/c.bnez.yaml mode change 100755 => 100644 arch/inst/C/c.ebreak.yaml mode change 100755 => 100644 arch/inst/C/c.fld.yaml mode change 100755 => 100644 arch/inst/C/c.fldsp.yaml mode change 100755 => 100644 arch/inst/C/c.flw.yaml mode change 100755 => 100644 arch/inst/C/c.flwsp.yaml mode change 100755 => 100644 arch/inst/C/c.fsd.yaml mode change 100755 => 100644 arch/inst/C/c.fsdsp.yaml mode change 100755 => 100644 arch/inst/C/c.fsw.yaml mode change 100755 => 100644 arch/inst/C/c.fswsp.yaml mode change 100755 => 100644 arch/inst/C/c.j.yaml mode change 100755 => 100644 arch/inst/C/c.jal.yaml mode change 100755 => 100644 arch/inst/C/c.jalr.yaml mode change 100755 => 100644 arch/inst/C/c.jr.yaml mode change 100755 => 100644 arch/inst/C/c.ld.yaml mode change 100755 => 100644 arch/inst/C/c.ldsp.yaml mode change 100755 => 100644 arch/inst/C/c.li.yaml mode change 100755 => 100644 arch/inst/C/c.lui.yaml mode change 100755 => 100644 arch/inst/C/c.lw.yaml mode change 100755 => 100644 arch/inst/C/c.lwsp.yaml mode change 100755 => 100644 arch/inst/C/c.mv.yaml mode change 100755 => 100644 arch/inst/C/c.nop.yaml mode change 100755 => 100644 arch/inst/C/c.or.yaml mode change 100755 => 100644 arch/inst/C/c.sd.yaml mode change 100755 => 100644 arch/inst/C/c.sdsp.yaml mode change 100755 => 100644 arch/inst/C/c.slli.yaml mode change 100755 => 100644 arch/inst/C/c.srai.yaml mode change 100755 => 100644 arch/inst/C/c.srli.yaml mode change 100755 => 100644 arch/inst/C/c.sub.yaml mode change 100755 => 100644 arch/inst/C/c.subw.yaml mode change 100755 => 100644 arch/inst/C/c.sw.yaml mode change 100755 => 100644 arch/inst/C/c.swsp.yaml mode change 100755 => 100644 arch/inst/C/c.xor.yaml mode change 100755 => 100644 arch/inst/D/fadd.d.yaml mode change 100755 => 100644 arch/inst/D/fclass.d.yaml mode change 100755 => 100644 arch/inst/D/fcvt.d.l.yaml mode change 100755 => 100644 arch/inst/D/fcvt.d.lu.yaml mode change 100755 => 100644 arch/inst/D/fcvt.d.s.yaml mode change 100755 => 100644 arch/inst/D/fcvt.d.w.yaml mode change 100755 => 100644 arch/inst/D/fcvt.d.wu.yaml mode change 100755 => 100644 arch/inst/D/fcvt.l.d.yaml mode change 100755 => 100644 arch/inst/D/fcvt.lu.d.yaml mode change 100755 => 100644 arch/inst/D/fcvt.s.d.yaml mode change 100755 => 100644 arch/inst/D/fcvt.w.d.yaml mode change 100755 => 100644 arch/inst/D/fcvt.wu.d.yaml mode change 100755 => 100644 arch/inst/D/fcvtmod.w.d.yaml mode change 100755 => 100644 arch/inst/D/fdiv.d.yaml mode change 100755 => 100644 arch/inst/D/feq.d.yaml mode change 100755 => 100644 arch/inst/D/fld.yaml mode change 100755 => 100644 arch/inst/D/fle.d.yaml mode change 100755 => 100644 arch/inst/D/fleq.d.yaml mode change 100755 => 100644 arch/inst/D/fli.d.yaml mode change 100755 => 100644 arch/inst/D/flt.d.yaml mode change 100755 => 100644 arch/inst/D/fltq.d.yaml mode change 100755 => 100644 arch/inst/D/fmadd.d.yaml mode change 100755 => 100644 arch/inst/D/fmax.d.yaml mode change 100755 => 100644 arch/inst/D/fmaxm.d.yaml mode change 100755 => 100644 arch/inst/D/fmin.d.yaml mode change 100755 => 100644 arch/inst/D/fminm.d.yaml mode change 100755 => 100644 arch/inst/D/fmsub.d.yaml mode change 100755 => 100644 arch/inst/D/fmul.d.yaml mode change 100755 => 100644 arch/inst/D/fmv.d.x.yaml mode change 100755 => 100644 arch/inst/D/fmv.x.d.yaml mode change 100755 => 100644 arch/inst/D/fmvh.x.d.yaml mode change 100755 => 100644 arch/inst/D/fmvp.d.x.yaml mode change 100755 => 100644 arch/inst/D/fnmadd.d.yaml mode change 100755 => 100644 arch/inst/D/fnmsub.d.yaml mode change 100755 => 100644 arch/inst/D/fround.d.yaml mode change 100755 => 100644 arch/inst/D/froundnx.d.yaml mode change 100755 => 100644 arch/inst/D/fsd.yaml mode change 100755 => 100644 arch/inst/D/fsgnj.d.yaml mode change 100755 => 100644 arch/inst/D/fsgnjn.d.yaml mode change 100755 => 100644 arch/inst/D/fsgnjx.d.yaml mode change 100755 => 100644 arch/inst/D/fsqrt.d.yaml mode change 100755 => 100644 arch/inst/D/fsub.d.yaml mode change 100755 => 100644 arch/inst/F/fadd.s.yaml mode change 100755 => 100644 arch/inst/F/fclass.s.yaml mode change 100755 => 100644 arch/inst/F/fcvt.l.s.yaml mode change 100755 => 100644 arch/inst/F/fcvt.lu.s.yaml mode change 100755 => 100644 arch/inst/F/fcvt.s.l.yaml mode change 100755 => 100644 arch/inst/F/fcvt.s.lu.yaml mode change 100755 => 100644 arch/inst/F/fcvt.s.w.yaml mode change 100755 => 100644 arch/inst/F/fcvt.s.wu.yaml mode change 100755 => 100644 arch/inst/F/fcvt.w.s.yaml mode change 100755 => 100644 arch/inst/F/fcvt.wu.s.yaml mode change 100755 => 100644 arch/inst/F/fdiv.s.yaml mode change 100755 => 100644 arch/inst/F/feq.s.yaml mode change 100755 => 100644 arch/inst/F/fle.s.yaml mode change 100755 => 100644 arch/inst/F/fleq.s.yaml mode change 100755 => 100644 arch/inst/F/fli.s.yaml mode change 100755 => 100644 arch/inst/F/flt.s.yaml mode change 100755 => 100644 arch/inst/F/fltq.s.yaml mode change 100755 => 100644 arch/inst/F/flw.yaml mode change 100755 => 100644 arch/inst/F/fmadd.s.yaml mode change 100755 => 100644 arch/inst/F/fmax.s.yaml mode change 100755 => 100644 arch/inst/F/fmaxm.s.yaml mode change 100755 => 100644 arch/inst/F/fmin.s.yaml mode change 100755 => 100644 arch/inst/F/fminm.s.yaml mode change 100755 => 100644 arch/inst/F/fmsub.s.yaml mode change 100755 => 100644 arch/inst/F/fmul.s.yaml mode change 100755 => 100644 arch/inst/F/fmv.w.x.yaml mode change 100755 => 100644 arch/inst/F/fmv.x.w.yaml mode change 100755 => 100644 arch/inst/F/fnmadd.s.yaml mode change 100755 => 100644 arch/inst/F/fnmsub.s.yaml mode change 100755 => 100644 arch/inst/F/fround.s.yaml mode change 100755 => 100644 arch/inst/F/froundnx.s.yaml mode change 100755 => 100644 arch/inst/F/fsgnj.s.yaml mode change 100755 => 100644 arch/inst/F/fsgnjn.s.yaml mode change 100755 => 100644 arch/inst/F/fsgnjx.s.yaml mode change 100755 => 100644 arch/inst/F/fsqrt.s.yaml mode change 100755 => 100644 arch/inst/F/fsub.s.yaml mode change 100755 => 100644 arch/inst/F/fsw.yaml mode change 100755 => 100644 arch/inst/H/hfence.gvma.yaml mode change 100755 => 100644 arch/inst/H/hfence.vvma.yaml mode change 100755 => 100644 arch/inst/H/hlv.b.yaml mode change 100755 => 100644 arch/inst/H/hlv.bu.yaml mode change 100755 => 100644 arch/inst/H/hlv.d.yaml mode change 100755 => 100644 arch/inst/H/hlv.h.yaml mode change 100755 => 100644 arch/inst/H/hlv.hu.yaml mode change 100755 => 100644 arch/inst/H/hlv.w.yaml mode change 100755 => 100644 arch/inst/H/hlv.wu.yaml mode change 100755 => 100644 arch/inst/H/hlvx.hu.yaml mode change 100755 => 100644 arch/inst/H/hlvx.wu.yaml mode change 100755 => 100644 arch/inst/H/hsv.b.yaml mode change 100755 => 100644 arch/inst/H/hsv.d.yaml mode change 100755 => 100644 arch/inst/H/hsv.h.yaml mode change 100755 => 100644 arch/inst/H/hsv.w.yaml mode change 100755 => 100644 arch/inst/I/add.yaml mode change 100755 => 100644 arch/inst/I/addi.yaml mode change 100755 => 100644 arch/inst/I/addiw.yaml mode change 100755 => 100644 arch/inst/I/addw.yaml mode change 100755 => 100644 arch/inst/I/and.yaml mode change 100755 => 100644 arch/inst/I/andi.yaml mode change 100755 => 100644 arch/inst/I/auipc.yaml mode change 100755 => 100644 arch/inst/I/beq.yaml mode change 100755 => 100644 arch/inst/I/bge.yaml mode change 100755 => 100644 arch/inst/I/bgeu.yaml mode change 100755 => 100644 arch/inst/I/blt.yaml mode change 100755 => 100644 arch/inst/I/bltu.yaml mode change 100755 => 100644 arch/inst/I/bne.yaml mode change 100755 => 100644 arch/inst/I/ebreak.yaml mode change 100755 => 100644 arch/inst/I/ecall.yaml mode change 100755 => 100644 arch/inst/I/fence.yaml mode change 100755 => 100644 arch/inst/I/jal.yaml mode change 100755 => 100644 arch/inst/I/jalr.yaml mode change 100755 => 100644 arch/inst/I/lb.yaml mode change 100755 => 100644 arch/inst/I/lbu.yaml mode change 100755 => 100644 arch/inst/I/ld.yaml mode change 100755 => 100644 arch/inst/I/lh.yaml mode change 100755 => 100644 arch/inst/I/lhu.yaml mode change 100755 => 100644 arch/inst/I/lui.yaml mode change 100755 => 100644 arch/inst/I/lw.yaml mode change 100755 => 100644 arch/inst/I/lwu.yaml mode change 100755 => 100644 arch/inst/I/mret.yaml mode change 100755 => 100644 arch/inst/I/or.yaml mode change 100755 => 100644 arch/inst/I/ori.yaml mode change 100755 => 100644 arch/inst/I/sb.yaml mode change 100755 => 100644 arch/inst/I/sd.yaml mode change 100755 => 100644 arch/inst/I/sh.yaml mode change 100755 => 100644 arch/inst/I/sll.yaml mode change 100755 => 100644 arch/inst/I/slli.yaml mode change 100755 => 100644 arch/inst/I/slliw.yaml mode change 100755 => 100644 arch/inst/I/sllw.yaml mode change 100755 => 100644 arch/inst/I/slt.yaml mode change 100755 => 100644 arch/inst/I/slti.yaml mode change 100755 => 100644 arch/inst/I/sltiu.yaml mode change 100755 => 100644 arch/inst/I/sltu.yaml mode change 100755 => 100644 arch/inst/I/sra.yaml mode change 100755 => 100644 arch/inst/I/srai.yaml mode change 100755 => 100644 arch/inst/I/sraiw.yaml mode change 100755 => 100644 arch/inst/I/sraw.yaml mode change 100755 => 100644 arch/inst/I/srl.yaml mode change 100755 => 100644 arch/inst/I/srli.yaml mode change 100755 => 100644 arch/inst/I/srliw.yaml mode change 100755 => 100644 arch/inst/I/srlw.yaml mode change 100755 => 100644 arch/inst/I/sub.yaml mode change 100755 => 100644 arch/inst/I/subw.yaml mode change 100755 => 100644 arch/inst/I/sw.yaml mode change 100755 => 100644 arch/inst/I/wfi.yaml mode change 100755 => 100644 arch/inst/I/xor.yaml mode change 100755 => 100644 arch/inst/I/xori.yaml mode change 100755 => 100644 arch/inst/M/div.yaml mode change 100755 => 100644 arch/inst/M/divu.yaml mode change 100755 => 100644 arch/inst/M/divuw.yaml mode change 100755 => 100644 arch/inst/M/divw.yaml mode change 100755 => 100644 arch/inst/M/mul.yaml mode change 100755 => 100644 arch/inst/M/mulh.yaml mode change 100755 => 100644 arch/inst/M/mulhsu.yaml mode change 100755 => 100644 arch/inst/M/mulhu.yaml mode change 100755 => 100644 arch/inst/M/mulw.yaml mode change 100755 => 100644 arch/inst/M/rem.yaml mode change 100755 => 100644 arch/inst/M/remu.yaml mode change 100755 => 100644 arch/inst/M/remuw.yaml mode change 100755 => 100644 arch/inst/M/remw.yaml mode change 100755 => 100644 arch/inst/Q/fadd.q.yaml mode change 100755 => 100644 arch/inst/Q/fclass.q.yaml mode change 100755 => 100644 arch/inst/Q/fcvt.d.q.yaml mode change 100755 => 100644 arch/inst/Q/fcvt.h.q.yaml mode change 100755 => 100644 arch/inst/Q/fcvt.l.q.yaml mode change 100755 => 100644 arch/inst/Q/fcvt.lu.q.yaml mode change 100755 => 100644 arch/inst/Q/fcvt.q.d.yaml mode change 100755 => 100644 arch/inst/Q/fcvt.q.h.yaml mode change 100755 => 100644 arch/inst/Q/fcvt.q.l.yaml mode change 100755 => 100644 arch/inst/Q/fcvt.q.lu.yaml mode change 100755 => 100644 arch/inst/Q/fcvt.q.s.yaml mode change 100755 => 100644 arch/inst/Q/fcvt.q.w.yaml mode change 100755 => 100644 arch/inst/Q/fcvt.q.wu.yaml mode change 100755 => 100644 arch/inst/Q/fcvt.s.q.yaml mode change 100755 => 100644 arch/inst/Q/fcvt.w.q.yaml mode change 100755 => 100644 arch/inst/Q/fcvt.wu.q.yaml mode change 100755 => 100644 arch/inst/Q/fdiv.q.yaml mode change 100755 => 100644 arch/inst/Q/feq.q.yaml mode change 100755 => 100644 arch/inst/Q/fle.q.yaml mode change 100755 => 100644 arch/inst/Q/fleq.q.yaml mode change 100755 => 100644 arch/inst/Q/fli.q.yaml mode change 100755 => 100644 arch/inst/Q/flq.yaml mode change 100755 => 100644 arch/inst/Q/flt.q.yaml mode change 100755 => 100644 arch/inst/Q/fltq.q.yaml mode change 100755 => 100644 arch/inst/Q/fmadd.q.yaml mode change 100755 => 100644 arch/inst/Q/fmax.q.yaml mode change 100755 => 100644 arch/inst/Q/fmaxm.q.yaml mode change 100755 => 100644 arch/inst/Q/fmin.q.yaml mode change 100755 => 100644 arch/inst/Q/fminm.q.yaml mode change 100755 => 100644 arch/inst/Q/fmsub.q.yaml mode change 100755 => 100644 arch/inst/Q/fmul.q.yaml mode change 100755 => 100644 arch/inst/Q/fmvh.x.q.yaml mode change 100755 => 100644 arch/inst/Q/fmvp.q.x.yaml mode change 100755 => 100644 arch/inst/Q/fnmadd.q.yaml mode change 100755 => 100644 arch/inst/Q/fnmsub.q.yaml mode change 100755 => 100644 arch/inst/Q/fround.q.yaml mode change 100755 => 100644 arch/inst/Q/froundnx.q.yaml mode change 100755 => 100644 arch/inst/Q/fsgnj.q.yaml mode change 100755 => 100644 arch/inst/Q/fsgnjn.q.yaml mode change 100755 => 100644 arch/inst/Q/fsgnjx.q.yaml mode change 100755 => 100644 arch/inst/Q/fsq.yaml mode change 100755 => 100644 arch/inst/Q/fsqrt.q.yaml mode change 100755 => 100644 arch/inst/Q/fsub.q.yaml mode change 100755 => 100644 arch/inst/S/sfence.vma.yaml mode change 100755 => 100644 arch/inst/S/sret.yaml mode change 100755 => 100644 arch/inst/Sdext/dret.yaml mode change 100755 => 100644 arch/inst/Smdbltrp/sctrclr.yaml mode change 100755 => 100644 arch/inst/Smrnmi/mnret.yaml mode change 100755 => 100644 arch/inst/Svinval/hinval.gvma.yaml mode change 100755 => 100644 arch/inst/Svinval/hinval.vvma.yaml mode change 100755 => 100644 arch/inst/Svinval/sfence.inval.ir.yaml mode change 100755 => 100644 arch/inst/Svinval/sfence.w.inval.yaml mode change 100755 => 100644 arch/inst/Svinval/sinval.vma.yaml mode change 100755 => 100644 arch/inst/V/vaadd.vv.yaml mode change 100755 => 100644 arch/inst/V/vaadd.vx.yaml mode change 100755 => 100644 arch/inst/V/vaaddu.vv.yaml mode change 100755 => 100644 arch/inst/V/vaaddu.vx.yaml mode change 100755 => 100644 arch/inst/V/vadc.vim.yaml mode change 100755 => 100644 arch/inst/V/vadc.vvm.yaml mode change 100755 => 100644 arch/inst/V/vadc.vxm.yaml mode change 100755 => 100644 arch/inst/V/vadd.vi.yaml mode change 100755 => 100644 arch/inst/V/vadd.vv.yaml mode change 100755 => 100644 arch/inst/V/vadd.vx.yaml mode change 100755 => 100644 arch/inst/V/vand.vi.yaml mode change 100755 => 100644 arch/inst/V/vand.vv.yaml mode change 100755 => 100644 arch/inst/V/vand.vx.yaml mode change 100755 => 100644 arch/inst/V/vasub.vv.yaml mode change 100755 => 100644 arch/inst/V/vasub.vx.yaml mode change 100755 => 100644 arch/inst/V/vasubu.vv.yaml mode change 100755 => 100644 arch/inst/V/vasubu.vx.yaml mode change 100755 => 100644 arch/inst/V/vcompress.vm.yaml mode change 100755 => 100644 arch/inst/V/vcpop.m.yaml mode change 100755 => 100644 arch/inst/V/vdiv.vv.yaml mode change 100755 => 100644 arch/inst/V/vdiv.vx.yaml mode change 100755 => 100644 arch/inst/V/vdivu.vv.yaml mode change 100755 => 100644 arch/inst/V/vdivu.vx.yaml mode change 100755 => 100644 arch/inst/V/vfadd.vf.yaml mode change 100755 => 100644 arch/inst/V/vfadd.vv.yaml mode change 100755 => 100644 arch/inst/V/vfclass.v.yaml mode change 100755 => 100644 arch/inst/V/vfcvt.f.x.v.yaml mode change 100755 => 100644 arch/inst/V/vfcvt.f.xu.v.yaml mode change 100755 => 100644 arch/inst/V/vfcvt.rtz.x.f.v.yaml mode change 100755 => 100644 arch/inst/V/vfcvt.rtz.xu.f.v.yaml mode change 100755 => 100644 arch/inst/V/vfcvt.x.f.v.yaml mode change 100755 => 100644 arch/inst/V/vfcvt.xu.f.v.yaml mode change 100755 => 100644 arch/inst/V/vfdiv.vf.yaml mode change 100755 => 100644 arch/inst/V/vfdiv.vv.yaml mode change 100755 => 100644 arch/inst/V/vfirst.m.yaml mode change 100755 => 100644 arch/inst/V/vfmacc.vf.yaml mode change 100755 => 100644 arch/inst/V/vfmacc.vv.yaml mode change 100755 => 100644 arch/inst/V/vfmadd.vf.yaml mode change 100755 => 100644 arch/inst/V/vfmadd.vv.yaml mode change 100755 => 100644 arch/inst/V/vfmax.vf.yaml mode change 100755 => 100644 arch/inst/V/vfmax.vv.yaml mode change 100755 => 100644 arch/inst/V/vfmerge.vfm.yaml mode change 100755 => 100644 arch/inst/V/vfmin.vf.yaml mode change 100755 => 100644 arch/inst/V/vfmin.vv.yaml mode change 100755 => 100644 arch/inst/V/vfmsac.vf.yaml mode change 100755 => 100644 arch/inst/V/vfmsac.vv.yaml mode change 100755 => 100644 arch/inst/V/vfmsub.vf.yaml mode change 100755 => 100644 arch/inst/V/vfmsub.vv.yaml mode change 100755 => 100644 arch/inst/V/vfmul.vf.yaml mode change 100755 => 100644 arch/inst/V/vfmul.vv.yaml mode change 100755 => 100644 arch/inst/V/vfmv.f.s.yaml mode change 100755 => 100644 arch/inst/V/vfmv.s.f.yaml mode change 100755 => 100644 arch/inst/V/vfmv.v.f.yaml mode change 100755 => 100644 arch/inst/V/vfncvt.f.f.w.yaml mode change 100755 => 100644 arch/inst/V/vfncvt.f.x.w.yaml mode change 100755 => 100644 arch/inst/V/vfncvt.f.xu.w.yaml mode change 100755 => 100644 arch/inst/V/vfncvt.rod.f.f.w.yaml mode change 100755 => 100644 arch/inst/V/vfncvt.rtz.x.f.w.yaml mode change 100755 => 100644 arch/inst/V/vfncvt.rtz.xu.f.w.yaml mode change 100755 => 100644 arch/inst/V/vfncvt.x.f.w.yaml mode change 100755 => 100644 arch/inst/V/vfncvt.xu.f.w.yaml mode change 100755 => 100644 arch/inst/V/vfnmacc.vf.yaml mode change 100755 => 100644 arch/inst/V/vfnmacc.vv.yaml mode change 100755 => 100644 arch/inst/V/vfnmadd.vf.yaml mode change 100755 => 100644 arch/inst/V/vfnmadd.vv.yaml mode change 100755 => 100644 arch/inst/V/vfnmsac.vf.yaml mode change 100755 => 100644 arch/inst/V/vfnmsac.vv.yaml mode change 100755 => 100644 arch/inst/V/vfnmsub.vf.yaml mode change 100755 => 100644 arch/inst/V/vfnmsub.vv.yaml mode change 100755 => 100644 arch/inst/V/vfrdiv.vf.yaml mode change 100755 => 100644 arch/inst/V/vfrec7.v.yaml mode change 100755 => 100644 arch/inst/V/vfredmax.vs.yaml mode change 100755 => 100644 arch/inst/V/vfredmin.vs.yaml mode change 100755 => 100644 arch/inst/V/vfredosum.vs.yaml mode change 100755 => 100644 arch/inst/V/vfredusum.vs.yaml mode change 100755 => 100644 arch/inst/V/vfrsqrt7.v.yaml mode change 100755 => 100644 arch/inst/V/vfrsub.vf.yaml mode change 100755 => 100644 arch/inst/V/vfsgnj.vf.yaml mode change 100755 => 100644 arch/inst/V/vfsgnj.vv.yaml mode change 100755 => 100644 arch/inst/V/vfsgnjn.vf.yaml mode change 100755 => 100644 arch/inst/V/vfsgnjn.vv.yaml mode change 100755 => 100644 arch/inst/V/vfsgnjx.vf.yaml mode change 100755 => 100644 arch/inst/V/vfsgnjx.vv.yaml mode change 100755 => 100644 arch/inst/V/vfslide1down.vf.yaml mode change 100755 => 100644 arch/inst/V/vfslide1up.vf.yaml mode change 100755 => 100644 arch/inst/V/vfsqrt.v.yaml mode change 100755 => 100644 arch/inst/V/vfsub.vf.yaml mode change 100755 => 100644 arch/inst/V/vfsub.vv.yaml mode change 100755 => 100644 arch/inst/V/vfwadd.vf.yaml mode change 100755 => 100644 arch/inst/V/vfwadd.vv.yaml mode change 100755 => 100644 arch/inst/V/vfwadd.wf.yaml mode change 100755 => 100644 arch/inst/V/vfwadd.wv.yaml mode change 100755 => 100644 arch/inst/V/vfwcvt.f.f.v.yaml mode change 100755 => 100644 arch/inst/V/vfwcvt.f.x.v.yaml mode change 100755 => 100644 arch/inst/V/vfwcvt.f.xu.v.yaml mode change 100755 => 100644 arch/inst/V/vfwcvt.rtz.x.f.v.yaml mode change 100755 => 100644 arch/inst/V/vfwcvt.rtz.xu.f.v.yaml mode change 100755 => 100644 arch/inst/V/vfwcvt.x.f.v.yaml mode change 100755 => 100644 arch/inst/V/vfwcvt.xu.f.v.yaml mode change 100755 => 100644 arch/inst/V/vfwmacc.vf.yaml mode change 100755 => 100644 arch/inst/V/vfwmacc.vv.yaml mode change 100755 => 100644 arch/inst/V/vfwmsac.vf.yaml mode change 100755 => 100644 arch/inst/V/vfwmsac.vv.yaml mode change 100755 => 100644 arch/inst/V/vfwmul.vf.yaml mode change 100755 => 100644 arch/inst/V/vfwmul.vv.yaml mode change 100755 => 100644 arch/inst/V/vfwnmacc.vf.yaml mode change 100755 => 100644 arch/inst/V/vfwnmacc.vv.yaml mode change 100755 => 100644 arch/inst/V/vfwnmsac.vf.yaml mode change 100755 => 100644 arch/inst/V/vfwnmsac.vv.yaml mode change 100755 => 100644 arch/inst/V/vfwredosum.vs.yaml mode change 100755 => 100644 arch/inst/V/vfwredusum.vs.yaml mode change 100755 => 100644 arch/inst/V/vfwsub.vf.yaml mode change 100755 => 100644 arch/inst/V/vfwsub.vv.yaml mode change 100755 => 100644 arch/inst/V/vfwsub.wf.yaml mode change 100755 => 100644 arch/inst/V/vfwsub.wv.yaml mode change 100755 => 100644 arch/inst/V/vid.v.yaml mode change 100755 => 100644 arch/inst/V/viota.m.yaml mode change 100755 => 100644 arch/inst/V/vl1re16.v.yaml mode change 100755 => 100644 arch/inst/V/vl1re32.v.yaml mode change 100755 => 100644 arch/inst/V/vl1re64.v.yaml mode change 100755 => 100644 arch/inst/V/vl1re8.v.yaml mode change 100755 => 100644 arch/inst/V/vl2re16.v.yaml mode change 100755 => 100644 arch/inst/V/vl2re32.v.yaml mode change 100755 => 100644 arch/inst/V/vl2re64.v.yaml mode change 100755 => 100644 arch/inst/V/vl2re8.v.yaml mode change 100755 => 100644 arch/inst/V/vl4re16.v.yaml mode change 100755 => 100644 arch/inst/V/vl4re32.v.yaml mode change 100755 => 100644 arch/inst/V/vl4re64.v.yaml mode change 100755 => 100644 arch/inst/V/vl4re8.v.yaml mode change 100755 => 100644 arch/inst/V/vl8re16.v.yaml mode change 100755 => 100644 arch/inst/V/vl8re32.v.yaml mode change 100755 => 100644 arch/inst/V/vl8re64.v.yaml mode change 100755 => 100644 arch/inst/V/vl8re8.v.yaml mode change 100755 => 100644 arch/inst/V/vle16.v.yaml mode change 100755 => 100644 arch/inst/V/vle16ff.v.yaml mode change 100755 => 100644 arch/inst/V/vle32.v.yaml mode change 100755 => 100644 arch/inst/V/vle32ff.v.yaml mode change 100755 => 100644 arch/inst/V/vle64.v.yaml mode change 100755 => 100644 arch/inst/V/vle64ff.v.yaml mode change 100755 => 100644 arch/inst/V/vle8.v.yaml mode change 100755 => 100644 arch/inst/V/vle8ff.v.yaml mode change 100755 => 100644 arch/inst/V/vlm.v.yaml mode change 100755 => 100644 arch/inst/V/vloxei16.v.yaml mode change 100755 => 100644 arch/inst/V/vloxei32.v.yaml mode change 100755 => 100644 arch/inst/V/vloxei64.v.yaml mode change 100755 => 100644 arch/inst/V/vloxei8.v.yaml mode change 100755 => 100644 arch/inst/V/vloxseg2ei16.v.yaml mode change 100755 => 100644 arch/inst/V/vloxseg2ei32.v.yaml mode change 100755 => 100644 arch/inst/V/vloxseg2ei64.v.yaml mode change 100755 => 100644 arch/inst/V/vloxseg2ei8.v.yaml mode change 100755 => 100644 arch/inst/V/vloxseg3ei16.v.yaml mode change 100755 => 100644 arch/inst/V/vloxseg3ei32.v.yaml mode change 100755 => 100644 arch/inst/V/vloxseg3ei64.v.yaml mode change 100755 => 100644 arch/inst/V/vloxseg3ei8.v.yaml mode change 100755 => 100644 arch/inst/V/vloxseg4ei16.v.yaml mode change 100755 => 100644 arch/inst/V/vloxseg4ei32.v.yaml mode change 100755 => 100644 arch/inst/V/vloxseg4ei64.v.yaml mode change 100755 => 100644 arch/inst/V/vloxseg4ei8.v.yaml mode change 100755 => 100644 arch/inst/V/vloxseg5ei16.v.yaml mode change 100755 => 100644 arch/inst/V/vloxseg5ei32.v.yaml mode change 100755 => 100644 arch/inst/V/vloxseg5ei64.v.yaml mode change 100755 => 100644 arch/inst/V/vloxseg5ei8.v.yaml mode change 100755 => 100644 arch/inst/V/vloxseg6ei16.v.yaml mode change 100755 => 100644 arch/inst/V/vloxseg6ei32.v.yaml mode change 100755 => 100644 arch/inst/V/vloxseg6ei64.v.yaml mode change 100755 => 100644 arch/inst/V/vloxseg6ei8.v.yaml mode change 100755 => 100644 arch/inst/V/vloxseg7ei16.v.yaml mode change 100755 => 100644 arch/inst/V/vloxseg7ei32.v.yaml mode change 100755 => 100644 arch/inst/V/vloxseg7ei64.v.yaml mode change 100755 => 100644 arch/inst/V/vloxseg7ei8.v.yaml mode change 100755 => 100644 arch/inst/V/vloxseg8ei16.v.yaml mode change 100755 => 100644 arch/inst/V/vloxseg8ei32.v.yaml mode change 100755 => 100644 arch/inst/V/vloxseg8ei64.v.yaml mode change 100755 => 100644 arch/inst/V/vloxseg8ei8.v.yaml mode change 100755 => 100644 arch/inst/V/vlse16.v.yaml mode change 100755 => 100644 arch/inst/V/vlse32.v.yaml mode change 100755 => 100644 arch/inst/V/vlse64.v.yaml mode change 100755 => 100644 arch/inst/V/vlse8.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg2e16.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg2e16ff.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg2e32.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg2e32ff.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg2e64.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg2e64ff.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg2e8.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg2e8ff.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg3e16.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg3e16ff.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg3e32.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg3e32ff.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg3e64.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg3e64ff.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg3e8.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg3e8ff.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg4e16.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg4e16ff.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg4e32.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg4e32ff.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg4e64.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg4e64ff.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg4e8.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg4e8ff.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg5e16.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg5e16ff.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg5e32.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg5e32ff.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg5e64.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg5e64ff.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg5e8.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg5e8ff.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg6e16.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg6e16ff.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg6e32.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg6e32ff.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg6e64.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg6e64ff.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg6e8.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg6e8ff.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg7e16.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg7e16ff.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg7e32.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg7e32ff.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg7e64.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg7e64ff.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg7e8.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg7e8ff.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg8e16.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg8e16ff.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg8e32.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg8e32ff.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg8e64.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg8e64ff.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg8e8.v.yaml mode change 100755 => 100644 arch/inst/V/vlseg8e8ff.v.yaml mode change 100755 => 100644 arch/inst/V/vlsseg2e16.v.yaml mode change 100755 => 100644 arch/inst/V/vlsseg2e32.v.yaml mode change 100755 => 100644 arch/inst/V/vlsseg2e64.v.yaml mode change 100755 => 100644 arch/inst/V/vlsseg2e8.v.yaml mode change 100755 => 100644 arch/inst/V/vlsseg3e16.v.yaml mode change 100755 => 100644 arch/inst/V/vlsseg3e32.v.yaml mode change 100755 => 100644 arch/inst/V/vlsseg3e64.v.yaml mode change 100755 => 100644 arch/inst/V/vlsseg3e8.v.yaml mode change 100755 => 100644 arch/inst/V/vlsseg4e16.v.yaml mode change 100755 => 100644 arch/inst/V/vlsseg4e32.v.yaml mode change 100755 => 100644 arch/inst/V/vlsseg4e64.v.yaml mode change 100755 => 100644 arch/inst/V/vlsseg4e8.v.yaml mode change 100755 => 100644 arch/inst/V/vlsseg5e16.v.yaml mode change 100755 => 100644 arch/inst/V/vlsseg5e32.v.yaml mode change 100755 => 100644 arch/inst/V/vlsseg5e64.v.yaml mode change 100755 => 100644 arch/inst/V/vlsseg5e8.v.yaml mode change 100755 => 100644 arch/inst/V/vlsseg6e16.v.yaml mode change 100755 => 100644 arch/inst/V/vlsseg6e32.v.yaml mode change 100755 => 100644 arch/inst/V/vlsseg6e64.v.yaml mode change 100755 => 100644 arch/inst/V/vlsseg6e8.v.yaml mode change 100755 => 100644 arch/inst/V/vlsseg7e16.v.yaml mode change 100755 => 100644 arch/inst/V/vlsseg7e32.v.yaml mode change 100755 => 100644 arch/inst/V/vlsseg7e64.v.yaml mode change 100755 => 100644 arch/inst/V/vlsseg7e8.v.yaml mode change 100755 => 100644 arch/inst/V/vlsseg8e16.v.yaml mode change 100755 => 100644 arch/inst/V/vlsseg8e32.v.yaml mode change 100755 => 100644 arch/inst/V/vlsseg8e64.v.yaml mode change 100755 => 100644 arch/inst/V/vlsseg8e8.v.yaml mode change 100755 => 100644 arch/inst/V/vluxei16.v.yaml mode change 100755 => 100644 arch/inst/V/vluxei32.v.yaml mode change 100755 => 100644 arch/inst/V/vluxei64.v.yaml mode change 100755 => 100644 arch/inst/V/vluxei8.v.yaml mode change 100755 => 100644 arch/inst/V/vluxseg2ei16.v.yaml mode change 100755 => 100644 arch/inst/V/vluxseg2ei32.v.yaml mode change 100755 => 100644 arch/inst/V/vluxseg2ei64.v.yaml mode change 100755 => 100644 arch/inst/V/vluxseg2ei8.v.yaml mode change 100755 => 100644 arch/inst/V/vluxseg3ei16.v.yaml mode change 100755 => 100644 arch/inst/V/vluxseg3ei32.v.yaml mode change 100755 => 100644 arch/inst/V/vluxseg3ei64.v.yaml mode change 100755 => 100644 arch/inst/V/vluxseg3ei8.v.yaml mode change 100755 => 100644 arch/inst/V/vluxseg4ei16.v.yaml mode change 100755 => 100644 arch/inst/V/vluxseg4ei32.v.yaml mode change 100755 => 100644 arch/inst/V/vluxseg4ei64.v.yaml mode change 100755 => 100644 arch/inst/V/vluxseg4ei8.v.yaml mode change 100755 => 100644 arch/inst/V/vluxseg5ei16.v.yaml mode change 100755 => 100644 arch/inst/V/vluxseg5ei32.v.yaml mode change 100755 => 100644 arch/inst/V/vluxseg5ei64.v.yaml mode change 100755 => 100644 arch/inst/V/vluxseg5ei8.v.yaml mode change 100755 => 100644 arch/inst/V/vluxseg6ei16.v.yaml mode change 100755 => 100644 arch/inst/V/vluxseg6ei32.v.yaml mode change 100755 => 100644 arch/inst/V/vluxseg6ei64.v.yaml mode change 100755 => 100644 arch/inst/V/vluxseg6ei8.v.yaml mode change 100755 => 100644 arch/inst/V/vluxseg7ei16.v.yaml mode change 100755 => 100644 arch/inst/V/vluxseg7ei32.v.yaml mode change 100755 => 100644 arch/inst/V/vluxseg7ei64.v.yaml mode change 100755 => 100644 arch/inst/V/vluxseg7ei8.v.yaml mode change 100755 => 100644 arch/inst/V/vluxseg8ei16.v.yaml mode change 100755 => 100644 arch/inst/V/vluxseg8ei32.v.yaml mode change 100755 => 100644 arch/inst/V/vluxseg8ei64.v.yaml mode change 100755 => 100644 arch/inst/V/vluxseg8ei8.v.yaml mode change 100755 => 100644 arch/inst/V/vmacc.vv.yaml mode change 100755 => 100644 arch/inst/V/vmacc.vx.yaml mode change 100755 => 100644 arch/inst/V/vmadc.vi.yaml mode change 100755 => 100644 arch/inst/V/vmadc.vim.yaml mode change 100755 => 100644 arch/inst/V/vmadc.vv.yaml mode change 100755 => 100644 arch/inst/V/vmadc.vvm.yaml mode change 100755 => 100644 arch/inst/V/vmadc.vx.yaml mode change 100755 => 100644 arch/inst/V/vmadc.vxm.yaml mode change 100755 => 100644 arch/inst/V/vmadd.vv.yaml mode change 100755 => 100644 arch/inst/V/vmadd.vx.yaml mode change 100755 => 100644 arch/inst/V/vmand.mm.yaml mode change 100755 => 100644 arch/inst/V/vmandn.mm.yaml mode change 100755 => 100644 arch/inst/V/vmax.vv.yaml mode change 100755 => 100644 arch/inst/V/vmax.vx.yaml mode change 100755 => 100644 arch/inst/V/vmaxu.vv.yaml mode change 100755 => 100644 arch/inst/V/vmaxu.vx.yaml mode change 100755 => 100644 arch/inst/V/vmerge.vim.yaml mode change 100755 => 100644 arch/inst/V/vmerge.vvm.yaml mode change 100755 => 100644 arch/inst/V/vmerge.vxm.yaml mode change 100755 => 100644 arch/inst/V/vmfeq.vf.yaml mode change 100755 => 100644 arch/inst/V/vmfeq.vv.yaml mode change 100755 => 100644 arch/inst/V/vmfge.vf.yaml mode change 100755 => 100644 arch/inst/V/vmfgt.vf.yaml mode change 100755 => 100644 arch/inst/V/vmfle.vf.yaml mode change 100755 => 100644 arch/inst/V/vmfle.vv.yaml mode change 100755 => 100644 arch/inst/V/vmflt.vf.yaml mode change 100755 => 100644 arch/inst/V/vmflt.vv.yaml mode change 100755 => 100644 arch/inst/V/vmfne.vf.yaml mode change 100755 => 100644 arch/inst/V/vmfne.vv.yaml mode change 100755 => 100644 arch/inst/V/vmin.vv.yaml mode change 100755 => 100644 arch/inst/V/vmin.vx.yaml mode change 100755 => 100644 arch/inst/V/vminu.vv.yaml mode change 100755 => 100644 arch/inst/V/vminu.vx.yaml mode change 100755 => 100644 arch/inst/V/vmnand.mm.yaml mode change 100755 => 100644 arch/inst/V/vmnor.mm.yaml mode change 100755 => 100644 arch/inst/V/vmor.mm.yaml mode change 100755 => 100644 arch/inst/V/vmorn.mm.yaml mode change 100755 => 100644 arch/inst/V/vmsbc.vv.yaml mode change 100755 => 100644 arch/inst/V/vmsbc.vvm.yaml mode change 100755 => 100644 arch/inst/V/vmsbc.vx.yaml mode change 100755 => 100644 arch/inst/V/vmsbc.vxm.yaml mode change 100755 => 100644 arch/inst/V/vmsbf.m.yaml mode change 100755 => 100644 arch/inst/V/vmseq.vi.yaml mode change 100755 => 100644 arch/inst/V/vmseq.vv.yaml mode change 100755 => 100644 arch/inst/V/vmseq.vx.yaml mode change 100755 => 100644 arch/inst/V/vmsgt.vi.yaml mode change 100755 => 100644 arch/inst/V/vmsgt.vx.yaml mode change 100755 => 100644 arch/inst/V/vmsgtu.vi.yaml mode change 100755 => 100644 arch/inst/V/vmsgtu.vx.yaml mode change 100755 => 100644 arch/inst/V/vmsif.m.yaml mode change 100755 => 100644 arch/inst/V/vmsle.vi.yaml mode change 100755 => 100644 arch/inst/V/vmsle.vv.yaml mode change 100755 => 100644 arch/inst/V/vmsle.vx.yaml mode change 100755 => 100644 arch/inst/V/vmsleu.vi.yaml mode change 100755 => 100644 arch/inst/V/vmsleu.vv.yaml mode change 100755 => 100644 arch/inst/V/vmsleu.vx.yaml mode change 100755 => 100644 arch/inst/V/vmslt.vv.yaml mode change 100755 => 100644 arch/inst/V/vmslt.vx.yaml mode change 100755 => 100644 arch/inst/V/vmsltu.vv.yaml mode change 100755 => 100644 arch/inst/V/vmsltu.vx.yaml mode change 100755 => 100644 arch/inst/V/vmsne.vi.yaml mode change 100755 => 100644 arch/inst/V/vmsne.vv.yaml mode change 100755 => 100644 arch/inst/V/vmsne.vx.yaml mode change 100755 => 100644 arch/inst/V/vmsof.m.yaml mode change 100755 => 100644 arch/inst/V/vmul.vv.yaml mode change 100755 => 100644 arch/inst/V/vmul.vx.yaml mode change 100755 => 100644 arch/inst/V/vmulh.vv.yaml mode change 100755 => 100644 arch/inst/V/vmulh.vx.yaml mode change 100755 => 100644 arch/inst/V/vmulhsu.vv.yaml mode change 100755 => 100644 arch/inst/V/vmulhsu.vx.yaml mode change 100755 => 100644 arch/inst/V/vmulhu.vv.yaml mode change 100755 => 100644 arch/inst/V/vmulhu.vx.yaml mode change 100755 => 100644 arch/inst/V/vmv.s.x.yaml mode change 100755 => 100644 arch/inst/V/vmv.v.i.yaml mode change 100755 => 100644 arch/inst/V/vmv.v.v.yaml mode change 100755 => 100644 arch/inst/V/vmv.v.x.yaml mode change 100755 => 100644 arch/inst/V/vmv.x.s.yaml mode change 100755 => 100644 arch/inst/V/vmv1r.v.yaml mode change 100755 => 100644 arch/inst/V/vmv2r.v.yaml mode change 100755 => 100644 arch/inst/V/vmv4r.v.yaml mode change 100755 => 100644 arch/inst/V/vmv8r.v.yaml mode change 100755 => 100644 arch/inst/V/vmxnor.mm.yaml mode change 100755 => 100644 arch/inst/V/vmxor.mm.yaml mode change 100755 => 100644 arch/inst/V/vnclip.wi.yaml mode change 100755 => 100644 arch/inst/V/vnclip.wv.yaml mode change 100755 => 100644 arch/inst/V/vnclip.wx.yaml mode change 100755 => 100644 arch/inst/V/vnclipu.wi.yaml mode change 100755 => 100644 arch/inst/V/vnclipu.wv.yaml mode change 100755 => 100644 arch/inst/V/vnclipu.wx.yaml mode change 100755 => 100644 arch/inst/V/vnmsac.vv.yaml mode change 100755 => 100644 arch/inst/V/vnmsac.vx.yaml mode change 100755 => 100644 arch/inst/V/vnmsub.vv.yaml mode change 100755 => 100644 arch/inst/V/vnmsub.vx.yaml mode change 100755 => 100644 arch/inst/V/vnsra.wi.yaml mode change 100755 => 100644 arch/inst/V/vnsra.wv.yaml mode change 100755 => 100644 arch/inst/V/vnsra.wx.yaml mode change 100755 => 100644 arch/inst/V/vnsrl.wi.yaml mode change 100755 => 100644 arch/inst/V/vnsrl.wv.yaml mode change 100755 => 100644 arch/inst/V/vnsrl.wx.yaml mode change 100755 => 100644 arch/inst/V/vor.vi.yaml mode change 100755 => 100644 arch/inst/V/vor.vv.yaml mode change 100755 => 100644 arch/inst/V/vor.vx.yaml mode change 100755 => 100644 arch/inst/V/vredand.vs.yaml mode change 100755 => 100644 arch/inst/V/vredmax.vs.yaml mode change 100755 => 100644 arch/inst/V/vredmaxu.vs.yaml mode change 100755 => 100644 arch/inst/V/vredmin.vs.yaml mode change 100755 => 100644 arch/inst/V/vredminu.vs.yaml mode change 100755 => 100644 arch/inst/V/vredor.vs.yaml mode change 100755 => 100644 arch/inst/V/vredsum.vs.yaml mode change 100755 => 100644 arch/inst/V/vredxor.vs.yaml mode change 100755 => 100644 arch/inst/V/vrem.vv.yaml mode change 100755 => 100644 arch/inst/V/vrem.vx.yaml mode change 100755 => 100644 arch/inst/V/vremu.vv.yaml mode change 100755 => 100644 arch/inst/V/vremu.vx.yaml mode change 100755 => 100644 arch/inst/V/vrgather.vi.yaml mode change 100755 => 100644 arch/inst/V/vrgather.vv.yaml mode change 100755 => 100644 arch/inst/V/vrgather.vx.yaml mode change 100755 => 100644 arch/inst/V/vrgatherei16.vv.yaml mode change 100755 => 100644 arch/inst/V/vrsub.vi.yaml mode change 100755 => 100644 arch/inst/V/vrsub.vx.yaml mode change 100755 => 100644 arch/inst/V/vs1r.v.yaml mode change 100755 => 100644 arch/inst/V/vs2r.v.yaml mode change 100755 => 100644 arch/inst/V/vs4r.v.yaml mode change 100755 => 100644 arch/inst/V/vs8r.v.yaml mode change 100755 => 100644 arch/inst/V/vsadd.vi.yaml mode change 100755 => 100644 arch/inst/V/vsadd.vv.yaml mode change 100755 => 100644 arch/inst/V/vsadd.vx.yaml mode change 100755 => 100644 arch/inst/V/vsaddu.vi.yaml mode change 100755 => 100644 arch/inst/V/vsaddu.vv.yaml mode change 100755 => 100644 arch/inst/V/vsaddu.vx.yaml mode change 100755 => 100644 arch/inst/V/vsbc.vvm.yaml mode change 100755 => 100644 arch/inst/V/vsbc.vxm.yaml mode change 100755 => 100644 arch/inst/V/vse16.v.yaml mode change 100755 => 100644 arch/inst/V/vse32.v.yaml mode change 100755 => 100644 arch/inst/V/vse64.v.yaml mode change 100755 => 100644 arch/inst/V/vse8.v.yaml mode change 100755 => 100644 arch/inst/V/vsetivli.yaml mode change 100755 => 100644 arch/inst/V/vsetvl.yaml mode change 100755 => 100644 arch/inst/V/vsetvli.yaml mode change 100755 => 100644 arch/inst/V/vsext.vf2.yaml mode change 100755 => 100644 arch/inst/V/vsext.vf4.yaml mode change 100755 => 100644 arch/inst/V/vsext.vf8.yaml mode change 100755 => 100644 arch/inst/V/vslide1down.vx.yaml mode change 100755 => 100644 arch/inst/V/vslide1up.vx.yaml mode change 100755 => 100644 arch/inst/V/vslidedown.vi.yaml mode change 100755 => 100644 arch/inst/V/vslidedown.vx.yaml mode change 100755 => 100644 arch/inst/V/vslideup.vi.yaml mode change 100755 => 100644 arch/inst/V/vslideup.vx.yaml mode change 100755 => 100644 arch/inst/V/vsll.vi.yaml mode change 100755 => 100644 arch/inst/V/vsll.vv.yaml mode change 100755 => 100644 arch/inst/V/vsll.vx.yaml mode change 100755 => 100644 arch/inst/V/vsm.v.yaml mode change 100755 => 100644 arch/inst/V/vsmul.vv.yaml mode change 100755 => 100644 arch/inst/V/vsmul.vx.yaml mode change 100755 => 100644 arch/inst/V/vsoxei16.v.yaml mode change 100755 => 100644 arch/inst/V/vsoxei32.v.yaml mode change 100755 => 100644 arch/inst/V/vsoxei64.v.yaml mode change 100755 => 100644 arch/inst/V/vsoxei8.v.yaml mode change 100755 => 100644 arch/inst/V/vsoxseg2ei16.v.yaml mode change 100755 => 100644 arch/inst/V/vsoxseg2ei32.v.yaml mode change 100755 => 100644 arch/inst/V/vsoxseg2ei64.v.yaml mode change 100755 => 100644 arch/inst/V/vsoxseg2ei8.v.yaml mode change 100755 => 100644 arch/inst/V/vsoxseg3ei16.v.yaml mode change 100755 => 100644 arch/inst/V/vsoxseg3ei32.v.yaml mode change 100755 => 100644 arch/inst/V/vsoxseg3ei64.v.yaml mode change 100755 => 100644 arch/inst/V/vsoxseg3ei8.v.yaml mode change 100755 => 100644 arch/inst/V/vsoxseg4ei16.v.yaml mode change 100755 => 100644 arch/inst/V/vsoxseg4ei32.v.yaml mode change 100755 => 100644 arch/inst/V/vsoxseg4ei64.v.yaml mode change 100755 => 100644 arch/inst/V/vsoxseg4ei8.v.yaml mode change 100755 => 100644 arch/inst/V/vsoxseg5ei16.v.yaml mode change 100755 => 100644 arch/inst/V/vsoxseg5ei32.v.yaml mode change 100755 => 100644 arch/inst/V/vsoxseg5ei64.v.yaml mode change 100755 => 100644 arch/inst/V/vsoxseg5ei8.v.yaml mode change 100755 => 100644 arch/inst/V/vsoxseg6ei16.v.yaml mode change 100755 => 100644 arch/inst/V/vsoxseg6ei32.v.yaml mode change 100755 => 100644 arch/inst/V/vsoxseg6ei64.v.yaml mode change 100755 => 100644 arch/inst/V/vsoxseg6ei8.v.yaml mode change 100755 => 100644 arch/inst/V/vsoxseg7ei16.v.yaml mode change 100755 => 100644 arch/inst/V/vsoxseg7ei32.v.yaml mode change 100755 => 100644 arch/inst/V/vsoxseg7ei64.v.yaml mode change 100755 => 100644 arch/inst/V/vsoxseg7ei8.v.yaml mode change 100755 => 100644 arch/inst/V/vsoxseg8ei16.v.yaml mode change 100755 => 100644 arch/inst/V/vsoxseg8ei32.v.yaml mode change 100755 => 100644 arch/inst/V/vsoxseg8ei64.v.yaml mode change 100755 => 100644 arch/inst/V/vsoxseg8ei8.v.yaml mode change 100755 => 100644 arch/inst/V/vsra.vi.yaml mode change 100755 => 100644 arch/inst/V/vsra.vv.yaml mode change 100755 => 100644 arch/inst/V/vsra.vx.yaml mode change 100755 => 100644 arch/inst/V/vsrl.vi.yaml mode change 100755 => 100644 arch/inst/V/vsrl.vv.yaml mode change 100755 => 100644 arch/inst/V/vsrl.vx.yaml mode change 100755 => 100644 arch/inst/V/vsse16.v.yaml mode change 100755 => 100644 arch/inst/V/vsse32.v.yaml mode change 100755 => 100644 arch/inst/V/vsse64.v.yaml mode change 100755 => 100644 arch/inst/V/vsse8.v.yaml mode change 100755 => 100644 arch/inst/V/vsseg2e16.v.yaml mode change 100755 => 100644 arch/inst/V/vsseg2e32.v.yaml mode change 100755 => 100644 arch/inst/V/vsseg2e64.v.yaml mode change 100755 => 100644 arch/inst/V/vsseg2e8.v.yaml mode change 100755 => 100644 arch/inst/V/vsseg3e16.v.yaml mode change 100755 => 100644 arch/inst/V/vsseg3e32.v.yaml mode change 100755 => 100644 arch/inst/V/vsseg3e64.v.yaml mode change 100755 => 100644 arch/inst/V/vsseg3e8.v.yaml mode change 100755 => 100644 arch/inst/V/vsseg4e16.v.yaml mode change 100755 => 100644 arch/inst/V/vsseg4e32.v.yaml mode change 100755 => 100644 arch/inst/V/vsseg4e64.v.yaml mode change 100755 => 100644 arch/inst/V/vsseg4e8.v.yaml mode change 100755 => 100644 arch/inst/V/vsseg5e16.v.yaml mode change 100755 => 100644 arch/inst/V/vsseg5e32.v.yaml mode change 100755 => 100644 arch/inst/V/vsseg5e64.v.yaml mode change 100755 => 100644 arch/inst/V/vsseg5e8.v.yaml mode change 100755 => 100644 arch/inst/V/vsseg6e16.v.yaml mode change 100755 => 100644 arch/inst/V/vsseg6e32.v.yaml mode change 100755 => 100644 arch/inst/V/vsseg6e64.v.yaml mode change 100755 => 100644 arch/inst/V/vsseg6e8.v.yaml mode change 100755 => 100644 arch/inst/V/vsseg7e16.v.yaml mode change 100755 => 100644 arch/inst/V/vsseg7e32.v.yaml mode change 100755 => 100644 arch/inst/V/vsseg7e64.v.yaml mode change 100755 => 100644 arch/inst/V/vsseg7e8.v.yaml mode change 100755 => 100644 arch/inst/V/vsseg8e16.v.yaml mode change 100755 => 100644 arch/inst/V/vsseg8e32.v.yaml mode change 100755 => 100644 arch/inst/V/vsseg8e64.v.yaml mode change 100755 => 100644 arch/inst/V/vsseg8e8.v.yaml mode change 100755 => 100644 arch/inst/V/vssra.vi.yaml mode change 100755 => 100644 arch/inst/V/vssra.vv.yaml mode change 100755 => 100644 arch/inst/V/vssra.vx.yaml mode change 100755 => 100644 arch/inst/V/vssrl.vi.yaml mode change 100755 => 100644 arch/inst/V/vssrl.vv.yaml mode change 100755 => 100644 arch/inst/V/vssrl.vx.yaml mode change 100755 => 100644 arch/inst/V/vssseg2e16.v.yaml mode change 100755 => 100644 arch/inst/V/vssseg2e32.v.yaml mode change 100755 => 100644 arch/inst/V/vssseg2e64.v.yaml mode change 100755 => 100644 arch/inst/V/vssseg2e8.v.yaml mode change 100755 => 100644 arch/inst/V/vssseg3e16.v.yaml mode change 100755 => 100644 arch/inst/V/vssseg3e32.v.yaml mode change 100755 => 100644 arch/inst/V/vssseg3e64.v.yaml mode change 100755 => 100644 arch/inst/V/vssseg3e8.v.yaml mode change 100755 => 100644 arch/inst/V/vssseg4e16.v.yaml mode change 100755 => 100644 arch/inst/V/vssseg4e32.v.yaml mode change 100755 => 100644 arch/inst/V/vssseg4e64.v.yaml mode change 100755 => 100644 arch/inst/V/vssseg4e8.v.yaml mode change 100755 => 100644 arch/inst/V/vssseg5e16.v.yaml mode change 100755 => 100644 arch/inst/V/vssseg5e32.v.yaml mode change 100755 => 100644 arch/inst/V/vssseg5e64.v.yaml mode change 100755 => 100644 arch/inst/V/vssseg5e8.v.yaml mode change 100755 => 100644 arch/inst/V/vssseg6e16.v.yaml mode change 100755 => 100644 arch/inst/V/vssseg6e32.v.yaml mode change 100755 => 100644 arch/inst/V/vssseg6e64.v.yaml mode change 100755 => 100644 arch/inst/V/vssseg6e8.v.yaml mode change 100755 => 100644 arch/inst/V/vssseg7e16.v.yaml mode change 100755 => 100644 arch/inst/V/vssseg7e32.v.yaml mode change 100755 => 100644 arch/inst/V/vssseg7e64.v.yaml mode change 100755 => 100644 arch/inst/V/vssseg7e8.v.yaml mode change 100755 => 100644 arch/inst/V/vssseg8e16.v.yaml mode change 100755 => 100644 arch/inst/V/vssseg8e32.v.yaml mode change 100755 => 100644 arch/inst/V/vssseg8e64.v.yaml mode change 100755 => 100644 arch/inst/V/vssseg8e8.v.yaml mode change 100755 => 100644 arch/inst/V/vssub.vv.yaml mode change 100755 => 100644 arch/inst/V/vssub.vx.yaml mode change 100755 => 100644 arch/inst/V/vssubu.vv.yaml mode change 100755 => 100644 arch/inst/V/vssubu.vx.yaml mode change 100755 => 100644 arch/inst/V/vsub.vv.yaml mode change 100755 => 100644 arch/inst/V/vsub.vx.yaml mode change 100755 => 100644 arch/inst/V/vsuxei16.v.yaml mode change 100755 => 100644 arch/inst/V/vsuxei32.v.yaml mode change 100755 => 100644 arch/inst/V/vsuxei64.v.yaml mode change 100755 => 100644 arch/inst/V/vsuxei8.v.yaml mode change 100755 => 100644 arch/inst/V/vsuxseg2ei16.v.yaml mode change 100755 => 100644 arch/inst/V/vsuxseg2ei32.v.yaml mode change 100755 => 100644 arch/inst/V/vsuxseg2ei64.v.yaml mode change 100755 => 100644 arch/inst/V/vsuxseg2ei8.v.yaml mode change 100755 => 100644 arch/inst/V/vsuxseg3ei16.v.yaml mode change 100755 => 100644 arch/inst/V/vsuxseg3ei32.v.yaml mode change 100755 => 100644 arch/inst/V/vsuxseg3ei64.v.yaml mode change 100755 => 100644 arch/inst/V/vsuxseg3ei8.v.yaml mode change 100755 => 100644 arch/inst/V/vsuxseg4ei16.v.yaml mode change 100755 => 100644 arch/inst/V/vsuxseg4ei32.v.yaml mode change 100755 => 100644 arch/inst/V/vsuxseg4ei64.v.yaml mode change 100755 => 100644 arch/inst/V/vsuxseg4ei8.v.yaml mode change 100755 => 100644 arch/inst/V/vsuxseg5ei16.v.yaml mode change 100755 => 100644 arch/inst/V/vsuxseg5ei32.v.yaml mode change 100755 => 100644 arch/inst/V/vsuxseg5ei64.v.yaml mode change 100755 => 100644 arch/inst/V/vsuxseg5ei8.v.yaml mode change 100755 => 100644 arch/inst/V/vsuxseg6ei16.v.yaml mode change 100755 => 100644 arch/inst/V/vsuxseg6ei32.v.yaml mode change 100755 => 100644 arch/inst/V/vsuxseg6ei64.v.yaml mode change 100755 => 100644 arch/inst/V/vsuxseg6ei8.v.yaml mode change 100755 => 100644 arch/inst/V/vsuxseg7ei16.v.yaml mode change 100755 => 100644 arch/inst/V/vsuxseg7ei32.v.yaml mode change 100755 => 100644 arch/inst/V/vsuxseg7ei64.v.yaml mode change 100755 => 100644 arch/inst/V/vsuxseg7ei8.v.yaml mode change 100755 => 100644 arch/inst/V/vsuxseg8ei16.v.yaml mode change 100755 => 100644 arch/inst/V/vsuxseg8ei32.v.yaml mode change 100755 => 100644 arch/inst/V/vsuxseg8ei64.v.yaml mode change 100755 => 100644 arch/inst/V/vsuxseg8ei8.v.yaml mode change 100755 => 100644 arch/inst/V/vwadd.vv.yaml mode change 100755 => 100644 arch/inst/V/vwadd.vx.yaml mode change 100755 => 100644 arch/inst/V/vwadd.wv.yaml mode change 100755 => 100644 arch/inst/V/vwadd.wx.yaml mode change 100755 => 100644 arch/inst/V/vwaddu.vv.yaml mode change 100755 => 100644 arch/inst/V/vwaddu.vx.yaml mode change 100755 => 100644 arch/inst/V/vwaddu.wv.yaml mode change 100755 => 100644 arch/inst/V/vwaddu.wx.yaml mode change 100755 => 100644 arch/inst/V/vwmacc.vv.yaml mode change 100755 => 100644 arch/inst/V/vwmacc.vx.yaml mode change 100755 => 100644 arch/inst/V/vwmaccsu.vv.yaml mode change 100755 => 100644 arch/inst/V/vwmaccsu.vx.yaml mode change 100755 => 100644 arch/inst/V/vwmaccu.vv.yaml mode change 100755 => 100644 arch/inst/V/vwmaccu.vx.yaml mode change 100755 => 100644 arch/inst/V/vwmaccus.vx.yaml mode change 100755 => 100644 arch/inst/V/vwmul.vv.yaml mode change 100755 => 100644 arch/inst/V/vwmul.vx.yaml mode change 100755 => 100644 arch/inst/V/vwmulsu.vv.yaml mode change 100755 => 100644 arch/inst/V/vwmulsu.vx.yaml mode change 100755 => 100644 arch/inst/V/vwmulu.vv.yaml mode change 100755 => 100644 arch/inst/V/vwmulu.vx.yaml mode change 100755 => 100644 arch/inst/V/vwredsum.vs.yaml mode change 100755 => 100644 arch/inst/V/vwredsumu.vs.yaml mode change 100755 => 100644 arch/inst/V/vwsub.vv.yaml mode change 100755 => 100644 arch/inst/V/vwsub.vx.yaml mode change 100755 => 100644 arch/inst/V/vwsub.wv.yaml mode change 100755 => 100644 arch/inst/V/vwsub.wx.yaml mode change 100755 => 100644 arch/inst/V/vwsubu.vv.yaml mode change 100755 => 100644 arch/inst/V/vwsubu.vx.yaml mode change 100755 => 100644 arch/inst/V/vwsubu.wv.yaml mode change 100755 => 100644 arch/inst/V/vwsubu.wx.yaml mode change 100755 => 100644 arch/inst/V/vxor.vi.yaml mode change 100755 => 100644 arch/inst/V/vxor.vv.yaml mode change 100755 => 100644 arch/inst/V/vxor.vx.yaml mode change 100755 => 100644 arch/inst/V/vzext.vf2.yaml mode change 100755 => 100644 arch/inst/V/vzext.vf4.yaml mode change 100755 => 100644 arch/inst/V/vzext.vf8.yaml mode change 100755 => 100644 arch/inst/Zabha/amoadd.b.yaml mode change 100755 => 100644 arch/inst/Zabha/amoadd.h.yaml mode change 100755 => 100644 arch/inst/Zabha/amoand.b.yaml mode change 100755 => 100644 arch/inst/Zabha/amoand.h.yaml mode change 100755 => 100644 arch/inst/Zabha/amocas.b.yaml mode change 100755 => 100644 arch/inst/Zabha/amocas.h.yaml mode change 100755 => 100644 arch/inst/Zabha/amomax.b.yaml mode change 100755 => 100644 arch/inst/Zabha/amomax.h.yaml mode change 100755 => 100644 arch/inst/Zabha/amomaxu.b.yaml mode change 100755 => 100644 arch/inst/Zabha/amomaxu.h.yaml mode change 100755 => 100644 arch/inst/Zabha/amomin.b.yaml mode change 100755 => 100644 arch/inst/Zabha/amomin.h.yaml mode change 100755 => 100644 arch/inst/Zabha/amominu.b.yaml mode change 100755 => 100644 arch/inst/Zabha/amominu.h.yaml mode change 100755 => 100644 arch/inst/Zabha/amoor.b.yaml mode change 100755 => 100644 arch/inst/Zabha/amoor.h.yaml mode change 100755 => 100644 arch/inst/Zabha/amoswap.b.yaml mode change 100755 => 100644 arch/inst/Zabha/amoswap.h.yaml mode change 100755 => 100644 arch/inst/Zabha/amoxor.b.yaml mode change 100755 => 100644 arch/inst/Zabha/amoxor.h.yaml mode change 100755 => 100644 arch/inst/Zacas/amocas.d.yaml mode change 100755 => 100644 arch/inst/Zacas/amocas.q.yaml mode change 100755 => 100644 arch/inst/Zacas/amocas.w.yaml mode change 100755 => 100644 arch/inst/Zalasr/lb.aq.yaml mode change 100755 => 100644 arch/inst/Zalasr/ld.aq.yaml mode change 100755 => 100644 arch/inst/Zalasr/lh.aq.yaml mode change 100755 => 100644 arch/inst/Zalasr/lw.aq.yaml mode change 100755 => 100644 arch/inst/Zalasr/sb.rl.yaml mode change 100755 => 100644 arch/inst/Zalasr/sd.rl.yaml mode change 100755 => 100644 arch/inst/Zalasr/sh.rl.yaml mode change 100755 => 100644 arch/inst/Zalasr/sw.rl.yaml mode change 100755 => 100644 arch/inst/Zawrs/wrs.nto.yaml mode change 100755 => 100644 arch/inst/Zawrs/wrs.sto.yaml mode change 100755 => 100644 arch/inst/Zbkb/brev8.yaml mode change 100755 => 100644 arch/inst/Zbkb/unzip.yaml mode change 100755 => 100644 arch/inst/Zbkb/zip.yaml mode change 100755 => 100644 arch/inst/Zbkx/xperm4.yaml mode change 100755 => 100644 arch/inst/Zbkx/xperm8.yaml mode change 100755 => 100644 arch/inst/Zcb/c.lbu.yaml mode change 100755 => 100644 arch/inst/Zcb/c.lh.yaml mode change 100755 => 100644 arch/inst/Zcb/c.lhu.yaml mode change 100755 => 100644 arch/inst/Zcb/c.mul.yaml mode change 100755 => 100644 arch/inst/Zcb/c.not.yaml mode change 100755 => 100644 arch/inst/Zcb/c.sb.yaml mode change 100755 => 100644 arch/inst/Zcb/c.sext.b.yaml mode change 100755 => 100644 arch/inst/Zcb/c.sext.h.yaml mode change 100755 => 100644 arch/inst/Zcb/c.sh.yaml mode change 100755 => 100644 arch/inst/Zcb/c.zext.b.yaml mode change 100755 => 100644 arch/inst/Zcb/c.zext.h.yaml mode change 100755 => 100644 arch/inst/Zcb/c.zext.w.yaml mode change 100755 => 100644 arch/inst/Zcmp/cm.mva01s.yaml mode change 100755 => 100644 arch/inst/Zcmp/cm.mvsa01.yaml mode change 100755 => 100644 arch/inst/Zcmp/cm.pop.yaml mode change 100755 => 100644 arch/inst/Zcmp/cm.popret.yaml mode change 100755 => 100644 arch/inst/Zcmp/cm.popretz.yaml mode change 100755 => 100644 arch/inst/Zcmp/cm.push.yaml mode change 100755 => 100644 arch/inst/Zfbfmin/fcvt.bf16.s.yaml mode change 100755 => 100644 arch/inst/Zfbfmin/fcvt.s.bf16.yaml mode change 100755 => 100644 arch/inst/Zfh/fadd.h.yaml mode change 100755 => 100644 arch/inst/Zfh/fclass.h.yaml mode change 100755 => 100644 arch/inst/Zfh/fcvt.d.h.yaml mode change 100755 => 100644 arch/inst/Zfh/fcvt.h.d.yaml mode change 100755 => 100644 arch/inst/Zfh/fcvt.h.l.yaml mode change 100755 => 100644 arch/inst/Zfh/fcvt.h.lu.yaml mode change 100755 => 100644 arch/inst/Zfh/fcvt.h.s.yaml mode change 100755 => 100644 arch/inst/Zfh/fcvt.h.w.yaml mode change 100755 => 100644 arch/inst/Zfh/fcvt.h.wu.yaml mode change 100755 => 100644 arch/inst/Zfh/fcvt.l.h.yaml mode change 100755 => 100644 arch/inst/Zfh/fcvt.lu.h.yaml mode change 100755 => 100644 arch/inst/Zfh/fcvt.s.h.yaml mode change 100755 => 100644 arch/inst/Zfh/fcvt.w.h.yaml mode change 100755 => 100644 arch/inst/Zfh/fcvt.wu.h.yaml mode change 100755 => 100644 arch/inst/Zfh/fdiv.h.yaml mode change 100755 => 100644 arch/inst/Zfh/feq.h.yaml mode change 100755 => 100644 arch/inst/Zfh/fle.h.yaml mode change 100755 => 100644 arch/inst/Zfh/fleq.h.yaml mode change 100755 => 100644 arch/inst/Zfh/flh.yaml mode change 100755 => 100644 arch/inst/Zfh/fli.h.yaml mode change 100755 => 100644 arch/inst/Zfh/flt.h.yaml mode change 100755 => 100644 arch/inst/Zfh/fltq.h.yaml mode change 100755 => 100644 arch/inst/Zfh/fmadd.h.yaml mode change 100755 => 100644 arch/inst/Zfh/fmax.h.yaml mode change 100755 => 100644 arch/inst/Zfh/fmaxm.h.yaml mode change 100755 => 100644 arch/inst/Zfh/fmin.h.yaml mode change 100755 => 100644 arch/inst/Zfh/fminm.h.yaml mode change 100755 => 100644 arch/inst/Zfh/fmsub.h.yaml mode change 100755 => 100644 arch/inst/Zfh/fmul.h.yaml mode change 100755 => 100644 arch/inst/Zfh/fmv.h.x.yaml mode change 100755 => 100644 arch/inst/Zfh/fmv.x.h.yaml mode change 100755 => 100644 arch/inst/Zfh/fnmadd.h.yaml mode change 100755 => 100644 arch/inst/Zfh/fnmsub.h.yaml mode change 100755 => 100644 arch/inst/Zfh/fround.h.yaml mode change 100755 => 100644 arch/inst/Zfh/froundnx.h.yaml mode change 100755 => 100644 arch/inst/Zfh/fsgnj.h.yaml mode change 100755 => 100644 arch/inst/Zfh/fsgnjn.h.yaml mode change 100755 => 100644 arch/inst/Zfh/fsgnjx.h.yaml mode change 100755 => 100644 arch/inst/Zfh/fsh.yaml mode change 100755 => 100644 arch/inst/Zfh/fsqrt.h.yaml mode change 100755 => 100644 arch/inst/Zfh/fsub.h.yaml mode change 100755 => 100644 arch/inst/Zicbom/cbo.clean.yaml mode change 100755 => 100644 arch/inst/Zicbom/cbo.flush.yaml mode change 100755 => 100644 arch/inst/Zicbom/cbo.inval.yaml mode change 100755 => 100644 arch/inst/Zicboz/cbo.zero.yaml mode change 100755 => 100644 arch/inst/Zicfilp/lpad.yaml mode change 100755 => 100644 arch/inst/Zicfiss/ssamoswap.d.yaml mode change 100755 => 100644 arch/inst/Zicfiss/ssamoswap.w.yaml mode change 100755 => 100644 arch/inst/Zicfiss/sspopchk.x1.yaml mode change 100755 => 100644 arch/inst/Zicfiss/sspopchk.x5.yaml mode change 100755 => 100644 arch/inst/Zicfiss/sspush.x1.yaml mode change 100755 => 100644 arch/inst/Zicfiss/sspush.x5.yaml mode change 100755 => 100644 arch/inst/Zicfiss/ssrdp.yaml mode change 100755 => 100644 arch/inst/Zicond/czero.eqz.yaml mode change 100755 => 100644 arch/inst/Zicond/czero.nez.yaml mode change 100755 => 100644 arch/inst/Zicsr/csrrc.yaml mode change 100755 => 100644 arch/inst/Zicsr/csrrci.yaml mode change 100755 => 100644 arch/inst/Zicsr/csrrs.yaml mode change 100755 => 100644 arch/inst/Zicsr/csrrsi.yaml mode change 100755 => 100644 arch/inst/Zicsr/csrrw.yaml mode change 100755 => 100644 arch/inst/Zicsr/csrrwi.yaml mode change 100755 => 100644 arch/inst/Zifencei/fence.i.yaml mode change 100755 => 100644 arch/inst/Zimop/mop.r.n.yaml mode change 100755 => 100644 arch/inst/Zimop/mop.rr.n.yaml mode change 100755 => 100644 arch/inst/Zk/aes32dsi.yaml mode change 100755 => 100644 arch/inst/Zk/aes32dsmi.yaml mode change 100755 => 100644 arch/inst/Zk/aes32esi.yaml mode change 100755 => 100644 arch/inst/Zk/aes32esmi.yaml mode change 100755 => 100644 arch/inst/Zk/aes64ds.yaml mode change 100755 => 100644 arch/inst/Zk/aes64dsm.yaml mode change 100755 => 100644 arch/inst/Zk/aes64es.yaml mode change 100755 => 100644 arch/inst/Zk/aes64esm.yaml mode change 100755 => 100644 arch/inst/Zk/aes64im.yaml mode change 100755 => 100644 arch/inst/Zk/aes64ks1i.yaml mode change 100755 => 100644 arch/inst/Zk/aes64ks2.yaml mode change 100755 => 100644 arch/inst/Zk/pack.yaml mode change 100755 => 100644 arch/inst/Zk/packh.yaml mode change 100755 => 100644 arch/inst/Zk/packw.yaml mode change 100755 => 100644 arch/inst/Zk/sha256sig0.yaml mode change 100755 => 100644 arch/inst/Zk/sha256sig1.yaml mode change 100755 => 100644 arch/inst/Zk/sha256sum0.yaml mode change 100755 => 100644 arch/inst/Zk/sha256sum1.yaml mode change 100755 => 100644 arch/inst/Zk/sha512sig0.yaml mode change 100755 => 100644 arch/inst/Zk/sha512sig0h.yaml mode change 100755 => 100644 arch/inst/Zk/sha512sig0l.yaml mode change 100755 => 100644 arch/inst/Zk/sha512sig1.yaml mode change 100755 => 100644 arch/inst/Zk/sha512sig1h.yaml mode change 100755 => 100644 arch/inst/Zk/sha512sig1l.yaml mode change 100755 => 100644 arch/inst/Zk/sha512sum0.yaml mode change 100755 => 100644 arch/inst/Zk/sha512sum0r.yaml mode change 100755 => 100644 arch/inst/Zk/sha512sum1.yaml mode change 100755 => 100644 arch/inst/Zk/sha512sum1r.yaml mode change 100755 => 100644 arch/inst/Zks/sm3p0.yaml mode change 100755 => 100644 arch/inst/Zks/sm3p1.yaml mode change 100755 => 100644 arch/inst/Zks/sm4ed.yaml mode change 100755 => 100644 arch/inst/Zks/sm4ks.yaml mode change 100755 => 100644 arch/inst/Zvbb/vandn.vv.yaml mode change 100755 => 100644 arch/inst/Zvbb/vandn.vx.yaml mode change 100755 => 100644 arch/inst/Zvbb/vbrev.v.yaml mode change 100755 => 100644 arch/inst/Zvbb/vbrev8.v.yaml mode change 100755 => 100644 arch/inst/Zvbb/vclz.v.yaml mode change 100755 => 100644 arch/inst/Zvbb/vcpop.v.yaml mode change 100755 => 100644 arch/inst/Zvbb/vctz.v.yaml mode change 100755 => 100644 arch/inst/Zvbb/vrev8.v.yaml mode change 100755 => 100644 arch/inst/Zvbb/vrol.vv.yaml mode change 100755 => 100644 arch/inst/Zvbb/vrol.vx.yaml mode change 100755 => 100644 arch/inst/Zvbb/vror.vi.yaml mode change 100755 => 100644 arch/inst/Zvbb/vror.vv.yaml mode change 100755 => 100644 arch/inst/Zvbb/vror.vx.yaml mode change 100755 => 100644 arch/inst/Zvbb/vwsll.vi.yaml mode change 100755 => 100644 arch/inst/Zvbb/vwsll.vv.yaml mode change 100755 => 100644 arch/inst/Zvbb/vwsll.vx.yaml mode change 100755 => 100644 arch/inst/Zvbc/vclmul.vv.yaml mode change 100755 => 100644 arch/inst/Zvbc/vclmul.vx.yaml mode change 100755 => 100644 arch/inst/Zvbc/vclmulh.vv.yaml mode change 100755 => 100644 arch/inst/Zvbc/vclmulh.vx.yaml mode change 100755 => 100644 arch/inst/Zvfbfmin/vfncvtbf16.f.f.w.yaml mode change 100755 => 100644 arch/inst/Zvfbfmin/vfwcvtbf16.f.f.v.yaml mode change 100755 => 100644 arch/inst/Zvfbfwma/vfwmaccbf16.vf.yaml mode change 100755 => 100644 arch/inst/Zvfbfwma/vfwmaccbf16.vv.yaml mode change 100755 => 100644 arch/inst/Zvkg/vghsh.vv.yaml mode change 100755 => 100644 arch/inst/Zvkg/vgmul.vv.yaml mode change 100755 => 100644 arch/inst/Zvkn/vaesdf.vs.yaml mode change 100755 => 100644 arch/inst/Zvkn/vaesdf.vv.yaml mode change 100755 => 100644 arch/inst/Zvkn/vaesdm.vs.yaml mode change 100755 => 100644 arch/inst/Zvkn/vaesdm.vv.yaml mode change 100755 => 100644 arch/inst/Zvkn/vaesef.vs.yaml mode change 100755 => 100644 arch/inst/Zvkn/vaesef.vv.yaml mode change 100755 => 100644 arch/inst/Zvkn/vaesem.vs.yaml mode change 100755 => 100644 arch/inst/Zvkn/vaesem.vv.yaml mode change 100755 => 100644 arch/inst/Zvkn/vaeskf1.vi.yaml mode change 100755 => 100644 arch/inst/Zvkn/vaeskf2.vi.yaml mode change 100755 => 100644 arch/inst/Zvkn/vaesz.vs.yaml mode change 100755 => 100644 arch/inst/Zvkn/vsha2ch.vv.yaml mode change 100755 => 100644 arch/inst/Zvkn/vsha2cl.vv.yaml mode change 100755 => 100644 arch/inst/Zvkn/vsha2ms.vv.yaml mode change 100755 => 100644 arch/inst/Zvks/vsm3c.vi.yaml mode change 100755 => 100644 arch/inst/Zvks/vsm3me.vv.yaml mode change 100755 => 100644 arch/inst/Zvks/vsm4k.vi.yaml mode change 100755 => 100644 arch/inst/Zvks/vsm4r.vs.yaml mode change 100755 => 100644 arch/inst/Zvks/vsm4r.vv.yaml diff --git a/arch/inst/A/amoadd.d.yaml b/arch/inst/A/amoadd.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/A/amoadd.w.yaml b/arch/inst/A/amoadd.w.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/A/amoand.d.yaml b/arch/inst/A/amoand.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/A/amoand.w.yaml b/arch/inst/A/amoand.w.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/A/amomax.d.yaml b/arch/inst/A/amomax.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/A/amomax.w.yaml b/arch/inst/A/amomax.w.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/A/amomaxu.d.yaml b/arch/inst/A/amomaxu.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/A/amomaxu.w.yaml b/arch/inst/A/amomaxu.w.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/A/amomin.d.yaml b/arch/inst/A/amomin.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/A/amomin.w.yaml b/arch/inst/A/amomin.w.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/A/amominu.d.yaml b/arch/inst/A/amominu.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/A/amominu.w.yaml b/arch/inst/A/amominu.w.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/A/amoor.d.yaml b/arch/inst/A/amoor.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/A/amoor.w.yaml b/arch/inst/A/amoor.w.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/A/amoswap.d.yaml b/arch/inst/A/amoswap.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/A/amoswap.w.yaml b/arch/inst/A/amoswap.w.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/A/amoxor.d.yaml b/arch/inst/A/amoxor.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/A/amoxor.w.yaml b/arch/inst/A/amoxor.w.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/A/lr.d.yaml b/arch/inst/A/lr.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/A/lr.w.yaml b/arch/inst/A/lr.w.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/A/sc.d.yaml b/arch/inst/A/sc.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/A/sc.w.yaml b/arch/inst/A/sc.w.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/B/add.uw.yaml b/arch/inst/B/add.uw.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/B/andn.yaml b/arch/inst/B/andn.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/B/bclr.yaml b/arch/inst/B/bclr.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/B/bclri.yaml b/arch/inst/B/bclri.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/B/bext.yaml b/arch/inst/B/bext.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/B/bexti.yaml b/arch/inst/B/bexti.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/B/binv.yaml b/arch/inst/B/binv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/B/binvi.yaml b/arch/inst/B/binvi.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/B/bset.yaml b/arch/inst/B/bset.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/B/bseti.yaml b/arch/inst/B/bseti.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/B/clmul.yaml b/arch/inst/B/clmul.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/B/clmulh.yaml b/arch/inst/B/clmulh.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/B/clmulr.yaml b/arch/inst/B/clmulr.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/B/clz.yaml b/arch/inst/B/clz.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/B/clzw.yaml b/arch/inst/B/clzw.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/B/cpop.yaml b/arch/inst/B/cpop.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/B/cpopw.yaml b/arch/inst/B/cpopw.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/B/ctz.yaml b/arch/inst/B/ctz.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/B/ctzw.yaml b/arch/inst/B/ctzw.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/B/max.yaml b/arch/inst/B/max.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/B/maxu.yaml b/arch/inst/B/maxu.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/B/min.yaml b/arch/inst/B/min.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/B/minu.yaml b/arch/inst/B/minu.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/B/orc.b.yaml b/arch/inst/B/orc.b.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/B/orn.yaml b/arch/inst/B/orn.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/B/rev8.yaml b/arch/inst/B/rev8.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/B/rol.yaml b/arch/inst/B/rol.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/B/rolw.yaml b/arch/inst/B/rolw.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/B/ror.yaml b/arch/inst/B/ror.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/B/rori.yaml b/arch/inst/B/rori.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/B/roriw.yaml b/arch/inst/B/roriw.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/B/rorw.yaml b/arch/inst/B/rorw.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/B/sext.b.yaml b/arch/inst/B/sext.b.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/B/sext.h.yaml b/arch/inst/B/sext.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/B/sh1add.uw.yaml b/arch/inst/B/sh1add.uw.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/B/sh1add.yaml b/arch/inst/B/sh1add.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/B/sh2add.uw.yaml b/arch/inst/B/sh2add.uw.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/B/sh2add.yaml b/arch/inst/B/sh2add.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/B/sh3add.uw.yaml b/arch/inst/B/sh3add.uw.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/B/sh3add.yaml b/arch/inst/B/sh3add.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/B/slli.uw.yaml b/arch/inst/B/slli.uw.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/B/xnor.yaml b/arch/inst/B/xnor.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/B/zext.h.yaml b/arch/inst/B/zext.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/C/c.add.yaml b/arch/inst/C/c.add.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/C/c.addi.yaml b/arch/inst/C/c.addi.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/C/c.addi16sp.yaml b/arch/inst/C/c.addi16sp.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/C/c.addi4spn.yaml b/arch/inst/C/c.addi4spn.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/C/c.addiw.yaml b/arch/inst/C/c.addiw.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/C/c.addw.yaml b/arch/inst/C/c.addw.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/C/c.and.yaml b/arch/inst/C/c.and.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/C/c.andi.yaml b/arch/inst/C/c.andi.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/C/c.beqz.yaml b/arch/inst/C/c.beqz.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/C/c.bnez.yaml b/arch/inst/C/c.bnez.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/C/c.ebreak.yaml b/arch/inst/C/c.ebreak.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/C/c.fld.yaml b/arch/inst/C/c.fld.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/C/c.fldsp.yaml b/arch/inst/C/c.fldsp.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/C/c.flw.yaml b/arch/inst/C/c.flw.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/C/c.flwsp.yaml b/arch/inst/C/c.flwsp.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/C/c.fsd.yaml b/arch/inst/C/c.fsd.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/C/c.fsdsp.yaml b/arch/inst/C/c.fsdsp.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/C/c.fsw.yaml b/arch/inst/C/c.fsw.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/C/c.fswsp.yaml b/arch/inst/C/c.fswsp.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/C/c.j.yaml b/arch/inst/C/c.j.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/C/c.jal.yaml b/arch/inst/C/c.jal.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/C/c.jalr.yaml b/arch/inst/C/c.jalr.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/C/c.jr.yaml b/arch/inst/C/c.jr.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/C/c.ld.yaml b/arch/inst/C/c.ld.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/C/c.ldsp.yaml b/arch/inst/C/c.ldsp.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/C/c.li.yaml b/arch/inst/C/c.li.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/C/c.lui.yaml b/arch/inst/C/c.lui.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/C/c.lw.yaml b/arch/inst/C/c.lw.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/C/c.lwsp.yaml b/arch/inst/C/c.lwsp.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/C/c.mv.yaml b/arch/inst/C/c.mv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/C/c.nop.yaml b/arch/inst/C/c.nop.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/C/c.or.yaml b/arch/inst/C/c.or.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/C/c.sd.yaml b/arch/inst/C/c.sd.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/C/c.sdsp.yaml b/arch/inst/C/c.sdsp.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/C/c.slli.yaml b/arch/inst/C/c.slli.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/C/c.srai.yaml b/arch/inst/C/c.srai.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/C/c.srli.yaml b/arch/inst/C/c.srli.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/C/c.sub.yaml b/arch/inst/C/c.sub.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/C/c.subw.yaml b/arch/inst/C/c.subw.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/C/c.sw.yaml b/arch/inst/C/c.sw.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/C/c.swsp.yaml b/arch/inst/C/c.swsp.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/C/c.xor.yaml b/arch/inst/C/c.xor.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/D/fadd.d.yaml b/arch/inst/D/fadd.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/D/fclass.d.yaml b/arch/inst/D/fclass.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/D/fcvt.d.l.yaml b/arch/inst/D/fcvt.d.l.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/D/fcvt.d.lu.yaml b/arch/inst/D/fcvt.d.lu.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/D/fcvt.d.s.yaml b/arch/inst/D/fcvt.d.s.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/D/fcvt.d.w.yaml b/arch/inst/D/fcvt.d.w.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/D/fcvt.d.wu.yaml b/arch/inst/D/fcvt.d.wu.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/D/fcvt.l.d.yaml b/arch/inst/D/fcvt.l.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/D/fcvt.lu.d.yaml b/arch/inst/D/fcvt.lu.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/D/fcvt.s.d.yaml b/arch/inst/D/fcvt.s.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/D/fcvt.w.d.yaml b/arch/inst/D/fcvt.w.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/D/fcvt.wu.d.yaml b/arch/inst/D/fcvt.wu.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/D/fcvtmod.w.d.yaml b/arch/inst/D/fcvtmod.w.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/D/fdiv.d.yaml b/arch/inst/D/fdiv.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/D/feq.d.yaml b/arch/inst/D/feq.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/D/fld.yaml b/arch/inst/D/fld.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/D/fle.d.yaml b/arch/inst/D/fle.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/D/fleq.d.yaml b/arch/inst/D/fleq.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/D/fli.d.yaml b/arch/inst/D/fli.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/D/flt.d.yaml b/arch/inst/D/flt.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/D/fltq.d.yaml b/arch/inst/D/fltq.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/D/fmadd.d.yaml b/arch/inst/D/fmadd.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/D/fmax.d.yaml b/arch/inst/D/fmax.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/D/fmaxm.d.yaml b/arch/inst/D/fmaxm.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/D/fmin.d.yaml b/arch/inst/D/fmin.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/D/fminm.d.yaml b/arch/inst/D/fminm.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/D/fmsub.d.yaml b/arch/inst/D/fmsub.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/D/fmul.d.yaml b/arch/inst/D/fmul.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/D/fmv.d.x.yaml b/arch/inst/D/fmv.d.x.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/D/fmv.x.d.yaml b/arch/inst/D/fmv.x.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/D/fmvh.x.d.yaml b/arch/inst/D/fmvh.x.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/D/fmvp.d.x.yaml b/arch/inst/D/fmvp.d.x.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/D/fnmadd.d.yaml b/arch/inst/D/fnmadd.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/D/fnmsub.d.yaml b/arch/inst/D/fnmsub.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/D/fround.d.yaml b/arch/inst/D/fround.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/D/froundnx.d.yaml b/arch/inst/D/froundnx.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/D/fsd.yaml b/arch/inst/D/fsd.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/D/fsgnj.d.yaml b/arch/inst/D/fsgnj.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/D/fsgnjn.d.yaml b/arch/inst/D/fsgnjn.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/D/fsgnjx.d.yaml b/arch/inst/D/fsgnjx.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/D/fsqrt.d.yaml b/arch/inst/D/fsqrt.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/D/fsub.d.yaml b/arch/inst/D/fsub.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/F/fadd.s.yaml b/arch/inst/F/fadd.s.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/F/fclass.s.yaml b/arch/inst/F/fclass.s.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/F/fcvt.l.s.yaml b/arch/inst/F/fcvt.l.s.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/F/fcvt.lu.s.yaml b/arch/inst/F/fcvt.lu.s.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/F/fcvt.s.l.yaml b/arch/inst/F/fcvt.s.l.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/F/fcvt.s.lu.yaml b/arch/inst/F/fcvt.s.lu.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/F/fcvt.s.w.yaml b/arch/inst/F/fcvt.s.w.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/F/fcvt.s.wu.yaml b/arch/inst/F/fcvt.s.wu.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/F/fcvt.w.s.yaml b/arch/inst/F/fcvt.w.s.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/F/fcvt.wu.s.yaml b/arch/inst/F/fcvt.wu.s.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/F/fdiv.s.yaml b/arch/inst/F/fdiv.s.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/F/feq.s.yaml b/arch/inst/F/feq.s.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/F/fle.s.yaml b/arch/inst/F/fle.s.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/F/fleq.s.yaml b/arch/inst/F/fleq.s.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/F/fli.s.yaml b/arch/inst/F/fli.s.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/F/flt.s.yaml b/arch/inst/F/flt.s.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/F/fltq.s.yaml b/arch/inst/F/fltq.s.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/F/flw.yaml b/arch/inst/F/flw.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/F/fmadd.s.yaml b/arch/inst/F/fmadd.s.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/F/fmax.s.yaml b/arch/inst/F/fmax.s.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/F/fmaxm.s.yaml b/arch/inst/F/fmaxm.s.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/F/fmin.s.yaml b/arch/inst/F/fmin.s.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/F/fminm.s.yaml b/arch/inst/F/fminm.s.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/F/fmsub.s.yaml b/arch/inst/F/fmsub.s.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/F/fmul.s.yaml b/arch/inst/F/fmul.s.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/F/fmv.w.x.yaml b/arch/inst/F/fmv.w.x.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/F/fmv.x.w.yaml b/arch/inst/F/fmv.x.w.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/F/fnmadd.s.yaml b/arch/inst/F/fnmadd.s.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/F/fnmsub.s.yaml b/arch/inst/F/fnmsub.s.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/F/fround.s.yaml b/arch/inst/F/fround.s.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/F/froundnx.s.yaml b/arch/inst/F/froundnx.s.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/F/fsgnj.s.yaml b/arch/inst/F/fsgnj.s.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/F/fsgnjn.s.yaml b/arch/inst/F/fsgnjn.s.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/F/fsgnjx.s.yaml b/arch/inst/F/fsgnjx.s.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/F/fsqrt.s.yaml b/arch/inst/F/fsqrt.s.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/F/fsub.s.yaml b/arch/inst/F/fsub.s.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/F/fsw.yaml b/arch/inst/F/fsw.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/H/hfence.gvma.yaml b/arch/inst/H/hfence.gvma.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/H/hfence.vvma.yaml b/arch/inst/H/hfence.vvma.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/H/hlv.b.yaml b/arch/inst/H/hlv.b.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/H/hlv.bu.yaml b/arch/inst/H/hlv.bu.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/H/hlv.d.yaml b/arch/inst/H/hlv.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/H/hlv.h.yaml b/arch/inst/H/hlv.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/H/hlv.hu.yaml b/arch/inst/H/hlv.hu.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/H/hlv.w.yaml b/arch/inst/H/hlv.w.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/H/hlv.wu.yaml b/arch/inst/H/hlv.wu.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/H/hlvx.hu.yaml b/arch/inst/H/hlvx.hu.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/H/hlvx.wu.yaml b/arch/inst/H/hlvx.wu.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/H/hsv.b.yaml b/arch/inst/H/hsv.b.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/H/hsv.d.yaml b/arch/inst/H/hsv.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/H/hsv.h.yaml b/arch/inst/H/hsv.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/H/hsv.w.yaml b/arch/inst/H/hsv.w.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/add.yaml b/arch/inst/I/add.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/addi.yaml b/arch/inst/I/addi.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/addiw.yaml b/arch/inst/I/addiw.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/addw.yaml b/arch/inst/I/addw.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/and.yaml b/arch/inst/I/and.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/andi.yaml b/arch/inst/I/andi.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/auipc.yaml b/arch/inst/I/auipc.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/beq.yaml b/arch/inst/I/beq.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/bge.yaml b/arch/inst/I/bge.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/bgeu.yaml b/arch/inst/I/bgeu.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/blt.yaml b/arch/inst/I/blt.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/bltu.yaml b/arch/inst/I/bltu.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/bne.yaml b/arch/inst/I/bne.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/ebreak.yaml b/arch/inst/I/ebreak.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/ecall.yaml b/arch/inst/I/ecall.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/fence.yaml b/arch/inst/I/fence.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/jal.yaml b/arch/inst/I/jal.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/jalr.yaml b/arch/inst/I/jalr.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/lb.yaml b/arch/inst/I/lb.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/lbu.yaml b/arch/inst/I/lbu.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/ld.yaml b/arch/inst/I/ld.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/lh.yaml b/arch/inst/I/lh.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/lhu.yaml b/arch/inst/I/lhu.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/lui.yaml b/arch/inst/I/lui.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/lw.yaml b/arch/inst/I/lw.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/lwu.yaml b/arch/inst/I/lwu.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/mret.yaml b/arch/inst/I/mret.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/or.yaml b/arch/inst/I/or.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/ori.yaml b/arch/inst/I/ori.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/sb.yaml b/arch/inst/I/sb.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/sd.yaml b/arch/inst/I/sd.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/sh.yaml b/arch/inst/I/sh.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/sll.yaml b/arch/inst/I/sll.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/slli.yaml b/arch/inst/I/slli.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/slliw.yaml b/arch/inst/I/slliw.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/sllw.yaml b/arch/inst/I/sllw.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/slt.yaml b/arch/inst/I/slt.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/slti.yaml b/arch/inst/I/slti.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/sltiu.yaml b/arch/inst/I/sltiu.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/sltu.yaml b/arch/inst/I/sltu.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/sra.yaml b/arch/inst/I/sra.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/srai.yaml b/arch/inst/I/srai.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/sraiw.yaml b/arch/inst/I/sraiw.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/sraw.yaml b/arch/inst/I/sraw.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/srl.yaml b/arch/inst/I/srl.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/srli.yaml b/arch/inst/I/srli.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/srliw.yaml b/arch/inst/I/srliw.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/srlw.yaml b/arch/inst/I/srlw.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/sub.yaml b/arch/inst/I/sub.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/subw.yaml b/arch/inst/I/subw.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/sw.yaml b/arch/inst/I/sw.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/wfi.yaml b/arch/inst/I/wfi.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/xor.yaml b/arch/inst/I/xor.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/I/xori.yaml b/arch/inst/I/xori.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/M/div.yaml b/arch/inst/M/div.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/M/divu.yaml b/arch/inst/M/divu.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/M/divuw.yaml b/arch/inst/M/divuw.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/M/divw.yaml b/arch/inst/M/divw.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/M/mul.yaml b/arch/inst/M/mul.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/M/mulh.yaml b/arch/inst/M/mulh.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/M/mulhsu.yaml b/arch/inst/M/mulhsu.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/M/mulhu.yaml b/arch/inst/M/mulhu.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/M/mulw.yaml b/arch/inst/M/mulw.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/M/rem.yaml b/arch/inst/M/rem.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/M/remu.yaml b/arch/inst/M/remu.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/M/remuw.yaml b/arch/inst/M/remuw.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/M/remw.yaml b/arch/inst/M/remw.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Q/fadd.q.yaml b/arch/inst/Q/fadd.q.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Q/fclass.q.yaml b/arch/inst/Q/fclass.q.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Q/fcvt.d.q.yaml b/arch/inst/Q/fcvt.d.q.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Q/fcvt.h.q.yaml b/arch/inst/Q/fcvt.h.q.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Q/fcvt.l.q.yaml b/arch/inst/Q/fcvt.l.q.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Q/fcvt.lu.q.yaml b/arch/inst/Q/fcvt.lu.q.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Q/fcvt.q.d.yaml b/arch/inst/Q/fcvt.q.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Q/fcvt.q.h.yaml b/arch/inst/Q/fcvt.q.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Q/fcvt.q.l.yaml b/arch/inst/Q/fcvt.q.l.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Q/fcvt.q.lu.yaml b/arch/inst/Q/fcvt.q.lu.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Q/fcvt.q.s.yaml b/arch/inst/Q/fcvt.q.s.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Q/fcvt.q.w.yaml b/arch/inst/Q/fcvt.q.w.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Q/fcvt.q.wu.yaml b/arch/inst/Q/fcvt.q.wu.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Q/fcvt.s.q.yaml b/arch/inst/Q/fcvt.s.q.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Q/fcvt.w.q.yaml b/arch/inst/Q/fcvt.w.q.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Q/fcvt.wu.q.yaml b/arch/inst/Q/fcvt.wu.q.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Q/fdiv.q.yaml b/arch/inst/Q/fdiv.q.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Q/feq.q.yaml b/arch/inst/Q/feq.q.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Q/fle.q.yaml b/arch/inst/Q/fle.q.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Q/fleq.q.yaml b/arch/inst/Q/fleq.q.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Q/fli.q.yaml b/arch/inst/Q/fli.q.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Q/flq.yaml b/arch/inst/Q/flq.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Q/flt.q.yaml b/arch/inst/Q/flt.q.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Q/fltq.q.yaml b/arch/inst/Q/fltq.q.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Q/fmadd.q.yaml b/arch/inst/Q/fmadd.q.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Q/fmax.q.yaml b/arch/inst/Q/fmax.q.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Q/fmaxm.q.yaml b/arch/inst/Q/fmaxm.q.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Q/fmin.q.yaml b/arch/inst/Q/fmin.q.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Q/fminm.q.yaml b/arch/inst/Q/fminm.q.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Q/fmsub.q.yaml b/arch/inst/Q/fmsub.q.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Q/fmul.q.yaml b/arch/inst/Q/fmul.q.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Q/fmvh.x.q.yaml b/arch/inst/Q/fmvh.x.q.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Q/fmvp.q.x.yaml b/arch/inst/Q/fmvp.q.x.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Q/fnmadd.q.yaml b/arch/inst/Q/fnmadd.q.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Q/fnmsub.q.yaml b/arch/inst/Q/fnmsub.q.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Q/fround.q.yaml b/arch/inst/Q/fround.q.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Q/froundnx.q.yaml b/arch/inst/Q/froundnx.q.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Q/fsgnj.q.yaml b/arch/inst/Q/fsgnj.q.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Q/fsgnjn.q.yaml b/arch/inst/Q/fsgnjn.q.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Q/fsgnjx.q.yaml b/arch/inst/Q/fsgnjx.q.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Q/fsq.yaml b/arch/inst/Q/fsq.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Q/fsqrt.q.yaml b/arch/inst/Q/fsqrt.q.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Q/fsub.q.yaml b/arch/inst/Q/fsub.q.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/S/sfence.vma.yaml b/arch/inst/S/sfence.vma.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/S/sret.yaml b/arch/inst/S/sret.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Sdext/dret.yaml b/arch/inst/Sdext/dret.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Smdbltrp/sctrclr.yaml b/arch/inst/Smdbltrp/sctrclr.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Smrnmi/mnret.yaml b/arch/inst/Smrnmi/mnret.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Svinval/hinval.gvma.yaml b/arch/inst/Svinval/hinval.gvma.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Svinval/hinval.vvma.yaml b/arch/inst/Svinval/hinval.vvma.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Svinval/sfence.inval.ir.yaml b/arch/inst/Svinval/sfence.inval.ir.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Svinval/sfence.w.inval.yaml b/arch/inst/Svinval/sfence.w.inval.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Svinval/sinval.vma.yaml b/arch/inst/Svinval/sinval.vma.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vaadd.vv.yaml b/arch/inst/V/vaadd.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vaadd.vx.yaml b/arch/inst/V/vaadd.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vaaddu.vv.yaml b/arch/inst/V/vaaddu.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vaaddu.vx.yaml b/arch/inst/V/vaaddu.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vadc.vim.yaml b/arch/inst/V/vadc.vim.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vadc.vvm.yaml b/arch/inst/V/vadc.vvm.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vadc.vxm.yaml b/arch/inst/V/vadc.vxm.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vadd.vi.yaml b/arch/inst/V/vadd.vi.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vadd.vv.yaml b/arch/inst/V/vadd.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vadd.vx.yaml b/arch/inst/V/vadd.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vand.vi.yaml b/arch/inst/V/vand.vi.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vand.vv.yaml b/arch/inst/V/vand.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vand.vx.yaml b/arch/inst/V/vand.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vasub.vv.yaml b/arch/inst/V/vasub.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vasub.vx.yaml b/arch/inst/V/vasub.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vasubu.vv.yaml b/arch/inst/V/vasubu.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vasubu.vx.yaml b/arch/inst/V/vasubu.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vcompress.vm.yaml b/arch/inst/V/vcompress.vm.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vcpop.m.yaml b/arch/inst/V/vcpop.m.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vdiv.vv.yaml b/arch/inst/V/vdiv.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vdiv.vx.yaml b/arch/inst/V/vdiv.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vdivu.vv.yaml b/arch/inst/V/vdivu.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vdivu.vx.yaml b/arch/inst/V/vdivu.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfadd.vf.yaml b/arch/inst/V/vfadd.vf.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfadd.vv.yaml b/arch/inst/V/vfadd.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfclass.v.yaml b/arch/inst/V/vfclass.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfcvt.f.x.v.yaml b/arch/inst/V/vfcvt.f.x.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfcvt.f.xu.v.yaml b/arch/inst/V/vfcvt.f.xu.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfcvt.rtz.x.f.v.yaml b/arch/inst/V/vfcvt.rtz.x.f.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfcvt.rtz.xu.f.v.yaml b/arch/inst/V/vfcvt.rtz.xu.f.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfcvt.x.f.v.yaml b/arch/inst/V/vfcvt.x.f.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfcvt.xu.f.v.yaml b/arch/inst/V/vfcvt.xu.f.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfdiv.vf.yaml b/arch/inst/V/vfdiv.vf.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfdiv.vv.yaml b/arch/inst/V/vfdiv.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfirst.m.yaml b/arch/inst/V/vfirst.m.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfmacc.vf.yaml b/arch/inst/V/vfmacc.vf.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfmacc.vv.yaml b/arch/inst/V/vfmacc.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfmadd.vf.yaml b/arch/inst/V/vfmadd.vf.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfmadd.vv.yaml b/arch/inst/V/vfmadd.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfmax.vf.yaml b/arch/inst/V/vfmax.vf.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfmax.vv.yaml b/arch/inst/V/vfmax.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfmerge.vfm.yaml b/arch/inst/V/vfmerge.vfm.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfmin.vf.yaml b/arch/inst/V/vfmin.vf.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfmin.vv.yaml b/arch/inst/V/vfmin.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfmsac.vf.yaml b/arch/inst/V/vfmsac.vf.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfmsac.vv.yaml b/arch/inst/V/vfmsac.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfmsub.vf.yaml b/arch/inst/V/vfmsub.vf.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfmsub.vv.yaml b/arch/inst/V/vfmsub.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfmul.vf.yaml b/arch/inst/V/vfmul.vf.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfmul.vv.yaml b/arch/inst/V/vfmul.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfmv.f.s.yaml b/arch/inst/V/vfmv.f.s.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfmv.s.f.yaml b/arch/inst/V/vfmv.s.f.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfmv.v.f.yaml b/arch/inst/V/vfmv.v.f.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfncvt.f.f.w.yaml b/arch/inst/V/vfncvt.f.f.w.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfncvt.f.x.w.yaml b/arch/inst/V/vfncvt.f.x.w.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfncvt.f.xu.w.yaml b/arch/inst/V/vfncvt.f.xu.w.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfncvt.rod.f.f.w.yaml b/arch/inst/V/vfncvt.rod.f.f.w.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfncvt.rtz.x.f.w.yaml b/arch/inst/V/vfncvt.rtz.x.f.w.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfncvt.rtz.xu.f.w.yaml b/arch/inst/V/vfncvt.rtz.xu.f.w.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfncvt.x.f.w.yaml b/arch/inst/V/vfncvt.x.f.w.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfncvt.xu.f.w.yaml b/arch/inst/V/vfncvt.xu.f.w.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfnmacc.vf.yaml b/arch/inst/V/vfnmacc.vf.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfnmacc.vv.yaml b/arch/inst/V/vfnmacc.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfnmadd.vf.yaml b/arch/inst/V/vfnmadd.vf.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfnmadd.vv.yaml b/arch/inst/V/vfnmadd.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfnmsac.vf.yaml b/arch/inst/V/vfnmsac.vf.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfnmsac.vv.yaml b/arch/inst/V/vfnmsac.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfnmsub.vf.yaml b/arch/inst/V/vfnmsub.vf.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfnmsub.vv.yaml b/arch/inst/V/vfnmsub.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfrdiv.vf.yaml b/arch/inst/V/vfrdiv.vf.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfrec7.v.yaml b/arch/inst/V/vfrec7.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfredmax.vs.yaml b/arch/inst/V/vfredmax.vs.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfredmin.vs.yaml b/arch/inst/V/vfredmin.vs.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfredosum.vs.yaml b/arch/inst/V/vfredosum.vs.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfredusum.vs.yaml b/arch/inst/V/vfredusum.vs.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfrsqrt7.v.yaml b/arch/inst/V/vfrsqrt7.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfrsub.vf.yaml b/arch/inst/V/vfrsub.vf.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfsgnj.vf.yaml b/arch/inst/V/vfsgnj.vf.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfsgnj.vv.yaml b/arch/inst/V/vfsgnj.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfsgnjn.vf.yaml b/arch/inst/V/vfsgnjn.vf.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfsgnjn.vv.yaml b/arch/inst/V/vfsgnjn.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfsgnjx.vf.yaml b/arch/inst/V/vfsgnjx.vf.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfsgnjx.vv.yaml b/arch/inst/V/vfsgnjx.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfslide1down.vf.yaml b/arch/inst/V/vfslide1down.vf.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfslide1up.vf.yaml b/arch/inst/V/vfslide1up.vf.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfsqrt.v.yaml b/arch/inst/V/vfsqrt.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfsub.vf.yaml b/arch/inst/V/vfsub.vf.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfsub.vv.yaml b/arch/inst/V/vfsub.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfwadd.vf.yaml b/arch/inst/V/vfwadd.vf.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfwadd.vv.yaml b/arch/inst/V/vfwadd.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfwadd.wf.yaml b/arch/inst/V/vfwadd.wf.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfwadd.wv.yaml b/arch/inst/V/vfwadd.wv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfwcvt.f.f.v.yaml b/arch/inst/V/vfwcvt.f.f.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfwcvt.f.x.v.yaml b/arch/inst/V/vfwcvt.f.x.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfwcvt.f.xu.v.yaml b/arch/inst/V/vfwcvt.f.xu.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfwcvt.rtz.x.f.v.yaml b/arch/inst/V/vfwcvt.rtz.x.f.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfwcvt.rtz.xu.f.v.yaml b/arch/inst/V/vfwcvt.rtz.xu.f.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfwcvt.x.f.v.yaml b/arch/inst/V/vfwcvt.x.f.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfwcvt.xu.f.v.yaml b/arch/inst/V/vfwcvt.xu.f.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfwmacc.vf.yaml b/arch/inst/V/vfwmacc.vf.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfwmacc.vv.yaml b/arch/inst/V/vfwmacc.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfwmsac.vf.yaml b/arch/inst/V/vfwmsac.vf.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfwmsac.vv.yaml b/arch/inst/V/vfwmsac.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfwmul.vf.yaml b/arch/inst/V/vfwmul.vf.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfwmul.vv.yaml b/arch/inst/V/vfwmul.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfwnmacc.vf.yaml b/arch/inst/V/vfwnmacc.vf.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfwnmacc.vv.yaml b/arch/inst/V/vfwnmacc.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfwnmsac.vf.yaml b/arch/inst/V/vfwnmsac.vf.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfwnmsac.vv.yaml b/arch/inst/V/vfwnmsac.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfwredosum.vs.yaml b/arch/inst/V/vfwredosum.vs.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfwredusum.vs.yaml b/arch/inst/V/vfwredusum.vs.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfwsub.vf.yaml b/arch/inst/V/vfwsub.vf.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfwsub.vv.yaml b/arch/inst/V/vfwsub.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfwsub.wf.yaml b/arch/inst/V/vfwsub.wf.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vfwsub.wv.yaml b/arch/inst/V/vfwsub.wv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vid.v.yaml b/arch/inst/V/vid.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/viota.m.yaml b/arch/inst/V/viota.m.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vl1re16.v.yaml b/arch/inst/V/vl1re16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vl1re32.v.yaml b/arch/inst/V/vl1re32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vl1re64.v.yaml b/arch/inst/V/vl1re64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vl1re8.v.yaml b/arch/inst/V/vl1re8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vl2re16.v.yaml b/arch/inst/V/vl2re16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vl2re32.v.yaml b/arch/inst/V/vl2re32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vl2re64.v.yaml b/arch/inst/V/vl2re64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vl2re8.v.yaml b/arch/inst/V/vl2re8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vl4re16.v.yaml b/arch/inst/V/vl4re16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vl4re32.v.yaml b/arch/inst/V/vl4re32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vl4re64.v.yaml b/arch/inst/V/vl4re64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vl4re8.v.yaml b/arch/inst/V/vl4re8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vl8re16.v.yaml b/arch/inst/V/vl8re16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vl8re32.v.yaml b/arch/inst/V/vl8re32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vl8re64.v.yaml b/arch/inst/V/vl8re64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vl8re8.v.yaml b/arch/inst/V/vl8re8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vle16.v.yaml b/arch/inst/V/vle16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vle16ff.v.yaml b/arch/inst/V/vle16ff.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vle32.v.yaml b/arch/inst/V/vle32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vle32ff.v.yaml b/arch/inst/V/vle32ff.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vle64.v.yaml b/arch/inst/V/vle64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vle64ff.v.yaml b/arch/inst/V/vle64ff.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vle8.v.yaml b/arch/inst/V/vle8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vle8ff.v.yaml b/arch/inst/V/vle8ff.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlm.v.yaml b/arch/inst/V/vlm.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vloxei16.v.yaml b/arch/inst/V/vloxei16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vloxei32.v.yaml b/arch/inst/V/vloxei32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vloxei64.v.yaml b/arch/inst/V/vloxei64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vloxei8.v.yaml b/arch/inst/V/vloxei8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vloxseg2ei16.v.yaml b/arch/inst/V/vloxseg2ei16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vloxseg2ei32.v.yaml b/arch/inst/V/vloxseg2ei32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vloxseg2ei64.v.yaml b/arch/inst/V/vloxseg2ei64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vloxseg2ei8.v.yaml b/arch/inst/V/vloxseg2ei8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vloxseg3ei16.v.yaml b/arch/inst/V/vloxseg3ei16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vloxseg3ei32.v.yaml b/arch/inst/V/vloxseg3ei32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vloxseg3ei64.v.yaml b/arch/inst/V/vloxseg3ei64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vloxseg3ei8.v.yaml b/arch/inst/V/vloxseg3ei8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vloxseg4ei16.v.yaml b/arch/inst/V/vloxseg4ei16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vloxseg4ei32.v.yaml b/arch/inst/V/vloxseg4ei32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vloxseg4ei64.v.yaml b/arch/inst/V/vloxseg4ei64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vloxseg4ei8.v.yaml b/arch/inst/V/vloxseg4ei8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vloxseg5ei16.v.yaml b/arch/inst/V/vloxseg5ei16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vloxseg5ei32.v.yaml b/arch/inst/V/vloxseg5ei32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vloxseg5ei64.v.yaml b/arch/inst/V/vloxseg5ei64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vloxseg5ei8.v.yaml b/arch/inst/V/vloxseg5ei8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vloxseg6ei16.v.yaml b/arch/inst/V/vloxseg6ei16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vloxseg6ei32.v.yaml b/arch/inst/V/vloxseg6ei32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vloxseg6ei64.v.yaml b/arch/inst/V/vloxseg6ei64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vloxseg6ei8.v.yaml b/arch/inst/V/vloxseg6ei8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vloxseg7ei16.v.yaml b/arch/inst/V/vloxseg7ei16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vloxseg7ei32.v.yaml b/arch/inst/V/vloxseg7ei32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vloxseg7ei64.v.yaml b/arch/inst/V/vloxseg7ei64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vloxseg7ei8.v.yaml b/arch/inst/V/vloxseg7ei8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vloxseg8ei16.v.yaml b/arch/inst/V/vloxseg8ei16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vloxseg8ei32.v.yaml b/arch/inst/V/vloxseg8ei32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vloxseg8ei64.v.yaml b/arch/inst/V/vloxseg8ei64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vloxseg8ei8.v.yaml b/arch/inst/V/vloxseg8ei8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlse16.v.yaml b/arch/inst/V/vlse16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlse32.v.yaml b/arch/inst/V/vlse32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlse64.v.yaml b/arch/inst/V/vlse64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlse8.v.yaml b/arch/inst/V/vlse8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg2e16.v.yaml b/arch/inst/V/vlseg2e16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg2e16ff.v.yaml b/arch/inst/V/vlseg2e16ff.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg2e32.v.yaml b/arch/inst/V/vlseg2e32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg2e32ff.v.yaml b/arch/inst/V/vlseg2e32ff.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg2e64.v.yaml b/arch/inst/V/vlseg2e64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg2e64ff.v.yaml b/arch/inst/V/vlseg2e64ff.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg2e8.v.yaml b/arch/inst/V/vlseg2e8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg2e8ff.v.yaml b/arch/inst/V/vlseg2e8ff.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg3e16.v.yaml b/arch/inst/V/vlseg3e16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg3e16ff.v.yaml b/arch/inst/V/vlseg3e16ff.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg3e32.v.yaml b/arch/inst/V/vlseg3e32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg3e32ff.v.yaml b/arch/inst/V/vlseg3e32ff.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg3e64.v.yaml b/arch/inst/V/vlseg3e64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg3e64ff.v.yaml b/arch/inst/V/vlseg3e64ff.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg3e8.v.yaml b/arch/inst/V/vlseg3e8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg3e8ff.v.yaml b/arch/inst/V/vlseg3e8ff.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg4e16.v.yaml b/arch/inst/V/vlseg4e16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg4e16ff.v.yaml b/arch/inst/V/vlseg4e16ff.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg4e32.v.yaml b/arch/inst/V/vlseg4e32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg4e32ff.v.yaml b/arch/inst/V/vlseg4e32ff.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg4e64.v.yaml b/arch/inst/V/vlseg4e64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg4e64ff.v.yaml b/arch/inst/V/vlseg4e64ff.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg4e8.v.yaml b/arch/inst/V/vlseg4e8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg4e8ff.v.yaml b/arch/inst/V/vlseg4e8ff.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg5e16.v.yaml b/arch/inst/V/vlseg5e16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg5e16ff.v.yaml b/arch/inst/V/vlseg5e16ff.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg5e32.v.yaml b/arch/inst/V/vlseg5e32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg5e32ff.v.yaml b/arch/inst/V/vlseg5e32ff.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg5e64.v.yaml b/arch/inst/V/vlseg5e64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg5e64ff.v.yaml b/arch/inst/V/vlseg5e64ff.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg5e8.v.yaml b/arch/inst/V/vlseg5e8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg5e8ff.v.yaml b/arch/inst/V/vlseg5e8ff.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg6e16.v.yaml b/arch/inst/V/vlseg6e16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg6e16ff.v.yaml b/arch/inst/V/vlseg6e16ff.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg6e32.v.yaml b/arch/inst/V/vlseg6e32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg6e32ff.v.yaml b/arch/inst/V/vlseg6e32ff.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg6e64.v.yaml b/arch/inst/V/vlseg6e64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg6e64ff.v.yaml b/arch/inst/V/vlseg6e64ff.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg6e8.v.yaml b/arch/inst/V/vlseg6e8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg6e8ff.v.yaml b/arch/inst/V/vlseg6e8ff.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg7e16.v.yaml b/arch/inst/V/vlseg7e16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg7e16ff.v.yaml b/arch/inst/V/vlseg7e16ff.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg7e32.v.yaml b/arch/inst/V/vlseg7e32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg7e32ff.v.yaml b/arch/inst/V/vlseg7e32ff.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg7e64.v.yaml b/arch/inst/V/vlseg7e64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg7e64ff.v.yaml b/arch/inst/V/vlseg7e64ff.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg7e8.v.yaml b/arch/inst/V/vlseg7e8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg7e8ff.v.yaml b/arch/inst/V/vlseg7e8ff.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg8e16.v.yaml b/arch/inst/V/vlseg8e16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg8e16ff.v.yaml b/arch/inst/V/vlseg8e16ff.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg8e32.v.yaml b/arch/inst/V/vlseg8e32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg8e32ff.v.yaml b/arch/inst/V/vlseg8e32ff.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg8e64.v.yaml b/arch/inst/V/vlseg8e64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg8e64ff.v.yaml b/arch/inst/V/vlseg8e64ff.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg8e8.v.yaml b/arch/inst/V/vlseg8e8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlseg8e8ff.v.yaml b/arch/inst/V/vlseg8e8ff.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlsseg2e16.v.yaml b/arch/inst/V/vlsseg2e16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlsseg2e32.v.yaml b/arch/inst/V/vlsseg2e32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlsseg2e64.v.yaml b/arch/inst/V/vlsseg2e64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlsseg2e8.v.yaml b/arch/inst/V/vlsseg2e8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlsseg3e16.v.yaml b/arch/inst/V/vlsseg3e16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlsseg3e32.v.yaml b/arch/inst/V/vlsseg3e32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlsseg3e64.v.yaml b/arch/inst/V/vlsseg3e64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlsseg3e8.v.yaml b/arch/inst/V/vlsseg3e8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlsseg4e16.v.yaml b/arch/inst/V/vlsseg4e16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlsseg4e32.v.yaml b/arch/inst/V/vlsseg4e32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlsseg4e64.v.yaml b/arch/inst/V/vlsseg4e64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlsseg4e8.v.yaml b/arch/inst/V/vlsseg4e8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlsseg5e16.v.yaml b/arch/inst/V/vlsseg5e16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlsseg5e32.v.yaml b/arch/inst/V/vlsseg5e32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlsseg5e64.v.yaml b/arch/inst/V/vlsseg5e64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlsseg5e8.v.yaml b/arch/inst/V/vlsseg5e8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlsseg6e16.v.yaml b/arch/inst/V/vlsseg6e16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlsseg6e32.v.yaml b/arch/inst/V/vlsseg6e32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlsseg6e64.v.yaml b/arch/inst/V/vlsseg6e64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlsseg6e8.v.yaml b/arch/inst/V/vlsseg6e8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlsseg7e16.v.yaml b/arch/inst/V/vlsseg7e16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlsseg7e32.v.yaml b/arch/inst/V/vlsseg7e32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlsseg7e64.v.yaml b/arch/inst/V/vlsseg7e64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlsseg7e8.v.yaml b/arch/inst/V/vlsseg7e8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlsseg8e16.v.yaml b/arch/inst/V/vlsseg8e16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlsseg8e32.v.yaml b/arch/inst/V/vlsseg8e32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlsseg8e64.v.yaml b/arch/inst/V/vlsseg8e64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vlsseg8e8.v.yaml b/arch/inst/V/vlsseg8e8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vluxei16.v.yaml b/arch/inst/V/vluxei16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vluxei32.v.yaml b/arch/inst/V/vluxei32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vluxei64.v.yaml b/arch/inst/V/vluxei64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vluxei8.v.yaml b/arch/inst/V/vluxei8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vluxseg2ei16.v.yaml b/arch/inst/V/vluxseg2ei16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vluxseg2ei32.v.yaml b/arch/inst/V/vluxseg2ei32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vluxseg2ei64.v.yaml b/arch/inst/V/vluxseg2ei64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vluxseg2ei8.v.yaml b/arch/inst/V/vluxseg2ei8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vluxseg3ei16.v.yaml b/arch/inst/V/vluxseg3ei16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vluxseg3ei32.v.yaml b/arch/inst/V/vluxseg3ei32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vluxseg3ei64.v.yaml b/arch/inst/V/vluxseg3ei64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vluxseg3ei8.v.yaml b/arch/inst/V/vluxseg3ei8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vluxseg4ei16.v.yaml b/arch/inst/V/vluxseg4ei16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vluxseg4ei32.v.yaml b/arch/inst/V/vluxseg4ei32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vluxseg4ei64.v.yaml b/arch/inst/V/vluxseg4ei64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vluxseg4ei8.v.yaml b/arch/inst/V/vluxseg4ei8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vluxseg5ei16.v.yaml b/arch/inst/V/vluxseg5ei16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vluxseg5ei32.v.yaml b/arch/inst/V/vluxseg5ei32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vluxseg5ei64.v.yaml b/arch/inst/V/vluxseg5ei64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vluxseg5ei8.v.yaml b/arch/inst/V/vluxseg5ei8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vluxseg6ei16.v.yaml b/arch/inst/V/vluxseg6ei16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vluxseg6ei32.v.yaml b/arch/inst/V/vluxseg6ei32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vluxseg6ei64.v.yaml b/arch/inst/V/vluxseg6ei64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vluxseg6ei8.v.yaml b/arch/inst/V/vluxseg6ei8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vluxseg7ei16.v.yaml b/arch/inst/V/vluxseg7ei16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vluxseg7ei32.v.yaml b/arch/inst/V/vluxseg7ei32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vluxseg7ei64.v.yaml b/arch/inst/V/vluxseg7ei64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vluxseg7ei8.v.yaml b/arch/inst/V/vluxseg7ei8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vluxseg8ei16.v.yaml b/arch/inst/V/vluxseg8ei16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vluxseg8ei32.v.yaml b/arch/inst/V/vluxseg8ei32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vluxseg8ei64.v.yaml b/arch/inst/V/vluxseg8ei64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vluxseg8ei8.v.yaml b/arch/inst/V/vluxseg8ei8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmacc.vv.yaml b/arch/inst/V/vmacc.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmacc.vx.yaml b/arch/inst/V/vmacc.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmadc.vi.yaml b/arch/inst/V/vmadc.vi.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmadc.vim.yaml b/arch/inst/V/vmadc.vim.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmadc.vv.yaml b/arch/inst/V/vmadc.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmadc.vvm.yaml b/arch/inst/V/vmadc.vvm.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmadc.vx.yaml b/arch/inst/V/vmadc.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmadc.vxm.yaml b/arch/inst/V/vmadc.vxm.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmadd.vv.yaml b/arch/inst/V/vmadd.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmadd.vx.yaml b/arch/inst/V/vmadd.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmand.mm.yaml b/arch/inst/V/vmand.mm.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmandn.mm.yaml b/arch/inst/V/vmandn.mm.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmax.vv.yaml b/arch/inst/V/vmax.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmax.vx.yaml b/arch/inst/V/vmax.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmaxu.vv.yaml b/arch/inst/V/vmaxu.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmaxu.vx.yaml b/arch/inst/V/vmaxu.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmerge.vim.yaml b/arch/inst/V/vmerge.vim.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmerge.vvm.yaml b/arch/inst/V/vmerge.vvm.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmerge.vxm.yaml b/arch/inst/V/vmerge.vxm.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmfeq.vf.yaml b/arch/inst/V/vmfeq.vf.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmfeq.vv.yaml b/arch/inst/V/vmfeq.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmfge.vf.yaml b/arch/inst/V/vmfge.vf.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmfgt.vf.yaml b/arch/inst/V/vmfgt.vf.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmfle.vf.yaml b/arch/inst/V/vmfle.vf.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmfle.vv.yaml b/arch/inst/V/vmfle.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmflt.vf.yaml b/arch/inst/V/vmflt.vf.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmflt.vv.yaml b/arch/inst/V/vmflt.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmfne.vf.yaml b/arch/inst/V/vmfne.vf.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmfne.vv.yaml b/arch/inst/V/vmfne.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmin.vv.yaml b/arch/inst/V/vmin.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmin.vx.yaml b/arch/inst/V/vmin.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vminu.vv.yaml b/arch/inst/V/vminu.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vminu.vx.yaml b/arch/inst/V/vminu.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmnand.mm.yaml b/arch/inst/V/vmnand.mm.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmnor.mm.yaml b/arch/inst/V/vmnor.mm.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmor.mm.yaml b/arch/inst/V/vmor.mm.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmorn.mm.yaml b/arch/inst/V/vmorn.mm.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmsbc.vv.yaml b/arch/inst/V/vmsbc.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmsbc.vvm.yaml b/arch/inst/V/vmsbc.vvm.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmsbc.vx.yaml b/arch/inst/V/vmsbc.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmsbc.vxm.yaml b/arch/inst/V/vmsbc.vxm.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmsbf.m.yaml b/arch/inst/V/vmsbf.m.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmseq.vi.yaml b/arch/inst/V/vmseq.vi.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmseq.vv.yaml b/arch/inst/V/vmseq.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmseq.vx.yaml b/arch/inst/V/vmseq.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmsgt.vi.yaml b/arch/inst/V/vmsgt.vi.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmsgt.vx.yaml b/arch/inst/V/vmsgt.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmsgtu.vi.yaml b/arch/inst/V/vmsgtu.vi.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmsgtu.vx.yaml b/arch/inst/V/vmsgtu.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmsif.m.yaml b/arch/inst/V/vmsif.m.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmsle.vi.yaml b/arch/inst/V/vmsle.vi.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmsle.vv.yaml b/arch/inst/V/vmsle.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmsle.vx.yaml b/arch/inst/V/vmsle.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmsleu.vi.yaml b/arch/inst/V/vmsleu.vi.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmsleu.vv.yaml b/arch/inst/V/vmsleu.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmsleu.vx.yaml b/arch/inst/V/vmsleu.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmslt.vv.yaml b/arch/inst/V/vmslt.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmslt.vx.yaml b/arch/inst/V/vmslt.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmsltu.vv.yaml b/arch/inst/V/vmsltu.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmsltu.vx.yaml b/arch/inst/V/vmsltu.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmsne.vi.yaml b/arch/inst/V/vmsne.vi.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmsne.vv.yaml b/arch/inst/V/vmsne.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmsne.vx.yaml b/arch/inst/V/vmsne.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmsof.m.yaml b/arch/inst/V/vmsof.m.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmul.vv.yaml b/arch/inst/V/vmul.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmul.vx.yaml b/arch/inst/V/vmul.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmulh.vv.yaml b/arch/inst/V/vmulh.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmulh.vx.yaml b/arch/inst/V/vmulh.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmulhsu.vv.yaml b/arch/inst/V/vmulhsu.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmulhsu.vx.yaml b/arch/inst/V/vmulhsu.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmulhu.vv.yaml b/arch/inst/V/vmulhu.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmulhu.vx.yaml b/arch/inst/V/vmulhu.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmv.s.x.yaml b/arch/inst/V/vmv.s.x.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmv.v.i.yaml b/arch/inst/V/vmv.v.i.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmv.v.v.yaml b/arch/inst/V/vmv.v.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmv.v.x.yaml b/arch/inst/V/vmv.v.x.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmv.x.s.yaml b/arch/inst/V/vmv.x.s.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmv1r.v.yaml b/arch/inst/V/vmv1r.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmv2r.v.yaml b/arch/inst/V/vmv2r.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmv4r.v.yaml b/arch/inst/V/vmv4r.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmv8r.v.yaml b/arch/inst/V/vmv8r.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmxnor.mm.yaml b/arch/inst/V/vmxnor.mm.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vmxor.mm.yaml b/arch/inst/V/vmxor.mm.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vnclip.wi.yaml b/arch/inst/V/vnclip.wi.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vnclip.wv.yaml b/arch/inst/V/vnclip.wv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vnclip.wx.yaml b/arch/inst/V/vnclip.wx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vnclipu.wi.yaml b/arch/inst/V/vnclipu.wi.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vnclipu.wv.yaml b/arch/inst/V/vnclipu.wv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vnclipu.wx.yaml b/arch/inst/V/vnclipu.wx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vnmsac.vv.yaml b/arch/inst/V/vnmsac.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vnmsac.vx.yaml b/arch/inst/V/vnmsac.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vnmsub.vv.yaml b/arch/inst/V/vnmsub.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vnmsub.vx.yaml b/arch/inst/V/vnmsub.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vnsra.wi.yaml b/arch/inst/V/vnsra.wi.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vnsra.wv.yaml b/arch/inst/V/vnsra.wv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vnsra.wx.yaml b/arch/inst/V/vnsra.wx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vnsrl.wi.yaml b/arch/inst/V/vnsrl.wi.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vnsrl.wv.yaml b/arch/inst/V/vnsrl.wv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vnsrl.wx.yaml b/arch/inst/V/vnsrl.wx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vor.vi.yaml b/arch/inst/V/vor.vi.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vor.vv.yaml b/arch/inst/V/vor.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vor.vx.yaml b/arch/inst/V/vor.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vredand.vs.yaml b/arch/inst/V/vredand.vs.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vredmax.vs.yaml b/arch/inst/V/vredmax.vs.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vredmaxu.vs.yaml b/arch/inst/V/vredmaxu.vs.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vredmin.vs.yaml b/arch/inst/V/vredmin.vs.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vredminu.vs.yaml b/arch/inst/V/vredminu.vs.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vredor.vs.yaml b/arch/inst/V/vredor.vs.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vredsum.vs.yaml b/arch/inst/V/vredsum.vs.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vredxor.vs.yaml b/arch/inst/V/vredxor.vs.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vrem.vv.yaml b/arch/inst/V/vrem.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vrem.vx.yaml b/arch/inst/V/vrem.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vremu.vv.yaml b/arch/inst/V/vremu.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vremu.vx.yaml b/arch/inst/V/vremu.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vrgather.vi.yaml b/arch/inst/V/vrgather.vi.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vrgather.vv.yaml b/arch/inst/V/vrgather.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vrgather.vx.yaml b/arch/inst/V/vrgather.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vrgatherei16.vv.yaml b/arch/inst/V/vrgatherei16.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vrsub.vi.yaml b/arch/inst/V/vrsub.vi.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vrsub.vx.yaml b/arch/inst/V/vrsub.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vs1r.v.yaml b/arch/inst/V/vs1r.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vs2r.v.yaml b/arch/inst/V/vs2r.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vs4r.v.yaml b/arch/inst/V/vs4r.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vs8r.v.yaml b/arch/inst/V/vs8r.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsadd.vi.yaml b/arch/inst/V/vsadd.vi.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsadd.vv.yaml b/arch/inst/V/vsadd.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsadd.vx.yaml b/arch/inst/V/vsadd.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsaddu.vi.yaml b/arch/inst/V/vsaddu.vi.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsaddu.vv.yaml b/arch/inst/V/vsaddu.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsaddu.vx.yaml b/arch/inst/V/vsaddu.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsbc.vvm.yaml b/arch/inst/V/vsbc.vvm.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsbc.vxm.yaml b/arch/inst/V/vsbc.vxm.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vse16.v.yaml b/arch/inst/V/vse16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vse32.v.yaml b/arch/inst/V/vse32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vse64.v.yaml b/arch/inst/V/vse64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vse8.v.yaml b/arch/inst/V/vse8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsetivli.yaml b/arch/inst/V/vsetivli.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsetvl.yaml b/arch/inst/V/vsetvl.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsetvli.yaml b/arch/inst/V/vsetvli.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsext.vf2.yaml b/arch/inst/V/vsext.vf2.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsext.vf4.yaml b/arch/inst/V/vsext.vf4.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsext.vf8.yaml b/arch/inst/V/vsext.vf8.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vslide1down.vx.yaml b/arch/inst/V/vslide1down.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vslide1up.vx.yaml b/arch/inst/V/vslide1up.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vslidedown.vi.yaml b/arch/inst/V/vslidedown.vi.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vslidedown.vx.yaml b/arch/inst/V/vslidedown.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vslideup.vi.yaml b/arch/inst/V/vslideup.vi.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vslideup.vx.yaml b/arch/inst/V/vslideup.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsll.vi.yaml b/arch/inst/V/vsll.vi.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsll.vv.yaml b/arch/inst/V/vsll.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsll.vx.yaml b/arch/inst/V/vsll.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsm.v.yaml b/arch/inst/V/vsm.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsmul.vv.yaml b/arch/inst/V/vsmul.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsmul.vx.yaml b/arch/inst/V/vsmul.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsoxei16.v.yaml b/arch/inst/V/vsoxei16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsoxei32.v.yaml b/arch/inst/V/vsoxei32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsoxei64.v.yaml b/arch/inst/V/vsoxei64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsoxei8.v.yaml b/arch/inst/V/vsoxei8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsoxseg2ei16.v.yaml b/arch/inst/V/vsoxseg2ei16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsoxseg2ei32.v.yaml b/arch/inst/V/vsoxseg2ei32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsoxseg2ei64.v.yaml b/arch/inst/V/vsoxseg2ei64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsoxseg2ei8.v.yaml b/arch/inst/V/vsoxseg2ei8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsoxseg3ei16.v.yaml b/arch/inst/V/vsoxseg3ei16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsoxseg3ei32.v.yaml b/arch/inst/V/vsoxseg3ei32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsoxseg3ei64.v.yaml b/arch/inst/V/vsoxseg3ei64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsoxseg3ei8.v.yaml b/arch/inst/V/vsoxseg3ei8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsoxseg4ei16.v.yaml b/arch/inst/V/vsoxseg4ei16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsoxseg4ei32.v.yaml b/arch/inst/V/vsoxseg4ei32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsoxseg4ei64.v.yaml b/arch/inst/V/vsoxseg4ei64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsoxseg4ei8.v.yaml b/arch/inst/V/vsoxseg4ei8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsoxseg5ei16.v.yaml b/arch/inst/V/vsoxseg5ei16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsoxseg5ei32.v.yaml b/arch/inst/V/vsoxseg5ei32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsoxseg5ei64.v.yaml b/arch/inst/V/vsoxseg5ei64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsoxseg5ei8.v.yaml b/arch/inst/V/vsoxseg5ei8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsoxseg6ei16.v.yaml b/arch/inst/V/vsoxseg6ei16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsoxseg6ei32.v.yaml b/arch/inst/V/vsoxseg6ei32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsoxseg6ei64.v.yaml b/arch/inst/V/vsoxseg6ei64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsoxseg6ei8.v.yaml b/arch/inst/V/vsoxseg6ei8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsoxseg7ei16.v.yaml b/arch/inst/V/vsoxseg7ei16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsoxseg7ei32.v.yaml b/arch/inst/V/vsoxseg7ei32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsoxseg7ei64.v.yaml b/arch/inst/V/vsoxseg7ei64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsoxseg7ei8.v.yaml b/arch/inst/V/vsoxseg7ei8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsoxseg8ei16.v.yaml b/arch/inst/V/vsoxseg8ei16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsoxseg8ei32.v.yaml b/arch/inst/V/vsoxseg8ei32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsoxseg8ei64.v.yaml b/arch/inst/V/vsoxseg8ei64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsoxseg8ei8.v.yaml b/arch/inst/V/vsoxseg8ei8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsra.vi.yaml b/arch/inst/V/vsra.vi.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsra.vv.yaml b/arch/inst/V/vsra.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsra.vx.yaml b/arch/inst/V/vsra.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsrl.vi.yaml b/arch/inst/V/vsrl.vi.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsrl.vv.yaml b/arch/inst/V/vsrl.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsrl.vx.yaml b/arch/inst/V/vsrl.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsse16.v.yaml b/arch/inst/V/vsse16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsse32.v.yaml b/arch/inst/V/vsse32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsse64.v.yaml b/arch/inst/V/vsse64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsse8.v.yaml b/arch/inst/V/vsse8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsseg2e16.v.yaml b/arch/inst/V/vsseg2e16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsseg2e32.v.yaml b/arch/inst/V/vsseg2e32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsseg2e64.v.yaml b/arch/inst/V/vsseg2e64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsseg2e8.v.yaml b/arch/inst/V/vsseg2e8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsseg3e16.v.yaml b/arch/inst/V/vsseg3e16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsseg3e32.v.yaml b/arch/inst/V/vsseg3e32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsseg3e64.v.yaml b/arch/inst/V/vsseg3e64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsseg3e8.v.yaml b/arch/inst/V/vsseg3e8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsseg4e16.v.yaml b/arch/inst/V/vsseg4e16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsseg4e32.v.yaml b/arch/inst/V/vsseg4e32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsseg4e64.v.yaml b/arch/inst/V/vsseg4e64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsseg4e8.v.yaml b/arch/inst/V/vsseg4e8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsseg5e16.v.yaml b/arch/inst/V/vsseg5e16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsseg5e32.v.yaml b/arch/inst/V/vsseg5e32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsseg5e64.v.yaml b/arch/inst/V/vsseg5e64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsseg5e8.v.yaml b/arch/inst/V/vsseg5e8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsseg6e16.v.yaml b/arch/inst/V/vsseg6e16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsseg6e32.v.yaml b/arch/inst/V/vsseg6e32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsseg6e64.v.yaml b/arch/inst/V/vsseg6e64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsseg6e8.v.yaml b/arch/inst/V/vsseg6e8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsseg7e16.v.yaml b/arch/inst/V/vsseg7e16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsseg7e32.v.yaml b/arch/inst/V/vsseg7e32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsseg7e64.v.yaml b/arch/inst/V/vsseg7e64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsseg7e8.v.yaml b/arch/inst/V/vsseg7e8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsseg8e16.v.yaml b/arch/inst/V/vsseg8e16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsseg8e32.v.yaml b/arch/inst/V/vsseg8e32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsseg8e64.v.yaml b/arch/inst/V/vsseg8e64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsseg8e8.v.yaml b/arch/inst/V/vsseg8e8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vssra.vi.yaml b/arch/inst/V/vssra.vi.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vssra.vv.yaml b/arch/inst/V/vssra.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vssra.vx.yaml b/arch/inst/V/vssra.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vssrl.vi.yaml b/arch/inst/V/vssrl.vi.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vssrl.vv.yaml b/arch/inst/V/vssrl.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vssrl.vx.yaml b/arch/inst/V/vssrl.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vssseg2e16.v.yaml b/arch/inst/V/vssseg2e16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vssseg2e32.v.yaml b/arch/inst/V/vssseg2e32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vssseg2e64.v.yaml b/arch/inst/V/vssseg2e64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vssseg2e8.v.yaml b/arch/inst/V/vssseg2e8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vssseg3e16.v.yaml b/arch/inst/V/vssseg3e16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vssseg3e32.v.yaml b/arch/inst/V/vssseg3e32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vssseg3e64.v.yaml b/arch/inst/V/vssseg3e64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vssseg3e8.v.yaml b/arch/inst/V/vssseg3e8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vssseg4e16.v.yaml b/arch/inst/V/vssseg4e16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vssseg4e32.v.yaml b/arch/inst/V/vssseg4e32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vssseg4e64.v.yaml b/arch/inst/V/vssseg4e64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vssseg4e8.v.yaml b/arch/inst/V/vssseg4e8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vssseg5e16.v.yaml b/arch/inst/V/vssseg5e16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vssseg5e32.v.yaml b/arch/inst/V/vssseg5e32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vssseg5e64.v.yaml b/arch/inst/V/vssseg5e64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vssseg5e8.v.yaml b/arch/inst/V/vssseg5e8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vssseg6e16.v.yaml b/arch/inst/V/vssseg6e16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vssseg6e32.v.yaml b/arch/inst/V/vssseg6e32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vssseg6e64.v.yaml b/arch/inst/V/vssseg6e64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vssseg6e8.v.yaml b/arch/inst/V/vssseg6e8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vssseg7e16.v.yaml b/arch/inst/V/vssseg7e16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vssseg7e32.v.yaml b/arch/inst/V/vssseg7e32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vssseg7e64.v.yaml b/arch/inst/V/vssseg7e64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vssseg7e8.v.yaml b/arch/inst/V/vssseg7e8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vssseg8e16.v.yaml b/arch/inst/V/vssseg8e16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vssseg8e32.v.yaml b/arch/inst/V/vssseg8e32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vssseg8e64.v.yaml b/arch/inst/V/vssseg8e64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vssseg8e8.v.yaml b/arch/inst/V/vssseg8e8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vssub.vv.yaml b/arch/inst/V/vssub.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vssub.vx.yaml b/arch/inst/V/vssub.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vssubu.vv.yaml b/arch/inst/V/vssubu.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vssubu.vx.yaml b/arch/inst/V/vssubu.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsub.vv.yaml b/arch/inst/V/vsub.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsub.vx.yaml b/arch/inst/V/vsub.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsuxei16.v.yaml b/arch/inst/V/vsuxei16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsuxei32.v.yaml b/arch/inst/V/vsuxei32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsuxei64.v.yaml b/arch/inst/V/vsuxei64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsuxei8.v.yaml b/arch/inst/V/vsuxei8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsuxseg2ei16.v.yaml b/arch/inst/V/vsuxseg2ei16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsuxseg2ei32.v.yaml b/arch/inst/V/vsuxseg2ei32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsuxseg2ei64.v.yaml b/arch/inst/V/vsuxseg2ei64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsuxseg2ei8.v.yaml b/arch/inst/V/vsuxseg2ei8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsuxseg3ei16.v.yaml b/arch/inst/V/vsuxseg3ei16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsuxseg3ei32.v.yaml b/arch/inst/V/vsuxseg3ei32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsuxseg3ei64.v.yaml b/arch/inst/V/vsuxseg3ei64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsuxseg3ei8.v.yaml b/arch/inst/V/vsuxseg3ei8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsuxseg4ei16.v.yaml b/arch/inst/V/vsuxseg4ei16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsuxseg4ei32.v.yaml b/arch/inst/V/vsuxseg4ei32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsuxseg4ei64.v.yaml b/arch/inst/V/vsuxseg4ei64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsuxseg4ei8.v.yaml b/arch/inst/V/vsuxseg4ei8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsuxseg5ei16.v.yaml b/arch/inst/V/vsuxseg5ei16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsuxseg5ei32.v.yaml b/arch/inst/V/vsuxseg5ei32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsuxseg5ei64.v.yaml b/arch/inst/V/vsuxseg5ei64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsuxseg5ei8.v.yaml b/arch/inst/V/vsuxseg5ei8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsuxseg6ei16.v.yaml b/arch/inst/V/vsuxseg6ei16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsuxseg6ei32.v.yaml b/arch/inst/V/vsuxseg6ei32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsuxseg6ei64.v.yaml b/arch/inst/V/vsuxseg6ei64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsuxseg6ei8.v.yaml b/arch/inst/V/vsuxseg6ei8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsuxseg7ei16.v.yaml b/arch/inst/V/vsuxseg7ei16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsuxseg7ei32.v.yaml b/arch/inst/V/vsuxseg7ei32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsuxseg7ei64.v.yaml b/arch/inst/V/vsuxseg7ei64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsuxseg7ei8.v.yaml b/arch/inst/V/vsuxseg7ei8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsuxseg8ei16.v.yaml b/arch/inst/V/vsuxseg8ei16.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsuxseg8ei32.v.yaml b/arch/inst/V/vsuxseg8ei32.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsuxseg8ei64.v.yaml b/arch/inst/V/vsuxseg8ei64.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vsuxseg8ei8.v.yaml b/arch/inst/V/vsuxseg8ei8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vwadd.vv.yaml b/arch/inst/V/vwadd.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vwadd.vx.yaml b/arch/inst/V/vwadd.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vwadd.wv.yaml b/arch/inst/V/vwadd.wv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vwadd.wx.yaml b/arch/inst/V/vwadd.wx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vwaddu.vv.yaml b/arch/inst/V/vwaddu.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vwaddu.vx.yaml b/arch/inst/V/vwaddu.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vwaddu.wv.yaml b/arch/inst/V/vwaddu.wv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vwaddu.wx.yaml b/arch/inst/V/vwaddu.wx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vwmacc.vv.yaml b/arch/inst/V/vwmacc.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vwmacc.vx.yaml b/arch/inst/V/vwmacc.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vwmaccsu.vv.yaml b/arch/inst/V/vwmaccsu.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vwmaccsu.vx.yaml b/arch/inst/V/vwmaccsu.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vwmaccu.vv.yaml b/arch/inst/V/vwmaccu.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vwmaccu.vx.yaml b/arch/inst/V/vwmaccu.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vwmaccus.vx.yaml b/arch/inst/V/vwmaccus.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vwmul.vv.yaml b/arch/inst/V/vwmul.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vwmul.vx.yaml b/arch/inst/V/vwmul.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vwmulsu.vv.yaml b/arch/inst/V/vwmulsu.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vwmulsu.vx.yaml b/arch/inst/V/vwmulsu.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vwmulu.vv.yaml b/arch/inst/V/vwmulu.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vwmulu.vx.yaml b/arch/inst/V/vwmulu.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vwredsum.vs.yaml b/arch/inst/V/vwredsum.vs.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vwredsumu.vs.yaml b/arch/inst/V/vwredsumu.vs.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vwsub.vv.yaml b/arch/inst/V/vwsub.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vwsub.vx.yaml b/arch/inst/V/vwsub.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vwsub.wv.yaml b/arch/inst/V/vwsub.wv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vwsub.wx.yaml b/arch/inst/V/vwsub.wx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vwsubu.vv.yaml b/arch/inst/V/vwsubu.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vwsubu.vx.yaml b/arch/inst/V/vwsubu.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vwsubu.wv.yaml b/arch/inst/V/vwsubu.wv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vwsubu.wx.yaml b/arch/inst/V/vwsubu.wx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vxor.vi.yaml b/arch/inst/V/vxor.vi.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vxor.vv.yaml b/arch/inst/V/vxor.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vxor.vx.yaml b/arch/inst/V/vxor.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vzext.vf2.yaml b/arch/inst/V/vzext.vf2.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vzext.vf4.yaml b/arch/inst/V/vzext.vf4.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/V/vzext.vf8.yaml b/arch/inst/V/vzext.vf8.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zabha/amoadd.b.yaml b/arch/inst/Zabha/amoadd.b.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zabha/amoadd.h.yaml b/arch/inst/Zabha/amoadd.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zabha/amoand.b.yaml b/arch/inst/Zabha/amoand.b.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zabha/amoand.h.yaml b/arch/inst/Zabha/amoand.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zabha/amocas.b.yaml b/arch/inst/Zabha/amocas.b.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zabha/amocas.h.yaml b/arch/inst/Zabha/amocas.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zabha/amomax.b.yaml b/arch/inst/Zabha/amomax.b.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zabha/amomax.h.yaml b/arch/inst/Zabha/amomax.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zabha/amomaxu.b.yaml b/arch/inst/Zabha/amomaxu.b.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zabha/amomaxu.h.yaml b/arch/inst/Zabha/amomaxu.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zabha/amomin.b.yaml b/arch/inst/Zabha/amomin.b.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zabha/amomin.h.yaml b/arch/inst/Zabha/amomin.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zabha/amominu.b.yaml b/arch/inst/Zabha/amominu.b.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zabha/amominu.h.yaml b/arch/inst/Zabha/amominu.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zabha/amoor.b.yaml b/arch/inst/Zabha/amoor.b.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zabha/amoor.h.yaml b/arch/inst/Zabha/amoor.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zabha/amoswap.b.yaml b/arch/inst/Zabha/amoswap.b.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zabha/amoswap.h.yaml b/arch/inst/Zabha/amoswap.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zabha/amoxor.b.yaml b/arch/inst/Zabha/amoxor.b.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zabha/amoxor.h.yaml b/arch/inst/Zabha/amoxor.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zacas/amocas.d.yaml b/arch/inst/Zacas/amocas.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zacas/amocas.q.yaml b/arch/inst/Zacas/amocas.q.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zacas/amocas.w.yaml b/arch/inst/Zacas/amocas.w.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zalasr/lb.aq.yaml b/arch/inst/Zalasr/lb.aq.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zalasr/ld.aq.yaml b/arch/inst/Zalasr/ld.aq.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zalasr/lh.aq.yaml b/arch/inst/Zalasr/lh.aq.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zalasr/lw.aq.yaml b/arch/inst/Zalasr/lw.aq.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zalasr/sb.rl.yaml b/arch/inst/Zalasr/sb.rl.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zalasr/sd.rl.yaml b/arch/inst/Zalasr/sd.rl.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zalasr/sh.rl.yaml b/arch/inst/Zalasr/sh.rl.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zalasr/sw.rl.yaml b/arch/inst/Zalasr/sw.rl.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zawrs/wrs.nto.yaml b/arch/inst/Zawrs/wrs.nto.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zawrs/wrs.sto.yaml b/arch/inst/Zawrs/wrs.sto.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zbkb/brev8.yaml b/arch/inst/Zbkb/brev8.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zbkb/unzip.yaml b/arch/inst/Zbkb/unzip.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zbkb/zip.yaml b/arch/inst/Zbkb/zip.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zbkx/xperm4.yaml b/arch/inst/Zbkx/xperm4.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zbkx/xperm8.yaml b/arch/inst/Zbkx/xperm8.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zcb/c.lbu.yaml b/arch/inst/Zcb/c.lbu.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zcb/c.lh.yaml b/arch/inst/Zcb/c.lh.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zcb/c.lhu.yaml b/arch/inst/Zcb/c.lhu.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zcb/c.mul.yaml b/arch/inst/Zcb/c.mul.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zcb/c.not.yaml b/arch/inst/Zcb/c.not.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zcb/c.sb.yaml b/arch/inst/Zcb/c.sb.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zcb/c.sext.b.yaml b/arch/inst/Zcb/c.sext.b.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zcb/c.sext.h.yaml b/arch/inst/Zcb/c.sext.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zcb/c.sh.yaml b/arch/inst/Zcb/c.sh.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zcb/c.zext.b.yaml b/arch/inst/Zcb/c.zext.b.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zcb/c.zext.h.yaml b/arch/inst/Zcb/c.zext.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zcb/c.zext.w.yaml b/arch/inst/Zcb/c.zext.w.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zcmp/cm.mva01s.yaml b/arch/inst/Zcmp/cm.mva01s.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zcmp/cm.mvsa01.yaml b/arch/inst/Zcmp/cm.mvsa01.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zcmp/cm.pop.yaml b/arch/inst/Zcmp/cm.pop.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zcmp/cm.popret.yaml b/arch/inst/Zcmp/cm.popret.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zcmp/cm.popretz.yaml b/arch/inst/Zcmp/cm.popretz.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zcmp/cm.push.yaml b/arch/inst/Zcmp/cm.push.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zfbfmin/fcvt.bf16.s.yaml b/arch/inst/Zfbfmin/fcvt.bf16.s.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zfbfmin/fcvt.s.bf16.yaml b/arch/inst/Zfbfmin/fcvt.s.bf16.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zfh/fadd.h.yaml b/arch/inst/Zfh/fadd.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zfh/fclass.h.yaml b/arch/inst/Zfh/fclass.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zfh/fcvt.d.h.yaml b/arch/inst/Zfh/fcvt.d.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zfh/fcvt.h.d.yaml b/arch/inst/Zfh/fcvt.h.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zfh/fcvt.h.l.yaml b/arch/inst/Zfh/fcvt.h.l.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zfh/fcvt.h.lu.yaml b/arch/inst/Zfh/fcvt.h.lu.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zfh/fcvt.h.s.yaml b/arch/inst/Zfh/fcvt.h.s.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zfh/fcvt.h.w.yaml b/arch/inst/Zfh/fcvt.h.w.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zfh/fcvt.h.wu.yaml b/arch/inst/Zfh/fcvt.h.wu.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zfh/fcvt.l.h.yaml b/arch/inst/Zfh/fcvt.l.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zfh/fcvt.lu.h.yaml b/arch/inst/Zfh/fcvt.lu.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zfh/fcvt.s.h.yaml b/arch/inst/Zfh/fcvt.s.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zfh/fcvt.w.h.yaml b/arch/inst/Zfh/fcvt.w.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zfh/fcvt.wu.h.yaml b/arch/inst/Zfh/fcvt.wu.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zfh/fdiv.h.yaml b/arch/inst/Zfh/fdiv.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zfh/feq.h.yaml b/arch/inst/Zfh/feq.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zfh/fle.h.yaml b/arch/inst/Zfh/fle.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zfh/fleq.h.yaml b/arch/inst/Zfh/fleq.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zfh/flh.yaml b/arch/inst/Zfh/flh.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zfh/fli.h.yaml b/arch/inst/Zfh/fli.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zfh/flt.h.yaml b/arch/inst/Zfh/flt.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zfh/fltq.h.yaml b/arch/inst/Zfh/fltq.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zfh/fmadd.h.yaml b/arch/inst/Zfh/fmadd.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zfh/fmax.h.yaml b/arch/inst/Zfh/fmax.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zfh/fmaxm.h.yaml b/arch/inst/Zfh/fmaxm.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zfh/fmin.h.yaml b/arch/inst/Zfh/fmin.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zfh/fminm.h.yaml b/arch/inst/Zfh/fminm.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zfh/fmsub.h.yaml b/arch/inst/Zfh/fmsub.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zfh/fmul.h.yaml b/arch/inst/Zfh/fmul.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zfh/fmv.h.x.yaml b/arch/inst/Zfh/fmv.h.x.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zfh/fmv.x.h.yaml b/arch/inst/Zfh/fmv.x.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zfh/fnmadd.h.yaml b/arch/inst/Zfh/fnmadd.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zfh/fnmsub.h.yaml b/arch/inst/Zfh/fnmsub.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zfh/fround.h.yaml b/arch/inst/Zfh/fround.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zfh/froundnx.h.yaml b/arch/inst/Zfh/froundnx.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zfh/fsgnj.h.yaml b/arch/inst/Zfh/fsgnj.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zfh/fsgnjn.h.yaml b/arch/inst/Zfh/fsgnjn.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zfh/fsgnjx.h.yaml b/arch/inst/Zfh/fsgnjx.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zfh/fsh.yaml b/arch/inst/Zfh/fsh.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zfh/fsqrt.h.yaml b/arch/inst/Zfh/fsqrt.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zfh/fsub.h.yaml b/arch/inst/Zfh/fsub.h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zicbom/cbo.clean.yaml b/arch/inst/Zicbom/cbo.clean.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zicbom/cbo.flush.yaml b/arch/inst/Zicbom/cbo.flush.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zicbom/cbo.inval.yaml b/arch/inst/Zicbom/cbo.inval.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zicboz/cbo.zero.yaml b/arch/inst/Zicboz/cbo.zero.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zicfilp/lpad.yaml b/arch/inst/Zicfilp/lpad.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zicfiss/ssamoswap.d.yaml b/arch/inst/Zicfiss/ssamoswap.d.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zicfiss/ssamoswap.w.yaml b/arch/inst/Zicfiss/ssamoswap.w.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zicfiss/sspopchk.x1.yaml b/arch/inst/Zicfiss/sspopchk.x1.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zicfiss/sspopchk.x5.yaml b/arch/inst/Zicfiss/sspopchk.x5.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zicfiss/sspush.x1.yaml b/arch/inst/Zicfiss/sspush.x1.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zicfiss/sspush.x5.yaml b/arch/inst/Zicfiss/sspush.x5.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zicfiss/ssrdp.yaml b/arch/inst/Zicfiss/ssrdp.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zicond/czero.eqz.yaml b/arch/inst/Zicond/czero.eqz.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zicond/czero.nez.yaml b/arch/inst/Zicond/czero.nez.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zicsr/csrrc.yaml b/arch/inst/Zicsr/csrrc.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zicsr/csrrci.yaml b/arch/inst/Zicsr/csrrci.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zicsr/csrrs.yaml b/arch/inst/Zicsr/csrrs.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zicsr/csrrsi.yaml b/arch/inst/Zicsr/csrrsi.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zicsr/csrrw.yaml b/arch/inst/Zicsr/csrrw.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zicsr/csrrwi.yaml b/arch/inst/Zicsr/csrrwi.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zifencei/fence.i.yaml b/arch/inst/Zifencei/fence.i.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zimop/mop.r.n.yaml b/arch/inst/Zimop/mop.r.n.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zimop/mop.rr.n.yaml b/arch/inst/Zimop/mop.rr.n.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zk/aes32dsi.yaml b/arch/inst/Zk/aes32dsi.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zk/aes32dsmi.yaml b/arch/inst/Zk/aes32dsmi.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zk/aes32esi.yaml b/arch/inst/Zk/aes32esi.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zk/aes32esmi.yaml b/arch/inst/Zk/aes32esmi.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zk/aes64ds.yaml b/arch/inst/Zk/aes64ds.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zk/aes64dsm.yaml b/arch/inst/Zk/aes64dsm.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zk/aes64es.yaml b/arch/inst/Zk/aes64es.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zk/aes64esm.yaml b/arch/inst/Zk/aes64esm.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zk/aes64im.yaml b/arch/inst/Zk/aes64im.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zk/aes64ks1i.yaml b/arch/inst/Zk/aes64ks1i.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zk/aes64ks2.yaml b/arch/inst/Zk/aes64ks2.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zk/pack.yaml b/arch/inst/Zk/pack.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zk/packh.yaml b/arch/inst/Zk/packh.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zk/packw.yaml b/arch/inst/Zk/packw.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zk/sha256sig0.yaml b/arch/inst/Zk/sha256sig0.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zk/sha256sig1.yaml b/arch/inst/Zk/sha256sig1.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zk/sha256sum0.yaml b/arch/inst/Zk/sha256sum0.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zk/sha256sum1.yaml b/arch/inst/Zk/sha256sum1.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zk/sha512sig0.yaml b/arch/inst/Zk/sha512sig0.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zk/sha512sig0h.yaml b/arch/inst/Zk/sha512sig0h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zk/sha512sig0l.yaml b/arch/inst/Zk/sha512sig0l.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zk/sha512sig1.yaml b/arch/inst/Zk/sha512sig1.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zk/sha512sig1h.yaml b/arch/inst/Zk/sha512sig1h.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zk/sha512sig1l.yaml b/arch/inst/Zk/sha512sig1l.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zk/sha512sum0.yaml b/arch/inst/Zk/sha512sum0.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zk/sha512sum0r.yaml b/arch/inst/Zk/sha512sum0r.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zk/sha512sum1.yaml b/arch/inst/Zk/sha512sum1.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zk/sha512sum1r.yaml b/arch/inst/Zk/sha512sum1r.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zks/sm3p0.yaml b/arch/inst/Zks/sm3p0.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zks/sm3p1.yaml b/arch/inst/Zks/sm3p1.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zks/sm4ed.yaml b/arch/inst/Zks/sm4ed.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zks/sm4ks.yaml b/arch/inst/Zks/sm4ks.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvbb/vandn.vv.yaml b/arch/inst/Zvbb/vandn.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvbb/vandn.vx.yaml b/arch/inst/Zvbb/vandn.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvbb/vbrev.v.yaml b/arch/inst/Zvbb/vbrev.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvbb/vbrev8.v.yaml b/arch/inst/Zvbb/vbrev8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvbb/vclz.v.yaml b/arch/inst/Zvbb/vclz.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvbb/vcpop.v.yaml b/arch/inst/Zvbb/vcpop.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvbb/vctz.v.yaml b/arch/inst/Zvbb/vctz.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvbb/vrev8.v.yaml b/arch/inst/Zvbb/vrev8.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvbb/vrol.vv.yaml b/arch/inst/Zvbb/vrol.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvbb/vrol.vx.yaml b/arch/inst/Zvbb/vrol.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvbb/vror.vi.yaml b/arch/inst/Zvbb/vror.vi.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvbb/vror.vv.yaml b/arch/inst/Zvbb/vror.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvbb/vror.vx.yaml b/arch/inst/Zvbb/vror.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvbb/vwsll.vi.yaml b/arch/inst/Zvbb/vwsll.vi.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvbb/vwsll.vv.yaml b/arch/inst/Zvbb/vwsll.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvbb/vwsll.vx.yaml b/arch/inst/Zvbb/vwsll.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvbc/vclmul.vv.yaml b/arch/inst/Zvbc/vclmul.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvbc/vclmul.vx.yaml b/arch/inst/Zvbc/vclmul.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvbc/vclmulh.vv.yaml b/arch/inst/Zvbc/vclmulh.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvbc/vclmulh.vx.yaml b/arch/inst/Zvbc/vclmulh.vx.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvfbfmin/vfncvtbf16.f.f.w.yaml b/arch/inst/Zvfbfmin/vfncvtbf16.f.f.w.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvfbfmin/vfwcvtbf16.f.f.v.yaml b/arch/inst/Zvfbfmin/vfwcvtbf16.f.f.v.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvfbfwma/vfwmaccbf16.vf.yaml b/arch/inst/Zvfbfwma/vfwmaccbf16.vf.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvfbfwma/vfwmaccbf16.vv.yaml b/arch/inst/Zvfbfwma/vfwmaccbf16.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvkg/vghsh.vv.yaml b/arch/inst/Zvkg/vghsh.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvkg/vgmul.vv.yaml b/arch/inst/Zvkg/vgmul.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvkn/vaesdf.vs.yaml b/arch/inst/Zvkn/vaesdf.vs.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvkn/vaesdf.vv.yaml b/arch/inst/Zvkn/vaesdf.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvkn/vaesdm.vs.yaml b/arch/inst/Zvkn/vaesdm.vs.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvkn/vaesdm.vv.yaml b/arch/inst/Zvkn/vaesdm.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvkn/vaesef.vs.yaml b/arch/inst/Zvkn/vaesef.vs.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvkn/vaesef.vv.yaml b/arch/inst/Zvkn/vaesef.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvkn/vaesem.vs.yaml b/arch/inst/Zvkn/vaesem.vs.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvkn/vaesem.vv.yaml b/arch/inst/Zvkn/vaesem.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvkn/vaeskf1.vi.yaml b/arch/inst/Zvkn/vaeskf1.vi.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvkn/vaeskf2.vi.yaml b/arch/inst/Zvkn/vaeskf2.vi.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvkn/vaesz.vs.yaml b/arch/inst/Zvkn/vaesz.vs.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvkn/vsha2ch.vv.yaml b/arch/inst/Zvkn/vsha2ch.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvkn/vsha2cl.vv.yaml b/arch/inst/Zvkn/vsha2cl.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvkn/vsha2ms.vv.yaml b/arch/inst/Zvkn/vsha2ms.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvks/vsm3c.vi.yaml b/arch/inst/Zvks/vsm3c.vi.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvks/vsm3me.vv.yaml b/arch/inst/Zvks/vsm3me.vv.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvks/vsm4k.vi.yaml b/arch/inst/Zvks/vsm4k.vi.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvks/vsm4r.vs.yaml b/arch/inst/Zvks/vsm4r.vs.yaml old mode 100755 new mode 100644 diff --git a/arch/inst/Zvks/vsm4r.vv.yaml b/arch/inst/Zvks/vsm4r.vv.yaml old mode 100755 new mode 100644 From c9e07038c0c9121a6d928223394f7d488214e4f6 Mon Sep 17 00:00:00 2001 From: Afonso Oliveira Date: Thu, 13 Mar 2025 15:24:53 +0000 Subject: [PATCH 30/33] Remove checked out outputs. --- backends/opcodes_maker/output/encoding.out.h | 5017 ---------- backends/opcodes_maker/output/inst.chisel | 2247 ----- backends/opcodes_maker/output/inst.go | 2639 ------ backends/opcodes_maker/output/inst.rs | 2769 ------ backends/opcodes_maker/output/inst.spinalhdl | 2123 ----- backends/opcodes_maker/output/inst.sverilog | 1607 ---- backends/opcodes_maker/output/instr-table.tex | 2774 ------ backends/opcodes_maker/output/instr_dict.json | 8044 ----------------- .../opcodes_maker/output/priv-instr-table.tex | 326 - .../opcodes_maker/processed_instr_dict.json | 8044 ----------------- backends/opcodes_maker/sorted_instr_dict.json | 8044 ----------------- 11 files changed, 43634 deletions(-) delete mode 100644 backends/opcodes_maker/output/encoding.out.h delete mode 100644 backends/opcodes_maker/output/inst.chisel delete mode 100644 backends/opcodes_maker/output/inst.go delete mode 100644 backends/opcodes_maker/output/inst.rs delete mode 100644 backends/opcodes_maker/output/inst.spinalhdl delete mode 100644 backends/opcodes_maker/output/inst.sverilog delete mode 100644 backends/opcodes_maker/output/instr-table.tex delete mode 100755 backends/opcodes_maker/output/instr_dict.json delete mode 100644 backends/opcodes_maker/output/priv-instr-table.tex delete mode 100755 backends/opcodes_maker/processed_instr_dict.json delete mode 100644 backends/opcodes_maker/sorted_instr_dict.json diff --git a/backends/opcodes_maker/output/encoding.out.h b/backends/opcodes_maker/output/encoding.out.h deleted file mode 100644 index c63383611..000000000 --- a/backends/opcodes_maker/output/encoding.out.h +++ /dev/null @@ -1,5017 +0,0 @@ -/* SPDX-License-Identifier: BSD-3-Clause */ - -/* Copyright (c) 2023 RISC-V International */ - -/* - * This file is auto-generated by running 'make' in - * https://github.com/riscv/riscv-opcodes (9f70bcd) - */ - -#ifndef RISCV_CSR_ENCODING_H -#define RISCV_CSR_ENCODING_H - -#define MSTATUS_UIE 0x00000001 -#define MSTATUS_SIE 0x00000002 -#define MSTATUS_HIE 0x00000004 -#define MSTATUS_MIE 0x00000008 -#define MSTATUS_UPIE 0x00000010 -#define MSTATUS_SPIE 0x00000020 -#define MSTATUS_UBE 0x00000040 -#define MSTATUS_MPIE 0x00000080 -#define MSTATUS_SPP 0x00000100 -#define MSTATUS_VS 0x00000600 -#define MSTATUS_MPP 0x00001800 -#define MSTATUS_FS 0x00006000 -#define MSTATUS_XS 0x00018000 -#define MSTATUS_MPRV 0x00020000 -#define MSTATUS_SUM 0x00040000 -#define MSTATUS_MXR 0x00080000 -#define MSTATUS_TVM 0x00100000 -#define MSTATUS_TW 0x00200000 -#define MSTATUS_TSR 0x00400000 -#define MSTATUS_SPELP 0x00800000 -#define MSTATUS_SDT 0x01000000 -#define MSTATUS32_SD 0x80000000 -#define MSTATUS_UXL 0x0000000300000000 -#define MSTATUS_SXL 0x0000000C00000000 -#define MSTATUS_SBE 0x0000001000000000 -#define MSTATUS_MBE 0x0000002000000000 -#define MSTATUS_GVA 0x0000004000000000 -#define MSTATUS_MPV 0x0000008000000000 -#define MSTATUS_MPELP 0x0000020000000000 -#define MSTATUS_MDT 0x0000040000000000 -#define MSTATUS64_SD 0x8000000000000000 - -#define MSTATUSH_SBE 0x00000010 -#define MSTATUSH_MBE 0x00000020 -#define MSTATUSH_GVA 0x00000040 -#define MSTATUSH_MPV 0x00000080 -#define MSTATUSH_MDT 0x00000400 - -#define SSTATUS_UIE 0x00000001 -#define SSTATUS_SIE 0x00000002 -#define SSTATUS_UPIE 0x00000010 -#define SSTATUS_SPIE 0x00000020 -#define SSTATUS_UBE 0x00000040 -#define SSTATUS_SPP 0x00000100 -#define SSTATUS_VS 0x00000600 -#define SSTATUS_FS 0x00006000 -#define SSTATUS_XS 0x00018000 -#define SSTATUS_SUM 0x00040000 -#define SSTATUS_MXR 0x00080000 -#define SSTATUS_SPELP 0x00800000 -#define SSTATUS_SDT 0x01000000 -#define SSTATUS32_SD 0x80000000 -#define SSTATUS_UXL 0x0000000300000000 -#define SSTATUS64_SD 0x8000000000000000 - -#define HSTATUS_VSXL 0x300000000 -#define HSTATUS_VTSR 0x00400000 -#define HSTATUS_VTW 0x00200000 -#define HSTATUS_VTVM 0x00100000 -#define HSTATUS_VGEIN 0x0003f000 -#define HSTATUS_HU 0x00000200 -#define HSTATUS_SPVP 0x00000100 -#define HSTATUS_SPV 0x00000080 -#define HSTATUS_GVA 0x00000040 -#define HSTATUS_VSBE 0x00000020 -#define HSTATUS_HUPMM 0x0003000000000000 - -#define USTATUS_UIE 0x00000001 -#define USTATUS_UPIE 0x00000010 - -#define MNSTATUS_NMIE 0x00000008 -#define MNSTATUS_MNPV 0x00000080 -#define MNSTATUS_MNPELP 0x00000200 -#define MNSTATUS_MNPP 0x00001800 - -#define DCSR_XDEBUGVER (15U<<28) -#define DCSR_EXTCAUSE (7<<24) -#define DCSR_CETRIG (1<<19) -#define DCSR_PELP (1<<18) -#define DCSR_EBREAKVS (1<<17) -#define DCSR_EBREAKVU (1<<16) -#define DCSR_EBREAKM (1<<15) -#define DCSR_EBREAKS (1<<13) -#define DCSR_EBREAKU (1<<12) -#define DCSR_STEPIE (1<<11) -#define DCSR_STOPCOUNT (1<<10) -#define DCSR_STOPTIME (1<<9) -#define DCSR_CAUSE (7<<6) -#define DCSR_V (1<<5) -#define DCSR_MPRVEN (1<<4) -#define DCSR_NMIP (1<<3) -#define DCSR_STEP (1<<2) -#define DCSR_PRV (3<<0) - -#define DCSR_CAUSE_NONE 0 -#define DCSR_CAUSE_SWBP 1 -#define DCSR_CAUSE_HWBP 2 -#define DCSR_CAUSE_DEBUGINT 3 -#define DCSR_CAUSE_STEP 4 -#define DCSR_CAUSE_HALT 5 -#define DCSR_CAUSE_GROUP 6 -#define DCSR_CAUSE_EXTCAUSE 7 - -#define DCSR_EXTCAUSE_CRITERR 0 - -#define MCONTROL_TYPE(xlen) (0xfULL<<((xlen)-4)) -#define MCONTROL_DMODE(xlen) (1ULL<<((xlen)-5)) -#define MCONTROL_MASKMAX(xlen) (0x3fULL<<((xlen)-11)) - -#define MCONTROL_SELECT (1<<19) -#define MCONTROL_TIMING (1<<18) -#define MCONTROL_ACTION (0xf<<12) -#define MCONTROL_CHAIN (1<<11) -#define MCONTROL_MATCH (0xf<<7) -#define MCONTROL_M (1<<6) -#define MCONTROL_H (1<<5) -#define MCONTROL_S (1<<4) -#define MCONTROL_U (1<<3) -#define MCONTROL_EXECUTE (1<<2) -#define MCONTROL_STORE (1<<1) -#define MCONTROL_LOAD (1<<0) - -#define MCONTROL_TYPE_NONE 0 -#define MCONTROL_TYPE_MATCH 2 - -#define MCONTROL_ACTION_DEBUG_EXCEPTION 0 -#define MCONTROL_ACTION_DEBUG_MODE 1 -#define MCONTROL_ACTION_TRACE_START 2 -#define MCONTROL_ACTION_TRACE_STOP 3 -#define MCONTROL_ACTION_TRACE_EMIT 4 - -#define MCONTROL_MATCH_EQUAL 0 -#define MCONTROL_MATCH_NAPOT 1 -#define MCONTROL_MATCH_GE 2 -#define MCONTROL_MATCH_LT 3 -#define MCONTROL_MATCH_MASK_LOW 4 -#define MCONTROL_MATCH_MASK_HIGH 5 - -#define MIP_USIP (1 << IRQ_U_SOFT) -#define MIP_SSIP (1 << IRQ_S_SOFT) -#define MIP_VSSIP (1 << IRQ_VS_SOFT) -#define MIP_MSIP (1 << IRQ_M_SOFT) -#define MIP_UTIP (1 << IRQ_U_TIMER) -#define MIP_STIP (1 << IRQ_S_TIMER) -#define MIP_VSTIP (1 << IRQ_VS_TIMER) -#define MIP_MTIP (1 << IRQ_M_TIMER) -#define MIP_UEIP (1 << IRQ_U_EXT) -#define MIP_SEIP (1 << IRQ_S_EXT) -#define MIP_VSEIP (1 << IRQ_VS_EXT) -#define MIP_MEIP (1 << IRQ_M_EXT) -#define MIP_SGEIP (1 << IRQ_S_GEXT) -#define MIP_LCOFIP (1 << IRQ_LCOF) -#define MIP_RAS_LOW_PRIO (1ULL << IRQ_RAS_LOW_PRIO) -#define MIP_RAS_HIGH_PRIO (1ULL << IRQ_RAS_HIGH_PRIO) - -#define MIP_S_MASK (MIP_SSIP | MIP_STIP | MIP_SEIP) -#define MIP_VS_MASK (MIP_VSSIP | MIP_VSTIP | MIP_VSEIP) -#define MIP_HS_MASK (MIP_VS_MASK | MIP_SGEIP) - -#define MIDELEG_FORCED_MASK MIP_HS_MASK - -#define SIP_SSIP MIP_SSIP -#define SIP_STIP MIP_STIP - -#define MENVCFG_FIOM 0x00000001 -#define MENVCFG_LPE 0x00000004 -#define MENVCFG_SSE 0x00000008 -#define MENVCFG_CBIE 0x00000030 -#define MENVCFG_CBCFE 0x00000040 -#define MENVCFG_CBZE 0x00000080 -#define MENVCFG_PMM 0x0000000300000000 -#define MENVCFG_DTE 0x0800000000000000 -#define MENVCFG_ADUE 0x2000000000000000 -#define MENVCFG_PBMTE 0x4000000000000000 -#define MENVCFG_STCE 0x8000000000000000 - -#define MENVCFGH_DTE 0x08000000 -#define MENVCFGH_ADUE 0x20000000 -#define MENVCFGH_PBMTE 0x40000000 -#define MENVCFGH_STCE 0x80000000 - -#define MSTATEEN0_CS 0x00000001 -#define MSTATEEN0_FCSR 0x00000002 -#define MSTATEEN0_JVT 0x00000004 -#define MSTATEEN0_CTR 0x0040000000000000 -#define MSTATEEN0_PRIV113 0x0100000000000000 -#define MSTATEEN0_PRIV114 0x0080000000000000 -#define MSTATEEN0_HCONTEXT 0x0200000000000000 -#define MSTATEEN0_AIA 0x0800000000000000 -#define MSTATEEN0_CSRIND 0x1000000000000000 -#define MSTATEEN0_HENVCFG 0x4000000000000000 -#define MSTATEEN_HSTATEEN 0x8000000000000000 - -#define MSTATEEN0H_CTR 0x00400000 -#define MSTATEEN0H_PRIV113 0x01000000 -#define MSTATEEN0H_PRIV114 0x00800000 -#define MSTATEEN0H_HCONTEXT 0x02000000 -#define MSTATEEN0H_AIA 0x08000000 -#define MSTATEEN0H_CSRIND 0x10000000 -#define MSTATEEN0H_HENVCFG 0x40000000 -#define MSTATEENH_HSTATEEN 0x80000000 - -#define MHPMEVENT_VUINH 0x0400000000000000 -#define MHPMEVENT_VSINH 0x0800000000000000 -#define MHPMEVENT_UINH 0x1000000000000000 -#define MHPMEVENT_SINH 0x2000000000000000 -#define MHPMEVENT_MINH 0x4000000000000000 -#define MHPMEVENT_OF 0x8000000000000000 - -#define MHPMEVENTH_VUINH 0x04000000 -#define MHPMEVENTH_VSINH 0x08000000 -#define MHPMEVENTH_UINH 0x10000000 -#define MHPMEVENTH_SINH 0x20000000 -#define MHPMEVENTH_MINH 0x40000000 -#define MHPMEVENTH_OF 0x80000000 - -#define MCOUNTEREN_CY_SHIFT 0 -#define MCOUNTEREN_TIME_SHIFT 1 -#define MCOUNTEREN_IR_SHIFT 2 - -#define MCOUNTEREN_CY (1U << MCOUNTEREN_CY_SHIFT) -#define MCOUNTEREN_TIME (1U << MCOUNTEREN_TIME_SHIFT) -#define MCOUNTEREN_IR (1U << MCOUNTEREN_IR_SHIFT) - -#define MCOUNTINHIBIT_CY MCOUNTEREN_CY -#define MCOUNTINHIBIT_IR MCOUNTEREN_IR - -#define HENVCFG_FIOM 0x00000001 -#define HENVCFG_LPE 0x00000004 -#define HENVCFG_SSE 0x00000008 -#define HENVCFG_CBIE 0x00000030 -#define HENVCFG_CBCFE 0x00000040 -#define HENVCFG_CBZE 0x00000080 -#define HENVCFG_PMM 0x0000000300000000 -#define HENVCFG_DTE 0x0800000000000000 -#define HENVCFG_ADUE 0x2000000000000000 -#define HENVCFG_PBMTE 0x4000000000000000 -#define HENVCFG_STCE 0x8000000000000000 - -#define HENVCFGH_DTE 0x08000000 -#define HENVCFGH_ADUE 0x20000000 -#define HENVCFGH_PBMTE 0x40000000 -#define HENVCFGH_STCE 0x80000000 - -#define SISELECT_SMCDELEG_START 0x40 -#define SISELECT_SMCDELEG_UNUSED 0x41 -#define SISELECT_SMCDELEG_INSTRET 0x42 -#define SISELECT_SMCDELEG_INSTRETCFG 0x42 -/* - * ?iselect values for hpmcounters4..31 and hpmevent4..31 - * can easily computed, and were elided for brevity. - */ -#define SISELECT_SMCDELEG_HPMCOUNTER_3 0x43 -#define SISELECT_SMCDELEG_HPMEVENT_3 0x43 -#define SISELECT_SMCDELEG_END 0x5f - -#define HSTATEEN0_CS 0x00000001 -#define HSTATEEN0_FCSR 0x00000002 -#define HSTATEEN0_JVT 0x00000004 -#define HSTATEEN0_CTR 0x0040000000000000 -#define HSTATEEN0_SCONTEXT 0x0200000000000000 -#define HSTATEEN0_AIA 0x0800000000000000 -#define HSTATEEN0_CSRIND 0x1000000000000000 -#define HSTATEEN0_SENVCFG 0x4000000000000000 -#define HSTATEEN_SSTATEEN 0x8000000000000000 - -#define HSTATEEN0H_CTR 0x00400000 -#define HSTATEEN0H_SCONTEXT 0x02000000 -#define HSTATEEN0H_AIA 0x08000000 -#define HSTATEEN0H_CSRIND 0x10000000 -#define HSTATEEN0H_SENVCFG 0x40000000 -#define HSTATEENH_SSTATEEN 0x80000000 - -#define SENVCFG_FIOM 0x00000001 -#define SENVCFG_LPE 0x00000004 -#define SENVCFG_SSE 0x00000008 -#define SENVCFG_CBIE 0x00000030 -#define SENVCFG_CBCFE 0x00000040 -#define SENVCFG_CBZE 0x00000080 -#define SENVCFG_PMM 0x0000000300000000 - -#define SSTATEEN0_CS 0x00000001 -#define SSTATEEN0_FCSR 0x00000002 -#define SSTATEEN0_JVT 0x00000004 - -#define MSECCFG_MML 0x00000001 -#define MSECCFG_MMWP 0x00000002 -#define MSECCFG_RLB 0x00000004 -#define MSECCFG_USEED 0x00000100 -#define MSECCFG_SSEED 0x00000200 -#define MSECCFG_MLPE 0x00000400 -#define MSECCFG_PMM 0x0000000300000000 - -/* jvt fields */ -#define JVT_MODE 0x3F -#define JVT_BASE (~0x3F) - -#define HVICTL_VTI 0x40000000 -#define HVICTL_IID 0x003F0000 -#define HVICTL_DPR 0x00000200 -#define HVICTL_IPRIOM 0x00000100 -#define HVICTL_IPRIO 0x000000FF - -#define MTOPI_IID 0x0FFF0000 -#define MTOPI_IPRIO 0x000000FF - -#define PRV_U 0 -#define PRV_S 1 -#define PRV_M 3 - -#define PRV_HS (PRV_S + 1) - -#define SATP32_MODE 0x80000000 -#define SATP32_ASID 0x7FC00000 -#define SATP32_PPN 0x003FFFFF -#define SATP64_MODE 0xF000000000000000 -#define SATP64_ASID 0x0FFFF00000000000 -#define SATP64_PPN 0x00000FFFFFFFFFFF - -#define SATP_MODE_OFF 0 -#define SATP_MODE_SV32 1 -#define SATP_MODE_SV39 8 -#define SATP_MODE_SV48 9 -#define SATP_MODE_SV57 10 -#define SATP_MODE_SV64 11 - -#define HGATP32_MODE 0x80000000 -#define HGATP32_VMID 0x1FC00000 -#define HGATP32_PPN 0x003FFFFF - -#define HGATP64_MODE 0xF000000000000000 -#define HGATP64_VMID 0x03FFF00000000000 -#define HGATP64_PPN 0x00000FFFFFFFFFFF - -#define HGATP_MODE_OFF 0 -#define HGATP_MODE_SV32X4 1 -#define HGATP_MODE_SV39X4 8 -#define HGATP_MODE_SV48X4 9 -#define HGATP_MODE_SV57X4 10 - -#define PMP_R 0x01 -#define PMP_W 0x02 -#define PMP_X 0x04 -#define PMP_A 0x18 -#define PMP_L 0x80 -#define PMP_SHIFT 2 - -#define PMP_TOR 0x08 -#define PMP_NA4 0x10 -#define PMP_NAPOT 0x18 - -#define MCTRCTL_U 0x0000000000000001 -#define MCTRCTL_S 0x0000000000000002 -#define MCTRCTL_M 0x0000000000000004 -#define MCTRCTL_RASEMU 0x0000000000000080 -#define MCTRCTL_STE 0x0000000000000100 -#define MCTRCTL_MTE 0x0000000000000200 -#define MCTRCTL_BPFRZ 0x0000000000000800 -#define MCTRCTL_LCOFIFRZ 0x0000000000001000 -#define MCTRCTL_EXCINH 0x0000000200000000 -#define MCTRCTL_INTRINH 0x0000000400000000 -#define MCTRCTL_TRETINH 0x0000000800000000 -#define MCTRCTL_NTBREN 0x0000001000000000 -#define MCTRCTL_TKBRINH 0x0000002000000000 -#define MCTRCTL_INDCALLINH 0x0000010000000000 -#define MCTRCTL_DIRCALLINH 0x0000020000000000 -#define MCTRCTL_INDJMPINH 0x0000040000000000 -#define MCTRCTL_DIRJMPINH 0x0000080000000000 -#define MCTRCTL_CORSWAPINH 0x0000100000000000 -#define MCTRCTL_RETINH 0x0000200000000000 -#define MCTRCTL_INDLJMPINH 0x0000400000000000 -#define MCTRCTL_DIRLJMPINH 0x0000800000000000 - -#define SCTRCTL_U 0x0000000000000001 -#define SCTRCTL_S 0x0000000000000002 -#define SCTRCTL_RASEMU 0x0000000000000080 -#define SCTRCTL_STE 0x0000000000000100 -#define SCTRCTL_BPFRZ 0x0000000000000800 -#define SCTRCTL_LCOFIFRZ 0x0000000000001000 -#define SCTRCTL_EXCINH 0x0000000200000000 -#define SCTRCTL_INTRINH 0x0000000400000000 -#define SCTRCTL_TRETINH 0x0000000800000000 -#define SCTRCTL_NTBREN 0x0000001000000000 -#define SCTRCTL_TKBRINH 0x0000002000000000 -#define SCTRCTL_INDCALLINH 0x0000010000000000 -#define SCTRCTL_DIRCALLINH 0x0000020000000000 -#define SCTRCTL_INDJMPINH 0x0000040000000000 -#define SCTRCTL_DIRJMPINH 0x0000080000000000 -#define SCTRCTL_CORSWAPINH 0x0000100000000000 -#define SCTRCTL_RETINH 0x0000200000000000 -#define SCTRCTL_INDLJMPINH 0x0000400000000000 -#define SCTRCTL_DIRLJMPINH 0x0000800000000000 - -#define VSCTRCTL_U 0x0000000000000001 -#define VSCTRCTL_S 0x0000000000000002 -#define VSCTRCTL_RASEMU 0x0000000000000080 -#define VSCTRCTL_STE 0x0000000000000100 -#define VSCTRCTL_BPFRZ 0x0000000000000800 -#define VSCTRCTL_LCOFIFRZ 0x0000000000001000 -#define VSCTRCTL_EXCINH 0x0000000200000000 -#define VSCTRCTL_INTRINH 0x0000000400000000 -#define VSCTRCTL_TRETINH 0x0000000800000000 -#define VSCTRCTL_NTBREN 0x0000001000000000 -#define VSCTRCTL_TKBRINH 0x0000002000000000 -#define VSCTRCTL_INDCALLINH 0x0000010000000000 -#define VSCTRCTL_DIRCALLINH 0x0000020000000000 -#define VSCTRCTL_INDJMPINH 0x0000040000000000 -#define VSCTRCTL_DIRJMPINH 0x0000080000000000 -#define VSCTRCTL_CORSWAPINH 0x0000100000000000 -#define VSCTRCTL_RETINH 0x0000200000000000 -#define VSCTRCTL_INDLJMPINH 0x0000400000000000 -#define VSCTRCTL_DIRLJMPINH 0x0000800000000000 - -#define SCTRDEPTH_DEPTH 0x00000007 - -#define SCTRSTATUS_WRPTR 0x000000FF -#define SCTRSTATUS_FROZEN 0x80000000 - -#define IRQ_U_SOFT 0 -#define IRQ_S_SOFT 1 -#define IRQ_VS_SOFT 2 -#define IRQ_M_SOFT 3 -#define IRQ_U_TIMER 4 -#define IRQ_S_TIMER 5 -#define IRQ_VS_TIMER 6 -#define IRQ_M_TIMER 7 -#define IRQ_U_EXT 8 -#define IRQ_S_EXT 9 -#define IRQ_VS_EXT 10 -#define IRQ_M_EXT 11 -#define IRQ_S_GEXT 12 -#define IRQ_COP 12 -#define IRQ_LCOF 13 -#define IRQ_RAS_LOW_PRIO 35 -#define IRQ_RAS_HIGH_PRIO 43 - -/* page table entry (PTE) fields */ -#define PTE_V 0x001 /* Valid */ -#define PTE_R 0x002 /* Read */ -#define PTE_W 0x004 /* Write */ -#define PTE_X 0x008 /* Execute */ -#define PTE_U 0x010 /* User */ -#define PTE_G 0x020 /* Global */ -#define PTE_A 0x040 /* Accessed */ -#define PTE_D 0x080 /* Dirty */ -#define PTE_SOFT 0x300 /* Reserved for Software */ -#define PTE_RSVD 0x1FC0000000000000 /* Reserved for future standard use */ -#define PTE_PBMT 0x6000000000000000 /* Svpbmt: Page-based memory types */ -#define PTE_N 0x8000000000000000 /* Svnapot: NAPOT translation contiguity */ -#define PTE_ATTR 0xFFC0000000000000 /* All attributes and reserved bits */ - -#define PTE_PPN_SHIFT 10 - -#define PTE_TABLE(PTE) (((PTE) & (PTE_V | PTE_R | PTE_W | PTE_X)) == PTE_V) - -/* srmcfg CSR fields */ -#define SRMCFG_RCID 0x00000FFF -#define SRMCFG_MCID 0x0FFF0000 - -/* software check exception xtval codes */ -#define LANDING_PAD_FAULT 2 -#define SHADOW_STACK_FAULT 3 - -#ifdef __riscv - -#if __riscv_xlen == 64 -# define MSTATUS_SD MSTATUS64_SD -# define SSTATUS_SD SSTATUS64_SD -# define RISCV_PGLEVEL_BITS 9 -# define SATP_MODE SATP64_MODE -#else -# define MSTATUS_SD MSTATUS32_SD -# define SSTATUS_SD SSTATUS32_SD -# define RISCV_PGLEVEL_BITS 10 -# define SATP_MODE SATP32_MODE -#endif -#define RISCV_PGSHIFT 12 -#define RISCV_PGSIZE (1 << RISCV_PGSHIFT) - -#ifndef __ASSEMBLER__ - -#ifdef __GNUC__ - -#define read_csr(reg) ({ unsigned long __tmp; \ - asm volatile ("csrr %0, " #reg : "=r"(__tmp)); \ - __tmp; }) - -#define write_csr(reg, val) ({ \ - asm volatile ("csrw " #reg ", %0" :: "rK"(val)); }) - -#define swap_csr(reg, val) ({ unsigned long __tmp; \ - asm volatile ("csrrw %0, " #reg ", %1" : "=r"(__tmp) : "rK"(val)); \ - __tmp; }) - -#define set_csr(reg, bit) ({ unsigned long __tmp; \ - asm volatile ("csrrs %0, " #reg ", %1" : "=r"(__tmp) : "rK"(bit)); \ - __tmp; }) - -#define clear_csr(reg, bit) ({ unsigned long __tmp; \ - asm volatile ("csrrc %0, " #reg ", %1" : "=r"(__tmp) : "rK"(bit)); \ - __tmp; }) - -#define rdtime() read_csr(time) -#define rdcycle() read_csr(cycle) -#define rdinstret() read_csr(instret) - -#endif - -#endif - -#endif - -#endif - -/* Automatically generated by parse_opcodes. */ -#ifndef RISCV_ENCODING_H -#define RISCV_ENCODING_H -#define MATCH_ADD 0x33 -#define MASK_ADD 0xfe00707f -#define MATCH_ADD_UW 0x800003b -#define MASK_ADD_UW 0xfe00707f -#define MATCH_ADDI 0x13 -#define MASK_ADDI 0x707f -#define MATCH_ADDIW 0x1b -#define MASK_ADDIW 0x707f -#define MATCH_ADDW 0x3b -#define MASK_ADDW 0xfe00707f -#define MATCH_AES32DSI 0x2a000033 -#define MASK_AES32DSI 0x3e00707f -#define MATCH_AES32DSMI 0x2e000033 -#define MASK_AES32DSMI 0x3e00707f -#define MATCH_AES32ESI 0x22000033 -#define MASK_AES32ESI 0x3e00707f -#define MATCH_AES32ESMI 0x26000033 -#define MASK_AES32ESMI 0x3e00707f -#define MATCH_AES64DS 0x3a000033 -#define MASK_AES64DS 0xfe00707f -#define MATCH_AES64DSM 0x3e000033 -#define MASK_AES64DSM 0xfe00707f -#define MATCH_AES64ES 0x32000033 -#define MASK_AES64ES 0xfe00707f -#define MATCH_AES64ESM 0x36000033 -#define MASK_AES64ESM 0xfe00707f -#define MATCH_AES64IM 0x30001013 -#define MASK_AES64IM 0xfff0707f -#define MATCH_AES64KS1I 0x31001013 -#define MASK_AES64KS1I 0xff00707f -#define MATCH_AES64KS2 0x7e000033 -#define MASK_AES64KS2 0xfe00707f -#define MATCH_AMOADD_B 0x2f -#define MASK_AMOADD_B 0xf800707f -#define MATCH_AMOADD_D 0x302f -#define MASK_AMOADD_D 0xf800707f -#define MATCH_AMOADD_H 0x102f -#define MASK_AMOADD_H 0xf800707f -#define MATCH_AMOADD_W 0x202f -#define MASK_AMOADD_W 0xf800707f -#define MATCH_AMOAND_B 0x6000002f -#define MASK_AMOAND_B 0xf800707f -#define MATCH_AMOAND_D 0x6000302f -#define MASK_AMOAND_D 0xf800707f -#define MATCH_AMOAND_H 0x6000102f -#define MASK_AMOAND_H 0xf800707f -#define MATCH_AMOAND_W 0x6000202f -#define MASK_AMOAND_W 0xf800707f -#define MATCH_AMOCAS_B 0x2800002f -#define MASK_AMOCAS_B 0xf800707f -#define MATCH_AMOCAS_D 0x2800302f -#define MASK_AMOCAS_D 0xf800707f -#define MATCH_AMOCAS_H 0x2800102f -#define MASK_AMOCAS_H 0xf800707f -#define MATCH_AMOCAS_Q 0x2800402f -#define MASK_AMOCAS_Q 0xf800707f -#define MATCH_AMOCAS_W 0x2800202f -#define MASK_AMOCAS_W 0xf800707f -#define MATCH_AMOMAX_B 0xa000002f -#define MASK_AMOMAX_B 0xf800707f -#define MATCH_AMOMAX_D 0xa000302f -#define MASK_AMOMAX_D 0xf800707f -#define MATCH_AMOMAX_H 0xa000102f -#define MASK_AMOMAX_H 0xf800707f -#define MATCH_AMOMAX_W 0xa000202f -#define MASK_AMOMAX_W 0xf800707f -#define MATCH_AMOMAXU_B 0xe000002f -#define MASK_AMOMAXU_B 0xf800707f -#define MATCH_AMOMAXU_D 0xe000302f -#define MASK_AMOMAXU_D 0xf800707f -#define MATCH_AMOMAXU_H 0xe000102f -#define MASK_AMOMAXU_H 0xf800707f -#define MATCH_AMOMAXU_W 0xe000202f -#define MASK_AMOMAXU_W 0xf800707f -#define MATCH_AMOMIN_B 0x8000002f -#define MASK_AMOMIN_B 0xf800707f -#define MATCH_AMOMIN_D 0x8000302f -#define MASK_AMOMIN_D 0xf800707f -#define MATCH_AMOMIN_H 0x8000102f -#define MASK_AMOMIN_H 0xf800707f -#define MATCH_AMOMIN_W 0x8000202f -#define MASK_AMOMIN_W 0xf800707f -#define MATCH_AMOMINU_B 0xc000002f -#define MASK_AMOMINU_B 0xf800707f -#define MATCH_AMOMINU_D 0xc000302f -#define MASK_AMOMINU_D 0xf800707f -#define MATCH_AMOMINU_H 0xc000102f -#define MASK_AMOMINU_H 0xf800707f -#define MATCH_AMOMINU_W 0xc000202f -#define MASK_AMOMINU_W 0xf800707f -#define MATCH_AMOOR_B 0x4000002f -#define MASK_AMOOR_B 0xf800707f -#define MATCH_AMOOR_D 0x4000302f -#define MASK_AMOOR_D 0xf800707f -#define MATCH_AMOOR_H 0x4000102f -#define MASK_AMOOR_H 0xf800707f -#define MATCH_AMOOR_W 0x4000202f -#define MASK_AMOOR_W 0xf800707f -#define MATCH_AMOSWAP_B 0x800002f -#define MASK_AMOSWAP_B 0xf800707f -#define MATCH_AMOSWAP_D 0x800302f -#define MASK_AMOSWAP_D 0xf800707f -#define MATCH_AMOSWAP_H 0x800102f -#define MASK_AMOSWAP_H 0xf800707f -#define MATCH_AMOSWAP_W 0x800202f -#define MASK_AMOSWAP_W 0xf800707f -#define MATCH_AMOXOR_B 0x2000002f -#define MASK_AMOXOR_B 0xf800707f -#define MATCH_AMOXOR_D 0x2000302f -#define MASK_AMOXOR_D 0xf800707f -#define MATCH_AMOXOR_H 0x2000102f -#define MASK_AMOXOR_H 0xf800707f -#define MATCH_AMOXOR_W 0x2000202f -#define MASK_AMOXOR_W 0xf800707f -#define MATCH_AND 0x7033 -#define MASK_AND 0xfe00707f -#define MATCH_ANDI 0x7013 -#define MASK_ANDI 0x707f -#define MATCH_ANDN 0x40007033 -#define MASK_ANDN 0xfe00707f -#define MATCH_AUIPC 0x17 -#define MASK_AUIPC 0x7f -#define MATCH_BCLR 0x48001033 -#define MASK_BCLR 0xfe00707f -#define MATCH_BCLRI 0x48001013 -#define MASK_BCLRI 0xfc00707f -#define MATCH_BEQ 0x63 -#define MASK_BEQ 0x707f -#define MATCH_BEXT 0x48005033 -#define MASK_BEXT 0xfe00707f -#define MATCH_BEXTI 0x48005013 -#define MASK_BEXTI 0xfc00707f -#define MATCH_BGE 0x5063 -#define MASK_BGE 0x707f -#define MATCH_BGEU 0x7063 -#define MASK_BGEU 0x707f -#define MATCH_BINV 0x68001033 -#define MASK_BINV 0xfe00707f -#define MATCH_BINVI 0x68001013 -#define MASK_BINVI 0xfc00707f -#define MATCH_BLT 0x4063 -#define MASK_BLT 0x707f -#define MATCH_BLTU 0x6063 -#define MASK_BLTU 0x707f -#define MATCH_BNE 0x1063 -#define MASK_BNE 0x707f -#define MATCH_BREV8 0x68705013 -#define MASK_BREV8 0xfff0707f -#define MATCH_BSET 0x28001033 -#define MASK_BSET 0xfe00707f -#define MATCH_BSETI 0x28001013 -#define MASK_BSETI 0xfc00707f -#define MATCH_C_ADD 0x9002 -#define MASK_C_ADD 0xf003 -#define MATCH_C_ADDI 0x1 -#define MASK_C_ADDI 0xe003 -#define MATCH_C_ADDI16SP 0x6101 -#define MASK_C_ADDI16SP 0xef83 -#define MATCH_C_ADDI4SPN 0x0 -#define MASK_C_ADDI4SPN 0xe003 -#define MATCH_C_ADDIW 0x2001 -#define MASK_C_ADDIW 0xe003 -#define MATCH_C_ADDW 0x9c21 -#define MASK_C_ADDW 0xfc63 -#define MATCH_C_AND 0x8c61 -#define MASK_C_AND 0xfc63 -#define MATCH_C_ANDI 0x8801 -#define MASK_C_ANDI 0xec03 -#define MATCH_C_BEQZ 0xc001 -#define MASK_C_BEQZ 0xe003 -#define MATCH_C_BNEZ 0xe001 -#define MASK_C_BNEZ 0xe003 -#define MATCH_C_EBREAK 0x9002 -#define MASK_C_EBREAK 0xffff -#define MATCH_C_FLD 0x2000 -#define MASK_C_FLD 0xe003 -#define MATCH_C_FLDSP 0x2002 -#define MASK_C_FLDSP 0xe003 -#define MATCH_C_FLW 0x6000 -#define MASK_C_FLW 0xe003 -#define MATCH_C_FLWSP 0x6002 -#define MASK_C_FLWSP 0xe003 -#define MATCH_C_FSD 0xa000 -#define MASK_C_FSD 0xe003 -#define MATCH_C_FSDSP 0xa002 -#define MASK_C_FSDSP 0xe003 -#define MATCH_C_FSW 0xe000 -#define MASK_C_FSW 0xe003 -#define MATCH_C_FSWSP 0xe002 -#define MASK_C_FSWSP 0xe003 -#define MATCH_C_J 0xa001 -#define MASK_C_J 0xe003 -#define MATCH_C_JAL 0x2001 -#define MASK_C_JAL 0xe003 -#define MATCH_C_JALR 0x9002 -#define MASK_C_JALR 0xf07f -#define MATCH_C_JR 0x8002 -#define MASK_C_JR 0xf07f -#define MATCH_C_LBU 0x8000 -#define MASK_C_LBU 0xfc03 -#define MATCH_C_LD 0x6000 -#define MASK_C_LD 0xe003 -#define MATCH_C_LDSP 0x6002 -#define MASK_C_LDSP 0xe003 -#define MATCH_C_LI 0x4001 -#define MASK_C_LI 0xe003 -#define MATCH_C_LUI 0x6001 -#define MASK_C_LUI 0xe003 -#define MATCH_C_LW 0x4000 -#define MASK_C_LW 0xe003 -#define MATCH_C_LWSP 0x4002 -#define MASK_C_LWSP 0xe003 -#define MATCH_C_MUL 0x9c41 -#define MASK_C_MUL 0xfc63 -#define MATCH_C_MV 0x8002 -#define MASK_C_MV 0xf003 -#define MATCH_C_NOP 0x1 -#define MASK_C_NOP 0xef83 -#define MATCH_C_NOT 0x9c75 -#define MASK_C_NOT 0xfc7f -#define MATCH_C_OR 0x8c41 -#define MASK_C_OR 0xfc63 -#define MATCH_C_SB 0x8800 -#define MASK_C_SB 0xfc03 -#define MATCH_C_SD 0xe000 -#define MASK_C_SD 0xe003 -#define MATCH_C_SDSP 0xe002 -#define MASK_C_SDSP 0xe003 -#define MATCH_C_SEXT_B 0x9c65 -#define MASK_C_SEXT_B 0xfc7f -#define MATCH_C_SEXT_H 0x9c6d -#define MASK_C_SEXT_H 0xfc7f -#define MATCH_C_SLLI 0x2 -#define MASK_C_SLLI 0xe003 -#define MATCH_C_SRAI 0x8401 -#define MASK_C_SRAI 0xec03 -#define MATCH_C_SRLI 0x8001 -#define MASK_C_SRLI 0xec03 -#define MATCH_C_SUB 0x8c01 -#define MASK_C_SUB 0xfc63 -#define MATCH_C_SUBW 0x9c01 -#define MASK_C_SUBW 0xfc63 -#define MATCH_C_SW 0xc000 -#define MASK_C_SW 0xe003 -#define MATCH_C_SWSP 0xc002 -#define MASK_C_SWSP 0xe003 -#define MATCH_C_XOR 0x8c21 -#define MASK_C_XOR 0xfc63 -#define MATCH_C_ZEXT_B 0x9c61 -#define MASK_C_ZEXT_B 0xfc7f -#define MATCH_C_ZEXT_H 0x9c69 -#define MASK_C_ZEXT_H 0xfc7f -#define MATCH_C_ZEXT_W 0x9c71 -#define MASK_C_ZEXT_W 0xfc7f -#define MATCH_CBO_CLEAN 0x10200f -#define MASK_CBO_CLEAN 0xfff07fff -#define MATCH_CBO_FLUSH 0x20200f -#define MASK_CBO_FLUSH 0xfff07fff -#define MATCH_CBO_INVAL 0x200f -#define MASK_CBO_INVAL 0xfff07fff -#define MATCH_CBO_ZERO 0x40200f -#define MASK_CBO_ZERO 0xfff07fff -#define MATCH_CLMUL 0xa001033 -#define MASK_CLMUL 0xfe00707f -#define MATCH_CLMULH 0xa003033 -#define MASK_CLMULH 0xfe00707f -#define MATCH_CLMULR 0xa002033 -#define MASK_CLMULR 0xfe00707f -#define MATCH_CLZ 0x60001013 -#define MASK_CLZ 0xfff0707f -#define MATCH_CLZW 0x6000101b -#define MASK_CLZW 0xfff0707f -#define MATCH_CM_MVA01S 0xac62 -#define MASK_CM_MVA01S 0xfc63 -#define MATCH_CM_MVSA01 0xac22 -#define MASK_CM_MVSA01 0xfc63 -#define MATCH_CM_POP 0xba02 -#define MASK_CM_POP 0xff03 -#define MATCH_CM_POPRET 0xbe02 -#define MASK_CM_POPRET 0xff03 -#define MATCH_CM_POPRETZ 0xbc02 -#define MASK_CM_POPRETZ 0xff03 -#define MATCH_CM_PUSH 0xb802 -#define MASK_CM_PUSH 0xff03 -#define MATCH_CPOP 0x60201013 -#define MASK_CPOP 0xfff0707f -#define MATCH_CPOPW 0x6020101b -#define MASK_CPOPW 0xfff0707f -#define MATCH_CSRRC 0x3073 -#define MASK_CSRRC 0x707f -#define MATCH_CSRRCI 0x7073 -#define MASK_CSRRCI 0x707f -#define MATCH_CSRRS 0x2073 -#define MASK_CSRRS 0x707f -#define MATCH_CSRRSI 0x6073 -#define MASK_CSRRSI 0x707f -#define MATCH_CSRRW 0x1073 -#define MASK_CSRRW 0x707f -#define MATCH_CSRRWI 0x5073 -#define MASK_CSRRWI 0x707f -#define MATCH_CTZ 0x60101013 -#define MASK_CTZ 0xfff0707f -#define MATCH_CTZW 0x6010101b -#define MASK_CTZW 0xfff0707f -#define MATCH_CZERO_EQZ 0xe005033 -#define MASK_CZERO_EQZ 0xfe00707f -#define MATCH_CZERO_NEZ 0xe007033 -#define MASK_CZERO_NEZ 0xfe00707f -#define MATCH_DIV 0x2004033 -#define MASK_DIV 0xfe00707f -#define MATCH_DIVU 0x2005033 -#define MASK_DIVU 0xfe00707f -#define MATCH_DIVUW 0x200503b -#define MASK_DIVUW 0xfe00707f -#define MATCH_DIVW 0x200403b -#define MASK_DIVW 0xfe00707f -#define MATCH_DRET 0x7b200073 -#define MASK_DRET 0xffffffff -#define MATCH_EBREAK 0x100073 -#define MASK_EBREAK 0xffffffff -#define MATCH_ECALL 0x73 -#define MASK_ECALL 0xffffffff -#define MATCH_FADD_D 0x2000053 -#define MASK_FADD_D 0xfe00007f -#define MATCH_FADD_H 0x4000053 -#define MASK_FADD_H 0xfe00007f -#define MATCH_FADD_Q 0x6000053 -#define MASK_FADD_Q 0xfe00007f -#define MATCH_FADD_S 0x53 -#define MASK_FADD_S 0xfe00007f -#define MATCH_FCLASS_D 0xe2001053 -#define MASK_FCLASS_D 0xfff0707f -#define MATCH_FCLASS_H 0xe4001053 -#define MASK_FCLASS_H 0xfff0707f -#define MATCH_FCLASS_Q 0xe6001053 -#define MASK_FCLASS_Q 0xfff0707f -#define MATCH_FCLASS_S 0xe0001053 -#define MASK_FCLASS_S 0xfff0707f -#define MATCH_FCVT_BF16_S 0x44800053 -#define MASK_FCVT_BF16_S 0xfff0007f -#define MATCH_FCVT_D_H 0x42200053 -#define MASK_FCVT_D_H 0xfff0007f -#define MATCH_FCVT_D_L 0xd2200053 -#define MASK_FCVT_D_L 0xfff0007f -#define MATCH_FCVT_D_LU 0xd2300053 -#define MASK_FCVT_D_LU 0xfff0007f -#define MATCH_FCVT_D_Q 0x42300053 -#define MASK_FCVT_D_Q 0xfff0007f -#define MATCH_FCVT_D_S 0x42000053 -#define MASK_FCVT_D_S 0xfff0007f -#define MATCH_FCVT_D_W 0xd2000053 -#define MASK_FCVT_D_W 0xfff0007f -#define MATCH_FCVT_D_WU 0xd2100053 -#define MASK_FCVT_D_WU 0xfff0007f -#define MATCH_FCVT_H_D 0x44100053 -#define MASK_FCVT_H_D 0xfff0007f -#define MATCH_FCVT_H_L 0xd4200053 -#define MASK_FCVT_H_L 0xfff0007f -#define MATCH_FCVT_H_LU 0xd4300053 -#define MASK_FCVT_H_LU 0xfff0007f -#define MATCH_FCVT_H_Q 0x44300053 -#define MASK_FCVT_H_Q 0xfff0007f -#define MATCH_FCVT_H_S 0x44000053 -#define MASK_FCVT_H_S 0xfff0007f -#define MATCH_FCVT_H_W 0xd4000053 -#define MASK_FCVT_H_W 0xfff0007f -#define MATCH_FCVT_H_WU 0xd4100053 -#define MASK_FCVT_H_WU 0xfff0007f -#define MATCH_FCVT_L_D 0xc2200053 -#define MASK_FCVT_L_D 0xfff0007f -#define MATCH_FCVT_L_H 0xc4200053 -#define MASK_FCVT_L_H 0xfff0007f -#define MATCH_FCVT_L_Q 0xc6200053 -#define MASK_FCVT_L_Q 0xfff0007f -#define MATCH_FCVT_L_S 0xc0200053 -#define MASK_FCVT_L_S 0xfff0007f -#define MATCH_FCVT_LU_D 0xc2300053 -#define MASK_FCVT_LU_D 0xfff0007f -#define MATCH_FCVT_LU_H 0xc4300053 -#define MASK_FCVT_LU_H 0xfff0007f -#define MATCH_FCVT_LU_Q 0xc6300053 -#define MASK_FCVT_LU_Q 0xfff0007f -#define MATCH_FCVT_LU_S 0xc0300053 -#define MASK_FCVT_LU_S 0xfff0007f -#define MATCH_FCVT_Q_D 0x46100053 -#define MASK_FCVT_Q_D 0xfff0007f -#define MATCH_FCVT_Q_H 0x46200053 -#define MASK_FCVT_Q_H 0xfff0007f -#define MATCH_FCVT_Q_L 0xd6200053 -#define MASK_FCVT_Q_L 0xfff0007f -#define MATCH_FCVT_Q_LU 0xd6300053 -#define MASK_FCVT_Q_LU 0xfff0007f -#define MATCH_FCVT_Q_S 0x46000053 -#define MASK_FCVT_Q_S 0xfff0007f -#define MATCH_FCVT_Q_W 0xd6000053 -#define MASK_FCVT_Q_W 0xfff0007f -#define MATCH_FCVT_Q_WU 0xd6100053 -#define MASK_FCVT_Q_WU 0xfff0007f -#define MATCH_FCVT_S_BF16 0x40600053 -#define MASK_FCVT_S_BF16 0xfff0007f -#define MATCH_FCVT_S_D 0x40100053 -#define MASK_FCVT_S_D 0xfff0007f -#define MATCH_FCVT_S_H 0x40200053 -#define MASK_FCVT_S_H 0xfff0007f -#define MATCH_FCVT_S_L 0xd0200053 -#define MASK_FCVT_S_L 0xfff0007f -#define MATCH_FCVT_S_LU 0xd0300053 -#define MASK_FCVT_S_LU 0xfff0007f -#define MATCH_FCVT_S_Q 0x40300053 -#define MASK_FCVT_S_Q 0xfff0007f -#define MATCH_FCVT_S_W 0xd0000053 -#define MASK_FCVT_S_W 0xfff0007f -#define MATCH_FCVT_S_WU 0xd0100053 -#define MASK_FCVT_S_WU 0xfff0007f -#define MATCH_FCVT_W_D 0xc2000053 -#define MASK_FCVT_W_D 0xfff0007f -#define MATCH_FCVT_W_H 0xc4000053 -#define MASK_FCVT_W_H 0xfff0007f -#define MATCH_FCVT_W_Q 0xc6000053 -#define MASK_FCVT_W_Q 0xfff0007f -#define MATCH_FCVT_W_S 0xc0000053 -#define MASK_FCVT_W_S 0xfff0007f -#define MATCH_FCVT_WU_D 0xc2100053 -#define MASK_FCVT_WU_D 0xfff0007f -#define MATCH_FCVT_WU_H 0xc4100053 -#define MASK_FCVT_WU_H 0xfff0007f -#define MATCH_FCVT_WU_Q 0xc6100053 -#define MASK_FCVT_WU_Q 0xfff0007f -#define MATCH_FCVT_WU_S 0xc0100053 -#define MASK_FCVT_WU_S 0xfff0007f -#define MATCH_FCVTMOD_W_D 0xc2801053 -#define MASK_FCVTMOD_W_D 0xfff0707f -#define MATCH_FDIV_D 0x1a000053 -#define MASK_FDIV_D 0xfe00007f -#define MATCH_FDIV_H 0x1c000053 -#define MASK_FDIV_H 0xfe00007f -#define MATCH_FDIV_Q 0x1e000053 -#define MASK_FDIV_Q 0xfe00007f -#define MATCH_FDIV_S 0x18000053 -#define MASK_FDIV_S 0xfe00007f -#define MATCH_FENCE 0xf -#define MASK_FENCE 0x707f -#define MATCH_FENCE_I 0x100f -#define MASK_FENCE_I 0x707f -#define MATCH_FEQ_D 0xa2002053 -#define MASK_FEQ_D 0xfe00707f -#define MATCH_FEQ_H 0xa4002053 -#define MASK_FEQ_H 0xfe00707f -#define MATCH_FEQ_Q 0xa6002053 -#define MASK_FEQ_Q 0xfe00707f -#define MATCH_FEQ_S 0xa0002053 -#define MASK_FEQ_S 0xfe00707f -#define MATCH_FLD 0x3007 -#define MASK_FLD 0x707f -#define MATCH_FLE_D 0xa2000053 -#define MASK_FLE_D 0xfe00707f -#define MATCH_FLE_H 0xa4000053 -#define MASK_FLE_H 0xfe00707f -#define MATCH_FLE_Q 0xa6000053 -#define MASK_FLE_Q 0xfe00707f -#define MATCH_FLE_S 0xa0000053 -#define MASK_FLE_S 0xfe00707f -#define MATCH_FLEQ_D 0xa2004053 -#define MASK_FLEQ_D 0xfe00707f -#define MATCH_FLEQ_H 0xa4004053 -#define MASK_FLEQ_H 0xfe00707f -#define MATCH_FLEQ_Q 0xa6004053 -#define MASK_FLEQ_Q 0xfe00707f -#define MATCH_FLEQ_S 0xa0004053 -#define MASK_FLEQ_S 0xfe00707f -#define MATCH_FLH 0x1007 -#define MASK_FLH 0x707f -#define MATCH_FLI_D 0xf2100053 -#define MASK_FLI_D 0xfff0707f -#define MATCH_FLI_H 0xf4100053 -#define MASK_FLI_H 0xfff0707f -#define MATCH_FLI_Q 0xf6100053 -#define MASK_FLI_Q 0xfff0707f -#define MATCH_FLI_S 0xf0100053 -#define MASK_FLI_S 0xfff0707f -#define MATCH_FLQ 0x4007 -#define MASK_FLQ 0x707f -#define MATCH_FLT_D 0xa2001053 -#define MASK_FLT_D 0xfe00707f -#define MATCH_FLT_H 0xa4001053 -#define MASK_FLT_H 0xfe00707f -#define MATCH_FLT_Q 0xa6001053 -#define MASK_FLT_Q 0xfe00707f -#define MATCH_FLT_S 0xa0001053 -#define MASK_FLT_S 0xfe00707f -#define MATCH_FLTQ_D 0xa2005053 -#define MASK_FLTQ_D 0xfe00707f -#define MATCH_FLTQ_H 0xa4005053 -#define MASK_FLTQ_H 0xfe00707f -#define MATCH_FLTQ_Q 0xa6005053 -#define MASK_FLTQ_Q 0xfe00707f -#define MATCH_FLTQ_S 0xa0005053 -#define MASK_FLTQ_S 0xfe00707f -#define MATCH_FLW 0x2007 -#define MASK_FLW 0x707f -#define MATCH_FMADD_D 0x2000043 -#define MASK_FMADD_D 0x600007f -#define MATCH_FMADD_H 0x4000043 -#define MASK_FMADD_H 0x600007f -#define MATCH_FMADD_Q 0x6000043 -#define MASK_FMADD_Q 0x600007f -#define MATCH_FMADD_S 0x43 -#define MASK_FMADD_S 0x600007f -#define MATCH_FMAX_D 0x2a001053 -#define MASK_FMAX_D 0xfe00707f -#define MATCH_FMAX_H 0x2c001053 -#define MASK_FMAX_H 0xfe00707f -#define MATCH_FMAX_Q 0x2e001053 -#define MASK_FMAX_Q 0xfe00707f -#define MATCH_FMAX_S 0x28001053 -#define MASK_FMAX_S 0xfe00707f -#define MATCH_FMAXM_D 0x2a003053 -#define MASK_FMAXM_D 0xfe00707f -#define MATCH_FMAXM_H 0x2c003053 -#define MASK_FMAXM_H 0xfe00707f -#define MATCH_FMAXM_Q 0x2e003053 -#define MASK_FMAXM_Q 0xfe00707f -#define MATCH_FMAXM_S 0x28003053 -#define MASK_FMAXM_S 0xfe00707f -#define MATCH_FMIN_D 0x2a000053 -#define MASK_FMIN_D 0xfe00707f -#define MATCH_FMIN_H 0x2c000053 -#define MASK_FMIN_H 0xfe00707f -#define MATCH_FMIN_Q 0x2e000053 -#define MASK_FMIN_Q 0xfe00707f -#define MATCH_FMIN_S 0x28000053 -#define MASK_FMIN_S 0xfe00707f -#define MATCH_FMINM_D 0x2a002053 -#define MASK_FMINM_D 0xfe00707f -#define MATCH_FMINM_H 0x2c002053 -#define MASK_FMINM_H 0xfe00707f -#define MATCH_FMINM_Q 0x2e002053 -#define MASK_FMINM_Q 0xfe00707f -#define MATCH_FMINM_S 0x28002053 -#define MASK_FMINM_S 0xfe00707f -#define MATCH_FMSUB_D 0x2000047 -#define MASK_FMSUB_D 0x600007f -#define MATCH_FMSUB_H 0x4000047 -#define MASK_FMSUB_H 0x600007f -#define MATCH_FMSUB_Q 0x6000047 -#define MASK_FMSUB_Q 0x600007f -#define MATCH_FMSUB_S 0x47 -#define MASK_FMSUB_S 0x600007f -#define MATCH_FMUL_D 0x12000053 -#define MASK_FMUL_D 0xfe00007f -#define MATCH_FMUL_H 0x14000053 -#define MASK_FMUL_H 0xfe00007f -#define MATCH_FMUL_Q 0x16000053 -#define MASK_FMUL_Q 0xfe00007f -#define MATCH_FMUL_S 0x10000053 -#define MASK_FMUL_S 0xfe00007f -#define MATCH_FMV_D_X 0xf2000053 -#define MASK_FMV_D_X 0xfff0707f -#define MATCH_FMV_H_X 0xf4000053 -#define MASK_FMV_H_X 0xfff0707f -#define MATCH_FMV_W_X 0xf0000053 -#define MASK_FMV_W_X 0xfff0707f -#define MATCH_FMV_X_D 0xe2000053 -#define MASK_FMV_X_D 0xfff0707f -#define MATCH_FMV_X_H 0xe4000053 -#define MASK_FMV_X_H 0xfff0707f -#define MATCH_FMV_X_W 0xe0000053 -#define MASK_FMV_X_W 0xfff0707f -#define MATCH_FMVH_X_D 0xe2100053 -#define MASK_FMVH_X_D 0xfff0707f -#define MATCH_FMVH_X_Q 0xe6100053 -#define MASK_FMVH_X_Q 0xfff0707f -#define MATCH_FMVP_D_X 0xb2000053 -#define MASK_FMVP_D_X 0xfe00707f -#define MATCH_FMVP_Q_X 0xb6000053 -#define MASK_FMVP_Q_X 0xfe00707f -#define MATCH_FNMADD_D 0x200004f -#define MASK_FNMADD_D 0x600007f -#define MATCH_FNMADD_H 0x400004f -#define MASK_FNMADD_H 0x600007f -#define MATCH_FNMADD_Q 0x600004f -#define MASK_FNMADD_Q 0x600007f -#define MATCH_FNMADD_S 0x4f -#define MASK_FNMADD_S 0x600007f -#define MATCH_FNMSUB_D 0x200004b -#define MASK_FNMSUB_D 0x600007f -#define MATCH_FNMSUB_H 0x400004b -#define MASK_FNMSUB_H 0x600007f -#define MATCH_FNMSUB_Q 0x600004b -#define MASK_FNMSUB_Q 0x600007f -#define MATCH_FNMSUB_S 0x4b -#define MASK_FNMSUB_S 0x600007f -#define MATCH_FROUND_D 0x42400053 -#define MASK_FROUND_D 0xfff0007f -#define MATCH_FROUND_H 0x44400053 -#define MASK_FROUND_H 0xfff0007f -#define MATCH_FROUND_Q 0x46400053 -#define MASK_FROUND_Q 0xfff0007f -#define MATCH_FROUND_S 0x40400053 -#define MASK_FROUND_S 0xfff0007f -#define MATCH_FROUNDNX_D 0x42500053 -#define MASK_FROUNDNX_D 0xfff0007f -#define MATCH_FROUNDNX_H 0x44500053 -#define MASK_FROUNDNX_H 0xfff0007f -#define MATCH_FROUNDNX_Q 0x46500053 -#define MASK_FROUNDNX_Q 0xfff0007f -#define MATCH_FROUNDNX_S 0x40500053 -#define MASK_FROUNDNX_S 0xfff0007f -#define MATCH_FSD 0x3027 -#define MASK_FSD 0x707f -#define MATCH_FSGNJ_D 0x22000053 -#define MASK_FSGNJ_D 0xfe00707f -#define MATCH_FSGNJ_H 0x24000053 -#define MASK_FSGNJ_H 0xfe00707f -#define MATCH_FSGNJ_Q 0x26000053 -#define MASK_FSGNJ_Q 0xfe00707f -#define MATCH_FSGNJ_S 0x20000053 -#define MASK_FSGNJ_S 0xfe00707f -#define MATCH_FSGNJN_D 0x22001053 -#define MASK_FSGNJN_D 0xfe00707f -#define MATCH_FSGNJN_H 0x24001053 -#define MASK_FSGNJN_H 0xfe00707f -#define MATCH_FSGNJN_Q 0x26001053 -#define MASK_FSGNJN_Q 0xfe00707f -#define MATCH_FSGNJN_S 0x20001053 -#define MASK_FSGNJN_S 0xfe00707f -#define MATCH_FSGNJX_D 0x22002053 -#define MASK_FSGNJX_D 0xfe00707f -#define MATCH_FSGNJX_H 0x24002053 -#define MASK_FSGNJX_H 0xfe00707f -#define MATCH_FSGNJX_Q 0x26002053 -#define MASK_FSGNJX_Q 0xfe00707f -#define MATCH_FSGNJX_S 0x20002053 -#define MASK_FSGNJX_S 0xfe00707f -#define MATCH_FSH 0x1027 -#define MASK_FSH 0x707f -#define MATCH_FSQ 0x4027 -#define MASK_FSQ 0x707f -#define MATCH_FSQRT_D 0x5a000053 -#define MASK_FSQRT_D 0xfff0007f -#define MATCH_FSQRT_H 0x5c000053 -#define MASK_FSQRT_H 0xfff0007f -#define MATCH_FSQRT_Q 0x5e000053 -#define MASK_FSQRT_Q 0xfff0007f -#define MATCH_FSQRT_S 0x58000053 -#define MASK_FSQRT_S 0xfff0007f -#define MATCH_FSUB_D 0xa000053 -#define MASK_FSUB_D 0xfe00007f -#define MATCH_FSUB_H 0xc000053 -#define MASK_FSUB_H 0xfe00007f -#define MATCH_FSUB_Q 0xe000053 -#define MASK_FSUB_Q 0xfe00007f -#define MATCH_FSUB_S 0x8000053 -#define MASK_FSUB_S 0xfe00007f -#define MATCH_FSW 0x2027 -#define MASK_FSW 0x707f -#define MATCH_HFENCE_GVMA 0x62000073 -#define MASK_HFENCE_GVMA 0xfe007fff -#define MATCH_HFENCE_VVMA 0x22000073 -#define MASK_HFENCE_VVMA 0xfe007fff -#define MATCH_HINVAL_GVMA 0x66000073 -#define MASK_HINVAL_GVMA 0xfe007fff -#define MATCH_HINVAL_VVMA 0x26000073 -#define MASK_HINVAL_VVMA 0xfe007fff -#define MATCH_HLV_B 0x60004073 -#define MASK_HLV_B 0xfff0707f -#define MATCH_HLV_BU 0x60104073 -#define MASK_HLV_BU 0xfff0707f -#define MATCH_HLV_D 0x6c004073 -#define MASK_HLV_D 0xfff0707f -#define MATCH_HLV_H 0x64004073 -#define MASK_HLV_H 0xfff0707f -#define MATCH_HLV_HU 0x64104073 -#define MASK_HLV_HU 0xfff0707f -#define MATCH_HLV_W 0x68004073 -#define MASK_HLV_W 0xfff0707f -#define MATCH_HLV_WU 0x68104073 -#define MASK_HLV_WU 0xfff0707f -#define MATCH_HLVX_HU 0x64304073 -#define MASK_HLVX_HU 0xfff0707f -#define MATCH_HLVX_WU 0x68304073 -#define MASK_HLVX_WU 0xfff0707f -#define MATCH_HSV_B 0x62004073 -#define MASK_HSV_B 0xfe007fff -#define MATCH_HSV_D 0x6e004073 -#define MASK_HSV_D 0xfe007fff -#define MATCH_HSV_H 0x66004073 -#define MASK_HSV_H 0xfe007fff -#define MATCH_HSV_W 0x6a004073 -#define MASK_HSV_W 0xfe007fff -#define MATCH_JAL 0x6f -#define MASK_JAL 0x7f -#define MATCH_JALR 0x67 -#define MASK_JALR 0x707f -#define MATCH_LB 0x3 -#define MASK_LB 0x707f -#define MATCH_LB_AQ 0x3400002f -#define MASK_LB_AQ 0xfdf0707f -#define MATCH_LBU 0x4003 -#define MASK_LBU 0x707f -#define MATCH_LD 0x3003 -#define MASK_LD 0x707f -#define MATCH_LD_AQ 0x3400302f -#define MASK_LD_AQ 0xfdf0707f -#define MATCH_LH 0x1003 -#define MASK_LH 0x707f -#define MATCH_LH_AQ 0x3400102f -#define MASK_LH_AQ 0xfdf0707f -#define MATCH_LHU 0x5003 -#define MASK_LHU 0x707f -#define MATCH_LR_D 0x1000302f -#define MASK_LR_D 0xf9f0707f -#define MATCH_LR_W 0x1000202f -#define MASK_LR_W 0xf9f0707f -#define MATCH_LUI 0x37 -#define MASK_LUI 0x7f -#define MATCH_LW 0x2003 -#define MASK_LW 0x707f -#define MATCH_LW_AQ 0x3400202f -#define MASK_LW_AQ 0xfdf0707f -#define MATCH_LWU 0x6003 -#define MASK_LWU 0x707f -#define MATCH_MAX 0xa006033 -#define MASK_MAX 0xfe00707f -#define MATCH_MAXU 0xa007033 -#define MASK_MAXU 0xfe00707f -#define MATCH_MIN 0xa004033 -#define MASK_MIN 0xfe00707f -#define MATCH_MINU 0xa005033 -#define MASK_MINU 0xfe00707f -#define MATCH_MNRET 0x70200073 -#define MASK_MNRET 0xffffffff -#define MATCH_MOP_R_N 0x81c04073 -#define MASK_MOP_R_N 0xb3c0707f -#define MATCH_MOP_RR_N 0x82004073 -#define MASK_MOP_RR_N 0xb200707f -#define MATCH_MRET 0x30200073 -#define MASK_MRET 0xffffffff -#define MATCH_MUL 0x2000033 -#define MASK_MUL 0xfe00707f -#define MATCH_MULH 0x2001033 -#define MASK_MULH 0xfe00707f -#define MATCH_MULHSU 0x2002033 -#define MASK_MULHSU 0xfe00707f -#define MATCH_MULHU 0x2003033 -#define MASK_MULHU 0xfe00707f -#define MATCH_MULW 0x200003b -#define MASK_MULW 0xfe00707f -#define MATCH_OR 0x6033 -#define MASK_OR 0xfe00707f -#define MATCH_ORC_B 0x28705013 -#define MASK_ORC_B 0xfff0707f -#define MATCH_ORI 0x6013 -#define MASK_ORI 0x707f -#define MATCH_ORN 0x40006033 -#define MASK_ORN 0xfe00707f -#define MATCH_PACK 0x8004033 -#define MASK_PACK 0xfe00707f -#define MATCH_PACKH 0x8007033 -#define MASK_PACKH 0xfe00707f -#define MATCH_PACKW 0x800403b -#define MASK_PACKW 0xfe00707f -#define MATCH_REM 0x2006033 -#define MASK_REM 0xfe00707f -#define MATCH_REMU 0x2007033 -#define MASK_REMU 0xfe00707f -#define MATCH_REMUW 0x200703b -#define MASK_REMUW 0xfe00707f -#define MATCH_REMW 0x200603b -#define MASK_REMW 0xfe00707f -#define MATCH_REV8 0x6b805013 -#define MASK_REV8 0xfff0707f -#define MATCH_ROL 0x60001033 -#define MASK_ROL 0xfe00707f -#define MATCH_ROLW 0x6000103b -#define MASK_ROLW 0xfe00707f -#define MATCH_ROR 0x60005033 -#define MASK_ROR 0xfe00707f -#define MATCH_RORI 0x60005013 -#define MASK_RORI 0xfc00707f -#define MATCH_RORIW 0x6000501b -#define MASK_RORIW 0xfe00707f -#define MATCH_RORW 0x6000503b -#define MASK_RORW 0xfe00707f -#define MATCH_SB 0x23 -#define MASK_SB 0x707f -#define MATCH_SB_RL 0x3a00002f -#define MASK_SB_RL 0xfa007fff -#define MATCH_SC_D 0x1800302f -#define MASK_SC_D 0xf800707f -#define MATCH_SC_W 0x1800202f -#define MASK_SC_W 0xf800707f -#define MATCH_SCTRCLR 0x10400073 -#define MASK_SCTRCLR 0xffffffff -#define MATCH_SD 0x3023 -#define MASK_SD 0x707f -#define MATCH_SD_RL 0x3a00302f -#define MASK_SD_RL 0xfa007fff -#define MATCH_SEXT_B 0x60401013 -#define MASK_SEXT_B 0xfff0707f -#define MATCH_SEXT_H 0x60501013 -#define MASK_SEXT_H 0xfff0707f -#define MATCH_SFENCE_INVAL_IR 0x18100073 -#define MASK_SFENCE_INVAL_IR 0xffffffff -#define MATCH_SFENCE_VMA 0x12000073 -#define MASK_SFENCE_VMA 0xfe007fff -#define MATCH_SFENCE_W_INVAL 0x18000073 -#define MASK_SFENCE_W_INVAL 0xffffffff -#define MATCH_SH 0x1023 -#define MASK_SH 0x707f -#define MATCH_SH1ADD 0x20002033 -#define MASK_SH1ADD 0xfe00707f -#define MATCH_SH1ADD_UW 0x2000203b -#define MASK_SH1ADD_UW 0xfe00707f -#define MATCH_SH2ADD 0x20004033 -#define MASK_SH2ADD 0xfe00707f -#define MATCH_SH2ADD_UW 0x2000403b -#define MASK_SH2ADD_UW 0xfe00707f -#define MATCH_SH3ADD 0x20006033 -#define MASK_SH3ADD 0xfe00707f -#define MATCH_SH3ADD_UW 0x2000603b -#define MASK_SH3ADD_UW 0xfe00707f -#define MATCH_SH_RL 0x3a00102f -#define MASK_SH_RL 0xfa007fff -#define MATCH_SHA256SIG0 0x10201013 -#define MASK_SHA256SIG0 0xfff0707f -#define MATCH_SHA256SIG1 0x10301013 -#define MASK_SHA256SIG1 0xfff0707f -#define MATCH_SHA256SUM0 0x10001013 -#define MASK_SHA256SUM0 0xfff0707f -#define MATCH_SHA256SUM1 0x10101013 -#define MASK_SHA256SUM1 0xfff0707f -#define MATCH_SHA512SIG0 0x10601013 -#define MASK_SHA512SIG0 0xfff0707f -#define MATCH_SHA512SIG0H 0x5c000033 -#define MASK_SHA512SIG0H 0xfe00707f -#define MATCH_SHA512SIG0L 0x54000033 -#define MASK_SHA512SIG0L 0xfe00707f -#define MATCH_SHA512SIG1 0x10701013 -#define MASK_SHA512SIG1 0xfff0707f -#define MATCH_SHA512SIG1H 0x5e000033 -#define MASK_SHA512SIG1H 0xfe00707f -#define MATCH_SHA512SIG1L 0x56000033 -#define MASK_SHA512SIG1L 0xfe00707f -#define MATCH_SHA512SUM0 0x10401013 -#define MASK_SHA512SUM0 0xfff0707f -#define MATCH_SHA512SUM0R 0x50000033 -#define MASK_SHA512SUM0R 0xfe00707f -#define MATCH_SHA512SUM1 0x10501013 -#define MASK_SHA512SUM1 0xfff0707f -#define MATCH_SHA512SUM1R 0x52000033 -#define MASK_SHA512SUM1R 0xfe00707f -#define MATCH_SINVAL_VMA 0x16000073 -#define MASK_SINVAL_VMA 0xfe007fff -#define MATCH_SLL 0x1033 -#define MASK_SLL 0xfe00707f -#define MATCH_SLLI 0x1013 -#define MASK_SLLI 0xfc00707f -#define MATCH_SLLI_UW 0x800101b -#define MASK_SLLI_UW 0xfc00707f -#define MATCH_SLLIW 0x101b -#define MASK_SLLIW 0xfe00707f -#define MATCH_SLLW 0x103b -#define MASK_SLLW 0xfe00707f -#define MATCH_SLT 0x2033 -#define MASK_SLT 0xfe00707f -#define MATCH_SLTI 0x2013 -#define MASK_SLTI 0x707f -#define MATCH_SLTIU 0x3013 -#define MASK_SLTIU 0x707f -#define MATCH_SLTU 0x3033 -#define MASK_SLTU 0xfe00707f -#define MATCH_SM3P0 0x10801013 -#define MASK_SM3P0 0xfff0707f -#define MATCH_SM3P1 0x10901013 -#define MASK_SM3P1 0xfff0707f -#define MATCH_SM4ED 0x30000033 -#define MASK_SM4ED 0x3e00707f -#define MATCH_SM4KS 0x34000033 -#define MASK_SM4KS 0x3e00707f -#define MATCH_SRA 0x40005033 -#define MASK_SRA 0xfe00707f -#define MATCH_SRAI 0x40005013 -#define MASK_SRAI 0xfc00707f -#define MATCH_SRAIW 0x4000501b -#define MASK_SRAIW 0xfe00707f -#define MATCH_SRAW 0x4000503b -#define MASK_SRAW 0xfe00707f -#define MATCH_SRET 0x10200073 -#define MASK_SRET 0xffffffff -#define MATCH_SRL 0x5033 -#define MASK_SRL 0xfe00707f -#define MATCH_SRLI 0x5013 -#define MASK_SRLI 0xfc00707f -#define MATCH_SRLIW 0x501b -#define MASK_SRLIW 0xfe00707f -#define MATCH_SRLW 0x503b -#define MASK_SRLW 0xfe00707f -#define MATCH_SSAMOSWAP_D 0x4800302f -#define MASK_SSAMOSWAP_D 0xf800707f -#define MATCH_SSAMOSWAP_W 0x4800202f -#define MASK_SSAMOSWAP_W 0xf800707f -#define MATCH_SUB 0x40000033 -#define MASK_SUB 0xfe00707f -#define MATCH_SUBW 0x4000003b -#define MASK_SUBW 0xfe00707f -#define MATCH_SW 0x2023 -#define MASK_SW 0x707f -#define MATCH_SW_RL 0x3a00202f -#define MASK_SW_RL 0xfa007fff -#define MATCH_UNZIP 0x8f05013 -#define MASK_UNZIP 0xfff0707f -#define MATCH_VAADD_VV 0x24002057 -#define MASK_VAADD_VV 0xfc00707f -#define MATCH_VAADD_VX 0x24006057 -#define MASK_VAADD_VX 0xfc00707f -#define MATCH_VAADDU_VV 0x20002057 -#define MASK_VAADDU_VV 0xfc00707f -#define MATCH_VAADDU_VX 0x20006057 -#define MASK_VAADDU_VX 0xfc00707f -#define MATCH_VADC_VIM 0x40003057 -#define MASK_VADC_VIM 0xfe00707f -#define MATCH_VADC_VVM 0x40000057 -#define MASK_VADC_VVM 0xfe00707f -#define MATCH_VADC_VXM 0x40004057 -#define MASK_VADC_VXM 0xfe00707f -#define MATCH_VADD_VI 0x3057 -#define MASK_VADD_VI 0xfc00707f -#define MATCH_VADD_VV 0x57 -#define MASK_VADD_VV 0xfc00707f -#define MATCH_VADD_VX 0x4057 -#define MASK_VADD_VX 0xfc00707f -#define MATCH_VAESDF_VS 0xa600a077 -#define MASK_VAESDF_VS 0xfe0ff07f -#define MATCH_VAESDF_VV 0xa200a077 -#define MASK_VAESDF_VV 0xfe0ff07f -#define MATCH_VAESDM_VS 0xa6002077 -#define MASK_VAESDM_VS 0xfe0ff07f -#define MATCH_VAESDM_VV 0xa2002077 -#define MASK_VAESDM_VV 0xfe0ff07f -#define MATCH_VAESEF_VS 0xa601a077 -#define MASK_VAESEF_VS 0xfe0ff07f -#define MATCH_VAESEF_VV 0xa201a077 -#define MASK_VAESEF_VV 0xfe0ff07f -#define MATCH_VAESEM_VS 0xa6012077 -#define MASK_VAESEM_VS 0xfe0ff07f -#define MATCH_VAESEM_VV 0xa2012077 -#define MASK_VAESEM_VV 0xfe0ff07f -#define MATCH_VAESKF1_VI 0x8a002077 -#define MASK_VAESKF1_VI 0xfe00707f -#define MATCH_VAESKF2_VI 0xaa002077 -#define MASK_VAESKF2_VI 0xfe00707f -#define MATCH_VAESZ_VS 0xa603a077 -#define MASK_VAESZ_VS 0xfe0ff07f -#define MATCH_VAND_VI 0x24003057 -#define MASK_VAND_VI 0xfc00707f -#define MATCH_VAND_VV 0x24000057 -#define MASK_VAND_VV 0xfc00707f -#define MATCH_VAND_VX 0x24004057 -#define MASK_VAND_VX 0xfc00707f -#define MATCH_VANDN_VV 0x4000057 -#define MASK_VANDN_VV 0xfc00707f -#define MATCH_VANDN_VX 0x4004057 -#define MASK_VANDN_VX 0xfc00707f -#define MATCH_VASUB_VV 0x2c002057 -#define MASK_VASUB_VV 0xfc00707f -#define MATCH_VASUB_VX 0x2c006057 -#define MASK_VASUB_VX 0xfc00707f -#define MATCH_VASUBU_VV 0x28002057 -#define MASK_VASUBU_VV 0xfc00707f -#define MATCH_VASUBU_VX 0x28006057 -#define MASK_VASUBU_VX 0xfc00707f -#define MATCH_VBREV8_V 0x48042057 -#define MASK_VBREV8_V 0xfc0ff07f -#define MATCH_VBREV_V 0x48052057 -#define MASK_VBREV_V 0xfc0ff07f -#define MATCH_VCLMUL_VV 0x30002057 -#define MASK_VCLMUL_VV 0xfc00707f -#define MATCH_VCLMUL_VX 0x30006057 -#define MASK_VCLMUL_VX 0xfc00707f -#define MATCH_VCLMULH_VV 0x34002057 -#define MASK_VCLMULH_VV 0xfc00707f -#define MATCH_VCLMULH_VX 0x34006057 -#define MASK_VCLMULH_VX 0xfc00707f -#define MATCH_VCLZ_V 0x48062057 -#define MASK_VCLZ_V 0xfc0ff07f -#define MATCH_VCOMPRESS_VM 0x5e002057 -#define MASK_VCOMPRESS_VM 0xfe00707f -#define MATCH_VCPOP_M 0x40082057 -#define MASK_VCPOP_M 0xfc0ff07f -#define MATCH_VCPOP_V 0x48072057 -#define MASK_VCPOP_V 0xfc0ff07f -#define MATCH_VCTZ_V 0x4806a057 -#define MASK_VCTZ_V 0xfc0ff07f -#define MATCH_VDIV_VV 0x84002057 -#define MASK_VDIV_VV 0xfc00707f -#define MATCH_VDIV_VX 0x84006057 -#define MASK_VDIV_VX 0xfc00707f -#define MATCH_VDIVU_VV 0x80002057 -#define MASK_VDIVU_VV 0xfc00707f -#define MATCH_VDIVU_VX 0x80006057 -#define MASK_VDIVU_VX 0xfc00707f -#define MATCH_VFADD_VF 0x5057 -#define MASK_VFADD_VF 0xfc00707f -#define MATCH_VFADD_VV 0x1057 -#define MASK_VFADD_VV 0xfc00707f -#define MATCH_VFCLASS_V 0x4c081057 -#define MASK_VFCLASS_V 0xfc0ff07f -#define MATCH_VFCVT_F_X_V 0x48019057 -#define MASK_VFCVT_F_X_V 0xfc0ff07f -#define MATCH_VFCVT_F_XU_V 0x48011057 -#define MASK_VFCVT_F_XU_V 0xfc0ff07f -#define MATCH_VFCVT_RTZ_X_F_V 0x48039057 -#define MASK_VFCVT_RTZ_X_F_V 0xfc0ff07f -#define MATCH_VFCVT_RTZ_XU_F_V 0x48031057 -#define MASK_VFCVT_RTZ_XU_F_V 0xfc0ff07f -#define MATCH_VFCVT_X_F_V 0x48009057 -#define MASK_VFCVT_X_F_V 0xfc0ff07f -#define MATCH_VFCVT_XU_F_V 0x48001057 -#define MASK_VFCVT_XU_F_V 0xfc0ff07f -#define MATCH_VFDIV_VF 0x80005057 -#define MASK_VFDIV_VF 0xfc00707f -#define MATCH_VFDIV_VV 0x80001057 -#define MASK_VFDIV_VV 0xfc00707f -#define MATCH_VFIRST_M 0x4008a057 -#define MASK_VFIRST_M 0xfc0ff07f -#define MATCH_VFMACC_VF 0xb0005057 -#define MASK_VFMACC_VF 0xfc00707f -#define MATCH_VFMACC_VV 0xb0001057 -#define MASK_VFMACC_VV 0xfc00707f -#define MATCH_VFMADD_VF 0xa0005057 -#define MASK_VFMADD_VF 0xfc00707f -#define MATCH_VFMADD_VV 0xa0001057 -#define MASK_VFMADD_VV 0xfc00707f -#define MATCH_VFMAX_VF 0x18005057 -#define MASK_VFMAX_VF 0xfc00707f -#define MATCH_VFMAX_VV 0x18001057 -#define MASK_VFMAX_VV 0xfc00707f -#define MATCH_VFMERGE_VFM 0x5c005057 -#define MASK_VFMERGE_VFM 0xfe00707f -#define MATCH_VFMIN_VF 0x10005057 -#define MASK_VFMIN_VF 0xfc00707f -#define MATCH_VFMIN_VV 0x10001057 -#define MASK_VFMIN_VV 0xfc00707f -#define MATCH_VFMSAC_VF 0xb8005057 -#define MASK_VFMSAC_VF 0xfc00707f -#define MATCH_VFMSAC_VV 0xb8001057 -#define MASK_VFMSAC_VV 0xfc00707f -#define MATCH_VFMSUB_VF 0xa8005057 -#define MASK_VFMSUB_VF 0xfc00707f -#define MATCH_VFMSUB_VV 0xa8001057 -#define MASK_VFMSUB_VV 0xfc00707f -#define MATCH_VFMUL_VF 0x90005057 -#define MASK_VFMUL_VF 0xfc00707f -#define MATCH_VFMUL_VV 0x90001057 -#define MASK_VFMUL_VV 0xfc00707f -#define MATCH_VFMV_F_S 0x42001057 -#define MASK_VFMV_F_S 0xfe0ff07f -#define MATCH_VFMV_S_F 0x42005057 -#define MASK_VFMV_S_F 0xfff0707f -#define MATCH_VFMV_V_F 0x5e005057 -#define MASK_VFMV_V_F 0xfff0707f -#define MATCH_VFNCVT_F_F_W 0x480a1057 -#define MASK_VFNCVT_F_F_W 0xfc0ff07f -#define MATCH_VFNCVT_F_X_W 0x48099057 -#define MASK_VFNCVT_F_X_W 0xfc0ff07f -#define MATCH_VFNCVT_F_XU_W 0x48091057 -#define MASK_VFNCVT_F_XU_W 0xfc0ff07f -#define MATCH_VFNCVT_ROD_F_F_W 0x480a9057 -#define MASK_VFNCVT_ROD_F_F_W 0xfc0ff07f -#define MATCH_VFNCVT_RTZ_X_F_W 0x480b9057 -#define MASK_VFNCVT_RTZ_X_F_W 0xfc0ff07f -#define MATCH_VFNCVT_RTZ_XU_F_W 0x480b1057 -#define MASK_VFNCVT_RTZ_XU_F_W 0xfc0ff07f -#define MATCH_VFNCVT_X_F_W 0x48089057 -#define MASK_VFNCVT_X_F_W 0xfc0ff07f -#define MATCH_VFNCVT_XU_F_W 0x48081057 -#define MASK_VFNCVT_XU_F_W 0xfc0ff07f -#define MATCH_VFNCVTBF16_F_F_W 0x480e9057 -#define MASK_VFNCVTBF16_F_F_W 0xfc0ff07f -#define MATCH_VFNMACC_VF 0xb4005057 -#define MASK_VFNMACC_VF 0xfc00707f -#define MATCH_VFNMACC_VV 0xb4001057 -#define MASK_VFNMACC_VV 0xfc00707f -#define MATCH_VFNMADD_VF 0xa4005057 -#define MASK_VFNMADD_VF 0xfc00707f -#define MATCH_VFNMADD_VV 0xa4001057 -#define MASK_VFNMADD_VV 0xfc00707f -#define MATCH_VFNMSAC_VF 0xbc005057 -#define MASK_VFNMSAC_VF 0xfc00707f -#define MATCH_VFNMSAC_VV 0xbc001057 -#define MASK_VFNMSAC_VV 0xfc00707f -#define MATCH_VFNMSUB_VF 0xac005057 -#define MASK_VFNMSUB_VF 0xfc00707f -#define MATCH_VFNMSUB_VV 0xac001057 -#define MASK_VFNMSUB_VV 0xfc00707f -#define MATCH_VFRDIV_VF 0x84005057 -#define MASK_VFRDIV_VF 0xfc00707f -#define MATCH_VFREC7_V 0x4c029057 -#define MASK_VFREC7_V 0xfc0ff07f -#define MATCH_VFREDMAX_VS 0x1c001057 -#define MASK_VFREDMAX_VS 0xfc00707f -#define MATCH_VFREDMIN_VS 0x14001057 -#define MASK_VFREDMIN_VS 0xfc00707f -#define MATCH_VFREDOSUM_VS 0xc001057 -#define MASK_VFREDOSUM_VS 0xfc00707f -#define MATCH_VFREDUSUM_VS 0x4001057 -#define MASK_VFREDUSUM_VS 0xfc00707f -#define MATCH_VFRSQRT7_V 0x4c021057 -#define MASK_VFRSQRT7_V 0xfc0ff07f -#define MATCH_VFRSUB_VF 0x9c005057 -#define MASK_VFRSUB_VF 0xfc00707f -#define MATCH_VFSGNJ_VF 0x20005057 -#define MASK_VFSGNJ_VF 0xfc00707f -#define MATCH_VFSGNJ_VV 0x20001057 -#define MASK_VFSGNJ_VV 0xfc00707f -#define MATCH_VFSGNJN_VF 0x24005057 -#define MASK_VFSGNJN_VF 0xfc00707f -#define MATCH_VFSGNJN_VV 0x24001057 -#define MASK_VFSGNJN_VV 0xfc00707f -#define MATCH_VFSGNJX_VF 0x28005057 -#define MASK_VFSGNJX_VF 0xfc00707f -#define MATCH_VFSGNJX_VV 0x28001057 -#define MASK_VFSGNJX_VV 0xfc00707f -#define MATCH_VFSLIDE1DOWN_VF 0x3c005057 -#define MASK_VFSLIDE1DOWN_VF 0xfc00707f -#define MATCH_VFSLIDE1UP_VF 0x38005057 -#define MASK_VFSLIDE1UP_VF 0xfc00707f -#define MATCH_VFSQRT_V 0x4c001057 -#define MASK_VFSQRT_V 0xfc0ff07f -#define MATCH_VFSUB_VF 0x8005057 -#define MASK_VFSUB_VF 0xfc00707f -#define MATCH_VFSUB_VV 0x8001057 -#define MASK_VFSUB_VV 0xfc00707f -#define MATCH_VFWADD_VF 0xc0005057 -#define MASK_VFWADD_VF 0xfc00707f -#define MATCH_VFWADD_VV 0xc0001057 -#define MASK_VFWADD_VV 0xfc00707f -#define MATCH_VFWADD_WF 0xd0005057 -#define MASK_VFWADD_WF 0xfc00707f -#define MATCH_VFWADD_WV 0xd0001057 -#define MASK_VFWADD_WV 0xfc00707f -#define MATCH_VFWCVT_F_F_V 0x48061057 -#define MASK_VFWCVT_F_F_V 0xfc0ff07f -#define MATCH_VFWCVT_F_X_V 0x48059057 -#define MASK_VFWCVT_F_X_V 0xfc0ff07f -#define MATCH_VFWCVT_F_XU_V 0x48051057 -#define MASK_VFWCVT_F_XU_V 0xfc0ff07f -#define MATCH_VFWCVT_RTZ_X_F_V 0x48079057 -#define MASK_VFWCVT_RTZ_X_F_V 0xfc0ff07f -#define MATCH_VFWCVT_RTZ_XU_F_V 0x48071057 -#define MASK_VFWCVT_RTZ_XU_F_V 0xfc0ff07f -#define MATCH_VFWCVT_X_F_V 0x48049057 -#define MASK_VFWCVT_X_F_V 0xfc0ff07f -#define MATCH_VFWCVT_XU_F_V 0x48041057 -#define MASK_VFWCVT_XU_F_V 0xfc0ff07f -#define MATCH_VFWCVTBF16_F_F_V 0x48069057 -#define MASK_VFWCVTBF16_F_F_V 0xfc0ff07f -#define MATCH_VFWMACC_VF 0xf0005057 -#define MASK_VFWMACC_VF 0xfc00707f -#define MATCH_VFWMACC_VV 0xf0001057 -#define MASK_VFWMACC_VV 0xfc00707f -#define MATCH_VFWMACCBF16_VF 0xec005057 -#define MASK_VFWMACCBF16_VF 0xfc00707f -#define MATCH_VFWMACCBF16_VV 0xec001057 -#define MASK_VFWMACCBF16_VV 0xfc00707f -#define MATCH_VFWMSAC_VF 0xf8005057 -#define MASK_VFWMSAC_VF 0xfc00707f -#define MATCH_VFWMSAC_VV 0xf8001057 -#define MASK_VFWMSAC_VV 0xfc00707f -#define MATCH_VFWMUL_VF 0xe0005057 -#define MASK_VFWMUL_VF 0xfc00707f -#define MATCH_VFWMUL_VV 0xe0001057 -#define MASK_VFWMUL_VV 0xfc00707f -#define MATCH_VFWNMACC_VF 0xf4005057 -#define MASK_VFWNMACC_VF 0xfc00707f -#define MATCH_VFWNMACC_VV 0xf4001057 -#define MASK_VFWNMACC_VV 0xfc00707f -#define MATCH_VFWNMSAC_VF 0xfc005057 -#define MASK_VFWNMSAC_VF 0xfc00707f -#define MATCH_VFWNMSAC_VV 0xfc001057 -#define MASK_VFWNMSAC_VV 0xfc00707f -#define MATCH_VFWREDOSUM_VS 0xcc001057 -#define MASK_VFWREDOSUM_VS 0xfc00707f -#define MATCH_VFWREDUSUM_VS 0xc4001057 -#define MASK_VFWREDUSUM_VS 0xfc00707f -#define MATCH_VFWSUB_VF 0xc8005057 -#define MASK_VFWSUB_VF 0xfc00707f -#define MATCH_VFWSUB_VV 0xc8001057 -#define MASK_VFWSUB_VV 0xfc00707f -#define MATCH_VFWSUB_WF 0xd8005057 -#define MASK_VFWSUB_WF 0xfc00707f -#define MATCH_VFWSUB_WV 0xd8001057 -#define MASK_VFWSUB_WV 0xfc00707f -#define MATCH_VGHSH_VV 0xb2002077 -#define MASK_VGHSH_VV 0xfe00707f -#define MATCH_VGMUL_VV 0xa208a077 -#define MASK_VGMUL_VV 0xfe0ff07f -#define MATCH_VID_V 0x5008a057 -#define MASK_VID_V 0xfdfff07f -#define MATCH_VIOTA_M 0x50082057 -#define MASK_VIOTA_M 0xfc0ff07f -#define MATCH_VL1RE16_V 0x2805007 -#define MASK_VL1RE16_V 0xfff0707f -#define MATCH_VL1RE32_V 0x2806007 -#define MASK_VL1RE32_V 0xfff0707f -#define MATCH_VL1RE64_V 0x2807007 -#define MASK_VL1RE64_V 0xfff0707f -#define MATCH_VL1RE8_V 0x2800007 -#define MASK_VL1RE8_V 0xfff0707f -#define MATCH_VL2RE16_V 0x22805007 -#define MASK_VL2RE16_V 0xfff0707f -#define MATCH_VL2RE32_V 0x22806007 -#define MASK_VL2RE32_V 0xfff0707f -#define MATCH_VL2RE64_V 0x22807007 -#define MASK_VL2RE64_V 0xfff0707f -#define MATCH_VL2RE8_V 0x22800007 -#define MASK_VL2RE8_V 0xfff0707f -#define MATCH_VL4RE16_V 0x62805007 -#define MASK_VL4RE16_V 0xfff0707f -#define MATCH_VL4RE32_V 0x62806007 -#define MASK_VL4RE32_V 0xfff0707f -#define MATCH_VL4RE64_V 0x62807007 -#define MASK_VL4RE64_V 0xfff0707f -#define MATCH_VL4RE8_V 0x62800007 -#define MASK_VL4RE8_V 0xfff0707f -#define MATCH_VL8RE16_V 0xe2805007 -#define MASK_VL8RE16_V 0xfff0707f -#define MATCH_VL8RE32_V 0xe2806007 -#define MASK_VL8RE32_V 0xfff0707f -#define MATCH_VL8RE64_V 0xe2807007 -#define MASK_VL8RE64_V 0xfff0707f -#define MATCH_VL8RE8_V 0xe2800007 -#define MASK_VL8RE8_V 0xfff0707f -#define MATCH_VLE16_V 0x5007 -#define MASK_VLE16_V 0xfdf0707f -#define MATCH_VLE16FF_V 0x1005007 -#define MASK_VLE16FF_V 0xfdf0707f -#define MATCH_VLE32_V 0x6007 -#define MASK_VLE32_V 0xfdf0707f -#define MATCH_VLE32FF_V 0x1006007 -#define MASK_VLE32FF_V 0xfdf0707f -#define MATCH_VLE64_V 0x7007 -#define MASK_VLE64_V 0xfdf0707f -#define MATCH_VLE64FF_V 0x1007007 -#define MASK_VLE64FF_V 0xfdf0707f -#define MATCH_VLE8_V 0x7 -#define MASK_VLE8_V 0xfdf0707f -#define MATCH_VLE8FF_V 0x1000007 -#define MASK_VLE8FF_V 0xfdf0707f -#define MATCH_VLM_V 0x2b00007 -#define MASK_VLM_V 0xfff0707f -#define MATCH_VLOXEI16_V 0xc005007 -#define MASK_VLOXEI16_V 0xfc00707f -#define MATCH_VLOXEI32_V 0xc006007 -#define MASK_VLOXEI32_V 0xfc00707f -#define MATCH_VLOXEI64_V 0xc007007 -#define MASK_VLOXEI64_V 0xfc00707f -#define MATCH_VLOXEI8_V 0xc000007 -#define MASK_VLOXEI8_V 0xfc00707f -#define MATCH_VLOXSEG2EI16_V 0x2c005007 -#define MASK_VLOXSEG2EI16_V 0xfc00707f -#define MATCH_VLOXSEG2EI32_V 0x2c006007 -#define MASK_VLOXSEG2EI32_V 0xfc00707f -#define MATCH_VLOXSEG2EI64_V 0x2c007007 -#define MASK_VLOXSEG2EI64_V 0xfc00707f -#define MATCH_VLOXSEG2EI8_V 0x2c000007 -#define MASK_VLOXSEG2EI8_V 0xfc00707f -#define MATCH_VLOXSEG3EI16_V 0x4c005007 -#define MASK_VLOXSEG3EI16_V 0xfc00707f -#define MATCH_VLOXSEG3EI32_V 0x4c006007 -#define MASK_VLOXSEG3EI32_V 0xfc00707f -#define MATCH_VLOXSEG3EI64_V 0x4c007007 -#define MASK_VLOXSEG3EI64_V 0xfc00707f -#define MATCH_VLOXSEG3EI8_V 0x4c000007 -#define MASK_VLOXSEG3EI8_V 0xfc00707f -#define MATCH_VLOXSEG4EI16_V 0x6c005007 -#define MASK_VLOXSEG4EI16_V 0xfc00707f -#define MATCH_VLOXSEG4EI32_V 0x6c006007 -#define MASK_VLOXSEG4EI32_V 0xfc00707f -#define MATCH_VLOXSEG4EI64_V 0x6c007007 -#define MASK_VLOXSEG4EI64_V 0xfc00707f -#define MATCH_VLOXSEG4EI8_V 0x6c000007 -#define MASK_VLOXSEG4EI8_V 0xfc00707f -#define MATCH_VLOXSEG5EI16_V 0x8c005007 -#define MASK_VLOXSEG5EI16_V 0xfc00707f -#define MATCH_VLOXSEG5EI32_V 0x8c006007 -#define MASK_VLOXSEG5EI32_V 0xfc00707f -#define MATCH_VLOXSEG5EI64_V 0x8c007007 -#define MASK_VLOXSEG5EI64_V 0xfc00707f -#define MATCH_VLOXSEG5EI8_V 0x8c000007 -#define MASK_VLOXSEG5EI8_V 0xfc00707f -#define MATCH_VLOXSEG6EI16_V 0xac005007 -#define MASK_VLOXSEG6EI16_V 0xfc00707f -#define MATCH_VLOXSEG6EI32_V 0xac006007 -#define MASK_VLOXSEG6EI32_V 0xfc00707f -#define MATCH_VLOXSEG6EI64_V 0xac007007 -#define MASK_VLOXSEG6EI64_V 0xfc00707f -#define MATCH_VLOXSEG6EI8_V 0xac000007 -#define MASK_VLOXSEG6EI8_V 0xfc00707f -#define MATCH_VLOXSEG7EI16_V 0xcc005007 -#define MASK_VLOXSEG7EI16_V 0xfc00707f -#define MATCH_VLOXSEG7EI32_V 0xcc006007 -#define MASK_VLOXSEG7EI32_V 0xfc00707f -#define MATCH_VLOXSEG7EI64_V 0xcc007007 -#define MASK_VLOXSEG7EI64_V 0xfc00707f -#define MATCH_VLOXSEG7EI8_V 0xcc000007 -#define MASK_VLOXSEG7EI8_V 0xfc00707f -#define MATCH_VLOXSEG8EI16_V 0xec005007 -#define MASK_VLOXSEG8EI16_V 0xfc00707f -#define MATCH_VLOXSEG8EI32_V 0xec006007 -#define MASK_VLOXSEG8EI32_V 0xfc00707f -#define MATCH_VLOXSEG8EI64_V 0xec007007 -#define MASK_VLOXSEG8EI64_V 0xfc00707f -#define MATCH_VLOXSEG8EI8_V 0xec000007 -#define MASK_VLOXSEG8EI8_V 0xfc00707f -#define MATCH_VLSE16_V 0x8005007 -#define MASK_VLSE16_V 0xfc00707f -#define MATCH_VLSE32_V 0x8006007 -#define MASK_VLSE32_V 0xfc00707f -#define MATCH_VLSE64_V 0x8007007 -#define MASK_VLSE64_V 0xfc00707f -#define MATCH_VLSE8_V 0x8000007 -#define MASK_VLSE8_V 0xfc00707f -#define MATCH_VLSEG2E16_V 0x20005007 -#define MASK_VLSEG2E16_V 0xfdf0707f -#define MATCH_VLSEG2E16FF_V 0x21005007 -#define MASK_VLSEG2E16FF_V 0xfdf0707f -#define MATCH_VLSEG2E32_V 0x20006007 -#define MASK_VLSEG2E32_V 0xfdf0707f -#define MATCH_VLSEG2E32FF_V 0x21006007 -#define MASK_VLSEG2E32FF_V 0xfdf0707f -#define MATCH_VLSEG2E64_V 0x20007007 -#define MASK_VLSEG2E64_V 0xfdf0707f -#define MATCH_VLSEG2E64FF_V 0x21007007 -#define MASK_VLSEG2E64FF_V 0xfdf0707f -#define MATCH_VLSEG2E8_V 0x20000007 -#define MASK_VLSEG2E8_V 0xfdf0707f -#define MATCH_VLSEG2E8FF_V 0x21000007 -#define MASK_VLSEG2E8FF_V 0xfdf0707f -#define MATCH_VLSEG3E16_V 0x40005007 -#define MASK_VLSEG3E16_V 0xfdf0707f -#define MATCH_VLSEG3E16FF_V 0x41005007 -#define MASK_VLSEG3E16FF_V 0xfdf0707f -#define MATCH_VLSEG3E32_V 0x40006007 -#define MASK_VLSEG3E32_V 0xfdf0707f -#define MATCH_VLSEG3E32FF_V 0x41006007 -#define MASK_VLSEG3E32FF_V 0xfdf0707f -#define MATCH_VLSEG3E64_V 0x40007007 -#define MASK_VLSEG3E64_V 0xfdf0707f -#define MATCH_VLSEG3E64FF_V 0x41007007 -#define MASK_VLSEG3E64FF_V 0xfdf0707f -#define MATCH_VLSEG3E8_V 0x40000007 -#define MASK_VLSEG3E8_V 0xfdf0707f -#define MATCH_VLSEG3E8FF_V 0x41000007 -#define MASK_VLSEG3E8FF_V 0xfdf0707f -#define MATCH_VLSEG4E16_V 0x60005007 -#define MASK_VLSEG4E16_V 0xfdf0707f -#define MATCH_VLSEG4E16FF_V 0x61005007 -#define MASK_VLSEG4E16FF_V 0xfdf0707f -#define MATCH_VLSEG4E32_V 0x60006007 -#define MASK_VLSEG4E32_V 0xfdf0707f -#define MATCH_VLSEG4E32FF_V 0x61006007 -#define MASK_VLSEG4E32FF_V 0xfdf0707f -#define MATCH_VLSEG4E64_V 0x60007007 -#define MASK_VLSEG4E64_V 0xfdf0707f -#define MATCH_VLSEG4E64FF_V 0x61007007 -#define MASK_VLSEG4E64FF_V 0xfdf0707f -#define MATCH_VLSEG4E8_V 0x60000007 -#define MASK_VLSEG4E8_V 0xfdf0707f -#define MATCH_VLSEG4E8FF_V 0x61000007 -#define MASK_VLSEG4E8FF_V 0xfdf0707f -#define MATCH_VLSEG5E16_V 0x80005007 -#define MASK_VLSEG5E16_V 0xfdf0707f -#define MATCH_VLSEG5E16FF_V 0x81005007 -#define MASK_VLSEG5E16FF_V 0xfdf0707f -#define MATCH_VLSEG5E32_V 0x80006007 -#define MASK_VLSEG5E32_V 0xfdf0707f -#define MATCH_VLSEG5E32FF_V 0x81006007 -#define MASK_VLSEG5E32FF_V 0xfdf0707f -#define MATCH_VLSEG5E64_V 0x80007007 -#define MASK_VLSEG5E64_V 0xfdf0707f -#define MATCH_VLSEG5E64FF_V 0x81007007 -#define MASK_VLSEG5E64FF_V 0xfdf0707f -#define MATCH_VLSEG5E8_V 0x80000007 -#define MASK_VLSEG5E8_V 0xfdf0707f -#define MATCH_VLSEG5E8FF_V 0x81000007 -#define MASK_VLSEG5E8FF_V 0xfdf0707f -#define MATCH_VLSEG6E16_V 0xa0005007 -#define MASK_VLSEG6E16_V 0xfdf0707f -#define MATCH_VLSEG6E16FF_V 0xa1005007 -#define MASK_VLSEG6E16FF_V 0xfdf0707f -#define MATCH_VLSEG6E32_V 0xa0006007 -#define MASK_VLSEG6E32_V 0xfdf0707f -#define MATCH_VLSEG6E32FF_V 0xa1006007 -#define MASK_VLSEG6E32FF_V 0xfdf0707f -#define MATCH_VLSEG6E64_V 0xa0007007 -#define MASK_VLSEG6E64_V 0xfdf0707f -#define MATCH_VLSEG6E64FF_V 0xa1007007 -#define MASK_VLSEG6E64FF_V 0xfdf0707f -#define MATCH_VLSEG6E8_V 0xa0000007 -#define MASK_VLSEG6E8_V 0xfdf0707f -#define MATCH_VLSEG6E8FF_V 0xa1000007 -#define MASK_VLSEG6E8FF_V 0xfdf0707f -#define MATCH_VLSEG7E16_V 0xc0005007 -#define MASK_VLSEG7E16_V 0xfdf0707f -#define MATCH_VLSEG7E16FF_V 0xc1005007 -#define MASK_VLSEG7E16FF_V 0xfdf0707f -#define MATCH_VLSEG7E32_V 0xc0006007 -#define MASK_VLSEG7E32_V 0xfdf0707f -#define MATCH_VLSEG7E32FF_V 0xc1006007 -#define MASK_VLSEG7E32FF_V 0xfdf0707f -#define MATCH_VLSEG7E64_V 0xc0007007 -#define MASK_VLSEG7E64_V 0xfdf0707f -#define MATCH_VLSEG7E64FF_V 0xc1007007 -#define MASK_VLSEG7E64FF_V 0xfdf0707f -#define MATCH_VLSEG7E8_V 0xc0000007 -#define MASK_VLSEG7E8_V 0xfdf0707f -#define MATCH_VLSEG7E8FF_V 0xc1000007 -#define MASK_VLSEG7E8FF_V 0xfdf0707f -#define MATCH_VLSEG8E16_V 0xe0005007 -#define MASK_VLSEG8E16_V 0xfdf0707f -#define MATCH_VLSEG8E16FF_V 0xe1005007 -#define MASK_VLSEG8E16FF_V 0xfdf0707f -#define MATCH_VLSEG8E32_V 0xe0006007 -#define MASK_VLSEG8E32_V 0xfdf0707f -#define MATCH_VLSEG8E32FF_V 0xe1006007 -#define MASK_VLSEG8E32FF_V 0xfdf0707f -#define MATCH_VLSEG8E64_V 0xe0007007 -#define MASK_VLSEG8E64_V 0xfdf0707f -#define MATCH_VLSEG8E64FF_V 0xe1007007 -#define MASK_VLSEG8E64FF_V 0xfdf0707f -#define MATCH_VLSEG8E8_V 0xe0000007 -#define MASK_VLSEG8E8_V 0xfdf0707f -#define MATCH_VLSEG8E8FF_V 0xe1000007 -#define MASK_VLSEG8E8FF_V 0xfdf0707f -#define MATCH_VLSSEG2E16_V 0x28005007 -#define MASK_VLSSEG2E16_V 0xfc00707f -#define MATCH_VLSSEG2E32_V 0x28006007 -#define MASK_VLSSEG2E32_V 0xfc00707f -#define MATCH_VLSSEG2E64_V 0x28007007 -#define MASK_VLSSEG2E64_V 0xfc00707f -#define MATCH_VLSSEG2E8_V 0x28000007 -#define MASK_VLSSEG2E8_V 0xfc00707f -#define MATCH_VLSSEG3E16_V 0x48005007 -#define MASK_VLSSEG3E16_V 0xfc00707f -#define MATCH_VLSSEG3E32_V 0x48006007 -#define MASK_VLSSEG3E32_V 0xfc00707f -#define MATCH_VLSSEG3E64_V 0x48007007 -#define MASK_VLSSEG3E64_V 0xfc00707f -#define MATCH_VLSSEG3E8_V 0x48000007 -#define MASK_VLSSEG3E8_V 0xfc00707f -#define MATCH_VLSSEG4E16_V 0x68005007 -#define MASK_VLSSEG4E16_V 0xfc00707f -#define MATCH_VLSSEG4E32_V 0x68006007 -#define MASK_VLSSEG4E32_V 0xfc00707f -#define MATCH_VLSSEG4E64_V 0x68007007 -#define MASK_VLSSEG4E64_V 0xfc00707f -#define MATCH_VLSSEG4E8_V 0x68000007 -#define MASK_VLSSEG4E8_V 0xfc00707f -#define MATCH_VLSSEG5E16_V 0x88005007 -#define MASK_VLSSEG5E16_V 0xfc00707f -#define MATCH_VLSSEG5E32_V 0x88006007 -#define MASK_VLSSEG5E32_V 0xfc00707f -#define MATCH_VLSSEG5E64_V 0x88007007 -#define MASK_VLSSEG5E64_V 0xfc00707f -#define MATCH_VLSSEG5E8_V 0x88000007 -#define MASK_VLSSEG5E8_V 0xfc00707f -#define MATCH_VLSSEG6E16_V 0xa8005007 -#define MASK_VLSSEG6E16_V 0xfc00707f -#define MATCH_VLSSEG6E32_V 0xa8006007 -#define MASK_VLSSEG6E32_V 0xfc00707f -#define MATCH_VLSSEG6E64_V 0xa8007007 -#define MASK_VLSSEG6E64_V 0xfc00707f -#define MATCH_VLSSEG6E8_V 0xa8000007 -#define MASK_VLSSEG6E8_V 0xfc00707f -#define MATCH_VLSSEG7E16_V 0xc8005007 -#define MASK_VLSSEG7E16_V 0xfc00707f -#define MATCH_VLSSEG7E32_V 0xc8006007 -#define MASK_VLSSEG7E32_V 0xfc00707f -#define MATCH_VLSSEG7E64_V 0xc8007007 -#define MASK_VLSSEG7E64_V 0xfc00707f -#define MATCH_VLSSEG7E8_V 0xc8000007 -#define MASK_VLSSEG7E8_V 0xfc00707f -#define MATCH_VLSSEG8E16_V 0xe8005007 -#define MASK_VLSSEG8E16_V 0xfc00707f -#define MATCH_VLSSEG8E32_V 0xe8006007 -#define MASK_VLSSEG8E32_V 0xfc00707f -#define MATCH_VLSSEG8E64_V 0xe8007007 -#define MASK_VLSSEG8E64_V 0xfc00707f -#define MATCH_VLSSEG8E8_V 0xe8000007 -#define MASK_VLSSEG8E8_V 0xfc00707f -#define MATCH_VLUXEI16_V 0x4005007 -#define MASK_VLUXEI16_V 0xfc00707f -#define MATCH_VLUXEI32_V 0x4006007 -#define MASK_VLUXEI32_V 0xfc00707f -#define MATCH_VLUXEI64_V 0x4007007 -#define MASK_VLUXEI64_V 0xfc00707f -#define MATCH_VLUXEI8_V 0x4000007 -#define MASK_VLUXEI8_V 0xfc00707f -#define MATCH_VLUXSEG2EI16_V 0x24005007 -#define MASK_VLUXSEG2EI16_V 0xfc00707f -#define MATCH_VLUXSEG2EI32_V 0x24006007 -#define MASK_VLUXSEG2EI32_V 0xfc00707f -#define MATCH_VLUXSEG2EI64_V 0x24007007 -#define MASK_VLUXSEG2EI64_V 0xfc00707f -#define MATCH_VLUXSEG2EI8_V 0x24000007 -#define MASK_VLUXSEG2EI8_V 0xfc00707f -#define MATCH_VLUXSEG3EI16_V 0x44005007 -#define MASK_VLUXSEG3EI16_V 0xfc00707f -#define MATCH_VLUXSEG3EI32_V 0x44006007 -#define MASK_VLUXSEG3EI32_V 0xfc00707f -#define MATCH_VLUXSEG3EI64_V 0x44007007 -#define MASK_VLUXSEG3EI64_V 0xfc00707f -#define MATCH_VLUXSEG3EI8_V 0x44000007 -#define MASK_VLUXSEG3EI8_V 0xfc00707f -#define MATCH_VLUXSEG4EI16_V 0x64005007 -#define MASK_VLUXSEG4EI16_V 0xfc00707f -#define MATCH_VLUXSEG4EI32_V 0x64006007 -#define MASK_VLUXSEG4EI32_V 0xfc00707f -#define MATCH_VLUXSEG4EI64_V 0x64007007 -#define MASK_VLUXSEG4EI64_V 0xfc00707f -#define MATCH_VLUXSEG4EI8_V 0x64000007 -#define MASK_VLUXSEG4EI8_V 0xfc00707f -#define MATCH_VLUXSEG5EI16_V 0x84005007 -#define MASK_VLUXSEG5EI16_V 0xfc00707f -#define MATCH_VLUXSEG5EI32_V 0x84006007 -#define MASK_VLUXSEG5EI32_V 0xfc00707f -#define MATCH_VLUXSEG5EI64_V 0x84007007 -#define MASK_VLUXSEG5EI64_V 0xfc00707f -#define MATCH_VLUXSEG5EI8_V 0x84000007 -#define MASK_VLUXSEG5EI8_V 0xfc00707f -#define MATCH_VLUXSEG6EI16_V 0xa4005007 -#define MASK_VLUXSEG6EI16_V 0xfc00707f -#define MATCH_VLUXSEG6EI32_V 0xa4006007 -#define MASK_VLUXSEG6EI32_V 0xfc00707f -#define MATCH_VLUXSEG6EI64_V 0xa4007007 -#define MASK_VLUXSEG6EI64_V 0xfc00707f -#define MATCH_VLUXSEG6EI8_V 0xa4000007 -#define MASK_VLUXSEG6EI8_V 0xfc00707f -#define MATCH_VLUXSEG7EI16_V 0xc4005007 -#define MASK_VLUXSEG7EI16_V 0xfc00707f -#define MATCH_VLUXSEG7EI32_V 0xc4006007 -#define MASK_VLUXSEG7EI32_V 0xfc00707f -#define MATCH_VLUXSEG7EI64_V 0xc4007007 -#define MASK_VLUXSEG7EI64_V 0xfc00707f -#define MATCH_VLUXSEG7EI8_V 0xc4000007 -#define MASK_VLUXSEG7EI8_V 0xfc00707f -#define MATCH_VLUXSEG8EI16_V 0xe4005007 -#define MASK_VLUXSEG8EI16_V 0xfc00707f -#define MATCH_VLUXSEG8EI32_V 0xe4006007 -#define MASK_VLUXSEG8EI32_V 0xfc00707f -#define MATCH_VLUXSEG8EI64_V 0xe4007007 -#define MASK_VLUXSEG8EI64_V 0xfc00707f -#define MATCH_VLUXSEG8EI8_V 0xe4000007 -#define MASK_VLUXSEG8EI8_V 0xfc00707f -#define MATCH_VMACC_VV 0xb4002057 -#define MASK_VMACC_VV 0xfc00707f -#define MATCH_VMACC_VX 0xb4006057 -#define MASK_VMACC_VX 0xfc00707f -#define MATCH_VMADC_VI 0x46003057 -#define MASK_VMADC_VI 0xfe00707f -#define MATCH_VMADC_VIM 0x44003057 -#define MASK_VMADC_VIM 0xfe00707f -#define MATCH_VMADC_VV 0x46000057 -#define MASK_VMADC_VV 0xfe00707f -#define MATCH_VMADC_VVM 0x44000057 -#define MASK_VMADC_VVM 0xfe00707f -#define MATCH_VMADC_VX 0x46004057 -#define MASK_VMADC_VX 0xfe00707f -#define MATCH_VMADC_VXM 0x44004057 -#define MASK_VMADC_VXM 0xfe00707f -#define MATCH_VMADD_VV 0xa4002057 -#define MASK_VMADD_VV 0xfc00707f -#define MATCH_VMADD_VX 0xa4006057 -#define MASK_VMADD_VX 0xfc00707f -#define MATCH_VMAND_MM 0x66002057 -#define MASK_VMAND_MM 0xfe00707f -#define MATCH_VMANDN_MM 0x62002057 -#define MASK_VMANDN_MM 0xfe00707f -#define MATCH_VMAX_VV 0x1c000057 -#define MASK_VMAX_VV 0xfc00707f -#define MATCH_VMAX_VX 0x1c004057 -#define MASK_VMAX_VX 0xfc00707f -#define MATCH_VMAXU_VV 0x18000057 -#define MASK_VMAXU_VV 0xfc00707f -#define MATCH_VMAXU_VX 0x18004057 -#define MASK_VMAXU_VX 0xfc00707f -#define MATCH_VMERGE_VIM 0x5c003057 -#define MASK_VMERGE_VIM 0xfe00707f -#define MATCH_VMERGE_VVM 0x5c000057 -#define MASK_VMERGE_VVM 0xfe00707f -#define MATCH_VMERGE_VXM 0x5c004057 -#define MASK_VMERGE_VXM 0xfe00707f -#define MATCH_VMFEQ_VF 0x60005057 -#define MASK_VMFEQ_VF 0xfc00707f -#define MATCH_VMFEQ_VV 0x60001057 -#define MASK_VMFEQ_VV 0xfc00707f -#define MATCH_VMFGE_VF 0x7c005057 -#define MASK_VMFGE_VF 0xfc00707f -#define MATCH_VMFGT_VF 0x74005057 -#define MASK_VMFGT_VF 0xfc00707f -#define MATCH_VMFLE_VF 0x64005057 -#define MASK_VMFLE_VF 0xfc00707f -#define MATCH_VMFLE_VV 0x64001057 -#define MASK_VMFLE_VV 0xfc00707f -#define MATCH_VMFLT_VF 0x6c005057 -#define MASK_VMFLT_VF 0xfc00707f -#define MATCH_VMFLT_VV 0x6c001057 -#define MASK_VMFLT_VV 0xfc00707f -#define MATCH_VMFNE_VF 0x70005057 -#define MASK_VMFNE_VF 0xfc00707f -#define MATCH_VMFNE_VV 0x70001057 -#define MASK_VMFNE_VV 0xfc00707f -#define MATCH_VMIN_VV 0x14000057 -#define MASK_VMIN_VV 0xfc00707f -#define MATCH_VMIN_VX 0x14004057 -#define MASK_VMIN_VX 0xfc00707f -#define MATCH_VMINU_VV 0x10000057 -#define MASK_VMINU_VV 0xfc00707f -#define MATCH_VMINU_VX 0x10004057 -#define MASK_VMINU_VX 0xfc00707f -#define MATCH_VMNAND_MM 0x76002057 -#define MASK_VMNAND_MM 0xfe00707f -#define MATCH_VMNOR_MM 0x7a002057 -#define MASK_VMNOR_MM 0xfe00707f -#define MATCH_VMOR_MM 0x6a002057 -#define MASK_VMOR_MM 0xfe00707f -#define MATCH_VMORN_MM 0x72002057 -#define MASK_VMORN_MM 0xfe00707f -#define MATCH_VMSBC_VV 0x4e000057 -#define MASK_VMSBC_VV 0xfe00707f -#define MATCH_VMSBC_VVM 0x4c000057 -#define MASK_VMSBC_VVM 0xfe00707f -#define MATCH_VMSBC_VX 0x4e004057 -#define MASK_VMSBC_VX 0xfe00707f -#define MATCH_VMSBC_VXM 0x4c004057 -#define MASK_VMSBC_VXM 0xfe00707f -#define MATCH_VMSBF_M 0x5000a057 -#define MASK_VMSBF_M 0xfc0ff07f -#define MATCH_VMSEQ_VI 0x60003057 -#define MASK_VMSEQ_VI 0xfc00707f -#define MATCH_VMSEQ_VV 0x60000057 -#define MASK_VMSEQ_VV 0xfc00707f -#define MATCH_VMSEQ_VX 0x60004057 -#define MASK_VMSEQ_VX 0xfc00707f -#define MATCH_VMSGT_VI 0x7c003057 -#define MASK_VMSGT_VI 0xfc00707f -#define MATCH_VMSGT_VX 0x7c004057 -#define MASK_VMSGT_VX 0xfc00707f -#define MATCH_VMSGTU_VI 0x78003057 -#define MASK_VMSGTU_VI 0xfc00707f -#define MATCH_VMSGTU_VX 0x78004057 -#define MASK_VMSGTU_VX 0xfc00707f -#define MATCH_VMSIF_M 0x5001a057 -#define MASK_VMSIF_M 0xfc0ff07f -#define MATCH_VMSLE_VI 0x74003057 -#define MASK_VMSLE_VI 0xfc00707f -#define MATCH_VMSLE_VV 0x74000057 -#define MASK_VMSLE_VV 0xfc00707f -#define MATCH_VMSLE_VX 0x74004057 -#define MASK_VMSLE_VX 0xfc00707f -#define MATCH_VMSLEU_VI 0x70003057 -#define MASK_VMSLEU_VI 0xfc00707f -#define MATCH_VMSLEU_VV 0x70000057 -#define MASK_VMSLEU_VV 0xfc00707f -#define MATCH_VMSLEU_VX 0x70004057 -#define MASK_VMSLEU_VX 0xfc00707f -#define MATCH_VMSLT_VV 0x6c000057 -#define MASK_VMSLT_VV 0xfc00707f -#define MATCH_VMSLT_VX 0x6c004057 -#define MASK_VMSLT_VX 0xfc00707f -#define MATCH_VMSLTU_VV 0x68000057 -#define MASK_VMSLTU_VV 0xfc00707f -#define MATCH_VMSLTU_VX 0x68004057 -#define MASK_VMSLTU_VX 0xfc00707f -#define MATCH_VMSNE_VI 0x64003057 -#define MASK_VMSNE_VI 0xfc00707f -#define MATCH_VMSNE_VV 0x64000057 -#define MASK_VMSNE_VV 0xfc00707f -#define MATCH_VMSNE_VX 0x64004057 -#define MASK_VMSNE_VX 0xfc00707f -#define MATCH_VMSOF_M 0x50012057 -#define MASK_VMSOF_M 0xfc0ff07f -#define MATCH_VMUL_VV 0x94002057 -#define MASK_VMUL_VV 0xfc00707f -#define MATCH_VMUL_VX 0x94006057 -#define MASK_VMUL_VX 0xfc00707f -#define MATCH_VMULH_VV 0x9c002057 -#define MASK_VMULH_VV 0xfc00707f -#define MATCH_VMULH_VX 0x9c006057 -#define MASK_VMULH_VX 0xfc00707f -#define MATCH_VMULHSU_VV 0x98002057 -#define MASK_VMULHSU_VV 0xfc00707f -#define MATCH_VMULHSU_VX 0x98006057 -#define MASK_VMULHSU_VX 0xfc00707f -#define MATCH_VMULHU_VV 0x90002057 -#define MASK_VMULHU_VV 0xfc00707f -#define MATCH_VMULHU_VX 0x90006057 -#define MASK_VMULHU_VX 0xfc00707f -#define MATCH_VMV1R_V 0x9e003057 -#define MASK_VMV1R_V 0xfe0ff07f -#define MATCH_VMV2R_V 0x9e00b057 -#define MASK_VMV2R_V 0xfe0ff07f -#define MATCH_VMV4R_V 0x9e01b057 -#define MASK_VMV4R_V 0xfe0ff07f -#define MATCH_VMV8R_V 0x9e03b057 -#define MASK_VMV8R_V 0xfe0ff07f -#define MATCH_VMV_S_X 0x42006057 -#define MASK_VMV_S_X 0xfff0707f -#define MATCH_VMV_V_I 0x5e003057 -#define MASK_VMV_V_I 0xfff0707f -#define MATCH_VMV_V_V 0x5e000057 -#define MASK_VMV_V_V 0xfff0707f -#define MATCH_VMV_V_X 0x5e004057 -#define MASK_VMV_V_X 0xfff0707f -#define MATCH_VMV_X_S 0x42002057 -#define MASK_VMV_X_S 0xfe0ff07f -#define MATCH_VMXNOR_MM 0x7e002057 -#define MASK_VMXNOR_MM 0xfe00707f -#define MATCH_VMXOR_MM 0x6e002057 -#define MASK_VMXOR_MM 0xfe00707f -#define MATCH_VNCLIP_WI 0xbc003057 -#define MASK_VNCLIP_WI 0xfc00707f -#define MATCH_VNCLIP_WV 0xbc000057 -#define MASK_VNCLIP_WV 0xfc00707f -#define MATCH_VNCLIP_WX 0xbc004057 -#define MASK_VNCLIP_WX 0xfc00707f -#define MATCH_VNCLIPU_WI 0xb8003057 -#define MASK_VNCLIPU_WI 0xfc00707f -#define MATCH_VNCLIPU_WV 0xb8000057 -#define MASK_VNCLIPU_WV 0xfc00707f -#define MATCH_VNCLIPU_WX 0xb8004057 -#define MASK_VNCLIPU_WX 0xfc00707f -#define MATCH_VNMSAC_VV 0xbc002057 -#define MASK_VNMSAC_VV 0xfc00707f -#define MATCH_VNMSAC_VX 0xbc006057 -#define MASK_VNMSAC_VX 0xfc00707f -#define MATCH_VNMSUB_VV 0xac002057 -#define MASK_VNMSUB_VV 0xfc00707f -#define MATCH_VNMSUB_VX 0xac006057 -#define MASK_VNMSUB_VX 0xfc00707f -#define MATCH_VNSRA_WI 0xb4003057 -#define MASK_VNSRA_WI 0xfc00707f -#define MATCH_VNSRA_WV 0xb4000057 -#define MASK_VNSRA_WV 0xfc00707f -#define MATCH_VNSRA_WX 0xb4004057 -#define MASK_VNSRA_WX 0xfc00707f -#define MATCH_VNSRL_WI 0xb0003057 -#define MASK_VNSRL_WI 0xfc00707f -#define MATCH_VNSRL_WV 0xb0000057 -#define MASK_VNSRL_WV 0xfc00707f -#define MATCH_VNSRL_WX 0xb0004057 -#define MASK_VNSRL_WX 0xfc00707f -#define MATCH_VOR_VI 0x28003057 -#define MASK_VOR_VI 0xfc00707f -#define MATCH_VOR_VV 0x28000057 -#define MASK_VOR_VV 0xfc00707f -#define MATCH_VOR_VX 0x28004057 -#define MASK_VOR_VX 0xfc00707f -#define MATCH_VREDAND_VS 0x4002057 -#define MASK_VREDAND_VS 0xfc00707f -#define MATCH_VREDMAX_VS 0x1c002057 -#define MASK_VREDMAX_VS 0xfc00707f -#define MATCH_VREDMAXU_VS 0x18002057 -#define MASK_VREDMAXU_VS 0xfc00707f -#define MATCH_VREDMIN_VS 0x14002057 -#define MASK_VREDMIN_VS 0xfc00707f -#define MATCH_VREDMINU_VS 0x10002057 -#define MASK_VREDMINU_VS 0xfc00707f -#define MATCH_VREDOR_VS 0x8002057 -#define MASK_VREDOR_VS 0xfc00707f -#define MATCH_VREDSUM_VS 0x2057 -#define MASK_VREDSUM_VS 0xfc00707f -#define MATCH_VREDXOR_VS 0xc002057 -#define MASK_VREDXOR_VS 0xfc00707f -#define MATCH_VREM_VV 0x8c002057 -#define MASK_VREM_VV 0xfc00707f -#define MATCH_VREM_VX 0x8c006057 -#define MASK_VREM_VX 0xfc00707f -#define MATCH_VREMU_VV 0x88002057 -#define MASK_VREMU_VV 0xfc00707f -#define MATCH_VREMU_VX 0x88006057 -#define MASK_VREMU_VX 0xfc00707f -#define MATCH_VREV8_V 0x4804a057 -#define MASK_VREV8_V 0xfc0ff07f -#define MATCH_VRGATHER_VI 0x30003057 -#define MASK_VRGATHER_VI 0xfc00707f -#define MATCH_VRGATHER_VV 0x30000057 -#define MASK_VRGATHER_VV 0xfc00707f -#define MATCH_VRGATHER_VX 0x30004057 -#define MASK_VRGATHER_VX 0xfc00707f -#define MATCH_VRGATHEREI16_VV 0x38000057 -#define MASK_VRGATHEREI16_VV 0xfc00707f -#define MATCH_VROL_VV 0x54000057 -#define MASK_VROL_VV 0xfc00707f -#define MATCH_VROL_VX 0x54004057 -#define MASK_VROL_VX 0xfc00707f -#define MATCH_VROR_VI 0x50003057 -#define MASK_VROR_VI 0xf800707f -#define MATCH_VROR_VV 0x50000057 -#define MASK_VROR_VV 0xfc00707f -#define MATCH_VROR_VX 0x50004057 -#define MASK_VROR_VX 0xfc00707f -#define MATCH_VRSUB_VI 0xc003057 -#define MASK_VRSUB_VI 0xfc00707f -#define MATCH_VRSUB_VX 0xc004057 -#define MASK_VRSUB_VX 0xfc00707f -#define MATCH_VS1R_V 0x2800027 -#define MASK_VS1R_V 0xfff0707f -#define MATCH_VS2R_V 0x22800027 -#define MASK_VS2R_V 0xfff0707f -#define MATCH_VS4R_V 0x62800027 -#define MASK_VS4R_V 0xfff0707f -#define MATCH_VS8R_V 0xe2800027 -#define MASK_VS8R_V 0xfff0707f -#define MATCH_VSADD_VI 0x84003057 -#define MASK_VSADD_VI 0xfc00707f -#define MATCH_VSADD_VV 0x84000057 -#define MASK_VSADD_VV 0xfc00707f -#define MATCH_VSADD_VX 0x84004057 -#define MASK_VSADD_VX 0xfc00707f -#define MATCH_VSADDU_VI 0x80003057 -#define MASK_VSADDU_VI 0xfc00707f -#define MATCH_VSADDU_VV 0x80000057 -#define MASK_VSADDU_VV 0xfc00707f -#define MATCH_VSADDU_VX 0x80004057 -#define MASK_VSADDU_VX 0xfc00707f -#define MATCH_VSBC_VVM 0x48000057 -#define MASK_VSBC_VVM 0xfe00707f -#define MATCH_VSBC_VXM 0x48004057 -#define MASK_VSBC_VXM 0xfe00707f -#define MATCH_VSE16_V 0x5027 -#define MASK_VSE16_V 0xfdf0707f -#define MATCH_VSE32_V 0x6027 -#define MASK_VSE32_V 0xfdf0707f -#define MATCH_VSE64_V 0x7027 -#define MASK_VSE64_V 0xfdf0707f -#define MATCH_VSE8_V 0x27 -#define MASK_VSE8_V 0xfdf0707f -#define MATCH_VSETIVLI 0xc0007057 -#define MASK_VSETIVLI 0xc000707f -#define MATCH_VSETVL 0x80007057 -#define MASK_VSETVL 0xfe00707f -#define MATCH_VSETVLI 0x7057 -#define MASK_VSETVLI 0x8000707f -#define MATCH_VSEXT_VF2 0x4803a057 -#define MASK_VSEXT_VF2 0xfc0ff07f -#define MATCH_VSEXT_VF4 0x4802a057 -#define MASK_VSEXT_VF4 0xfc0ff07f -#define MATCH_VSEXT_VF8 0x4801a057 -#define MASK_VSEXT_VF8 0xfc0ff07f -#define MATCH_VSHA2CH_VV 0xba002077 -#define MASK_VSHA2CH_VV 0xfe00707f -#define MATCH_VSHA2CL_VV 0xbe002077 -#define MASK_VSHA2CL_VV 0xfe00707f -#define MATCH_VSHA2MS_VV 0xb6002077 -#define MASK_VSHA2MS_VV 0xfe00707f -#define MATCH_VSLIDE1DOWN_VX 0x3c006057 -#define MASK_VSLIDE1DOWN_VX 0xfc00707f -#define MATCH_VSLIDE1UP_VX 0x38006057 -#define MASK_VSLIDE1UP_VX 0xfc00707f -#define MATCH_VSLIDEDOWN_VI 0x3c003057 -#define MASK_VSLIDEDOWN_VI 0xfc00707f -#define MATCH_VSLIDEDOWN_VX 0x3c004057 -#define MASK_VSLIDEDOWN_VX 0xfc00707f -#define MATCH_VSLIDEUP_VI 0x38003057 -#define MASK_VSLIDEUP_VI 0xfc00707f -#define MATCH_VSLIDEUP_VX 0x38004057 -#define MASK_VSLIDEUP_VX 0xfc00707f -#define MATCH_VSLL_VI 0x94003057 -#define MASK_VSLL_VI 0xfc00707f -#define MATCH_VSLL_VV 0x94000057 -#define MASK_VSLL_VV 0xfc00707f -#define MATCH_VSLL_VX 0x94004057 -#define MASK_VSLL_VX 0xfc00707f -#define MATCH_VSM3C_VI 0xae002077 -#define MASK_VSM3C_VI 0xfe00707f -#define MATCH_VSM3ME_VV 0x82002077 -#define MASK_VSM3ME_VV 0xfe00707f -#define MATCH_VSM4K_VI 0x86002077 -#define MASK_VSM4K_VI 0xfe00707f -#define MATCH_VSM4R_VS 0xa6082077 -#define MASK_VSM4R_VS 0xfe0ff07f -#define MATCH_VSM4R_VV 0xa2082077 -#define MASK_VSM4R_VV 0xfe0ff07f -#define MATCH_VSM_V 0x2b00027 -#define MASK_VSM_V 0xfff0707f -#define MATCH_VSMUL_VV 0x9c000057 -#define MASK_VSMUL_VV 0xfc00707f -#define MATCH_VSMUL_VX 0x9c004057 -#define MASK_VSMUL_VX 0xfc00707f -#define MATCH_VSOXEI16_V 0xc005027 -#define MASK_VSOXEI16_V 0xfc00707f -#define MATCH_VSOXEI32_V 0xc006027 -#define MASK_VSOXEI32_V 0xfc00707f -#define MATCH_VSOXEI64_V 0xc007027 -#define MASK_VSOXEI64_V 0xfc00707f -#define MATCH_VSOXEI8_V 0xc000027 -#define MASK_VSOXEI8_V 0xfc00707f -#define MATCH_VSOXSEG2EI16_V 0x2c005027 -#define MASK_VSOXSEG2EI16_V 0xfc00707f -#define MATCH_VSOXSEG2EI32_V 0x2c006027 -#define MASK_VSOXSEG2EI32_V 0xfc00707f -#define MATCH_VSOXSEG2EI64_V 0x2c007027 -#define MASK_VSOXSEG2EI64_V 0xfc00707f -#define MATCH_VSOXSEG2EI8_V 0x2c000027 -#define MASK_VSOXSEG2EI8_V 0xfc00707f -#define MATCH_VSOXSEG3EI16_V 0x4c005027 -#define MASK_VSOXSEG3EI16_V 0xfc00707f -#define MATCH_VSOXSEG3EI32_V 0x4c006027 -#define MASK_VSOXSEG3EI32_V 0xfc00707f -#define MATCH_VSOXSEG3EI64_V 0x4c007027 -#define MASK_VSOXSEG3EI64_V 0xfc00707f -#define MATCH_VSOXSEG3EI8_V 0x4c000027 -#define MASK_VSOXSEG3EI8_V 0xfc00707f -#define MATCH_VSOXSEG4EI16_V 0x6c005027 -#define MASK_VSOXSEG4EI16_V 0xfc00707f -#define MATCH_VSOXSEG4EI32_V 0x6c006027 -#define MASK_VSOXSEG4EI32_V 0xfc00707f -#define MATCH_VSOXSEG4EI64_V 0x6c007027 -#define MASK_VSOXSEG4EI64_V 0xfc00707f -#define MATCH_VSOXSEG4EI8_V 0x6c000027 -#define MASK_VSOXSEG4EI8_V 0xfc00707f -#define MATCH_VSOXSEG5EI16_V 0x8c005027 -#define MASK_VSOXSEG5EI16_V 0xfc00707f -#define MATCH_VSOXSEG5EI32_V 0x8c006027 -#define MASK_VSOXSEG5EI32_V 0xfc00707f -#define MATCH_VSOXSEG5EI64_V 0x8c007027 -#define MASK_VSOXSEG5EI64_V 0xfc00707f -#define MATCH_VSOXSEG5EI8_V 0x8c000027 -#define MASK_VSOXSEG5EI8_V 0xfc00707f -#define MATCH_VSOXSEG6EI16_V 0xac005027 -#define MASK_VSOXSEG6EI16_V 0xfc00707f -#define MATCH_VSOXSEG6EI32_V 0xac006027 -#define MASK_VSOXSEG6EI32_V 0xfc00707f -#define MATCH_VSOXSEG6EI64_V 0xac007027 -#define MASK_VSOXSEG6EI64_V 0xfc00707f -#define MATCH_VSOXSEG6EI8_V 0xac000027 -#define MASK_VSOXSEG6EI8_V 0xfc00707f -#define MATCH_VSOXSEG7EI16_V 0xcc005027 -#define MASK_VSOXSEG7EI16_V 0xfc00707f -#define MATCH_VSOXSEG7EI32_V 0xcc006027 -#define MASK_VSOXSEG7EI32_V 0xfc00707f -#define MATCH_VSOXSEG7EI64_V 0xcc007027 -#define MASK_VSOXSEG7EI64_V 0xfc00707f -#define MATCH_VSOXSEG7EI8_V 0xcc000027 -#define MASK_VSOXSEG7EI8_V 0xfc00707f -#define MATCH_VSOXSEG8EI16_V 0xec005027 -#define MASK_VSOXSEG8EI16_V 0xfc00707f -#define MATCH_VSOXSEG8EI32_V 0xec006027 -#define MASK_VSOXSEG8EI32_V 0xfc00707f -#define MATCH_VSOXSEG8EI64_V 0xec007027 -#define MASK_VSOXSEG8EI64_V 0xfc00707f -#define MATCH_VSOXSEG8EI8_V 0xec000027 -#define MASK_VSOXSEG8EI8_V 0xfc00707f -#define MATCH_VSRA_VI 0xa4003057 -#define MASK_VSRA_VI 0xfc00707f -#define MATCH_VSRA_VV 0xa4000057 -#define MASK_VSRA_VV 0xfc00707f -#define MATCH_VSRA_VX 0xa4004057 -#define MASK_VSRA_VX 0xfc00707f -#define MATCH_VSRL_VI 0xa0003057 -#define MASK_VSRL_VI 0xfc00707f -#define MATCH_VSRL_VV 0xa0000057 -#define MASK_VSRL_VV 0xfc00707f -#define MATCH_VSRL_VX 0xa0004057 -#define MASK_VSRL_VX 0xfc00707f -#define MATCH_VSSE16_V 0x8005027 -#define MASK_VSSE16_V 0xfc00707f -#define MATCH_VSSE32_V 0x8006027 -#define MASK_VSSE32_V 0xfc00707f -#define MATCH_VSSE64_V 0x8007027 -#define MASK_VSSE64_V 0xfc00707f -#define MATCH_VSSE8_V 0x8000027 -#define MASK_VSSE8_V 0xfc00707f -#define MATCH_VSSEG2E16_V 0x20005027 -#define MASK_VSSEG2E16_V 0xfdf0707f -#define MATCH_VSSEG2E32_V 0x20006027 -#define MASK_VSSEG2E32_V 0xfdf0707f -#define MATCH_VSSEG2E64_V 0x20007027 -#define MASK_VSSEG2E64_V 0xfdf0707f -#define MATCH_VSSEG2E8_V 0x20000027 -#define MASK_VSSEG2E8_V 0xfdf0707f -#define MATCH_VSSEG3E16_V 0x40005027 -#define MASK_VSSEG3E16_V 0xfdf0707f -#define MATCH_VSSEG3E32_V 0x40006027 -#define MASK_VSSEG3E32_V 0xfdf0707f -#define MATCH_VSSEG3E64_V 0x40007027 -#define MASK_VSSEG3E64_V 0xfdf0707f -#define MATCH_VSSEG3E8_V 0x40000027 -#define MASK_VSSEG3E8_V 0xfdf0707f -#define MATCH_VSSEG4E16_V 0x60005027 -#define MASK_VSSEG4E16_V 0xfdf0707f -#define MATCH_VSSEG4E32_V 0x60006027 -#define MASK_VSSEG4E32_V 0xfdf0707f -#define MATCH_VSSEG4E64_V 0x60007027 -#define MASK_VSSEG4E64_V 0xfdf0707f -#define MATCH_VSSEG4E8_V 0x60000027 -#define MASK_VSSEG4E8_V 0xfdf0707f -#define MATCH_VSSEG5E16_V 0x80005027 -#define MASK_VSSEG5E16_V 0xfdf0707f -#define MATCH_VSSEG5E32_V 0x80006027 -#define MASK_VSSEG5E32_V 0xfdf0707f -#define MATCH_VSSEG5E64_V 0x80007027 -#define MASK_VSSEG5E64_V 0xfdf0707f -#define MATCH_VSSEG5E8_V 0x80000027 -#define MASK_VSSEG5E8_V 0xfdf0707f -#define MATCH_VSSEG6E16_V 0xa0005027 -#define MASK_VSSEG6E16_V 0xfdf0707f -#define MATCH_VSSEG6E32_V 0xa0006027 -#define MASK_VSSEG6E32_V 0xfdf0707f -#define MATCH_VSSEG6E64_V 0xa0007027 -#define MASK_VSSEG6E64_V 0xfdf0707f -#define MATCH_VSSEG6E8_V 0xa0000027 -#define MASK_VSSEG6E8_V 0xfdf0707f -#define MATCH_VSSEG7E16_V 0xc0005027 -#define MASK_VSSEG7E16_V 0xfdf0707f -#define MATCH_VSSEG7E32_V 0xc0006027 -#define MASK_VSSEG7E32_V 0xfdf0707f -#define MATCH_VSSEG7E64_V 0xc0007027 -#define MASK_VSSEG7E64_V 0xfdf0707f -#define MATCH_VSSEG7E8_V 0xc0000027 -#define MASK_VSSEG7E8_V 0xfdf0707f -#define MATCH_VSSEG8E16_V 0xe0005027 -#define MASK_VSSEG8E16_V 0xfdf0707f -#define MATCH_VSSEG8E32_V 0xe0006027 -#define MASK_VSSEG8E32_V 0xfdf0707f -#define MATCH_VSSEG8E64_V 0xe0007027 -#define MASK_VSSEG8E64_V 0xfdf0707f -#define MATCH_VSSEG8E8_V 0xe0000027 -#define MASK_VSSEG8E8_V 0xfdf0707f -#define MATCH_VSSRA_VI 0xac003057 -#define MASK_VSSRA_VI 0xfc00707f -#define MATCH_VSSRA_VV 0xac000057 -#define MASK_VSSRA_VV 0xfc00707f -#define MATCH_VSSRA_VX 0xac004057 -#define MASK_VSSRA_VX 0xfc00707f -#define MATCH_VSSRL_VI 0xa8003057 -#define MASK_VSSRL_VI 0xfc00707f -#define MATCH_VSSRL_VV 0xa8000057 -#define MASK_VSSRL_VV 0xfc00707f -#define MATCH_VSSRL_VX 0xa8004057 -#define MASK_VSSRL_VX 0xfc00707f -#define MATCH_VSSSEG2E16_V 0x28005027 -#define MASK_VSSSEG2E16_V 0xfc00707f -#define MATCH_VSSSEG2E32_V 0x28006027 -#define MASK_VSSSEG2E32_V 0xfc00707f -#define MATCH_VSSSEG2E64_V 0x28007027 -#define MASK_VSSSEG2E64_V 0xfc00707f -#define MATCH_VSSSEG2E8_V 0x28000027 -#define MASK_VSSSEG2E8_V 0xfc00707f -#define MATCH_VSSSEG3E16_V 0x48005027 -#define MASK_VSSSEG3E16_V 0xfc00707f -#define MATCH_VSSSEG3E32_V 0x48006027 -#define MASK_VSSSEG3E32_V 0xfc00707f -#define MATCH_VSSSEG3E64_V 0x48007027 -#define MASK_VSSSEG3E64_V 0xfc00707f -#define MATCH_VSSSEG3E8_V 0x48000027 -#define MASK_VSSSEG3E8_V 0xfc00707f -#define MATCH_VSSSEG4E16_V 0x68005027 -#define MASK_VSSSEG4E16_V 0xfc00707f -#define MATCH_VSSSEG4E32_V 0x68006027 -#define MASK_VSSSEG4E32_V 0xfc00707f -#define MATCH_VSSSEG4E64_V 0x68007027 -#define MASK_VSSSEG4E64_V 0xfc00707f -#define MATCH_VSSSEG4E8_V 0x68000027 -#define MASK_VSSSEG4E8_V 0xfc00707f -#define MATCH_VSSSEG5E16_V 0x88005027 -#define MASK_VSSSEG5E16_V 0xfc00707f -#define MATCH_VSSSEG5E32_V 0x88006027 -#define MASK_VSSSEG5E32_V 0xfc00707f -#define MATCH_VSSSEG5E64_V 0x88007027 -#define MASK_VSSSEG5E64_V 0xfc00707f -#define MATCH_VSSSEG5E8_V 0x88000027 -#define MASK_VSSSEG5E8_V 0xfc00707f -#define MATCH_VSSSEG6E16_V 0xa8005027 -#define MASK_VSSSEG6E16_V 0xfc00707f -#define MATCH_VSSSEG6E32_V 0xa8006027 -#define MASK_VSSSEG6E32_V 0xfc00707f -#define MATCH_VSSSEG6E64_V 0xa8007027 -#define MASK_VSSSEG6E64_V 0xfc00707f -#define MATCH_VSSSEG6E8_V 0xa8000027 -#define MASK_VSSSEG6E8_V 0xfc00707f -#define MATCH_VSSSEG7E16_V 0xc8005027 -#define MASK_VSSSEG7E16_V 0xfc00707f -#define MATCH_VSSSEG7E32_V 0xc8006027 -#define MASK_VSSSEG7E32_V 0xfc00707f -#define MATCH_VSSSEG7E64_V 0xc8007027 -#define MASK_VSSSEG7E64_V 0xfc00707f -#define MATCH_VSSSEG7E8_V 0xc8000027 -#define MASK_VSSSEG7E8_V 0xfc00707f -#define MATCH_VSSSEG8E16_V 0xe8005027 -#define MASK_VSSSEG8E16_V 0xfc00707f -#define MATCH_VSSSEG8E32_V 0xe8006027 -#define MASK_VSSSEG8E32_V 0xfc00707f -#define MATCH_VSSSEG8E64_V 0xe8007027 -#define MASK_VSSSEG8E64_V 0xfc00707f -#define MATCH_VSSSEG8E8_V 0xe8000027 -#define MASK_VSSSEG8E8_V 0xfc00707f -#define MATCH_VSSUB_VV 0x8c000057 -#define MASK_VSSUB_VV 0xfc00707f -#define MATCH_VSSUB_VX 0x8c004057 -#define MASK_VSSUB_VX 0xfc00707f -#define MATCH_VSSUBU_VV 0x88000057 -#define MASK_VSSUBU_VV 0xfc00707f -#define MATCH_VSSUBU_VX 0x88004057 -#define MASK_VSSUBU_VX 0xfc00707f -#define MATCH_VSUB_VV 0x8000057 -#define MASK_VSUB_VV 0xfc00707f -#define MATCH_VSUB_VX 0x8004057 -#define MASK_VSUB_VX 0xfc00707f -#define MATCH_VSUXEI16_V 0x4005027 -#define MASK_VSUXEI16_V 0xfc00707f -#define MATCH_VSUXEI32_V 0x4006027 -#define MASK_VSUXEI32_V 0xfc00707f -#define MATCH_VSUXEI64_V 0x4007027 -#define MASK_VSUXEI64_V 0xfc00707f -#define MATCH_VSUXEI8_V 0x4000027 -#define MASK_VSUXEI8_V 0xfc00707f -#define MATCH_VSUXSEG2EI16_V 0x24005027 -#define MASK_VSUXSEG2EI16_V 0xfc00707f -#define MATCH_VSUXSEG2EI32_V 0x24006027 -#define MASK_VSUXSEG2EI32_V 0xfc00707f -#define MATCH_VSUXSEG2EI64_V 0x24007027 -#define MASK_VSUXSEG2EI64_V 0xfc00707f -#define MATCH_VSUXSEG2EI8_V 0x24000027 -#define MASK_VSUXSEG2EI8_V 0xfc00707f -#define MATCH_VSUXSEG3EI16_V 0x44005027 -#define MASK_VSUXSEG3EI16_V 0xfc00707f -#define MATCH_VSUXSEG3EI32_V 0x44006027 -#define MASK_VSUXSEG3EI32_V 0xfc00707f -#define MATCH_VSUXSEG3EI64_V 0x44007027 -#define MASK_VSUXSEG3EI64_V 0xfc00707f -#define MATCH_VSUXSEG3EI8_V 0x44000027 -#define MASK_VSUXSEG3EI8_V 0xfc00707f -#define MATCH_VSUXSEG4EI16_V 0x64005027 -#define MASK_VSUXSEG4EI16_V 0xfc00707f -#define MATCH_VSUXSEG4EI32_V 0x64006027 -#define MASK_VSUXSEG4EI32_V 0xfc00707f -#define MATCH_VSUXSEG4EI64_V 0x64007027 -#define MASK_VSUXSEG4EI64_V 0xfc00707f -#define MATCH_VSUXSEG4EI8_V 0x64000027 -#define MASK_VSUXSEG4EI8_V 0xfc00707f -#define MATCH_VSUXSEG5EI16_V 0x84005027 -#define MASK_VSUXSEG5EI16_V 0xfc00707f -#define MATCH_VSUXSEG5EI32_V 0x84006027 -#define MASK_VSUXSEG5EI32_V 0xfc00707f -#define MATCH_VSUXSEG5EI64_V 0x84007027 -#define MASK_VSUXSEG5EI64_V 0xfc00707f -#define MATCH_VSUXSEG5EI8_V 0x84000027 -#define MASK_VSUXSEG5EI8_V 0xfc00707f -#define MATCH_VSUXSEG6EI16_V 0xa4005027 -#define MASK_VSUXSEG6EI16_V 0xfc00707f -#define MATCH_VSUXSEG6EI32_V 0xa4006027 -#define MASK_VSUXSEG6EI32_V 0xfc00707f -#define MATCH_VSUXSEG6EI64_V 0xa4007027 -#define MASK_VSUXSEG6EI64_V 0xfc00707f -#define MATCH_VSUXSEG6EI8_V 0xa4000027 -#define MASK_VSUXSEG6EI8_V 0xfc00707f -#define MATCH_VSUXSEG7EI16_V 0xc4005027 -#define MASK_VSUXSEG7EI16_V 0xfc00707f -#define MATCH_VSUXSEG7EI32_V 0xc4006027 -#define MASK_VSUXSEG7EI32_V 0xfc00707f -#define MATCH_VSUXSEG7EI64_V 0xc4007027 -#define MASK_VSUXSEG7EI64_V 0xfc00707f -#define MATCH_VSUXSEG7EI8_V 0xc4000027 -#define MASK_VSUXSEG7EI8_V 0xfc00707f -#define MATCH_VSUXSEG8EI16_V 0xe4005027 -#define MASK_VSUXSEG8EI16_V 0xfc00707f -#define MATCH_VSUXSEG8EI32_V 0xe4006027 -#define MASK_VSUXSEG8EI32_V 0xfc00707f -#define MATCH_VSUXSEG8EI64_V 0xe4007027 -#define MASK_VSUXSEG8EI64_V 0xfc00707f -#define MATCH_VSUXSEG8EI8_V 0xe4000027 -#define MASK_VSUXSEG8EI8_V 0xfc00707f -#define MATCH_VWADD_VV 0xc4002057 -#define MASK_VWADD_VV 0xfc00707f -#define MATCH_VWADD_VX 0xc4006057 -#define MASK_VWADD_VX 0xfc00707f -#define MATCH_VWADD_WV 0xd4002057 -#define MASK_VWADD_WV 0xfc00707f -#define MATCH_VWADD_WX 0xd4006057 -#define MASK_VWADD_WX 0xfc00707f -#define MATCH_VWADDU_VV 0xc0002057 -#define MASK_VWADDU_VV 0xfc00707f -#define MATCH_VWADDU_VX 0xc0006057 -#define MASK_VWADDU_VX 0xfc00707f -#define MATCH_VWADDU_WV 0xd0002057 -#define MASK_VWADDU_WV 0xfc00707f -#define MATCH_VWADDU_WX 0xd0006057 -#define MASK_VWADDU_WX 0xfc00707f -#define MATCH_VWMACC_VV 0xf4002057 -#define MASK_VWMACC_VV 0xfc00707f -#define MATCH_VWMACC_VX 0xf4006057 -#define MASK_VWMACC_VX 0xfc00707f -#define MATCH_VWMACCSU_VV 0xfc002057 -#define MASK_VWMACCSU_VV 0xfc00707f -#define MATCH_VWMACCSU_VX 0xfc006057 -#define MASK_VWMACCSU_VX 0xfc00707f -#define MATCH_VWMACCU_VV 0xf0002057 -#define MASK_VWMACCU_VV 0xfc00707f -#define MATCH_VWMACCU_VX 0xf0006057 -#define MASK_VWMACCU_VX 0xfc00707f -#define MATCH_VWMACCUS_VX 0xf8006057 -#define MASK_VWMACCUS_VX 0xfc00707f -#define MATCH_VWMUL_VV 0xec002057 -#define MASK_VWMUL_VV 0xfc00707f -#define MATCH_VWMUL_VX 0xec006057 -#define MASK_VWMUL_VX 0xfc00707f -#define MATCH_VWMULSU_VV 0xe8002057 -#define MASK_VWMULSU_VV 0xfc00707f -#define MATCH_VWMULSU_VX 0xe8006057 -#define MASK_VWMULSU_VX 0xfc00707f -#define MATCH_VWMULU_VV 0xe0002057 -#define MASK_VWMULU_VV 0xfc00707f -#define MATCH_VWMULU_VX 0xe0006057 -#define MASK_VWMULU_VX 0xfc00707f -#define MATCH_VWREDSUM_VS 0xc4000057 -#define MASK_VWREDSUM_VS 0xfc00707f -#define MATCH_VWREDSUMU_VS 0xc0000057 -#define MASK_VWREDSUMU_VS 0xfc00707f -#define MATCH_VWSLL_VI 0xd4003057 -#define MASK_VWSLL_VI 0xfc00707f -#define MATCH_VWSLL_VV 0xd4000057 -#define MASK_VWSLL_VV 0xfc00707f -#define MATCH_VWSLL_VX 0xd4004057 -#define MASK_VWSLL_VX 0xfc00707f -#define MATCH_VWSUB_VV 0xcc002057 -#define MASK_VWSUB_VV 0xfc00707f -#define MATCH_VWSUB_VX 0xcc006057 -#define MASK_VWSUB_VX 0xfc00707f -#define MATCH_VWSUB_WV 0xdc002057 -#define MASK_VWSUB_WV 0xfc00707f -#define MATCH_VWSUB_WX 0xdc006057 -#define MASK_VWSUB_WX 0xfc00707f -#define MATCH_VWSUBU_VV 0xc8002057 -#define MASK_VWSUBU_VV 0xfc00707f -#define MATCH_VWSUBU_VX 0xc8006057 -#define MASK_VWSUBU_VX 0xfc00707f -#define MATCH_VWSUBU_WV 0xd8002057 -#define MASK_VWSUBU_WV 0xfc00707f -#define MATCH_VWSUBU_WX 0xd8006057 -#define MASK_VWSUBU_WX 0xfc00707f -#define MATCH_VXOR_VI 0x2c003057 -#define MASK_VXOR_VI 0xfc00707f -#define MATCH_VXOR_VV 0x2c000057 -#define MASK_VXOR_VV 0xfc00707f -#define MATCH_VXOR_VX 0x2c004057 -#define MASK_VXOR_VX 0xfc00707f -#define MATCH_VZEXT_VF2 0x48032057 -#define MASK_VZEXT_VF2 0xfc0ff07f -#define MATCH_VZEXT_VF4 0x48022057 -#define MASK_VZEXT_VF4 0xfc0ff07f -#define MATCH_VZEXT_VF8 0x48012057 -#define MASK_VZEXT_VF8 0xfc0ff07f -#define MATCH_WFI 0x10500073 -#define MASK_WFI 0xffffffff -#define MATCH_WRS_NTO 0xd00073 -#define MASK_WRS_NTO 0xffffffff -#define MATCH_WRS_STO 0x1d00073 -#define MASK_WRS_STO 0xffffffff -#define MATCH_XNOR 0x40004033 -#define MASK_XNOR 0xfe00707f -#define MATCH_XOR 0x4033 -#define MASK_XOR 0xfe00707f -#define MATCH_XORI 0x4013 -#define MASK_XORI 0x707f -#define MATCH_XPERM4 0x28002033 -#define MASK_XPERM4 0xfe00707f -#define MATCH_XPERM8 0x28004033 -#define MASK_XPERM8 0xfe00707f -#define MATCH_ZEXT_H 0x800403b -#define MASK_ZEXT_H 0xfff0707f -#define MATCH_ZIP 0x8f01013 -#define MASK_ZIP 0xfff0707f - -#define CSR_FFLAGS 0x1 -#define CSR_FRM 0x2 -#define CSR_FCSR 0x3 -#define CSR_VSTART 0x8 -#define CSR_VXSAT 0x9 -#define CSR_VXRM 0xa -#define CSR_VCSR 0xf -#define CSR_SSP 0x11 -#define CSR_SEED 0x15 -#define CSR_JVT 0x17 -#define CSR_CYCLE 0xc00 -#define CSR_TIME 0xc01 -#define CSR_INSTRET 0xc02 -#define CSR_HPMCOUNTER3 0xc03 -#define CSR_HPMCOUNTER4 0xc04 -#define CSR_HPMCOUNTER5 0xc05 -#define CSR_HPMCOUNTER6 0xc06 -#define CSR_HPMCOUNTER7 0xc07 -#define CSR_HPMCOUNTER8 0xc08 -#define CSR_HPMCOUNTER9 0xc09 -#define CSR_HPMCOUNTER10 0xc0a -#define CSR_HPMCOUNTER11 0xc0b -#define CSR_HPMCOUNTER12 0xc0c -#define CSR_HPMCOUNTER13 0xc0d -#define CSR_HPMCOUNTER14 0xc0e -#define CSR_HPMCOUNTER15 0xc0f -#define CSR_HPMCOUNTER16 0xc10 -#define CSR_HPMCOUNTER17 0xc11 -#define CSR_HPMCOUNTER18 0xc12 -#define CSR_HPMCOUNTER19 0xc13 -#define CSR_HPMCOUNTER20 0xc14 -#define CSR_HPMCOUNTER21 0xc15 -#define CSR_HPMCOUNTER22 0xc16 -#define CSR_HPMCOUNTER23 0xc17 -#define CSR_HPMCOUNTER24 0xc18 -#define CSR_HPMCOUNTER25 0xc19 -#define CSR_HPMCOUNTER26 0xc1a -#define CSR_HPMCOUNTER27 0xc1b -#define CSR_HPMCOUNTER28 0xc1c -#define CSR_HPMCOUNTER29 0xc1d -#define CSR_HPMCOUNTER30 0xc1e -#define CSR_HPMCOUNTER31 0xc1f -#define CSR_VL 0xc20 -#define CSR_VTYPE 0xc21 -#define CSR_VLENB 0xc22 -#define CSR_SSTATUS 0x100 -#define CSR_SEDELEG 0x102 -#define CSR_SIDELEG 0x103 -#define CSR_SIE 0x104 -#define CSR_STVEC 0x105 -#define CSR_SCOUNTEREN 0x106 -#define CSR_SENVCFG 0x10a -#define CSR_SSTATEEN0 0x10c -#define CSR_SSTATEEN1 0x10d -#define CSR_SSTATEEN2 0x10e -#define CSR_SSTATEEN3 0x10f -#define CSR_SCOUNTINHIBIT 0x120 -#define CSR_SSCRATCH 0x140 -#define CSR_SEPC 0x141 -#define CSR_SCAUSE 0x142 -#define CSR_STVAL 0x143 -#define CSR_SIP 0x144 -#define CSR_STIMECMP 0x14d -#define CSR_SCTRCTL 0x14e -#define CSR_SCTRSTATUS 0x14f -#define CSR_SISELECT 0x150 -#define CSR_SIREG 0x151 -#define CSR_SIREG2 0x152 -#define CSR_SIREG3 0x153 -#define CSR_SIREG4 0x155 -#define CSR_SIREG5 0x156 -#define CSR_SIREG6 0x157 -#define CSR_STOPEI 0x15c -#define CSR_SCTRDEPTH 0x15f -#define CSR_SATP 0x180 -#define CSR_SRMCFG 0x181 -#define CSR_SCONTEXT 0x5a8 -#define CSR_VSSTATUS 0x200 -#define CSR_VSIE 0x204 -#define CSR_VSTVEC 0x205 -#define CSR_VSSCRATCH 0x240 -#define CSR_VSEPC 0x241 -#define CSR_VSCAUSE 0x242 -#define CSR_VSTVAL 0x243 -#define CSR_VSIP 0x244 -#define CSR_VSTIMECMP 0x24d -#define CSR_VSCTRCTL 0x24e -#define CSR_VSISELECT 0x250 -#define CSR_VSIREG 0x251 -#define CSR_VSIREG2 0x252 -#define CSR_VSIREG3 0x253 -#define CSR_VSIREG4 0x255 -#define CSR_VSIREG5 0x256 -#define CSR_VSIREG6 0x257 -#define CSR_VSTOPEI 0x25c -#define CSR_VSATP 0x280 -#define CSR_HSTATUS 0x600 -#define CSR_HEDELEG 0x602 -#define CSR_HIDELEG 0x603 -#define CSR_HIE 0x604 -#define CSR_HTIMEDELTA 0x605 -#define CSR_HCOUNTEREN 0x606 -#define CSR_HGEIE 0x607 -#define CSR_HVIEN 0x608 -#define CSR_HVICTL 0x609 -#define CSR_HENVCFG 0x60a -#define CSR_HSTATEEN0 0x60c -#define CSR_HSTATEEN1 0x60d -#define CSR_HSTATEEN2 0x60e -#define CSR_HSTATEEN3 0x60f -#define CSR_HTVAL 0x643 -#define CSR_HIP 0x644 -#define CSR_HVIP 0x645 -#define CSR_HVIPRIO1 0x646 -#define CSR_HVIPRIO2 0x647 -#define CSR_HTINST 0x64a -#define CSR_HGATP 0x680 -#define CSR_HCONTEXT 0x6a8 -#define CSR_HGEIP 0xe12 -#define CSR_VSTOPI 0xeb0 -#define CSR_SCOUNTOVF 0xda0 -#define CSR_STOPI 0xdb0 -#define CSR_UTVT 0x7 -#define CSR_UNXTI 0x45 -#define CSR_UINTSTATUS 0x46 -#define CSR_USCRATCHCSW 0x48 -#define CSR_USCRATCHCSWL 0x49 -#define CSR_STVT 0x107 -#define CSR_SNXTI 0x145 -#define CSR_SINTSTATUS 0x146 -#define CSR_SSCRATCHCSW 0x148 -#define CSR_SSCRATCHCSWL 0x149 -#define CSR_MTVT 0x307 -#define CSR_MNXTI 0x345 -#define CSR_MINTSTATUS 0x346 -#define CSR_MSCRATCHCSW 0x348 -#define CSR_MSCRATCHCSWL 0x349 -#define CSR_MSTATUS 0x300 -#define CSR_MISA 0x301 -#define CSR_MEDELEG 0x302 -#define CSR_MIDELEG 0x303 -#define CSR_MIE 0x304 -#define CSR_MTVEC 0x305 -#define CSR_MCOUNTEREN 0x306 -#define CSR_MVIEN 0x308 -#define CSR_MVIP 0x309 -#define CSR_MENVCFG 0x30a -#define CSR_MSTATEEN0 0x30c -#define CSR_MSTATEEN1 0x30d -#define CSR_MSTATEEN2 0x30e -#define CSR_MSTATEEN3 0x30f -#define CSR_MCOUNTINHIBIT 0x320 -#define CSR_MSCRATCH 0x340 -#define CSR_MEPC 0x341 -#define CSR_MCAUSE 0x342 -#define CSR_MTVAL 0x343 -#define CSR_MIP 0x344 -#define CSR_MTINST 0x34a -#define CSR_MTVAL2 0x34b -#define CSR_MCTRCTL 0x34e -#define CSR_MISELECT 0x350 -#define CSR_MIREG 0x351 -#define CSR_MIREG2 0x352 -#define CSR_MIREG3 0x353 -#define CSR_MIREG4 0x355 -#define CSR_MIREG5 0x356 -#define CSR_MIREG6 0x357 -#define CSR_MTOPEI 0x35c -#define CSR_PMPCFG0 0x3a0 -#define CSR_PMPCFG1 0x3a1 -#define CSR_PMPCFG2 0x3a2 -#define CSR_PMPCFG3 0x3a3 -#define CSR_PMPCFG4 0x3a4 -#define CSR_PMPCFG5 0x3a5 -#define CSR_PMPCFG6 0x3a6 -#define CSR_PMPCFG7 0x3a7 -#define CSR_PMPCFG8 0x3a8 -#define CSR_PMPCFG9 0x3a9 -#define CSR_PMPCFG10 0x3aa -#define CSR_PMPCFG11 0x3ab -#define CSR_PMPCFG12 0x3ac -#define CSR_PMPCFG13 0x3ad -#define CSR_PMPCFG14 0x3ae -#define CSR_PMPCFG15 0x3af -#define CSR_PMPADDR0 0x3b0 -#define CSR_PMPADDR1 0x3b1 -#define CSR_PMPADDR2 0x3b2 -#define CSR_PMPADDR3 0x3b3 -#define CSR_PMPADDR4 0x3b4 -#define CSR_PMPADDR5 0x3b5 -#define CSR_PMPADDR6 0x3b6 -#define CSR_PMPADDR7 0x3b7 -#define CSR_PMPADDR8 0x3b8 -#define CSR_PMPADDR9 0x3b9 -#define CSR_PMPADDR10 0x3ba -#define CSR_PMPADDR11 0x3bb -#define CSR_PMPADDR12 0x3bc -#define CSR_PMPADDR13 0x3bd -#define CSR_PMPADDR14 0x3be -#define CSR_PMPADDR15 0x3bf -#define CSR_PMPADDR16 0x3c0 -#define CSR_PMPADDR17 0x3c1 -#define CSR_PMPADDR18 0x3c2 -#define CSR_PMPADDR19 0x3c3 -#define CSR_PMPADDR20 0x3c4 -#define CSR_PMPADDR21 0x3c5 -#define CSR_PMPADDR22 0x3c6 -#define CSR_PMPADDR23 0x3c7 -#define CSR_PMPADDR24 0x3c8 -#define CSR_PMPADDR25 0x3c9 -#define CSR_PMPADDR26 0x3ca -#define CSR_PMPADDR27 0x3cb -#define CSR_PMPADDR28 0x3cc -#define CSR_PMPADDR29 0x3cd -#define CSR_PMPADDR30 0x3ce -#define CSR_PMPADDR31 0x3cf -#define CSR_PMPADDR32 0x3d0 -#define CSR_PMPADDR33 0x3d1 -#define CSR_PMPADDR34 0x3d2 -#define CSR_PMPADDR35 0x3d3 -#define CSR_PMPADDR36 0x3d4 -#define CSR_PMPADDR37 0x3d5 -#define CSR_PMPADDR38 0x3d6 -#define CSR_PMPADDR39 0x3d7 -#define CSR_PMPADDR40 0x3d8 -#define CSR_PMPADDR41 0x3d9 -#define CSR_PMPADDR42 0x3da -#define CSR_PMPADDR43 0x3db -#define CSR_PMPADDR44 0x3dc -#define CSR_PMPADDR45 0x3dd -#define CSR_PMPADDR46 0x3de -#define CSR_PMPADDR47 0x3df -#define CSR_PMPADDR48 0x3e0 -#define CSR_PMPADDR49 0x3e1 -#define CSR_PMPADDR50 0x3e2 -#define CSR_PMPADDR51 0x3e3 -#define CSR_PMPADDR52 0x3e4 -#define CSR_PMPADDR53 0x3e5 -#define CSR_PMPADDR54 0x3e6 -#define CSR_PMPADDR55 0x3e7 -#define CSR_PMPADDR56 0x3e8 -#define CSR_PMPADDR57 0x3e9 -#define CSR_PMPADDR58 0x3ea -#define CSR_PMPADDR59 0x3eb -#define CSR_PMPADDR60 0x3ec -#define CSR_PMPADDR61 0x3ed -#define CSR_PMPADDR62 0x3ee -#define CSR_PMPADDR63 0x3ef -#define CSR_MSECCFG 0x747 -#define CSR_TSELECT 0x7a0 -#define CSR_TDATA1 0x7a1 -#define CSR_TDATA2 0x7a2 -#define CSR_TDATA3 0x7a3 -#define CSR_TINFO 0x7a4 -#define CSR_TCONTROL 0x7a5 -#define CSR_MCONTEXT 0x7a8 -#define CSR_MSCONTEXT 0x7aa -#define CSR_DCSR 0x7b0 -#define CSR_DPC 0x7b1 -#define CSR_DSCRATCH0 0x7b2 -#define CSR_DSCRATCH1 0x7b3 -#define CSR_MCYCLE 0xb00 -#define CSR_MINSTRET 0xb02 -#define CSR_MHPMCOUNTER3 0xb03 -#define CSR_MHPMCOUNTER4 0xb04 -#define CSR_MHPMCOUNTER5 0xb05 -#define CSR_MHPMCOUNTER6 0xb06 -#define CSR_MHPMCOUNTER7 0xb07 -#define CSR_MHPMCOUNTER8 0xb08 -#define CSR_MHPMCOUNTER9 0xb09 -#define CSR_MHPMCOUNTER10 0xb0a -#define CSR_MHPMCOUNTER11 0xb0b -#define CSR_MHPMCOUNTER12 0xb0c -#define CSR_MHPMCOUNTER13 0xb0d -#define CSR_MHPMCOUNTER14 0xb0e -#define CSR_MHPMCOUNTER15 0xb0f -#define CSR_MHPMCOUNTER16 0xb10 -#define CSR_MHPMCOUNTER17 0xb11 -#define CSR_MHPMCOUNTER18 0xb12 -#define CSR_MHPMCOUNTER19 0xb13 -#define CSR_MHPMCOUNTER20 0xb14 -#define CSR_MHPMCOUNTER21 0xb15 -#define CSR_MHPMCOUNTER22 0xb16 -#define CSR_MHPMCOUNTER23 0xb17 -#define CSR_MHPMCOUNTER24 0xb18 -#define CSR_MHPMCOUNTER25 0xb19 -#define CSR_MHPMCOUNTER26 0xb1a -#define CSR_MHPMCOUNTER27 0xb1b -#define CSR_MHPMCOUNTER28 0xb1c -#define CSR_MHPMCOUNTER29 0xb1d -#define CSR_MHPMCOUNTER30 0xb1e -#define CSR_MHPMCOUNTER31 0xb1f -#define CSR_MCYCLECFG 0x321 -#define CSR_MINSTRETCFG 0x322 -#define CSR_MHPMEVENT3 0x323 -#define CSR_MHPMEVENT4 0x324 -#define CSR_MHPMEVENT5 0x325 -#define CSR_MHPMEVENT6 0x326 -#define CSR_MHPMEVENT7 0x327 -#define CSR_MHPMEVENT8 0x328 -#define CSR_MHPMEVENT9 0x329 -#define CSR_MHPMEVENT10 0x32a -#define CSR_MHPMEVENT11 0x32b -#define CSR_MHPMEVENT12 0x32c -#define CSR_MHPMEVENT13 0x32d -#define CSR_MHPMEVENT14 0x32e -#define CSR_MHPMEVENT15 0x32f -#define CSR_MHPMEVENT16 0x330 -#define CSR_MHPMEVENT17 0x331 -#define CSR_MHPMEVENT18 0x332 -#define CSR_MHPMEVENT19 0x333 -#define CSR_MHPMEVENT20 0x334 -#define CSR_MHPMEVENT21 0x335 -#define CSR_MHPMEVENT22 0x336 -#define CSR_MHPMEVENT23 0x337 -#define CSR_MHPMEVENT24 0x338 -#define CSR_MHPMEVENT25 0x339 -#define CSR_MHPMEVENT26 0x33a -#define CSR_MHPMEVENT27 0x33b -#define CSR_MHPMEVENT28 0x33c -#define CSR_MHPMEVENT29 0x33d -#define CSR_MHPMEVENT30 0x33e -#define CSR_MHPMEVENT31 0x33f -#define CSR_MVENDORID 0xf11 -#define CSR_MARCHID 0xf12 -#define CSR_MIMPID 0xf13 -#define CSR_MHARTID 0xf14 -#define CSR_MCONFIGPTR 0xf15 -#define CSR_MTOPI 0xfb0 -#define CSR_SIEH 0x114 -#define CSR_SIPH 0x154 -#define CSR_STIMECMPH 0x15d -#define CSR_VSIEH 0x214 -#define CSR_VSIPH 0x254 -#define CSR_VSTIMECMPH 0x25d -#define CSR_HEDELEGH 0x612 -#define CSR_HTIMEDELTAH 0x615 -#define CSR_HIDELEGH 0x613 -#define CSR_HVIENH 0x618 -#define CSR_HENVCFGH 0x61a -#define CSR_HVIPH 0x655 -#define CSR_HVIPRIO1H 0x656 -#define CSR_HVIPRIO2H 0x657 -#define CSR_HSTATEEN0H 0x61c -#define CSR_HSTATEEN1H 0x61d -#define CSR_HSTATEEN2H 0x61e -#define CSR_HSTATEEN3H 0x61f -#define CSR_CYCLEH 0xc80 -#define CSR_TIMEH 0xc81 -#define CSR_INSTRETH 0xc82 -#define CSR_HPMCOUNTER3H 0xc83 -#define CSR_HPMCOUNTER4H 0xc84 -#define CSR_HPMCOUNTER5H 0xc85 -#define CSR_HPMCOUNTER6H 0xc86 -#define CSR_HPMCOUNTER7H 0xc87 -#define CSR_HPMCOUNTER8H 0xc88 -#define CSR_HPMCOUNTER9H 0xc89 -#define CSR_HPMCOUNTER10H 0xc8a -#define CSR_HPMCOUNTER11H 0xc8b -#define CSR_HPMCOUNTER12H 0xc8c -#define CSR_HPMCOUNTER13H 0xc8d -#define CSR_HPMCOUNTER14H 0xc8e -#define CSR_HPMCOUNTER15H 0xc8f -#define CSR_HPMCOUNTER16H 0xc90 -#define CSR_HPMCOUNTER17H 0xc91 -#define CSR_HPMCOUNTER18H 0xc92 -#define CSR_HPMCOUNTER19H 0xc93 -#define CSR_HPMCOUNTER20H 0xc94 -#define CSR_HPMCOUNTER21H 0xc95 -#define CSR_HPMCOUNTER22H 0xc96 -#define CSR_HPMCOUNTER23H 0xc97 -#define CSR_HPMCOUNTER24H 0xc98 -#define CSR_HPMCOUNTER25H 0xc99 -#define CSR_HPMCOUNTER26H 0xc9a -#define CSR_HPMCOUNTER27H 0xc9b -#define CSR_HPMCOUNTER28H 0xc9c -#define CSR_HPMCOUNTER29H 0xc9d -#define CSR_HPMCOUNTER30H 0xc9e -#define CSR_HPMCOUNTER31H 0xc9f -#define CSR_MSTATUSH 0x310 -#define CSR_MIDELEGH 0x313 -#define CSR_MIEH 0x314 -#define CSR_MVIENH 0x318 -#define CSR_MVIPH 0x319 -#define CSR_MENVCFGH 0x31a -#define CSR_MSTATEEN0H 0x31c -#define CSR_MSTATEEN1H 0x31d -#define CSR_MSTATEEN2H 0x31e -#define CSR_MSTATEEN3H 0x31f -#define CSR_MIPH 0x354 -#define CSR_MCYCLECFGH 0x721 -#define CSR_MINSTRETCFGH 0x722 -#define CSR_MHPMEVENT3H 0x723 -#define CSR_MHPMEVENT4H 0x724 -#define CSR_MHPMEVENT5H 0x725 -#define CSR_MHPMEVENT6H 0x726 -#define CSR_MHPMEVENT7H 0x727 -#define CSR_MHPMEVENT8H 0x728 -#define CSR_MHPMEVENT9H 0x729 -#define CSR_MHPMEVENT10H 0x72a -#define CSR_MHPMEVENT11H 0x72b -#define CSR_MHPMEVENT12H 0x72c -#define CSR_MHPMEVENT13H 0x72d -#define CSR_MHPMEVENT14H 0x72e -#define CSR_MHPMEVENT15H 0x72f -#define CSR_MHPMEVENT16H 0x730 -#define CSR_MHPMEVENT17H 0x731 -#define CSR_MHPMEVENT18H 0x732 -#define CSR_MHPMEVENT19H 0x733 -#define CSR_MHPMEVENT20H 0x734 -#define CSR_MHPMEVENT21H 0x735 -#define CSR_MHPMEVENT22H 0x736 -#define CSR_MHPMEVENT23H 0x737 -#define CSR_MHPMEVENT24H 0x738 -#define CSR_MHPMEVENT25H 0x739 -#define CSR_MHPMEVENT26H 0x73a -#define CSR_MHPMEVENT27H 0x73b -#define CSR_MHPMEVENT28H 0x73c -#define CSR_MHPMEVENT29H 0x73d -#define CSR_MHPMEVENT30H 0x73e -#define CSR_MHPMEVENT31H 0x73f -#define CSR_MNSCRATCH 0x740 -#define CSR_MNEPC 0x741 -#define CSR_MNCAUSE 0x742 -#define CSR_MNSTATUS 0x744 -#define CSR_MSECCFGH 0x757 -#define CSR_MCYCLEH 0xb80 -#define CSR_MINSTRETH 0xb82 -#define CSR_MHPMCOUNTER3H 0xb83 -#define CSR_MHPMCOUNTER4H 0xb84 -#define CSR_MHPMCOUNTER5H 0xb85 -#define CSR_MHPMCOUNTER6H 0xb86 -#define CSR_MHPMCOUNTER7H 0xb87 -#define CSR_MHPMCOUNTER8H 0xb88 -#define CSR_MHPMCOUNTER9H 0xb89 -#define CSR_MHPMCOUNTER10H 0xb8a -#define CSR_MHPMCOUNTER11H 0xb8b -#define CSR_MHPMCOUNTER12H 0xb8c -#define CSR_MHPMCOUNTER13H 0xb8d -#define CSR_MHPMCOUNTER14H 0xb8e -#define CSR_MHPMCOUNTER15H 0xb8f -#define CSR_MHPMCOUNTER16H 0xb90 -#define CSR_MHPMCOUNTER17H 0xb91 -#define CSR_MHPMCOUNTER18H 0xb92 -#define CSR_MHPMCOUNTER19H 0xb93 -#define CSR_MHPMCOUNTER20H 0xb94 -#define CSR_MHPMCOUNTER21H 0xb95 -#define CSR_MHPMCOUNTER22H 0xb96 -#define CSR_MHPMCOUNTER23H 0xb97 -#define CSR_MHPMCOUNTER24H 0xb98 -#define CSR_MHPMCOUNTER25H 0xb99 -#define CSR_MHPMCOUNTER26H 0xb9a -#define CSR_MHPMCOUNTER27H 0xb9b -#define CSR_MHPMCOUNTER28H 0xb9c -#define CSR_MHPMCOUNTER29H 0xb9d -#define CSR_MHPMCOUNTER30H 0xb9e -#define CSR_MHPMCOUNTER31H 0xb9f - -#define CAUSE_MISALIGNED_FETCH 0x0 -#define CAUSE_FETCH_ACCESS 0x1 -#define CAUSE_ILLEGAL_INSTRUCTION 0x2 -#define CAUSE_BREAKPOINT 0x3 -#define CAUSE_MISALIGNED_LOAD 0x4 -#define CAUSE_LOAD_ACCESS 0x5 -#define CAUSE_MISALIGNED_STORE 0x6 -#define CAUSE_STORE_ACCESS 0x7 -#define CAUSE_USER_ECALL 0x8 -#define CAUSE_SUPERVISOR_ECALL 0x9 -#define CAUSE_VIRTUAL_SUPERVISOR_ECALL 0xa -#define CAUSE_MACHINE_ECALL 0xb -#define CAUSE_FETCH_PAGE_FAULT 0xc -#define CAUSE_LOAD_PAGE_FAULT 0xd -#define CAUSE_STORE_PAGE_FAULT 0xf -#define CAUSE_DOUBLE_TRAP 0x10 -#define CAUSE_SOFTWARE_CHECK_FAULT 0x12 -#define CAUSE_HARDWARE_ERROR_FAULT 0x13 -#define CAUSE_FETCH_GUEST_PAGE_FAULT 0x14 -#define CAUSE_LOAD_GUEST_PAGE_FAULT 0x15 -#define CAUSE_VIRTUAL_INSTRUCTION 0x16 -#define CAUSE_STORE_GUEST_PAGE_FAULT 0x17 - -#define INSN_FIELD_RD 0xf80 -#define INSN_FIELD_RT 0xf8000 -#define INSN_FIELD_RS1 0xf8000 -#define INSN_FIELD_RS2 0x1f00000 -#define INSN_FIELD_RS3 0xf8000000 -#define INSN_FIELD_AQRL 0x6000000 -#define INSN_FIELD_AQ 0x4000000 -#define INSN_FIELD_RL 0x2000000 -#define INSN_FIELD_FM 0xf0000000 -#define INSN_FIELD_PRED 0xf000000 -#define INSN_FIELD_SUCC 0xf00000 -#define INSN_FIELD_RM 0x7000 -#define INSN_FIELD_FUNCT3 0x7000 -#define INSN_FIELD_FUNCT2 0x6000000 -#define INSN_FIELD_IMM20 0xfffff000 -#define INSN_FIELD_JIMM20 0xfffff000 -#define INSN_FIELD_IMM12 0xfff00000 -#define INSN_FIELD_CSR 0xfff00000 -#define INSN_FIELD_IMM12HI 0xfe000000 -#define INSN_FIELD_BIMM12HI 0xfe000000 -#define INSN_FIELD_IMM12LO 0xf80 -#define INSN_FIELD_BIMM12LO 0xf80 -#define INSN_FIELD_SHAMTQ 0x7f00000 -#define INSN_FIELD_SHAMTW 0x1f00000 -#define INSN_FIELD_SHAMTW4 0xf00000 -#define INSN_FIELD_SHAMTD 0x3f00000 -#define INSN_FIELD_BS 0xc0000000 -#define INSN_FIELD_RNUM 0xf00000 -#define INSN_FIELD_RC 0x3e000000 -#define INSN_FIELD_IMM2 0x300000 -#define INSN_FIELD_IMM3 0x700000 -#define INSN_FIELD_IMM4 0xf00000 -#define INSN_FIELD_IMM5 0x1f00000 -#define INSN_FIELD_IMM6 0x3f00000 -#define INSN_FIELD_ZIMM 0xf8000 -#define INSN_FIELD_OPCODE 0x7f -#define INSN_FIELD_FUNCT7 0xfe000000 -#define INSN_FIELD_VD 0xf80 -#define INSN_FIELD_VS3 0xf80 -#define INSN_FIELD_VS1 0xf8000 -#define INSN_FIELD_VS2 0x1f00000 -#define INSN_FIELD_VM 0x2000000 -#define INSN_FIELD_WD 0x4000000 -#define INSN_FIELD_AMOOP 0xf8000000 -#define INSN_FIELD_NF 0xe0000000 -#define INSN_FIELD_SIMM5 0xf8000 -#define INSN_FIELD_ZIMM5 0xf8000 -#define INSN_FIELD_ZIMM10 0x3ff00000 -#define INSN_FIELD_ZIMM11 0x7ff00000 -#define INSN_FIELD_ZIMM6HI 0x4000000 -#define INSN_FIELD_ZIMM6LO 0xf8000 -#define INSN_FIELD_C_NZUIMM10 0x1fe0 -#define INSN_FIELD_C_UIMM7LO 0x60 -#define INSN_FIELD_C_UIMM7HI 0x1c00 -#define INSN_FIELD_C_UIMM8LO 0x60 -#define INSN_FIELD_C_UIMM8HI 0x1c00 -#define INSN_FIELD_C_UIMM9LO 0x60 -#define INSN_FIELD_C_UIMM9HI 0x1c00 -#define INSN_FIELD_C_NZIMM6LO 0x7c -#define INSN_FIELD_C_NZIMM6HI 0x1000 -#define INSN_FIELD_C_IMM6LO 0x7c -#define INSN_FIELD_C_IMM6HI 0x1000 -#define INSN_FIELD_C_NZIMM10HI 0x1000 -#define INSN_FIELD_C_NZIMM10LO 0x7c -#define INSN_FIELD_C_NZIMM18HI 0x1000 -#define INSN_FIELD_C_NZIMM18LO 0x7c -#define INSN_FIELD_C_IMM12 0x1ffc -#define INSN_FIELD_C_BIMM9LO 0x7c -#define INSN_FIELD_C_BIMM9HI 0x1c00 -#define INSN_FIELD_C_NZUIMM5 0x7c -#define INSN_FIELD_C_NZUIMM6LO 0x7c -#define INSN_FIELD_C_NZUIMM6HI 0x1000 -#define INSN_FIELD_C_UIMM8SPLO 0x7c -#define INSN_FIELD_C_UIMM8SPHI 0x1000 -#define INSN_FIELD_C_UIMM8SP_S 0x1f80 -#define INSN_FIELD_C_UIMM10SPLO 0x7c -#define INSN_FIELD_C_UIMM10SPHI 0x1000 -#define INSN_FIELD_C_UIMM9SPLO 0x7c -#define INSN_FIELD_C_UIMM9SPHI 0x1000 -#define INSN_FIELD_C_UIMM10SP_S 0x1f80 -#define INSN_FIELD_C_UIMM9SP_S 0x1f80 -#define INSN_FIELD_C_UIMM2 0x60 -#define INSN_FIELD_C_UIMM1 0x20 -#define INSN_FIELD_C_RLIST 0xf0 -#define INSN_FIELD_C_SPIMM 0xc -#define INSN_FIELD_C_INDEX 0x3fc -#define INSN_FIELD_RS1_P 0x380 -#define INSN_FIELD_RS2_P 0x1c -#define INSN_FIELD_RD_P 0x1c -#define INSN_FIELD_RD_RS1_N0 0xf80 -#define INSN_FIELD_RD_RS1_P 0x380 -#define INSN_FIELD_RD_RS1 0xf80 -#define INSN_FIELD_RD_N2 0xf80 -#define INSN_FIELD_RD_N0 0xf80 -#define INSN_FIELD_RS1_N0 0xf80 -#define INSN_FIELD_C_RS2_N0 0x7c -#define INSN_FIELD_C_RS1_N0 0xf80 -#define INSN_FIELD_C_RS2 0x7c -#define INSN_FIELD_C_SREG1 0x380 -#define INSN_FIELD_C_SREG2 0x1c -#define INSN_FIELD_MOP_R_T_30 0x40000000 -#define INSN_FIELD_MOP_R_T_27_26 0xc000000 -#define INSN_FIELD_MOP_R_T_21_20 0x300000 -#define INSN_FIELD_MOP_RR_T_30 0x40000000 -#define INSN_FIELD_MOP_RR_T_27_26 0xc000000 -#define INSN_FIELD_C_MOP_T 0x700 -#endif -#ifdef DECLARE_INSN -DECLARE_INSN(add, MATCH_ADD, MASK_ADD) -DECLARE_INSN(add_uw, MATCH_ADD_UW, MASK_ADD_UW) -DECLARE_INSN(addi, MATCH_ADDI, MASK_ADDI) -DECLARE_INSN(addiw, MATCH_ADDIW, MASK_ADDIW) -DECLARE_INSN(addw, MATCH_ADDW, MASK_ADDW) -DECLARE_INSN(aes32dsi, MATCH_AES32DSI, MASK_AES32DSI) -DECLARE_INSN(aes32dsmi, MATCH_AES32DSMI, MASK_AES32DSMI) -DECLARE_INSN(aes32esi, MATCH_AES32ESI, MASK_AES32ESI) -DECLARE_INSN(aes32esmi, MATCH_AES32ESMI, MASK_AES32ESMI) -DECLARE_INSN(aes64ds, MATCH_AES64DS, MASK_AES64DS) -DECLARE_INSN(aes64dsm, MATCH_AES64DSM, MASK_AES64DSM) -DECLARE_INSN(aes64es, MATCH_AES64ES, MASK_AES64ES) -DECLARE_INSN(aes64esm, MATCH_AES64ESM, MASK_AES64ESM) -DECLARE_INSN(aes64im, MATCH_AES64IM, MASK_AES64IM) -DECLARE_INSN(aes64ks1i, MATCH_AES64KS1I, MASK_AES64KS1I) -DECLARE_INSN(aes64ks2, MATCH_AES64KS2, MASK_AES64KS2) -DECLARE_INSN(amoadd_b, MATCH_AMOADD_B, MASK_AMOADD_B) -DECLARE_INSN(amoadd_d, MATCH_AMOADD_D, MASK_AMOADD_D) -DECLARE_INSN(amoadd_h, MATCH_AMOADD_H, MASK_AMOADD_H) -DECLARE_INSN(amoadd_w, MATCH_AMOADD_W, MASK_AMOADD_W) -DECLARE_INSN(amoand_b, MATCH_AMOAND_B, MASK_AMOAND_B) -DECLARE_INSN(amoand_d, MATCH_AMOAND_D, MASK_AMOAND_D) -DECLARE_INSN(amoand_h, MATCH_AMOAND_H, MASK_AMOAND_H) -DECLARE_INSN(amoand_w, MATCH_AMOAND_W, MASK_AMOAND_W) -DECLARE_INSN(amocas_b, MATCH_AMOCAS_B, MASK_AMOCAS_B) -DECLARE_INSN(amocas_d, MATCH_AMOCAS_D, MASK_AMOCAS_D) -DECLARE_INSN(amocas_h, MATCH_AMOCAS_H, MASK_AMOCAS_H) -DECLARE_INSN(amocas_q, MATCH_AMOCAS_Q, MASK_AMOCAS_Q) -DECLARE_INSN(amocas_w, MATCH_AMOCAS_W, MASK_AMOCAS_W) -DECLARE_INSN(amomax_b, MATCH_AMOMAX_B, MASK_AMOMAX_B) -DECLARE_INSN(amomax_d, MATCH_AMOMAX_D, MASK_AMOMAX_D) -DECLARE_INSN(amomax_h, MATCH_AMOMAX_H, MASK_AMOMAX_H) -DECLARE_INSN(amomax_w, MATCH_AMOMAX_W, MASK_AMOMAX_W) -DECLARE_INSN(amomaxu_b, MATCH_AMOMAXU_B, MASK_AMOMAXU_B) -DECLARE_INSN(amomaxu_d, MATCH_AMOMAXU_D, MASK_AMOMAXU_D) -DECLARE_INSN(amomaxu_h, MATCH_AMOMAXU_H, MASK_AMOMAXU_H) -DECLARE_INSN(amomaxu_w, MATCH_AMOMAXU_W, MASK_AMOMAXU_W) -DECLARE_INSN(amomin_b, MATCH_AMOMIN_B, MASK_AMOMIN_B) -DECLARE_INSN(amomin_d, MATCH_AMOMIN_D, MASK_AMOMIN_D) -DECLARE_INSN(amomin_h, MATCH_AMOMIN_H, MASK_AMOMIN_H) -DECLARE_INSN(amomin_w, MATCH_AMOMIN_W, MASK_AMOMIN_W) -DECLARE_INSN(amominu_b, MATCH_AMOMINU_B, MASK_AMOMINU_B) -DECLARE_INSN(amominu_d, MATCH_AMOMINU_D, MASK_AMOMINU_D) -DECLARE_INSN(amominu_h, MATCH_AMOMINU_H, MASK_AMOMINU_H) -DECLARE_INSN(amominu_w, MATCH_AMOMINU_W, MASK_AMOMINU_W) -DECLARE_INSN(amoor_b, MATCH_AMOOR_B, MASK_AMOOR_B) -DECLARE_INSN(amoor_d, MATCH_AMOOR_D, MASK_AMOOR_D) -DECLARE_INSN(amoor_h, MATCH_AMOOR_H, MASK_AMOOR_H) -DECLARE_INSN(amoor_w, MATCH_AMOOR_W, MASK_AMOOR_W) -DECLARE_INSN(amoswap_b, MATCH_AMOSWAP_B, MASK_AMOSWAP_B) -DECLARE_INSN(amoswap_d, MATCH_AMOSWAP_D, MASK_AMOSWAP_D) -DECLARE_INSN(amoswap_h, MATCH_AMOSWAP_H, MASK_AMOSWAP_H) -DECLARE_INSN(amoswap_w, MATCH_AMOSWAP_W, MASK_AMOSWAP_W) -DECLARE_INSN(amoxor_b, MATCH_AMOXOR_B, MASK_AMOXOR_B) -DECLARE_INSN(amoxor_d, MATCH_AMOXOR_D, MASK_AMOXOR_D) -DECLARE_INSN(amoxor_h, MATCH_AMOXOR_H, MASK_AMOXOR_H) -DECLARE_INSN(amoxor_w, MATCH_AMOXOR_W, MASK_AMOXOR_W) -DECLARE_INSN(and, MATCH_AND, MASK_AND) -DECLARE_INSN(andi, MATCH_ANDI, MASK_ANDI) -DECLARE_INSN(andn, MATCH_ANDN, MASK_ANDN) -DECLARE_INSN(auipc, MATCH_AUIPC, MASK_AUIPC) -DECLARE_INSN(bclr, MATCH_BCLR, MASK_BCLR) -DECLARE_INSN(bclri, MATCH_BCLRI, MASK_BCLRI) -DECLARE_INSN(beq, MATCH_BEQ, MASK_BEQ) -DECLARE_INSN(bext, MATCH_BEXT, MASK_BEXT) -DECLARE_INSN(bexti, MATCH_BEXTI, MASK_BEXTI) -DECLARE_INSN(bge, MATCH_BGE, MASK_BGE) -DECLARE_INSN(bgeu, MATCH_BGEU, MASK_BGEU) -DECLARE_INSN(binv, MATCH_BINV, MASK_BINV) -DECLARE_INSN(binvi, MATCH_BINVI, MASK_BINVI) -DECLARE_INSN(blt, MATCH_BLT, MASK_BLT) -DECLARE_INSN(bltu, MATCH_BLTU, MASK_BLTU) -DECLARE_INSN(bne, MATCH_BNE, MASK_BNE) -DECLARE_INSN(brev8, MATCH_BREV8, MASK_BREV8) -DECLARE_INSN(bset, MATCH_BSET, MASK_BSET) -DECLARE_INSN(bseti, MATCH_BSETI, MASK_BSETI) -DECLARE_INSN(c_add, MATCH_C_ADD, MASK_C_ADD) -DECLARE_INSN(c_addi, MATCH_C_ADDI, MASK_C_ADDI) -DECLARE_INSN(c_addi16sp, MATCH_C_ADDI16SP, MASK_C_ADDI16SP) -DECLARE_INSN(c_addi4spn, MATCH_C_ADDI4SPN, MASK_C_ADDI4SPN) -DECLARE_INSN(c_addiw, MATCH_C_ADDIW, MASK_C_ADDIW) -DECLARE_INSN(c_addw, MATCH_C_ADDW, MASK_C_ADDW) -DECLARE_INSN(c_and, MATCH_C_AND, MASK_C_AND) -DECLARE_INSN(c_andi, MATCH_C_ANDI, MASK_C_ANDI) -DECLARE_INSN(c_beqz, MATCH_C_BEQZ, MASK_C_BEQZ) -DECLARE_INSN(c_bnez, MATCH_C_BNEZ, MASK_C_BNEZ) -DECLARE_INSN(c_ebreak, MATCH_C_EBREAK, MASK_C_EBREAK) -DECLARE_INSN(c_fld, MATCH_C_FLD, MASK_C_FLD) -DECLARE_INSN(c_fldsp, MATCH_C_FLDSP, MASK_C_FLDSP) -DECLARE_INSN(c_flw, MATCH_C_FLW, MASK_C_FLW) -DECLARE_INSN(c_flwsp, MATCH_C_FLWSP, MASK_C_FLWSP) -DECLARE_INSN(c_fsd, MATCH_C_FSD, MASK_C_FSD) -DECLARE_INSN(c_fsdsp, MATCH_C_FSDSP, MASK_C_FSDSP) -DECLARE_INSN(c_fsw, MATCH_C_FSW, MASK_C_FSW) -DECLARE_INSN(c_fswsp, MATCH_C_FSWSP, MASK_C_FSWSP) -DECLARE_INSN(c_j, MATCH_C_J, MASK_C_J) -DECLARE_INSN(c_jal, MATCH_C_JAL, MASK_C_JAL) -DECLARE_INSN(c_jalr, MATCH_C_JALR, MASK_C_JALR) -DECLARE_INSN(c_jr, MATCH_C_JR, MASK_C_JR) -DECLARE_INSN(c_lbu, MATCH_C_LBU, MASK_C_LBU) -DECLARE_INSN(c_ld, MATCH_C_LD, MASK_C_LD) -DECLARE_INSN(c_ldsp, MATCH_C_LDSP, MASK_C_LDSP) -DECLARE_INSN(c_li, MATCH_C_LI, MASK_C_LI) -DECLARE_INSN(c_lui, MATCH_C_LUI, MASK_C_LUI) -DECLARE_INSN(c_lw, MATCH_C_LW, MASK_C_LW) -DECLARE_INSN(c_lwsp, MATCH_C_LWSP, MASK_C_LWSP) -DECLARE_INSN(c_mul, MATCH_C_MUL, MASK_C_MUL) -DECLARE_INSN(c_mv, MATCH_C_MV, MASK_C_MV) -DECLARE_INSN(c_nop, MATCH_C_NOP, MASK_C_NOP) -DECLARE_INSN(c_not, MATCH_C_NOT, MASK_C_NOT) -DECLARE_INSN(c_or, MATCH_C_OR, MASK_C_OR) -DECLARE_INSN(c_sb, MATCH_C_SB, MASK_C_SB) -DECLARE_INSN(c_sd, MATCH_C_SD, MASK_C_SD) -DECLARE_INSN(c_sdsp, MATCH_C_SDSP, MASK_C_SDSP) -DECLARE_INSN(c_sext_b, MATCH_C_SEXT_B, MASK_C_SEXT_B) -DECLARE_INSN(c_sext_h, MATCH_C_SEXT_H, MASK_C_SEXT_H) -DECLARE_INSN(c_slli, MATCH_C_SLLI, MASK_C_SLLI) -DECLARE_INSN(c_srai, MATCH_C_SRAI, MASK_C_SRAI) -DECLARE_INSN(c_srli, MATCH_C_SRLI, MASK_C_SRLI) -DECLARE_INSN(c_sub, MATCH_C_SUB, MASK_C_SUB) -DECLARE_INSN(c_subw, MATCH_C_SUBW, MASK_C_SUBW) -DECLARE_INSN(c_sw, MATCH_C_SW, MASK_C_SW) -DECLARE_INSN(c_swsp, MATCH_C_SWSP, MASK_C_SWSP) -DECLARE_INSN(c_xor, MATCH_C_XOR, MASK_C_XOR) -DECLARE_INSN(c_zext_b, MATCH_C_ZEXT_B, MASK_C_ZEXT_B) -DECLARE_INSN(c_zext_h, MATCH_C_ZEXT_H, MASK_C_ZEXT_H) -DECLARE_INSN(c_zext_w, MATCH_C_ZEXT_W, MASK_C_ZEXT_W) -DECLARE_INSN(cbo_clean, MATCH_CBO_CLEAN, MASK_CBO_CLEAN) -DECLARE_INSN(cbo_flush, MATCH_CBO_FLUSH, MASK_CBO_FLUSH) -DECLARE_INSN(cbo_inval, MATCH_CBO_INVAL, MASK_CBO_INVAL) -DECLARE_INSN(cbo_zero, MATCH_CBO_ZERO, MASK_CBO_ZERO) -DECLARE_INSN(clmul, MATCH_CLMUL, MASK_CLMUL) -DECLARE_INSN(clmulh, MATCH_CLMULH, MASK_CLMULH) -DECLARE_INSN(clmulr, MATCH_CLMULR, MASK_CLMULR) -DECLARE_INSN(clz, MATCH_CLZ, MASK_CLZ) -DECLARE_INSN(clzw, MATCH_CLZW, MASK_CLZW) -DECLARE_INSN(cm_mva01s, MATCH_CM_MVA01S, MASK_CM_MVA01S) -DECLARE_INSN(cm_mvsa01, MATCH_CM_MVSA01, MASK_CM_MVSA01) -DECLARE_INSN(cm_pop, MATCH_CM_POP, MASK_CM_POP) -DECLARE_INSN(cm_popret, MATCH_CM_POPRET, MASK_CM_POPRET) -DECLARE_INSN(cm_popretz, MATCH_CM_POPRETZ, MASK_CM_POPRETZ) -DECLARE_INSN(cm_push, MATCH_CM_PUSH, MASK_CM_PUSH) -DECLARE_INSN(cpop, MATCH_CPOP, MASK_CPOP) -DECLARE_INSN(cpopw, MATCH_CPOPW, MASK_CPOPW) -DECLARE_INSN(csrrc, MATCH_CSRRC, MASK_CSRRC) -DECLARE_INSN(csrrci, MATCH_CSRRCI, MASK_CSRRCI) -DECLARE_INSN(csrrs, MATCH_CSRRS, MASK_CSRRS) -DECLARE_INSN(csrrsi, MATCH_CSRRSI, MASK_CSRRSI) -DECLARE_INSN(csrrw, MATCH_CSRRW, MASK_CSRRW) -DECLARE_INSN(csrrwi, MATCH_CSRRWI, MASK_CSRRWI) -DECLARE_INSN(ctz, MATCH_CTZ, MASK_CTZ) -DECLARE_INSN(ctzw, MATCH_CTZW, MASK_CTZW) -DECLARE_INSN(czero_eqz, MATCH_CZERO_EQZ, MASK_CZERO_EQZ) -DECLARE_INSN(czero_nez, MATCH_CZERO_NEZ, MASK_CZERO_NEZ) -DECLARE_INSN(div, MATCH_DIV, MASK_DIV) -DECLARE_INSN(divu, MATCH_DIVU, MASK_DIVU) -DECLARE_INSN(divuw, MATCH_DIVUW, MASK_DIVUW) -DECLARE_INSN(divw, MATCH_DIVW, MASK_DIVW) -DECLARE_INSN(dret, MATCH_DRET, MASK_DRET) -DECLARE_INSN(ebreak, MATCH_EBREAK, MASK_EBREAK) -DECLARE_INSN(ecall, MATCH_ECALL, MASK_ECALL) -DECLARE_INSN(fadd_d, MATCH_FADD_D, MASK_FADD_D) -DECLARE_INSN(fadd_h, MATCH_FADD_H, MASK_FADD_H) -DECLARE_INSN(fadd_q, MATCH_FADD_Q, MASK_FADD_Q) -DECLARE_INSN(fadd_s, MATCH_FADD_S, MASK_FADD_S) -DECLARE_INSN(fclass_d, MATCH_FCLASS_D, MASK_FCLASS_D) -DECLARE_INSN(fclass_h, MATCH_FCLASS_H, MASK_FCLASS_H) -DECLARE_INSN(fclass_q, MATCH_FCLASS_Q, MASK_FCLASS_Q) -DECLARE_INSN(fclass_s, MATCH_FCLASS_S, MASK_FCLASS_S) -DECLARE_INSN(fcvt_bf16_s, MATCH_FCVT_BF16_S, MASK_FCVT_BF16_S) -DECLARE_INSN(fcvt_d_h, MATCH_FCVT_D_H, MASK_FCVT_D_H) -DECLARE_INSN(fcvt_d_l, MATCH_FCVT_D_L, MASK_FCVT_D_L) -DECLARE_INSN(fcvt_d_lu, MATCH_FCVT_D_LU, MASK_FCVT_D_LU) -DECLARE_INSN(fcvt_d_q, MATCH_FCVT_D_Q, MASK_FCVT_D_Q) -DECLARE_INSN(fcvt_d_s, MATCH_FCVT_D_S, MASK_FCVT_D_S) -DECLARE_INSN(fcvt_d_w, MATCH_FCVT_D_W, MASK_FCVT_D_W) -DECLARE_INSN(fcvt_d_wu, MATCH_FCVT_D_WU, MASK_FCVT_D_WU) -DECLARE_INSN(fcvt_h_d, MATCH_FCVT_H_D, MASK_FCVT_H_D) -DECLARE_INSN(fcvt_h_l, MATCH_FCVT_H_L, MASK_FCVT_H_L) -DECLARE_INSN(fcvt_h_lu, MATCH_FCVT_H_LU, MASK_FCVT_H_LU) -DECLARE_INSN(fcvt_h_q, MATCH_FCVT_H_Q, MASK_FCVT_H_Q) -DECLARE_INSN(fcvt_h_s, MATCH_FCVT_H_S, MASK_FCVT_H_S) -DECLARE_INSN(fcvt_h_w, MATCH_FCVT_H_W, MASK_FCVT_H_W) -DECLARE_INSN(fcvt_h_wu, MATCH_FCVT_H_WU, MASK_FCVT_H_WU) -DECLARE_INSN(fcvt_l_d, MATCH_FCVT_L_D, MASK_FCVT_L_D) -DECLARE_INSN(fcvt_l_h, MATCH_FCVT_L_H, MASK_FCVT_L_H) -DECLARE_INSN(fcvt_l_q, MATCH_FCVT_L_Q, MASK_FCVT_L_Q) -DECLARE_INSN(fcvt_l_s, MATCH_FCVT_L_S, MASK_FCVT_L_S) -DECLARE_INSN(fcvt_lu_d, MATCH_FCVT_LU_D, MASK_FCVT_LU_D) -DECLARE_INSN(fcvt_lu_h, MATCH_FCVT_LU_H, MASK_FCVT_LU_H) -DECLARE_INSN(fcvt_lu_q, MATCH_FCVT_LU_Q, MASK_FCVT_LU_Q) -DECLARE_INSN(fcvt_lu_s, MATCH_FCVT_LU_S, MASK_FCVT_LU_S) -DECLARE_INSN(fcvt_q_d, MATCH_FCVT_Q_D, MASK_FCVT_Q_D) -DECLARE_INSN(fcvt_q_h, MATCH_FCVT_Q_H, MASK_FCVT_Q_H) -DECLARE_INSN(fcvt_q_l, MATCH_FCVT_Q_L, MASK_FCVT_Q_L) -DECLARE_INSN(fcvt_q_lu, MATCH_FCVT_Q_LU, MASK_FCVT_Q_LU) -DECLARE_INSN(fcvt_q_s, MATCH_FCVT_Q_S, MASK_FCVT_Q_S) -DECLARE_INSN(fcvt_q_w, MATCH_FCVT_Q_W, MASK_FCVT_Q_W) -DECLARE_INSN(fcvt_q_wu, MATCH_FCVT_Q_WU, MASK_FCVT_Q_WU) -DECLARE_INSN(fcvt_s_bf16, MATCH_FCVT_S_BF16, MASK_FCVT_S_BF16) -DECLARE_INSN(fcvt_s_d, MATCH_FCVT_S_D, MASK_FCVT_S_D) -DECLARE_INSN(fcvt_s_h, MATCH_FCVT_S_H, MASK_FCVT_S_H) -DECLARE_INSN(fcvt_s_l, MATCH_FCVT_S_L, MASK_FCVT_S_L) -DECLARE_INSN(fcvt_s_lu, MATCH_FCVT_S_LU, MASK_FCVT_S_LU) -DECLARE_INSN(fcvt_s_q, MATCH_FCVT_S_Q, MASK_FCVT_S_Q) -DECLARE_INSN(fcvt_s_w, MATCH_FCVT_S_W, MASK_FCVT_S_W) -DECLARE_INSN(fcvt_s_wu, MATCH_FCVT_S_WU, MASK_FCVT_S_WU) -DECLARE_INSN(fcvt_w_d, MATCH_FCVT_W_D, MASK_FCVT_W_D) -DECLARE_INSN(fcvt_w_h, MATCH_FCVT_W_H, MASK_FCVT_W_H) -DECLARE_INSN(fcvt_w_q, MATCH_FCVT_W_Q, MASK_FCVT_W_Q) -DECLARE_INSN(fcvt_w_s, MATCH_FCVT_W_S, MASK_FCVT_W_S) -DECLARE_INSN(fcvt_wu_d, MATCH_FCVT_WU_D, MASK_FCVT_WU_D) -DECLARE_INSN(fcvt_wu_h, MATCH_FCVT_WU_H, MASK_FCVT_WU_H) -DECLARE_INSN(fcvt_wu_q, MATCH_FCVT_WU_Q, MASK_FCVT_WU_Q) -DECLARE_INSN(fcvt_wu_s, MATCH_FCVT_WU_S, MASK_FCVT_WU_S) -DECLARE_INSN(fcvtmod_w_d, MATCH_FCVTMOD_W_D, MASK_FCVTMOD_W_D) -DECLARE_INSN(fdiv_d, MATCH_FDIV_D, MASK_FDIV_D) -DECLARE_INSN(fdiv_h, MATCH_FDIV_H, MASK_FDIV_H) -DECLARE_INSN(fdiv_q, MATCH_FDIV_Q, MASK_FDIV_Q) -DECLARE_INSN(fdiv_s, MATCH_FDIV_S, MASK_FDIV_S) -DECLARE_INSN(fence, MATCH_FENCE, MASK_FENCE) -DECLARE_INSN(fence_i, MATCH_FENCE_I, MASK_FENCE_I) -DECLARE_INSN(feq_d, MATCH_FEQ_D, MASK_FEQ_D) -DECLARE_INSN(feq_h, MATCH_FEQ_H, MASK_FEQ_H) -DECLARE_INSN(feq_q, MATCH_FEQ_Q, MASK_FEQ_Q) -DECLARE_INSN(feq_s, MATCH_FEQ_S, MASK_FEQ_S) -DECLARE_INSN(fld, MATCH_FLD, MASK_FLD) -DECLARE_INSN(fle_d, MATCH_FLE_D, MASK_FLE_D) -DECLARE_INSN(fle_h, MATCH_FLE_H, MASK_FLE_H) -DECLARE_INSN(fle_q, MATCH_FLE_Q, MASK_FLE_Q) -DECLARE_INSN(fle_s, MATCH_FLE_S, MASK_FLE_S) -DECLARE_INSN(fleq_d, MATCH_FLEQ_D, MASK_FLEQ_D) -DECLARE_INSN(fleq_h, MATCH_FLEQ_H, MASK_FLEQ_H) -DECLARE_INSN(fleq_q, MATCH_FLEQ_Q, MASK_FLEQ_Q) -DECLARE_INSN(fleq_s, MATCH_FLEQ_S, MASK_FLEQ_S) -DECLARE_INSN(flh, MATCH_FLH, MASK_FLH) -DECLARE_INSN(fli_d, MATCH_FLI_D, MASK_FLI_D) -DECLARE_INSN(fli_h, MATCH_FLI_H, MASK_FLI_H) -DECLARE_INSN(fli_q, MATCH_FLI_Q, MASK_FLI_Q) -DECLARE_INSN(fli_s, MATCH_FLI_S, MASK_FLI_S) -DECLARE_INSN(flq, MATCH_FLQ, MASK_FLQ) -DECLARE_INSN(flt_d, MATCH_FLT_D, MASK_FLT_D) -DECLARE_INSN(flt_h, MATCH_FLT_H, MASK_FLT_H) -DECLARE_INSN(flt_q, MATCH_FLT_Q, MASK_FLT_Q) -DECLARE_INSN(flt_s, MATCH_FLT_S, MASK_FLT_S) -DECLARE_INSN(fltq_d, MATCH_FLTQ_D, MASK_FLTQ_D) -DECLARE_INSN(fltq_h, MATCH_FLTQ_H, MASK_FLTQ_H) -DECLARE_INSN(fltq_q, MATCH_FLTQ_Q, MASK_FLTQ_Q) -DECLARE_INSN(fltq_s, MATCH_FLTQ_S, MASK_FLTQ_S) -DECLARE_INSN(flw, MATCH_FLW, MASK_FLW) -DECLARE_INSN(fmadd_d, MATCH_FMADD_D, MASK_FMADD_D) -DECLARE_INSN(fmadd_h, MATCH_FMADD_H, MASK_FMADD_H) -DECLARE_INSN(fmadd_q, MATCH_FMADD_Q, MASK_FMADD_Q) -DECLARE_INSN(fmadd_s, MATCH_FMADD_S, MASK_FMADD_S) -DECLARE_INSN(fmax_d, MATCH_FMAX_D, MASK_FMAX_D) -DECLARE_INSN(fmax_h, MATCH_FMAX_H, MASK_FMAX_H) -DECLARE_INSN(fmax_q, MATCH_FMAX_Q, MASK_FMAX_Q) -DECLARE_INSN(fmax_s, MATCH_FMAX_S, MASK_FMAX_S) -DECLARE_INSN(fmaxm_d, MATCH_FMAXM_D, MASK_FMAXM_D) -DECLARE_INSN(fmaxm_h, MATCH_FMAXM_H, MASK_FMAXM_H) -DECLARE_INSN(fmaxm_q, MATCH_FMAXM_Q, MASK_FMAXM_Q) -DECLARE_INSN(fmaxm_s, MATCH_FMAXM_S, MASK_FMAXM_S) -DECLARE_INSN(fmin_d, MATCH_FMIN_D, MASK_FMIN_D) -DECLARE_INSN(fmin_h, MATCH_FMIN_H, MASK_FMIN_H) -DECLARE_INSN(fmin_q, MATCH_FMIN_Q, MASK_FMIN_Q) -DECLARE_INSN(fmin_s, MATCH_FMIN_S, MASK_FMIN_S) -DECLARE_INSN(fminm_d, MATCH_FMINM_D, MASK_FMINM_D) -DECLARE_INSN(fminm_h, MATCH_FMINM_H, MASK_FMINM_H) -DECLARE_INSN(fminm_q, MATCH_FMINM_Q, MASK_FMINM_Q) -DECLARE_INSN(fminm_s, MATCH_FMINM_S, MASK_FMINM_S) -DECLARE_INSN(fmsub_d, MATCH_FMSUB_D, MASK_FMSUB_D) -DECLARE_INSN(fmsub_h, MATCH_FMSUB_H, MASK_FMSUB_H) -DECLARE_INSN(fmsub_q, MATCH_FMSUB_Q, MASK_FMSUB_Q) -DECLARE_INSN(fmsub_s, MATCH_FMSUB_S, MASK_FMSUB_S) -DECLARE_INSN(fmul_d, MATCH_FMUL_D, MASK_FMUL_D) -DECLARE_INSN(fmul_h, MATCH_FMUL_H, MASK_FMUL_H) -DECLARE_INSN(fmul_q, MATCH_FMUL_Q, MASK_FMUL_Q) -DECLARE_INSN(fmul_s, MATCH_FMUL_S, MASK_FMUL_S) -DECLARE_INSN(fmv_d_x, MATCH_FMV_D_X, MASK_FMV_D_X) -DECLARE_INSN(fmv_h_x, MATCH_FMV_H_X, MASK_FMV_H_X) -DECLARE_INSN(fmv_w_x, MATCH_FMV_W_X, MASK_FMV_W_X) -DECLARE_INSN(fmv_x_d, MATCH_FMV_X_D, MASK_FMV_X_D) -DECLARE_INSN(fmv_x_h, MATCH_FMV_X_H, MASK_FMV_X_H) -DECLARE_INSN(fmv_x_w, MATCH_FMV_X_W, MASK_FMV_X_W) -DECLARE_INSN(fmvh_x_d, MATCH_FMVH_X_D, MASK_FMVH_X_D) -DECLARE_INSN(fmvh_x_q, MATCH_FMVH_X_Q, MASK_FMVH_X_Q) -DECLARE_INSN(fmvp_d_x, MATCH_FMVP_D_X, MASK_FMVP_D_X) -DECLARE_INSN(fmvp_q_x, MATCH_FMVP_Q_X, MASK_FMVP_Q_X) -DECLARE_INSN(fnmadd_d, MATCH_FNMADD_D, MASK_FNMADD_D) -DECLARE_INSN(fnmadd_h, MATCH_FNMADD_H, MASK_FNMADD_H) -DECLARE_INSN(fnmadd_q, MATCH_FNMADD_Q, MASK_FNMADD_Q) -DECLARE_INSN(fnmadd_s, MATCH_FNMADD_S, MASK_FNMADD_S) -DECLARE_INSN(fnmsub_d, MATCH_FNMSUB_D, MASK_FNMSUB_D) -DECLARE_INSN(fnmsub_h, MATCH_FNMSUB_H, MASK_FNMSUB_H) -DECLARE_INSN(fnmsub_q, MATCH_FNMSUB_Q, MASK_FNMSUB_Q) -DECLARE_INSN(fnmsub_s, MATCH_FNMSUB_S, MASK_FNMSUB_S) -DECLARE_INSN(fround_d, MATCH_FROUND_D, MASK_FROUND_D) -DECLARE_INSN(fround_h, MATCH_FROUND_H, MASK_FROUND_H) -DECLARE_INSN(fround_q, MATCH_FROUND_Q, MASK_FROUND_Q) -DECLARE_INSN(fround_s, MATCH_FROUND_S, MASK_FROUND_S) -DECLARE_INSN(froundnx_d, MATCH_FROUNDNX_D, MASK_FROUNDNX_D) -DECLARE_INSN(froundnx_h, MATCH_FROUNDNX_H, MASK_FROUNDNX_H) -DECLARE_INSN(froundnx_q, MATCH_FROUNDNX_Q, MASK_FROUNDNX_Q) -DECLARE_INSN(froundnx_s, MATCH_FROUNDNX_S, MASK_FROUNDNX_S) -DECLARE_INSN(fsd, MATCH_FSD, MASK_FSD) -DECLARE_INSN(fsgnj_d, MATCH_FSGNJ_D, MASK_FSGNJ_D) -DECLARE_INSN(fsgnj_h, MATCH_FSGNJ_H, MASK_FSGNJ_H) -DECLARE_INSN(fsgnj_q, MATCH_FSGNJ_Q, MASK_FSGNJ_Q) -DECLARE_INSN(fsgnj_s, MATCH_FSGNJ_S, MASK_FSGNJ_S) -DECLARE_INSN(fsgnjn_d, MATCH_FSGNJN_D, MASK_FSGNJN_D) -DECLARE_INSN(fsgnjn_h, MATCH_FSGNJN_H, MASK_FSGNJN_H) -DECLARE_INSN(fsgnjn_q, MATCH_FSGNJN_Q, MASK_FSGNJN_Q) -DECLARE_INSN(fsgnjn_s, MATCH_FSGNJN_S, MASK_FSGNJN_S) -DECLARE_INSN(fsgnjx_d, MATCH_FSGNJX_D, MASK_FSGNJX_D) -DECLARE_INSN(fsgnjx_h, MATCH_FSGNJX_H, MASK_FSGNJX_H) -DECLARE_INSN(fsgnjx_q, MATCH_FSGNJX_Q, MASK_FSGNJX_Q) -DECLARE_INSN(fsgnjx_s, MATCH_FSGNJX_S, MASK_FSGNJX_S) -DECLARE_INSN(fsh, MATCH_FSH, MASK_FSH) -DECLARE_INSN(fsq, MATCH_FSQ, MASK_FSQ) -DECLARE_INSN(fsqrt_d, MATCH_FSQRT_D, MASK_FSQRT_D) -DECLARE_INSN(fsqrt_h, MATCH_FSQRT_H, MASK_FSQRT_H) -DECLARE_INSN(fsqrt_q, MATCH_FSQRT_Q, MASK_FSQRT_Q) -DECLARE_INSN(fsqrt_s, MATCH_FSQRT_S, MASK_FSQRT_S) -DECLARE_INSN(fsub_d, MATCH_FSUB_D, MASK_FSUB_D) -DECLARE_INSN(fsub_h, MATCH_FSUB_H, MASK_FSUB_H) -DECLARE_INSN(fsub_q, MATCH_FSUB_Q, MASK_FSUB_Q) -DECLARE_INSN(fsub_s, MATCH_FSUB_S, MASK_FSUB_S) -DECLARE_INSN(fsw, MATCH_FSW, MASK_FSW) -DECLARE_INSN(hfence_gvma, MATCH_HFENCE_GVMA, MASK_HFENCE_GVMA) -DECLARE_INSN(hfence_vvma, MATCH_HFENCE_VVMA, MASK_HFENCE_VVMA) -DECLARE_INSN(hinval_gvma, MATCH_HINVAL_GVMA, MASK_HINVAL_GVMA) -DECLARE_INSN(hinval_vvma, MATCH_HINVAL_VVMA, MASK_HINVAL_VVMA) -DECLARE_INSN(hlv_b, MATCH_HLV_B, MASK_HLV_B) -DECLARE_INSN(hlv_bu, MATCH_HLV_BU, MASK_HLV_BU) -DECLARE_INSN(hlv_d, MATCH_HLV_D, MASK_HLV_D) -DECLARE_INSN(hlv_h, MATCH_HLV_H, MASK_HLV_H) -DECLARE_INSN(hlv_hu, MATCH_HLV_HU, MASK_HLV_HU) -DECLARE_INSN(hlv_w, MATCH_HLV_W, MASK_HLV_W) -DECLARE_INSN(hlv_wu, MATCH_HLV_WU, MASK_HLV_WU) -DECLARE_INSN(hlvx_hu, MATCH_HLVX_HU, MASK_HLVX_HU) -DECLARE_INSN(hlvx_wu, MATCH_HLVX_WU, MASK_HLVX_WU) -DECLARE_INSN(hsv_b, MATCH_HSV_B, MASK_HSV_B) -DECLARE_INSN(hsv_d, MATCH_HSV_D, MASK_HSV_D) -DECLARE_INSN(hsv_h, MATCH_HSV_H, MASK_HSV_H) -DECLARE_INSN(hsv_w, MATCH_HSV_W, MASK_HSV_W) -DECLARE_INSN(jal, MATCH_JAL, MASK_JAL) -DECLARE_INSN(jalr, MATCH_JALR, MASK_JALR) -DECLARE_INSN(lb, MATCH_LB, MASK_LB) -DECLARE_INSN(lb_aq, MATCH_LB_AQ, MASK_LB_AQ) -DECLARE_INSN(lbu, MATCH_LBU, MASK_LBU) -DECLARE_INSN(ld, MATCH_LD, MASK_LD) -DECLARE_INSN(ld_aq, MATCH_LD_AQ, MASK_LD_AQ) -DECLARE_INSN(lh, MATCH_LH, MASK_LH) -DECLARE_INSN(lh_aq, MATCH_LH_AQ, MASK_LH_AQ) -DECLARE_INSN(lhu, MATCH_LHU, MASK_LHU) -DECLARE_INSN(lr_d, MATCH_LR_D, MASK_LR_D) -DECLARE_INSN(lr_w, MATCH_LR_W, MASK_LR_W) -DECLARE_INSN(lui, MATCH_LUI, MASK_LUI) -DECLARE_INSN(lw, MATCH_LW, MASK_LW) -DECLARE_INSN(lw_aq, MATCH_LW_AQ, MASK_LW_AQ) -DECLARE_INSN(lwu, MATCH_LWU, MASK_LWU) -DECLARE_INSN(max, MATCH_MAX, MASK_MAX) -DECLARE_INSN(maxu, MATCH_MAXU, MASK_MAXU) -DECLARE_INSN(min, MATCH_MIN, MASK_MIN) -DECLARE_INSN(minu, MATCH_MINU, MASK_MINU) -DECLARE_INSN(mnret, MATCH_MNRET, MASK_MNRET) -DECLARE_INSN(mop_r_n, MATCH_MOP_R_N, MASK_MOP_R_N) -DECLARE_INSN(mop_rr_n, MATCH_MOP_RR_N, MASK_MOP_RR_N) -DECLARE_INSN(mret, MATCH_MRET, MASK_MRET) -DECLARE_INSN(mul, MATCH_MUL, MASK_MUL) -DECLARE_INSN(mulh, MATCH_MULH, MASK_MULH) -DECLARE_INSN(mulhsu, MATCH_MULHSU, MASK_MULHSU) -DECLARE_INSN(mulhu, MATCH_MULHU, MASK_MULHU) -DECLARE_INSN(mulw, MATCH_MULW, MASK_MULW) -DECLARE_INSN(or, MATCH_OR, MASK_OR) -DECLARE_INSN(orc_b, MATCH_ORC_B, MASK_ORC_B) -DECLARE_INSN(ori, MATCH_ORI, MASK_ORI) -DECLARE_INSN(orn, MATCH_ORN, MASK_ORN) -DECLARE_INSN(pack, MATCH_PACK, MASK_PACK) -DECLARE_INSN(packh, MATCH_PACKH, MASK_PACKH) -DECLARE_INSN(packw, MATCH_PACKW, MASK_PACKW) -DECLARE_INSN(rem, MATCH_REM, MASK_REM) -DECLARE_INSN(remu, MATCH_REMU, MASK_REMU) -DECLARE_INSN(remuw, MATCH_REMUW, MASK_REMUW) -DECLARE_INSN(remw, MATCH_REMW, MASK_REMW) -DECLARE_INSN(rev8, MATCH_REV8, MASK_REV8) -DECLARE_INSN(rol, MATCH_ROL, MASK_ROL) -DECLARE_INSN(rolw, MATCH_ROLW, MASK_ROLW) -DECLARE_INSN(ror, MATCH_ROR, MASK_ROR) -DECLARE_INSN(rori, MATCH_RORI, MASK_RORI) -DECLARE_INSN(roriw, MATCH_RORIW, MASK_RORIW) -DECLARE_INSN(rorw, MATCH_RORW, MASK_RORW) -DECLARE_INSN(sb, MATCH_SB, MASK_SB) -DECLARE_INSN(sb_rl, MATCH_SB_RL, MASK_SB_RL) -DECLARE_INSN(sc_d, MATCH_SC_D, MASK_SC_D) -DECLARE_INSN(sc_w, MATCH_SC_W, MASK_SC_W) -DECLARE_INSN(sctrclr, MATCH_SCTRCLR, MASK_SCTRCLR) -DECLARE_INSN(sd, MATCH_SD, MASK_SD) -DECLARE_INSN(sd_rl, MATCH_SD_RL, MASK_SD_RL) -DECLARE_INSN(sext_b, MATCH_SEXT_B, MASK_SEXT_B) -DECLARE_INSN(sext_h, MATCH_SEXT_H, MASK_SEXT_H) -DECLARE_INSN(sfence_inval_ir, MATCH_SFENCE_INVAL_IR, MASK_SFENCE_INVAL_IR) -DECLARE_INSN(sfence_vma, MATCH_SFENCE_VMA, MASK_SFENCE_VMA) -DECLARE_INSN(sfence_w_inval, MATCH_SFENCE_W_INVAL, MASK_SFENCE_W_INVAL) -DECLARE_INSN(sh, MATCH_SH, MASK_SH) -DECLARE_INSN(sh1add, MATCH_SH1ADD, MASK_SH1ADD) -DECLARE_INSN(sh1add_uw, MATCH_SH1ADD_UW, MASK_SH1ADD_UW) -DECLARE_INSN(sh2add, MATCH_SH2ADD, MASK_SH2ADD) -DECLARE_INSN(sh2add_uw, MATCH_SH2ADD_UW, MASK_SH2ADD_UW) -DECLARE_INSN(sh3add, MATCH_SH3ADD, MASK_SH3ADD) -DECLARE_INSN(sh3add_uw, MATCH_SH3ADD_UW, MASK_SH3ADD_UW) -DECLARE_INSN(sh_rl, MATCH_SH_RL, MASK_SH_RL) -DECLARE_INSN(sha256sig0, MATCH_SHA256SIG0, MASK_SHA256SIG0) -DECLARE_INSN(sha256sig1, MATCH_SHA256SIG1, MASK_SHA256SIG1) -DECLARE_INSN(sha256sum0, MATCH_SHA256SUM0, MASK_SHA256SUM0) -DECLARE_INSN(sha256sum1, MATCH_SHA256SUM1, MASK_SHA256SUM1) -DECLARE_INSN(sha512sig0, MATCH_SHA512SIG0, MASK_SHA512SIG0) -DECLARE_INSN(sha512sig0h, MATCH_SHA512SIG0H, MASK_SHA512SIG0H) -DECLARE_INSN(sha512sig0l, MATCH_SHA512SIG0L, MASK_SHA512SIG0L) -DECLARE_INSN(sha512sig1, MATCH_SHA512SIG1, MASK_SHA512SIG1) -DECLARE_INSN(sha512sig1h, MATCH_SHA512SIG1H, MASK_SHA512SIG1H) -DECLARE_INSN(sha512sig1l, MATCH_SHA512SIG1L, MASK_SHA512SIG1L) -DECLARE_INSN(sha512sum0, MATCH_SHA512SUM0, MASK_SHA512SUM0) -DECLARE_INSN(sha512sum0r, MATCH_SHA512SUM0R, MASK_SHA512SUM0R) -DECLARE_INSN(sha512sum1, MATCH_SHA512SUM1, MASK_SHA512SUM1) -DECLARE_INSN(sha512sum1r, MATCH_SHA512SUM1R, MASK_SHA512SUM1R) -DECLARE_INSN(sinval_vma, MATCH_SINVAL_VMA, MASK_SINVAL_VMA) -DECLARE_INSN(sll, MATCH_SLL, MASK_SLL) -DECLARE_INSN(slli, MATCH_SLLI, MASK_SLLI) -DECLARE_INSN(slli_uw, MATCH_SLLI_UW, MASK_SLLI_UW) -DECLARE_INSN(slliw, MATCH_SLLIW, MASK_SLLIW) -DECLARE_INSN(sllw, MATCH_SLLW, MASK_SLLW) -DECLARE_INSN(slt, MATCH_SLT, MASK_SLT) -DECLARE_INSN(slti, MATCH_SLTI, MASK_SLTI) -DECLARE_INSN(sltiu, MATCH_SLTIU, MASK_SLTIU) -DECLARE_INSN(sltu, MATCH_SLTU, MASK_SLTU) -DECLARE_INSN(sm3p0, MATCH_SM3P0, MASK_SM3P0) -DECLARE_INSN(sm3p1, MATCH_SM3P1, MASK_SM3P1) -DECLARE_INSN(sm4ed, MATCH_SM4ED, MASK_SM4ED) -DECLARE_INSN(sm4ks, MATCH_SM4KS, MASK_SM4KS) -DECLARE_INSN(sra, MATCH_SRA, MASK_SRA) -DECLARE_INSN(srai, MATCH_SRAI, MASK_SRAI) -DECLARE_INSN(sraiw, MATCH_SRAIW, MASK_SRAIW) -DECLARE_INSN(sraw, MATCH_SRAW, MASK_SRAW) -DECLARE_INSN(sret, MATCH_SRET, MASK_SRET) -DECLARE_INSN(srl, MATCH_SRL, MASK_SRL) -DECLARE_INSN(srli, MATCH_SRLI, MASK_SRLI) -DECLARE_INSN(srliw, MATCH_SRLIW, MASK_SRLIW) -DECLARE_INSN(srlw, MATCH_SRLW, MASK_SRLW) -DECLARE_INSN(ssamoswap_d, MATCH_SSAMOSWAP_D, MASK_SSAMOSWAP_D) -DECLARE_INSN(ssamoswap_w, MATCH_SSAMOSWAP_W, MASK_SSAMOSWAP_W) -DECLARE_INSN(sub, MATCH_SUB, MASK_SUB) -DECLARE_INSN(subw, MATCH_SUBW, MASK_SUBW) -DECLARE_INSN(sw, MATCH_SW, MASK_SW) -DECLARE_INSN(sw_rl, MATCH_SW_RL, MASK_SW_RL) -DECLARE_INSN(unzip, MATCH_UNZIP, MASK_UNZIP) -DECLARE_INSN(vaadd_vv, MATCH_VAADD_VV, MASK_VAADD_VV) -DECLARE_INSN(vaadd_vx, MATCH_VAADD_VX, MASK_VAADD_VX) -DECLARE_INSN(vaaddu_vv, MATCH_VAADDU_VV, MASK_VAADDU_VV) -DECLARE_INSN(vaaddu_vx, MATCH_VAADDU_VX, MASK_VAADDU_VX) -DECLARE_INSN(vadc_vim, MATCH_VADC_VIM, MASK_VADC_VIM) -DECLARE_INSN(vadc_vvm, MATCH_VADC_VVM, MASK_VADC_VVM) -DECLARE_INSN(vadc_vxm, MATCH_VADC_VXM, MASK_VADC_VXM) -DECLARE_INSN(vadd_vi, MATCH_VADD_VI, MASK_VADD_VI) -DECLARE_INSN(vadd_vv, MATCH_VADD_VV, MASK_VADD_VV) -DECLARE_INSN(vadd_vx, MATCH_VADD_VX, MASK_VADD_VX) -DECLARE_INSN(vaesdf_vs, MATCH_VAESDF_VS, MASK_VAESDF_VS) -DECLARE_INSN(vaesdf_vv, MATCH_VAESDF_VV, MASK_VAESDF_VV) -DECLARE_INSN(vaesdm_vs, MATCH_VAESDM_VS, MASK_VAESDM_VS) -DECLARE_INSN(vaesdm_vv, MATCH_VAESDM_VV, MASK_VAESDM_VV) -DECLARE_INSN(vaesef_vs, MATCH_VAESEF_VS, MASK_VAESEF_VS) -DECLARE_INSN(vaesef_vv, MATCH_VAESEF_VV, MASK_VAESEF_VV) -DECLARE_INSN(vaesem_vs, MATCH_VAESEM_VS, MASK_VAESEM_VS) -DECLARE_INSN(vaesem_vv, MATCH_VAESEM_VV, MASK_VAESEM_VV) -DECLARE_INSN(vaeskf1_vi, MATCH_VAESKF1_VI, MASK_VAESKF1_VI) -DECLARE_INSN(vaeskf2_vi, MATCH_VAESKF2_VI, MASK_VAESKF2_VI) -DECLARE_INSN(vaesz_vs, MATCH_VAESZ_VS, MASK_VAESZ_VS) -DECLARE_INSN(vand_vi, MATCH_VAND_VI, MASK_VAND_VI) -DECLARE_INSN(vand_vv, MATCH_VAND_VV, MASK_VAND_VV) -DECLARE_INSN(vand_vx, MATCH_VAND_VX, MASK_VAND_VX) -DECLARE_INSN(vandn_vv, MATCH_VANDN_VV, MASK_VANDN_VV) -DECLARE_INSN(vandn_vx, MATCH_VANDN_VX, MASK_VANDN_VX) -DECLARE_INSN(vasub_vv, MATCH_VASUB_VV, MASK_VASUB_VV) -DECLARE_INSN(vasub_vx, MATCH_VASUB_VX, MASK_VASUB_VX) -DECLARE_INSN(vasubu_vv, MATCH_VASUBU_VV, MASK_VASUBU_VV) -DECLARE_INSN(vasubu_vx, MATCH_VASUBU_VX, MASK_VASUBU_VX) -DECLARE_INSN(vbrev8_v, MATCH_VBREV8_V, MASK_VBREV8_V) -DECLARE_INSN(vbrev_v, MATCH_VBREV_V, MASK_VBREV_V) -DECLARE_INSN(vclmul_vv, MATCH_VCLMUL_VV, MASK_VCLMUL_VV) -DECLARE_INSN(vclmul_vx, MATCH_VCLMUL_VX, MASK_VCLMUL_VX) -DECLARE_INSN(vclmulh_vv, MATCH_VCLMULH_VV, MASK_VCLMULH_VV) -DECLARE_INSN(vclmulh_vx, MATCH_VCLMULH_VX, MASK_VCLMULH_VX) -DECLARE_INSN(vclz_v, MATCH_VCLZ_V, MASK_VCLZ_V) -DECLARE_INSN(vcompress_vm, MATCH_VCOMPRESS_VM, MASK_VCOMPRESS_VM) -DECLARE_INSN(vcpop_m, MATCH_VCPOP_M, MASK_VCPOP_M) -DECLARE_INSN(vcpop_v, MATCH_VCPOP_V, MASK_VCPOP_V) -DECLARE_INSN(vctz_v, MATCH_VCTZ_V, MASK_VCTZ_V) -DECLARE_INSN(vdiv_vv, MATCH_VDIV_VV, MASK_VDIV_VV) -DECLARE_INSN(vdiv_vx, MATCH_VDIV_VX, MASK_VDIV_VX) -DECLARE_INSN(vdivu_vv, MATCH_VDIVU_VV, MASK_VDIVU_VV) -DECLARE_INSN(vdivu_vx, MATCH_VDIVU_VX, MASK_VDIVU_VX) -DECLARE_INSN(vfadd_vf, MATCH_VFADD_VF, MASK_VFADD_VF) -DECLARE_INSN(vfadd_vv, MATCH_VFADD_VV, MASK_VFADD_VV) -DECLARE_INSN(vfclass_v, MATCH_VFCLASS_V, MASK_VFCLASS_V) -DECLARE_INSN(vfcvt_f_x_v, MATCH_VFCVT_F_X_V, MASK_VFCVT_F_X_V) -DECLARE_INSN(vfcvt_f_xu_v, MATCH_VFCVT_F_XU_V, MASK_VFCVT_F_XU_V) -DECLARE_INSN(vfcvt_rtz_x_f_v, MATCH_VFCVT_RTZ_X_F_V, MASK_VFCVT_RTZ_X_F_V) -DECLARE_INSN(vfcvt_rtz_xu_f_v, MATCH_VFCVT_RTZ_XU_F_V, MASK_VFCVT_RTZ_XU_F_V) -DECLARE_INSN(vfcvt_x_f_v, MATCH_VFCVT_X_F_V, MASK_VFCVT_X_F_V) -DECLARE_INSN(vfcvt_xu_f_v, MATCH_VFCVT_XU_F_V, MASK_VFCVT_XU_F_V) -DECLARE_INSN(vfdiv_vf, MATCH_VFDIV_VF, MASK_VFDIV_VF) -DECLARE_INSN(vfdiv_vv, MATCH_VFDIV_VV, MASK_VFDIV_VV) -DECLARE_INSN(vfirst_m, MATCH_VFIRST_M, MASK_VFIRST_M) -DECLARE_INSN(vfmacc_vf, MATCH_VFMACC_VF, MASK_VFMACC_VF) -DECLARE_INSN(vfmacc_vv, MATCH_VFMACC_VV, MASK_VFMACC_VV) -DECLARE_INSN(vfmadd_vf, MATCH_VFMADD_VF, MASK_VFMADD_VF) -DECLARE_INSN(vfmadd_vv, MATCH_VFMADD_VV, MASK_VFMADD_VV) -DECLARE_INSN(vfmax_vf, MATCH_VFMAX_VF, MASK_VFMAX_VF) -DECLARE_INSN(vfmax_vv, MATCH_VFMAX_VV, MASK_VFMAX_VV) -DECLARE_INSN(vfmerge_vfm, MATCH_VFMERGE_VFM, MASK_VFMERGE_VFM) -DECLARE_INSN(vfmin_vf, MATCH_VFMIN_VF, MASK_VFMIN_VF) -DECLARE_INSN(vfmin_vv, MATCH_VFMIN_VV, MASK_VFMIN_VV) -DECLARE_INSN(vfmsac_vf, MATCH_VFMSAC_VF, MASK_VFMSAC_VF) -DECLARE_INSN(vfmsac_vv, MATCH_VFMSAC_VV, MASK_VFMSAC_VV) -DECLARE_INSN(vfmsub_vf, MATCH_VFMSUB_VF, MASK_VFMSUB_VF) -DECLARE_INSN(vfmsub_vv, MATCH_VFMSUB_VV, MASK_VFMSUB_VV) -DECLARE_INSN(vfmul_vf, MATCH_VFMUL_VF, MASK_VFMUL_VF) -DECLARE_INSN(vfmul_vv, MATCH_VFMUL_VV, MASK_VFMUL_VV) -DECLARE_INSN(vfmv_f_s, MATCH_VFMV_F_S, MASK_VFMV_F_S) -DECLARE_INSN(vfmv_s_f, MATCH_VFMV_S_F, MASK_VFMV_S_F) -DECLARE_INSN(vfmv_v_f, MATCH_VFMV_V_F, MASK_VFMV_V_F) -DECLARE_INSN(vfncvt_f_f_w, MATCH_VFNCVT_F_F_W, MASK_VFNCVT_F_F_W) -DECLARE_INSN(vfncvt_f_x_w, MATCH_VFNCVT_F_X_W, MASK_VFNCVT_F_X_W) -DECLARE_INSN(vfncvt_f_xu_w, MATCH_VFNCVT_F_XU_W, MASK_VFNCVT_F_XU_W) -DECLARE_INSN(vfncvt_rod_f_f_w, MATCH_VFNCVT_ROD_F_F_W, MASK_VFNCVT_ROD_F_F_W) -DECLARE_INSN(vfncvt_rtz_x_f_w, MATCH_VFNCVT_RTZ_X_F_W, MASK_VFNCVT_RTZ_X_F_W) -DECLARE_INSN(vfncvt_rtz_xu_f_w, MATCH_VFNCVT_RTZ_XU_F_W, MASK_VFNCVT_RTZ_XU_F_W) -DECLARE_INSN(vfncvt_x_f_w, MATCH_VFNCVT_X_F_W, MASK_VFNCVT_X_F_W) -DECLARE_INSN(vfncvt_xu_f_w, MATCH_VFNCVT_XU_F_W, MASK_VFNCVT_XU_F_W) -DECLARE_INSN(vfncvtbf16_f_f_w, MATCH_VFNCVTBF16_F_F_W, MASK_VFNCVTBF16_F_F_W) -DECLARE_INSN(vfnmacc_vf, MATCH_VFNMACC_VF, MASK_VFNMACC_VF) -DECLARE_INSN(vfnmacc_vv, MATCH_VFNMACC_VV, MASK_VFNMACC_VV) -DECLARE_INSN(vfnmadd_vf, MATCH_VFNMADD_VF, MASK_VFNMADD_VF) -DECLARE_INSN(vfnmadd_vv, MATCH_VFNMADD_VV, MASK_VFNMADD_VV) -DECLARE_INSN(vfnmsac_vf, MATCH_VFNMSAC_VF, MASK_VFNMSAC_VF) -DECLARE_INSN(vfnmsac_vv, MATCH_VFNMSAC_VV, MASK_VFNMSAC_VV) -DECLARE_INSN(vfnmsub_vf, MATCH_VFNMSUB_VF, MASK_VFNMSUB_VF) -DECLARE_INSN(vfnmsub_vv, MATCH_VFNMSUB_VV, MASK_VFNMSUB_VV) -DECLARE_INSN(vfrdiv_vf, MATCH_VFRDIV_VF, MASK_VFRDIV_VF) -DECLARE_INSN(vfrec7_v, MATCH_VFREC7_V, MASK_VFREC7_V) -DECLARE_INSN(vfredmax_vs, MATCH_VFREDMAX_VS, MASK_VFREDMAX_VS) -DECLARE_INSN(vfredmin_vs, MATCH_VFREDMIN_VS, MASK_VFREDMIN_VS) -DECLARE_INSN(vfredosum_vs, MATCH_VFREDOSUM_VS, MASK_VFREDOSUM_VS) -DECLARE_INSN(vfredusum_vs, MATCH_VFREDUSUM_VS, MASK_VFREDUSUM_VS) -DECLARE_INSN(vfrsqrt7_v, MATCH_VFRSQRT7_V, MASK_VFRSQRT7_V) -DECLARE_INSN(vfrsub_vf, MATCH_VFRSUB_VF, MASK_VFRSUB_VF) -DECLARE_INSN(vfsgnj_vf, MATCH_VFSGNJ_VF, MASK_VFSGNJ_VF) -DECLARE_INSN(vfsgnj_vv, MATCH_VFSGNJ_VV, MASK_VFSGNJ_VV) -DECLARE_INSN(vfsgnjn_vf, MATCH_VFSGNJN_VF, MASK_VFSGNJN_VF) -DECLARE_INSN(vfsgnjn_vv, MATCH_VFSGNJN_VV, MASK_VFSGNJN_VV) -DECLARE_INSN(vfsgnjx_vf, MATCH_VFSGNJX_VF, MASK_VFSGNJX_VF) -DECLARE_INSN(vfsgnjx_vv, MATCH_VFSGNJX_VV, MASK_VFSGNJX_VV) -DECLARE_INSN(vfslide1down_vf, MATCH_VFSLIDE1DOWN_VF, MASK_VFSLIDE1DOWN_VF) -DECLARE_INSN(vfslide1up_vf, MATCH_VFSLIDE1UP_VF, MASK_VFSLIDE1UP_VF) -DECLARE_INSN(vfsqrt_v, MATCH_VFSQRT_V, MASK_VFSQRT_V) -DECLARE_INSN(vfsub_vf, MATCH_VFSUB_VF, MASK_VFSUB_VF) -DECLARE_INSN(vfsub_vv, MATCH_VFSUB_VV, MASK_VFSUB_VV) -DECLARE_INSN(vfwadd_vf, MATCH_VFWADD_VF, MASK_VFWADD_VF) -DECLARE_INSN(vfwadd_vv, MATCH_VFWADD_VV, MASK_VFWADD_VV) -DECLARE_INSN(vfwadd_wf, MATCH_VFWADD_WF, MASK_VFWADD_WF) -DECLARE_INSN(vfwadd_wv, MATCH_VFWADD_WV, MASK_VFWADD_WV) -DECLARE_INSN(vfwcvt_f_f_v, MATCH_VFWCVT_F_F_V, MASK_VFWCVT_F_F_V) -DECLARE_INSN(vfwcvt_f_x_v, MATCH_VFWCVT_F_X_V, MASK_VFWCVT_F_X_V) -DECLARE_INSN(vfwcvt_f_xu_v, MATCH_VFWCVT_F_XU_V, MASK_VFWCVT_F_XU_V) -DECLARE_INSN(vfwcvt_rtz_x_f_v, MATCH_VFWCVT_RTZ_X_F_V, MASK_VFWCVT_RTZ_X_F_V) -DECLARE_INSN(vfwcvt_rtz_xu_f_v, MATCH_VFWCVT_RTZ_XU_F_V, MASK_VFWCVT_RTZ_XU_F_V) -DECLARE_INSN(vfwcvt_x_f_v, MATCH_VFWCVT_X_F_V, MASK_VFWCVT_X_F_V) -DECLARE_INSN(vfwcvt_xu_f_v, MATCH_VFWCVT_XU_F_V, MASK_VFWCVT_XU_F_V) -DECLARE_INSN(vfwcvtbf16_f_f_v, MATCH_VFWCVTBF16_F_F_V, MASK_VFWCVTBF16_F_F_V) -DECLARE_INSN(vfwmacc_vf, MATCH_VFWMACC_VF, MASK_VFWMACC_VF) -DECLARE_INSN(vfwmacc_vv, MATCH_VFWMACC_VV, MASK_VFWMACC_VV) -DECLARE_INSN(vfwmaccbf16_vf, MATCH_VFWMACCBF16_VF, MASK_VFWMACCBF16_VF) -DECLARE_INSN(vfwmaccbf16_vv, MATCH_VFWMACCBF16_VV, MASK_VFWMACCBF16_VV) -DECLARE_INSN(vfwmsac_vf, MATCH_VFWMSAC_VF, MASK_VFWMSAC_VF) -DECLARE_INSN(vfwmsac_vv, MATCH_VFWMSAC_VV, MASK_VFWMSAC_VV) -DECLARE_INSN(vfwmul_vf, MATCH_VFWMUL_VF, MASK_VFWMUL_VF) -DECLARE_INSN(vfwmul_vv, MATCH_VFWMUL_VV, MASK_VFWMUL_VV) -DECLARE_INSN(vfwnmacc_vf, MATCH_VFWNMACC_VF, MASK_VFWNMACC_VF) -DECLARE_INSN(vfwnmacc_vv, MATCH_VFWNMACC_VV, MASK_VFWNMACC_VV) -DECLARE_INSN(vfwnmsac_vf, MATCH_VFWNMSAC_VF, MASK_VFWNMSAC_VF) -DECLARE_INSN(vfwnmsac_vv, MATCH_VFWNMSAC_VV, MASK_VFWNMSAC_VV) -DECLARE_INSN(vfwredosum_vs, MATCH_VFWREDOSUM_VS, MASK_VFWREDOSUM_VS) -DECLARE_INSN(vfwredusum_vs, MATCH_VFWREDUSUM_VS, MASK_VFWREDUSUM_VS) -DECLARE_INSN(vfwsub_vf, MATCH_VFWSUB_VF, MASK_VFWSUB_VF) -DECLARE_INSN(vfwsub_vv, MATCH_VFWSUB_VV, MASK_VFWSUB_VV) -DECLARE_INSN(vfwsub_wf, MATCH_VFWSUB_WF, MASK_VFWSUB_WF) -DECLARE_INSN(vfwsub_wv, MATCH_VFWSUB_WV, MASK_VFWSUB_WV) -DECLARE_INSN(vghsh_vv, MATCH_VGHSH_VV, MASK_VGHSH_VV) -DECLARE_INSN(vgmul_vv, MATCH_VGMUL_VV, MASK_VGMUL_VV) -DECLARE_INSN(vid_v, MATCH_VID_V, MASK_VID_V) -DECLARE_INSN(viota_m, MATCH_VIOTA_M, MASK_VIOTA_M) -DECLARE_INSN(vl1re16_v, MATCH_VL1RE16_V, MASK_VL1RE16_V) -DECLARE_INSN(vl1re32_v, MATCH_VL1RE32_V, MASK_VL1RE32_V) -DECLARE_INSN(vl1re64_v, MATCH_VL1RE64_V, MASK_VL1RE64_V) -DECLARE_INSN(vl1re8_v, MATCH_VL1RE8_V, MASK_VL1RE8_V) -DECLARE_INSN(vl2re16_v, MATCH_VL2RE16_V, MASK_VL2RE16_V) -DECLARE_INSN(vl2re32_v, MATCH_VL2RE32_V, MASK_VL2RE32_V) -DECLARE_INSN(vl2re64_v, MATCH_VL2RE64_V, MASK_VL2RE64_V) -DECLARE_INSN(vl2re8_v, MATCH_VL2RE8_V, MASK_VL2RE8_V) -DECLARE_INSN(vl4re16_v, MATCH_VL4RE16_V, MASK_VL4RE16_V) -DECLARE_INSN(vl4re32_v, MATCH_VL4RE32_V, MASK_VL4RE32_V) -DECLARE_INSN(vl4re64_v, MATCH_VL4RE64_V, MASK_VL4RE64_V) -DECLARE_INSN(vl4re8_v, MATCH_VL4RE8_V, MASK_VL4RE8_V) -DECLARE_INSN(vl8re16_v, MATCH_VL8RE16_V, MASK_VL8RE16_V) -DECLARE_INSN(vl8re32_v, MATCH_VL8RE32_V, MASK_VL8RE32_V) -DECLARE_INSN(vl8re64_v, MATCH_VL8RE64_V, MASK_VL8RE64_V) -DECLARE_INSN(vl8re8_v, MATCH_VL8RE8_V, MASK_VL8RE8_V) -DECLARE_INSN(vle16_v, MATCH_VLE16_V, MASK_VLE16_V) -DECLARE_INSN(vle16ff_v, MATCH_VLE16FF_V, MASK_VLE16FF_V) -DECLARE_INSN(vle32_v, MATCH_VLE32_V, MASK_VLE32_V) -DECLARE_INSN(vle32ff_v, MATCH_VLE32FF_V, MASK_VLE32FF_V) -DECLARE_INSN(vle64_v, MATCH_VLE64_V, MASK_VLE64_V) -DECLARE_INSN(vle64ff_v, MATCH_VLE64FF_V, MASK_VLE64FF_V) -DECLARE_INSN(vle8_v, MATCH_VLE8_V, MASK_VLE8_V) -DECLARE_INSN(vle8ff_v, MATCH_VLE8FF_V, MASK_VLE8FF_V) -DECLARE_INSN(vlm_v, MATCH_VLM_V, MASK_VLM_V) -DECLARE_INSN(vloxei16_v, MATCH_VLOXEI16_V, MASK_VLOXEI16_V) -DECLARE_INSN(vloxei32_v, MATCH_VLOXEI32_V, MASK_VLOXEI32_V) -DECLARE_INSN(vloxei64_v, MATCH_VLOXEI64_V, MASK_VLOXEI64_V) -DECLARE_INSN(vloxei8_v, MATCH_VLOXEI8_V, MASK_VLOXEI8_V) -DECLARE_INSN(vloxseg2ei16_v, MATCH_VLOXSEG2EI16_V, MASK_VLOXSEG2EI16_V) -DECLARE_INSN(vloxseg2ei32_v, MATCH_VLOXSEG2EI32_V, MASK_VLOXSEG2EI32_V) -DECLARE_INSN(vloxseg2ei64_v, MATCH_VLOXSEG2EI64_V, MASK_VLOXSEG2EI64_V) -DECLARE_INSN(vloxseg2ei8_v, MATCH_VLOXSEG2EI8_V, MASK_VLOXSEG2EI8_V) -DECLARE_INSN(vloxseg3ei16_v, MATCH_VLOXSEG3EI16_V, MASK_VLOXSEG3EI16_V) -DECLARE_INSN(vloxseg3ei32_v, MATCH_VLOXSEG3EI32_V, MASK_VLOXSEG3EI32_V) -DECLARE_INSN(vloxseg3ei64_v, MATCH_VLOXSEG3EI64_V, MASK_VLOXSEG3EI64_V) -DECLARE_INSN(vloxseg3ei8_v, MATCH_VLOXSEG3EI8_V, MASK_VLOXSEG3EI8_V) -DECLARE_INSN(vloxseg4ei16_v, MATCH_VLOXSEG4EI16_V, MASK_VLOXSEG4EI16_V) -DECLARE_INSN(vloxseg4ei32_v, MATCH_VLOXSEG4EI32_V, MASK_VLOXSEG4EI32_V) -DECLARE_INSN(vloxseg4ei64_v, MATCH_VLOXSEG4EI64_V, MASK_VLOXSEG4EI64_V) -DECLARE_INSN(vloxseg4ei8_v, MATCH_VLOXSEG4EI8_V, MASK_VLOXSEG4EI8_V) -DECLARE_INSN(vloxseg5ei16_v, MATCH_VLOXSEG5EI16_V, MASK_VLOXSEG5EI16_V) -DECLARE_INSN(vloxseg5ei32_v, MATCH_VLOXSEG5EI32_V, MASK_VLOXSEG5EI32_V) -DECLARE_INSN(vloxseg5ei64_v, MATCH_VLOXSEG5EI64_V, MASK_VLOXSEG5EI64_V) -DECLARE_INSN(vloxseg5ei8_v, MATCH_VLOXSEG5EI8_V, MASK_VLOXSEG5EI8_V) -DECLARE_INSN(vloxseg6ei16_v, MATCH_VLOXSEG6EI16_V, MASK_VLOXSEG6EI16_V) -DECLARE_INSN(vloxseg6ei32_v, MATCH_VLOXSEG6EI32_V, MASK_VLOXSEG6EI32_V) -DECLARE_INSN(vloxseg6ei64_v, MATCH_VLOXSEG6EI64_V, MASK_VLOXSEG6EI64_V) -DECLARE_INSN(vloxseg6ei8_v, MATCH_VLOXSEG6EI8_V, MASK_VLOXSEG6EI8_V) -DECLARE_INSN(vloxseg7ei16_v, MATCH_VLOXSEG7EI16_V, MASK_VLOXSEG7EI16_V) -DECLARE_INSN(vloxseg7ei32_v, MATCH_VLOXSEG7EI32_V, MASK_VLOXSEG7EI32_V) -DECLARE_INSN(vloxseg7ei64_v, MATCH_VLOXSEG7EI64_V, MASK_VLOXSEG7EI64_V) -DECLARE_INSN(vloxseg7ei8_v, MATCH_VLOXSEG7EI8_V, MASK_VLOXSEG7EI8_V) -DECLARE_INSN(vloxseg8ei16_v, MATCH_VLOXSEG8EI16_V, MASK_VLOXSEG8EI16_V) -DECLARE_INSN(vloxseg8ei32_v, MATCH_VLOXSEG8EI32_V, MASK_VLOXSEG8EI32_V) -DECLARE_INSN(vloxseg8ei64_v, MATCH_VLOXSEG8EI64_V, MASK_VLOXSEG8EI64_V) -DECLARE_INSN(vloxseg8ei8_v, MATCH_VLOXSEG8EI8_V, MASK_VLOXSEG8EI8_V) -DECLARE_INSN(vlse16_v, MATCH_VLSE16_V, MASK_VLSE16_V) -DECLARE_INSN(vlse32_v, MATCH_VLSE32_V, MASK_VLSE32_V) -DECLARE_INSN(vlse64_v, MATCH_VLSE64_V, MASK_VLSE64_V) -DECLARE_INSN(vlse8_v, MATCH_VLSE8_V, MASK_VLSE8_V) -DECLARE_INSN(vlseg2e16_v, MATCH_VLSEG2E16_V, MASK_VLSEG2E16_V) -DECLARE_INSN(vlseg2e16ff_v, MATCH_VLSEG2E16FF_V, MASK_VLSEG2E16FF_V) -DECLARE_INSN(vlseg2e32_v, MATCH_VLSEG2E32_V, MASK_VLSEG2E32_V) -DECLARE_INSN(vlseg2e32ff_v, MATCH_VLSEG2E32FF_V, MASK_VLSEG2E32FF_V) -DECLARE_INSN(vlseg2e64_v, MATCH_VLSEG2E64_V, MASK_VLSEG2E64_V) -DECLARE_INSN(vlseg2e64ff_v, MATCH_VLSEG2E64FF_V, MASK_VLSEG2E64FF_V) -DECLARE_INSN(vlseg2e8_v, MATCH_VLSEG2E8_V, MASK_VLSEG2E8_V) -DECLARE_INSN(vlseg2e8ff_v, MATCH_VLSEG2E8FF_V, MASK_VLSEG2E8FF_V) -DECLARE_INSN(vlseg3e16_v, MATCH_VLSEG3E16_V, MASK_VLSEG3E16_V) -DECLARE_INSN(vlseg3e16ff_v, MATCH_VLSEG3E16FF_V, MASK_VLSEG3E16FF_V) -DECLARE_INSN(vlseg3e32_v, MATCH_VLSEG3E32_V, MASK_VLSEG3E32_V) -DECLARE_INSN(vlseg3e32ff_v, MATCH_VLSEG3E32FF_V, MASK_VLSEG3E32FF_V) -DECLARE_INSN(vlseg3e64_v, MATCH_VLSEG3E64_V, MASK_VLSEG3E64_V) -DECLARE_INSN(vlseg3e64ff_v, MATCH_VLSEG3E64FF_V, MASK_VLSEG3E64FF_V) -DECLARE_INSN(vlseg3e8_v, MATCH_VLSEG3E8_V, MASK_VLSEG3E8_V) -DECLARE_INSN(vlseg3e8ff_v, MATCH_VLSEG3E8FF_V, MASK_VLSEG3E8FF_V) -DECLARE_INSN(vlseg4e16_v, MATCH_VLSEG4E16_V, MASK_VLSEG4E16_V) -DECLARE_INSN(vlseg4e16ff_v, MATCH_VLSEG4E16FF_V, MASK_VLSEG4E16FF_V) -DECLARE_INSN(vlseg4e32_v, MATCH_VLSEG4E32_V, MASK_VLSEG4E32_V) -DECLARE_INSN(vlseg4e32ff_v, MATCH_VLSEG4E32FF_V, MASK_VLSEG4E32FF_V) -DECLARE_INSN(vlseg4e64_v, MATCH_VLSEG4E64_V, MASK_VLSEG4E64_V) -DECLARE_INSN(vlseg4e64ff_v, MATCH_VLSEG4E64FF_V, MASK_VLSEG4E64FF_V) -DECLARE_INSN(vlseg4e8_v, MATCH_VLSEG4E8_V, MASK_VLSEG4E8_V) -DECLARE_INSN(vlseg4e8ff_v, MATCH_VLSEG4E8FF_V, MASK_VLSEG4E8FF_V) -DECLARE_INSN(vlseg5e16_v, MATCH_VLSEG5E16_V, MASK_VLSEG5E16_V) -DECLARE_INSN(vlseg5e16ff_v, MATCH_VLSEG5E16FF_V, MASK_VLSEG5E16FF_V) -DECLARE_INSN(vlseg5e32_v, MATCH_VLSEG5E32_V, MASK_VLSEG5E32_V) -DECLARE_INSN(vlseg5e32ff_v, MATCH_VLSEG5E32FF_V, MASK_VLSEG5E32FF_V) -DECLARE_INSN(vlseg5e64_v, MATCH_VLSEG5E64_V, MASK_VLSEG5E64_V) -DECLARE_INSN(vlseg5e64ff_v, MATCH_VLSEG5E64FF_V, MASK_VLSEG5E64FF_V) -DECLARE_INSN(vlseg5e8_v, MATCH_VLSEG5E8_V, MASK_VLSEG5E8_V) -DECLARE_INSN(vlseg5e8ff_v, MATCH_VLSEG5E8FF_V, MASK_VLSEG5E8FF_V) -DECLARE_INSN(vlseg6e16_v, MATCH_VLSEG6E16_V, MASK_VLSEG6E16_V) -DECLARE_INSN(vlseg6e16ff_v, MATCH_VLSEG6E16FF_V, MASK_VLSEG6E16FF_V) -DECLARE_INSN(vlseg6e32_v, MATCH_VLSEG6E32_V, MASK_VLSEG6E32_V) -DECLARE_INSN(vlseg6e32ff_v, MATCH_VLSEG6E32FF_V, MASK_VLSEG6E32FF_V) -DECLARE_INSN(vlseg6e64_v, MATCH_VLSEG6E64_V, MASK_VLSEG6E64_V) -DECLARE_INSN(vlseg6e64ff_v, MATCH_VLSEG6E64FF_V, MASK_VLSEG6E64FF_V) -DECLARE_INSN(vlseg6e8_v, MATCH_VLSEG6E8_V, MASK_VLSEG6E8_V) -DECLARE_INSN(vlseg6e8ff_v, MATCH_VLSEG6E8FF_V, MASK_VLSEG6E8FF_V) -DECLARE_INSN(vlseg7e16_v, MATCH_VLSEG7E16_V, MASK_VLSEG7E16_V) -DECLARE_INSN(vlseg7e16ff_v, MATCH_VLSEG7E16FF_V, MASK_VLSEG7E16FF_V) -DECLARE_INSN(vlseg7e32_v, MATCH_VLSEG7E32_V, MASK_VLSEG7E32_V) -DECLARE_INSN(vlseg7e32ff_v, MATCH_VLSEG7E32FF_V, MASK_VLSEG7E32FF_V) -DECLARE_INSN(vlseg7e64_v, MATCH_VLSEG7E64_V, MASK_VLSEG7E64_V) -DECLARE_INSN(vlseg7e64ff_v, MATCH_VLSEG7E64FF_V, MASK_VLSEG7E64FF_V) -DECLARE_INSN(vlseg7e8_v, MATCH_VLSEG7E8_V, MASK_VLSEG7E8_V) -DECLARE_INSN(vlseg7e8ff_v, MATCH_VLSEG7E8FF_V, MASK_VLSEG7E8FF_V) -DECLARE_INSN(vlseg8e16_v, MATCH_VLSEG8E16_V, MASK_VLSEG8E16_V) -DECLARE_INSN(vlseg8e16ff_v, MATCH_VLSEG8E16FF_V, MASK_VLSEG8E16FF_V) -DECLARE_INSN(vlseg8e32_v, MATCH_VLSEG8E32_V, MASK_VLSEG8E32_V) -DECLARE_INSN(vlseg8e32ff_v, MATCH_VLSEG8E32FF_V, MASK_VLSEG8E32FF_V) -DECLARE_INSN(vlseg8e64_v, MATCH_VLSEG8E64_V, MASK_VLSEG8E64_V) -DECLARE_INSN(vlseg8e64ff_v, MATCH_VLSEG8E64FF_V, MASK_VLSEG8E64FF_V) -DECLARE_INSN(vlseg8e8_v, MATCH_VLSEG8E8_V, MASK_VLSEG8E8_V) -DECLARE_INSN(vlseg8e8ff_v, MATCH_VLSEG8E8FF_V, MASK_VLSEG8E8FF_V) -DECLARE_INSN(vlsseg2e16_v, MATCH_VLSSEG2E16_V, MASK_VLSSEG2E16_V) -DECLARE_INSN(vlsseg2e32_v, MATCH_VLSSEG2E32_V, MASK_VLSSEG2E32_V) -DECLARE_INSN(vlsseg2e64_v, MATCH_VLSSEG2E64_V, MASK_VLSSEG2E64_V) -DECLARE_INSN(vlsseg2e8_v, MATCH_VLSSEG2E8_V, MASK_VLSSEG2E8_V) -DECLARE_INSN(vlsseg3e16_v, MATCH_VLSSEG3E16_V, MASK_VLSSEG3E16_V) -DECLARE_INSN(vlsseg3e32_v, MATCH_VLSSEG3E32_V, MASK_VLSSEG3E32_V) -DECLARE_INSN(vlsseg3e64_v, MATCH_VLSSEG3E64_V, MASK_VLSSEG3E64_V) -DECLARE_INSN(vlsseg3e8_v, MATCH_VLSSEG3E8_V, MASK_VLSSEG3E8_V) -DECLARE_INSN(vlsseg4e16_v, MATCH_VLSSEG4E16_V, MASK_VLSSEG4E16_V) -DECLARE_INSN(vlsseg4e32_v, MATCH_VLSSEG4E32_V, MASK_VLSSEG4E32_V) -DECLARE_INSN(vlsseg4e64_v, MATCH_VLSSEG4E64_V, MASK_VLSSEG4E64_V) -DECLARE_INSN(vlsseg4e8_v, MATCH_VLSSEG4E8_V, MASK_VLSSEG4E8_V) -DECLARE_INSN(vlsseg5e16_v, MATCH_VLSSEG5E16_V, MASK_VLSSEG5E16_V) -DECLARE_INSN(vlsseg5e32_v, MATCH_VLSSEG5E32_V, MASK_VLSSEG5E32_V) -DECLARE_INSN(vlsseg5e64_v, MATCH_VLSSEG5E64_V, MASK_VLSSEG5E64_V) -DECLARE_INSN(vlsseg5e8_v, MATCH_VLSSEG5E8_V, MASK_VLSSEG5E8_V) -DECLARE_INSN(vlsseg6e16_v, MATCH_VLSSEG6E16_V, MASK_VLSSEG6E16_V) -DECLARE_INSN(vlsseg6e32_v, MATCH_VLSSEG6E32_V, MASK_VLSSEG6E32_V) -DECLARE_INSN(vlsseg6e64_v, MATCH_VLSSEG6E64_V, MASK_VLSSEG6E64_V) -DECLARE_INSN(vlsseg6e8_v, MATCH_VLSSEG6E8_V, MASK_VLSSEG6E8_V) -DECLARE_INSN(vlsseg7e16_v, MATCH_VLSSEG7E16_V, MASK_VLSSEG7E16_V) -DECLARE_INSN(vlsseg7e32_v, MATCH_VLSSEG7E32_V, MASK_VLSSEG7E32_V) -DECLARE_INSN(vlsseg7e64_v, MATCH_VLSSEG7E64_V, MASK_VLSSEG7E64_V) -DECLARE_INSN(vlsseg7e8_v, MATCH_VLSSEG7E8_V, MASK_VLSSEG7E8_V) -DECLARE_INSN(vlsseg8e16_v, MATCH_VLSSEG8E16_V, MASK_VLSSEG8E16_V) -DECLARE_INSN(vlsseg8e32_v, MATCH_VLSSEG8E32_V, MASK_VLSSEG8E32_V) -DECLARE_INSN(vlsseg8e64_v, MATCH_VLSSEG8E64_V, MASK_VLSSEG8E64_V) -DECLARE_INSN(vlsseg8e8_v, MATCH_VLSSEG8E8_V, MASK_VLSSEG8E8_V) -DECLARE_INSN(vluxei16_v, MATCH_VLUXEI16_V, MASK_VLUXEI16_V) -DECLARE_INSN(vluxei32_v, MATCH_VLUXEI32_V, MASK_VLUXEI32_V) -DECLARE_INSN(vluxei64_v, MATCH_VLUXEI64_V, MASK_VLUXEI64_V) -DECLARE_INSN(vluxei8_v, MATCH_VLUXEI8_V, MASK_VLUXEI8_V) -DECLARE_INSN(vluxseg2ei16_v, MATCH_VLUXSEG2EI16_V, MASK_VLUXSEG2EI16_V) -DECLARE_INSN(vluxseg2ei32_v, MATCH_VLUXSEG2EI32_V, MASK_VLUXSEG2EI32_V) -DECLARE_INSN(vluxseg2ei64_v, MATCH_VLUXSEG2EI64_V, MASK_VLUXSEG2EI64_V) -DECLARE_INSN(vluxseg2ei8_v, MATCH_VLUXSEG2EI8_V, MASK_VLUXSEG2EI8_V) -DECLARE_INSN(vluxseg3ei16_v, MATCH_VLUXSEG3EI16_V, MASK_VLUXSEG3EI16_V) -DECLARE_INSN(vluxseg3ei32_v, MATCH_VLUXSEG3EI32_V, MASK_VLUXSEG3EI32_V) -DECLARE_INSN(vluxseg3ei64_v, MATCH_VLUXSEG3EI64_V, MASK_VLUXSEG3EI64_V) -DECLARE_INSN(vluxseg3ei8_v, MATCH_VLUXSEG3EI8_V, MASK_VLUXSEG3EI8_V) -DECLARE_INSN(vluxseg4ei16_v, MATCH_VLUXSEG4EI16_V, MASK_VLUXSEG4EI16_V) -DECLARE_INSN(vluxseg4ei32_v, MATCH_VLUXSEG4EI32_V, MASK_VLUXSEG4EI32_V) -DECLARE_INSN(vluxseg4ei64_v, MATCH_VLUXSEG4EI64_V, MASK_VLUXSEG4EI64_V) -DECLARE_INSN(vluxseg4ei8_v, MATCH_VLUXSEG4EI8_V, MASK_VLUXSEG4EI8_V) -DECLARE_INSN(vluxseg5ei16_v, MATCH_VLUXSEG5EI16_V, MASK_VLUXSEG5EI16_V) -DECLARE_INSN(vluxseg5ei32_v, MATCH_VLUXSEG5EI32_V, MASK_VLUXSEG5EI32_V) -DECLARE_INSN(vluxseg5ei64_v, MATCH_VLUXSEG5EI64_V, MASK_VLUXSEG5EI64_V) -DECLARE_INSN(vluxseg5ei8_v, MATCH_VLUXSEG5EI8_V, MASK_VLUXSEG5EI8_V) -DECLARE_INSN(vluxseg6ei16_v, MATCH_VLUXSEG6EI16_V, MASK_VLUXSEG6EI16_V) -DECLARE_INSN(vluxseg6ei32_v, MATCH_VLUXSEG6EI32_V, MASK_VLUXSEG6EI32_V) -DECLARE_INSN(vluxseg6ei64_v, MATCH_VLUXSEG6EI64_V, MASK_VLUXSEG6EI64_V) -DECLARE_INSN(vluxseg6ei8_v, MATCH_VLUXSEG6EI8_V, MASK_VLUXSEG6EI8_V) -DECLARE_INSN(vluxseg7ei16_v, MATCH_VLUXSEG7EI16_V, MASK_VLUXSEG7EI16_V) -DECLARE_INSN(vluxseg7ei32_v, MATCH_VLUXSEG7EI32_V, MASK_VLUXSEG7EI32_V) -DECLARE_INSN(vluxseg7ei64_v, MATCH_VLUXSEG7EI64_V, MASK_VLUXSEG7EI64_V) -DECLARE_INSN(vluxseg7ei8_v, MATCH_VLUXSEG7EI8_V, MASK_VLUXSEG7EI8_V) -DECLARE_INSN(vluxseg8ei16_v, MATCH_VLUXSEG8EI16_V, MASK_VLUXSEG8EI16_V) -DECLARE_INSN(vluxseg8ei32_v, MATCH_VLUXSEG8EI32_V, MASK_VLUXSEG8EI32_V) -DECLARE_INSN(vluxseg8ei64_v, MATCH_VLUXSEG8EI64_V, MASK_VLUXSEG8EI64_V) -DECLARE_INSN(vluxseg8ei8_v, MATCH_VLUXSEG8EI8_V, MASK_VLUXSEG8EI8_V) -DECLARE_INSN(vmacc_vv, MATCH_VMACC_VV, MASK_VMACC_VV) -DECLARE_INSN(vmacc_vx, MATCH_VMACC_VX, MASK_VMACC_VX) -DECLARE_INSN(vmadc_vi, MATCH_VMADC_VI, MASK_VMADC_VI) -DECLARE_INSN(vmadc_vim, MATCH_VMADC_VIM, MASK_VMADC_VIM) -DECLARE_INSN(vmadc_vv, MATCH_VMADC_VV, MASK_VMADC_VV) -DECLARE_INSN(vmadc_vvm, MATCH_VMADC_VVM, MASK_VMADC_VVM) -DECLARE_INSN(vmadc_vx, MATCH_VMADC_VX, MASK_VMADC_VX) -DECLARE_INSN(vmadc_vxm, MATCH_VMADC_VXM, MASK_VMADC_VXM) -DECLARE_INSN(vmadd_vv, MATCH_VMADD_VV, MASK_VMADD_VV) -DECLARE_INSN(vmadd_vx, MATCH_VMADD_VX, MASK_VMADD_VX) -DECLARE_INSN(vmand_mm, MATCH_VMAND_MM, MASK_VMAND_MM) -DECLARE_INSN(vmandn_mm, MATCH_VMANDN_MM, MASK_VMANDN_MM) -DECLARE_INSN(vmax_vv, MATCH_VMAX_VV, MASK_VMAX_VV) -DECLARE_INSN(vmax_vx, MATCH_VMAX_VX, MASK_VMAX_VX) -DECLARE_INSN(vmaxu_vv, MATCH_VMAXU_VV, MASK_VMAXU_VV) -DECLARE_INSN(vmaxu_vx, MATCH_VMAXU_VX, MASK_VMAXU_VX) -DECLARE_INSN(vmerge_vim, MATCH_VMERGE_VIM, MASK_VMERGE_VIM) -DECLARE_INSN(vmerge_vvm, MATCH_VMERGE_VVM, MASK_VMERGE_VVM) -DECLARE_INSN(vmerge_vxm, MATCH_VMERGE_VXM, MASK_VMERGE_VXM) -DECLARE_INSN(vmfeq_vf, MATCH_VMFEQ_VF, MASK_VMFEQ_VF) -DECLARE_INSN(vmfeq_vv, MATCH_VMFEQ_VV, MASK_VMFEQ_VV) -DECLARE_INSN(vmfge_vf, MATCH_VMFGE_VF, MASK_VMFGE_VF) -DECLARE_INSN(vmfgt_vf, MATCH_VMFGT_VF, MASK_VMFGT_VF) -DECLARE_INSN(vmfle_vf, MATCH_VMFLE_VF, MASK_VMFLE_VF) -DECLARE_INSN(vmfle_vv, MATCH_VMFLE_VV, MASK_VMFLE_VV) -DECLARE_INSN(vmflt_vf, MATCH_VMFLT_VF, MASK_VMFLT_VF) -DECLARE_INSN(vmflt_vv, MATCH_VMFLT_VV, MASK_VMFLT_VV) -DECLARE_INSN(vmfne_vf, MATCH_VMFNE_VF, MASK_VMFNE_VF) -DECLARE_INSN(vmfne_vv, MATCH_VMFNE_VV, MASK_VMFNE_VV) -DECLARE_INSN(vmin_vv, MATCH_VMIN_VV, MASK_VMIN_VV) -DECLARE_INSN(vmin_vx, MATCH_VMIN_VX, MASK_VMIN_VX) -DECLARE_INSN(vminu_vv, MATCH_VMINU_VV, MASK_VMINU_VV) -DECLARE_INSN(vminu_vx, MATCH_VMINU_VX, MASK_VMINU_VX) -DECLARE_INSN(vmnand_mm, MATCH_VMNAND_MM, MASK_VMNAND_MM) -DECLARE_INSN(vmnor_mm, MATCH_VMNOR_MM, MASK_VMNOR_MM) -DECLARE_INSN(vmor_mm, MATCH_VMOR_MM, MASK_VMOR_MM) -DECLARE_INSN(vmorn_mm, MATCH_VMORN_MM, MASK_VMORN_MM) -DECLARE_INSN(vmsbc_vv, MATCH_VMSBC_VV, MASK_VMSBC_VV) -DECLARE_INSN(vmsbc_vvm, MATCH_VMSBC_VVM, MASK_VMSBC_VVM) -DECLARE_INSN(vmsbc_vx, MATCH_VMSBC_VX, MASK_VMSBC_VX) -DECLARE_INSN(vmsbc_vxm, MATCH_VMSBC_VXM, MASK_VMSBC_VXM) -DECLARE_INSN(vmsbf_m, MATCH_VMSBF_M, MASK_VMSBF_M) -DECLARE_INSN(vmseq_vi, MATCH_VMSEQ_VI, MASK_VMSEQ_VI) -DECLARE_INSN(vmseq_vv, MATCH_VMSEQ_VV, MASK_VMSEQ_VV) -DECLARE_INSN(vmseq_vx, MATCH_VMSEQ_VX, MASK_VMSEQ_VX) -DECLARE_INSN(vmsgt_vi, MATCH_VMSGT_VI, MASK_VMSGT_VI) -DECLARE_INSN(vmsgt_vx, MATCH_VMSGT_VX, MASK_VMSGT_VX) -DECLARE_INSN(vmsgtu_vi, MATCH_VMSGTU_VI, MASK_VMSGTU_VI) -DECLARE_INSN(vmsgtu_vx, MATCH_VMSGTU_VX, MASK_VMSGTU_VX) -DECLARE_INSN(vmsif_m, MATCH_VMSIF_M, MASK_VMSIF_M) -DECLARE_INSN(vmsle_vi, MATCH_VMSLE_VI, MASK_VMSLE_VI) -DECLARE_INSN(vmsle_vv, MATCH_VMSLE_VV, MASK_VMSLE_VV) -DECLARE_INSN(vmsle_vx, MATCH_VMSLE_VX, MASK_VMSLE_VX) -DECLARE_INSN(vmsleu_vi, MATCH_VMSLEU_VI, MASK_VMSLEU_VI) -DECLARE_INSN(vmsleu_vv, MATCH_VMSLEU_VV, MASK_VMSLEU_VV) -DECLARE_INSN(vmsleu_vx, MATCH_VMSLEU_VX, MASK_VMSLEU_VX) -DECLARE_INSN(vmslt_vv, MATCH_VMSLT_VV, MASK_VMSLT_VV) -DECLARE_INSN(vmslt_vx, MATCH_VMSLT_VX, MASK_VMSLT_VX) -DECLARE_INSN(vmsltu_vv, MATCH_VMSLTU_VV, MASK_VMSLTU_VV) -DECLARE_INSN(vmsltu_vx, MATCH_VMSLTU_VX, MASK_VMSLTU_VX) -DECLARE_INSN(vmsne_vi, MATCH_VMSNE_VI, MASK_VMSNE_VI) -DECLARE_INSN(vmsne_vv, MATCH_VMSNE_VV, MASK_VMSNE_VV) -DECLARE_INSN(vmsne_vx, MATCH_VMSNE_VX, MASK_VMSNE_VX) -DECLARE_INSN(vmsof_m, MATCH_VMSOF_M, MASK_VMSOF_M) -DECLARE_INSN(vmul_vv, MATCH_VMUL_VV, MASK_VMUL_VV) -DECLARE_INSN(vmul_vx, MATCH_VMUL_VX, MASK_VMUL_VX) -DECLARE_INSN(vmulh_vv, MATCH_VMULH_VV, MASK_VMULH_VV) -DECLARE_INSN(vmulh_vx, MATCH_VMULH_VX, MASK_VMULH_VX) -DECLARE_INSN(vmulhsu_vv, MATCH_VMULHSU_VV, MASK_VMULHSU_VV) -DECLARE_INSN(vmulhsu_vx, MATCH_VMULHSU_VX, MASK_VMULHSU_VX) -DECLARE_INSN(vmulhu_vv, MATCH_VMULHU_VV, MASK_VMULHU_VV) -DECLARE_INSN(vmulhu_vx, MATCH_VMULHU_VX, MASK_VMULHU_VX) -DECLARE_INSN(vmv1r_v, MATCH_VMV1R_V, MASK_VMV1R_V) -DECLARE_INSN(vmv2r_v, MATCH_VMV2R_V, MASK_VMV2R_V) -DECLARE_INSN(vmv4r_v, MATCH_VMV4R_V, MASK_VMV4R_V) -DECLARE_INSN(vmv8r_v, MATCH_VMV8R_V, MASK_VMV8R_V) -DECLARE_INSN(vmv_s_x, MATCH_VMV_S_X, MASK_VMV_S_X) -DECLARE_INSN(vmv_v_i, MATCH_VMV_V_I, MASK_VMV_V_I) -DECLARE_INSN(vmv_v_v, MATCH_VMV_V_V, MASK_VMV_V_V) -DECLARE_INSN(vmv_v_x, MATCH_VMV_V_X, MASK_VMV_V_X) -DECLARE_INSN(vmv_x_s, MATCH_VMV_X_S, MASK_VMV_X_S) -DECLARE_INSN(vmxnor_mm, MATCH_VMXNOR_MM, MASK_VMXNOR_MM) -DECLARE_INSN(vmxor_mm, MATCH_VMXOR_MM, MASK_VMXOR_MM) -DECLARE_INSN(vnclip_wi, MATCH_VNCLIP_WI, MASK_VNCLIP_WI) -DECLARE_INSN(vnclip_wv, MATCH_VNCLIP_WV, MASK_VNCLIP_WV) -DECLARE_INSN(vnclip_wx, MATCH_VNCLIP_WX, MASK_VNCLIP_WX) -DECLARE_INSN(vnclipu_wi, MATCH_VNCLIPU_WI, MASK_VNCLIPU_WI) -DECLARE_INSN(vnclipu_wv, MATCH_VNCLIPU_WV, MASK_VNCLIPU_WV) -DECLARE_INSN(vnclipu_wx, MATCH_VNCLIPU_WX, MASK_VNCLIPU_WX) -DECLARE_INSN(vnmsac_vv, MATCH_VNMSAC_VV, MASK_VNMSAC_VV) -DECLARE_INSN(vnmsac_vx, MATCH_VNMSAC_VX, MASK_VNMSAC_VX) -DECLARE_INSN(vnmsub_vv, MATCH_VNMSUB_VV, MASK_VNMSUB_VV) -DECLARE_INSN(vnmsub_vx, MATCH_VNMSUB_VX, MASK_VNMSUB_VX) -DECLARE_INSN(vnsra_wi, MATCH_VNSRA_WI, MASK_VNSRA_WI) -DECLARE_INSN(vnsra_wv, MATCH_VNSRA_WV, MASK_VNSRA_WV) -DECLARE_INSN(vnsra_wx, MATCH_VNSRA_WX, MASK_VNSRA_WX) -DECLARE_INSN(vnsrl_wi, MATCH_VNSRL_WI, MASK_VNSRL_WI) -DECLARE_INSN(vnsrl_wv, MATCH_VNSRL_WV, MASK_VNSRL_WV) -DECLARE_INSN(vnsrl_wx, MATCH_VNSRL_WX, MASK_VNSRL_WX) -DECLARE_INSN(vor_vi, MATCH_VOR_VI, MASK_VOR_VI) -DECLARE_INSN(vor_vv, MATCH_VOR_VV, MASK_VOR_VV) -DECLARE_INSN(vor_vx, MATCH_VOR_VX, MASK_VOR_VX) -DECLARE_INSN(vredand_vs, MATCH_VREDAND_VS, MASK_VREDAND_VS) -DECLARE_INSN(vredmax_vs, MATCH_VREDMAX_VS, MASK_VREDMAX_VS) -DECLARE_INSN(vredmaxu_vs, MATCH_VREDMAXU_VS, MASK_VREDMAXU_VS) -DECLARE_INSN(vredmin_vs, MATCH_VREDMIN_VS, MASK_VREDMIN_VS) -DECLARE_INSN(vredminu_vs, MATCH_VREDMINU_VS, MASK_VREDMINU_VS) -DECLARE_INSN(vredor_vs, MATCH_VREDOR_VS, MASK_VREDOR_VS) -DECLARE_INSN(vredsum_vs, MATCH_VREDSUM_VS, MASK_VREDSUM_VS) -DECLARE_INSN(vredxor_vs, MATCH_VREDXOR_VS, MASK_VREDXOR_VS) -DECLARE_INSN(vrem_vv, MATCH_VREM_VV, MASK_VREM_VV) -DECLARE_INSN(vrem_vx, MATCH_VREM_VX, MASK_VREM_VX) -DECLARE_INSN(vremu_vv, MATCH_VREMU_VV, MASK_VREMU_VV) -DECLARE_INSN(vremu_vx, MATCH_VREMU_VX, MASK_VREMU_VX) -DECLARE_INSN(vrev8_v, MATCH_VREV8_V, MASK_VREV8_V) -DECLARE_INSN(vrgather_vi, MATCH_VRGATHER_VI, MASK_VRGATHER_VI) -DECLARE_INSN(vrgather_vv, MATCH_VRGATHER_VV, MASK_VRGATHER_VV) -DECLARE_INSN(vrgather_vx, MATCH_VRGATHER_VX, MASK_VRGATHER_VX) -DECLARE_INSN(vrgatherei16_vv, MATCH_VRGATHEREI16_VV, MASK_VRGATHEREI16_VV) -DECLARE_INSN(vrol_vv, MATCH_VROL_VV, MASK_VROL_VV) -DECLARE_INSN(vrol_vx, MATCH_VROL_VX, MASK_VROL_VX) -DECLARE_INSN(vror_vi, MATCH_VROR_VI, MASK_VROR_VI) -DECLARE_INSN(vror_vv, MATCH_VROR_VV, MASK_VROR_VV) -DECLARE_INSN(vror_vx, MATCH_VROR_VX, MASK_VROR_VX) -DECLARE_INSN(vrsub_vi, MATCH_VRSUB_VI, MASK_VRSUB_VI) -DECLARE_INSN(vrsub_vx, MATCH_VRSUB_VX, MASK_VRSUB_VX) -DECLARE_INSN(vs1r_v, MATCH_VS1R_V, MASK_VS1R_V) -DECLARE_INSN(vs2r_v, MATCH_VS2R_V, MASK_VS2R_V) -DECLARE_INSN(vs4r_v, MATCH_VS4R_V, MASK_VS4R_V) -DECLARE_INSN(vs8r_v, MATCH_VS8R_V, MASK_VS8R_V) -DECLARE_INSN(vsadd_vi, MATCH_VSADD_VI, MASK_VSADD_VI) -DECLARE_INSN(vsadd_vv, MATCH_VSADD_VV, MASK_VSADD_VV) -DECLARE_INSN(vsadd_vx, MATCH_VSADD_VX, MASK_VSADD_VX) -DECLARE_INSN(vsaddu_vi, MATCH_VSADDU_VI, MASK_VSADDU_VI) -DECLARE_INSN(vsaddu_vv, MATCH_VSADDU_VV, MASK_VSADDU_VV) -DECLARE_INSN(vsaddu_vx, MATCH_VSADDU_VX, MASK_VSADDU_VX) -DECLARE_INSN(vsbc_vvm, MATCH_VSBC_VVM, MASK_VSBC_VVM) -DECLARE_INSN(vsbc_vxm, MATCH_VSBC_VXM, MASK_VSBC_VXM) -DECLARE_INSN(vse16_v, MATCH_VSE16_V, MASK_VSE16_V) -DECLARE_INSN(vse32_v, MATCH_VSE32_V, MASK_VSE32_V) -DECLARE_INSN(vse64_v, MATCH_VSE64_V, MASK_VSE64_V) -DECLARE_INSN(vse8_v, MATCH_VSE8_V, MASK_VSE8_V) -DECLARE_INSN(vsetivli, MATCH_VSETIVLI, MASK_VSETIVLI) -DECLARE_INSN(vsetvl, MATCH_VSETVL, MASK_VSETVL) -DECLARE_INSN(vsetvli, MATCH_VSETVLI, MASK_VSETVLI) -DECLARE_INSN(vsext_vf2, MATCH_VSEXT_VF2, MASK_VSEXT_VF2) -DECLARE_INSN(vsext_vf4, MATCH_VSEXT_VF4, MASK_VSEXT_VF4) -DECLARE_INSN(vsext_vf8, MATCH_VSEXT_VF8, MASK_VSEXT_VF8) -DECLARE_INSN(vsha2ch_vv, MATCH_VSHA2CH_VV, MASK_VSHA2CH_VV) -DECLARE_INSN(vsha2cl_vv, MATCH_VSHA2CL_VV, MASK_VSHA2CL_VV) -DECLARE_INSN(vsha2ms_vv, MATCH_VSHA2MS_VV, MASK_VSHA2MS_VV) -DECLARE_INSN(vslide1down_vx, MATCH_VSLIDE1DOWN_VX, MASK_VSLIDE1DOWN_VX) -DECLARE_INSN(vslide1up_vx, MATCH_VSLIDE1UP_VX, MASK_VSLIDE1UP_VX) -DECLARE_INSN(vslidedown_vi, MATCH_VSLIDEDOWN_VI, MASK_VSLIDEDOWN_VI) -DECLARE_INSN(vslidedown_vx, MATCH_VSLIDEDOWN_VX, MASK_VSLIDEDOWN_VX) -DECLARE_INSN(vslideup_vi, MATCH_VSLIDEUP_VI, MASK_VSLIDEUP_VI) -DECLARE_INSN(vslideup_vx, MATCH_VSLIDEUP_VX, MASK_VSLIDEUP_VX) -DECLARE_INSN(vsll_vi, MATCH_VSLL_VI, MASK_VSLL_VI) -DECLARE_INSN(vsll_vv, MATCH_VSLL_VV, MASK_VSLL_VV) -DECLARE_INSN(vsll_vx, MATCH_VSLL_VX, MASK_VSLL_VX) -DECLARE_INSN(vsm3c_vi, MATCH_VSM3C_VI, MASK_VSM3C_VI) -DECLARE_INSN(vsm3me_vv, MATCH_VSM3ME_VV, MASK_VSM3ME_VV) -DECLARE_INSN(vsm4k_vi, MATCH_VSM4K_VI, MASK_VSM4K_VI) -DECLARE_INSN(vsm4r_vs, MATCH_VSM4R_VS, MASK_VSM4R_VS) -DECLARE_INSN(vsm4r_vv, MATCH_VSM4R_VV, MASK_VSM4R_VV) -DECLARE_INSN(vsm_v, MATCH_VSM_V, MASK_VSM_V) -DECLARE_INSN(vsmul_vv, MATCH_VSMUL_VV, MASK_VSMUL_VV) -DECLARE_INSN(vsmul_vx, MATCH_VSMUL_VX, MASK_VSMUL_VX) -DECLARE_INSN(vsoxei16_v, MATCH_VSOXEI16_V, MASK_VSOXEI16_V) -DECLARE_INSN(vsoxei32_v, MATCH_VSOXEI32_V, MASK_VSOXEI32_V) -DECLARE_INSN(vsoxei64_v, MATCH_VSOXEI64_V, MASK_VSOXEI64_V) -DECLARE_INSN(vsoxei8_v, MATCH_VSOXEI8_V, MASK_VSOXEI8_V) -DECLARE_INSN(vsoxseg2ei16_v, MATCH_VSOXSEG2EI16_V, MASK_VSOXSEG2EI16_V) -DECLARE_INSN(vsoxseg2ei32_v, MATCH_VSOXSEG2EI32_V, MASK_VSOXSEG2EI32_V) -DECLARE_INSN(vsoxseg2ei64_v, MATCH_VSOXSEG2EI64_V, MASK_VSOXSEG2EI64_V) -DECLARE_INSN(vsoxseg2ei8_v, MATCH_VSOXSEG2EI8_V, MASK_VSOXSEG2EI8_V) -DECLARE_INSN(vsoxseg3ei16_v, MATCH_VSOXSEG3EI16_V, MASK_VSOXSEG3EI16_V) -DECLARE_INSN(vsoxseg3ei32_v, MATCH_VSOXSEG3EI32_V, MASK_VSOXSEG3EI32_V) -DECLARE_INSN(vsoxseg3ei64_v, MATCH_VSOXSEG3EI64_V, MASK_VSOXSEG3EI64_V) -DECLARE_INSN(vsoxseg3ei8_v, MATCH_VSOXSEG3EI8_V, MASK_VSOXSEG3EI8_V) -DECLARE_INSN(vsoxseg4ei16_v, MATCH_VSOXSEG4EI16_V, MASK_VSOXSEG4EI16_V) -DECLARE_INSN(vsoxseg4ei32_v, MATCH_VSOXSEG4EI32_V, MASK_VSOXSEG4EI32_V) -DECLARE_INSN(vsoxseg4ei64_v, MATCH_VSOXSEG4EI64_V, MASK_VSOXSEG4EI64_V) -DECLARE_INSN(vsoxseg4ei8_v, MATCH_VSOXSEG4EI8_V, MASK_VSOXSEG4EI8_V) -DECLARE_INSN(vsoxseg5ei16_v, MATCH_VSOXSEG5EI16_V, MASK_VSOXSEG5EI16_V) -DECLARE_INSN(vsoxseg5ei32_v, MATCH_VSOXSEG5EI32_V, MASK_VSOXSEG5EI32_V) -DECLARE_INSN(vsoxseg5ei64_v, MATCH_VSOXSEG5EI64_V, MASK_VSOXSEG5EI64_V) -DECLARE_INSN(vsoxseg5ei8_v, MATCH_VSOXSEG5EI8_V, MASK_VSOXSEG5EI8_V) -DECLARE_INSN(vsoxseg6ei16_v, MATCH_VSOXSEG6EI16_V, MASK_VSOXSEG6EI16_V) -DECLARE_INSN(vsoxseg6ei32_v, MATCH_VSOXSEG6EI32_V, MASK_VSOXSEG6EI32_V) -DECLARE_INSN(vsoxseg6ei64_v, MATCH_VSOXSEG6EI64_V, MASK_VSOXSEG6EI64_V) -DECLARE_INSN(vsoxseg6ei8_v, MATCH_VSOXSEG6EI8_V, MASK_VSOXSEG6EI8_V) -DECLARE_INSN(vsoxseg7ei16_v, MATCH_VSOXSEG7EI16_V, MASK_VSOXSEG7EI16_V) -DECLARE_INSN(vsoxseg7ei32_v, MATCH_VSOXSEG7EI32_V, MASK_VSOXSEG7EI32_V) -DECLARE_INSN(vsoxseg7ei64_v, MATCH_VSOXSEG7EI64_V, MASK_VSOXSEG7EI64_V) -DECLARE_INSN(vsoxseg7ei8_v, MATCH_VSOXSEG7EI8_V, MASK_VSOXSEG7EI8_V) -DECLARE_INSN(vsoxseg8ei16_v, MATCH_VSOXSEG8EI16_V, MASK_VSOXSEG8EI16_V) -DECLARE_INSN(vsoxseg8ei32_v, MATCH_VSOXSEG8EI32_V, MASK_VSOXSEG8EI32_V) -DECLARE_INSN(vsoxseg8ei64_v, MATCH_VSOXSEG8EI64_V, MASK_VSOXSEG8EI64_V) -DECLARE_INSN(vsoxseg8ei8_v, MATCH_VSOXSEG8EI8_V, MASK_VSOXSEG8EI8_V) -DECLARE_INSN(vsra_vi, MATCH_VSRA_VI, MASK_VSRA_VI) -DECLARE_INSN(vsra_vv, MATCH_VSRA_VV, MASK_VSRA_VV) -DECLARE_INSN(vsra_vx, MATCH_VSRA_VX, MASK_VSRA_VX) -DECLARE_INSN(vsrl_vi, MATCH_VSRL_VI, MASK_VSRL_VI) -DECLARE_INSN(vsrl_vv, MATCH_VSRL_VV, MASK_VSRL_VV) -DECLARE_INSN(vsrl_vx, MATCH_VSRL_VX, MASK_VSRL_VX) -DECLARE_INSN(vsse16_v, MATCH_VSSE16_V, MASK_VSSE16_V) -DECLARE_INSN(vsse32_v, MATCH_VSSE32_V, MASK_VSSE32_V) -DECLARE_INSN(vsse64_v, MATCH_VSSE64_V, MASK_VSSE64_V) -DECLARE_INSN(vsse8_v, MATCH_VSSE8_V, MASK_VSSE8_V) -DECLARE_INSN(vsseg2e16_v, MATCH_VSSEG2E16_V, MASK_VSSEG2E16_V) -DECLARE_INSN(vsseg2e32_v, MATCH_VSSEG2E32_V, MASK_VSSEG2E32_V) -DECLARE_INSN(vsseg2e64_v, MATCH_VSSEG2E64_V, MASK_VSSEG2E64_V) -DECLARE_INSN(vsseg2e8_v, MATCH_VSSEG2E8_V, MASK_VSSEG2E8_V) -DECLARE_INSN(vsseg3e16_v, MATCH_VSSEG3E16_V, MASK_VSSEG3E16_V) -DECLARE_INSN(vsseg3e32_v, MATCH_VSSEG3E32_V, MASK_VSSEG3E32_V) -DECLARE_INSN(vsseg3e64_v, MATCH_VSSEG3E64_V, MASK_VSSEG3E64_V) -DECLARE_INSN(vsseg3e8_v, MATCH_VSSEG3E8_V, MASK_VSSEG3E8_V) -DECLARE_INSN(vsseg4e16_v, MATCH_VSSEG4E16_V, MASK_VSSEG4E16_V) -DECLARE_INSN(vsseg4e32_v, MATCH_VSSEG4E32_V, MASK_VSSEG4E32_V) -DECLARE_INSN(vsseg4e64_v, MATCH_VSSEG4E64_V, MASK_VSSEG4E64_V) -DECLARE_INSN(vsseg4e8_v, MATCH_VSSEG4E8_V, MASK_VSSEG4E8_V) -DECLARE_INSN(vsseg5e16_v, MATCH_VSSEG5E16_V, MASK_VSSEG5E16_V) -DECLARE_INSN(vsseg5e32_v, MATCH_VSSEG5E32_V, MASK_VSSEG5E32_V) -DECLARE_INSN(vsseg5e64_v, MATCH_VSSEG5E64_V, MASK_VSSEG5E64_V) -DECLARE_INSN(vsseg5e8_v, MATCH_VSSEG5E8_V, MASK_VSSEG5E8_V) -DECLARE_INSN(vsseg6e16_v, MATCH_VSSEG6E16_V, MASK_VSSEG6E16_V) -DECLARE_INSN(vsseg6e32_v, MATCH_VSSEG6E32_V, MASK_VSSEG6E32_V) -DECLARE_INSN(vsseg6e64_v, MATCH_VSSEG6E64_V, MASK_VSSEG6E64_V) -DECLARE_INSN(vsseg6e8_v, MATCH_VSSEG6E8_V, MASK_VSSEG6E8_V) -DECLARE_INSN(vsseg7e16_v, MATCH_VSSEG7E16_V, MASK_VSSEG7E16_V) -DECLARE_INSN(vsseg7e32_v, MATCH_VSSEG7E32_V, MASK_VSSEG7E32_V) -DECLARE_INSN(vsseg7e64_v, MATCH_VSSEG7E64_V, MASK_VSSEG7E64_V) -DECLARE_INSN(vsseg7e8_v, MATCH_VSSEG7E8_V, MASK_VSSEG7E8_V) -DECLARE_INSN(vsseg8e16_v, MATCH_VSSEG8E16_V, MASK_VSSEG8E16_V) -DECLARE_INSN(vsseg8e32_v, MATCH_VSSEG8E32_V, MASK_VSSEG8E32_V) -DECLARE_INSN(vsseg8e64_v, MATCH_VSSEG8E64_V, MASK_VSSEG8E64_V) -DECLARE_INSN(vsseg8e8_v, MATCH_VSSEG8E8_V, MASK_VSSEG8E8_V) -DECLARE_INSN(vssra_vi, MATCH_VSSRA_VI, MASK_VSSRA_VI) -DECLARE_INSN(vssra_vv, MATCH_VSSRA_VV, MASK_VSSRA_VV) -DECLARE_INSN(vssra_vx, MATCH_VSSRA_VX, MASK_VSSRA_VX) -DECLARE_INSN(vssrl_vi, MATCH_VSSRL_VI, MASK_VSSRL_VI) -DECLARE_INSN(vssrl_vv, MATCH_VSSRL_VV, MASK_VSSRL_VV) -DECLARE_INSN(vssrl_vx, MATCH_VSSRL_VX, MASK_VSSRL_VX) -DECLARE_INSN(vssseg2e16_v, MATCH_VSSSEG2E16_V, MASK_VSSSEG2E16_V) -DECLARE_INSN(vssseg2e32_v, MATCH_VSSSEG2E32_V, MASK_VSSSEG2E32_V) -DECLARE_INSN(vssseg2e64_v, MATCH_VSSSEG2E64_V, MASK_VSSSEG2E64_V) -DECLARE_INSN(vssseg2e8_v, MATCH_VSSSEG2E8_V, MASK_VSSSEG2E8_V) -DECLARE_INSN(vssseg3e16_v, MATCH_VSSSEG3E16_V, MASK_VSSSEG3E16_V) -DECLARE_INSN(vssseg3e32_v, MATCH_VSSSEG3E32_V, MASK_VSSSEG3E32_V) -DECLARE_INSN(vssseg3e64_v, MATCH_VSSSEG3E64_V, MASK_VSSSEG3E64_V) -DECLARE_INSN(vssseg3e8_v, MATCH_VSSSEG3E8_V, MASK_VSSSEG3E8_V) -DECLARE_INSN(vssseg4e16_v, MATCH_VSSSEG4E16_V, MASK_VSSSEG4E16_V) -DECLARE_INSN(vssseg4e32_v, MATCH_VSSSEG4E32_V, MASK_VSSSEG4E32_V) -DECLARE_INSN(vssseg4e64_v, MATCH_VSSSEG4E64_V, MASK_VSSSEG4E64_V) -DECLARE_INSN(vssseg4e8_v, MATCH_VSSSEG4E8_V, MASK_VSSSEG4E8_V) -DECLARE_INSN(vssseg5e16_v, MATCH_VSSSEG5E16_V, MASK_VSSSEG5E16_V) -DECLARE_INSN(vssseg5e32_v, MATCH_VSSSEG5E32_V, MASK_VSSSEG5E32_V) -DECLARE_INSN(vssseg5e64_v, MATCH_VSSSEG5E64_V, MASK_VSSSEG5E64_V) -DECLARE_INSN(vssseg5e8_v, MATCH_VSSSEG5E8_V, MASK_VSSSEG5E8_V) -DECLARE_INSN(vssseg6e16_v, MATCH_VSSSEG6E16_V, MASK_VSSSEG6E16_V) -DECLARE_INSN(vssseg6e32_v, MATCH_VSSSEG6E32_V, MASK_VSSSEG6E32_V) -DECLARE_INSN(vssseg6e64_v, MATCH_VSSSEG6E64_V, MASK_VSSSEG6E64_V) -DECLARE_INSN(vssseg6e8_v, MATCH_VSSSEG6E8_V, MASK_VSSSEG6E8_V) -DECLARE_INSN(vssseg7e16_v, MATCH_VSSSEG7E16_V, MASK_VSSSEG7E16_V) -DECLARE_INSN(vssseg7e32_v, MATCH_VSSSEG7E32_V, MASK_VSSSEG7E32_V) -DECLARE_INSN(vssseg7e64_v, MATCH_VSSSEG7E64_V, MASK_VSSSEG7E64_V) -DECLARE_INSN(vssseg7e8_v, MATCH_VSSSEG7E8_V, MASK_VSSSEG7E8_V) -DECLARE_INSN(vssseg8e16_v, MATCH_VSSSEG8E16_V, MASK_VSSSEG8E16_V) -DECLARE_INSN(vssseg8e32_v, MATCH_VSSSEG8E32_V, MASK_VSSSEG8E32_V) -DECLARE_INSN(vssseg8e64_v, MATCH_VSSSEG8E64_V, MASK_VSSSEG8E64_V) -DECLARE_INSN(vssseg8e8_v, MATCH_VSSSEG8E8_V, MASK_VSSSEG8E8_V) -DECLARE_INSN(vssub_vv, MATCH_VSSUB_VV, MASK_VSSUB_VV) -DECLARE_INSN(vssub_vx, MATCH_VSSUB_VX, MASK_VSSUB_VX) -DECLARE_INSN(vssubu_vv, MATCH_VSSUBU_VV, MASK_VSSUBU_VV) -DECLARE_INSN(vssubu_vx, MATCH_VSSUBU_VX, MASK_VSSUBU_VX) -DECLARE_INSN(vsub_vv, MATCH_VSUB_VV, MASK_VSUB_VV) -DECLARE_INSN(vsub_vx, MATCH_VSUB_VX, MASK_VSUB_VX) -DECLARE_INSN(vsuxei16_v, MATCH_VSUXEI16_V, MASK_VSUXEI16_V) -DECLARE_INSN(vsuxei32_v, MATCH_VSUXEI32_V, MASK_VSUXEI32_V) -DECLARE_INSN(vsuxei64_v, MATCH_VSUXEI64_V, MASK_VSUXEI64_V) -DECLARE_INSN(vsuxei8_v, MATCH_VSUXEI8_V, MASK_VSUXEI8_V) -DECLARE_INSN(vsuxseg2ei16_v, MATCH_VSUXSEG2EI16_V, MASK_VSUXSEG2EI16_V) -DECLARE_INSN(vsuxseg2ei32_v, MATCH_VSUXSEG2EI32_V, MASK_VSUXSEG2EI32_V) -DECLARE_INSN(vsuxseg2ei64_v, MATCH_VSUXSEG2EI64_V, MASK_VSUXSEG2EI64_V) -DECLARE_INSN(vsuxseg2ei8_v, MATCH_VSUXSEG2EI8_V, MASK_VSUXSEG2EI8_V) -DECLARE_INSN(vsuxseg3ei16_v, MATCH_VSUXSEG3EI16_V, MASK_VSUXSEG3EI16_V) -DECLARE_INSN(vsuxseg3ei32_v, MATCH_VSUXSEG3EI32_V, MASK_VSUXSEG3EI32_V) -DECLARE_INSN(vsuxseg3ei64_v, MATCH_VSUXSEG3EI64_V, MASK_VSUXSEG3EI64_V) -DECLARE_INSN(vsuxseg3ei8_v, MATCH_VSUXSEG3EI8_V, MASK_VSUXSEG3EI8_V) -DECLARE_INSN(vsuxseg4ei16_v, MATCH_VSUXSEG4EI16_V, MASK_VSUXSEG4EI16_V) -DECLARE_INSN(vsuxseg4ei32_v, MATCH_VSUXSEG4EI32_V, MASK_VSUXSEG4EI32_V) -DECLARE_INSN(vsuxseg4ei64_v, MATCH_VSUXSEG4EI64_V, MASK_VSUXSEG4EI64_V) -DECLARE_INSN(vsuxseg4ei8_v, MATCH_VSUXSEG4EI8_V, MASK_VSUXSEG4EI8_V) -DECLARE_INSN(vsuxseg5ei16_v, MATCH_VSUXSEG5EI16_V, MASK_VSUXSEG5EI16_V) -DECLARE_INSN(vsuxseg5ei32_v, MATCH_VSUXSEG5EI32_V, MASK_VSUXSEG5EI32_V) -DECLARE_INSN(vsuxseg5ei64_v, MATCH_VSUXSEG5EI64_V, MASK_VSUXSEG5EI64_V) -DECLARE_INSN(vsuxseg5ei8_v, MATCH_VSUXSEG5EI8_V, MASK_VSUXSEG5EI8_V) -DECLARE_INSN(vsuxseg6ei16_v, MATCH_VSUXSEG6EI16_V, MASK_VSUXSEG6EI16_V) -DECLARE_INSN(vsuxseg6ei32_v, MATCH_VSUXSEG6EI32_V, MASK_VSUXSEG6EI32_V) -DECLARE_INSN(vsuxseg6ei64_v, MATCH_VSUXSEG6EI64_V, MASK_VSUXSEG6EI64_V) -DECLARE_INSN(vsuxseg6ei8_v, MATCH_VSUXSEG6EI8_V, MASK_VSUXSEG6EI8_V) -DECLARE_INSN(vsuxseg7ei16_v, MATCH_VSUXSEG7EI16_V, MASK_VSUXSEG7EI16_V) -DECLARE_INSN(vsuxseg7ei32_v, MATCH_VSUXSEG7EI32_V, MASK_VSUXSEG7EI32_V) -DECLARE_INSN(vsuxseg7ei64_v, MATCH_VSUXSEG7EI64_V, MASK_VSUXSEG7EI64_V) -DECLARE_INSN(vsuxseg7ei8_v, MATCH_VSUXSEG7EI8_V, MASK_VSUXSEG7EI8_V) -DECLARE_INSN(vsuxseg8ei16_v, MATCH_VSUXSEG8EI16_V, MASK_VSUXSEG8EI16_V) -DECLARE_INSN(vsuxseg8ei32_v, MATCH_VSUXSEG8EI32_V, MASK_VSUXSEG8EI32_V) -DECLARE_INSN(vsuxseg8ei64_v, MATCH_VSUXSEG8EI64_V, MASK_VSUXSEG8EI64_V) -DECLARE_INSN(vsuxseg8ei8_v, MATCH_VSUXSEG8EI8_V, MASK_VSUXSEG8EI8_V) -DECLARE_INSN(vwadd_vv, MATCH_VWADD_VV, MASK_VWADD_VV) -DECLARE_INSN(vwadd_vx, MATCH_VWADD_VX, MASK_VWADD_VX) -DECLARE_INSN(vwadd_wv, MATCH_VWADD_WV, MASK_VWADD_WV) -DECLARE_INSN(vwadd_wx, MATCH_VWADD_WX, MASK_VWADD_WX) -DECLARE_INSN(vwaddu_vv, MATCH_VWADDU_VV, MASK_VWADDU_VV) -DECLARE_INSN(vwaddu_vx, MATCH_VWADDU_VX, MASK_VWADDU_VX) -DECLARE_INSN(vwaddu_wv, MATCH_VWADDU_WV, MASK_VWADDU_WV) -DECLARE_INSN(vwaddu_wx, MATCH_VWADDU_WX, MASK_VWADDU_WX) -DECLARE_INSN(vwmacc_vv, MATCH_VWMACC_VV, MASK_VWMACC_VV) -DECLARE_INSN(vwmacc_vx, MATCH_VWMACC_VX, MASK_VWMACC_VX) -DECLARE_INSN(vwmaccsu_vv, MATCH_VWMACCSU_VV, MASK_VWMACCSU_VV) -DECLARE_INSN(vwmaccsu_vx, MATCH_VWMACCSU_VX, MASK_VWMACCSU_VX) -DECLARE_INSN(vwmaccu_vv, MATCH_VWMACCU_VV, MASK_VWMACCU_VV) -DECLARE_INSN(vwmaccu_vx, MATCH_VWMACCU_VX, MASK_VWMACCU_VX) -DECLARE_INSN(vwmaccus_vx, MATCH_VWMACCUS_VX, MASK_VWMACCUS_VX) -DECLARE_INSN(vwmul_vv, MATCH_VWMUL_VV, MASK_VWMUL_VV) -DECLARE_INSN(vwmul_vx, MATCH_VWMUL_VX, MASK_VWMUL_VX) -DECLARE_INSN(vwmulsu_vv, MATCH_VWMULSU_VV, MASK_VWMULSU_VV) -DECLARE_INSN(vwmulsu_vx, MATCH_VWMULSU_VX, MASK_VWMULSU_VX) -DECLARE_INSN(vwmulu_vv, MATCH_VWMULU_VV, MASK_VWMULU_VV) -DECLARE_INSN(vwmulu_vx, MATCH_VWMULU_VX, MASK_VWMULU_VX) -DECLARE_INSN(vwredsum_vs, MATCH_VWREDSUM_VS, MASK_VWREDSUM_VS) -DECLARE_INSN(vwredsumu_vs, MATCH_VWREDSUMU_VS, MASK_VWREDSUMU_VS) -DECLARE_INSN(vwsll_vi, MATCH_VWSLL_VI, MASK_VWSLL_VI) -DECLARE_INSN(vwsll_vv, MATCH_VWSLL_VV, MASK_VWSLL_VV) -DECLARE_INSN(vwsll_vx, MATCH_VWSLL_VX, MASK_VWSLL_VX) -DECLARE_INSN(vwsub_vv, MATCH_VWSUB_VV, MASK_VWSUB_VV) -DECLARE_INSN(vwsub_vx, MATCH_VWSUB_VX, MASK_VWSUB_VX) -DECLARE_INSN(vwsub_wv, MATCH_VWSUB_WV, MASK_VWSUB_WV) -DECLARE_INSN(vwsub_wx, MATCH_VWSUB_WX, MASK_VWSUB_WX) -DECLARE_INSN(vwsubu_vv, MATCH_VWSUBU_VV, MASK_VWSUBU_VV) -DECLARE_INSN(vwsubu_vx, MATCH_VWSUBU_VX, MASK_VWSUBU_VX) -DECLARE_INSN(vwsubu_wv, MATCH_VWSUBU_WV, MASK_VWSUBU_WV) -DECLARE_INSN(vwsubu_wx, MATCH_VWSUBU_WX, MASK_VWSUBU_WX) -DECLARE_INSN(vxor_vi, MATCH_VXOR_VI, MASK_VXOR_VI) -DECLARE_INSN(vxor_vv, MATCH_VXOR_VV, MASK_VXOR_VV) -DECLARE_INSN(vxor_vx, MATCH_VXOR_VX, MASK_VXOR_VX) -DECLARE_INSN(vzext_vf2, MATCH_VZEXT_VF2, MASK_VZEXT_VF2) -DECLARE_INSN(vzext_vf4, MATCH_VZEXT_VF4, MASK_VZEXT_VF4) -DECLARE_INSN(vzext_vf8, MATCH_VZEXT_VF8, MASK_VZEXT_VF8) -DECLARE_INSN(wfi, MATCH_WFI, MASK_WFI) -DECLARE_INSN(wrs_nto, MATCH_WRS_NTO, MASK_WRS_NTO) -DECLARE_INSN(wrs_sto, MATCH_WRS_STO, MASK_WRS_STO) -DECLARE_INSN(xnor, MATCH_XNOR, MASK_XNOR) -DECLARE_INSN(xor, MATCH_XOR, MASK_XOR) -DECLARE_INSN(xori, MATCH_XORI, MASK_XORI) -DECLARE_INSN(xperm4, MATCH_XPERM4, MASK_XPERM4) -DECLARE_INSN(xperm8, MATCH_XPERM8, MASK_XPERM8) -DECLARE_INSN(zext_h, MATCH_ZEXT_H, MASK_ZEXT_H) -DECLARE_INSN(zip, MATCH_ZIP, MASK_ZIP) -#endif -#ifdef DECLARE_CSR -DECLARE_CSR(fflags, CSR_FFLAGS) -DECLARE_CSR(frm, CSR_FRM) -DECLARE_CSR(fcsr, CSR_FCSR) -DECLARE_CSR(vstart, CSR_VSTART) -DECLARE_CSR(vxsat, CSR_VXSAT) -DECLARE_CSR(vxrm, CSR_VXRM) -DECLARE_CSR(vcsr, CSR_VCSR) -DECLARE_CSR(ssp, CSR_SSP) -DECLARE_CSR(seed, CSR_SEED) -DECLARE_CSR(jvt, CSR_JVT) -DECLARE_CSR(cycle, CSR_CYCLE) -DECLARE_CSR(time, CSR_TIME) -DECLARE_CSR(instret, CSR_INSTRET) -DECLARE_CSR(hpmcounter3, CSR_HPMCOUNTER3) -DECLARE_CSR(hpmcounter4, CSR_HPMCOUNTER4) -DECLARE_CSR(hpmcounter5, CSR_HPMCOUNTER5) -DECLARE_CSR(hpmcounter6, CSR_HPMCOUNTER6) -DECLARE_CSR(hpmcounter7, CSR_HPMCOUNTER7) -DECLARE_CSR(hpmcounter8, CSR_HPMCOUNTER8) -DECLARE_CSR(hpmcounter9, CSR_HPMCOUNTER9) -DECLARE_CSR(hpmcounter10, CSR_HPMCOUNTER10) -DECLARE_CSR(hpmcounter11, CSR_HPMCOUNTER11) -DECLARE_CSR(hpmcounter12, CSR_HPMCOUNTER12) -DECLARE_CSR(hpmcounter13, CSR_HPMCOUNTER13) -DECLARE_CSR(hpmcounter14, CSR_HPMCOUNTER14) -DECLARE_CSR(hpmcounter15, CSR_HPMCOUNTER15) -DECLARE_CSR(hpmcounter16, CSR_HPMCOUNTER16) -DECLARE_CSR(hpmcounter17, CSR_HPMCOUNTER17) -DECLARE_CSR(hpmcounter18, CSR_HPMCOUNTER18) -DECLARE_CSR(hpmcounter19, CSR_HPMCOUNTER19) -DECLARE_CSR(hpmcounter20, CSR_HPMCOUNTER20) -DECLARE_CSR(hpmcounter21, CSR_HPMCOUNTER21) -DECLARE_CSR(hpmcounter22, CSR_HPMCOUNTER22) -DECLARE_CSR(hpmcounter23, CSR_HPMCOUNTER23) -DECLARE_CSR(hpmcounter24, CSR_HPMCOUNTER24) -DECLARE_CSR(hpmcounter25, CSR_HPMCOUNTER25) -DECLARE_CSR(hpmcounter26, CSR_HPMCOUNTER26) -DECLARE_CSR(hpmcounter27, CSR_HPMCOUNTER27) -DECLARE_CSR(hpmcounter28, CSR_HPMCOUNTER28) -DECLARE_CSR(hpmcounter29, CSR_HPMCOUNTER29) -DECLARE_CSR(hpmcounter30, CSR_HPMCOUNTER30) -DECLARE_CSR(hpmcounter31, CSR_HPMCOUNTER31) -DECLARE_CSR(vl, CSR_VL) -DECLARE_CSR(vtype, CSR_VTYPE) -DECLARE_CSR(vlenb, CSR_VLENB) -DECLARE_CSR(sstatus, CSR_SSTATUS) -DECLARE_CSR(sedeleg, CSR_SEDELEG) -DECLARE_CSR(sideleg, CSR_SIDELEG) -DECLARE_CSR(sie, CSR_SIE) -DECLARE_CSR(stvec, CSR_STVEC) -DECLARE_CSR(scounteren, CSR_SCOUNTEREN) -DECLARE_CSR(senvcfg, CSR_SENVCFG) -DECLARE_CSR(sstateen0, CSR_SSTATEEN0) -DECLARE_CSR(sstateen1, CSR_SSTATEEN1) -DECLARE_CSR(sstateen2, CSR_SSTATEEN2) -DECLARE_CSR(sstateen3, CSR_SSTATEEN3) -DECLARE_CSR(scountinhibit, CSR_SCOUNTINHIBIT) -DECLARE_CSR(sscratch, CSR_SSCRATCH) -DECLARE_CSR(sepc, CSR_SEPC) -DECLARE_CSR(scause, CSR_SCAUSE) -DECLARE_CSR(stval, CSR_STVAL) -DECLARE_CSR(sip, CSR_SIP) -DECLARE_CSR(stimecmp, CSR_STIMECMP) -DECLARE_CSR(sctrctl, CSR_SCTRCTL) -DECLARE_CSR(sctrstatus, CSR_SCTRSTATUS) -DECLARE_CSR(siselect, CSR_SISELECT) -DECLARE_CSR(sireg, CSR_SIREG) -DECLARE_CSR(sireg2, CSR_SIREG2) -DECLARE_CSR(sireg3, CSR_SIREG3) -DECLARE_CSR(sireg4, CSR_SIREG4) -DECLARE_CSR(sireg5, CSR_SIREG5) -DECLARE_CSR(sireg6, CSR_SIREG6) -DECLARE_CSR(stopei, CSR_STOPEI) -DECLARE_CSR(sctrdepth, CSR_SCTRDEPTH) -DECLARE_CSR(satp, CSR_SATP) -DECLARE_CSR(srmcfg, CSR_SRMCFG) -DECLARE_CSR(scontext, CSR_SCONTEXT) -DECLARE_CSR(vsstatus, CSR_VSSTATUS) -DECLARE_CSR(vsie, CSR_VSIE) -DECLARE_CSR(vstvec, CSR_VSTVEC) -DECLARE_CSR(vsscratch, CSR_VSSCRATCH) -DECLARE_CSR(vsepc, CSR_VSEPC) -DECLARE_CSR(vscause, CSR_VSCAUSE) -DECLARE_CSR(vstval, CSR_VSTVAL) -DECLARE_CSR(vsip, CSR_VSIP) -DECLARE_CSR(vstimecmp, CSR_VSTIMECMP) -DECLARE_CSR(vsctrctl, CSR_VSCTRCTL) -DECLARE_CSR(vsiselect, CSR_VSISELECT) -DECLARE_CSR(vsireg, CSR_VSIREG) -DECLARE_CSR(vsireg2, CSR_VSIREG2) -DECLARE_CSR(vsireg3, CSR_VSIREG3) -DECLARE_CSR(vsireg4, CSR_VSIREG4) -DECLARE_CSR(vsireg5, CSR_VSIREG5) -DECLARE_CSR(vsireg6, CSR_VSIREG6) -DECLARE_CSR(vstopei, CSR_VSTOPEI) -DECLARE_CSR(vsatp, CSR_VSATP) -DECLARE_CSR(hstatus, CSR_HSTATUS) -DECLARE_CSR(hedeleg, CSR_HEDELEG) -DECLARE_CSR(hideleg, CSR_HIDELEG) -DECLARE_CSR(hie, CSR_HIE) -DECLARE_CSR(htimedelta, CSR_HTIMEDELTA) -DECLARE_CSR(hcounteren, CSR_HCOUNTEREN) -DECLARE_CSR(hgeie, CSR_HGEIE) -DECLARE_CSR(hvien, CSR_HVIEN) -DECLARE_CSR(hvictl, CSR_HVICTL) -DECLARE_CSR(henvcfg, CSR_HENVCFG) -DECLARE_CSR(hstateen0, CSR_HSTATEEN0) -DECLARE_CSR(hstateen1, CSR_HSTATEEN1) -DECLARE_CSR(hstateen2, CSR_HSTATEEN2) -DECLARE_CSR(hstateen3, CSR_HSTATEEN3) -DECLARE_CSR(htval, CSR_HTVAL) -DECLARE_CSR(hip, CSR_HIP) -DECLARE_CSR(hvip, CSR_HVIP) -DECLARE_CSR(hviprio1, CSR_HVIPRIO1) -DECLARE_CSR(hviprio2, CSR_HVIPRIO2) -DECLARE_CSR(htinst, CSR_HTINST) -DECLARE_CSR(hgatp, CSR_HGATP) -DECLARE_CSR(hcontext, CSR_HCONTEXT) -DECLARE_CSR(hgeip, CSR_HGEIP) -DECLARE_CSR(vstopi, CSR_VSTOPI) -DECLARE_CSR(scountovf, CSR_SCOUNTOVF) -DECLARE_CSR(stopi, CSR_STOPI) -DECLARE_CSR(utvt, CSR_UTVT) -DECLARE_CSR(unxti, CSR_UNXTI) -DECLARE_CSR(uintstatus, CSR_UINTSTATUS) -DECLARE_CSR(uscratchcsw, CSR_USCRATCHCSW) -DECLARE_CSR(uscratchcswl, CSR_USCRATCHCSWL) -DECLARE_CSR(stvt, CSR_STVT) -DECLARE_CSR(snxti, CSR_SNXTI) -DECLARE_CSR(sintstatus, CSR_SINTSTATUS) -DECLARE_CSR(sscratchcsw, CSR_SSCRATCHCSW) -DECLARE_CSR(sscratchcswl, CSR_SSCRATCHCSWL) -DECLARE_CSR(mtvt, CSR_MTVT) -DECLARE_CSR(mnxti, CSR_MNXTI) -DECLARE_CSR(mintstatus, CSR_MINTSTATUS) -DECLARE_CSR(mscratchcsw, CSR_MSCRATCHCSW) -DECLARE_CSR(mscratchcswl, CSR_MSCRATCHCSWL) -DECLARE_CSR(mstatus, CSR_MSTATUS) -DECLARE_CSR(misa, CSR_MISA) -DECLARE_CSR(medeleg, CSR_MEDELEG) -DECLARE_CSR(mideleg, CSR_MIDELEG) -DECLARE_CSR(mie, CSR_MIE) -DECLARE_CSR(mtvec, CSR_MTVEC) -DECLARE_CSR(mcounteren, CSR_MCOUNTEREN) -DECLARE_CSR(mvien, CSR_MVIEN) -DECLARE_CSR(mvip, CSR_MVIP) -DECLARE_CSR(menvcfg, CSR_MENVCFG) -DECLARE_CSR(mstateen0, CSR_MSTATEEN0) -DECLARE_CSR(mstateen1, CSR_MSTATEEN1) -DECLARE_CSR(mstateen2, CSR_MSTATEEN2) -DECLARE_CSR(mstateen3, CSR_MSTATEEN3) -DECLARE_CSR(mcountinhibit, CSR_MCOUNTINHIBIT) -DECLARE_CSR(mscratch, CSR_MSCRATCH) -DECLARE_CSR(mepc, CSR_MEPC) -DECLARE_CSR(mcause, CSR_MCAUSE) -DECLARE_CSR(mtval, CSR_MTVAL) -DECLARE_CSR(mip, CSR_MIP) -DECLARE_CSR(mtinst, CSR_MTINST) -DECLARE_CSR(mtval2, CSR_MTVAL2) -DECLARE_CSR(mctrctl, CSR_MCTRCTL) -DECLARE_CSR(miselect, CSR_MISELECT) -DECLARE_CSR(mireg, CSR_MIREG) -DECLARE_CSR(mireg2, CSR_MIREG2) -DECLARE_CSR(mireg3, CSR_MIREG3) -DECLARE_CSR(mireg4, CSR_MIREG4) -DECLARE_CSR(mireg5, CSR_MIREG5) -DECLARE_CSR(mireg6, CSR_MIREG6) -DECLARE_CSR(mtopei, CSR_MTOPEI) -DECLARE_CSR(pmpcfg0, CSR_PMPCFG0) -DECLARE_CSR(pmpcfg1, CSR_PMPCFG1) -DECLARE_CSR(pmpcfg2, CSR_PMPCFG2) -DECLARE_CSR(pmpcfg3, CSR_PMPCFG3) -DECLARE_CSR(pmpcfg4, CSR_PMPCFG4) -DECLARE_CSR(pmpcfg5, CSR_PMPCFG5) -DECLARE_CSR(pmpcfg6, CSR_PMPCFG6) -DECLARE_CSR(pmpcfg7, CSR_PMPCFG7) -DECLARE_CSR(pmpcfg8, CSR_PMPCFG8) -DECLARE_CSR(pmpcfg9, CSR_PMPCFG9) -DECLARE_CSR(pmpcfg10, CSR_PMPCFG10) -DECLARE_CSR(pmpcfg11, CSR_PMPCFG11) -DECLARE_CSR(pmpcfg12, CSR_PMPCFG12) -DECLARE_CSR(pmpcfg13, CSR_PMPCFG13) -DECLARE_CSR(pmpcfg14, CSR_PMPCFG14) -DECLARE_CSR(pmpcfg15, CSR_PMPCFG15) -DECLARE_CSR(pmpaddr0, CSR_PMPADDR0) -DECLARE_CSR(pmpaddr1, CSR_PMPADDR1) -DECLARE_CSR(pmpaddr2, CSR_PMPADDR2) -DECLARE_CSR(pmpaddr3, CSR_PMPADDR3) -DECLARE_CSR(pmpaddr4, CSR_PMPADDR4) -DECLARE_CSR(pmpaddr5, CSR_PMPADDR5) -DECLARE_CSR(pmpaddr6, CSR_PMPADDR6) -DECLARE_CSR(pmpaddr7, CSR_PMPADDR7) -DECLARE_CSR(pmpaddr8, CSR_PMPADDR8) -DECLARE_CSR(pmpaddr9, CSR_PMPADDR9) -DECLARE_CSR(pmpaddr10, CSR_PMPADDR10) -DECLARE_CSR(pmpaddr11, CSR_PMPADDR11) -DECLARE_CSR(pmpaddr12, CSR_PMPADDR12) -DECLARE_CSR(pmpaddr13, CSR_PMPADDR13) -DECLARE_CSR(pmpaddr14, CSR_PMPADDR14) -DECLARE_CSR(pmpaddr15, CSR_PMPADDR15) -DECLARE_CSR(pmpaddr16, CSR_PMPADDR16) -DECLARE_CSR(pmpaddr17, CSR_PMPADDR17) -DECLARE_CSR(pmpaddr18, CSR_PMPADDR18) -DECLARE_CSR(pmpaddr19, CSR_PMPADDR19) -DECLARE_CSR(pmpaddr20, CSR_PMPADDR20) -DECLARE_CSR(pmpaddr21, CSR_PMPADDR21) -DECLARE_CSR(pmpaddr22, CSR_PMPADDR22) -DECLARE_CSR(pmpaddr23, CSR_PMPADDR23) -DECLARE_CSR(pmpaddr24, CSR_PMPADDR24) -DECLARE_CSR(pmpaddr25, CSR_PMPADDR25) -DECLARE_CSR(pmpaddr26, CSR_PMPADDR26) -DECLARE_CSR(pmpaddr27, CSR_PMPADDR27) -DECLARE_CSR(pmpaddr28, CSR_PMPADDR28) -DECLARE_CSR(pmpaddr29, CSR_PMPADDR29) -DECLARE_CSR(pmpaddr30, CSR_PMPADDR30) -DECLARE_CSR(pmpaddr31, CSR_PMPADDR31) -DECLARE_CSR(pmpaddr32, CSR_PMPADDR32) -DECLARE_CSR(pmpaddr33, CSR_PMPADDR33) -DECLARE_CSR(pmpaddr34, CSR_PMPADDR34) -DECLARE_CSR(pmpaddr35, CSR_PMPADDR35) -DECLARE_CSR(pmpaddr36, CSR_PMPADDR36) -DECLARE_CSR(pmpaddr37, CSR_PMPADDR37) -DECLARE_CSR(pmpaddr38, CSR_PMPADDR38) -DECLARE_CSR(pmpaddr39, CSR_PMPADDR39) -DECLARE_CSR(pmpaddr40, CSR_PMPADDR40) -DECLARE_CSR(pmpaddr41, CSR_PMPADDR41) -DECLARE_CSR(pmpaddr42, CSR_PMPADDR42) -DECLARE_CSR(pmpaddr43, CSR_PMPADDR43) -DECLARE_CSR(pmpaddr44, CSR_PMPADDR44) -DECLARE_CSR(pmpaddr45, CSR_PMPADDR45) -DECLARE_CSR(pmpaddr46, CSR_PMPADDR46) -DECLARE_CSR(pmpaddr47, CSR_PMPADDR47) -DECLARE_CSR(pmpaddr48, CSR_PMPADDR48) -DECLARE_CSR(pmpaddr49, CSR_PMPADDR49) -DECLARE_CSR(pmpaddr50, CSR_PMPADDR50) -DECLARE_CSR(pmpaddr51, CSR_PMPADDR51) -DECLARE_CSR(pmpaddr52, CSR_PMPADDR52) -DECLARE_CSR(pmpaddr53, CSR_PMPADDR53) -DECLARE_CSR(pmpaddr54, CSR_PMPADDR54) -DECLARE_CSR(pmpaddr55, CSR_PMPADDR55) -DECLARE_CSR(pmpaddr56, CSR_PMPADDR56) -DECLARE_CSR(pmpaddr57, CSR_PMPADDR57) -DECLARE_CSR(pmpaddr58, CSR_PMPADDR58) -DECLARE_CSR(pmpaddr59, CSR_PMPADDR59) -DECLARE_CSR(pmpaddr60, CSR_PMPADDR60) -DECLARE_CSR(pmpaddr61, CSR_PMPADDR61) -DECLARE_CSR(pmpaddr62, CSR_PMPADDR62) -DECLARE_CSR(pmpaddr63, CSR_PMPADDR63) -DECLARE_CSR(mseccfg, CSR_MSECCFG) -DECLARE_CSR(tselect, CSR_TSELECT) -DECLARE_CSR(tdata1, CSR_TDATA1) -DECLARE_CSR(tdata2, CSR_TDATA2) -DECLARE_CSR(tdata3, CSR_TDATA3) -DECLARE_CSR(tinfo, CSR_TINFO) -DECLARE_CSR(tcontrol, CSR_TCONTROL) -DECLARE_CSR(mcontext, CSR_MCONTEXT) -DECLARE_CSR(mscontext, CSR_MSCONTEXT) -DECLARE_CSR(dcsr, CSR_DCSR) -DECLARE_CSR(dpc, CSR_DPC) -DECLARE_CSR(dscratch0, CSR_DSCRATCH0) -DECLARE_CSR(dscratch1, CSR_DSCRATCH1) -DECLARE_CSR(mcycle, CSR_MCYCLE) -DECLARE_CSR(minstret, CSR_MINSTRET) -DECLARE_CSR(mhpmcounter3, CSR_MHPMCOUNTER3) -DECLARE_CSR(mhpmcounter4, CSR_MHPMCOUNTER4) -DECLARE_CSR(mhpmcounter5, CSR_MHPMCOUNTER5) -DECLARE_CSR(mhpmcounter6, CSR_MHPMCOUNTER6) -DECLARE_CSR(mhpmcounter7, CSR_MHPMCOUNTER7) -DECLARE_CSR(mhpmcounter8, CSR_MHPMCOUNTER8) -DECLARE_CSR(mhpmcounter9, CSR_MHPMCOUNTER9) -DECLARE_CSR(mhpmcounter10, CSR_MHPMCOUNTER10) -DECLARE_CSR(mhpmcounter11, CSR_MHPMCOUNTER11) -DECLARE_CSR(mhpmcounter12, CSR_MHPMCOUNTER12) -DECLARE_CSR(mhpmcounter13, CSR_MHPMCOUNTER13) -DECLARE_CSR(mhpmcounter14, CSR_MHPMCOUNTER14) -DECLARE_CSR(mhpmcounter15, CSR_MHPMCOUNTER15) -DECLARE_CSR(mhpmcounter16, CSR_MHPMCOUNTER16) -DECLARE_CSR(mhpmcounter17, CSR_MHPMCOUNTER17) -DECLARE_CSR(mhpmcounter18, CSR_MHPMCOUNTER18) -DECLARE_CSR(mhpmcounter19, CSR_MHPMCOUNTER19) -DECLARE_CSR(mhpmcounter20, CSR_MHPMCOUNTER20) -DECLARE_CSR(mhpmcounter21, CSR_MHPMCOUNTER21) -DECLARE_CSR(mhpmcounter22, CSR_MHPMCOUNTER22) -DECLARE_CSR(mhpmcounter23, CSR_MHPMCOUNTER23) -DECLARE_CSR(mhpmcounter24, CSR_MHPMCOUNTER24) -DECLARE_CSR(mhpmcounter25, CSR_MHPMCOUNTER25) -DECLARE_CSR(mhpmcounter26, CSR_MHPMCOUNTER26) -DECLARE_CSR(mhpmcounter27, CSR_MHPMCOUNTER27) -DECLARE_CSR(mhpmcounter28, CSR_MHPMCOUNTER28) -DECLARE_CSR(mhpmcounter29, CSR_MHPMCOUNTER29) -DECLARE_CSR(mhpmcounter30, CSR_MHPMCOUNTER30) -DECLARE_CSR(mhpmcounter31, CSR_MHPMCOUNTER31) -DECLARE_CSR(mcyclecfg, CSR_MCYCLECFG) -DECLARE_CSR(minstretcfg, CSR_MINSTRETCFG) -DECLARE_CSR(mhpmevent3, CSR_MHPMEVENT3) -DECLARE_CSR(mhpmevent4, CSR_MHPMEVENT4) -DECLARE_CSR(mhpmevent5, CSR_MHPMEVENT5) -DECLARE_CSR(mhpmevent6, CSR_MHPMEVENT6) -DECLARE_CSR(mhpmevent7, CSR_MHPMEVENT7) -DECLARE_CSR(mhpmevent8, CSR_MHPMEVENT8) -DECLARE_CSR(mhpmevent9, CSR_MHPMEVENT9) -DECLARE_CSR(mhpmevent10, CSR_MHPMEVENT10) -DECLARE_CSR(mhpmevent11, CSR_MHPMEVENT11) -DECLARE_CSR(mhpmevent12, CSR_MHPMEVENT12) -DECLARE_CSR(mhpmevent13, CSR_MHPMEVENT13) -DECLARE_CSR(mhpmevent14, CSR_MHPMEVENT14) -DECLARE_CSR(mhpmevent15, CSR_MHPMEVENT15) -DECLARE_CSR(mhpmevent16, CSR_MHPMEVENT16) -DECLARE_CSR(mhpmevent17, CSR_MHPMEVENT17) -DECLARE_CSR(mhpmevent18, CSR_MHPMEVENT18) -DECLARE_CSR(mhpmevent19, CSR_MHPMEVENT19) -DECLARE_CSR(mhpmevent20, CSR_MHPMEVENT20) -DECLARE_CSR(mhpmevent21, CSR_MHPMEVENT21) -DECLARE_CSR(mhpmevent22, CSR_MHPMEVENT22) -DECLARE_CSR(mhpmevent23, CSR_MHPMEVENT23) -DECLARE_CSR(mhpmevent24, CSR_MHPMEVENT24) -DECLARE_CSR(mhpmevent25, CSR_MHPMEVENT25) -DECLARE_CSR(mhpmevent26, CSR_MHPMEVENT26) -DECLARE_CSR(mhpmevent27, CSR_MHPMEVENT27) -DECLARE_CSR(mhpmevent28, CSR_MHPMEVENT28) -DECLARE_CSR(mhpmevent29, CSR_MHPMEVENT29) -DECLARE_CSR(mhpmevent30, CSR_MHPMEVENT30) -DECLARE_CSR(mhpmevent31, CSR_MHPMEVENT31) -DECLARE_CSR(mvendorid, CSR_MVENDORID) -DECLARE_CSR(marchid, CSR_MARCHID) -DECLARE_CSR(mimpid, CSR_MIMPID) -DECLARE_CSR(mhartid, CSR_MHARTID) -DECLARE_CSR(mconfigptr, CSR_MCONFIGPTR) -DECLARE_CSR(mtopi, CSR_MTOPI) -DECLARE_CSR(sieh, CSR_SIEH) -DECLARE_CSR(siph, CSR_SIPH) -DECLARE_CSR(stimecmph, CSR_STIMECMPH) -DECLARE_CSR(vsieh, CSR_VSIEH) -DECLARE_CSR(vsiph, CSR_VSIPH) -DECLARE_CSR(vstimecmph, CSR_VSTIMECMPH) -DECLARE_CSR(hedelegh, CSR_HEDELEGH) -DECLARE_CSR(htimedeltah, CSR_HTIMEDELTAH) -DECLARE_CSR(hidelegh, CSR_HIDELEGH) -DECLARE_CSR(hvienh, CSR_HVIENH) -DECLARE_CSR(henvcfgh, CSR_HENVCFGH) -DECLARE_CSR(hviph, CSR_HVIPH) -DECLARE_CSR(hviprio1h, CSR_HVIPRIO1H) -DECLARE_CSR(hviprio2h, CSR_HVIPRIO2H) -DECLARE_CSR(hstateen0h, CSR_HSTATEEN0H) -DECLARE_CSR(hstateen1h, CSR_HSTATEEN1H) -DECLARE_CSR(hstateen2h, CSR_HSTATEEN2H) -DECLARE_CSR(hstateen3h, CSR_HSTATEEN3H) -DECLARE_CSR(cycleh, CSR_CYCLEH) -DECLARE_CSR(timeh, CSR_TIMEH) -DECLARE_CSR(instreth, CSR_INSTRETH) -DECLARE_CSR(hpmcounter3h, CSR_HPMCOUNTER3H) -DECLARE_CSR(hpmcounter4h, CSR_HPMCOUNTER4H) -DECLARE_CSR(hpmcounter5h, CSR_HPMCOUNTER5H) -DECLARE_CSR(hpmcounter6h, CSR_HPMCOUNTER6H) -DECLARE_CSR(hpmcounter7h, CSR_HPMCOUNTER7H) -DECLARE_CSR(hpmcounter8h, CSR_HPMCOUNTER8H) -DECLARE_CSR(hpmcounter9h, CSR_HPMCOUNTER9H) -DECLARE_CSR(hpmcounter10h, CSR_HPMCOUNTER10H) -DECLARE_CSR(hpmcounter11h, CSR_HPMCOUNTER11H) -DECLARE_CSR(hpmcounter12h, CSR_HPMCOUNTER12H) -DECLARE_CSR(hpmcounter13h, CSR_HPMCOUNTER13H) -DECLARE_CSR(hpmcounter14h, CSR_HPMCOUNTER14H) -DECLARE_CSR(hpmcounter15h, CSR_HPMCOUNTER15H) -DECLARE_CSR(hpmcounter16h, CSR_HPMCOUNTER16H) -DECLARE_CSR(hpmcounter17h, CSR_HPMCOUNTER17H) -DECLARE_CSR(hpmcounter18h, CSR_HPMCOUNTER18H) -DECLARE_CSR(hpmcounter19h, CSR_HPMCOUNTER19H) -DECLARE_CSR(hpmcounter20h, CSR_HPMCOUNTER20H) -DECLARE_CSR(hpmcounter21h, CSR_HPMCOUNTER21H) -DECLARE_CSR(hpmcounter22h, CSR_HPMCOUNTER22H) -DECLARE_CSR(hpmcounter23h, CSR_HPMCOUNTER23H) -DECLARE_CSR(hpmcounter24h, CSR_HPMCOUNTER24H) -DECLARE_CSR(hpmcounter25h, CSR_HPMCOUNTER25H) -DECLARE_CSR(hpmcounter26h, CSR_HPMCOUNTER26H) -DECLARE_CSR(hpmcounter27h, CSR_HPMCOUNTER27H) -DECLARE_CSR(hpmcounter28h, CSR_HPMCOUNTER28H) -DECLARE_CSR(hpmcounter29h, CSR_HPMCOUNTER29H) -DECLARE_CSR(hpmcounter30h, CSR_HPMCOUNTER30H) -DECLARE_CSR(hpmcounter31h, CSR_HPMCOUNTER31H) -DECLARE_CSR(mstatush, CSR_MSTATUSH) -DECLARE_CSR(midelegh, CSR_MIDELEGH) -DECLARE_CSR(mieh, CSR_MIEH) -DECLARE_CSR(mvienh, CSR_MVIENH) -DECLARE_CSR(mviph, CSR_MVIPH) -DECLARE_CSR(menvcfgh, CSR_MENVCFGH) -DECLARE_CSR(mstateen0h, CSR_MSTATEEN0H) -DECLARE_CSR(mstateen1h, CSR_MSTATEEN1H) -DECLARE_CSR(mstateen2h, CSR_MSTATEEN2H) -DECLARE_CSR(mstateen3h, CSR_MSTATEEN3H) -DECLARE_CSR(miph, CSR_MIPH) -DECLARE_CSR(mcyclecfgh, CSR_MCYCLECFGH) -DECLARE_CSR(minstretcfgh, CSR_MINSTRETCFGH) -DECLARE_CSR(mhpmevent3h, CSR_MHPMEVENT3H) -DECLARE_CSR(mhpmevent4h, CSR_MHPMEVENT4H) -DECLARE_CSR(mhpmevent5h, CSR_MHPMEVENT5H) -DECLARE_CSR(mhpmevent6h, CSR_MHPMEVENT6H) -DECLARE_CSR(mhpmevent7h, CSR_MHPMEVENT7H) -DECLARE_CSR(mhpmevent8h, CSR_MHPMEVENT8H) -DECLARE_CSR(mhpmevent9h, CSR_MHPMEVENT9H) -DECLARE_CSR(mhpmevent10h, CSR_MHPMEVENT10H) -DECLARE_CSR(mhpmevent11h, CSR_MHPMEVENT11H) -DECLARE_CSR(mhpmevent12h, CSR_MHPMEVENT12H) -DECLARE_CSR(mhpmevent13h, CSR_MHPMEVENT13H) -DECLARE_CSR(mhpmevent14h, CSR_MHPMEVENT14H) -DECLARE_CSR(mhpmevent15h, CSR_MHPMEVENT15H) -DECLARE_CSR(mhpmevent16h, CSR_MHPMEVENT16H) -DECLARE_CSR(mhpmevent17h, CSR_MHPMEVENT17H) -DECLARE_CSR(mhpmevent18h, CSR_MHPMEVENT18H) -DECLARE_CSR(mhpmevent19h, CSR_MHPMEVENT19H) -DECLARE_CSR(mhpmevent20h, CSR_MHPMEVENT20H) -DECLARE_CSR(mhpmevent21h, CSR_MHPMEVENT21H) -DECLARE_CSR(mhpmevent22h, CSR_MHPMEVENT22H) -DECLARE_CSR(mhpmevent23h, CSR_MHPMEVENT23H) -DECLARE_CSR(mhpmevent24h, CSR_MHPMEVENT24H) -DECLARE_CSR(mhpmevent25h, CSR_MHPMEVENT25H) -DECLARE_CSR(mhpmevent26h, CSR_MHPMEVENT26H) -DECLARE_CSR(mhpmevent27h, CSR_MHPMEVENT27H) -DECLARE_CSR(mhpmevent28h, CSR_MHPMEVENT28H) -DECLARE_CSR(mhpmevent29h, CSR_MHPMEVENT29H) -DECLARE_CSR(mhpmevent30h, CSR_MHPMEVENT30H) -DECLARE_CSR(mhpmevent31h, CSR_MHPMEVENT31H) -DECLARE_CSR(mnscratch, CSR_MNSCRATCH) -DECLARE_CSR(mnepc, CSR_MNEPC) -DECLARE_CSR(mncause, CSR_MNCAUSE) -DECLARE_CSR(mnstatus, CSR_MNSTATUS) -DECLARE_CSR(mseccfgh, CSR_MSECCFGH) -DECLARE_CSR(mcycleh, CSR_MCYCLEH) -DECLARE_CSR(minstreth, CSR_MINSTRETH) -DECLARE_CSR(mhpmcounter3h, CSR_MHPMCOUNTER3H) -DECLARE_CSR(mhpmcounter4h, CSR_MHPMCOUNTER4H) -DECLARE_CSR(mhpmcounter5h, CSR_MHPMCOUNTER5H) -DECLARE_CSR(mhpmcounter6h, CSR_MHPMCOUNTER6H) -DECLARE_CSR(mhpmcounter7h, CSR_MHPMCOUNTER7H) -DECLARE_CSR(mhpmcounter8h, CSR_MHPMCOUNTER8H) -DECLARE_CSR(mhpmcounter9h, CSR_MHPMCOUNTER9H) -DECLARE_CSR(mhpmcounter10h, CSR_MHPMCOUNTER10H) -DECLARE_CSR(mhpmcounter11h, CSR_MHPMCOUNTER11H) -DECLARE_CSR(mhpmcounter12h, CSR_MHPMCOUNTER12H) -DECLARE_CSR(mhpmcounter13h, CSR_MHPMCOUNTER13H) -DECLARE_CSR(mhpmcounter14h, CSR_MHPMCOUNTER14H) -DECLARE_CSR(mhpmcounter15h, CSR_MHPMCOUNTER15H) -DECLARE_CSR(mhpmcounter16h, CSR_MHPMCOUNTER16H) -DECLARE_CSR(mhpmcounter17h, CSR_MHPMCOUNTER17H) -DECLARE_CSR(mhpmcounter18h, CSR_MHPMCOUNTER18H) -DECLARE_CSR(mhpmcounter19h, CSR_MHPMCOUNTER19H) -DECLARE_CSR(mhpmcounter20h, CSR_MHPMCOUNTER20H) -DECLARE_CSR(mhpmcounter21h, CSR_MHPMCOUNTER21H) -DECLARE_CSR(mhpmcounter22h, CSR_MHPMCOUNTER22H) -DECLARE_CSR(mhpmcounter23h, CSR_MHPMCOUNTER23H) -DECLARE_CSR(mhpmcounter24h, CSR_MHPMCOUNTER24H) -DECLARE_CSR(mhpmcounter25h, CSR_MHPMCOUNTER25H) -DECLARE_CSR(mhpmcounter26h, CSR_MHPMCOUNTER26H) -DECLARE_CSR(mhpmcounter27h, CSR_MHPMCOUNTER27H) -DECLARE_CSR(mhpmcounter28h, CSR_MHPMCOUNTER28H) -DECLARE_CSR(mhpmcounter29h, CSR_MHPMCOUNTER29H) -DECLARE_CSR(mhpmcounter30h, CSR_MHPMCOUNTER30H) -DECLARE_CSR(mhpmcounter31h, CSR_MHPMCOUNTER31H) -#endif -#ifdef DECLARE_CAUSE -DECLARE_CAUSE("misaligned fetch", CAUSE_MISALIGNED_FETCH) -DECLARE_CAUSE("fetch access", CAUSE_FETCH_ACCESS) -DECLARE_CAUSE("illegal instruction", CAUSE_ILLEGAL_INSTRUCTION) -DECLARE_CAUSE("breakpoint", CAUSE_BREAKPOINT) -DECLARE_CAUSE("misaligned load", CAUSE_MISALIGNED_LOAD) -DECLARE_CAUSE("load access", CAUSE_LOAD_ACCESS) -DECLARE_CAUSE("misaligned store", CAUSE_MISALIGNED_STORE) -DECLARE_CAUSE("store access", CAUSE_STORE_ACCESS) -DECLARE_CAUSE("user ecall", CAUSE_USER_ECALL) -DECLARE_CAUSE("supervisor ecall", CAUSE_SUPERVISOR_ECALL) -DECLARE_CAUSE("virtual supervisor ecall", CAUSE_VIRTUAL_SUPERVISOR_ECALL) -DECLARE_CAUSE("machine ecall", CAUSE_MACHINE_ECALL) -DECLARE_CAUSE("fetch page fault", CAUSE_FETCH_PAGE_FAULT) -DECLARE_CAUSE("load page fault", CAUSE_LOAD_PAGE_FAULT) -DECLARE_CAUSE("store page fault", CAUSE_STORE_PAGE_FAULT) -DECLARE_CAUSE("double trap", CAUSE_DOUBLE_TRAP) -DECLARE_CAUSE("software check fault", CAUSE_SOFTWARE_CHECK_FAULT) -DECLARE_CAUSE("hardware error fault", CAUSE_HARDWARE_ERROR_FAULT) -DECLARE_CAUSE("fetch guest page fault", CAUSE_FETCH_GUEST_PAGE_FAULT) -DECLARE_CAUSE("load guest page fault", CAUSE_LOAD_GUEST_PAGE_FAULT) -DECLARE_CAUSE("virtual instruction", CAUSE_VIRTUAL_INSTRUCTION) -DECLARE_CAUSE("store guest page fault", CAUSE_STORE_GUEST_PAGE_FAULT) -#endif diff --git a/backends/opcodes_maker/output/inst.chisel b/backends/opcodes_maker/output/inst.chisel deleted file mode 100644 index dc90007cd..000000000 --- a/backends/opcodes_maker/output/inst.chisel +++ /dev/null @@ -1,2247 +0,0 @@ - -/* Automatically generated by parse_opcodes */ -object Instructions { - val ZACASType = Map( - "AMOCAS_D" -> BitPat("b00101????????????011?????0101111"), - "AMOCAS_W" -> BitPat("b00101????????????010?????0101111"), - ) - val ZIMOPType = Map( - "MOP_R_N" -> BitPat("b1?00??0111???????100?????1110011"), - "MOP_RR_N" -> BitPat("b1?00??1??????????100?????1110011"), - ) - val DType = Map( - "FADD_D" -> BitPat("b0000001??????????????????1010011"), - "FCLASS_D" -> BitPat("b111000100000?????001?????1010011"), - "FCVT_D_H" -> BitPat("b010000100010?????????????1010011"), - "FCVT_D_S" -> BitPat("b010000100000?????????????1010011"), - "FCVT_D_W" -> BitPat("b110100100000?????????????1010011"), - "FCVT_D_WU" -> BitPat("b110100100001?????????????1010011"), - "FCVT_H_D" -> BitPat("b010001000001?????????????1010011"), - "FCVT_S_D" -> BitPat("b010000000001?????????????1010011"), - "FCVT_W_D" -> BitPat("b110000100000?????????????1010011"), - "FCVT_WU_D" -> BitPat("b110000100001?????????????1010011"), - "FCVTMOD_W_D" -> BitPat("b110000101000?????001?????1010011"), - "FDIV_D" -> BitPat("b0001101??????????????????1010011"), - "FEQ_D" -> BitPat("b1010001??????????010?????1010011"), - "FLD" -> BitPat("b?????????????????011?????0000111"), - "FLE_D" -> BitPat("b1010001??????????000?????1010011"), - "FLEQ_D" -> BitPat("b1010001??????????100?????1010011"), - "FLI_D" -> BitPat("b111100100001?????000?????1010011"), - "FLT_D" -> BitPat("b1010001??????????001?????1010011"), - "FLTQ_D" -> BitPat("b1010001??????????101?????1010011"), - "FMADD_D" -> BitPat("b?????01??????????????????1000011"), - "FMAX_D" -> BitPat("b0010101??????????001?????1010011"), - "FMAXM_D" -> BitPat("b0010101??????????011?????1010011"), - "FMIN_D" -> BitPat("b0010101??????????000?????1010011"), - "FMINM_D" -> BitPat("b0010101??????????010?????1010011"), - "FMSUB_D" -> BitPat("b?????01??????????????????1000111"), - "FMUL_D" -> BitPat("b0001001??????????????????1010011"), - "FNMADD_D" -> BitPat("b?????01??????????????????1001111"), - "FNMSUB_D" -> BitPat("b?????01??????????????????1001011"), - "FROUND_D" -> BitPat("b010000100100?????????????1010011"), - "FROUNDNX_D" -> BitPat("b010000100101?????????????1010011"), - "FSD" -> BitPat("b?????????????????011?????0100111"), - "FSGNJ_D" -> BitPat("b0010001??????????000?????1010011"), - "FSGNJN_D" -> BitPat("b0010001??????????001?????1010011"), - "FSGNJX_D" -> BitPat("b0010001??????????010?????1010011"), - "FSQRT_D" -> BitPat("b010110100000?????????????1010011"), - "FSUB_D" -> BitPat("b0000101??????????????????1010011"), - ) - val ZICBOZType = Map( - "CBO_ZERO" -> BitPat("b000000000100?????010000000001111"), - ) - val HType = Map( - "HFENCE_GVMA" -> BitPat("b0110001??????????000000001110011"), - "HFENCE_VVMA" -> BitPat("b0010001??????????000000001110011"), - "HLV_B" -> BitPat("b011000000000?????100?????1110011"), - "HLV_BU" -> BitPat("b011000000001?????100?????1110011"), - "HLV_H" -> BitPat("b011001000000?????100?????1110011"), - "HLV_HU" -> BitPat("b011001000001?????100?????1110011"), - "HLV_W" -> BitPat("b011010000000?????100?????1110011"), - "HLVX_HU" -> BitPat("b011001000011?????100?????1110011"), - "HLVX_WU" -> BitPat("b011010000011?????100?????1110011"), - "HSV_B" -> BitPat("b0110001??????????100000001110011"), - "HSV_H" -> BitPat("b0110011??????????100000001110011"), - "HSV_W" -> BitPat("b0110101??????????100000001110011"), - ) - val ZK32Type = Map( - "AES32DSI" -> BitPat("b??10101??????????000?????0110011"), - "AES32DSMI" -> BitPat("b??10111??????????000?????0110011"), - "AES32ESI" -> BitPat("b??10001??????????000?????0110011"), - "AES32ESMI" -> BitPat("b??10011??????????000?????0110011"), - "SHA512SIG0H" -> BitPat("b0101110??????????000?????0110011"), - "SHA512SIG0L" -> BitPat("b0101010??????????000?????0110011"), - "SHA512SIG1H" -> BitPat("b0101111??????????000?????0110011"), - "SHA512SIG1L" -> BitPat("b0101011??????????000?????0110011"), - "SHA512SUM0R" -> BitPat("b0101000??????????000?????0110011"), - "SHA512SUM1R" -> BitPat("b0101001??????????000?????0110011"), - ) - val SMRNMIType = Map( - "MNRET" -> BitPat("b01110000001000000000000001110011"), - ) - val BType = Map( - "ANDN" -> BitPat("b0100000??????????111?????0110011"), - "BCLR" -> BitPat("b0100100??????????001?????0110011"), - "BEXT" -> BitPat("b0100100??????????101?????0110011"), - "BINV" -> BitPat("b0110100??????????001?????0110011"), - "BSET" -> BitPat("b0010100??????????001?????0110011"), - "CLMUL" -> BitPat("b0000101??????????001?????0110011"), - "CLMULH" -> BitPat("b0000101??????????011?????0110011"), - "CLMULR" -> BitPat("b0000101??????????010?????0110011"), - "CLZ" -> BitPat("b011000000000?????001?????0010011"), - "CPOP" -> BitPat("b011000000010?????001?????0010011"), - "CTZ" -> BitPat("b011000000001?????001?????0010011"), - "MAX" -> BitPat("b0000101??????????110?????0110011"), - "MAXU" -> BitPat("b0000101??????????111?????0110011"), - "MIN" -> BitPat("b0000101??????????100?????0110011"), - "MINU" -> BitPat("b0000101??????????101?????0110011"), - "ORC_B" -> BitPat("b001010000111?????101?????0010011"), - "ORN" -> BitPat("b0100000??????????110?????0110011"), - "ROL" -> BitPat("b0110000??????????001?????0110011"), - "ROR" -> BitPat("b0110000??????????101?????0110011"), - "SEXT_B" -> BitPat("b011000000100?????001?????0010011"), - "SEXT_H" -> BitPat("b011000000101?????001?????0010011"), - "SH1ADD" -> BitPat("b0010000??????????010?????0110011"), - "SH2ADD" -> BitPat("b0010000??????????100?????0110011"), - "SH3ADD" -> BitPat("b0010000??????????110?????0110011"), - "XNOR" -> BitPat("b0100000??????????100?????0110011"), - ) - val ZVKNType = Map( - "VAESDF_VS" -> BitPat("b1010011?????00001010?????1110111"), - "VAESDF_VV" -> BitPat("b1010001?????00001010?????1110111"), - "VAESDM_VS" -> BitPat("b1010011?????00000010?????1110111"), - "VAESDM_VV" -> BitPat("b1010001?????00000010?????1110111"), - "VAESEF_VS" -> BitPat("b1010011?????00011010?????1110111"), - "VAESEF_VV" -> BitPat("b1010001?????00011010?????1110111"), - "VAESEM_VS" -> BitPat("b1010011?????00010010?????1110111"), - "VAESEM_VV" -> BitPat("b1010001?????00010010?????1110111"), - "VAESKF1_VI" -> BitPat("b1000101??????????010?????1110111"), - "VAESKF2_VI" -> BitPat("b1010101??????????010?????1110111"), - "VAESZ_VS" -> BitPat("b1010011?????00111010?????1110111"), - "VSHA2CH_VV" -> BitPat("b1011101??????????010?????1110111"), - "VSHA2CL_VV" -> BitPat("b1011111??????????010?????1110111"), - "VSHA2MS_VV" -> BitPat("b1011011??????????010?????1110111"), - ) - val A64Type = Map( - "AMOADD_D" -> BitPat("b00000????????????011?????0101111"), - "AMOAND_D" -> BitPat("b01100????????????011?????0101111"), - "AMOMAX_D" -> BitPat("b10100????????????011?????0101111"), - "AMOMAXU_D" -> BitPat("b11100????????????011?????0101111"), - "AMOMIN_D" -> BitPat("b10000????????????011?????0101111"), - "AMOMINU_D" -> BitPat("b11000????????????011?????0101111"), - "AMOOR_D" -> BitPat("b01000????????????011?????0101111"), - "AMOSWAP_D" -> BitPat("b00001????????????011?????0101111"), - "AMOXOR_D" -> BitPat("b00100????????????011?????0101111"), - "LR_D" -> BitPat("b00010??00000?????011?????0101111"), - "SC_D" -> BitPat("b00011????????????011?????0101111"), - ) - val ZICBOMType = Map( - "CBO_CLEAN" -> BitPat("b000000000001?????010000000001111"), - "CBO_FLUSH" -> BitPat("b000000000010?????010000000001111"), - "CBO_INVAL" -> BitPat("b000000000000?????010000000001111"), - ) - val ZIFENCEIType = Map( - "FENCE_I" -> BitPat("b?????????????????001?????0001111"), - ) - val ZFAType = Map( - "FLEQ_H" -> BitPat("b1010010??????????100?????1010011"), - "FLEQ_S" -> BitPat("b1010000??????????100?????1010011"), - "FLI_H" -> BitPat("b111101000001?????000?????1010011"), - "FLI_S" -> BitPat("b111100000001?????000?????1010011"), - "FLTQ_H" -> BitPat("b1010010??????????101?????1010011"), - "FLTQ_S" -> BitPat("b1010000??????????101?????1010011"), - "FMAXM_H" -> BitPat("b0010110??????????011?????1010011"), - "FMAXM_S" -> BitPat("b0010100??????????011?????1010011"), - "FMINM_H" -> BitPat("b0010110??????????010?????1010011"), - "FMINM_S" -> BitPat("b0010100??????????010?????1010011"), - "FROUND_H" -> BitPat("b010001000100?????????????1010011"), - "FROUND_S" -> BitPat("b010000000100?????????????1010011"), - "FROUNDNX_H" -> BitPat("b010001000101?????????????1010011"), - "FROUNDNX_S" -> BitPat("b010000000101?????????????1010011"), - ) - val SVINVALType = Map( - "HINVAL_GVMA" -> BitPat("b0110011??????????000000001110011"), - "HINVAL_VVMA" -> BitPat("b0010011??????????000000001110011"), - "SFENCE_INVAL_IR" -> BitPat("b00011000000100000000000001110011"), - "SFENCE_W_INVAL" -> BitPat("b00011000000000000000000001110011"), - "SINVAL_VMA" -> BitPat("b0001011??????????000000001110011"), - ) - val ZKType = Map( - "SHA256SIG0" -> BitPat("b000100000010?????001?????0010011"), - "SHA256SIG1" -> BitPat("b000100000011?????001?????0010011"), - "SHA256SUM0" -> BitPat("b000100000000?????001?????0010011"), - "SHA256SUM1" -> BitPat("b000100000001?????001?????0010011"), - ) - val ZVFBFMINType = Map( - "VFNCVTBF16_F_F_W" -> BitPat("b010010??????11101001?????1010111"), - "VFWCVTBF16_F_F_V" -> BitPat("b010010??????01101001?????1010111"), - ) - val AType = Map( - "AMOADD_W" -> BitPat("b00000????????????010?????0101111"), - "AMOAND_W" -> BitPat("b01100????????????010?????0101111"), - "AMOMAX_W" -> BitPat("b10100????????????010?????0101111"), - "AMOMAXU_W" -> BitPat("b11100????????????010?????0101111"), - "AMOMIN_W" -> BitPat("b10000????????????010?????0101111"), - "AMOMINU_W" -> BitPat("b11000????????????010?????0101111"), - "AMOOR_W" -> BitPat("b01000????????????010?????0101111"), - "AMOSWAP_W" -> BitPat("b00001????????????010?????0101111"), - "AMOXOR_W" -> BitPat("b00100????????????010?????0101111"), - "LR_W" -> BitPat("b00010??00000?????010?????0101111"), - "SC_W" -> BitPat("b00011????????????010?????0101111"), - ) - val ZVFBFWMAType = Map( - "VFWMACCBF16_VF" -> BitPat("b111011???????????101?????1010111"), - "VFWMACCBF16_VV" -> BitPat("b111011???????????001?????1010111"), - ) - val ZCMPType = Map( - "CM_MVA01S" -> BitPat("b????????????????101011???11???10"), - "CM_MVSA01" -> BitPat("b????????????????101011???01???10"), - "CM_POP" -> BitPat("b????????????????10111010??????10"), - "CM_POPRET" -> BitPat("b????????????????10111110??????10"), - "CM_POPRETZ" -> BitPat("b????????????????10111100??????10"), - "CM_PUSH" -> BitPat("b????????????????10111000??????10"), - ) - val ZVBBType = Map( - "VANDN_VV" -> BitPat("b000001???????????000?????1010111"), - "VANDN_VX" -> BitPat("b000001???????????100?????1010111"), - "VBREV8_V" -> BitPat("b010010??????01000010?????1010111"), - "VBREV_V" -> BitPat("b010010??????01010010?????1010111"), - "VCLZ_V" -> BitPat("b010010??????01100010?????1010111"), - "VCPOP_V" -> BitPat("b010010??????01110010?????1010111"), - "VCTZ_V" -> BitPat("b010010??????01101010?????1010111"), - "VREV8_V" -> BitPat("b010010??????01001010?????1010111"), - "VROL_VV" -> BitPat("b010101???????????000?????1010111"), - "VROL_VX" -> BitPat("b010101???????????100?????1010111"), - "VROR_VI" -> BitPat("b01010????????????011?????1010111"), - "VROR_VV" -> BitPat("b010100???????????000?????1010111"), - "VROR_VX" -> BitPat("b010100???????????100?????1010111"), - "VWSLL_VI" -> BitPat("b110101???????????011?????1010111"), - "VWSLL_VV" -> BitPat("b110101???????????000?????1010111"), - "VWSLL_VX" -> BitPat("b110101???????????100?????1010111"), - ) - val H64Type = Map( - "HLV_D" -> BitPat("b011011000000?????100?????1110011"), - "HLV_WU" -> BitPat("b011010000001?????100?????1110011"), - "HSV_D" -> BitPat("b0110111??????????100000001110011"), - ) - val ZCBType = Map( - "C_LBU" -> BitPat("b????????????????100000????????00"), - "C_MUL" -> BitPat("b????????????????100111???10???01"), - "C_NOT" -> BitPat("b????????????????100111???1110101"), - "C_SB" -> BitPat("b????????????????100010????????00"), - "C_SEXT_B" -> BitPat("b????????????????100111???1100101"), - "C_SEXT_H" -> BitPat("b????????????????100111???1101101"), - "C_ZEXT_B" -> BitPat("b????????????????100111???1100001"), - "C_ZEXT_H" -> BitPat("b????????????????100111???1101001"), - ) - val ZVKGType = Map( - "VGHSH_VV" -> BitPat("b1011001??????????010?????1110111"), - "VGMUL_VV" -> BitPat("b1010001?????10001010?????1110111"), - ) - val SMType = Map( - "MRET" -> BitPat("b00110000001000000000000001110011"), - "WFI" -> BitPat("b00010000010100000000000001110011"), - ) - val ZAWRSType = Map( - "WRS_NTO" -> BitPat("b00000000110100000000000001110011"), - "WRS_STO" -> BitPat("b00000001110100000000000001110011"), - ) - val ZK64Type = Map( - "AES64DS" -> BitPat("b0011101??????????000?????0110011"), - "AES64DSM" -> BitPat("b0011111??????????000?????0110011"), - "AES64ES" -> BitPat("b0011001??????????000?????0110011"), - "AES64ESM" -> BitPat("b0011011??????????000?????0110011"), - "AES64IM" -> BitPat("b001100000000?????001?????0010011"), - "AES64KS1I" -> BitPat("b00110001?????????001?????0010011"), - "AES64KS2" -> BitPat("b0111111??????????000?????0110011"), - "SHA512SIG0" -> BitPat("b000100000110?????001?????0010011"), - "SHA512SIG1" -> BitPat("b000100000111?????001?????0010011"), - "SHA512SUM0" -> BitPat("b000100000100?????001?????0010011"), - "SHA512SUM1" -> BitPat("b000100000101?????001?????0010011"), - ) - val FType = Map( - "FADD_S" -> BitPat("b0000000??????????????????1010011"), - "FCLASS_S" -> BitPat("b111000000000?????001?????1010011"), - "FCVT_S_W" -> BitPat("b110100000000?????????????1010011"), - "FCVT_S_WU" -> BitPat("b110100000001?????????????1010011"), - "FCVT_W_S" -> BitPat("b110000000000?????????????1010011"), - "FCVT_WU_S" -> BitPat("b110000000001?????????????1010011"), - "FDIV_S" -> BitPat("b0001100??????????????????1010011"), - "FEQ_S" -> BitPat("b1010000??????????010?????1010011"), - "FLE_S" -> BitPat("b1010000??????????000?????1010011"), - "FLT_S" -> BitPat("b1010000??????????001?????1010011"), - "FLW" -> BitPat("b?????????????????010?????0000111"), - "FMADD_S" -> BitPat("b?????00??????????????????1000011"), - "FMAX_S" -> BitPat("b0010100??????????001?????1010011"), - "FMIN_S" -> BitPat("b0010100??????????000?????1010011"), - "FMSUB_S" -> BitPat("b?????00??????????????????1000111"), - "FMUL_S" -> BitPat("b0001000??????????????????1010011"), - "FMV_H_X" -> BitPat("b111101000000?????000?????1010011"), - "FMV_W_X" -> BitPat("b111100000000?????000?????1010011"), - "FMV_X_W" -> BitPat("b111000000000?????000?????1010011"), - "FNMADD_S" -> BitPat("b?????00??????????????????1001111"), - "FNMSUB_S" -> BitPat("b?????00??????????????????1001011"), - "FSGNJ_S" -> BitPat("b0010000??????????000?????1010011"), - "FSGNJN_S" -> BitPat("b0010000??????????001?????1010011"), - "FSGNJX_S" -> BitPat("b0010000??????????010?????1010011"), - "FSQRT_S" -> BitPat("b010110000000?????????????1010011"), - "FSUB_S" -> BitPat("b0000100??????????????????1010011"), - "FSW" -> BitPat("b?????????????????010?????0100111"), - ) - val MType = Map( - "DIV" -> BitPat("b0000001??????????100?????0110011"), - "DIVU" -> BitPat("b0000001??????????101?????0110011"), - "MUL" -> BitPat("b0000001??????????000?????0110011"), - "MULH" -> BitPat("b0000001??????????001?????0110011"), - "MULHSU" -> BitPat("b0000001??????????010?????0110011"), - "MULHU" -> BitPat("b0000001??????????011?????0110011"), - "REM" -> BitPat("b0000001??????????110?????0110011"), - "REMU" -> BitPat("b0000001??????????111?????0110011"), - ) - val ZALASRType = Map( - "LB_AQ" -> BitPat("b001101?00000?????000?????0101111"), - "LD_AQ" -> BitPat("b001101?00000?????011?????0101111"), - "LH_AQ" -> BitPat("b001101?00000?????001?????0101111"), - "LW_AQ" -> BitPat("b001101?00000?????010?????0101111"), - "SB_RL" -> BitPat("b00111?1??????????000000000101111"), - "SD_RL" -> BitPat("b00111?1??????????011000000101111"), - "SH_RL" -> BitPat("b00111?1??????????001000000101111"), - "SW_RL" -> BitPat("b00111?1??????????010000000101111"), - ) - val ZVKSType = Map( - "VSM3C_VI" -> BitPat("b1010111??????????010?????1110111"), - "VSM3ME_VV" -> BitPat("b1000001??????????010?????1110111"), - "VSM4K_VI" -> BitPat("b1000011??????????010?????1110111"), - "VSM4R_VS" -> BitPat("b1010011?????10000010?????1110111"), - "VSM4R_VV" -> BitPat("b1010001?????10000010?????1110111"), - ) - val B64Type = Map( - "ADD_UW" -> BitPat("b0000100??????????000?????0111011"), - "BCLRI" -> BitPat("b010010???????????001?????0010011"), - "BEXTI" -> BitPat("b010010???????????101?????0010011"), - "BINVI" -> BitPat("b011010???????????001?????0010011"), - "BSETI" -> BitPat("b001010???????????001?????0010011"), - "CLZW" -> BitPat("b011000000000?????001?????0011011"), - "CPOPW" -> BitPat("b011000000010?????001?????0011011"), - "CTZW" -> BitPat("b011000000001?????001?????0011011"), - "REV8" -> BitPat("b011010111000?????101?????0010011"), - "ROLW" -> BitPat("b0110000??????????001?????0111011"), - "RORI" -> BitPat("b011000???????????101?????0010011"), - "RORIW" -> BitPat("b0110000??????????101?????0011011"), - "RORW" -> BitPat("b0110000??????????101?????0111011"), - "SH1ADD_UW" -> BitPat("b0010000??????????010?????0111011"), - "SH2ADD_UW" -> BitPat("b0010000??????????100?????0111011"), - "SH3ADD_UW" -> BitPat("b0010000??????????110?????0111011"), - "SLLI_UW" -> BitPat("b000010???????????001?????0011011"), - "ZEXT_H" -> BitPat("b000010000000?????100?????0111011"), - ) - val ZICONDType = Map( - "CZERO_EQZ" -> BitPat("b0000111??????????101?????0110011"), - "CZERO_NEZ" -> BitPat("b0000111??????????111?????0110011"), - ) - val D32Type = Map( - "FMVH_X_D" -> BitPat("b111000100001?????000?????1010011"), - "FMVP_D_X" -> BitPat("b1011001??????????000?????1010011"), - ) - val SDEXTType = Map( - "DRET" -> BitPat("b01111011001000000000000001110011"), - ) - val D64Type = Map( - "FCVT_D_L" -> BitPat("b110100100010?????????????1010011"), - "FCVT_D_LU" -> BitPat("b110100100011?????????????1010011"), - "FCVT_L_D" -> BitPat("b110000100010?????????????1010011"), - "FCVT_LU_D" -> BitPat("b110000100011?????????????1010011"), - "FMV_D_X" -> BitPat("b111100100000?????000?????1010011"), - "FMV_X_D" -> BitPat("b111000100000?????000?????1010011"), - ) - val ZICFILPType = Map( - "LPAD" -> BitPat("b????????????????????000000010111"), - ) - val ZVBCType = Map( - "VCLMUL_VV" -> BitPat("b001100???????????010?????1010111"), - "VCLMUL_VX" -> BitPat("b001100???????????110?????1010111"), - "VCLMULH_VV" -> BitPat("b001101???????????010?????1010111"), - "VCLMULH_VX" -> BitPat("b001101???????????110?????1010111"), - ) - val ZFH64Type = Map( - "FCVT_H_L" -> BitPat("b110101000010?????????????1010011"), - "FCVT_H_LU" -> BitPat("b110101000011?????????????1010011"), - "FCVT_L_H" -> BitPat("b110001000010?????????????1010011"), - "FCVT_LU_H" -> BitPat("b110001000011?????????????1010011"), - ) - val SType = Map( - "SFENCE_VMA" -> BitPat("b0001001??????????000000001110011"), - "SRET" -> BitPat("b00010000001000000000000001110011"), - ) - val SMDBLTRPType = Map( - "SCTRCLR" -> BitPat("b00010000010000000000000001110011"), - ) - val ZICFISSType = Map( - "SSAMOSWAP_D" -> BitPat("b01001????????????011?????0101111"), - "SSAMOSWAP_W" -> BitPat("b01001????????????010?????0101111"), - "SSPOPCHK_X1" -> BitPat("b11001101110000001100000001110011"), - "SSPOPCHK_X5" -> BitPat("b11001101110000101100000001110011"), - "SSPUSH_X1" -> BitPat("b11001110000100000100000001110011"), - "SSPUSH_X5" -> BitPat("b11001110010100000100000001110011"), - "SSRDP" -> BitPat("b11001101110000000100?????1110011"), - ) - val VType = Map( - "VAADD_VV" -> BitPat("b001001???????????010?????1010111"), - "VAADD_VX" -> BitPat("b001001???????????110?????1010111"), - "VAADDU_VV" -> BitPat("b001000???????????010?????1010111"), - "VAADDU_VX" -> BitPat("b001000???????????110?????1010111"), - "VADC_VIM" -> BitPat("b0100000??????????011?????1010111"), - "VADC_VVM" -> BitPat("b0100000??????????000?????1010111"), - "VADC_VXM" -> BitPat("b0100000??????????100?????1010111"), - "VADD_VI" -> BitPat("b000000???????????011?????1010111"), - "VADD_VV" -> BitPat("b000000???????????000?????1010111"), - "VADD_VX" -> BitPat("b000000???????????100?????1010111"), - "VAND_VI" -> BitPat("b001001???????????011?????1010111"), - "VAND_VV" -> BitPat("b001001???????????000?????1010111"), - "VAND_VX" -> BitPat("b001001???????????100?????1010111"), - "VASUB_VV" -> BitPat("b001011???????????010?????1010111"), - "VASUB_VX" -> BitPat("b001011???????????110?????1010111"), - "VASUBU_VV" -> BitPat("b001010???????????010?????1010111"), - "VASUBU_VX" -> BitPat("b001010???????????110?????1010111"), - "VCOMPRESS_VM" -> BitPat("b0101111??????????010?????1010111"), - "VCPOP_M" -> BitPat("b010000??????10000010?????1010111"), - "VDIV_VV" -> BitPat("b100001???????????010?????1010111"), - "VDIV_VX" -> BitPat("b100001???????????110?????1010111"), - "VDIVU_VV" -> BitPat("b100000???????????010?????1010111"), - "VDIVU_VX" -> BitPat("b100000???????????110?????1010111"), - "VFADD_VF" -> BitPat("b000000???????????101?????1010111"), - "VFADD_VV" -> BitPat("b000000???????????001?????1010111"), - "VFCLASS_V" -> BitPat("b010011??????10000001?????1010111"), - "VFCVT_F_X_V" -> BitPat("b010010??????00011001?????1010111"), - "VFCVT_F_XU_V" -> BitPat("b010010??????00010001?????1010111"), - "VFCVT_RTZ_X_F_V" -> BitPat("b010010??????00111001?????1010111"), - "VFCVT_RTZ_XU_F_V" -> BitPat("b010010??????00110001?????1010111"), - "VFCVT_X_F_V" -> BitPat("b010010??????00001001?????1010111"), - "VFCVT_XU_F_V" -> BitPat("b010010??????00000001?????1010111"), - "VFDIV_VF" -> BitPat("b100000???????????101?????1010111"), - "VFDIV_VV" -> BitPat("b100000???????????001?????1010111"), - "VFIRST_M" -> BitPat("b010000??????10001010?????1010111"), - "VFMACC_VF" -> BitPat("b101100???????????101?????1010111"), - "VFMACC_VV" -> BitPat("b101100???????????001?????1010111"), - "VFMADD_VF" -> BitPat("b101000???????????101?????1010111"), - "VFMADD_VV" -> BitPat("b101000???????????001?????1010111"), - "VFMAX_VF" -> BitPat("b000110???????????101?????1010111"), - "VFMAX_VV" -> BitPat("b000110???????????001?????1010111"), - "VFMERGE_VFM" -> BitPat("b0101110??????????101?????1010111"), - "VFMIN_VF" -> BitPat("b000100???????????101?????1010111"), - "VFMIN_VV" -> BitPat("b000100???????????001?????1010111"), - "VFMSAC_VF" -> BitPat("b101110???????????101?????1010111"), - "VFMSAC_VV" -> BitPat("b101110???????????001?????1010111"), - "VFMSUB_VF" -> BitPat("b101010???????????101?????1010111"), - "VFMSUB_VV" -> BitPat("b101010???????????001?????1010111"), - "VFMUL_VF" -> BitPat("b100100???????????101?????1010111"), - "VFMUL_VV" -> BitPat("b100100???????????001?????1010111"), - "VFMV_F_S" -> BitPat("b0100001?????00000001?????1010111"), - "VFMV_S_F" -> BitPat("b010000100000?????101?????1010111"), - "VFMV_V_F" -> BitPat("b010111100000?????101?????1010111"), - "VFNCVT_F_F_W" -> BitPat("b010010??????10100001?????1010111"), - "VFNCVT_F_X_W" -> BitPat("b010010??????10011001?????1010111"), - "VFNCVT_F_XU_W" -> BitPat("b010010??????10010001?????1010111"), - "VFNCVT_ROD_F_F_W" -> BitPat("b010010??????10101001?????1010111"), - "VFNCVT_RTZ_X_F_W" -> BitPat("b010010??????10111001?????1010111"), - "VFNCVT_RTZ_XU_F_W" -> BitPat("b010010??????10110001?????1010111"), - "VFNCVT_X_F_W" -> BitPat("b010010??????10001001?????1010111"), - "VFNCVT_XU_F_W" -> BitPat("b010010??????10000001?????1010111"), - "VFNMACC_VF" -> BitPat("b101101???????????101?????1010111"), - "VFNMACC_VV" -> BitPat("b101101???????????001?????1010111"), - "VFNMADD_VF" -> BitPat("b101001???????????101?????1010111"), - "VFNMADD_VV" -> BitPat("b101001???????????001?????1010111"), - "VFNMSAC_VF" -> BitPat("b101111???????????101?????1010111"), - "VFNMSAC_VV" -> BitPat("b101111???????????001?????1010111"), - "VFNMSUB_VF" -> BitPat("b101011???????????101?????1010111"), - "VFNMSUB_VV" -> BitPat("b101011???????????001?????1010111"), - "VFRDIV_VF" -> BitPat("b100001???????????101?????1010111"), - "VFREC7_V" -> BitPat("b010011??????00101001?????1010111"), - "VFREDMAX_VS" -> BitPat("b000111???????????001?????1010111"), - "VFREDMIN_VS" -> BitPat("b000101???????????001?????1010111"), - "VFREDOSUM_VS" -> BitPat("b000011???????????001?????1010111"), - "VFREDUSUM_VS" -> BitPat("b000001???????????001?????1010111"), - "VFRSQRT7_V" -> BitPat("b010011??????00100001?????1010111"), - "VFRSUB_VF" -> BitPat("b100111???????????101?????1010111"), - "VFSGNJ_VF" -> BitPat("b001000???????????101?????1010111"), - "VFSGNJ_VV" -> BitPat("b001000???????????001?????1010111"), - "VFSGNJN_VF" -> BitPat("b001001???????????101?????1010111"), - "VFSGNJN_VV" -> BitPat("b001001???????????001?????1010111"), - "VFSGNJX_VF" -> BitPat("b001010???????????101?????1010111"), - "VFSGNJX_VV" -> BitPat("b001010???????????001?????1010111"), - "VFSLIDE1DOWN_VF" -> BitPat("b001111???????????101?????1010111"), - "VFSLIDE1UP_VF" -> BitPat("b001110???????????101?????1010111"), - "VFSQRT_V" -> BitPat("b010011??????00000001?????1010111"), - "VFSUB_VF" -> BitPat("b000010???????????101?????1010111"), - "VFSUB_VV" -> BitPat("b000010???????????001?????1010111"), - "VFWADD_VF" -> BitPat("b110000???????????101?????1010111"), - "VFWADD_VV" -> BitPat("b110000???????????001?????1010111"), - "VFWADD_WF" -> BitPat("b110100???????????101?????1010111"), - "VFWADD_WV" -> BitPat("b110100???????????001?????1010111"), - "VFWCVT_F_F_V" -> BitPat("b010010??????01100001?????1010111"), - "VFWCVT_F_X_V" -> BitPat("b010010??????01011001?????1010111"), - "VFWCVT_F_XU_V" -> BitPat("b010010??????01010001?????1010111"), - "VFWCVT_RTZ_X_F_V" -> BitPat("b010010??????01111001?????1010111"), - "VFWCVT_RTZ_XU_F_V" -> BitPat("b010010??????01110001?????1010111"), - "VFWCVT_X_F_V" -> BitPat("b010010??????01001001?????1010111"), - "VFWCVT_XU_F_V" -> BitPat("b010010??????01000001?????1010111"), - "VFWMACC_VF" -> BitPat("b111100???????????101?????1010111"), - "VFWMACC_VV" -> BitPat("b111100???????????001?????1010111"), - "VFWMSAC_VF" -> BitPat("b111110???????????101?????1010111"), - "VFWMSAC_VV" -> BitPat("b111110???????????001?????1010111"), - "VFWMUL_VF" -> BitPat("b111000???????????101?????1010111"), - "VFWMUL_VV" -> BitPat("b111000???????????001?????1010111"), - "VFWNMACC_VF" -> BitPat("b111101???????????101?????1010111"), - "VFWNMACC_VV" -> BitPat("b111101???????????001?????1010111"), - "VFWNMSAC_VF" -> BitPat("b111111???????????101?????1010111"), - "VFWNMSAC_VV" -> BitPat("b111111???????????001?????1010111"), - "VFWREDOSUM_VS" -> BitPat("b110011???????????001?????1010111"), - "VFWREDUSUM_VS" -> BitPat("b110001???????????001?????1010111"), - "VFWSUB_VF" -> BitPat("b110010???????????101?????1010111"), - "VFWSUB_VV" -> BitPat("b110010???????????001?????1010111"), - "VFWSUB_WF" -> BitPat("b110110???????????101?????1010111"), - "VFWSUB_WV" -> BitPat("b110110???????????001?????1010111"), - "VID_V" -> BitPat("b010100?0000010001010?????1010111"), - "VIOTA_M" -> BitPat("b010100??????10000010?????1010111"), - "VL1RE16_V" -> BitPat("b000000101000?????101?????0000111"), - "VL1RE32_V" -> BitPat("b000000101000?????110?????0000111"), - "VL1RE64_V" -> BitPat("b000000101000?????111?????0000111"), - "VL1RE8_V" -> BitPat("b000000101000?????000?????0000111"), - "VL2RE16_V" -> BitPat("b001000101000?????101?????0000111"), - "VL2RE32_V" -> BitPat("b001000101000?????110?????0000111"), - "VL2RE64_V" -> BitPat("b001000101000?????111?????0000111"), - "VL2RE8_V" -> BitPat("b001000101000?????000?????0000111"), - "VL4RE16_V" -> BitPat("b011000101000?????101?????0000111"), - "VL4RE32_V" -> BitPat("b011000101000?????110?????0000111"), - "VL4RE64_V" -> BitPat("b011000101000?????111?????0000111"), - "VL4RE8_V" -> BitPat("b011000101000?????000?????0000111"), - "VL8RE16_V" -> BitPat("b111000101000?????101?????0000111"), - "VL8RE32_V" -> BitPat("b111000101000?????110?????0000111"), - "VL8RE64_V" -> BitPat("b111000101000?????111?????0000111"), - "VL8RE8_V" -> BitPat("b111000101000?????000?????0000111"), - "VLE16_V" -> BitPat("b000000?00000?????101?????0000111"), - "VLE16FF_V" -> BitPat("b000000?10000?????101?????0000111"), - "VLE32_V" -> BitPat("b000000?00000?????110?????0000111"), - "VLE32FF_V" -> BitPat("b000000?10000?????110?????0000111"), - "VLE64_V" -> BitPat("b000000?00000?????111?????0000111"), - "VLE64FF_V" -> BitPat("b000000?10000?????111?????0000111"), - "VLE8_V" -> BitPat("b000000?00000?????000?????0000111"), - "VLE8FF_V" -> BitPat("b000000?10000?????000?????0000111"), - "VLM_V" -> BitPat("b000000101011?????000?????0000111"), - "VLOXEI16_V" -> BitPat("b000011???????????101?????0000111"), - "VLOXEI32_V" -> BitPat("b000011???????????110?????0000111"), - "VLOXEI64_V" -> BitPat("b000011???????????111?????0000111"), - "VLOXEI8_V" -> BitPat("b000011???????????000?????0000111"), - "VLOXSEG2EI16_V" -> BitPat("b001011???????????101?????0000111"), - "VLOXSEG2EI32_V" -> BitPat("b001011???????????110?????0000111"), - "VLOXSEG2EI64_V" -> BitPat("b001011???????????111?????0000111"), - "VLOXSEG2EI8_V" -> BitPat("b001011???????????000?????0000111"), - "VLOXSEG3EI16_V" -> BitPat("b010011???????????101?????0000111"), - "VLOXSEG3EI32_V" -> BitPat("b010011???????????110?????0000111"), - "VLOXSEG3EI64_V" -> BitPat("b010011???????????111?????0000111"), - "VLOXSEG3EI8_V" -> BitPat("b010011???????????000?????0000111"), - "VLOXSEG4EI16_V" -> BitPat("b011011???????????101?????0000111"), - "VLOXSEG4EI32_V" -> BitPat("b011011???????????110?????0000111"), - "VLOXSEG4EI64_V" -> BitPat("b011011???????????111?????0000111"), - "VLOXSEG4EI8_V" -> BitPat("b011011???????????000?????0000111"), - "VLOXSEG5EI16_V" -> BitPat("b100011???????????101?????0000111"), - "VLOXSEG5EI32_V" -> BitPat("b100011???????????110?????0000111"), - "VLOXSEG5EI64_V" -> BitPat("b100011???????????111?????0000111"), - "VLOXSEG5EI8_V" -> BitPat("b100011???????????000?????0000111"), - "VLOXSEG6EI16_V" -> BitPat("b101011???????????101?????0000111"), - "VLOXSEG6EI32_V" -> BitPat("b101011???????????110?????0000111"), - "VLOXSEG6EI64_V" -> BitPat("b101011???????????111?????0000111"), - "VLOXSEG6EI8_V" -> BitPat("b101011???????????000?????0000111"), - "VLOXSEG7EI16_V" -> BitPat("b110011???????????101?????0000111"), - "VLOXSEG7EI32_V" -> BitPat("b110011???????????110?????0000111"), - "VLOXSEG7EI64_V" -> BitPat("b110011???????????111?????0000111"), - "VLOXSEG7EI8_V" -> BitPat("b110011???????????000?????0000111"), - "VLOXSEG8EI16_V" -> BitPat("b111011???????????101?????0000111"), - "VLOXSEG8EI32_V" -> BitPat("b111011???????????110?????0000111"), - "VLOXSEG8EI64_V" -> BitPat("b111011???????????111?????0000111"), - "VLOXSEG8EI8_V" -> BitPat("b111011???????????000?????0000111"), - "VLSE16_V" -> BitPat("b000010???????????101?????0000111"), - "VLSE32_V" -> BitPat("b000010???????????110?????0000111"), - "VLSE64_V" -> BitPat("b000010???????????111?????0000111"), - "VLSE8_V" -> BitPat("b000010???????????000?????0000111"), - "VLSEG2E16_V" -> BitPat("b001000?00000?????101?????0000111"), - "VLSEG2E16FF_V" -> BitPat("b001000?10000?????101?????0000111"), - "VLSEG2E32_V" -> BitPat("b001000?00000?????110?????0000111"), - "VLSEG2E32FF_V" -> BitPat("b001000?10000?????110?????0000111"), - "VLSEG2E64_V" -> BitPat("b001000?00000?????111?????0000111"), - "VLSEG2E64FF_V" -> BitPat("b001000?10000?????111?????0000111"), - "VLSEG2E8_V" -> BitPat("b001000?00000?????000?????0000111"), - "VLSEG2E8FF_V" -> BitPat("b001000?10000?????000?????0000111"), - "VLSEG3E16_V" -> BitPat("b010000?00000?????101?????0000111"), - "VLSEG3E16FF_V" -> BitPat("b010000?10000?????101?????0000111"), - "VLSEG3E32_V" -> BitPat("b010000?00000?????110?????0000111"), - "VLSEG3E32FF_V" -> BitPat("b010000?10000?????110?????0000111"), - "VLSEG3E64_V" -> BitPat("b010000?00000?????111?????0000111"), - "VLSEG3E64FF_V" -> BitPat("b010000?10000?????111?????0000111"), - "VLSEG3E8_V" -> BitPat("b010000?00000?????000?????0000111"), - "VLSEG3E8FF_V" -> BitPat("b010000?10000?????000?????0000111"), - "VLSEG4E16_V" -> BitPat("b011000?00000?????101?????0000111"), - "VLSEG4E16FF_V" -> BitPat("b011000?10000?????101?????0000111"), - "VLSEG4E32_V" -> BitPat("b011000?00000?????110?????0000111"), - "VLSEG4E32FF_V" -> BitPat("b011000?10000?????110?????0000111"), - "VLSEG4E64_V" -> BitPat("b011000?00000?????111?????0000111"), - "VLSEG4E64FF_V" -> BitPat("b011000?10000?????111?????0000111"), - "VLSEG4E8_V" -> BitPat("b011000?00000?????000?????0000111"), - "VLSEG4E8FF_V" -> BitPat("b011000?10000?????000?????0000111"), - "VLSEG5E16_V" -> BitPat("b100000?00000?????101?????0000111"), - "VLSEG5E16FF_V" -> BitPat("b100000?10000?????101?????0000111"), - "VLSEG5E32_V" -> BitPat("b100000?00000?????110?????0000111"), - "VLSEG5E32FF_V" -> BitPat("b100000?10000?????110?????0000111"), - "VLSEG5E64_V" -> BitPat("b100000?00000?????111?????0000111"), - "VLSEG5E64FF_V" -> BitPat("b100000?10000?????111?????0000111"), - "VLSEG5E8_V" -> BitPat("b100000?00000?????000?????0000111"), - "VLSEG5E8FF_V" -> BitPat("b100000?10000?????000?????0000111"), - "VLSEG6E16_V" -> BitPat("b101000?00000?????101?????0000111"), - "VLSEG6E16FF_V" -> BitPat("b101000?10000?????101?????0000111"), - "VLSEG6E32_V" -> BitPat("b101000?00000?????110?????0000111"), - "VLSEG6E32FF_V" -> BitPat("b101000?10000?????110?????0000111"), - "VLSEG6E64_V" -> BitPat("b101000?00000?????111?????0000111"), - "VLSEG6E64FF_V" -> BitPat("b101000?10000?????111?????0000111"), - "VLSEG6E8_V" -> BitPat("b101000?00000?????000?????0000111"), - "VLSEG6E8FF_V" -> BitPat("b101000?10000?????000?????0000111"), - "VLSEG7E16_V" -> BitPat("b110000?00000?????101?????0000111"), - "VLSEG7E16FF_V" -> BitPat("b110000?10000?????101?????0000111"), - "VLSEG7E32_V" -> BitPat("b110000?00000?????110?????0000111"), - "VLSEG7E32FF_V" -> BitPat("b110000?10000?????110?????0000111"), - "VLSEG7E64_V" -> BitPat("b110000?00000?????111?????0000111"), - "VLSEG7E64FF_V" -> BitPat("b110000?10000?????111?????0000111"), - "VLSEG7E8_V" -> BitPat("b110000?00000?????000?????0000111"), - "VLSEG7E8FF_V" -> BitPat("b110000?10000?????000?????0000111"), - "VLSEG8E16_V" -> BitPat("b111000?00000?????101?????0000111"), - "VLSEG8E16FF_V" -> BitPat("b111000?10000?????101?????0000111"), - "VLSEG8E32_V" -> BitPat("b111000?00000?????110?????0000111"), - "VLSEG8E32FF_V" -> BitPat("b111000?10000?????110?????0000111"), - "VLSEG8E64_V" -> BitPat("b111000?00000?????111?????0000111"), - "VLSEG8E64FF_V" -> BitPat("b111000?10000?????111?????0000111"), - "VLSEG8E8_V" -> BitPat("b111000?00000?????000?????0000111"), - "VLSEG8E8FF_V" -> BitPat("b111000?10000?????000?????0000111"), - "VLSSEG2E16_V" -> BitPat("b001010???????????101?????0000111"), - "VLSSEG2E32_V" -> BitPat("b001010???????????110?????0000111"), - "VLSSEG2E64_V" -> BitPat("b001010???????????111?????0000111"), - "VLSSEG2E8_V" -> BitPat("b001010???????????000?????0000111"), - "VLSSEG3E16_V" -> BitPat("b010010???????????101?????0000111"), - "VLSSEG3E32_V" -> BitPat("b010010???????????110?????0000111"), - "VLSSEG3E64_V" -> BitPat("b010010???????????111?????0000111"), - "VLSSEG3E8_V" -> BitPat("b010010???????????000?????0000111"), - "VLSSEG4E16_V" -> BitPat("b011010???????????101?????0000111"), - "VLSSEG4E32_V" -> BitPat("b011010???????????110?????0000111"), - "VLSSEG4E64_V" -> BitPat("b011010???????????111?????0000111"), - "VLSSEG4E8_V" -> BitPat("b011010???????????000?????0000111"), - "VLSSEG5E16_V" -> BitPat("b100010???????????101?????0000111"), - "VLSSEG5E32_V" -> BitPat("b100010???????????110?????0000111"), - "VLSSEG5E64_V" -> BitPat("b100010???????????111?????0000111"), - "VLSSEG5E8_V" -> BitPat("b100010???????????000?????0000111"), - "VLSSEG6E16_V" -> BitPat("b101010???????????101?????0000111"), - "VLSSEG6E32_V" -> BitPat("b101010???????????110?????0000111"), - "VLSSEG6E64_V" -> BitPat("b101010???????????111?????0000111"), - "VLSSEG6E8_V" -> BitPat("b101010???????????000?????0000111"), - "VLSSEG7E16_V" -> BitPat("b110010???????????101?????0000111"), - "VLSSEG7E32_V" -> BitPat("b110010???????????110?????0000111"), - "VLSSEG7E64_V" -> BitPat("b110010???????????111?????0000111"), - "VLSSEG7E8_V" -> BitPat("b110010???????????000?????0000111"), - "VLSSEG8E16_V" -> BitPat("b111010???????????101?????0000111"), - "VLSSEG8E32_V" -> BitPat("b111010???????????110?????0000111"), - "VLSSEG8E64_V" -> BitPat("b111010???????????111?????0000111"), - "VLSSEG8E8_V" -> BitPat("b111010???????????000?????0000111"), - "VLUXEI16_V" -> BitPat("b000001???????????101?????0000111"), - "VLUXEI32_V" -> BitPat("b000001???????????110?????0000111"), - "VLUXEI64_V" -> BitPat("b000001???????????111?????0000111"), - "VLUXEI8_V" -> BitPat("b000001???????????000?????0000111"), - "VLUXSEG2EI16_V" -> BitPat("b001001???????????101?????0000111"), - "VLUXSEG2EI32_V" -> BitPat("b001001???????????110?????0000111"), - "VLUXSEG2EI64_V" -> BitPat("b001001???????????111?????0000111"), - "VLUXSEG2EI8_V" -> BitPat("b001001???????????000?????0000111"), - "VLUXSEG3EI16_V" -> BitPat("b010001???????????101?????0000111"), - "VLUXSEG3EI32_V" -> BitPat("b010001???????????110?????0000111"), - "VLUXSEG3EI64_V" -> BitPat("b010001???????????111?????0000111"), - "VLUXSEG3EI8_V" -> BitPat("b010001???????????000?????0000111"), - "VLUXSEG4EI16_V" -> BitPat("b011001???????????101?????0000111"), - "VLUXSEG4EI32_V" -> BitPat("b011001???????????110?????0000111"), - "VLUXSEG4EI64_V" -> BitPat("b011001???????????111?????0000111"), - "VLUXSEG4EI8_V" -> BitPat("b011001???????????000?????0000111"), - "VLUXSEG5EI16_V" -> BitPat("b100001???????????101?????0000111"), - "VLUXSEG5EI32_V" -> BitPat("b100001???????????110?????0000111"), - "VLUXSEG5EI64_V" -> BitPat("b100001???????????111?????0000111"), - "VLUXSEG5EI8_V" -> BitPat("b100001???????????000?????0000111"), - "VLUXSEG6EI16_V" -> BitPat("b101001???????????101?????0000111"), - "VLUXSEG6EI32_V" -> BitPat("b101001???????????110?????0000111"), - "VLUXSEG6EI64_V" -> BitPat("b101001???????????111?????0000111"), - "VLUXSEG6EI8_V" -> BitPat("b101001???????????000?????0000111"), - "VLUXSEG7EI16_V" -> BitPat("b110001???????????101?????0000111"), - "VLUXSEG7EI32_V" -> BitPat("b110001???????????110?????0000111"), - "VLUXSEG7EI64_V" -> BitPat("b110001???????????111?????0000111"), - "VLUXSEG7EI8_V" -> BitPat("b110001???????????000?????0000111"), - "VLUXSEG8EI16_V" -> BitPat("b111001???????????101?????0000111"), - "VLUXSEG8EI32_V" -> BitPat("b111001???????????110?????0000111"), - "VLUXSEG8EI64_V" -> BitPat("b111001???????????111?????0000111"), - "VLUXSEG8EI8_V" -> BitPat("b111001???????????000?????0000111"), - "VMACC_VV" -> BitPat("b101101???????????010?????1010111"), - "VMACC_VX" -> BitPat("b101101???????????110?????1010111"), - "VMADC_VI" -> BitPat("b0100011??????????011?????1010111"), - "VMADC_VIM" -> BitPat("b0100010??????????011?????1010111"), - "VMADC_VV" -> BitPat("b0100011??????????000?????1010111"), - "VMADC_VVM" -> BitPat("b0100010??????????000?????1010111"), - "VMADC_VX" -> BitPat("b0100011??????????100?????1010111"), - "VMADC_VXM" -> BitPat("b0100010??????????100?????1010111"), - "VMADD_VV" -> BitPat("b101001???????????010?????1010111"), - "VMADD_VX" -> BitPat("b101001???????????110?????1010111"), - "VMAND_MM" -> BitPat("b0110011??????????010?????1010111"), - "VMANDN_MM" -> BitPat("b0110001??????????010?????1010111"), - "VMAX_VV" -> BitPat("b000111???????????000?????1010111"), - "VMAX_VX" -> BitPat("b000111???????????100?????1010111"), - "VMAXU_VV" -> BitPat("b000110???????????000?????1010111"), - "VMAXU_VX" -> BitPat("b000110???????????100?????1010111"), - "VMERGE_VIM" -> BitPat("b0101110??????????011?????1010111"), - "VMERGE_VVM" -> BitPat("b0101110??????????000?????1010111"), - "VMERGE_VXM" -> BitPat("b0101110??????????100?????1010111"), - "VMFEQ_VF" -> BitPat("b011000???????????101?????1010111"), - "VMFEQ_VV" -> BitPat("b011000???????????001?????1010111"), - "VMFGE_VF" -> BitPat("b011111???????????101?????1010111"), - "VMFGT_VF" -> BitPat("b011101???????????101?????1010111"), - "VMFLE_VF" -> BitPat("b011001???????????101?????1010111"), - "VMFLE_VV" -> BitPat("b011001???????????001?????1010111"), - "VMFLT_VF" -> BitPat("b011011???????????101?????1010111"), - "VMFLT_VV" -> BitPat("b011011???????????001?????1010111"), - "VMFNE_VF" -> BitPat("b011100???????????101?????1010111"), - "VMFNE_VV" -> BitPat("b011100???????????001?????1010111"), - "VMIN_VV" -> BitPat("b000101???????????000?????1010111"), - "VMIN_VX" -> BitPat("b000101???????????100?????1010111"), - "VMINU_VV" -> BitPat("b000100???????????000?????1010111"), - "VMINU_VX" -> BitPat("b000100???????????100?????1010111"), - "VMNAND_MM" -> BitPat("b0111011??????????010?????1010111"), - "VMNOR_MM" -> BitPat("b0111101??????????010?????1010111"), - "VMOR_MM" -> BitPat("b0110101??????????010?????1010111"), - "VMORN_MM" -> BitPat("b0111001??????????010?????1010111"), - "VMSBC_VV" -> BitPat("b0100111??????????000?????1010111"), - "VMSBC_VVM" -> BitPat("b0100110??????????000?????1010111"), - "VMSBC_VX" -> BitPat("b0100111??????????100?????1010111"), - "VMSBC_VXM" -> BitPat("b0100110??????????100?????1010111"), - "VMSBF_M" -> BitPat("b010100??????00001010?????1010111"), - "VMSEQ_VI" -> BitPat("b011000???????????011?????1010111"), - "VMSEQ_VV" -> BitPat("b011000???????????000?????1010111"), - "VMSEQ_VX" -> BitPat("b011000???????????100?????1010111"), - "VMSGT_VI" -> BitPat("b011111???????????011?????1010111"), - "VMSGT_VX" -> BitPat("b011111???????????100?????1010111"), - "VMSGTU_VI" -> BitPat("b011110???????????011?????1010111"), - "VMSGTU_VX" -> BitPat("b011110???????????100?????1010111"), - "VMSIF_M" -> BitPat("b010100??????00011010?????1010111"), - "VMSLE_VI" -> BitPat("b011101???????????011?????1010111"), - "VMSLE_VV" -> BitPat("b011101???????????000?????1010111"), - "VMSLE_VX" -> BitPat("b011101???????????100?????1010111"), - "VMSLEU_VI" -> BitPat("b011100???????????011?????1010111"), - "VMSLEU_VV" -> BitPat("b011100???????????000?????1010111"), - "VMSLEU_VX" -> BitPat("b011100???????????100?????1010111"), - "VMSLT_VV" -> BitPat("b011011???????????000?????1010111"), - "VMSLT_VX" -> BitPat("b011011???????????100?????1010111"), - "VMSLTU_VV" -> BitPat("b011010???????????000?????1010111"), - "VMSLTU_VX" -> BitPat("b011010???????????100?????1010111"), - "VMSNE_VI" -> BitPat("b011001???????????011?????1010111"), - "VMSNE_VV" -> BitPat("b011001???????????000?????1010111"), - "VMSNE_VX" -> BitPat("b011001???????????100?????1010111"), - "VMSOF_M" -> BitPat("b010100??????00010010?????1010111"), - "VMUL_VV" -> BitPat("b100101???????????010?????1010111"), - "VMUL_VX" -> BitPat("b100101???????????110?????1010111"), - "VMULH_VV" -> BitPat("b100111???????????010?????1010111"), - "VMULH_VX" -> BitPat("b100111???????????110?????1010111"), - "VMULHSU_VV" -> BitPat("b100110???????????010?????1010111"), - "VMULHSU_VX" -> BitPat("b100110???????????110?????1010111"), - "VMULHU_VV" -> BitPat("b100100???????????010?????1010111"), - "VMULHU_VX" -> BitPat("b100100???????????110?????1010111"), - "VMV1R_V" -> BitPat("b1001111?????00000011?????1010111"), - "VMV2R_V" -> BitPat("b1001111?????00001011?????1010111"), - "VMV4R_V" -> BitPat("b1001111?????00011011?????1010111"), - "VMV8R_V" -> BitPat("b1001111?????00111011?????1010111"), - "VMV_S_X" -> BitPat("b010000100000?????110?????1010111"), - "VMV_V_I" -> BitPat("b010111100000?????011?????1010111"), - "VMV_V_V" -> BitPat("b010111100000?????000?????1010111"), - "VMV_V_X" -> BitPat("b010111100000?????100?????1010111"), - "VMV_X_S" -> BitPat("b0100001?????00000010?????1010111"), - "VMXNOR_MM" -> BitPat("b0111111??????????010?????1010111"), - "VMXOR_MM" -> BitPat("b0110111??????????010?????1010111"), - "VNCLIP_WI" -> BitPat("b101111???????????011?????1010111"), - "VNCLIP_WV" -> BitPat("b101111???????????000?????1010111"), - "VNCLIP_WX" -> BitPat("b101111???????????100?????1010111"), - "VNCLIPU_WI" -> BitPat("b101110???????????011?????1010111"), - "VNCLIPU_WV" -> BitPat("b101110???????????000?????1010111"), - "VNCLIPU_WX" -> BitPat("b101110???????????100?????1010111"), - "VNMSAC_VV" -> BitPat("b101111???????????010?????1010111"), - "VNMSAC_VX" -> BitPat("b101111???????????110?????1010111"), - "VNMSUB_VV" -> BitPat("b101011???????????010?????1010111"), - "VNMSUB_VX" -> BitPat("b101011???????????110?????1010111"), - "VNSRA_WI" -> BitPat("b101101???????????011?????1010111"), - "VNSRA_WV" -> BitPat("b101101???????????000?????1010111"), - "VNSRA_WX" -> BitPat("b101101???????????100?????1010111"), - "VNSRL_WI" -> BitPat("b101100???????????011?????1010111"), - "VNSRL_WV" -> BitPat("b101100???????????000?????1010111"), - "VNSRL_WX" -> BitPat("b101100???????????100?????1010111"), - "VOR_VI" -> BitPat("b001010???????????011?????1010111"), - "VOR_VV" -> BitPat("b001010???????????000?????1010111"), - "VOR_VX" -> BitPat("b001010???????????100?????1010111"), - "VREDAND_VS" -> BitPat("b000001???????????010?????1010111"), - "VREDMAX_VS" -> BitPat("b000111???????????010?????1010111"), - "VREDMAXU_VS" -> BitPat("b000110???????????010?????1010111"), - "VREDMIN_VS" -> BitPat("b000101???????????010?????1010111"), - "VREDMINU_VS" -> BitPat("b000100???????????010?????1010111"), - "VREDOR_VS" -> BitPat("b000010???????????010?????1010111"), - "VREDSUM_VS" -> BitPat("b000000???????????010?????1010111"), - "VREDXOR_VS" -> BitPat("b000011???????????010?????1010111"), - "VREM_VV" -> BitPat("b100011???????????010?????1010111"), - "VREM_VX" -> BitPat("b100011???????????110?????1010111"), - "VREMU_VV" -> BitPat("b100010???????????010?????1010111"), - "VREMU_VX" -> BitPat("b100010???????????110?????1010111"), - "VRGATHER_VI" -> BitPat("b001100???????????011?????1010111"), - "VRGATHER_VV" -> BitPat("b001100???????????000?????1010111"), - "VRGATHER_VX" -> BitPat("b001100???????????100?????1010111"), - "VRGATHEREI16_VV" -> BitPat("b001110???????????000?????1010111"), - "VRSUB_VI" -> BitPat("b000011???????????011?????1010111"), - "VRSUB_VX" -> BitPat("b000011???????????100?????1010111"), - "VS1R_V" -> BitPat("b000000101000?????000?????0100111"), - "VS2R_V" -> BitPat("b001000101000?????000?????0100111"), - "VS4R_V" -> BitPat("b011000101000?????000?????0100111"), - "VS8R_V" -> BitPat("b111000101000?????000?????0100111"), - "VSADD_VI" -> BitPat("b100001???????????011?????1010111"), - "VSADD_VV" -> BitPat("b100001???????????000?????1010111"), - "VSADD_VX" -> BitPat("b100001???????????100?????1010111"), - "VSADDU_VI" -> BitPat("b100000???????????011?????1010111"), - "VSADDU_VV" -> BitPat("b100000???????????000?????1010111"), - "VSADDU_VX" -> BitPat("b100000???????????100?????1010111"), - "VSBC_VVM" -> BitPat("b0100100??????????000?????1010111"), - "VSBC_VXM" -> BitPat("b0100100??????????100?????1010111"), - "VSE16_V" -> BitPat("b000000?00000?????101?????0100111"), - "VSE32_V" -> BitPat("b000000?00000?????110?????0100111"), - "VSE64_V" -> BitPat("b000000?00000?????111?????0100111"), - "VSE8_V" -> BitPat("b000000?00000?????000?????0100111"), - "VSETIVLI" -> BitPat("b11???????????????111?????1010111"), - "VSETVL" -> BitPat("b1000000??????????111?????1010111"), - "VSETVLI" -> BitPat("b0????????????????111?????1010111"), - "VSEXT_VF2" -> BitPat("b010010??????00111010?????1010111"), - "VSEXT_VF4" -> BitPat("b010010??????00101010?????1010111"), - "VSEXT_VF8" -> BitPat("b010010??????00011010?????1010111"), - "VSLIDE1DOWN_VX" -> BitPat("b001111???????????110?????1010111"), - "VSLIDE1UP_VX" -> BitPat("b001110???????????110?????1010111"), - "VSLIDEDOWN_VI" -> BitPat("b001111???????????011?????1010111"), - "VSLIDEDOWN_VX" -> BitPat("b001111???????????100?????1010111"), - "VSLIDEUP_VI" -> BitPat("b001110???????????011?????1010111"), - "VSLIDEUP_VX" -> BitPat("b001110???????????100?????1010111"), - "VSLL_VI" -> BitPat("b100101???????????011?????1010111"), - "VSLL_VV" -> BitPat("b100101???????????000?????1010111"), - "VSLL_VX" -> BitPat("b100101???????????100?????1010111"), - "VSM_V" -> BitPat("b000000101011?????000?????0100111"), - "VSMUL_VV" -> BitPat("b100111???????????000?????1010111"), - "VSMUL_VX" -> BitPat("b100111???????????100?????1010111"), - "VSOXEI16_V" -> BitPat("b000011???????????101?????0100111"), - "VSOXEI32_V" -> BitPat("b000011???????????110?????0100111"), - "VSOXEI64_V" -> BitPat("b000011???????????111?????0100111"), - "VSOXEI8_V" -> BitPat("b000011???????????000?????0100111"), - "VSOXSEG2EI16_V" -> BitPat("b001011???????????101?????0100111"), - "VSOXSEG2EI32_V" -> BitPat("b001011???????????110?????0100111"), - "VSOXSEG2EI64_V" -> BitPat("b001011???????????111?????0100111"), - "VSOXSEG2EI8_V" -> BitPat("b001011???????????000?????0100111"), - "VSOXSEG3EI16_V" -> BitPat("b010011???????????101?????0100111"), - "VSOXSEG3EI32_V" -> BitPat("b010011???????????110?????0100111"), - "VSOXSEG3EI64_V" -> BitPat("b010011???????????111?????0100111"), - "VSOXSEG3EI8_V" -> BitPat("b010011???????????000?????0100111"), - "VSOXSEG4EI16_V" -> BitPat("b011011???????????101?????0100111"), - "VSOXSEG4EI32_V" -> BitPat("b011011???????????110?????0100111"), - "VSOXSEG4EI64_V" -> BitPat("b011011???????????111?????0100111"), - "VSOXSEG4EI8_V" -> BitPat("b011011???????????000?????0100111"), - "VSOXSEG5EI16_V" -> BitPat("b100011???????????101?????0100111"), - "VSOXSEG5EI32_V" -> BitPat("b100011???????????110?????0100111"), - "VSOXSEG5EI64_V" -> BitPat("b100011???????????111?????0100111"), - "VSOXSEG5EI8_V" -> BitPat("b100011???????????000?????0100111"), - "VSOXSEG6EI16_V" -> BitPat("b101011???????????101?????0100111"), - "VSOXSEG6EI32_V" -> BitPat("b101011???????????110?????0100111"), - "VSOXSEG6EI64_V" -> BitPat("b101011???????????111?????0100111"), - "VSOXSEG6EI8_V" -> BitPat("b101011???????????000?????0100111"), - "VSOXSEG7EI16_V" -> BitPat("b110011???????????101?????0100111"), - "VSOXSEG7EI32_V" -> BitPat("b110011???????????110?????0100111"), - "VSOXSEG7EI64_V" -> BitPat("b110011???????????111?????0100111"), - "VSOXSEG7EI8_V" -> BitPat("b110011???????????000?????0100111"), - "VSOXSEG8EI16_V" -> BitPat("b111011???????????101?????0100111"), - "VSOXSEG8EI32_V" -> BitPat("b111011???????????110?????0100111"), - "VSOXSEG8EI64_V" -> BitPat("b111011???????????111?????0100111"), - "VSOXSEG8EI8_V" -> BitPat("b111011???????????000?????0100111"), - "VSRA_VI" -> BitPat("b101001???????????011?????1010111"), - "VSRA_VV" -> BitPat("b101001???????????000?????1010111"), - "VSRA_VX" -> BitPat("b101001???????????100?????1010111"), - "VSRL_VI" -> BitPat("b101000???????????011?????1010111"), - "VSRL_VV" -> BitPat("b101000???????????000?????1010111"), - "VSRL_VX" -> BitPat("b101000???????????100?????1010111"), - "VSSE16_V" -> BitPat("b000010???????????101?????0100111"), - "VSSE32_V" -> BitPat("b000010???????????110?????0100111"), - "VSSE64_V" -> BitPat("b000010???????????111?????0100111"), - "VSSE8_V" -> BitPat("b000010???????????000?????0100111"), - "VSSEG2E16_V" -> BitPat("b001000?00000?????101?????0100111"), - "VSSEG2E32_V" -> BitPat("b001000?00000?????110?????0100111"), - "VSSEG2E64_V" -> BitPat("b001000?00000?????111?????0100111"), - "VSSEG2E8_V" -> BitPat("b001000?00000?????000?????0100111"), - "VSSEG3E16_V" -> BitPat("b010000?00000?????101?????0100111"), - "VSSEG3E32_V" -> BitPat("b010000?00000?????110?????0100111"), - "VSSEG3E64_V" -> BitPat("b010000?00000?????111?????0100111"), - "VSSEG3E8_V" -> BitPat("b010000?00000?????000?????0100111"), - "VSSEG4E16_V" -> BitPat("b011000?00000?????101?????0100111"), - "VSSEG4E32_V" -> BitPat("b011000?00000?????110?????0100111"), - "VSSEG4E64_V" -> BitPat("b011000?00000?????111?????0100111"), - "VSSEG4E8_V" -> BitPat("b011000?00000?????000?????0100111"), - "VSSEG5E16_V" -> BitPat("b100000?00000?????101?????0100111"), - "VSSEG5E32_V" -> BitPat("b100000?00000?????110?????0100111"), - "VSSEG5E64_V" -> BitPat("b100000?00000?????111?????0100111"), - "VSSEG5E8_V" -> BitPat("b100000?00000?????000?????0100111"), - "VSSEG6E16_V" -> BitPat("b101000?00000?????101?????0100111"), - "VSSEG6E32_V" -> BitPat("b101000?00000?????110?????0100111"), - "VSSEG6E64_V" -> BitPat("b101000?00000?????111?????0100111"), - "VSSEG6E8_V" -> BitPat("b101000?00000?????000?????0100111"), - "VSSEG7E16_V" -> BitPat("b110000?00000?????101?????0100111"), - "VSSEG7E32_V" -> BitPat("b110000?00000?????110?????0100111"), - "VSSEG7E64_V" -> BitPat("b110000?00000?????111?????0100111"), - "VSSEG7E8_V" -> BitPat("b110000?00000?????000?????0100111"), - "VSSEG8E16_V" -> BitPat("b111000?00000?????101?????0100111"), - "VSSEG8E32_V" -> BitPat("b111000?00000?????110?????0100111"), - "VSSEG8E64_V" -> BitPat("b111000?00000?????111?????0100111"), - "VSSEG8E8_V" -> BitPat("b111000?00000?????000?????0100111"), - "VSSRA_VI" -> BitPat("b101011???????????011?????1010111"), - "VSSRA_VV" -> BitPat("b101011???????????000?????1010111"), - "VSSRA_VX" -> BitPat("b101011???????????100?????1010111"), - "VSSRL_VI" -> BitPat("b101010???????????011?????1010111"), - "VSSRL_VV" -> BitPat("b101010???????????000?????1010111"), - "VSSRL_VX" -> BitPat("b101010???????????100?????1010111"), - "VSSSEG2E16_V" -> BitPat("b001010???????????101?????0100111"), - "VSSSEG2E32_V" -> BitPat("b001010???????????110?????0100111"), - "VSSSEG2E64_V" -> BitPat("b001010???????????111?????0100111"), - "VSSSEG2E8_V" -> BitPat("b001010???????????000?????0100111"), - "VSSSEG3E16_V" -> BitPat("b010010???????????101?????0100111"), - "VSSSEG3E32_V" -> BitPat("b010010???????????110?????0100111"), - "VSSSEG3E64_V" -> BitPat("b010010???????????111?????0100111"), - "VSSSEG3E8_V" -> BitPat("b010010???????????000?????0100111"), - "VSSSEG4E16_V" -> BitPat("b011010???????????101?????0100111"), - "VSSSEG4E32_V" -> BitPat("b011010???????????110?????0100111"), - "VSSSEG4E64_V" -> BitPat("b011010???????????111?????0100111"), - "VSSSEG4E8_V" -> BitPat("b011010???????????000?????0100111"), - "VSSSEG5E16_V" -> BitPat("b100010???????????101?????0100111"), - "VSSSEG5E32_V" -> BitPat("b100010???????????110?????0100111"), - "VSSSEG5E64_V" -> BitPat("b100010???????????111?????0100111"), - "VSSSEG5E8_V" -> BitPat("b100010???????????000?????0100111"), - "VSSSEG6E16_V" -> BitPat("b101010???????????101?????0100111"), - "VSSSEG6E32_V" -> BitPat("b101010???????????110?????0100111"), - "VSSSEG6E64_V" -> BitPat("b101010???????????111?????0100111"), - "VSSSEG6E8_V" -> BitPat("b101010???????????000?????0100111"), - "VSSSEG7E16_V" -> BitPat("b110010???????????101?????0100111"), - "VSSSEG7E32_V" -> BitPat("b110010???????????110?????0100111"), - "VSSSEG7E64_V" -> BitPat("b110010???????????111?????0100111"), - "VSSSEG7E8_V" -> BitPat("b110010???????????000?????0100111"), - "VSSSEG8E16_V" -> BitPat("b111010???????????101?????0100111"), - "VSSSEG8E32_V" -> BitPat("b111010???????????110?????0100111"), - "VSSSEG8E64_V" -> BitPat("b111010???????????111?????0100111"), - "VSSSEG8E8_V" -> BitPat("b111010???????????000?????0100111"), - "VSSUB_VV" -> BitPat("b100011???????????000?????1010111"), - "VSSUB_VX" -> BitPat("b100011???????????100?????1010111"), - "VSSUBU_VV" -> BitPat("b100010???????????000?????1010111"), - "VSSUBU_VX" -> BitPat("b100010???????????100?????1010111"), - "VSUB_VV" -> BitPat("b000010???????????000?????1010111"), - "VSUB_VX" -> BitPat("b000010???????????100?????1010111"), - "VSUXEI16_V" -> BitPat("b000001???????????101?????0100111"), - "VSUXEI32_V" -> BitPat("b000001???????????110?????0100111"), - "VSUXEI64_V" -> BitPat("b000001???????????111?????0100111"), - "VSUXEI8_V" -> BitPat("b000001???????????000?????0100111"), - "VSUXSEG2EI16_V" -> BitPat("b001001???????????101?????0100111"), - "VSUXSEG2EI32_V" -> BitPat("b001001???????????110?????0100111"), - "VSUXSEG2EI64_V" -> BitPat("b001001???????????111?????0100111"), - "VSUXSEG2EI8_V" -> BitPat("b001001???????????000?????0100111"), - "VSUXSEG3EI16_V" -> BitPat("b010001???????????101?????0100111"), - "VSUXSEG3EI32_V" -> BitPat("b010001???????????110?????0100111"), - "VSUXSEG3EI64_V" -> BitPat("b010001???????????111?????0100111"), - "VSUXSEG3EI8_V" -> BitPat("b010001???????????000?????0100111"), - "VSUXSEG4EI16_V" -> BitPat("b011001???????????101?????0100111"), - "VSUXSEG4EI32_V" -> BitPat("b011001???????????110?????0100111"), - "VSUXSEG4EI64_V" -> BitPat("b011001???????????111?????0100111"), - "VSUXSEG4EI8_V" -> BitPat("b011001???????????000?????0100111"), - "VSUXSEG5EI16_V" -> BitPat("b100001???????????101?????0100111"), - "VSUXSEG5EI32_V" -> BitPat("b100001???????????110?????0100111"), - "VSUXSEG5EI64_V" -> BitPat("b100001???????????111?????0100111"), - "VSUXSEG5EI8_V" -> BitPat("b100001???????????000?????0100111"), - "VSUXSEG6EI16_V" -> BitPat("b101001???????????101?????0100111"), - "VSUXSEG6EI32_V" -> BitPat("b101001???????????110?????0100111"), - "VSUXSEG6EI64_V" -> BitPat("b101001???????????111?????0100111"), - "VSUXSEG6EI8_V" -> BitPat("b101001???????????000?????0100111"), - "VSUXSEG7EI16_V" -> BitPat("b110001???????????101?????0100111"), - "VSUXSEG7EI32_V" -> BitPat("b110001???????????110?????0100111"), - "VSUXSEG7EI64_V" -> BitPat("b110001???????????111?????0100111"), - "VSUXSEG7EI8_V" -> BitPat("b110001???????????000?????0100111"), - "VSUXSEG8EI16_V" -> BitPat("b111001???????????101?????0100111"), - "VSUXSEG8EI32_V" -> BitPat("b111001???????????110?????0100111"), - "VSUXSEG8EI64_V" -> BitPat("b111001???????????111?????0100111"), - "VSUXSEG8EI8_V" -> BitPat("b111001???????????000?????0100111"), - "VWADD_VV" -> BitPat("b110001???????????010?????1010111"), - "VWADD_VX" -> BitPat("b110001???????????110?????1010111"), - "VWADD_WV" -> BitPat("b110101???????????010?????1010111"), - "VWADD_WX" -> BitPat("b110101???????????110?????1010111"), - "VWADDU_VV" -> BitPat("b110000???????????010?????1010111"), - "VWADDU_VX" -> BitPat("b110000???????????110?????1010111"), - "VWADDU_WV" -> BitPat("b110100???????????010?????1010111"), - "VWADDU_WX" -> BitPat("b110100???????????110?????1010111"), - "VWMACC_VV" -> BitPat("b111101???????????010?????1010111"), - "VWMACC_VX" -> BitPat("b111101???????????110?????1010111"), - "VWMACCSU_VV" -> BitPat("b111111???????????010?????1010111"), - "VWMACCSU_VX" -> BitPat("b111111???????????110?????1010111"), - "VWMACCU_VV" -> BitPat("b111100???????????010?????1010111"), - "VWMACCU_VX" -> BitPat("b111100???????????110?????1010111"), - "VWMACCUS_VX" -> BitPat("b111110???????????110?????1010111"), - "VWMUL_VV" -> BitPat("b111011???????????010?????1010111"), - "VWMUL_VX" -> BitPat("b111011???????????110?????1010111"), - "VWMULSU_VV" -> BitPat("b111010???????????010?????1010111"), - "VWMULSU_VX" -> BitPat("b111010???????????110?????1010111"), - "VWMULU_VV" -> BitPat("b111000???????????010?????1010111"), - "VWMULU_VX" -> BitPat("b111000???????????110?????1010111"), - "VWREDSUM_VS" -> BitPat("b110001???????????000?????1010111"), - "VWREDSUMU_VS" -> BitPat("b110000???????????000?????1010111"), - "VWSUB_VV" -> BitPat("b110011???????????010?????1010111"), - "VWSUB_VX" -> BitPat("b110011???????????110?????1010111"), - "VWSUB_WV" -> BitPat("b110111???????????010?????1010111"), - "VWSUB_WX" -> BitPat("b110111???????????110?????1010111"), - "VWSUBU_VV" -> BitPat("b110010???????????010?????1010111"), - "VWSUBU_VX" -> BitPat("b110010???????????110?????1010111"), - "VWSUBU_WV" -> BitPat("b110110???????????010?????1010111"), - "VWSUBU_WX" -> BitPat("b110110???????????110?????1010111"), - "VXOR_VI" -> BitPat("b001011???????????011?????1010111"), - "VXOR_VV" -> BitPat("b001011???????????000?????1010111"), - "VXOR_VX" -> BitPat("b001011???????????100?????1010111"), - "VZEXT_VF2" -> BitPat("b010010??????00110010?????1010111"), - "VZEXT_VF4" -> BitPat("b010010??????00100010?????1010111"), - "VZEXT_VF8" -> BitPat("b010010??????00010010?????1010111"), - ) - val ZICSRType = Map( - "CSRRC" -> BitPat("b?????????????????011?????1110011"), - "CSRRCI" -> BitPat("b?????????????????111?????1110011"), - "CSRRS" -> BitPat("b?????????????????010?????1110011"), - "CSRRSI" -> BitPat("b?????????????????110?????1110011"), - "CSRRW" -> BitPat("b?????????????????001?????1110011"), - "CSRRWI" -> BitPat("b?????????????????101?????1110011"), - ) - val F64Type = Map( - "FCVT_L_S" -> BitPat("b110000000010?????????????1010011"), - "FCVT_LU_S" -> BitPat("b110000000011?????????????1010011"), - "FCVT_S_L" -> BitPat("b110100000010?????????????1010011"), - "FCVT_S_LU" -> BitPat("b110100000011?????????????1010011"), - ) - val ZBKXType = Map( - "XPERM4" -> BitPat("b0010100??????????010?????0110011"), - "XPERM8" -> BitPat("b0010100??????????100?????0110011"), - ) - val ZABHAType = Map( - "AMOADD_B" -> BitPat("b00000????????????000?????0101111"), - "AMOADD_H" -> BitPat("b00000????????????001?????0101111"), - "AMOAND_B" -> BitPat("b01100????????????000?????0101111"), - "AMOAND_H" -> BitPat("b01100????????????001?????0101111"), - "AMOCAS_B" -> BitPat("b00101????????????000?????0101111"), - "AMOCAS_H" -> BitPat("b00101????????????001?????0101111"), - "AMOMAX_B" -> BitPat("b10100????????????000?????0101111"), - "AMOMAX_H" -> BitPat("b10100????????????001?????0101111"), - "AMOMAXU_B" -> BitPat("b11100????????????000?????0101111"), - "AMOMAXU_H" -> BitPat("b11100????????????001?????0101111"), - "AMOMIN_B" -> BitPat("b10000????????????000?????0101111"), - "AMOMIN_H" -> BitPat("b10000????????????001?????0101111"), - "AMOMINU_B" -> BitPat("b11000????????????000?????0101111"), - "AMOMINU_H" -> BitPat("b11000????????????001?????0101111"), - "AMOOR_B" -> BitPat("b01000????????????000?????0101111"), - "AMOOR_H" -> BitPat("b01000????????????001?????0101111"), - "AMOSWAP_B" -> BitPat("b00001????????????000?????0101111"), - "AMOSWAP_H" -> BitPat("b00001????????????001?????0101111"), - "AMOXOR_B" -> BitPat("b00100????????????000?????0101111"), - "AMOXOR_H" -> BitPat("b00100????????????001?????0101111"), - ) - val C32Type = Map( - "C_JAL" -> BitPat("b????????????????001???????????01"), - ) - val ZCB64Type = Map( - "C_ZEXT_W" -> BitPat("b????????????????100111???1110001"), - ) - val IType = Map( - "ADD" -> BitPat("b0000000??????????000?????0110011"), - "ADDI" -> BitPat("b?????????????????000?????0010011"), - "AND" -> BitPat("b0000000??????????111?????0110011"), - "ANDI" -> BitPat("b?????????????????111?????0010011"), - "AUIPC" -> BitPat("b?????????????????????????0010111"), - "BEQ" -> BitPat("b?????????????????000?????1100011"), - "BGE" -> BitPat("b?????????????????101?????1100011"), - "BGEU" -> BitPat("b?????????????????111?????1100011"), - "BLT" -> BitPat("b?????????????????100?????1100011"), - "BLTU" -> BitPat("b?????????????????110?????1100011"), - "BNE" -> BitPat("b?????????????????001?????1100011"), - "EBREAK" -> BitPat("b00000000000100000000000001110011"), - "ECALL" -> BitPat("b00000000000000000000000001110011"), - "FENCE" -> BitPat("b?????????????????000?????0001111"), - "JAL" -> BitPat("b?????????????????????????1101111"), - "JALR" -> BitPat("b?????????????????000?????1100111"), - "LB" -> BitPat("b?????????????????000?????0000011"), - "LBU" -> BitPat("b?????????????????100?????0000011"), - "LH" -> BitPat("b?????????????????001?????0000011"), - "LHU" -> BitPat("b?????????????????101?????0000011"), - "LUI" -> BitPat("b?????????????????????????0110111"), - "LW" -> BitPat("b?????????????????010?????0000011"), - "OR" -> BitPat("b0000000??????????110?????0110011"), - "ORI" -> BitPat("b?????????????????110?????0010011"), - "SB" -> BitPat("b?????????????????000?????0100011"), - "SH" -> BitPat("b?????????????????001?????0100011"), - "SLL" -> BitPat("b0000000??????????001?????0110011"), - "SLT" -> BitPat("b0000000??????????010?????0110011"), - "SLTI" -> BitPat("b?????????????????010?????0010011"), - "SLTIU" -> BitPat("b?????????????????011?????0010011"), - "SLTU" -> BitPat("b0000000??????????011?????0110011"), - "SRA" -> BitPat("b0100000??????????101?????0110011"), - "SRL" -> BitPat("b0000000??????????101?????0110011"), - "SUB" -> BitPat("b0100000??????????000?????0110011"), - "SW" -> BitPat("b?????????????????010?????0100011"), - "XOR" -> BitPat("b0000000??????????100?????0110011"), - "XORI" -> BitPat("b?????????????????100?????0010011"), - ) - val CType = Map( - "C_ADD" -> BitPat("b????????????????1001??????????10"), - "C_ADDI" -> BitPat("b????????????????000???????????01"), - "C_ADDI16SP" -> BitPat("b????????????????011?00010?????01"), - "C_ADDI4SPN" -> BitPat("b????????????????000???????????00"), - "C_AND" -> BitPat("b????????????????100011???11???01"), - "C_ANDI" -> BitPat("b????????????????100?10????????01"), - "C_BEQZ" -> BitPat("b????????????????110???????????01"), - "C_BNEZ" -> BitPat("b????????????????111???????????01"), - "C_EBREAK" -> BitPat("b????????????????1001000000000010"), - "C_FLD" -> BitPat("b????????????????001???????????00"), - "C_FLDSP" -> BitPat("b????????????????001???????????10"), - "C_FLW" -> BitPat("b????????????????011???????????00"), - "C_FLWSP" -> BitPat("b????????????????011???????????10"), - "C_FSD" -> BitPat("b????????????????101???????????00"), - "C_FSDSP" -> BitPat("b????????????????101???????????10"), - "C_FSW" -> BitPat("b????????????????111???????????00"), - "C_FSWSP" -> BitPat("b????????????????111???????????10"), - "C_J" -> BitPat("b????????????????101???????????01"), - "C_JALR" -> BitPat("b????????????????1001?????0000010"), - "C_JR" -> BitPat("b????????????????1000?????0000010"), - "C_LI" -> BitPat("b????????????????010???????????01"), - "C_LUI" -> BitPat("b????????????????011???????????01"), - "C_LW" -> BitPat("b????????????????010???????????00"), - "C_LWSP" -> BitPat("b????????????????010???????????10"), - "C_MV" -> BitPat("b????????????????1000??????????10"), - "C_NOP" -> BitPat("b????????????????000?00000?????01"), - "C_OR" -> BitPat("b????????????????100011???10???01"), - "C_SUB" -> BitPat("b????????????????100011???00???01"), - "C_SW" -> BitPat("b????????????????110???????????00"), - "C_SWSP" -> BitPat("b????????????????110???????????10"), - "C_XOR" -> BitPat("b????????????????100011???01???01"), - ) - val I64Type = Map( - "ADDIW" -> BitPat("b?????????????????000?????0011011"), - "ADDW" -> BitPat("b0000000??????????000?????0111011"), - "LD" -> BitPat("b?????????????????011?????0000011"), - "LWU" -> BitPat("b?????????????????110?????0000011"), - "SD" -> BitPat("b?????????????????011?????0100011"), - "SLLI" -> BitPat("b000000???????????001?????0010011"), - "SLLIW" -> BitPat("b0000000??????????001?????0011011"), - "SLLW" -> BitPat("b0000000??????????001?????0111011"), - "SRAI" -> BitPat("b010000???????????101?????0010011"), - "SRAIW" -> BitPat("b0100000??????????101?????0011011"), - "SRAW" -> BitPat("b0100000??????????101?????0111011"), - "SRLI" -> BitPat("b000000???????????101?????0010011"), - "SRLIW" -> BitPat("b0000000??????????101?????0011011"), - "SRLW" -> BitPat("b0000000??????????101?????0111011"), - "SUBW" -> BitPat("b0100000??????????000?????0111011"), - ) - val C64Type = Map( - "C_ADDIW" -> BitPat("b????????????????001???????????01"), - "C_ADDW" -> BitPat("b????????????????100111???01???01"), - "C_LD" -> BitPat("b????????????????011???????????00"), - "C_LDSP" -> BitPat("b????????????????011???????????10"), - "C_SD" -> BitPat("b????????????????111???????????00"), - "C_SDSP" -> BitPat("b????????????????111???????????10"), - "C_SLLI" -> BitPat("b????????????????000???????????10"), - "C_SRAI" -> BitPat("b????????????????100?01????????01"), - "C_SRLI" -> BitPat("b????????????????100?00????????01"), - "C_SUBW" -> BitPat("b????????????????100111???00???01"), - ) - val ZFHType = Map( - "FADD_H" -> BitPat("b0000010??????????????????1010011"), - "FCLASS_H" -> BitPat("b111001000000?????001?????1010011"), - "FCVT_H_S" -> BitPat("b010001000000?????????????1010011"), - "FCVT_H_W" -> BitPat("b110101000000?????????????1010011"), - "FCVT_H_WU" -> BitPat("b110101000001?????????????1010011"), - "FCVT_S_H" -> BitPat("b010000000010?????????????1010011"), - "FCVT_W_H" -> BitPat("b110001000000?????????????1010011"), - "FCVT_WU_H" -> BitPat("b110001000001?????????????1010011"), - "FDIV_H" -> BitPat("b0001110??????????????????1010011"), - "FEQ_H" -> BitPat("b1010010??????????010?????1010011"), - "FLE_H" -> BitPat("b1010010??????????000?????1010011"), - "FLH" -> BitPat("b?????????????????001?????0000111"), - "FLT_H" -> BitPat("b1010010??????????001?????1010011"), - "FMADD_H" -> BitPat("b?????10??????????????????1000011"), - "FMAX_H" -> BitPat("b0010110??????????001?????1010011"), - "FMIN_H" -> BitPat("b0010110??????????000?????1010011"), - "FMSUB_H" -> BitPat("b?????10??????????????????1000111"), - "FMUL_H" -> BitPat("b0001010??????????????????1010011"), - "FMV_X_H" -> BitPat("b111001000000?????000?????1010011"), - "FNMADD_H" -> BitPat("b?????10??????????????????1001111"), - "FNMSUB_H" -> BitPat("b?????10??????????????????1001011"), - "FSGNJ_H" -> BitPat("b0010010??????????000?????1010011"), - "FSGNJN_H" -> BitPat("b0010010??????????001?????1010011"), - "FSGNJX_H" -> BitPat("b0010010??????????010?????1010011"), - "FSH" -> BitPat("b?????????????????001?????0100111"), - "FSQRT_H" -> BitPat("b010111000000?????????????1010011"), - "FSUB_H" -> BitPat("b0000110??????????????????1010011"), - ) - val QType = Map( - "FADD_Q" -> BitPat("b0000011??????????????????1010011"), - "FCLASS_Q" -> BitPat("b111001100000?????001?????1010011"), - "FCVT_D_Q" -> BitPat("b010000100011?????????????1010011"), - "FCVT_H_Q" -> BitPat("b010001000011?????????????1010011"), - "FCVT_Q_D" -> BitPat("b010001100001?????????????1010011"), - "FCVT_Q_H" -> BitPat("b010001100010?????????????1010011"), - "FCVT_Q_S" -> BitPat("b010001100000?????????????1010011"), - "FCVT_Q_W" -> BitPat("b110101100000?????????????1010011"), - "FCVT_Q_WU" -> BitPat("b110101100001?????????????1010011"), - "FCVT_S_Q" -> BitPat("b010000000011?????????????1010011"), - "FCVT_W_Q" -> BitPat("b110001100000?????????????1010011"), - "FCVT_WU_Q" -> BitPat("b110001100001?????????????1010011"), - "FDIV_Q" -> BitPat("b0001111??????????????????1010011"), - "FEQ_Q" -> BitPat("b1010011??????????010?????1010011"), - "FLE_Q" -> BitPat("b1010011??????????000?????1010011"), - "FLEQ_Q" -> BitPat("b1010011??????????100?????1010011"), - "FLI_Q" -> BitPat("b111101100001?????000?????1010011"), - "FLQ" -> BitPat("b?????????????????100?????0000111"), - "FLT_Q" -> BitPat("b1010011??????????001?????1010011"), - "FLTQ_Q" -> BitPat("b1010011??????????101?????1010011"), - "FMADD_Q" -> BitPat("b?????11??????????????????1000011"), - "FMAX_Q" -> BitPat("b0010111??????????001?????1010011"), - "FMAXM_Q" -> BitPat("b0010111??????????011?????1010011"), - "FMIN_Q" -> BitPat("b0010111??????????000?????1010011"), - "FMINM_Q" -> BitPat("b0010111??????????010?????1010011"), - "FMSUB_Q" -> BitPat("b?????11??????????????????1000111"), - "FMUL_Q" -> BitPat("b0001011??????????????????1010011"), - "FNMADD_Q" -> BitPat("b?????11??????????????????1001111"), - "FNMSUB_Q" -> BitPat("b?????11??????????????????1001011"), - "FROUND_Q" -> BitPat("b010001100100?????????????1010011"), - "FROUNDNX_Q" -> BitPat("b010001100101?????????????1010011"), - "FSGNJ_Q" -> BitPat("b0010011??????????000?????1010011"), - "FSGNJN_Q" -> BitPat("b0010011??????????001?????1010011"), - "FSGNJX_Q" -> BitPat("b0010011??????????010?????1010011"), - "FSQ" -> BitPat("b?????????????????100?????0100111"), - "FSQRT_Q" -> BitPat("b010111100000?????????????1010011"), - "FSUB_Q" -> BitPat("b0000111??????????????????1010011"), - ) - val ZACAS64Type = Map( - "AMOCAS_Q" -> BitPat("b00101????????????100?????0101111"), - ) - val ZFBFMINType = Map( - "FCVT_BF16_S" -> BitPat("b010001001000?????????????1010011"), - "FCVT_S_BF16" -> BitPat("b010000000110?????????????1010011"), - ) - val Q64Type = Map( - "FCVT_L_Q" -> BitPat("b110001100010?????????????1010011"), - "FCVT_LU_Q" -> BitPat("b110001100011?????????????1010011"), - "FCVT_Q_L" -> BitPat("b110101100010?????????????1010011"), - "FCVT_Q_LU" -> BitPat("b110101100011?????????????1010011"), - "FMVH_X_Q" -> BitPat("b111001100001?????000?????1010011"), - "FMVP_Q_X" -> BitPat("b1011011??????????000?????1010011"), - ) - val ZBKB64Type = Map( - "PACKW" -> BitPat("b0000100??????????100?????0111011"), - ) - val ZKSType = Map( - "SM3P0" -> BitPat("b000100001000?????001?????0010011"), - "SM3P1" -> BitPat("b000100001001?????001?????0010011"), - "SM4ED" -> BitPat("b??11000??????????000?????0110011"), - "SM4KS" -> BitPat("b??11010??????????000?????0110011"), - ) - val ZBKB32Type = Map( - "UNZIP" -> BitPat("b000010001111?????101?????0010011"), - "ZIP" -> BitPat("b000010001111?????001?????0010011"), - ) - val M64Type = Map( - "DIVUW" -> BitPat("b0000001??????????101?????0111011"), - "DIVW" -> BitPat("b0000001??????????100?????0111011"), - "MULW" -> BitPat("b0000001??????????000?????0111011"), - "REMUW" -> BitPat("b0000001??????????111?????0111011"), - "REMW" -> BitPat("b0000001??????????110?????0111011"), - ) - val ZBKBType = Map( - "BREV8" -> BitPat("b011010000111?????101?????0010011"), - "PACK" -> BitPat("b0000100??????????100?????0110011"), - "PACKH" -> BitPat("b0000100??????????111?????0110011"), - ) - -} -object Causes { - val misaligned_fetch = 0x0 - val fetch_access = 0x1 - val illegal_instruction = 0x2 - val breakpoint = 0x3 - val misaligned_load = 0x4 - val load_access = 0x5 - val misaligned_store = 0x6 - val store_access = 0x7 - val user_ecall = 0x8 - val supervisor_ecall = 0x9 - val virtual_supervisor_ecall = 0xa - val machine_ecall = 0xb - val fetch_page_fault = 0xc - val load_page_fault = 0xd - val store_page_fault = 0xf - val double_trap = 0x10 - val software_check_fault = 0x12 - val hardware_error_fault = 0x13 - val fetch_guest_page_fault = 0x14 - val load_guest_page_fault = 0x15 - val virtual_instruction = 0x16 - val store_guest_page_fault = 0x17 - val all = { - val res = collection.mutable.ArrayBuffer[Int]() - res += misaligned_fetch - res += fetch_access - res += illegal_instruction - res += breakpoint - res += misaligned_load - res += load_access - res += misaligned_store - res += store_access - res += user_ecall - res += supervisor_ecall - res += virtual_supervisor_ecall - res += machine_ecall - res += fetch_page_fault - res += load_page_fault - res += store_page_fault - res += double_trap - res += software_check_fault - res += hardware_error_fault - res += fetch_guest_page_fault - res += load_guest_page_fault - res += virtual_instruction - res += store_guest_page_fault - res.toArray - } -} -object CSRs { - val fflags = 0x1 - val frm = 0x2 - val fcsr = 0x3 - val vstart = 0x8 - val vxsat = 0x9 - val vxrm = 0xa - val vcsr = 0xf - val ssp = 0x11 - val seed = 0x15 - val jvt = 0x17 - val cycle = 0xc00 - val time = 0xc01 - val instret = 0xc02 - val hpmcounter3 = 0xc03 - val hpmcounter4 = 0xc04 - val hpmcounter5 = 0xc05 - val hpmcounter6 = 0xc06 - val hpmcounter7 = 0xc07 - val hpmcounter8 = 0xc08 - val hpmcounter9 = 0xc09 - val hpmcounter10 = 0xc0a - val hpmcounter11 = 0xc0b - val hpmcounter12 = 0xc0c - val hpmcounter13 = 0xc0d - val hpmcounter14 = 0xc0e - val hpmcounter15 = 0xc0f - val hpmcounter16 = 0xc10 - val hpmcounter17 = 0xc11 - val hpmcounter18 = 0xc12 - val hpmcounter19 = 0xc13 - val hpmcounter20 = 0xc14 - val hpmcounter21 = 0xc15 - val hpmcounter22 = 0xc16 - val hpmcounter23 = 0xc17 - val hpmcounter24 = 0xc18 - val hpmcounter25 = 0xc19 - val hpmcounter26 = 0xc1a - val hpmcounter27 = 0xc1b - val hpmcounter28 = 0xc1c - val hpmcounter29 = 0xc1d - val hpmcounter30 = 0xc1e - val hpmcounter31 = 0xc1f - val vl = 0xc20 - val vtype = 0xc21 - val vlenb = 0xc22 - val sstatus = 0x100 - val sedeleg = 0x102 - val sideleg = 0x103 - val sie = 0x104 - val stvec = 0x105 - val scounteren = 0x106 - val senvcfg = 0x10a - val sstateen0 = 0x10c - val sstateen1 = 0x10d - val sstateen2 = 0x10e - val sstateen3 = 0x10f - val scountinhibit = 0x120 - val sscratch = 0x140 - val sepc = 0x141 - val scause = 0x142 - val stval = 0x143 - val sip = 0x144 - val stimecmp = 0x14d - val sctrctl = 0x14e - val sctrstatus = 0x14f - val siselect = 0x150 - val sireg = 0x151 - val sireg2 = 0x152 - val sireg3 = 0x153 - val sireg4 = 0x155 - val sireg5 = 0x156 - val sireg6 = 0x157 - val stopei = 0x15c - val sctrdepth = 0x15f - val satp = 0x180 - val srmcfg = 0x181 - val scontext = 0x5a8 - val vsstatus = 0x200 - val vsie = 0x204 - val vstvec = 0x205 - val vsscratch = 0x240 - val vsepc = 0x241 - val vscause = 0x242 - val vstval = 0x243 - val vsip = 0x244 - val vstimecmp = 0x24d - val vsctrctl = 0x24e - val vsiselect = 0x250 - val vsireg = 0x251 - val vsireg2 = 0x252 - val vsireg3 = 0x253 - val vsireg4 = 0x255 - val vsireg5 = 0x256 - val vsireg6 = 0x257 - val vstopei = 0x25c - val vsatp = 0x280 - val hstatus = 0x600 - val hedeleg = 0x602 - val hideleg = 0x603 - val hie = 0x604 - val htimedelta = 0x605 - val hcounteren = 0x606 - val hgeie = 0x607 - val hvien = 0x608 - val hvictl = 0x609 - val henvcfg = 0x60a - val hstateen0 = 0x60c - val hstateen1 = 0x60d - val hstateen2 = 0x60e - val hstateen3 = 0x60f - val htval = 0x643 - val hip = 0x644 - val hvip = 0x645 - val hviprio1 = 0x646 - val hviprio2 = 0x647 - val htinst = 0x64a - val hgatp = 0x680 - val hcontext = 0x6a8 - val hgeip = 0xe12 - val vstopi = 0xeb0 - val scountovf = 0xda0 - val stopi = 0xdb0 - val utvt = 0x7 - val unxti = 0x45 - val uintstatus = 0x46 - val uscratchcsw = 0x48 - val uscratchcswl = 0x49 - val stvt = 0x107 - val snxti = 0x145 - val sintstatus = 0x146 - val sscratchcsw = 0x148 - val sscratchcswl = 0x149 - val mtvt = 0x307 - val mnxti = 0x345 - val mintstatus = 0x346 - val mscratchcsw = 0x348 - val mscratchcswl = 0x349 - val mstatus = 0x300 - val misa = 0x301 - val medeleg = 0x302 - val mideleg = 0x303 - val mie = 0x304 - val mtvec = 0x305 - val mcounteren = 0x306 - val mvien = 0x308 - val mvip = 0x309 - val menvcfg = 0x30a - val mstateen0 = 0x30c - val mstateen1 = 0x30d - val mstateen2 = 0x30e - val mstateen3 = 0x30f - val mcountinhibit = 0x320 - val mscratch = 0x340 - val mepc = 0x341 - val mcause = 0x342 - val mtval = 0x343 - val mip = 0x344 - val mtinst = 0x34a - val mtval2 = 0x34b - val mctrctl = 0x34e - val miselect = 0x350 - val mireg = 0x351 - val mireg2 = 0x352 - val mireg3 = 0x353 - val mireg4 = 0x355 - val mireg5 = 0x356 - val mireg6 = 0x357 - val mtopei = 0x35c - val pmpcfg0 = 0x3a0 - val pmpcfg1 = 0x3a1 - val pmpcfg2 = 0x3a2 - val pmpcfg3 = 0x3a3 - val pmpcfg4 = 0x3a4 - val pmpcfg5 = 0x3a5 - val pmpcfg6 = 0x3a6 - val pmpcfg7 = 0x3a7 - val pmpcfg8 = 0x3a8 - val pmpcfg9 = 0x3a9 - val pmpcfg10 = 0x3aa - val pmpcfg11 = 0x3ab - val pmpcfg12 = 0x3ac - val pmpcfg13 = 0x3ad - val pmpcfg14 = 0x3ae - val pmpcfg15 = 0x3af - val pmpaddr0 = 0x3b0 - val pmpaddr1 = 0x3b1 - val pmpaddr2 = 0x3b2 - val pmpaddr3 = 0x3b3 - val pmpaddr4 = 0x3b4 - val pmpaddr5 = 0x3b5 - val pmpaddr6 = 0x3b6 - val pmpaddr7 = 0x3b7 - val pmpaddr8 = 0x3b8 - val pmpaddr9 = 0x3b9 - val pmpaddr10 = 0x3ba - val pmpaddr11 = 0x3bb - val pmpaddr12 = 0x3bc - val pmpaddr13 = 0x3bd - val pmpaddr14 = 0x3be - val pmpaddr15 = 0x3bf - val pmpaddr16 = 0x3c0 - val pmpaddr17 = 0x3c1 - val pmpaddr18 = 0x3c2 - val pmpaddr19 = 0x3c3 - val pmpaddr20 = 0x3c4 - val pmpaddr21 = 0x3c5 - val pmpaddr22 = 0x3c6 - val pmpaddr23 = 0x3c7 - val pmpaddr24 = 0x3c8 - val pmpaddr25 = 0x3c9 - val pmpaddr26 = 0x3ca - val pmpaddr27 = 0x3cb - val pmpaddr28 = 0x3cc - val pmpaddr29 = 0x3cd - val pmpaddr30 = 0x3ce - val pmpaddr31 = 0x3cf - val pmpaddr32 = 0x3d0 - val pmpaddr33 = 0x3d1 - val pmpaddr34 = 0x3d2 - val pmpaddr35 = 0x3d3 - val pmpaddr36 = 0x3d4 - val pmpaddr37 = 0x3d5 - val pmpaddr38 = 0x3d6 - val pmpaddr39 = 0x3d7 - val pmpaddr40 = 0x3d8 - val pmpaddr41 = 0x3d9 - val pmpaddr42 = 0x3da - val pmpaddr43 = 0x3db - val pmpaddr44 = 0x3dc - val pmpaddr45 = 0x3dd - val pmpaddr46 = 0x3de - val pmpaddr47 = 0x3df - val pmpaddr48 = 0x3e0 - val pmpaddr49 = 0x3e1 - val pmpaddr50 = 0x3e2 - val pmpaddr51 = 0x3e3 - val pmpaddr52 = 0x3e4 - val pmpaddr53 = 0x3e5 - val pmpaddr54 = 0x3e6 - val pmpaddr55 = 0x3e7 - val pmpaddr56 = 0x3e8 - val pmpaddr57 = 0x3e9 - val pmpaddr58 = 0x3ea - val pmpaddr59 = 0x3eb - val pmpaddr60 = 0x3ec - val pmpaddr61 = 0x3ed - val pmpaddr62 = 0x3ee - val pmpaddr63 = 0x3ef - val mseccfg = 0x747 - val tselect = 0x7a0 - val tdata1 = 0x7a1 - val tdata2 = 0x7a2 - val tdata3 = 0x7a3 - val tinfo = 0x7a4 - val tcontrol = 0x7a5 - val mcontext = 0x7a8 - val mscontext = 0x7aa - val dcsr = 0x7b0 - val dpc = 0x7b1 - val dscratch0 = 0x7b2 - val dscratch1 = 0x7b3 - val mcycle = 0xb00 - val minstret = 0xb02 - val mhpmcounter3 = 0xb03 - val mhpmcounter4 = 0xb04 - val mhpmcounter5 = 0xb05 - val mhpmcounter6 = 0xb06 - val mhpmcounter7 = 0xb07 - val mhpmcounter8 = 0xb08 - val mhpmcounter9 = 0xb09 - val mhpmcounter10 = 0xb0a - val mhpmcounter11 = 0xb0b - val mhpmcounter12 = 0xb0c - val mhpmcounter13 = 0xb0d - val mhpmcounter14 = 0xb0e - val mhpmcounter15 = 0xb0f - val mhpmcounter16 = 0xb10 - val mhpmcounter17 = 0xb11 - val mhpmcounter18 = 0xb12 - val mhpmcounter19 = 0xb13 - val mhpmcounter20 = 0xb14 - val mhpmcounter21 = 0xb15 - val mhpmcounter22 = 0xb16 - val mhpmcounter23 = 0xb17 - val mhpmcounter24 = 0xb18 - val mhpmcounter25 = 0xb19 - val mhpmcounter26 = 0xb1a - val mhpmcounter27 = 0xb1b - val mhpmcounter28 = 0xb1c - val mhpmcounter29 = 0xb1d - val mhpmcounter30 = 0xb1e - val mhpmcounter31 = 0xb1f - val mcyclecfg = 0x321 - val minstretcfg = 0x322 - val mhpmevent3 = 0x323 - val mhpmevent4 = 0x324 - val mhpmevent5 = 0x325 - val mhpmevent6 = 0x326 - val mhpmevent7 = 0x327 - val mhpmevent8 = 0x328 - val mhpmevent9 = 0x329 - val mhpmevent10 = 0x32a - val mhpmevent11 = 0x32b - val mhpmevent12 = 0x32c - val mhpmevent13 = 0x32d - val mhpmevent14 = 0x32e - val mhpmevent15 = 0x32f - val mhpmevent16 = 0x330 - val mhpmevent17 = 0x331 - val mhpmevent18 = 0x332 - val mhpmevent19 = 0x333 - val mhpmevent20 = 0x334 - val mhpmevent21 = 0x335 - val mhpmevent22 = 0x336 - val mhpmevent23 = 0x337 - val mhpmevent24 = 0x338 - val mhpmevent25 = 0x339 - val mhpmevent26 = 0x33a - val mhpmevent27 = 0x33b - val mhpmevent28 = 0x33c - val mhpmevent29 = 0x33d - val mhpmevent30 = 0x33e - val mhpmevent31 = 0x33f - val mvendorid = 0xf11 - val marchid = 0xf12 - val mimpid = 0xf13 - val mhartid = 0xf14 - val mconfigptr = 0xf15 - val mtopi = 0xfb0 - val sieh = 0x114 - val siph = 0x154 - val stimecmph = 0x15d - val vsieh = 0x214 - val vsiph = 0x254 - val vstimecmph = 0x25d - val hedelegh = 0x612 - val htimedeltah = 0x615 - val hidelegh = 0x613 - val hvienh = 0x618 - val henvcfgh = 0x61a - val hviph = 0x655 - val hviprio1h = 0x656 - val hviprio2h = 0x657 - val hstateen0h = 0x61c - val hstateen1h = 0x61d - val hstateen2h = 0x61e - val hstateen3h = 0x61f - val cycleh = 0xc80 - val timeh = 0xc81 - val instreth = 0xc82 - val hpmcounter3h = 0xc83 - val hpmcounter4h = 0xc84 - val hpmcounter5h = 0xc85 - val hpmcounter6h = 0xc86 - val hpmcounter7h = 0xc87 - val hpmcounter8h = 0xc88 - val hpmcounter9h = 0xc89 - val hpmcounter10h = 0xc8a - val hpmcounter11h = 0xc8b - val hpmcounter12h = 0xc8c - val hpmcounter13h = 0xc8d - val hpmcounter14h = 0xc8e - val hpmcounter15h = 0xc8f - val hpmcounter16h = 0xc90 - val hpmcounter17h = 0xc91 - val hpmcounter18h = 0xc92 - val hpmcounter19h = 0xc93 - val hpmcounter20h = 0xc94 - val hpmcounter21h = 0xc95 - val hpmcounter22h = 0xc96 - val hpmcounter23h = 0xc97 - val hpmcounter24h = 0xc98 - val hpmcounter25h = 0xc99 - val hpmcounter26h = 0xc9a - val hpmcounter27h = 0xc9b - val hpmcounter28h = 0xc9c - val hpmcounter29h = 0xc9d - val hpmcounter30h = 0xc9e - val hpmcounter31h = 0xc9f - val mstatush = 0x310 - val midelegh = 0x313 - val mieh = 0x314 - val mvienh = 0x318 - val mviph = 0x319 - val menvcfgh = 0x31a - val mstateen0h = 0x31c - val mstateen1h = 0x31d - val mstateen2h = 0x31e - val mstateen3h = 0x31f - val miph = 0x354 - val mcyclecfgh = 0x721 - val minstretcfgh = 0x722 - val mhpmevent3h = 0x723 - val mhpmevent4h = 0x724 - val mhpmevent5h = 0x725 - val mhpmevent6h = 0x726 - val mhpmevent7h = 0x727 - val mhpmevent8h = 0x728 - val mhpmevent9h = 0x729 - val mhpmevent10h = 0x72a - val mhpmevent11h = 0x72b - val mhpmevent12h = 0x72c - val mhpmevent13h = 0x72d - val mhpmevent14h = 0x72e - val mhpmevent15h = 0x72f - val mhpmevent16h = 0x730 - val mhpmevent17h = 0x731 - val mhpmevent18h = 0x732 - val mhpmevent19h = 0x733 - val mhpmevent20h = 0x734 - val mhpmevent21h = 0x735 - val mhpmevent22h = 0x736 - val mhpmevent23h = 0x737 - val mhpmevent24h = 0x738 - val mhpmevent25h = 0x739 - val mhpmevent26h = 0x73a - val mhpmevent27h = 0x73b - val mhpmevent28h = 0x73c - val mhpmevent29h = 0x73d - val mhpmevent30h = 0x73e - val mhpmevent31h = 0x73f - val mnscratch = 0x740 - val mnepc = 0x741 - val mncause = 0x742 - val mnstatus = 0x744 - val mseccfgh = 0x757 - val mcycleh = 0xb80 - val minstreth = 0xb82 - val mhpmcounter3h = 0xb83 - val mhpmcounter4h = 0xb84 - val mhpmcounter5h = 0xb85 - val mhpmcounter6h = 0xb86 - val mhpmcounter7h = 0xb87 - val mhpmcounter8h = 0xb88 - val mhpmcounter9h = 0xb89 - val mhpmcounter10h = 0xb8a - val mhpmcounter11h = 0xb8b - val mhpmcounter12h = 0xb8c - val mhpmcounter13h = 0xb8d - val mhpmcounter14h = 0xb8e - val mhpmcounter15h = 0xb8f - val mhpmcounter16h = 0xb90 - val mhpmcounter17h = 0xb91 - val mhpmcounter18h = 0xb92 - val mhpmcounter19h = 0xb93 - val mhpmcounter20h = 0xb94 - val mhpmcounter21h = 0xb95 - val mhpmcounter22h = 0xb96 - val mhpmcounter23h = 0xb97 - val mhpmcounter24h = 0xb98 - val mhpmcounter25h = 0xb99 - val mhpmcounter26h = 0xb9a - val mhpmcounter27h = 0xb9b - val mhpmcounter28h = 0xb9c - val mhpmcounter29h = 0xb9d - val mhpmcounter30h = 0xb9e - val mhpmcounter31h = 0xb9f - val all = { - val res = collection.mutable.ArrayBuffer[Int]() - res += fflags - res += frm - res += fcsr - res += vstart - res += vxsat - res += vxrm - res += vcsr - res += ssp - res += seed - res += jvt - res += cycle - res += time - res += instret - res += hpmcounter3 - res += hpmcounter4 - res += hpmcounter5 - res += hpmcounter6 - res += hpmcounter7 - res += hpmcounter8 - res += hpmcounter9 - res += hpmcounter10 - res += hpmcounter11 - res += hpmcounter12 - res += hpmcounter13 - res += hpmcounter14 - res += hpmcounter15 - res += hpmcounter16 - res += hpmcounter17 - res += hpmcounter18 - res += hpmcounter19 - res += hpmcounter20 - res += hpmcounter21 - res += hpmcounter22 - res += hpmcounter23 - res += hpmcounter24 - res += hpmcounter25 - res += hpmcounter26 - res += hpmcounter27 - res += hpmcounter28 - res += hpmcounter29 - res += hpmcounter30 - res += hpmcounter31 - res += vl - res += vtype - res += vlenb - res += sstatus - res += sedeleg - res += sideleg - res += sie - res += stvec - res += scounteren - res += senvcfg - res += sstateen0 - res += sstateen1 - res += sstateen2 - res += sstateen3 - res += scountinhibit - res += sscratch - res += sepc - res += scause - res += stval - res += sip - res += stimecmp - res += sctrctl - res += sctrstatus - res += siselect - res += sireg - res += sireg2 - res += sireg3 - res += sireg4 - res += sireg5 - res += sireg6 - res += stopei - res += sctrdepth - res += satp - res += srmcfg - res += scontext - res += vsstatus - res += vsie - res += vstvec - res += vsscratch - res += vsepc - res += vscause - res += vstval - res += vsip - res += vstimecmp - res += vsctrctl - res += vsiselect - res += vsireg - res += vsireg2 - res += vsireg3 - res += vsireg4 - res += vsireg5 - res += vsireg6 - res += vstopei - res += vsatp - res += hstatus - res += hedeleg - res += hideleg - res += hie - res += htimedelta - res += hcounteren - res += hgeie - res += hvien - res += hvictl - res += henvcfg - res += hstateen0 - res += hstateen1 - res += hstateen2 - res += hstateen3 - res += htval - res += hip - res += hvip - res += hviprio1 - res += hviprio2 - res += htinst - res += hgatp - res += hcontext - res += hgeip - res += vstopi - res += scountovf - res += stopi - res += utvt - res += unxti - res += uintstatus - res += uscratchcsw - res += uscratchcswl - res += stvt - res += snxti - res += sintstatus - res += sscratchcsw - res += sscratchcswl - res += mtvt - res += mnxti - res += mintstatus - res += mscratchcsw - res += mscratchcswl - res += mstatus - res += misa - res += medeleg - res += mideleg - res += mie - res += mtvec - res += mcounteren - res += mvien - res += mvip - res += menvcfg - res += mstateen0 - res += mstateen1 - res += mstateen2 - res += mstateen3 - res += mcountinhibit - res += mscratch - res += mepc - res += mcause - res += mtval - res += mip - res += mtinst - res += mtval2 - res += mctrctl - res += miselect - res += mireg - res += mireg2 - res += mireg3 - res += mireg4 - res += mireg5 - res += mireg6 - res += mtopei - res += pmpcfg0 - res += pmpcfg1 - res += pmpcfg2 - res += pmpcfg3 - res += pmpcfg4 - res += pmpcfg5 - res += pmpcfg6 - res += pmpcfg7 - res += pmpcfg8 - res += pmpcfg9 - res += pmpcfg10 - res += pmpcfg11 - res += pmpcfg12 - res += pmpcfg13 - res += pmpcfg14 - res += pmpcfg15 - res += pmpaddr0 - res += pmpaddr1 - res += pmpaddr2 - res += pmpaddr3 - res += pmpaddr4 - res += pmpaddr5 - res += pmpaddr6 - res += pmpaddr7 - res += pmpaddr8 - res += pmpaddr9 - res += pmpaddr10 - res += pmpaddr11 - res += pmpaddr12 - res += pmpaddr13 - res += pmpaddr14 - res += pmpaddr15 - res += pmpaddr16 - res += pmpaddr17 - res += pmpaddr18 - res += pmpaddr19 - res += pmpaddr20 - res += pmpaddr21 - res += pmpaddr22 - res += pmpaddr23 - res += pmpaddr24 - res += pmpaddr25 - res += pmpaddr26 - res += pmpaddr27 - res += pmpaddr28 - res += pmpaddr29 - res += pmpaddr30 - res += pmpaddr31 - res += pmpaddr32 - res += pmpaddr33 - res += pmpaddr34 - res += pmpaddr35 - res += pmpaddr36 - res += pmpaddr37 - res += pmpaddr38 - res += pmpaddr39 - res += pmpaddr40 - res += pmpaddr41 - res += pmpaddr42 - res += pmpaddr43 - res += pmpaddr44 - res += pmpaddr45 - res += pmpaddr46 - res += pmpaddr47 - res += pmpaddr48 - res += pmpaddr49 - res += pmpaddr50 - res += pmpaddr51 - res += pmpaddr52 - res += pmpaddr53 - res += pmpaddr54 - res += pmpaddr55 - res += pmpaddr56 - res += pmpaddr57 - res += pmpaddr58 - res += pmpaddr59 - res += pmpaddr60 - res += pmpaddr61 - res += pmpaddr62 - res += pmpaddr63 - res += mseccfg - res += tselect - res += tdata1 - res += tdata2 - res += tdata3 - res += tinfo - res += tcontrol - res += mcontext - res += mscontext - res += dcsr - res += dpc - res += dscratch0 - res += dscratch1 - res += mcycle - res += minstret - res += mhpmcounter3 - res += mhpmcounter4 - res += mhpmcounter5 - res += mhpmcounter6 - res += mhpmcounter7 - res += mhpmcounter8 - res += mhpmcounter9 - res += mhpmcounter10 - res += mhpmcounter11 - res += mhpmcounter12 - res += mhpmcounter13 - res += mhpmcounter14 - res += mhpmcounter15 - res += mhpmcounter16 - res += mhpmcounter17 - res += mhpmcounter18 - res += mhpmcounter19 - res += mhpmcounter20 - res += mhpmcounter21 - res += mhpmcounter22 - res += mhpmcounter23 - res += mhpmcounter24 - res += mhpmcounter25 - res += mhpmcounter26 - res += mhpmcounter27 - res += mhpmcounter28 - res += mhpmcounter29 - res += mhpmcounter30 - res += mhpmcounter31 - res += mcyclecfg - res += minstretcfg - res += mhpmevent3 - res += mhpmevent4 - res += mhpmevent5 - res += mhpmevent6 - res += mhpmevent7 - res += mhpmevent8 - res += mhpmevent9 - res += mhpmevent10 - res += mhpmevent11 - res += mhpmevent12 - res += mhpmevent13 - res += mhpmevent14 - res += mhpmevent15 - res += mhpmevent16 - res += mhpmevent17 - res += mhpmevent18 - res += mhpmevent19 - res += mhpmevent20 - res += mhpmevent21 - res += mhpmevent22 - res += mhpmevent23 - res += mhpmevent24 - res += mhpmevent25 - res += mhpmevent26 - res += mhpmevent27 - res += mhpmevent28 - res += mhpmevent29 - res += mhpmevent30 - res += mhpmevent31 - res += mvendorid - res += marchid - res += mimpid - res += mhartid - res += mconfigptr - res += mtopi - res.toArray - } - val all32 = { - val res = collection.mutable.ArrayBuffer(all:_*) - res += sieh - res += siph - res += stimecmph - res += vsieh - res += vsiph - res += vstimecmph - res += hedelegh - res += htimedeltah - res += hidelegh - res += hvienh - res += henvcfgh - res += hviph - res += hviprio1h - res += hviprio2h - res += hstateen0h - res += hstateen1h - res += hstateen2h - res += hstateen3h - res += cycleh - res += timeh - res += instreth - res += hpmcounter3h - res += hpmcounter4h - res += hpmcounter5h - res += hpmcounter6h - res += hpmcounter7h - res += hpmcounter8h - res += hpmcounter9h - res += hpmcounter10h - res += hpmcounter11h - res += hpmcounter12h - res += hpmcounter13h - res += hpmcounter14h - res += hpmcounter15h - res += hpmcounter16h - res += hpmcounter17h - res += hpmcounter18h - res += hpmcounter19h - res += hpmcounter20h - res += hpmcounter21h - res += hpmcounter22h - res += hpmcounter23h - res += hpmcounter24h - res += hpmcounter25h - res += hpmcounter26h - res += hpmcounter27h - res += hpmcounter28h - res += hpmcounter29h - res += hpmcounter30h - res += hpmcounter31h - res += mstatush - res += midelegh - res += mieh - res += mvienh - res += mviph - res += menvcfgh - res += mstateen0h - res += mstateen1h - res += mstateen2h - res += mstateen3h - res += miph - res += mcyclecfgh - res += minstretcfgh - res += mhpmevent3h - res += mhpmevent4h - res += mhpmevent5h - res += mhpmevent6h - res += mhpmevent7h - res += mhpmevent8h - res += mhpmevent9h - res += mhpmevent10h - res += mhpmevent11h - res += mhpmevent12h - res += mhpmevent13h - res += mhpmevent14h - res += mhpmevent15h - res += mhpmevent16h - res += mhpmevent17h - res += mhpmevent18h - res += mhpmevent19h - res += mhpmevent20h - res += mhpmevent21h - res += mhpmevent22h - res += mhpmevent23h - res += mhpmevent24h - res += mhpmevent25h - res += mhpmevent26h - res += mhpmevent27h - res += mhpmevent28h - res += mhpmevent29h - res += mhpmevent30h - res += mhpmevent31h - res += mnscratch - res += mnepc - res += mncause - res += mnstatus - res += mseccfgh - res += mcycleh - res += minstreth - res += mhpmcounter3h - res += mhpmcounter4h - res += mhpmcounter5h - res += mhpmcounter6h - res += mhpmcounter7h - res += mhpmcounter8h - res += mhpmcounter9h - res += mhpmcounter10h - res += mhpmcounter11h - res += mhpmcounter12h - res += mhpmcounter13h - res += mhpmcounter14h - res += mhpmcounter15h - res += mhpmcounter16h - res += mhpmcounter17h - res += mhpmcounter18h - res += mhpmcounter19h - res += mhpmcounter20h - res += mhpmcounter21h - res += mhpmcounter22h - res += mhpmcounter23h - res += mhpmcounter24h - res += mhpmcounter25h - res += mhpmcounter26h - res += mhpmcounter27h - res += mhpmcounter28h - res += mhpmcounter29h - res += mhpmcounter30h - res += mhpmcounter31h - res.toArray - } -} diff --git a/backends/opcodes_maker/output/inst.go b/backends/opcodes_maker/output/inst.go deleted file mode 100644 index b6649464c..000000000 --- a/backends/opcodes_maker/output/inst.go +++ /dev/null @@ -1,2639 +0,0 @@ -// Code generated by generator.py output/instr_dict.json -c -chisel -spinalhdl -sverilog -rust -go -latex; DO NOT EDIT. -package riscv - -import "cmd/internal/obj" - -type inst struct { - opcode uint32 - funct3 uint32 - rs1 uint32 - rs2 uint32 - csr int64 - funct7 uint32 -} - -func encode(a obj.As) *inst { - switch a { - case AADD: - return &inst{ 0x33, 0x0, 0x0, 0x0, 0, 0x0 } - case AADDUW: - return &inst{ 0x3b, 0x0, 0x0, 0x0, 128, 0x4 } - case AADDI: - return &inst{ 0x13, 0x0, 0x0, 0x0, 0, 0x0 } - case AADDIW: - return &inst{ 0x1b, 0x0, 0x0, 0x0, 0, 0x0 } - case AADDW: - return &inst{ 0x3b, 0x0, 0x0, 0x0, 0, 0x0 } - case AAES32DSI: - return &inst{ 0x33, 0x0, 0x0, 0x0, 672, 0x15 } - case AAES32DSMI: - return &inst{ 0x33, 0x0, 0x0, 0x0, 736, 0x17 } - case AAES32ESI: - return &inst{ 0x33, 0x0, 0x0, 0x0, 544, 0x11 } - case AAES32ESMI: - return &inst{ 0x33, 0x0, 0x0, 0x0, 608, 0x13 } - case AAES64DS: - return &inst{ 0x33, 0x0, 0x0, 0x0, 928, 0x1d } - case AAES64DSM: - return &inst{ 0x33, 0x0, 0x0, 0x0, 992, 0x1f } - case AAES64ES: - return &inst{ 0x33, 0x0, 0x0, 0x0, 800, 0x19 } - case AAES64ESM: - return &inst{ 0x33, 0x0, 0x0, 0x0, 864, 0x1b } - case AAES64IM: - return &inst{ 0x13, 0x1, 0x0, 0x0, 768, 0x18 } - case AAES64KS1I: - return &inst{ 0x13, 0x1, 0x0, 0x10, 784, 0x18 } - case AAES64KS2: - return &inst{ 0x33, 0x0, 0x0, 0x0, 2016, 0x3f } - case AAMOADDB: - return &inst{ 0x2f, 0x0, 0x0, 0x0, 0, 0x0 } - case AAMOADDD: - return &inst{ 0x2f, 0x3, 0x0, 0x0, 0, 0x0 } - case AAMOADDH: - return &inst{ 0x2f, 0x1, 0x0, 0x0, 0, 0x0 } - case AAMOADDW: - return &inst{ 0x2f, 0x2, 0x0, 0x0, 0, 0x0 } - case AAMOANDB: - return &inst{ 0x2f, 0x0, 0x0, 0x0, 1536, 0x30 } - case AAMOANDD: - return &inst{ 0x2f, 0x3, 0x0, 0x0, 1536, 0x30 } - case AAMOANDH: - return &inst{ 0x2f, 0x1, 0x0, 0x0, 1536, 0x30 } - case AAMOANDW: - return &inst{ 0x2f, 0x2, 0x0, 0x0, 1536, 0x30 } - case AAMOCASB: - return &inst{ 0x2f, 0x0, 0x0, 0x0, 640, 0x14 } - case AAMOCASD: - return &inst{ 0x2f, 0x3, 0x0, 0x0, 640, 0x14 } - case AAMOCASH: - return &inst{ 0x2f, 0x1, 0x0, 0x0, 640, 0x14 } - case AAMOCASQ: - return &inst{ 0x2f, 0x4, 0x0, 0x0, 640, 0x14 } - case AAMOCASW: - return &inst{ 0x2f, 0x2, 0x0, 0x0, 640, 0x14 } - case AAMOMAXB: - return &inst{ 0x2f, 0x0, 0x0, 0x0, -1536, 0x50 } - case AAMOMAXD: - return &inst{ 0x2f, 0x3, 0x0, 0x0, -1536, 0x50 } - case AAMOMAXH: - return &inst{ 0x2f, 0x1, 0x0, 0x0, -1536, 0x50 } - case AAMOMAXW: - return &inst{ 0x2f, 0x2, 0x0, 0x0, -1536, 0x50 } - case AAMOMAXUB: - return &inst{ 0x2f, 0x0, 0x0, 0x0, -512, 0x70 } - case AAMOMAXUD: - return &inst{ 0x2f, 0x3, 0x0, 0x0, -512, 0x70 } - case AAMOMAXUH: - return &inst{ 0x2f, 0x1, 0x0, 0x0, -512, 0x70 } - case AAMOMAXUW: - return &inst{ 0x2f, 0x2, 0x0, 0x0, -512, 0x70 } - case AAMOMINB: - return &inst{ 0x2f, 0x0, 0x0, 0x0, -2048, 0x40 } - case AAMOMIND: - return &inst{ 0x2f, 0x3, 0x0, 0x0, -2048, 0x40 } - case AAMOMINH: - return &inst{ 0x2f, 0x1, 0x0, 0x0, -2048, 0x40 } - case AAMOMINW: - return &inst{ 0x2f, 0x2, 0x0, 0x0, -2048, 0x40 } - case AAMOMINUB: - return &inst{ 0x2f, 0x0, 0x0, 0x0, -1024, 0x60 } - case AAMOMINUD: - return &inst{ 0x2f, 0x3, 0x0, 0x0, -1024, 0x60 } - case AAMOMINUH: - return &inst{ 0x2f, 0x1, 0x0, 0x0, -1024, 0x60 } - case AAMOMINUW: - return &inst{ 0x2f, 0x2, 0x0, 0x0, -1024, 0x60 } - case AAMOORB: - return &inst{ 0x2f, 0x0, 0x0, 0x0, 1024, 0x20 } - case AAMOORD: - return &inst{ 0x2f, 0x3, 0x0, 0x0, 1024, 0x20 } - case AAMOORH: - return &inst{ 0x2f, 0x1, 0x0, 0x0, 1024, 0x20 } - case AAMOORW: - return &inst{ 0x2f, 0x2, 0x0, 0x0, 1024, 0x20 } - case AAMOSWAPB: - return &inst{ 0x2f, 0x0, 0x0, 0x0, 128, 0x4 } - case AAMOSWAPD: - return &inst{ 0x2f, 0x3, 0x0, 0x0, 128, 0x4 } - case AAMOSWAPH: - return &inst{ 0x2f, 0x1, 0x0, 0x0, 128, 0x4 } - case AAMOSWAPW: - return &inst{ 0x2f, 0x2, 0x0, 0x0, 128, 0x4 } - case AAMOXORB: - return &inst{ 0x2f, 0x0, 0x0, 0x0, 512, 0x10 } - case AAMOXORD: - return &inst{ 0x2f, 0x3, 0x0, 0x0, 512, 0x10 } - case AAMOXORH: - return &inst{ 0x2f, 0x1, 0x0, 0x0, 512, 0x10 } - case AAMOXORW: - return &inst{ 0x2f, 0x2, 0x0, 0x0, 512, 0x10 } - case AAND: - return &inst{ 0x33, 0x7, 0x0, 0x0, 0, 0x0 } - case AANDI: - return &inst{ 0x13, 0x7, 0x0, 0x0, 0, 0x0 } - case AANDN: - return &inst{ 0x33, 0x7, 0x0, 0x0, 1024, 0x20 } - case AAUIPC: - return &inst{ 0x17, 0x0, 0x0, 0x0, 0, 0x0 } - case ABCLR: - return &inst{ 0x33, 0x1, 0x0, 0x0, 1152, 0x24 } - case ABCLRI: - return &inst{ 0x13, 0x1, 0x0, 0x0, 1152, 0x24 } - case ABEQ: - return &inst{ 0x63, 0x0, 0x0, 0x0, 0, 0x0 } - case ABEXT: - return &inst{ 0x33, 0x5, 0x0, 0x0, 1152, 0x24 } - case ABEXTI: - return &inst{ 0x13, 0x5, 0x0, 0x0, 1152, 0x24 } - case ABGE: - return &inst{ 0x63, 0x5, 0x0, 0x0, 0, 0x0 } - case ABGEU: - return &inst{ 0x63, 0x7, 0x0, 0x0, 0, 0x0 } - case ABINV: - return &inst{ 0x33, 0x1, 0x0, 0x0, 1664, 0x34 } - case ABINVI: - return &inst{ 0x13, 0x1, 0x0, 0x0, 1664, 0x34 } - case ABLT: - return &inst{ 0x63, 0x4, 0x0, 0x0, 0, 0x0 } - case ABLTU: - return &inst{ 0x63, 0x6, 0x0, 0x0, 0, 0x0 } - case ABNE: - return &inst{ 0x63, 0x1, 0x0, 0x0, 0, 0x0 } - case ABREV8: - return &inst{ 0x13, 0x5, 0x0, 0x7, 1671, 0x34 } - case ABSET: - return &inst{ 0x33, 0x1, 0x0, 0x0, 640, 0x14 } - case ABSETI: - return &inst{ 0x13, 0x1, 0x0, 0x0, 640, 0x14 } - case ACADD: - return &inst{ 0x2, 0x1, 0x1, 0x0, 0, 0x0 } - case ACADDI: - return &inst{ 0x1, 0x0, 0x0, 0x0, 0, 0x0 } - case ACADDI16SP: - return &inst{ 0x1, 0x6, 0x0, 0x0, 0, 0x0 } - case ACADDI4SPN: - return &inst{ 0x0, 0x0, 0x0, 0x0, 0, 0x0 } - case ACADDIW: - return &inst{ 0x1, 0x2, 0x0, 0x0, 0, 0x0 } - case ACADDW: - return &inst{ 0x21, 0x1, 0x1, 0x0, 0, 0x0 } - case ACAND: - return &inst{ 0x61, 0x0, 0x1, 0x0, 0, 0x0 } - case ACANDI: - return &inst{ 0x1, 0x0, 0x1, 0x0, 0, 0x0 } - case ACBEQZ: - return &inst{ 0x1, 0x4, 0x1, 0x0, 0, 0x0 } - case ACBNEZ: - return &inst{ 0x1, 0x6, 0x1, 0x0, 0, 0x0 } - case ACEBREAK: - return &inst{ 0x2, 0x1, 0x1, 0x0, 0, 0x0 } - case ACFLD: - return &inst{ 0x0, 0x2, 0x0, 0x0, 0, 0x0 } - case ACFLDSP: - return &inst{ 0x2, 0x2, 0x0, 0x0, 0, 0x0 } - case ACFLW: - return &inst{ 0x0, 0x6, 0x0, 0x0, 0, 0x0 } - case ACFLWSP: - return &inst{ 0x2, 0x6, 0x0, 0x0, 0, 0x0 } - case ACFSD: - return &inst{ 0x0, 0x2, 0x1, 0x0, 0, 0x0 } - case ACFSDSP: - return &inst{ 0x2, 0x2, 0x1, 0x0, 0, 0x0 } - case ACFSW: - return &inst{ 0x0, 0x6, 0x1, 0x0, 0, 0x0 } - case ACFSWSP: - return &inst{ 0x2, 0x6, 0x1, 0x0, 0, 0x0 } - case ACJ: - return &inst{ 0x1, 0x2, 0x1, 0x0, 0, 0x0 } - case ACJAL: - return &inst{ 0x1, 0x2, 0x0, 0x0, 0, 0x0 } - case ACJALR: - return &inst{ 0x2, 0x1, 0x1, 0x0, 0, 0x0 } - case ACJR: - return &inst{ 0x2, 0x0, 0x1, 0x0, 0, 0x0 } - case ACLBU: - return &inst{ 0x0, 0x0, 0x1, 0x0, 0, 0x0 } - case ACLD: - return &inst{ 0x0, 0x6, 0x0, 0x0, 0, 0x0 } - case ACLDSP: - return &inst{ 0x2, 0x6, 0x0, 0x0, 0, 0x0 } - case ACLI: - return &inst{ 0x1, 0x4, 0x0, 0x0, 0, 0x0 } - case ACLUI: - return &inst{ 0x1, 0x6, 0x0, 0x0, 0, 0x0 } - case ACLW: - return &inst{ 0x0, 0x4, 0x0, 0x0, 0, 0x0 } - case ACLWSP: - return &inst{ 0x2, 0x4, 0x0, 0x0, 0, 0x0 } - case ACMUL: - return &inst{ 0x41, 0x1, 0x1, 0x0, 0, 0x0 } - case ACMV: - return &inst{ 0x2, 0x0, 0x1, 0x0, 0, 0x0 } - case ACNOP: - return &inst{ 0x1, 0x0, 0x0, 0x0, 0, 0x0 } - case ACNOT: - return &inst{ 0x75, 0x1, 0x1, 0x0, 0, 0x0 } - case ACOR: - return &inst{ 0x41, 0x0, 0x1, 0x0, 0, 0x0 } - case ACSB: - return &inst{ 0x0, 0x0, 0x1, 0x0, 0, 0x0 } - case ACSD: - return &inst{ 0x0, 0x6, 0x1, 0x0, 0, 0x0 } - case ACSDSP: - return &inst{ 0x2, 0x6, 0x1, 0x0, 0, 0x0 } - case ACSEXTB: - return &inst{ 0x65, 0x1, 0x1, 0x0, 0, 0x0 } - case ACSEXTH: - return &inst{ 0x6d, 0x1, 0x1, 0x0, 0, 0x0 } - case ACSLLI: - return &inst{ 0x2, 0x0, 0x0, 0x0, 0, 0x0 } - case ACSRAI: - return &inst{ 0x1, 0x0, 0x1, 0x0, 0, 0x0 } - case ACSRLI: - return &inst{ 0x1, 0x0, 0x1, 0x0, 0, 0x0 } - case ACSUB: - return &inst{ 0x1, 0x0, 0x1, 0x0, 0, 0x0 } - case ACSUBW: - return &inst{ 0x1, 0x1, 0x1, 0x0, 0, 0x0 } - case ACSW: - return &inst{ 0x0, 0x4, 0x1, 0x0, 0, 0x0 } - case ACSWSP: - return &inst{ 0x2, 0x4, 0x1, 0x0, 0, 0x0 } - case ACXOR: - return &inst{ 0x21, 0x0, 0x1, 0x0, 0, 0x0 } - case ACZEXTB: - return &inst{ 0x61, 0x1, 0x1, 0x0, 0, 0x0 } - case ACZEXTH: - return &inst{ 0x69, 0x1, 0x1, 0x0, 0, 0x0 } - case ACZEXTW: - return &inst{ 0x71, 0x1, 0x1, 0x0, 0, 0x0 } - case ACBOCLEAN: - return &inst{ 0xf, 0x2, 0x0, 0x1, 1, 0x0 } - case ACBOFLUSH: - return &inst{ 0xf, 0x2, 0x0, 0x2, 2, 0x0 } - case ACBOINVAL: - return &inst{ 0xf, 0x2, 0x0, 0x0, 0, 0x0 } - case ACBOZERO: - return &inst{ 0xf, 0x2, 0x0, 0x4, 4, 0x0 } - case ACLMUL: - return &inst{ 0x33, 0x1, 0x0, 0x0, 160, 0x5 } - case ACLMULH: - return &inst{ 0x33, 0x3, 0x0, 0x0, 160, 0x5 } - case ACLMULR: - return &inst{ 0x33, 0x2, 0x0, 0x0, 160, 0x5 } - case ACLZ: - return &inst{ 0x13, 0x1, 0x0, 0x0, 1536, 0x30 } - case ACLZW: - return &inst{ 0x1b, 0x1, 0x0, 0x0, 1536, 0x30 } - case ACMMVA01S: - return &inst{ 0x62, 0x2, 0x1, 0x0, 0, 0x0 } - case ACMMVSA01: - return &inst{ 0x22, 0x2, 0x1, 0x0, 0, 0x0 } - case ACMPOP: - return &inst{ 0x2, 0x3, 0x1, 0x0, 0, 0x0 } - case ACMPOPRET: - return &inst{ 0x2, 0x3, 0x1, 0x0, 0, 0x0 } - case ACMPOPRETZ: - return &inst{ 0x2, 0x3, 0x1, 0x0, 0, 0x0 } - case ACMPUSH: - return &inst{ 0x2, 0x3, 0x1, 0x0, 0, 0x0 } - case ACPOP: - return &inst{ 0x13, 0x1, 0x0, 0x2, 1538, 0x30 } - case ACPOPW: - return &inst{ 0x1b, 0x1, 0x0, 0x2, 1538, 0x30 } - case ACSRRC: - return &inst{ 0x73, 0x3, 0x0, 0x0, 0, 0x0 } - case ACSRRCI: - return &inst{ 0x73, 0x7, 0x0, 0x0, 0, 0x0 } - case ACSRRS: - return &inst{ 0x73, 0x2, 0x0, 0x0, 0, 0x0 } - case ACSRRSI: - return &inst{ 0x73, 0x6, 0x0, 0x0, 0, 0x0 } - case ACSRRW: - return &inst{ 0x73, 0x1, 0x0, 0x0, 0, 0x0 } - case ACSRRWI: - return &inst{ 0x73, 0x5, 0x0, 0x0, 0, 0x0 } - case ACTZ: - return &inst{ 0x13, 0x1, 0x0, 0x1, 1537, 0x30 } - case ACTZW: - return &inst{ 0x1b, 0x1, 0x0, 0x1, 1537, 0x30 } - case ACZEROEQZ: - return &inst{ 0x33, 0x5, 0x0, 0x0, 224, 0x7 } - case ACZERONEZ: - return &inst{ 0x33, 0x7, 0x0, 0x0, 224, 0x7 } - case ADIV: - return &inst{ 0x33, 0x4, 0x0, 0x0, 32, 0x1 } - case ADIVU: - return &inst{ 0x33, 0x5, 0x0, 0x0, 32, 0x1 } - case ADIVUW: - return &inst{ 0x3b, 0x5, 0x0, 0x0, 32, 0x1 } - case ADIVW: - return &inst{ 0x3b, 0x4, 0x0, 0x0, 32, 0x1 } - case ADRET: - return &inst{ 0x73, 0x0, 0x0, 0x12, 1970, 0x3d } - case AEBREAK: - return &inst{ 0x73, 0x0, 0x0, 0x1, 1, 0x0 } - case AECALL: - return &inst{ 0x73, 0x0, 0x0, 0x0, 0, 0x0 } - case AFADDD: - return &inst{ 0x53, 0x0, 0x0, 0x0, 32, 0x1 } - case AFADDH: - return &inst{ 0x53, 0x0, 0x0, 0x0, 64, 0x2 } - case AFADDQ: - return &inst{ 0x53, 0x0, 0x0, 0x0, 96, 0x3 } - case AFADDS: - return &inst{ 0x53, 0x0, 0x0, 0x0, 0, 0x0 } - case AFCLASSD: - return &inst{ 0x53, 0x1, 0x0, 0x0, -480, 0x71 } - case AFCLASSH: - return &inst{ 0x53, 0x1, 0x0, 0x0, -448, 0x72 } - case AFCLASSQ: - return &inst{ 0x53, 0x1, 0x0, 0x0, -416, 0x73 } - case AFCLASSS: - return &inst{ 0x53, 0x1, 0x0, 0x0, -512, 0x70 } - case AFCVTBF16S: - return &inst{ 0x53, 0x0, 0x0, 0x8, 1096, 0x22 } - case AFCVTDH: - return &inst{ 0x53, 0x0, 0x0, 0x2, 1058, 0x21 } - case AFCVTDL: - return &inst{ 0x53, 0x0, 0x0, 0x2, -734, 0x69 } - case AFCVTDLU: - return &inst{ 0x53, 0x0, 0x0, 0x3, -733, 0x69 } - case AFCVTDQ: - return &inst{ 0x53, 0x0, 0x0, 0x3, 1059, 0x21 } - case AFCVTDS: - return &inst{ 0x53, 0x0, 0x0, 0x0, 1056, 0x21 } - case AFCVTDW: - return &inst{ 0x53, 0x0, 0x0, 0x0, -736, 0x69 } - case AFCVTDWU: - return &inst{ 0x53, 0x0, 0x0, 0x1, -735, 0x69 } - case AFCVTHD: - return &inst{ 0x53, 0x0, 0x0, 0x1, 1089, 0x22 } - case AFCVTHL: - return &inst{ 0x53, 0x0, 0x0, 0x2, -702, 0x6a } - case AFCVTHLU: - return &inst{ 0x53, 0x0, 0x0, 0x3, -701, 0x6a } - case AFCVTHQ: - return &inst{ 0x53, 0x0, 0x0, 0x3, 1091, 0x22 } - case AFCVTHS: - return &inst{ 0x53, 0x0, 0x0, 0x0, 1088, 0x22 } - case AFCVTHW: - return &inst{ 0x53, 0x0, 0x0, 0x0, -704, 0x6a } - case AFCVTHWU: - return &inst{ 0x53, 0x0, 0x0, 0x1, -703, 0x6a } - case AFCVTLD: - return &inst{ 0x53, 0x0, 0x0, 0x2, -990, 0x61 } - case AFCVTLH: - return &inst{ 0x53, 0x0, 0x0, 0x2, -958, 0x62 } - case AFCVTLQ: - return &inst{ 0x53, 0x0, 0x0, 0x2, -926, 0x63 } - case AFCVTLS: - return &inst{ 0x53, 0x0, 0x0, 0x2, -1022, 0x60 } - case AFCVTLUD: - return &inst{ 0x53, 0x0, 0x0, 0x3, -989, 0x61 } - case AFCVTLUH: - return &inst{ 0x53, 0x0, 0x0, 0x3, -957, 0x62 } - case AFCVTLUQ: - return &inst{ 0x53, 0x0, 0x0, 0x3, -925, 0x63 } - case AFCVTLUS: - return &inst{ 0x53, 0x0, 0x0, 0x3, -1021, 0x60 } - case AFCVTQD: - return &inst{ 0x53, 0x0, 0x0, 0x1, 1121, 0x23 } - case AFCVTQH: - return &inst{ 0x53, 0x0, 0x0, 0x2, 1122, 0x23 } - case AFCVTQL: - return &inst{ 0x53, 0x0, 0x0, 0x2, -670, 0x6b } - case AFCVTQLU: - return &inst{ 0x53, 0x0, 0x0, 0x3, -669, 0x6b } - case AFCVTQS: - return &inst{ 0x53, 0x0, 0x0, 0x0, 1120, 0x23 } - case AFCVTQW: - return &inst{ 0x53, 0x0, 0x0, 0x0, -672, 0x6b } - case AFCVTQWU: - return &inst{ 0x53, 0x0, 0x0, 0x1, -671, 0x6b } - case AFCVTSBF16: - return &inst{ 0x53, 0x0, 0x0, 0x6, 1030, 0x20 } - case AFCVTSD: - return &inst{ 0x53, 0x0, 0x0, 0x1, 1025, 0x20 } - case AFCVTSH: - return &inst{ 0x53, 0x0, 0x0, 0x2, 1026, 0x20 } - case AFCVTSL: - return &inst{ 0x53, 0x0, 0x0, 0x2, -766, 0x68 } - case AFCVTSLU: - return &inst{ 0x53, 0x0, 0x0, 0x3, -765, 0x68 } - case AFCVTSQ: - return &inst{ 0x53, 0x0, 0x0, 0x3, 1027, 0x20 } - case AFCVTSW: - return &inst{ 0x53, 0x0, 0x0, 0x0, -768, 0x68 } - case AFCVTSWU: - return &inst{ 0x53, 0x0, 0x0, 0x1, -767, 0x68 } - case AFCVTWD: - return &inst{ 0x53, 0x0, 0x0, 0x0, -992, 0x61 } - case AFCVTWH: - return &inst{ 0x53, 0x0, 0x0, 0x0, -960, 0x62 } - case AFCVTWQ: - return &inst{ 0x53, 0x0, 0x0, 0x0, -928, 0x63 } - case AFCVTWS: - return &inst{ 0x53, 0x0, 0x0, 0x0, -1024, 0x60 } - case AFCVTWUD: - return &inst{ 0x53, 0x0, 0x0, 0x1, -991, 0x61 } - case AFCVTWUH: - return &inst{ 0x53, 0x0, 0x0, 0x1, -959, 0x62 } - case AFCVTWUQ: - return &inst{ 0x53, 0x0, 0x0, 0x1, -927, 0x63 } - case AFCVTWUS: - return &inst{ 0x53, 0x0, 0x0, 0x1, -1023, 0x60 } - case AFCVTMODWD: - return &inst{ 0x53, 0x1, 0x0, 0x8, -984, 0x61 } - case AFDIVD: - return &inst{ 0x53, 0x0, 0x0, 0x0, 416, 0xd } - case AFDIVH: - return &inst{ 0x53, 0x0, 0x0, 0x0, 448, 0xe } - case AFDIVQ: - return &inst{ 0x53, 0x0, 0x0, 0x0, 480, 0xf } - case AFDIVS: - return &inst{ 0x53, 0x0, 0x0, 0x0, 384, 0xc } - case AFENCE: - return &inst{ 0xf, 0x0, 0x0, 0x0, 0, 0x0 } - case AFENCEI: - return &inst{ 0xf, 0x1, 0x0, 0x0, 0, 0x0 } - case AFEQD: - return &inst{ 0x53, 0x2, 0x0, 0x0, -1504, 0x51 } - case AFEQH: - return &inst{ 0x53, 0x2, 0x0, 0x0, -1472, 0x52 } - case AFEQQ: - return &inst{ 0x53, 0x2, 0x0, 0x0, -1440, 0x53 } - case AFEQS: - return &inst{ 0x53, 0x2, 0x0, 0x0, -1536, 0x50 } - case AFLD: - return &inst{ 0x7, 0x3, 0x0, 0x0, 0, 0x0 } - case AFLED: - return &inst{ 0x53, 0x0, 0x0, 0x0, -1504, 0x51 } - case AFLEH: - return &inst{ 0x53, 0x0, 0x0, 0x0, -1472, 0x52 } - case AFLEQ: - return &inst{ 0x53, 0x0, 0x0, 0x0, -1440, 0x53 } - case AFLES: - return &inst{ 0x53, 0x0, 0x0, 0x0, -1536, 0x50 } - case AFLEQD: - return &inst{ 0x53, 0x4, 0x0, 0x0, -1504, 0x51 } - case AFLEQH: - return &inst{ 0x53, 0x4, 0x0, 0x0, -1472, 0x52 } - case AFLEQQ: - return &inst{ 0x53, 0x4, 0x0, 0x0, -1440, 0x53 } - case AFLEQS: - return &inst{ 0x53, 0x4, 0x0, 0x0, -1536, 0x50 } - case AFLH: - return &inst{ 0x7, 0x1, 0x0, 0x0, 0, 0x0 } - case AFLID: - return &inst{ 0x53, 0x0, 0x0, 0x1, -223, 0x79 } - case AFLIH: - return &inst{ 0x53, 0x0, 0x0, 0x1, -191, 0x7a } - case AFLIQ: - return &inst{ 0x53, 0x0, 0x0, 0x1, -159, 0x7b } - case AFLIS: - return &inst{ 0x53, 0x0, 0x0, 0x1, -255, 0x78 } - case AFLQ: - return &inst{ 0x7, 0x4, 0x0, 0x0, 0, 0x0 } - case AFLTD: - return &inst{ 0x53, 0x1, 0x0, 0x0, -1504, 0x51 } - case AFLTH: - return &inst{ 0x53, 0x1, 0x0, 0x0, -1472, 0x52 } - case AFLTQ: - return &inst{ 0x53, 0x1, 0x0, 0x0, -1440, 0x53 } - case AFLTS: - return &inst{ 0x53, 0x1, 0x0, 0x0, -1536, 0x50 } - case AFLTQD: - return &inst{ 0x53, 0x5, 0x0, 0x0, -1504, 0x51 } - case AFLTQH: - return &inst{ 0x53, 0x5, 0x0, 0x0, -1472, 0x52 } - case AFLTQQ: - return &inst{ 0x53, 0x5, 0x0, 0x0, -1440, 0x53 } - case AFLTQS: - return &inst{ 0x53, 0x5, 0x0, 0x0, -1536, 0x50 } - case AFLW: - return &inst{ 0x7, 0x2, 0x0, 0x0, 0, 0x0 } - case AFMADDD: - return &inst{ 0x43, 0x0, 0x0, 0x0, 32, 0x1 } - case AFMADDH: - return &inst{ 0x43, 0x0, 0x0, 0x0, 64, 0x2 } - case AFMADDQ: - return &inst{ 0x43, 0x0, 0x0, 0x0, 96, 0x3 } - case AFMADDS: - return &inst{ 0x43, 0x0, 0x0, 0x0, 0, 0x0 } - case AFMAXD: - return &inst{ 0x53, 0x1, 0x0, 0x0, 672, 0x15 } - case AFMAXH: - return &inst{ 0x53, 0x1, 0x0, 0x0, 704, 0x16 } - case AFMAXQ: - return &inst{ 0x53, 0x1, 0x0, 0x0, 736, 0x17 } - case AFMAXS: - return &inst{ 0x53, 0x1, 0x0, 0x0, 640, 0x14 } - case AFMAXMD: - return &inst{ 0x53, 0x3, 0x0, 0x0, 672, 0x15 } - case AFMAXMH: - return &inst{ 0x53, 0x3, 0x0, 0x0, 704, 0x16 } - case AFMAXMQ: - return &inst{ 0x53, 0x3, 0x0, 0x0, 736, 0x17 } - case AFMAXMS: - return &inst{ 0x53, 0x3, 0x0, 0x0, 640, 0x14 } - case AFMIND: - return &inst{ 0x53, 0x0, 0x0, 0x0, 672, 0x15 } - case AFMINH: - return &inst{ 0x53, 0x0, 0x0, 0x0, 704, 0x16 } - case AFMINQ: - return &inst{ 0x53, 0x0, 0x0, 0x0, 736, 0x17 } - case AFMINS: - return &inst{ 0x53, 0x0, 0x0, 0x0, 640, 0x14 } - case AFMINMD: - return &inst{ 0x53, 0x2, 0x0, 0x0, 672, 0x15 } - case AFMINMH: - return &inst{ 0x53, 0x2, 0x0, 0x0, 704, 0x16 } - case AFMINMQ: - return &inst{ 0x53, 0x2, 0x0, 0x0, 736, 0x17 } - case AFMINMS: - return &inst{ 0x53, 0x2, 0x0, 0x0, 640, 0x14 } - case AFMSUBD: - return &inst{ 0x47, 0x0, 0x0, 0x0, 32, 0x1 } - case AFMSUBH: - return &inst{ 0x47, 0x0, 0x0, 0x0, 64, 0x2 } - case AFMSUBQ: - return &inst{ 0x47, 0x0, 0x0, 0x0, 96, 0x3 } - case AFMSUBS: - return &inst{ 0x47, 0x0, 0x0, 0x0, 0, 0x0 } - case AFMULD: - return &inst{ 0x53, 0x0, 0x0, 0x0, 288, 0x9 } - case AFMULH: - return &inst{ 0x53, 0x0, 0x0, 0x0, 320, 0xa } - case AFMULQ: - return &inst{ 0x53, 0x0, 0x0, 0x0, 352, 0xb } - case AFMULS: - return &inst{ 0x53, 0x0, 0x0, 0x0, 256, 0x8 } - case AFMVDX: - return &inst{ 0x53, 0x0, 0x0, 0x0, -224, 0x79 } - case AFMVHX: - return &inst{ 0x53, 0x0, 0x0, 0x0, -192, 0x7a } - case AFMVWX: - return &inst{ 0x53, 0x0, 0x0, 0x0, -256, 0x78 } - case AFMVXD: - return &inst{ 0x53, 0x0, 0x0, 0x0, -480, 0x71 } - case AFMVXH: - return &inst{ 0x53, 0x0, 0x0, 0x0, -448, 0x72 } - case AFMVXW: - return &inst{ 0x53, 0x0, 0x0, 0x0, -512, 0x70 } - case AFMVHXD: - return &inst{ 0x53, 0x0, 0x0, 0x1, -479, 0x71 } - case AFMVHXQ: - return &inst{ 0x53, 0x0, 0x0, 0x1, -415, 0x73 } - case AFMVPDX: - return &inst{ 0x53, 0x0, 0x0, 0x0, -1248, 0x59 } - case AFMVPQX: - return &inst{ 0x53, 0x0, 0x0, 0x0, -1184, 0x5b } - case AFNMADDD: - return &inst{ 0x4f, 0x0, 0x0, 0x0, 32, 0x1 } - case AFNMADDH: - return &inst{ 0x4f, 0x0, 0x0, 0x0, 64, 0x2 } - case AFNMADDQ: - return &inst{ 0x4f, 0x0, 0x0, 0x0, 96, 0x3 } - case AFNMADDS: - return &inst{ 0x4f, 0x0, 0x0, 0x0, 0, 0x0 } - case AFNMSUBD: - return &inst{ 0x4b, 0x0, 0x0, 0x0, 32, 0x1 } - case AFNMSUBH: - return &inst{ 0x4b, 0x0, 0x0, 0x0, 64, 0x2 } - case AFNMSUBQ: - return &inst{ 0x4b, 0x0, 0x0, 0x0, 96, 0x3 } - case AFNMSUBS: - return &inst{ 0x4b, 0x0, 0x0, 0x0, 0, 0x0 } - case AFROUNDD: - return &inst{ 0x53, 0x0, 0x0, 0x4, 1060, 0x21 } - case AFROUNDH: - return &inst{ 0x53, 0x0, 0x0, 0x4, 1092, 0x22 } - case AFROUNDQ: - return &inst{ 0x53, 0x0, 0x0, 0x4, 1124, 0x23 } - case AFROUNDS: - return &inst{ 0x53, 0x0, 0x0, 0x4, 1028, 0x20 } - case AFROUNDNXD: - return &inst{ 0x53, 0x0, 0x0, 0x5, 1061, 0x21 } - case AFROUNDNXH: - return &inst{ 0x53, 0x0, 0x0, 0x5, 1093, 0x22 } - case AFROUNDNXQ: - return &inst{ 0x53, 0x0, 0x0, 0x5, 1125, 0x23 } - case AFROUNDNXS: - return &inst{ 0x53, 0x0, 0x0, 0x5, 1029, 0x20 } - case AFSD: - return &inst{ 0x27, 0x3, 0x0, 0x0, 0, 0x0 } - case AFSGNJD: - return &inst{ 0x53, 0x0, 0x0, 0x0, 544, 0x11 } - case AFSGNJH: - return &inst{ 0x53, 0x0, 0x0, 0x0, 576, 0x12 } - case AFSGNJQ: - return &inst{ 0x53, 0x0, 0x0, 0x0, 608, 0x13 } - case AFSGNJS: - return &inst{ 0x53, 0x0, 0x0, 0x0, 512, 0x10 } - case AFSGNJND: - return &inst{ 0x53, 0x1, 0x0, 0x0, 544, 0x11 } - case AFSGNJNH: - return &inst{ 0x53, 0x1, 0x0, 0x0, 576, 0x12 } - case AFSGNJNQ: - return &inst{ 0x53, 0x1, 0x0, 0x0, 608, 0x13 } - case AFSGNJNS: - return &inst{ 0x53, 0x1, 0x0, 0x0, 512, 0x10 } - case AFSGNJXD: - return &inst{ 0x53, 0x2, 0x0, 0x0, 544, 0x11 } - case AFSGNJXH: - return &inst{ 0x53, 0x2, 0x0, 0x0, 576, 0x12 } - case AFSGNJXQ: - return &inst{ 0x53, 0x2, 0x0, 0x0, 608, 0x13 } - case AFSGNJXS: - return &inst{ 0x53, 0x2, 0x0, 0x0, 512, 0x10 } - case AFSH: - return &inst{ 0x27, 0x1, 0x0, 0x0, 0, 0x0 } - case AFSQ: - return &inst{ 0x27, 0x4, 0x0, 0x0, 0, 0x0 } - case AFSQRTD: - return &inst{ 0x53, 0x0, 0x0, 0x0, 1440, 0x2d } - case AFSQRTH: - return &inst{ 0x53, 0x0, 0x0, 0x0, 1472, 0x2e } - case AFSQRTQ: - return &inst{ 0x53, 0x0, 0x0, 0x0, 1504, 0x2f } - case AFSQRTS: - return &inst{ 0x53, 0x0, 0x0, 0x0, 1408, 0x2c } - case AFSUBD: - return &inst{ 0x53, 0x0, 0x0, 0x0, 160, 0x5 } - case AFSUBH: - return &inst{ 0x53, 0x0, 0x0, 0x0, 192, 0x6 } - case AFSUBQ: - return &inst{ 0x53, 0x0, 0x0, 0x0, 224, 0x7 } - case AFSUBS: - return &inst{ 0x53, 0x0, 0x0, 0x0, 128, 0x4 } - case AFSW: - return &inst{ 0x27, 0x2, 0x0, 0x0, 0, 0x0 } - case AHFENCEGVMA: - return &inst{ 0x73, 0x0, 0x0, 0x0, 1568, 0x31 } - case AHFENCEVVMA: - return &inst{ 0x73, 0x0, 0x0, 0x0, 544, 0x11 } - case AHINVALGVMA: - return &inst{ 0x73, 0x0, 0x0, 0x0, 1632, 0x33 } - case AHINVALVVMA: - return &inst{ 0x73, 0x0, 0x0, 0x0, 608, 0x13 } - case AHLVB: - return &inst{ 0x73, 0x4, 0x0, 0x0, 1536, 0x30 } - case AHLVBU: - return &inst{ 0x73, 0x4, 0x0, 0x1, 1537, 0x30 } - case AHLVD: - return &inst{ 0x73, 0x4, 0x0, 0x0, 1728, 0x36 } - case AHLVH: - return &inst{ 0x73, 0x4, 0x0, 0x0, 1600, 0x32 } - case AHLVHU: - return &inst{ 0x73, 0x4, 0x0, 0x1, 1601, 0x32 } - case AHLVW: - return &inst{ 0x73, 0x4, 0x0, 0x0, 1664, 0x34 } - case AHLVWU: - return &inst{ 0x73, 0x4, 0x0, 0x1, 1665, 0x34 } - case AHLVXHU: - return &inst{ 0x73, 0x4, 0x0, 0x3, 1603, 0x32 } - case AHLVXWU: - return &inst{ 0x73, 0x4, 0x0, 0x3, 1667, 0x34 } - case AHSVB: - return &inst{ 0x73, 0x4, 0x0, 0x0, 1568, 0x31 } - case AHSVD: - return &inst{ 0x73, 0x4, 0x0, 0x0, 1760, 0x37 } - case AHSVH: - return &inst{ 0x73, 0x4, 0x0, 0x0, 1632, 0x33 } - case AHSVW: - return &inst{ 0x73, 0x4, 0x0, 0x0, 1696, 0x35 } - case AJAL: - return &inst{ 0x6f, 0x0, 0x0, 0x0, 0, 0x0 } - case AJALR: - return &inst{ 0x67, 0x0, 0x0, 0x0, 0, 0x0 } - case ALB: - return &inst{ 0x3, 0x0, 0x0, 0x0, 0, 0x0 } - case ALBAQ: - return &inst{ 0x2f, 0x0, 0x0, 0x0, 832, 0x1a } - case ALBU: - return &inst{ 0x3, 0x4, 0x0, 0x0, 0, 0x0 } - case ALD: - return &inst{ 0x3, 0x3, 0x0, 0x0, 0, 0x0 } - case ALDAQ: - return &inst{ 0x2f, 0x3, 0x0, 0x0, 832, 0x1a } - case ALH: - return &inst{ 0x3, 0x1, 0x0, 0x0, 0, 0x0 } - case ALHAQ: - return &inst{ 0x2f, 0x1, 0x0, 0x0, 832, 0x1a } - case ALHU: - return &inst{ 0x3, 0x5, 0x0, 0x0, 0, 0x0 } - case ALPAD: - return &inst{ 0x17, 0x0, 0x0, 0x0, 0, 0x0 } - case ALRD: - return &inst{ 0x2f, 0x3, 0x0, 0x0, 256, 0x8 } - case ALRW: - return &inst{ 0x2f, 0x2, 0x0, 0x0, 256, 0x8 } - case ALUI: - return &inst{ 0x37, 0x0, 0x0, 0x0, 0, 0x0 } - case ALW: - return &inst{ 0x3, 0x2, 0x0, 0x0, 0, 0x0 } - case ALWAQ: - return &inst{ 0x2f, 0x2, 0x0, 0x0, 832, 0x1a } - case ALWU: - return &inst{ 0x3, 0x6, 0x0, 0x0, 0, 0x0 } - case AMAX: - return &inst{ 0x33, 0x6, 0x0, 0x0, 160, 0x5 } - case AMAXU: - return &inst{ 0x33, 0x7, 0x0, 0x0, 160, 0x5 } - case AMIN: - return &inst{ 0x33, 0x4, 0x0, 0x0, 160, 0x5 } - case AMINU: - return &inst{ 0x33, 0x5, 0x0, 0x0, 160, 0x5 } - case AMNRET: - return &inst{ 0x73, 0x0, 0x0, 0x2, 1794, 0x38 } - case AMOPRN: - return &inst{ 0x73, 0x4, 0x0, 0x1c, -2020, 0x40 } - case AMOPRRN: - return &inst{ 0x73, 0x4, 0x0, 0x0, -2016, 0x41 } - case AMRET: - return &inst{ 0x73, 0x0, 0x0, 0x2, 770, 0x18 } - case AMUL: - return &inst{ 0x33, 0x0, 0x0, 0x0, 32, 0x1 } - case AMULH: - return &inst{ 0x33, 0x1, 0x0, 0x0, 32, 0x1 } - case AMULHSU: - return &inst{ 0x33, 0x2, 0x0, 0x0, 32, 0x1 } - case AMULHU: - return &inst{ 0x33, 0x3, 0x0, 0x0, 32, 0x1 } - case AMULW: - return &inst{ 0x3b, 0x0, 0x0, 0x0, 32, 0x1 } - case AOR: - return &inst{ 0x33, 0x6, 0x0, 0x0, 0, 0x0 } - case AORCB: - return &inst{ 0x13, 0x5, 0x0, 0x7, 647, 0x14 } - case AORI: - return &inst{ 0x13, 0x6, 0x0, 0x0, 0, 0x0 } - case AORN: - return &inst{ 0x33, 0x6, 0x0, 0x0, 1024, 0x20 } - case APACK: - return &inst{ 0x33, 0x4, 0x0, 0x0, 128, 0x4 } - case APACKH: - return &inst{ 0x33, 0x7, 0x0, 0x0, 128, 0x4 } - case APACKW: - return &inst{ 0x3b, 0x4, 0x0, 0x0, 128, 0x4 } - case AREM: - return &inst{ 0x33, 0x6, 0x0, 0x0, 32, 0x1 } - case AREMU: - return &inst{ 0x33, 0x7, 0x0, 0x0, 32, 0x1 } - case AREMUW: - return &inst{ 0x3b, 0x7, 0x0, 0x0, 32, 0x1 } - case AREMW: - return &inst{ 0x3b, 0x6, 0x0, 0x0, 32, 0x1 } - case AREV8: - return &inst{ 0x13, 0x5, 0x0, 0x18, 1720, 0x35 } - case AROL: - return &inst{ 0x33, 0x1, 0x0, 0x0, 1536, 0x30 } - case AROLW: - return &inst{ 0x3b, 0x1, 0x0, 0x0, 1536, 0x30 } - case AROR: - return &inst{ 0x33, 0x5, 0x0, 0x0, 1536, 0x30 } - case ARORI: - return &inst{ 0x13, 0x5, 0x0, 0x0, 1536, 0x30 } - case ARORIW: - return &inst{ 0x1b, 0x5, 0x0, 0x0, 1536, 0x30 } - case ARORW: - return &inst{ 0x3b, 0x5, 0x0, 0x0, 1536, 0x30 } - case ASB: - return &inst{ 0x23, 0x0, 0x0, 0x0, 0, 0x0 } - case ASBRL: - return &inst{ 0x2f, 0x0, 0x0, 0x0, 928, 0x1d } - case ASCD: - return &inst{ 0x2f, 0x3, 0x0, 0x0, 384, 0xc } - case ASCW: - return &inst{ 0x2f, 0x2, 0x0, 0x0, 384, 0xc } - case ASCTRCLR: - return &inst{ 0x73, 0x0, 0x0, 0x4, 260, 0x8 } - case ASD: - return &inst{ 0x23, 0x3, 0x0, 0x0, 0, 0x0 } - case ASDRL: - return &inst{ 0x2f, 0x3, 0x0, 0x0, 928, 0x1d } - case ASEXTB: - return &inst{ 0x13, 0x1, 0x0, 0x4, 1540, 0x30 } - case ASEXTH: - return &inst{ 0x13, 0x1, 0x0, 0x5, 1541, 0x30 } - case ASFENCEINVALIR: - return &inst{ 0x73, 0x0, 0x0, 0x1, 385, 0xc } - case ASFENCEVMA: - return &inst{ 0x73, 0x0, 0x0, 0x0, 288, 0x9 } - case ASFENCEWINVAL: - return &inst{ 0x73, 0x0, 0x0, 0x0, 384, 0xc } - case ASH: - return &inst{ 0x23, 0x1, 0x0, 0x0, 0, 0x0 } - case ASH1ADD: - return &inst{ 0x33, 0x2, 0x0, 0x0, 512, 0x10 } - case ASH1ADDUW: - return &inst{ 0x3b, 0x2, 0x0, 0x0, 512, 0x10 } - case ASH2ADD: - return &inst{ 0x33, 0x4, 0x0, 0x0, 512, 0x10 } - case ASH2ADDUW: - return &inst{ 0x3b, 0x4, 0x0, 0x0, 512, 0x10 } - case ASH3ADD: - return &inst{ 0x33, 0x6, 0x0, 0x0, 512, 0x10 } - case ASH3ADDUW: - return &inst{ 0x3b, 0x6, 0x0, 0x0, 512, 0x10 } - case ASHRL: - return &inst{ 0x2f, 0x1, 0x0, 0x0, 928, 0x1d } - case ASHA256SIG0: - return &inst{ 0x13, 0x1, 0x0, 0x2, 258, 0x8 } - case ASHA256SIG1: - return &inst{ 0x13, 0x1, 0x0, 0x3, 259, 0x8 } - case ASHA256SUM0: - return &inst{ 0x13, 0x1, 0x0, 0x0, 256, 0x8 } - case ASHA256SUM1: - return &inst{ 0x13, 0x1, 0x0, 0x1, 257, 0x8 } - case ASHA512SIG0: - return &inst{ 0x13, 0x1, 0x0, 0x6, 262, 0x8 } - case ASHA512SIG0H: - return &inst{ 0x33, 0x0, 0x0, 0x0, 1472, 0x2e } - case ASHA512SIG0L: - return &inst{ 0x33, 0x0, 0x0, 0x0, 1344, 0x2a } - case ASHA512SIG1: - return &inst{ 0x13, 0x1, 0x0, 0x7, 263, 0x8 } - case ASHA512SIG1H: - return &inst{ 0x33, 0x0, 0x0, 0x0, 1504, 0x2f } - case ASHA512SIG1L: - return &inst{ 0x33, 0x0, 0x0, 0x0, 1376, 0x2b } - case ASHA512SUM0: - return &inst{ 0x13, 0x1, 0x0, 0x4, 260, 0x8 } - case ASHA512SUM0R: - return &inst{ 0x33, 0x0, 0x0, 0x0, 1280, 0x28 } - case ASHA512SUM1: - return &inst{ 0x13, 0x1, 0x0, 0x5, 261, 0x8 } - case ASHA512SUM1R: - return &inst{ 0x33, 0x0, 0x0, 0x0, 1312, 0x29 } - case ASINVALVMA: - return &inst{ 0x73, 0x0, 0x0, 0x0, 352, 0xb } - case ASLL: - return &inst{ 0x33, 0x1, 0x0, 0x0, 0, 0x0 } - case ASLLI: - return &inst{ 0x13, 0x1, 0x0, 0x0, 0, 0x0 } - case ASLLIUW: - return &inst{ 0x1b, 0x1, 0x0, 0x0, 128, 0x4 } - case ASLLIW: - return &inst{ 0x1b, 0x1, 0x0, 0x0, 0, 0x0 } - case ASLLW: - return &inst{ 0x3b, 0x1, 0x0, 0x0, 0, 0x0 } - case ASLT: - return &inst{ 0x33, 0x2, 0x0, 0x0, 0, 0x0 } - case ASLTI: - return &inst{ 0x13, 0x2, 0x0, 0x0, 0, 0x0 } - case ASLTIU: - return &inst{ 0x13, 0x3, 0x0, 0x0, 0, 0x0 } - case ASLTU: - return &inst{ 0x33, 0x3, 0x0, 0x0, 0, 0x0 } - case ASM3P0: - return &inst{ 0x13, 0x1, 0x0, 0x8, 264, 0x8 } - case ASM3P1: - return &inst{ 0x13, 0x1, 0x0, 0x9, 265, 0x8 } - case ASM4ED: - return &inst{ 0x33, 0x0, 0x0, 0x0, 768, 0x18 } - case ASM4KS: - return &inst{ 0x33, 0x0, 0x0, 0x0, 832, 0x1a } - case ASRA: - return &inst{ 0x33, 0x5, 0x0, 0x0, 1024, 0x20 } - case ASRAI: - return &inst{ 0x13, 0x5, 0x0, 0x0, 1024, 0x20 } - case ASRAIW: - return &inst{ 0x1b, 0x5, 0x0, 0x0, 1024, 0x20 } - case ASRAW: - return &inst{ 0x3b, 0x5, 0x0, 0x0, 1024, 0x20 } - case ASRET: - return &inst{ 0x73, 0x0, 0x0, 0x2, 258, 0x8 } - case ASRL: - return &inst{ 0x33, 0x5, 0x0, 0x0, 0, 0x0 } - case ASRLI: - return &inst{ 0x13, 0x5, 0x0, 0x0, 0, 0x0 } - case ASRLIW: - return &inst{ 0x1b, 0x5, 0x0, 0x0, 0, 0x0 } - case ASRLW: - return &inst{ 0x3b, 0x5, 0x0, 0x0, 0, 0x0 } - case ASSAMOSWAPD: - return &inst{ 0x2f, 0x3, 0x0, 0x0, 1152, 0x24 } - case ASSAMOSWAPW: - return &inst{ 0x2f, 0x2, 0x0, 0x0, 1152, 0x24 } - case ASSPOPCHKX1: - return &inst{ 0x73, 0x4, 0x1, 0x1c, -804, 0x66 } - case ASSPOPCHKX5: - return &inst{ 0x73, 0x4, 0x5, 0x1c, -804, 0x66 } - case ASSPUSHX1: - return &inst{ 0x73, 0x4, 0x0, 0x1, -799, 0x67 } - case ASSPUSHX5: - return &inst{ 0x73, 0x4, 0x0, 0x5, -795, 0x67 } - case ASSRDP: - return &inst{ 0x73, 0x4, 0x0, 0x1c, -804, 0x66 } - case ASUB: - return &inst{ 0x33, 0x0, 0x0, 0x0, 1024, 0x20 } - case ASUBW: - return &inst{ 0x3b, 0x0, 0x0, 0x0, 1024, 0x20 } - case ASW: - return &inst{ 0x23, 0x2, 0x0, 0x0, 0, 0x0 } - case ASWRL: - return &inst{ 0x2f, 0x2, 0x0, 0x0, 928, 0x1d } - case AUNZIP: - return &inst{ 0x13, 0x5, 0x0, 0xf, 143, 0x4 } - case AVAADDVV: - return &inst{ 0x57, 0x2, 0x0, 0x0, 576, 0x12 } - case AVAADDVX: - return &inst{ 0x57, 0x6, 0x0, 0x0, 576, 0x12 } - case AVAADDUVV: - return &inst{ 0x57, 0x2, 0x0, 0x0, 512, 0x10 } - case AVAADDUVX: - return &inst{ 0x57, 0x6, 0x0, 0x0, 512, 0x10 } - case AVADCVIM: - return &inst{ 0x57, 0x3, 0x0, 0x0, 1024, 0x20 } - case AVADCVVM: - return &inst{ 0x57, 0x0, 0x0, 0x0, 1024, 0x20 } - case AVADCVXM: - return &inst{ 0x57, 0x4, 0x0, 0x0, 1024, 0x20 } - case AVADDVI: - return &inst{ 0x57, 0x3, 0x0, 0x0, 0, 0x0 } - case AVADDVV: - return &inst{ 0x57, 0x0, 0x0, 0x0, 0, 0x0 } - case AVADDVX: - return &inst{ 0x57, 0x4, 0x0, 0x0, 0, 0x0 } - case AVAESDFVS: - return &inst{ 0x77, 0x2, 0x1, 0x0, -1440, 0x53 } - case AVAESDFVV: - return &inst{ 0x77, 0x2, 0x1, 0x0, -1504, 0x51 } - case AVAESDMVS: - return &inst{ 0x77, 0x2, 0x0, 0x0, -1440, 0x53 } - case AVAESDMVV: - return &inst{ 0x77, 0x2, 0x0, 0x0, -1504, 0x51 } - case AVAESEFVS: - return &inst{ 0x77, 0x2, 0x3, 0x0, -1440, 0x53 } - case AVAESEFVV: - return &inst{ 0x77, 0x2, 0x3, 0x0, -1504, 0x51 } - case AVAESEMVS: - return &inst{ 0x77, 0x2, 0x2, 0x0, -1440, 0x53 } - case AVAESEMVV: - return &inst{ 0x77, 0x2, 0x2, 0x0, -1504, 0x51 } - case AVAESKF1VI: - return &inst{ 0x77, 0x2, 0x0, 0x0, -1888, 0x45 } - case AVAESKF2VI: - return &inst{ 0x77, 0x2, 0x0, 0x0, -1376, 0x55 } - case AVAESZVS: - return &inst{ 0x77, 0x2, 0x7, 0x0, -1440, 0x53 } - case AVANDVI: - return &inst{ 0x57, 0x3, 0x0, 0x0, 576, 0x12 } - case AVANDVV: - return &inst{ 0x57, 0x0, 0x0, 0x0, 576, 0x12 } - case AVANDVX: - return &inst{ 0x57, 0x4, 0x0, 0x0, 576, 0x12 } - case AVANDNVV: - return &inst{ 0x57, 0x0, 0x0, 0x0, 64, 0x2 } - case AVANDNVX: - return &inst{ 0x57, 0x4, 0x0, 0x0, 64, 0x2 } - case AVASUBVV: - return &inst{ 0x57, 0x2, 0x0, 0x0, 704, 0x16 } - case AVASUBVX: - return &inst{ 0x57, 0x6, 0x0, 0x0, 704, 0x16 } - case AVASUBUVV: - return &inst{ 0x57, 0x2, 0x0, 0x0, 640, 0x14 } - case AVASUBUVX: - return &inst{ 0x57, 0x6, 0x0, 0x0, 640, 0x14 } - case AVBREV8V: - return &inst{ 0x57, 0x2, 0x8, 0x0, 1152, 0x24 } - case AVBREVV: - return &inst{ 0x57, 0x2, 0xa, 0x0, 1152, 0x24 } - case AVCLMULVV: - return &inst{ 0x57, 0x2, 0x0, 0x0, 768, 0x18 } - case AVCLMULVX: - return &inst{ 0x57, 0x6, 0x0, 0x0, 768, 0x18 } - case AVCLMULHVV: - return &inst{ 0x57, 0x2, 0x0, 0x0, 832, 0x1a } - case AVCLMULHVX: - return &inst{ 0x57, 0x6, 0x0, 0x0, 832, 0x1a } - case AVCLZV: - return &inst{ 0x57, 0x2, 0xc, 0x0, 1152, 0x24 } - case AVCOMPRESSVM: - return &inst{ 0x57, 0x2, 0x0, 0x0, 1504, 0x2f } - case AVCPOPM: - return &inst{ 0x57, 0x2, 0x10, 0x0, 1024, 0x20 } - case AVCPOPV: - return &inst{ 0x57, 0x2, 0xe, 0x0, 1152, 0x24 } - case AVCTZV: - return &inst{ 0x57, 0x2, 0xd, 0x0, 1152, 0x24 } - case AVDIVVV: - return &inst{ 0x57, 0x2, 0x0, 0x0, -1984, 0x42 } - case AVDIVVX: - return &inst{ 0x57, 0x6, 0x0, 0x0, -1984, 0x42 } - case AVDIVUVV: - return &inst{ 0x57, 0x2, 0x0, 0x0, -2048, 0x40 } - case AVDIVUVX: - return &inst{ 0x57, 0x6, 0x0, 0x0, -2048, 0x40 } - case AVFADDVF: - return &inst{ 0x57, 0x5, 0x0, 0x0, 0, 0x0 } - case AVFADDVV: - return &inst{ 0x57, 0x1, 0x0, 0x0, 0, 0x0 } - case AVFCLASSV: - return &inst{ 0x57, 0x1, 0x10, 0x0, 1216, 0x26 } - case AVFCVTFXV: - return &inst{ 0x57, 0x1, 0x3, 0x0, 1152, 0x24 } - case AVFCVTFXUV: - return &inst{ 0x57, 0x1, 0x2, 0x0, 1152, 0x24 } - case AVFCVTRTZXFV: - return &inst{ 0x57, 0x1, 0x7, 0x0, 1152, 0x24 } - case AVFCVTRTZXUFV: - return &inst{ 0x57, 0x1, 0x6, 0x0, 1152, 0x24 } - case AVFCVTXFV: - return &inst{ 0x57, 0x1, 0x1, 0x0, 1152, 0x24 } - case AVFCVTXUFV: - return &inst{ 0x57, 0x1, 0x0, 0x0, 1152, 0x24 } - case AVFDIVVF: - return &inst{ 0x57, 0x5, 0x0, 0x0, -2048, 0x40 } - case AVFDIVVV: - return &inst{ 0x57, 0x1, 0x0, 0x0, -2048, 0x40 } - case AVFIRSTM: - return &inst{ 0x57, 0x2, 0x11, 0x0, 1024, 0x20 } - case AVFMACCVF: - return &inst{ 0x57, 0x5, 0x0, 0x0, -1280, 0x58 } - case AVFMACCVV: - return &inst{ 0x57, 0x1, 0x0, 0x0, -1280, 0x58 } - case AVFMADDVF: - return &inst{ 0x57, 0x5, 0x0, 0x0, -1536, 0x50 } - case AVFMADDVV: - return &inst{ 0x57, 0x1, 0x0, 0x0, -1536, 0x50 } - case AVFMAXVF: - return &inst{ 0x57, 0x5, 0x0, 0x0, 384, 0xc } - case AVFMAXVV: - return &inst{ 0x57, 0x1, 0x0, 0x0, 384, 0xc } - case AVFMERGEVFM: - return &inst{ 0x57, 0x5, 0x0, 0x0, 1472, 0x2e } - case AVFMINVF: - return &inst{ 0x57, 0x5, 0x0, 0x0, 256, 0x8 } - case AVFMINVV: - return &inst{ 0x57, 0x1, 0x0, 0x0, 256, 0x8 } - case AVFMSACVF: - return &inst{ 0x57, 0x5, 0x0, 0x0, -1152, 0x5c } - case AVFMSACVV: - return &inst{ 0x57, 0x1, 0x0, 0x0, -1152, 0x5c } - case AVFMSUBVF: - return &inst{ 0x57, 0x5, 0x0, 0x0, -1408, 0x54 } - case AVFMSUBVV: - return &inst{ 0x57, 0x1, 0x0, 0x0, -1408, 0x54 } - case AVFMULVF: - return &inst{ 0x57, 0x5, 0x0, 0x0, -1792, 0x48 } - case AVFMULVV: - return &inst{ 0x57, 0x1, 0x0, 0x0, -1792, 0x48 } - case AVFMVFS: - return &inst{ 0x57, 0x1, 0x0, 0x0, 1056, 0x21 } - case AVFMVSF: - return &inst{ 0x57, 0x5, 0x0, 0x0, 1056, 0x21 } - case AVFMVVF: - return &inst{ 0x57, 0x5, 0x0, 0x0, 1504, 0x2f } - case AVFNCVTFFW: - return &inst{ 0x57, 0x1, 0x14, 0x0, 1152, 0x24 } - case AVFNCVTFXW: - return &inst{ 0x57, 0x1, 0x13, 0x0, 1152, 0x24 } - case AVFNCVTFXUW: - return &inst{ 0x57, 0x1, 0x12, 0x0, 1152, 0x24 } - case AVFNCVTRODFFW: - return &inst{ 0x57, 0x1, 0x15, 0x0, 1152, 0x24 } - case AVFNCVTRTZXFW: - return &inst{ 0x57, 0x1, 0x17, 0x0, 1152, 0x24 } - case AVFNCVTRTZXUFW: - return &inst{ 0x57, 0x1, 0x16, 0x0, 1152, 0x24 } - case AVFNCVTXFW: - return &inst{ 0x57, 0x1, 0x11, 0x0, 1152, 0x24 } - case AVFNCVTXUFW: - return &inst{ 0x57, 0x1, 0x10, 0x0, 1152, 0x24 } - case AVFNCVTBF16FFW: - return &inst{ 0x57, 0x1, 0x1d, 0x0, 1152, 0x24 } - case AVFNMACCVF: - return &inst{ 0x57, 0x5, 0x0, 0x0, -1216, 0x5a } - case AVFNMACCVV: - return &inst{ 0x57, 0x1, 0x0, 0x0, -1216, 0x5a } - case AVFNMADDVF: - return &inst{ 0x57, 0x5, 0x0, 0x0, -1472, 0x52 } - case AVFNMADDVV: - return &inst{ 0x57, 0x1, 0x0, 0x0, -1472, 0x52 } - case AVFNMSACVF: - return &inst{ 0x57, 0x5, 0x0, 0x0, -1088, 0x5e } - case AVFNMSACVV: - return &inst{ 0x57, 0x1, 0x0, 0x0, -1088, 0x5e } - case AVFNMSUBVF: - return &inst{ 0x57, 0x5, 0x0, 0x0, -1344, 0x56 } - case AVFNMSUBVV: - return &inst{ 0x57, 0x1, 0x0, 0x0, -1344, 0x56 } - case AVFRDIVVF: - return &inst{ 0x57, 0x5, 0x0, 0x0, -1984, 0x42 } - case AVFREC7V: - return &inst{ 0x57, 0x1, 0x5, 0x0, 1216, 0x26 } - case AVFREDMAXVS: - return &inst{ 0x57, 0x1, 0x0, 0x0, 448, 0xe } - case AVFREDMINVS: - return &inst{ 0x57, 0x1, 0x0, 0x0, 320, 0xa } - case AVFREDOSUMVS: - return &inst{ 0x57, 0x1, 0x0, 0x0, 192, 0x6 } - case AVFREDUSUMVS: - return &inst{ 0x57, 0x1, 0x0, 0x0, 64, 0x2 } - case AVFRSQRT7V: - return &inst{ 0x57, 0x1, 0x4, 0x0, 1216, 0x26 } - case AVFRSUBVF: - return &inst{ 0x57, 0x5, 0x0, 0x0, -1600, 0x4e } - case AVFSGNJVF: - return &inst{ 0x57, 0x5, 0x0, 0x0, 512, 0x10 } - case AVFSGNJVV: - return &inst{ 0x57, 0x1, 0x0, 0x0, 512, 0x10 } - case AVFSGNJNVF: - return &inst{ 0x57, 0x5, 0x0, 0x0, 576, 0x12 } - case AVFSGNJNVV: - return &inst{ 0x57, 0x1, 0x0, 0x0, 576, 0x12 } - case AVFSGNJXVF: - return &inst{ 0x57, 0x5, 0x0, 0x0, 640, 0x14 } - case AVFSGNJXVV: - return &inst{ 0x57, 0x1, 0x0, 0x0, 640, 0x14 } - case AVFSLIDE1DOWNVF: - return &inst{ 0x57, 0x5, 0x0, 0x0, 960, 0x1e } - case AVFSLIDE1UPVF: - return &inst{ 0x57, 0x5, 0x0, 0x0, 896, 0x1c } - case AVFSQRTV: - return &inst{ 0x57, 0x1, 0x0, 0x0, 1216, 0x26 } - case AVFSUBVF: - return &inst{ 0x57, 0x5, 0x0, 0x0, 128, 0x4 } - case AVFSUBVV: - return &inst{ 0x57, 0x1, 0x0, 0x0, 128, 0x4 } - case AVFWADDVF: - return &inst{ 0x57, 0x5, 0x0, 0x0, -1024, 0x60 } - case AVFWADDVV: - return &inst{ 0x57, 0x1, 0x0, 0x0, -1024, 0x60 } - case AVFWADDWF: - return &inst{ 0x57, 0x5, 0x0, 0x0, -768, 0x68 } - case AVFWADDWV: - return &inst{ 0x57, 0x1, 0x0, 0x0, -768, 0x68 } - case AVFWCVTFFV: - return &inst{ 0x57, 0x1, 0xc, 0x0, 1152, 0x24 } - case AVFWCVTFXV: - return &inst{ 0x57, 0x1, 0xb, 0x0, 1152, 0x24 } - case AVFWCVTFXUV: - return &inst{ 0x57, 0x1, 0xa, 0x0, 1152, 0x24 } - case AVFWCVTRTZXFV: - return &inst{ 0x57, 0x1, 0xf, 0x0, 1152, 0x24 } - case AVFWCVTRTZXUFV: - return &inst{ 0x57, 0x1, 0xe, 0x0, 1152, 0x24 } - case AVFWCVTXFV: - return &inst{ 0x57, 0x1, 0x9, 0x0, 1152, 0x24 } - case AVFWCVTXUFV: - return &inst{ 0x57, 0x1, 0x8, 0x0, 1152, 0x24 } - case AVFWCVTBF16FFV: - return &inst{ 0x57, 0x1, 0xd, 0x0, 1152, 0x24 } - case AVFWMACCVF: - return &inst{ 0x57, 0x5, 0x0, 0x0, -256, 0x78 } - case AVFWMACCVV: - return &inst{ 0x57, 0x1, 0x0, 0x0, -256, 0x78 } - case AVFWMACCBF16VF: - return &inst{ 0x57, 0x5, 0x0, 0x0, -320, 0x76 } - case AVFWMACCBF16VV: - return &inst{ 0x57, 0x1, 0x0, 0x0, -320, 0x76 } - case AVFWMSACVF: - return &inst{ 0x57, 0x5, 0x0, 0x0, -128, 0x7c } - case AVFWMSACVV: - return &inst{ 0x57, 0x1, 0x0, 0x0, -128, 0x7c } - case AVFWMULVF: - return &inst{ 0x57, 0x5, 0x0, 0x0, -512, 0x70 } - case AVFWMULVV: - return &inst{ 0x57, 0x1, 0x0, 0x0, -512, 0x70 } - case AVFWNMACCVF: - return &inst{ 0x57, 0x5, 0x0, 0x0, -192, 0x7a } - case AVFWNMACCVV: - return &inst{ 0x57, 0x1, 0x0, 0x0, -192, 0x7a } - case AVFWNMSACVF: - return &inst{ 0x57, 0x5, 0x0, 0x0, -64, 0x7e } - case AVFWNMSACVV: - return &inst{ 0x57, 0x1, 0x0, 0x0, -64, 0x7e } - case AVFWREDOSUMVS: - return &inst{ 0x57, 0x1, 0x0, 0x0, -832, 0x66 } - case AVFWREDUSUMVS: - return &inst{ 0x57, 0x1, 0x0, 0x0, -960, 0x62 } - case AVFWSUBVF: - return &inst{ 0x57, 0x5, 0x0, 0x0, -896, 0x64 } - case AVFWSUBVV: - return &inst{ 0x57, 0x1, 0x0, 0x0, -896, 0x64 } - case AVFWSUBWF: - return &inst{ 0x57, 0x5, 0x0, 0x0, -640, 0x6c } - case AVFWSUBWV: - return &inst{ 0x57, 0x1, 0x0, 0x0, -640, 0x6c } - case AVGHSHVV: - return &inst{ 0x77, 0x2, 0x0, 0x0, -1248, 0x59 } - case AVGMULVV: - return &inst{ 0x77, 0x2, 0x11, 0x0, -1504, 0x51 } - case AVIDV: - return &inst{ 0x57, 0x2, 0x11, 0x0, 1280, 0x28 } - case AVIOTAM: - return &inst{ 0x57, 0x2, 0x10, 0x0, 1280, 0x28 } - case AVL1RE16V: - return &inst{ 0x7, 0x5, 0x0, 0x8, 40, 0x1 } - case AVL1RE32V: - return &inst{ 0x7, 0x6, 0x0, 0x8, 40, 0x1 } - case AVL1RE64V: - return &inst{ 0x7, 0x7, 0x0, 0x8, 40, 0x1 } - case AVL1RE8V: - return &inst{ 0x7, 0x0, 0x0, 0x8, 40, 0x1 } - case AVL2RE16V: - return &inst{ 0x7, 0x5, 0x0, 0x8, 552, 0x11 } - case AVL2RE32V: - return &inst{ 0x7, 0x6, 0x0, 0x8, 552, 0x11 } - case AVL2RE64V: - return &inst{ 0x7, 0x7, 0x0, 0x8, 552, 0x11 } - case AVL2RE8V: - return &inst{ 0x7, 0x0, 0x0, 0x8, 552, 0x11 } - case AVL4RE16V: - return &inst{ 0x7, 0x5, 0x0, 0x8, 1576, 0x31 } - case AVL4RE32V: - return &inst{ 0x7, 0x6, 0x0, 0x8, 1576, 0x31 } - case AVL4RE64V: - return &inst{ 0x7, 0x7, 0x0, 0x8, 1576, 0x31 } - case AVL4RE8V: - return &inst{ 0x7, 0x0, 0x0, 0x8, 1576, 0x31 } - case AVL8RE16V: - return &inst{ 0x7, 0x5, 0x0, 0x8, -472, 0x71 } - case AVL8RE32V: - return &inst{ 0x7, 0x6, 0x0, 0x8, -472, 0x71 } - case AVL8RE64V: - return &inst{ 0x7, 0x7, 0x0, 0x8, -472, 0x71 } - case AVL8RE8V: - return &inst{ 0x7, 0x0, 0x0, 0x8, -472, 0x71 } - case AVLE16V: - return &inst{ 0x7, 0x5, 0x0, 0x0, 0, 0x0 } - case AVLE16FFV: - return &inst{ 0x7, 0x5, 0x0, 0x10, 16, 0x0 } - case AVLE32V: - return &inst{ 0x7, 0x6, 0x0, 0x0, 0, 0x0 } - case AVLE32FFV: - return &inst{ 0x7, 0x6, 0x0, 0x10, 16, 0x0 } - case AVLE64V: - return &inst{ 0x7, 0x7, 0x0, 0x0, 0, 0x0 } - case AVLE64FFV: - return &inst{ 0x7, 0x7, 0x0, 0x10, 16, 0x0 } - case AVLE8V: - return &inst{ 0x7, 0x0, 0x0, 0x0, 0, 0x0 } - case AVLE8FFV: - return &inst{ 0x7, 0x0, 0x0, 0x10, 16, 0x0 } - case AVLMV: - return &inst{ 0x7, 0x0, 0x0, 0xb, 43, 0x1 } - case AVLOXEI16V: - return &inst{ 0x7, 0x5, 0x0, 0x0, 192, 0x6 } - case AVLOXEI32V: - return &inst{ 0x7, 0x6, 0x0, 0x0, 192, 0x6 } - case AVLOXEI64V: - return &inst{ 0x7, 0x7, 0x0, 0x0, 192, 0x6 } - case AVLOXEI8V: - return &inst{ 0x7, 0x0, 0x0, 0x0, 192, 0x6 } - case AVLOXSEG2EI16V: - return &inst{ 0x7, 0x5, 0x0, 0x0, 704, 0x16 } - case AVLOXSEG2EI32V: - return &inst{ 0x7, 0x6, 0x0, 0x0, 704, 0x16 } - case AVLOXSEG2EI64V: - return &inst{ 0x7, 0x7, 0x0, 0x0, 704, 0x16 } - case AVLOXSEG2EI8V: - return &inst{ 0x7, 0x0, 0x0, 0x0, 704, 0x16 } - case AVLOXSEG3EI16V: - return &inst{ 0x7, 0x5, 0x0, 0x0, 1216, 0x26 } - case AVLOXSEG3EI32V: - return &inst{ 0x7, 0x6, 0x0, 0x0, 1216, 0x26 } - case AVLOXSEG3EI64V: - return &inst{ 0x7, 0x7, 0x0, 0x0, 1216, 0x26 } - case AVLOXSEG3EI8V: - return &inst{ 0x7, 0x0, 0x0, 0x0, 1216, 0x26 } - case AVLOXSEG4EI16V: - return &inst{ 0x7, 0x5, 0x0, 0x0, 1728, 0x36 } - case AVLOXSEG4EI32V: - return &inst{ 0x7, 0x6, 0x0, 0x0, 1728, 0x36 } - case AVLOXSEG4EI64V: - return &inst{ 0x7, 0x7, 0x0, 0x0, 1728, 0x36 } - case AVLOXSEG4EI8V: - return &inst{ 0x7, 0x0, 0x0, 0x0, 1728, 0x36 } - case AVLOXSEG5EI16V: - return &inst{ 0x7, 0x5, 0x0, 0x0, -1856, 0x46 } - case AVLOXSEG5EI32V: - return &inst{ 0x7, 0x6, 0x0, 0x0, -1856, 0x46 } - case AVLOXSEG5EI64V: - return &inst{ 0x7, 0x7, 0x0, 0x0, -1856, 0x46 } - case AVLOXSEG5EI8V: - return &inst{ 0x7, 0x0, 0x0, 0x0, -1856, 0x46 } - case AVLOXSEG6EI16V: - return &inst{ 0x7, 0x5, 0x0, 0x0, -1344, 0x56 } - case AVLOXSEG6EI32V: - return &inst{ 0x7, 0x6, 0x0, 0x0, -1344, 0x56 } - case AVLOXSEG6EI64V: - return &inst{ 0x7, 0x7, 0x0, 0x0, -1344, 0x56 } - case AVLOXSEG6EI8V: - return &inst{ 0x7, 0x0, 0x0, 0x0, -1344, 0x56 } - case AVLOXSEG7EI16V: - return &inst{ 0x7, 0x5, 0x0, 0x0, -832, 0x66 } - case AVLOXSEG7EI32V: - return &inst{ 0x7, 0x6, 0x0, 0x0, -832, 0x66 } - case AVLOXSEG7EI64V: - return &inst{ 0x7, 0x7, 0x0, 0x0, -832, 0x66 } - case AVLOXSEG7EI8V: - return &inst{ 0x7, 0x0, 0x0, 0x0, -832, 0x66 } - case AVLOXSEG8EI16V: - return &inst{ 0x7, 0x5, 0x0, 0x0, -320, 0x76 } - case AVLOXSEG8EI32V: - return &inst{ 0x7, 0x6, 0x0, 0x0, -320, 0x76 } - case AVLOXSEG8EI64V: - return &inst{ 0x7, 0x7, 0x0, 0x0, -320, 0x76 } - case AVLOXSEG8EI8V: - return &inst{ 0x7, 0x0, 0x0, 0x0, -320, 0x76 } - case AVLSE16V: - return &inst{ 0x7, 0x5, 0x0, 0x0, 128, 0x4 } - case AVLSE32V: - return &inst{ 0x7, 0x6, 0x0, 0x0, 128, 0x4 } - case AVLSE64V: - return &inst{ 0x7, 0x7, 0x0, 0x0, 128, 0x4 } - case AVLSE8V: - return &inst{ 0x7, 0x0, 0x0, 0x0, 128, 0x4 } - case AVLSEG2E16V: - return &inst{ 0x7, 0x5, 0x0, 0x0, 512, 0x10 } - case AVLSEG2E16FFV: - return &inst{ 0x7, 0x5, 0x0, 0x10, 528, 0x10 } - case AVLSEG2E32V: - return &inst{ 0x7, 0x6, 0x0, 0x0, 512, 0x10 } - case AVLSEG2E32FFV: - return &inst{ 0x7, 0x6, 0x0, 0x10, 528, 0x10 } - case AVLSEG2E64V: - return &inst{ 0x7, 0x7, 0x0, 0x0, 512, 0x10 } - case AVLSEG2E64FFV: - return &inst{ 0x7, 0x7, 0x0, 0x10, 528, 0x10 } - case AVLSEG2E8V: - return &inst{ 0x7, 0x0, 0x0, 0x0, 512, 0x10 } - case AVLSEG2E8FFV: - return &inst{ 0x7, 0x0, 0x0, 0x10, 528, 0x10 } - case AVLSEG3E16V: - return &inst{ 0x7, 0x5, 0x0, 0x0, 1024, 0x20 } - case AVLSEG3E16FFV: - return &inst{ 0x7, 0x5, 0x0, 0x10, 1040, 0x20 } - case AVLSEG3E32V: - return &inst{ 0x7, 0x6, 0x0, 0x0, 1024, 0x20 } - case AVLSEG3E32FFV: - return &inst{ 0x7, 0x6, 0x0, 0x10, 1040, 0x20 } - case AVLSEG3E64V: - return &inst{ 0x7, 0x7, 0x0, 0x0, 1024, 0x20 } - case AVLSEG3E64FFV: - return &inst{ 0x7, 0x7, 0x0, 0x10, 1040, 0x20 } - case AVLSEG3E8V: - return &inst{ 0x7, 0x0, 0x0, 0x0, 1024, 0x20 } - case AVLSEG3E8FFV: - return &inst{ 0x7, 0x0, 0x0, 0x10, 1040, 0x20 } - case AVLSEG4E16V: - return &inst{ 0x7, 0x5, 0x0, 0x0, 1536, 0x30 } - case AVLSEG4E16FFV: - return &inst{ 0x7, 0x5, 0x0, 0x10, 1552, 0x30 } - case AVLSEG4E32V: - return &inst{ 0x7, 0x6, 0x0, 0x0, 1536, 0x30 } - case AVLSEG4E32FFV: - return &inst{ 0x7, 0x6, 0x0, 0x10, 1552, 0x30 } - case AVLSEG4E64V: - return &inst{ 0x7, 0x7, 0x0, 0x0, 1536, 0x30 } - case AVLSEG4E64FFV: - return &inst{ 0x7, 0x7, 0x0, 0x10, 1552, 0x30 } - case AVLSEG4E8V: - return &inst{ 0x7, 0x0, 0x0, 0x0, 1536, 0x30 } - case AVLSEG4E8FFV: - return &inst{ 0x7, 0x0, 0x0, 0x10, 1552, 0x30 } - case AVLSEG5E16V: - return &inst{ 0x7, 0x5, 0x0, 0x0, -2048, 0x40 } - case AVLSEG5E16FFV: - return &inst{ 0x7, 0x5, 0x0, 0x10, -2032, 0x40 } - case AVLSEG5E32V: - return &inst{ 0x7, 0x6, 0x0, 0x0, -2048, 0x40 } - case AVLSEG5E32FFV: - return &inst{ 0x7, 0x6, 0x0, 0x10, -2032, 0x40 } - case AVLSEG5E64V: - return &inst{ 0x7, 0x7, 0x0, 0x0, -2048, 0x40 } - case AVLSEG5E64FFV: - return &inst{ 0x7, 0x7, 0x0, 0x10, -2032, 0x40 } - case AVLSEG5E8V: - return &inst{ 0x7, 0x0, 0x0, 0x0, -2048, 0x40 } - case AVLSEG5E8FFV: - return &inst{ 0x7, 0x0, 0x0, 0x10, -2032, 0x40 } - case AVLSEG6E16V: - return &inst{ 0x7, 0x5, 0x0, 0x0, -1536, 0x50 } - case AVLSEG6E16FFV: - return &inst{ 0x7, 0x5, 0x0, 0x10, -1520, 0x50 } - case AVLSEG6E32V: - return &inst{ 0x7, 0x6, 0x0, 0x0, -1536, 0x50 } - case AVLSEG6E32FFV: - return &inst{ 0x7, 0x6, 0x0, 0x10, -1520, 0x50 } - case AVLSEG6E64V: - return &inst{ 0x7, 0x7, 0x0, 0x0, -1536, 0x50 } - case AVLSEG6E64FFV: - return &inst{ 0x7, 0x7, 0x0, 0x10, -1520, 0x50 } - case AVLSEG6E8V: - return &inst{ 0x7, 0x0, 0x0, 0x0, -1536, 0x50 } - case AVLSEG6E8FFV: - return &inst{ 0x7, 0x0, 0x0, 0x10, -1520, 0x50 } - case AVLSEG7E16V: - return &inst{ 0x7, 0x5, 0x0, 0x0, -1024, 0x60 } - case AVLSEG7E16FFV: - return &inst{ 0x7, 0x5, 0x0, 0x10, -1008, 0x60 } - case AVLSEG7E32V: - return &inst{ 0x7, 0x6, 0x0, 0x0, -1024, 0x60 } - case AVLSEG7E32FFV: - return &inst{ 0x7, 0x6, 0x0, 0x10, -1008, 0x60 } - case AVLSEG7E64V: - return &inst{ 0x7, 0x7, 0x0, 0x0, -1024, 0x60 } - case AVLSEG7E64FFV: - return &inst{ 0x7, 0x7, 0x0, 0x10, -1008, 0x60 } - case AVLSEG7E8V: - return &inst{ 0x7, 0x0, 0x0, 0x0, -1024, 0x60 } - case AVLSEG7E8FFV: - return &inst{ 0x7, 0x0, 0x0, 0x10, -1008, 0x60 } - case AVLSEG8E16V: - return &inst{ 0x7, 0x5, 0x0, 0x0, -512, 0x70 } - case AVLSEG8E16FFV: - return &inst{ 0x7, 0x5, 0x0, 0x10, -496, 0x70 } - case AVLSEG8E32V: - return &inst{ 0x7, 0x6, 0x0, 0x0, -512, 0x70 } - case AVLSEG8E32FFV: - return &inst{ 0x7, 0x6, 0x0, 0x10, -496, 0x70 } - case AVLSEG8E64V: - return &inst{ 0x7, 0x7, 0x0, 0x0, -512, 0x70 } - case AVLSEG8E64FFV: - return &inst{ 0x7, 0x7, 0x0, 0x10, -496, 0x70 } - case AVLSEG8E8V: - return &inst{ 0x7, 0x0, 0x0, 0x0, -512, 0x70 } - case AVLSEG8E8FFV: - return &inst{ 0x7, 0x0, 0x0, 0x10, -496, 0x70 } - case AVLSSEG2E16V: - return &inst{ 0x7, 0x5, 0x0, 0x0, 640, 0x14 } - case AVLSSEG2E32V: - return &inst{ 0x7, 0x6, 0x0, 0x0, 640, 0x14 } - case AVLSSEG2E64V: - return &inst{ 0x7, 0x7, 0x0, 0x0, 640, 0x14 } - case AVLSSEG2E8V: - return &inst{ 0x7, 0x0, 0x0, 0x0, 640, 0x14 } - case AVLSSEG3E16V: - return &inst{ 0x7, 0x5, 0x0, 0x0, 1152, 0x24 } - case AVLSSEG3E32V: - return &inst{ 0x7, 0x6, 0x0, 0x0, 1152, 0x24 } - case AVLSSEG3E64V: - return &inst{ 0x7, 0x7, 0x0, 0x0, 1152, 0x24 } - case AVLSSEG3E8V: - return &inst{ 0x7, 0x0, 0x0, 0x0, 1152, 0x24 } - case AVLSSEG4E16V: - return &inst{ 0x7, 0x5, 0x0, 0x0, 1664, 0x34 } - case AVLSSEG4E32V: - return &inst{ 0x7, 0x6, 0x0, 0x0, 1664, 0x34 } - case AVLSSEG4E64V: - return &inst{ 0x7, 0x7, 0x0, 0x0, 1664, 0x34 } - case AVLSSEG4E8V: - return &inst{ 0x7, 0x0, 0x0, 0x0, 1664, 0x34 } - case AVLSSEG5E16V: - return &inst{ 0x7, 0x5, 0x0, 0x0, -1920, 0x44 } - case AVLSSEG5E32V: - return &inst{ 0x7, 0x6, 0x0, 0x0, -1920, 0x44 } - case AVLSSEG5E64V: - return &inst{ 0x7, 0x7, 0x0, 0x0, -1920, 0x44 } - case AVLSSEG5E8V: - return &inst{ 0x7, 0x0, 0x0, 0x0, -1920, 0x44 } - case AVLSSEG6E16V: - return &inst{ 0x7, 0x5, 0x0, 0x0, -1408, 0x54 } - case AVLSSEG6E32V: - return &inst{ 0x7, 0x6, 0x0, 0x0, -1408, 0x54 } - case AVLSSEG6E64V: - return &inst{ 0x7, 0x7, 0x0, 0x0, -1408, 0x54 } - case AVLSSEG6E8V: - return &inst{ 0x7, 0x0, 0x0, 0x0, -1408, 0x54 } - case AVLSSEG7E16V: - return &inst{ 0x7, 0x5, 0x0, 0x0, -896, 0x64 } - case AVLSSEG7E32V: - return &inst{ 0x7, 0x6, 0x0, 0x0, -896, 0x64 } - case AVLSSEG7E64V: - return &inst{ 0x7, 0x7, 0x0, 0x0, -896, 0x64 } - case AVLSSEG7E8V: - return &inst{ 0x7, 0x0, 0x0, 0x0, -896, 0x64 } - case AVLSSEG8E16V: - return &inst{ 0x7, 0x5, 0x0, 0x0, -384, 0x74 } - case AVLSSEG8E32V: - return &inst{ 0x7, 0x6, 0x0, 0x0, -384, 0x74 } - case AVLSSEG8E64V: - return &inst{ 0x7, 0x7, 0x0, 0x0, -384, 0x74 } - case AVLSSEG8E8V: - return &inst{ 0x7, 0x0, 0x0, 0x0, -384, 0x74 } - case AVLUXEI16V: - return &inst{ 0x7, 0x5, 0x0, 0x0, 64, 0x2 } - case AVLUXEI32V: - return &inst{ 0x7, 0x6, 0x0, 0x0, 64, 0x2 } - case AVLUXEI64V: - return &inst{ 0x7, 0x7, 0x0, 0x0, 64, 0x2 } - case AVLUXEI8V: - return &inst{ 0x7, 0x0, 0x0, 0x0, 64, 0x2 } - case AVLUXSEG2EI16V: - return &inst{ 0x7, 0x5, 0x0, 0x0, 576, 0x12 } - case AVLUXSEG2EI32V: - return &inst{ 0x7, 0x6, 0x0, 0x0, 576, 0x12 } - case AVLUXSEG2EI64V: - return &inst{ 0x7, 0x7, 0x0, 0x0, 576, 0x12 } - case AVLUXSEG2EI8V: - return &inst{ 0x7, 0x0, 0x0, 0x0, 576, 0x12 } - case AVLUXSEG3EI16V: - return &inst{ 0x7, 0x5, 0x0, 0x0, 1088, 0x22 } - case AVLUXSEG3EI32V: - return &inst{ 0x7, 0x6, 0x0, 0x0, 1088, 0x22 } - case AVLUXSEG3EI64V: - return &inst{ 0x7, 0x7, 0x0, 0x0, 1088, 0x22 } - case AVLUXSEG3EI8V: - return &inst{ 0x7, 0x0, 0x0, 0x0, 1088, 0x22 } - case AVLUXSEG4EI16V: - return &inst{ 0x7, 0x5, 0x0, 0x0, 1600, 0x32 } - case AVLUXSEG4EI32V: - return &inst{ 0x7, 0x6, 0x0, 0x0, 1600, 0x32 } - case AVLUXSEG4EI64V: - return &inst{ 0x7, 0x7, 0x0, 0x0, 1600, 0x32 } - case AVLUXSEG4EI8V: - return &inst{ 0x7, 0x0, 0x0, 0x0, 1600, 0x32 } - case AVLUXSEG5EI16V: - return &inst{ 0x7, 0x5, 0x0, 0x0, -1984, 0x42 } - case AVLUXSEG5EI32V: - return &inst{ 0x7, 0x6, 0x0, 0x0, -1984, 0x42 } - case AVLUXSEG5EI64V: - return &inst{ 0x7, 0x7, 0x0, 0x0, -1984, 0x42 } - case AVLUXSEG5EI8V: - return &inst{ 0x7, 0x0, 0x0, 0x0, -1984, 0x42 } - case AVLUXSEG6EI16V: - return &inst{ 0x7, 0x5, 0x0, 0x0, -1472, 0x52 } - case AVLUXSEG6EI32V: - return &inst{ 0x7, 0x6, 0x0, 0x0, -1472, 0x52 } - case AVLUXSEG6EI64V: - return &inst{ 0x7, 0x7, 0x0, 0x0, -1472, 0x52 } - case AVLUXSEG6EI8V: - return &inst{ 0x7, 0x0, 0x0, 0x0, -1472, 0x52 } - case AVLUXSEG7EI16V: - return &inst{ 0x7, 0x5, 0x0, 0x0, -960, 0x62 } - case AVLUXSEG7EI32V: - return &inst{ 0x7, 0x6, 0x0, 0x0, -960, 0x62 } - case AVLUXSEG7EI64V: - return &inst{ 0x7, 0x7, 0x0, 0x0, -960, 0x62 } - case AVLUXSEG7EI8V: - return &inst{ 0x7, 0x0, 0x0, 0x0, -960, 0x62 } - case AVLUXSEG8EI16V: - return &inst{ 0x7, 0x5, 0x0, 0x0, -448, 0x72 } - case AVLUXSEG8EI32V: - return &inst{ 0x7, 0x6, 0x0, 0x0, -448, 0x72 } - case AVLUXSEG8EI64V: - return &inst{ 0x7, 0x7, 0x0, 0x0, -448, 0x72 } - case AVLUXSEG8EI8V: - return &inst{ 0x7, 0x0, 0x0, 0x0, -448, 0x72 } - case AVMACCVV: - return &inst{ 0x57, 0x2, 0x0, 0x0, -1216, 0x5a } - case AVMACCVX: - return &inst{ 0x57, 0x6, 0x0, 0x0, -1216, 0x5a } - case AVMADCVI: - return &inst{ 0x57, 0x3, 0x0, 0x0, 1120, 0x23 } - case AVMADCVIM: - return &inst{ 0x57, 0x3, 0x0, 0x0, 1088, 0x22 } - case AVMADCVV: - return &inst{ 0x57, 0x0, 0x0, 0x0, 1120, 0x23 } - case AVMADCVVM: - return &inst{ 0x57, 0x0, 0x0, 0x0, 1088, 0x22 } - case AVMADCVX: - return &inst{ 0x57, 0x4, 0x0, 0x0, 1120, 0x23 } - case AVMADCVXM: - return &inst{ 0x57, 0x4, 0x0, 0x0, 1088, 0x22 } - case AVMADDVV: - return &inst{ 0x57, 0x2, 0x0, 0x0, -1472, 0x52 } - case AVMADDVX: - return &inst{ 0x57, 0x6, 0x0, 0x0, -1472, 0x52 } - case AVMANDMM: - return &inst{ 0x57, 0x2, 0x0, 0x0, 1632, 0x33 } - case AVMANDNMM: - return &inst{ 0x57, 0x2, 0x0, 0x0, 1568, 0x31 } - case AVMAXVV: - return &inst{ 0x57, 0x0, 0x0, 0x0, 448, 0xe } - case AVMAXVX: - return &inst{ 0x57, 0x4, 0x0, 0x0, 448, 0xe } - case AVMAXUVV: - return &inst{ 0x57, 0x0, 0x0, 0x0, 384, 0xc } - case AVMAXUVX: - return &inst{ 0x57, 0x4, 0x0, 0x0, 384, 0xc } - case AVMERGEVIM: - return &inst{ 0x57, 0x3, 0x0, 0x0, 1472, 0x2e } - case AVMERGEVVM: - return &inst{ 0x57, 0x0, 0x0, 0x0, 1472, 0x2e } - case AVMERGEVXM: - return &inst{ 0x57, 0x4, 0x0, 0x0, 1472, 0x2e } - case AVMFEQVF: - return &inst{ 0x57, 0x5, 0x0, 0x0, 1536, 0x30 } - case AVMFEQVV: - return &inst{ 0x57, 0x1, 0x0, 0x0, 1536, 0x30 } - case AVMFGEVF: - return &inst{ 0x57, 0x5, 0x0, 0x0, 1984, 0x3e } - case AVMFGTVF: - return &inst{ 0x57, 0x5, 0x0, 0x0, 1856, 0x3a } - case AVMFLEVF: - return &inst{ 0x57, 0x5, 0x0, 0x0, 1600, 0x32 } - case AVMFLEVV: - return &inst{ 0x57, 0x1, 0x0, 0x0, 1600, 0x32 } - case AVMFLTVF: - return &inst{ 0x57, 0x5, 0x0, 0x0, 1728, 0x36 } - case AVMFLTVV: - return &inst{ 0x57, 0x1, 0x0, 0x0, 1728, 0x36 } - case AVMFNEVF: - return &inst{ 0x57, 0x5, 0x0, 0x0, 1792, 0x38 } - case AVMFNEVV: - return &inst{ 0x57, 0x1, 0x0, 0x0, 1792, 0x38 } - case AVMINVV: - return &inst{ 0x57, 0x0, 0x0, 0x0, 320, 0xa } - case AVMINVX: - return &inst{ 0x57, 0x4, 0x0, 0x0, 320, 0xa } - case AVMINUVV: - return &inst{ 0x57, 0x0, 0x0, 0x0, 256, 0x8 } - case AVMINUVX: - return &inst{ 0x57, 0x4, 0x0, 0x0, 256, 0x8 } - case AVMNANDMM: - return &inst{ 0x57, 0x2, 0x0, 0x0, 1888, 0x3b } - case AVMNORMM: - return &inst{ 0x57, 0x2, 0x0, 0x0, 1952, 0x3d } - case AVMORMM: - return &inst{ 0x57, 0x2, 0x0, 0x0, 1696, 0x35 } - case AVMORNMM: - return &inst{ 0x57, 0x2, 0x0, 0x0, 1824, 0x39 } - case AVMSBCVV: - return &inst{ 0x57, 0x0, 0x0, 0x0, 1248, 0x27 } - case AVMSBCVVM: - return &inst{ 0x57, 0x0, 0x0, 0x0, 1216, 0x26 } - case AVMSBCVX: - return &inst{ 0x57, 0x4, 0x0, 0x0, 1248, 0x27 } - case AVMSBCVXM: - return &inst{ 0x57, 0x4, 0x0, 0x0, 1216, 0x26 } - case AVMSBFM: - return &inst{ 0x57, 0x2, 0x1, 0x0, 1280, 0x28 } - case AVMSEQVI: - return &inst{ 0x57, 0x3, 0x0, 0x0, 1536, 0x30 } - case AVMSEQVV: - return &inst{ 0x57, 0x0, 0x0, 0x0, 1536, 0x30 } - case AVMSEQVX: - return &inst{ 0x57, 0x4, 0x0, 0x0, 1536, 0x30 } - case AVMSGTVI: - return &inst{ 0x57, 0x3, 0x0, 0x0, 1984, 0x3e } - case AVMSGTVX: - return &inst{ 0x57, 0x4, 0x0, 0x0, 1984, 0x3e } - case AVMSGTUVI: - return &inst{ 0x57, 0x3, 0x0, 0x0, 1920, 0x3c } - case AVMSGTUVX: - return &inst{ 0x57, 0x4, 0x0, 0x0, 1920, 0x3c } - case AVMSIFM: - return &inst{ 0x57, 0x2, 0x3, 0x0, 1280, 0x28 } - case AVMSLEVI: - return &inst{ 0x57, 0x3, 0x0, 0x0, 1856, 0x3a } - case AVMSLEVV: - return &inst{ 0x57, 0x0, 0x0, 0x0, 1856, 0x3a } - case AVMSLEVX: - return &inst{ 0x57, 0x4, 0x0, 0x0, 1856, 0x3a } - case AVMSLEUVI: - return &inst{ 0x57, 0x3, 0x0, 0x0, 1792, 0x38 } - case AVMSLEUVV: - return &inst{ 0x57, 0x0, 0x0, 0x0, 1792, 0x38 } - case AVMSLEUVX: - return &inst{ 0x57, 0x4, 0x0, 0x0, 1792, 0x38 } - case AVMSLTVV: - return &inst{ 0x57, 0x0, 0x0, 0x0, 1728, 0x36 } - case AVMSLTVX: - return &inst{ 0x57, 0x4, 0x0, 0x0, 1728, 0x36 } - case AVMSLTUVV: - return &inst{ 0x57, 0x0, 0x0, 0x0, 1664, 0x34 } - case AVMSLTUVX: - return &inst{ 0x57, 0x4, 0x0, 0x0, 1664, 0x34 } - case AVMSNEVI: - return &inst{ 0x57, 0x3, 0x0, 0x0, 1600, 0x32 } - case AVMSNEVV: - return &inst{ 0x57, 0x0, 0x0, 0x0, 1600, 0x32 } - case AVMSNEVX: - return &inst{ 0x57, 0x4, 0x0, 0x0, 1600, 0x32 } - case AVMSOFM: - return &inst{ 0x57, 0x2, 0x2, 0x0, 1280, 0x28 } - case AVMULVV: - return &inst{ 0x57, 0x2, 0x0, 0x0, -1728, 0x4a } - case AVMULVX: - return &inst{ 0x57, 0x6, 0x0, 0x0, -1728, 0x4a } - case AVMULHVV: - return &inst{ 0x57, 0x2, 0x0, 0x0, -1600, 0x4e } - case AVMULHVX: - return &inst{ 0x57, 0x6, 0x0, 0x0, -1600, 0x4e } - case AVMULHSUVV: - return &inst{ 0x57, 0x2, 0x0, 0x0, -1664, 0x4c } - case AVMULHSUVX: - return &inst{ 0x57, 0x6, 0x0, 0x0, -1664, 0x4c } - case AVMULHUVV: - return &inst{ 0x57, 0x2, 0x0, 0x0, -1792, 0x48 } - case AVMULHUVX: - return &inst{ 0x57, 0x6, 0x0, 0x0, -1792, 0x48 } - case AVMV1RV: - return &inst{ 0x57, 0x3, 0x0, 0x0, -1568, 0x4f } - case AVMV2RV: - return &inst{ 0x57, 0x3, 0x1, 0x0, -1568, 0x4f } - case AVMV4RV: - return &inst{ 0x57, 0x3, 0x3, 0x0, -1568, 0x4f } - case AVMV8RV: - return &inst{ 0x57, 0x3, 0x7, 0x0, -1568, 0x4f } - case AVMVSX: - return &inst{ 0x57, 0x6, 0x0, 0x0, 1056, 0x21 } - case AVMVVI: - return &inst{ 0x57, 0x3, 0x0, 0x0, 1504, 0x2f } - case AVMVVV: - return &inst{ 0x57, 0x0, 0x0, 0x0, 1504, 0x2f } - case AVMVVX: - return &inst{ 0x57, 0x4, 0x0, 0x0, 1504, 0x2f } - case AVMVXS: - return &inst{ 0x57, 0x2, 0x0, 0x0, 1056, 0x21 } - case AVMXNORMM: - return &inst{ 0x57, 0x2, 0x0, 0x0, 2016, 0x3f } - case AVMXORMM: - return &inst{ 0x57, 0x2, 0x0, 0x0, 1760, 0x37 } - case AVNCLIPWI: - return &inst{ 0x57, 0x3, 0x0, 0x0, -1088, 0x5e } - case AVNCLIPWV: - return &inst{ 0x57, 0x0, 0x0, 0x0, -1088, 0x5e } - case AVNCLIPWX: - return &inst{ 0x57, 0x4, 0x0, 0x0, -1088, 0x5e } - case AVNCLIPUWI: - return &inst{ 0x57, 0x3, 0x0, 0x0, -1152, 0x5c } - case AVNCLIPUWV: - return &inst{ 0x57, 0x0, 0x0, 0x0, -1152, 0x5c } - case AVNCLIPUWX: - return &inst{ 0x57, 0x4, 0x0, 0x0, -1152, 0x5c } - case AVNMSACVV: - return &inst{ 0x57, 0x2, 0x0, 0x0, -1088, 0x5e } - case AVNMSACVX: - return &inst{ 0x57, 0x6, 0x0, 0x0, -1088, 0x5e } - case AVNMSUBVV: - return &inst{ 0x57, 0x2, 0x0, 0x0, -1344, 0x56 } - case AVNMSUBVX: - return &inst{ 0x57, 0x6, 0x0, 0x0, -1344, 0x56 } - case AVNSRAWI: - return &inst{ 0x57, 0x3, 0x0, 0x0, -1216, 0x5a } - case AVNSRAWV: - return &inst{ 0x57, 0x0, 0x0, 0x0, -1216, 0x5a } - case AVNSRAWX: - return &inst{ 0x57, 0x4, 0x0, 0x0, -1216, 0x5a } - case AVNSRLWI: - return &inst{ 0x57, 0x3, 0x0, 0x0, -1280, 0x58 } - case AVNSRLWV: - return &inst{ 0x57, 0x0, 0x0, 0x0, -1280, 0x58 } - case AVNSRLWX: - return &inst{ 0x57, 0x4, 0x0, 0x0, -1280, 0x58 } - case AVORVI: - return &inst{ 0x57, 0x3, 0x0, 0x0, 640, 0x14 } - case AVORVV: - return &inst{ 0x57, 0x0, 0x0, 0x0, 640, 0x14 } - case AVORVX: - return &inst{ 0x57, 0x4, 0x0, 0x0, 640, 0x14 } - case AVREDANDVS: - return &inst{ 0x57, 0x2, 0x0, 0x0, 64, 0x2 } - case AVREDMAXVS: - return &inst{ 0x57, 0x2, 0x0, 0x0, 448, 0xe } - case AVREDMAXUVS: - return &inst{ 0x57, 0x2, 0x0, 0x0, 384, 0xc } - case AVREDMINVS: - return &inst{ 0x57, 0x2, 0x0, 0x0, 320, 0xa } - case AVREDMINUVS: - return &inst{ 0x57, 0x2, 0x0, 0x0, 256, 0x8 } - case AVREDORVS: - return &inst{ 0x57, 0x2, 0x0, 0x0, 128, 0x4 } - case AVREDSUMVS: - return &inst{ 0x57, 0x2, 0x0, 0x0, 0, 0x0 } - case AVREDXORVS: - return &inst{ 0x57, 0x2, 0x0, 0x0, 192, 0x6 } - case AVREMVV: - return &inst{ 0x57, 0x2, 0x0, 0x0, -1856, 0x46 } - case AVREMVX: - return &inst{ 0x57, 0x6, 0x0, 0x0, -1856, 0x46 } - case AVREMUVV: - return &inst{ 0x57, 0x2, 0x0, 0x0, -1920, 0x44 } - case AVREMUVX: - return &inst{ 0x57, 0x6, 0x0, 0x0, -1920, 0x44 } - case AVREV8V: - return &inst{ 0x57, 0x2, 0x9, 0x0, 1152, 0x24 } - case AVRGATHERVI: - return &inst{ 0x57, 0x3, 0x0, 0x0, 768, 0x18 } - case AVRGATHERVV: - return &inst{ 0x57, 0x0, 0x0, 0x0, 768, 0x18 } - case AVRGATHERVX: - return &inst{ 0x57, 0x4, 0x0, 0x0, 768, 0x18 } - case AVRGATHEREI16VV: - return &inst{ 0x57, 0x0, 0x0, 0x0, 896, 0x1c } - case AVROLVV: - return &inst{ 0x57, 0x0, 0x0, 0x0, 1344, 0x2a } - case AVROLVX: - return &inst{ 0x57, 0x4, 0x0, 0x0, 1344, 0x2a } - case AVRORVI: - return &inst{ 0x57, 0x3, 0x0, 0x0, 1280, 0x28 } - case AVRORVV: - return &inst{ 0x57, 0x0, 0x0, 0x0, 1280, 0x28 } - case AVRORVX: - return &inst{ 0x57, 0x4, 0x0, 0x0, 1280, 0x28 } - case AVRSUBVI: - return &inst{ 0x57, 0x3, 0x0, 0x0, 192, 0x6 } - case AVRSUBVX: - return &inst{ 0x57, 0x4, 0x0, 0x0, 192, 0x6 } - case AVS1RV: - return &inst{ 0x27, 0x0, 0x0, 0x8, 40, 0x1 } - case AVS2RV: - return &inst{ 0x27, 0x0, 0x0, 0x8, 552, 0x11 } - case AVS4RV: - return &inst{ 0x27, 0x0, 0x0, 0x8, 1576, 0x31 } - case AVS8RV: - return &inst{ 0x27, 0x0, 0x0, 0x8, -472, 0x71 } - case AVSADDVI: - return &inst{ 0x57, 0x3, 0x0, 0x0, -1984, 0x42 } - case AVSADDVV: - return &inst{ 0x57, 0x0, 0x0, 0x0, -1984, 0x42 } - case AVSADDVX: - return &inst{ 0x57, 0x4, 0x0, 0x0, -1984, 0x42 } - case AVSADDUVI: - return &inst{ 0x57, 0x3, 0x0, 0x0, -2048, 0x40 } - case AVSADDUVV: - return &inst{ 0x57, 0x0, 0x0, 0x0, -2048, 0x40 } - case AVSADDUVX: - return &inst{ 0x57, 0x4, 0x0, 0x0, -2048, 0x40 } - case AVSBCVVM: - return &inst{ 0x57, 0x0, 0x0, 0x0, 1152, 0x24 } - case AVSBCVXM: - return &inst{ 0x57, 0x4, 0x0, 0x0, 1152, 0x24 } - case AVSE16V: - return &inst{ 0x27, 0x5, 0x0, 0x0, 0, 0x0 } - case AVSE32V: - return &inst{ 0x27, 0x6, 0x0, 0x0, 0, 0x0 } - case AVSE64V: - return &inst{ 0x27, 0x7, 0x0, 0x0, 0, 0x0 } - case AVSE8V: - return &inst{ 0x27, 0x0, 0x0, 0x0, 0, 0x0 } - case AVSETIVLI: - return &inst{ 0x57, 0x7, 0x0, 0x0, -1024, 0x60 } - case AVSETVL: - return &inst{ 0x57, 0x7, 0x0, 0x0, -2048, 0x40 } - case AVSETVLI: - return &inst{ 0x57, 0x7, 0x0, 0x0, 0, 0x0 } - case AVSEXTVF2: - return &inst{ 0x57, 0x2, 0x7, 0x0, 1152, 0x24 } - case AVSEXTVF4: - return &inst{ 0x57, 0x2, 0x5, 0x0, 1152, 0x24 } - case AVSEXTVF8: - return &inst{ 0x57, 0x2, 0x3, 0x0, 1152, 0x24 } - case AVSHA2CHVV: - return &inst{ 0x77, 0x2, 0x0, 0x0, -1120, 0x5d } - case AVSHA2CLVV: - return &inst{ 0x77, 0x2, 0x0, 0x0, -1056, 0x5f } - case AVSHA2MSVV: - return &inst{ 0x77, 0x2, 0x0, 0x0, -1184, 0x5b } - case AVSLIDE1DOWNVX: - return &inst{ 0x57, 0x6, 0x0, 0x0, 960, 0x1e } - case AVSLIDE1UPVX: - return &inst{ 0x57, 0x6, 0x0, 0x0, 896, 0x1c } - case AVSLIDEDOWNVI: - return &inst{ 0x57, 0x3, 0x0, 0x0, 960, 0x1e } - case AVSLIDEDOWNVX: - return &inst{ 0x57, 0x4, 0x0, 0x0, 960, 0x1e } - case AVSLIDEUPVI: - return &inst{ 0x57, 0x3, 0x0, 0x0, 896, 0x1c } - case AVSLIDEUPVX: - return &inst{ 0x57, 0x4, 0x0, 0x0, 896, 0x1c } - case AVSLLVI: - return &inst{ 0x57, 0x3, 0x0, 0x0, -1728, 0x4a } - case AVSLLVV: - return &inst{ 0x57, 0x0, 0x0, 0x0, -1728, 0x4a } - case AVSLLVX: - return &inst{ 0x57, 0x4, 0x0, 0x0, -1728, 0x4a } - case AVSM3CVI: - return &inst{ 0x77, 0x2, 0x0, 0x0, -1312, 0x57 } - case AVSM3MEVV: - return &inst{ 0x77, 0x2, 0x0, 0x0, -2016, 0x41 } - case AVSM4KVI: - return &inst{ 0x77, 0x2, 0x0, 0x0, -1952, 0x43 } - case AVSM4RVS: - return &inst{ 0x77, 0x2, 0x10, 0x0, -1440, 0x53 } - case AVSM4RVV: - return &inst{ 0x77, 0x2, 0x10, 0x0, -1504, 0x51 } - case AVSMV: - return &inst{ 0x27, 0x0, 0x0, 0xb, 43, 0x1 } - case AVSMULVV: - return &inst{ 0x57, 0x0, 0x0, 0x0, -1600, 0x4e } - case AVSMULVX: - return &inst{ 0x57, 0x4, 0x0, 0x0, -1600, 0x4e } - case AVSOXEI16V: - return &inst{ 0x27, 0x5, 0x0, 0x0, 192, 0x6 } - case AVSOXEI32V: - return &inst{ 0x27, 0x6, 0x0, 0x0, 192, 0x6 } - case AVSOXEI64V: - return &inst{ 0x27, 0x7, 0x0, 0x0, 192, 0x6 } - case AVSOXEI8V: - return &inst{ 0x27, 0x0, 0x0, 0x0, 192, 0x6 } - case AVSOXSEG2EI16V: - return &inst{ 0x27, 0x5, 0x0, 0x0, 704, 0x16 } - case AVSOXSEG2EI32V: - return &inst{ 0x27, 0x6, 0x0, 0x0, 704, 0x16 } - case AVSOXSEG2EI64V: - return &inst{ 0x27, 0x7, 0x0, 0x0, 704, 0x16 } - case AVSOXSEG2EI8V: - return &inst{ 0x27, 0x0, 0x0, 0x0, 704, 0x16 } - case AVSOXSEG3EI16V: - return &inst{ 0x27, 0x5, 0x0, 0x0, 1216, 0x26 } - case AVSOXSEG3EI32V: - return &inst{ 0x27, 0x6, 0x0, 0x0, 1216, 0x26 } - case AVSOXSEG3EI64V: - return &inst{ 0x27, 0x7, 0x0, 0x0, 1216, 0x26 } - case AVSOXSEG3EI8V: - return &inst{ 0x27, 0x0, 0x0, 0x0, 1216, 0x26 } - case AVSOXSEG4EI16V: - return &inst{ 0x27, 0x5, 0x0, 0x0, 1728, 0x36 } - case AVSOXSEG4EI32V: - return &inst{ 0x27, 0x6, 0x0, 0x0, 1728, 0x36 } - case AVSOXSEG4EI64V: - return &inst{ 0x27, 0x7, 0x0, 0x0, 1728, 0x36 } - case AVSOXSEG4EI8V: - return &inst{ 0x27, 0x0, 0x0, 0x0, 1728, 0x36 } - case AVSOXSEG5EI16V: - return &inst{ 0x27, 0x5, 0x0, 0x0, -1856, 0x46 } - case AVSOXSEG5EI32V: - return &inst{ 0x27, 0x6, 0x0, 0x0, -1856, 0x46 } - case AVSOXSEG5EI64V: - return &inst{ 0x27, 0x7, 0x0, 0x0, -1856, 0x46 } - case AVSOXSEG5EI8V: - return &inst{ 0x27, 0x0, 0x0, 0x0, -1856, 0x46 } - case AVSOXSEG6EI16V: - return &inst{ 0x27, 0x5, 0x0, 0x0, -1344, 0x56 } - case AVSOXSEG6EI32V: - return &inst{ 0x27, 0x6, 0x0, 0x0, -1344, 0x56 } - case AVSOXSEG6EI64V: - return &inst{ 0x27, 0x7, 0x0, 0x0, -1344, 0x56 } - case AVSOXSEG6EI8V: - return &inst{ 0x27, 0x0, 0x0, 0x0, -1344, 0x56 } - case AVSOXSEG7EI16V: - return &inst{ 0x27, 0x5, 0x0, 0x0, -832, 0x66 } - case AVSOXSEG7EI32V: - return &inst{ 0x27, 0x6, 0x0, 0x0, -832, 0x66 } - case AVSOXSEG7EI64V: - return &inst{ 0x27, 0x7, 0x0, 0x0, -832, 0x66 } - case AVSOXSEG7EI8V: - return &inst{ 0x27, 0x0, 0x0, 0x0, -832, 0x66 } - case AVSOXSEG8EI16V: - return &inst{ 0x27, 0x5, 0x0, 0x0, -320, 0x76 } - case AVSOXSEG8EI32V: - return &inst{ 0x27, 0x6, 0x0, 0x0, -320, 0x76 } - case AVSOXSEG8EI64V: - return &inst{ 0x27, 0x7, 0x0, 0x0, -320, 0x76 } - case AVSOXSEG8EI8V: - return &inst{ 0x27, 0x0, 0x0, 0x0, -320, 0x76 } - case AVSRAVI: - return &inst{ 0x57, 0x3, 0x0, 0x0, -1472, 0x52 } - case AVSRAVV: - return &inst{ 0x57, 0x0, 0x0, 0x0, -1472, 0x52 } - case AVSRAVX: - return &inst{ 0x57, 0x4, 0x0, 0x0, -1472, 0x52 } - case AVSRLVI: - return &inst{ 0x57, 0x3, 0x0, 0x0, -1536, 0x50 } - case AVSRLVV: - return &inst{ 0x57, 0x0, 0x0, 0x0, -1536, 0x50 } - case AVSRLVX: - return &inst{ 0x57, 0x4, 0x0, 0x0, -1536, 0x50 } - case AVSSE16V: - return &inst{ 0x27, 0x5, 0x0, 0x0, 128, 0x4 } - case AVSSE32V: - return &inst{ 0x27, 0x6, 0x0, 0x0, 128, 0x4 } - case AVSSE64V: - return &inst{ 0x27, 0x7, 0x0, 0x0, 128, 0x4 } - case AVSSE8V: - return &inst{ 0x27, 0x0, 0x0, 0x0, 128, 0x4 } - case AVSSEG2E16V: - return &inst{ 0x27, 0x5, 0x0, 0x0, 512, 0x10 } - case AVSSEG2E32V: - return &inst{ 0x27, 0x6, 0x0, 0x0, 512, 0x10 } - case AVSSEG2E64V: - return &inst{ 0x27, 0x7, 0x0, 0x0, 512, 0x10 } - case AVSSEG2E8V: - return &inst{ 0x27, 0x0, 0x0, 0x0, 512, 0x10 } - case AVSSEG3E16V: - return &inst{ 0x27, 0x5, 0x0, 0x0, 1024, 0x20 } - case AVSSEG3E32V: - return &inst{ 0x27, 0x6, 0x0, 0x0, 1024, 0x20 } - case AVSSEG3E64V: - return &inst{ 0x27, 0x7, 0x0, 0x0, 1024, 0x20 } - case AVSSEG3E8V: - return &inst{ 0x27, 0x0, 0x0, 0x0, 1024, 0x20 } - case AVSSEG4E16V: - return &inst{ 0x27, 0x5, 0x0, 0x0, 1536, 0x30 } - case AVSSEG4E32V: - return &inst{ 0x27, 0x6, 0x0, 0x0, 1536, 0x30 } - case AVSSEG4E64V: - return &inst{ 0x27, 0x7, 0x0, 0x0, 1536, 0x30 } - case AVSSEG4E8V: - return &inst{ 0x27, 0x0, 0x0, 0x0, 1536, 0x30 } - case AVSSEG5E16V: - return &inst{ 0x27, 0x5, 0x0, 0x0, -2048, 0x40 } - case AVSSEG5E32V: - return &inst{ 0x27, 0x6, 0x0, 0x0, -2048, 0x40 } - case AVSSEG5E64V: - return &inst{ 0x27, 0x7, 0x0, 0x0, -2048, 0x40 } - case AVSSEG5E8V: - return &inst{ 0x27, 0x0, 0x0, 0x0, -2048, 0x40 } - case AVSSEG6E16V: - return &inst{ 0x27, 0x5, 0x0, 0x0, -1536, 0x50 } - case AVSSEG6E32V: - return &inst{ 0x27, 0x6, 0x0, 0x0, -1536, 0x50 } - case AVSSEG6E64V: - return &inst{ 0x27, 0x7, 0x0, 0x0, -1536, 0x50 } - case AVSSEG6E8V: - return &inst{ 0x27, 0x0, 0x0, 0x0, -1536, 0x50 } - case AVSSEG7E16V: - return &inst{ 0x27, 0x5, 0x0, 0x0, -1024, 0x60 } - case AVSSEG7E32V: - return &inst{ 0x27, 0x6, 0x0, 0x0, -1024, 0x60 } - case AVSSEG7E64V: - return &inst{ 0x27, 0x7, 0x0, 0x0, -1024, 0x60 } - case AVSSEG7E8V: - return &inst{ 0x27, 0x0, 0x0, 0x0, -1024, 0x60 } - case AVSSEG8E16V: - return &inst{ 0x27, 0x5, 0x0, 0x0, -512, 0x70 } - case AVSSEG8E32V: - return &inst{ 0x27, 0x6, 0x0, 0x0, -512, 0x70 } - case AVSSEG8E64V: - return &inst{ 0x27, 0x7, 0x0, 0x0, -512, 0x70 } - case AVSSEG8E8V: - return &inst{ 0x27, 0x0, 0x0, 0x0, -512, 0x70 } - case AVSSRAVI: - return &inst{ 0x57, 0x3, 0x0, 0x0, -1344, 0x56 } - case AVSSRAVV: - return &inst{ 0x57, 0x0, 0x0, 0x0, -1344, 0x56 } - case AVSSRAVX: - return &inst{ 0x57, 0x4, 0x0, 0x0, -1344, 0x56 } - case AVSSRLVI: - return &inst{ 0x57, 0x3, 0x0, 0x0, -1408, 0x54 } - case AVSSRLVV: - return &inst{ 0x57, 0x0, 0x0, 0x0, -1408, 0x54 } - case AVSSRLVX: - return &inst{ 0x57, 0x4, 0x0, 0x0, -1408, 0x54 } - case AVSSSEG2E16V: - return &inst{ 0x27, 0x5, 0x0, 0x0, 640, 0x14 } - case AVSSSEG2E32V: - return &inst{ 0x27, 0x6, 0x0, 0x0, 640, 0x14 } - case AVSSSEG2E64V: - return &inst{ 0x27, 0x7, 0x0, 0x0, 640, 0x14 } - case AVSSSEG2E8V: - return &inst{ 0x27, 0x0, 0x0, 0x0, 640, 0x14 } - case AVSSSEG3E16V: - return &inst{ 0x27, 0x5, 0x0, 0x0, 1152, 0x24 } - case AVSSSEG3E32V: - return &inst{ 0x27, 0x6, 0x0, 0x0, 1152, 0x24 } - case AVSSSEG3E64V: - return &inst{ 0x27, 0x7, 0x0, 0x0, 1152, 0x24 } - case AVSSSEG3E8V: - return &inst{ 0x27, 0x0, 0x0, 0x0, 1152, 0x24 } - case AVSSSEG4E16V: - return &inst{ 0x27, 0x5, 0x0, 0x0, 1664, 0x34 } - case AVSSSEG4E32V: - return &inst{ 0x27, 0x6, 0x0, 0x0, 1664, 0x34 } - case AVSSSEG4E64V: - return &inst{ 0x27, 0x7, 0x0, 0x0, 1664, 0x34 } - case AVSSSEG4E8V: - return &inst{ 0x27, 0x0, 0x0, 0x0, 1664, 0x34 } - case AVSSSEG5E16V: - return &inst{ 0x27, 0x5, 0x0, 0x0, -1920, 0x44 } - case AVSSSEG5E32V: - return &inst{ 0x27, 0x6, 0x0, 0x0, -1920, 0x44 } - case AVSSSEG5E64V: - return &inst{ 0x27, 0x7, 0x0, 0x0, -1920, 0x44 } - case AVSSSEG5E8V: - return &inst{ 0x27, 0x0, 0x0, 0x0, -1920, 0x44 } - case AVSSSEG6E16V: - return &inst{ 0x27, 0x5, 0x0, 0x0, -1408, 0x54 } - case AVSSSEG6E32V: - return &inst{ 0x27, 0x6, 0x0, 0x0, -1408, 0x54 } - case AVSSSEG6E64V: - return &inst{ 0x27, 0x7, 0x0, 0x0, -1408, 0x54 } - case AVSSSEG6E8V: - return &inst{ 0x27, 0x0, 0x0, 0x0, -1408, 0x54 } - case AVSSSEG7E16V: - return &inst{ 0x27, 0x5, 0x0, 0x0, -896, 0x64 } - case AVSSSEG7E32V: - return &inst{ 0x27, 0x6, 0x0, 0x0, -896, 0x64 } - case AVSSSEG7E64V: - return &inst{ 0x27, 0x7, 0x0, 0x0, -896, 0x64 } - case AVSSSEG7E8V: - return &inst{ 0x27, 0x0, 0x0, 0x0, -896, 0x64 } - case AVSSSEG8E16V: - return &inst{ 0x27, 0x5, 0x0, 0x0, -384, 0x74 } - case AVSSSEG8E32V: - return &inst{ 0x27, 0x6, 0x0, 0x0, -384, 0x74 } - case AVSSSEG8E64V: - return &inst{ 0x27, 0x7, 0x0, 0x0, -384, 0x74 } - case AVSSSEG8E8V: - return &inst{ 0x27, 0x0, 0x0, 0x0, -384, 0x74 } - case AVSSUBVV: - return &inst{ 0x57, 0x0, 0x0, 0x0, -1856, 0x46 } - case AVSSUBVX: - return &inst{ 0x57, 0x4, 0x0, 0x0, -1856, 0x46 } - case AVSSUBUVV: - return &inst{ 0x57, 0x0, 0x0, 0x0, -1920, 0x44 } - case AVSSUBUVX: - return &inst{ 0x57, 0x4, 0x0, 0x0, -1920, 0x44 } - case AVSUBVV: - return &inst{ 0x57, 0x0, 0x0, 0x0, 128, 0x4 } - case AVSUBVX: - return &inst{ 0x57, 0x4, 0x0, 0x0, 128, 0x4 } - case AVSUXEI16V: - return &inst{ 0x27, 0x5, 0x0, 0x0, 64, 0x2 } - case AVSUXEI32V: - return &inst{ 0x27, 0x6, 0x0, 0x0, 64, 0x2 } - case AVSUXEI64V: - return &inst{ 0x27, 0x7, 0x0, 0x0, 64, 0x2 } - case AVSUXEI8V: - return &inst{ 0x27, 0x0, 0x0, 0x0, 64, 0x2 } - case AVSUXSEG2EI16V: - return &inst{ 0x27, 0x5, 0x0, 0x0, 576, 0x12 } - case AVSUXSEG2EI32V: - return &inst{ 0x27, 0x6, 0x0, 0x0, 576, 0x12 } - case AVSUXSEG2EI64V: - return &inst{ 0x27, 0x7, 0x0, 0x0, 576, 0x12 } - case AVSUXSEG2EI8V: - return &inst{ 0x27, 0x0, 0x0, 0x0, 576, 0x12 } - case AVSUXSEG3EI16V: - return &inst{ 0x27, 0x5, 0x0, 0x0, 1088, 0x22 } - case AVSUXSEG3EI32V: - return &inst{ 0x27, 0x6, 0x0, 0x0, 1088, 0x22 } - case AVSUXSEG3EI64V: - return &inst{ 0x27, 0x7, 0x0, 0x0, 1088, 0x22 } - case AVSUXSEG3EI8V: - return &inst{ 0x27, 0x0, 0x0, 0x0, 1088, 0x22 } - case AVSUXSEG4EI16V: - return &inst{ 0x27, 0x5, 0x0, 0x0, 1600, 0x32 } - case AVSUXSEG4EI32V: - return &inst{ 0x27, 0x6, 0x0, 0x0, 1600, 0x32 } - case AVSUXSEG4EI64V: - return &inst{ 0x27, 0x7, 0x0, 0x0, 1600, 0x32 } - case AVSUXSEG4EI8V: - return &inst{ 0x27, 0x0, 0x0, 0x0, 1600, 0x32 } - case AVSUXSEG5EI16V: - return &inst{ 0x27, 0x5, 0x0, 0x0, -1984, 0x42 } - case AVSUXSEG5EI32V: - return &inst{ 0x27, 0x6, 0x0, 0x0, -1984, 0x42 } - case AVSUXSEG5EI64V: - return &inst{ 0x27, 0x7, 0x0, 0x0, -1984, 0x42 } - case AVSUXSEG5EI8V: - return &inst{ 0x27, 0x0, 0x0, 0x0, -1984, 0x42 } - case AVSUXSEG6EI16V: - return &inst{ 0x27, 0x5, 0x0, 0x0, -1472, 0x52 } - case AVSUXSEG6EI32V: - return &inst{ 0x27, 0x6, 0x0, 0x0, -1472, 0x52 } - case AVSUXSEG6EI64V: - return &inst{ 0x27, 0x7, 0x0, 0x0, -1472, 0x52 } - case AVSUXSEG6EI8V: - return &inst{ 0x27, 0x0, 0x0, 0x0, -1472, 0x52 } - case AVSUXSEG7EI16V: - return &inst{ 0x27, 0x5, 0x0, 0x0, -960, 0x62 } - case AVSUXSEG7EI32V: - return &inst{ 0x27, 0x6, 0x0, 0x0, -960, 0x62 } - case AVSUXSEG7EI64V: - return &inst{ 0x27, 0x7, 0x0, 0x0, -960, 0x62 } - case AVSUXSEG7EI8V: - return &inst{ 0x27, 0x0, 0x0, 0x0, -960, 0x62 } - case AVSUXSEG8EI16V: - return &inst{ 0x27, 0x5, 0x0, 0x0, -448, 0x72 } - case AVSUXSEG8EI32V: - return &inst{ 0x27, 0x6, 0x0, 0x0, -448, 0x72 } - case AVSUXSEG8EI64V: - return &inst{ 0x27, 0x7, 0x0, 0x0, -448, 0x72 } - case AVSUXSEG8EI8V: - return &inst{ 0x27, 0x0, 0x0, 0x0, -448, 0x72 } - case AVWADDVV: - return &inst{ 0x57, 0x2, 0x0, 0x0, -960, 0x62 } - case AVWADDVX: - return &inst{ 0x57, 0x6, 0x0, 0x0, -960, 0x62 } - case AVWADDWV: - return &inst{ 0x57, 0x2, 0x0, 0x0, -704, 0x6a } - case AVWADDWX: - return &inst{ 0x57, 0x6, 0x0, 0x0, -704, 0x6a } - case AVWADDUVV: - return &inst{ 0x57, 0x2, 0x0, 0x0, -1024, 0x60 } - case AVWADDUVX: - return &inst{ 0x57, 0x6, 0x0, 0x0, -1024, 0x60 } - case AVWADDUWV: - return &inst{ 0x57, 0x2, 0x0, 0x0, -768, 0x68 } - case AVWADDUWX: - return &inst{ 0x57, 0x6, 0x0, 0x0, -768, 0x68 } - case AVWMACCVV: - return &inst{ 0x57, 0x2, 0x0, 0x0, -192, 0x7a } - case AVWMACCVX: - return &inst{ 0x57, 0x6, 0x0, 0x0, -192, 0x7a } - case AVWMACCSUVV: - return &inst{ 0x57, 0x2, 0x0, 0x0, -64, 0x7e } - case AVWMACCSUVX: - return &inst{ 0x57, 0x6, 0x0, 0x0, -64, 0x7e } - case AVWMACCUVV: - return &inst{ 0x57, 0x2, 0x0, 0x0, -256, 0x78 } - case AVWMACCUVX: - return &inst{ 0x57, 0x6, 0x0, 0x0, -256, 0x78 } - case AVWMACCUSVX: - return &inst{ 0x57, 0x6, 0x0, 0x0, -128, 0x7c } - case AVWMULVV: - return &inst{ 0x57, 0x2, 0x0, 0x0, -320, 0x76 } - case AVWMULVX: - return &inst{ 0x57, 0x6, 0x0, 0x0, -320, 0x76 } - case AVWMULSUVV: - return &inst{ 0x57, 0x2, 0x0, 0x0, -384, 0x74 } - case AVWMULSUVX: - return &inst{ 0x57, 0x6, 0x0, 0x0, -384, 0x74 } - case AVWMULUVV: - return &inst{ 0x57, 0x2, 0x0, 0x0, -512, 0x70 } - case AVWMULUVX: - return &inst{ 0x57, 0x6, 0x0, 0x0, -512, 0x70 } - case AVWREDSUMVS: - return &inst{ 0x57, 0x0, 0x0, 0x0, -960, 0x62 } - case AVWREDSUMUVS: - return &inst{ 0x57, 0x0, 0x0, 0x0, -1024, 0x60 } - case AVWSLLVI: - return &inst{ 0x57, 0x3, 0x0, 0x0, -704, 0x6a } - case AVWSLLVV: - return &inst{ 0x57, 0x0, 0x0, 0x0, -704, 0x6a } - case AVWSLLVX: - return &inst{ 0x57, 0x4, 0x0, 0x0, -704, 0x6a } - case AVWSUBVV: - return &inst{ 0x57, 0x2, 0x0, 0x0, -832, 0x66 } - case AVWSUBVX: - return &inst{ 0x57, 0x6, 0x0, 0x0, -832, 0x66 } - case AVWSUBWV: - return &inst{ 0x57, 0x2, 0x0, 0x0, -576, 0x6e } - case AVWSUBWX: - return &inst{ 0x57, 0x6, 0x0, 0x0, -576, 0x6e } - case AVWSUBUVV: - return &inst{ 0x57, 0x2, 0x0, 0x0, -896, 0x64 } - case AVWSUBUVX: - return &inst{ 0x57, 0x6, 0x0, 0x0, -896, 0x64 } - case AVWSUBUWV: - return &inst{ 0x57, 0x2, 0x0, 0x0, -640, 0x6c } - case AVWSUBUWX: - return &inst{ 0x57, 0x6, 0x0, 0x0, -640, 0x6c } - case AVXORVI: - return &inst{ 0x57, 0x3, 0x0, 0x0, 704, 0x16 } - case AVXORVV: - return &inst{ 0x57, 0x0, 0x0, 0x0, 704, 0x16 } - case AVXORVX: - return &inst{ 0x57, 0x4, 0x0, 0x0, 704, 0x16 } - case AVZEXTVF2: - return &inst{ 0x57, 0x2, 0x6, 0x0, 1152, 0x24 } - case AVZEXTVF4: - return &inst{ 0x57, 0x2, 0x4, 0x0, 1152, 0x24 } - case AVZEXTVF8: - return &inst{ 0x57, 0x2, 0x2, 0x0, 1152, 0x24 } - case AWFI: - return &inst{ 0x73, 0x0, 0x0, 0x5, 261, 0x8 } - case AWRSNTO: - return &inst{ 0x73, 0x0, 0x0, 0xd, 13, 0x0 } - case AWRSSTO: - return &inst{ 0x73, 0x0, 0x0, 0x1d, 29, 0x0 } - case AXNOR: - return &inst{ 0x33, 0x4, 0x0, 0x0, 1024, 0x20 } - case AXOR: - return &inst{ 0x33, 0x4, 0x0, 0x0, 0, 0x0 } - case AXORI: - return &inst{ 0x13, 0x4, 0x0, 0x0, 0, 0x0 } - case AXPERM4: - return &inst{ 0x33, 0x2, 0x0, 0x0, 640, 0x14 } - case AXPERM8: - return &inst{ 0x33, 0x4, 0x0, 0x0, 640, 0x14 } - case AZEXTH: - return &inst{ 0x3b, 0x4, 0x0, 0x0, 128, 0x4 } - case AZIP: - return &inst{ 0x13, 0x1, 0x0, 0xf, 143, 0x4 } - } - return nil -} - -var csrs = map[uint16]string { -0x1 : "FFLAGS", -0x2 : "FRM", -0x3 : "FCSR", -0x7 : "UTVT", -0x8 : "VSTART", -0x9 : "VXSAT", -0xa : "VXRM", -0xf : "VCSR", -0x11 : "SSP", -0x15 : "SEED", -0x17 : "JVT", -0x45 : "UNXTI", -0x46 : "UINTSTATUS", -0x48 : "USCRATCHCSW", -0x49 : "USCRATCHCSWL", -0x100 : "SSTATUS", -0x102 : "SEDELEG", -0x103 : "SIDELEG", -0x104 : "SIE", -0x105 : "STVEC", -0x106 : "SCOUNTEREN", -0x107 : "STVT", -0x10a : "SENVCFG", -0x10c : "SSTATEEN0", -0x10d : "SSTATEEN1", -0x10e : "SSTATEEN2", -0x10f : "SSTATEEN3", -0x120 : "SCOUNTINHIBIT", -0x140 : "SSCRATCH", -0x141 : "SEPC", -0x142 : "SCAUSE", -0x143 : "STVAL", -0x144 : "SIP", -0x145 : "SNXTI", -0x146 : "SINTSTATUS", -0x148 : "SSCRATCHCSW", -0x149 : "SSCRATCHCSWL", -0x14d : "STIMECMP", -0x14e : "SCTRCTL", -0x14f : "SCTRSTATUS", -0x150 : "SISELECT", -0x151 : "SIREG", -0x152 : "SIREG2", -0x153 : "SIREG3", -0x155 : "SIREG4", -0x156 : "SIREG5", -0x157 : "SIREG6", -0x15c : "STOPEI", -0x15f : "SCTRDEPTH", -0x180 : "SATP", -0x181 : "SRMCFG", -0x200 : "VSSTATUS", -0x204 : "VSIE", -0x205 : "VSTVEC", -0x240 : "VSSCRATCH", -0x241 : "VSEPC", -0x242 : "VSCAUSE", -0x243 : "VSTVAL", -0x244 : "VSIP", -0x24d : "VSTIMECMP", -0x24e : "VSCTRCTL", -0x250 : "VSISELECT", -0x251 : "VSIREG", -0x252 : "VSIREG2", -0x253 : "VSIREG3", -0x255 : "VSIREG4", -0x256 : "VSIREG5", -0x257 : "VSIREG6", -0x25c : "VSTOPEI", -0x280 : "VSATP", -0x300 : "MSTATUS", -0x301 : "MISA", -0x302 : "MEDELEG", -0x303 : "MIDELEG", -0x304 : "MIE", -0x305 : "MTVEC", -0x306 : "MCOUNTEREN", -0x307 : "MTVT", -0x308 : "MVIEN", -0x309 : "MVIP", -0x30a : "MENVCFG", -0x30c : "MSTATEEN0", -0x30d : "MSTATEEN1", -0x30e : "MSTATEEN2", -0x30f : "MSTATEEN3", -0x320 : "MCOUNTINHIBIT", -0x321 : "MCYCLECFG", -0x322 : "MINSTRETCFG", -0x323 : "MHPMEVENT3", -0x324 : "MHPMEVENT4", -0x325 : "MHPMEVENT5", -0x326 : "MHPMEVENT6", -0x327 : "MHPMEVENT7", -0x328 : "MHPMEVENT8", -0x329 : "MHPMEVENT9", -0x32a : "MHPMEVENT10", -0x32b : "MHPMEVENT11", -0x32c : "MHPMEVENT12", -0x32d : "MHPMEVENT13", -0x32e : "MHPMEVENT14", -0x32f : "MHPMEVENT15", -0x330 : "MHPMEVENT16", -0x331 : "MHPMEVENT17", -0x332 : "MHPMEVENT18", -0x333 : "MHPMEVENT19", -0x334 : "MHPMEVENT20", -0x335 : "MHPMEVENT21", -0x336 : "MHPMEVENT22", -0x337 : "MHPMEVENT23", -0x338 : "MHPMEVENT24", -0x339 : "MHPMEVENT25", -0x33a : "MHPMEVENT26", -0x33b : "MHPMEVENT27", -0x33c : "MHPMEVENT28", -0x33d : "MHPMEVENT29", -0x33e : "MHPMEVENT30", -0x33f : "MHPMEVENT31", -0x340 : "MSCRATCH", -0x341 : "MEPC", -0x342 : "MCAUSE", -0x343 : "MTVAL", -0x344 : "MIP", -0x345 : "MNXTI", -0x346 : "MINTSTATUS", -0x348 : "MSCRATCHCSW", -0x349 : "MSCRATCHCSWL", -0x34a : "MTINST", -0x34b : "MTVAL2", -0x34e : "MCTRCTL", -0x350 : "MISELECT", -0x351 : "MIREG", -0x352 : "MIREG2", -0x353 : "MIREG3", -0x355 : "MIREG4", -0x356 : "MIREG5", -0x357 : "MIREG6", -0x35c : "MTOPEI", -0x3a0 : "PMPCFG0", -0x3a1 : "PMPCFG1", -0x3a2 : "PMPCFG2", -0x3a3 : "PMPCFG3", -0x3a4 : "PMPCFG4", -0x3a5 : "PMPCFG5", -0x3a6 : "PMPCFG6", -0x3a7 : "PMPCFG7", -0x3a8 : "PMPCFG8", -0x3a9 : "PMPCFG9", -0x3aa : "PMPCFG10", -0x3ab : "PMPCFG11", -0x3ac : "PMPCFG12", -0x3ad : "PMPCFG13", -0x3ae : "PMPCFG14", -0x3af : "PMPCFG15", -0x3b0 : "PMPADDR0", -0x3b1 : "PMPADDR1", -0x3b2 : "PMPADDR2", -0x3b3 : "PMPADDR3", -0x3b4 : "PMPADDR4", -0x3b5 : "PMPADDR5", -0x3b6 : "PMPADDR6", -0x3b7 : "PMPADDR7", -0x3b8 : "PMPADDR8", -0x3b9 : "PMPADDR9", -0x3ba : "PMPADDR10", -0x3bb : "PMPADDR11", -0x3bc : "PMPADDR12", -0x3bd : "PMPADDR13", -0x3be : "PMPADDR14", -0x3bf : "PMPADDR15", -0x3c0 : "PMPADDR16", -0x3c1 : "PMPADDR17", -0x3c2 : "PMPADDR18", -0x3c3 : "PMPADDR19", -0x3c4 : "PMPADDR20", -0x3c5 : "PMPADDR21", -0x3c6 : "PMPADDR22", -0x3c7 : "PMPADDR23", -0x3c8 : "PMPADDR24", -0x3c9 : "PMPADDR25", -0x3ca : "PMPADDR26", -0x3cb : "PMPADDR27", -0x3cc : "PMPADDR28", -0x3cd : "PMPADDR29", -0x3ce : "PMPADDR30", -0x3cf : "PMPADDR31", -0x3d0 : "PMPADDR32", -0x3d1 : "PMPADDR33", -0x3d2 : "PMPADDR34", -0x3d3 : "PMPADDR35", -0x3d4 : "PMPADDR36", -0x3d5 : "PMPADDR37", -0x3d6 : "PMPADDR38", -0x3d7 : "PMPADDR39", -0x3d8 : "PMPADDR40", -0x3d9 : "PMPADDR41", -0x3da : "PMPADDR42", -0x3db : "PMPADDR43", -0x3dc : "PMPADDR44", -0x3dd : "PMPADDR45", -0x3de : "PMPADDR46", -0x3df : "PMPADDR47", -0x3e0 : "PMPADDR48", -0x3e1 : "PMPADDR49", -0x3e2 : "PMPADDR50", -0x3e3 : "PMPADDR51", -0x3e4 : "PMPADDR52", -0x3e5 : "PMPADDR53", -0x3e6 : "PMPADDR54", -0x3e7 : "PMPADDR55", -0x3e8 : "PMPADDR56", -0x3e9 : "PMPADDR57", -0x3ea : "PMPADDR58", -0x3eb : "PMPADDR59", -0x3ec : "PMPADDR60", -0x3ed : "PMPADDR61", -0x3ee : "PMPADDR62", -0x3ef : "PMPADDR63", -0x5a8 : "SCONTEXT", -0x600 : "HSTATUS", -0x602 : "HEDELEG", -0x603 : "HIDELEG", -0x604 : "HIE", -0x605 : "HTIMEDELTA", -0x606 : "HCOUNTEREN", -0x607 : "HGEIE", -0x608 : "HVIEN", -0x609 : "HVICTL", -0x60a : "HENVCFG", -0x60c : "HSTATEEN0", -0x60d : "HSTATEEN1", -0x60e : "HSTATEEN2", -0x60f : "HSTATEEN3", -0x643 : "HTVAL", -0x644 : "HIP", -0x645 : "HVIP", -0x646 : "HVIPRIO1", -0x647 : "HVIPRIO2", -0x64a : "HTINST", -0x680 : "HGATP", -0x6a8 : "HCONTEXT", -0x747 : "MSECCFG", -0x7a0 : "TSELECT", -0x7a1 : "TDATA1", -0x7a2 : "TDATA2", -0x7a3 : "TDATA3", -0x7a4 : "TINFO", -0x7a5 : "TCONTROL", -0x7a8 : "MCONTEXT", -0x7aa : "MSCONTEXT", -0x7b0 : "DCSR", -0x7b1 : "DPC", -0x7b2 : "DSCRATCH0", -0x7b3 : "DSCRATCH1", -0xb00 : "MCYCLE", -0xb02 : "MINSTRET", -0xb03 : "MHPMCOUNTER3", -0xb04 : "MHPMCOUNTER4", -0xb05 : "MHPMCOUNTER5", -0xb06 : "MHPMCOUNTER6", -0xb07 : "MHPMCOUNTER7", -0xb08 : "MHPMCOUNTER8", -0xb09 : "MHPMCOUNTER9", -0xb0a : "MHPMCOUNTER10", -0xb0b : "MHPMCOUNTER11", -0xb0c : "MHPMCOUNTER12", -0xb0d : "MHPMCOUNTER13", -0xb0e : "MHPMCOUNTER14", -0xb0f : "MHPMCOUNTER15", -0xb10 : "MHPMCOUNTER16", -0xb11 : "MHPMCOUNTER17", -0xb12 : "MHPMCOUNTER18", -0xb13 : "MHPMCOUNTER19", -0xb14 : "MHPMCOUNTER20", -0xb15 : "MHPMCOUNTER21", -0xb16 : "MHPMCOUNTER22", -0xb17 : "MHPMCOUNTER23", -0xb18 : "MHPMCOUNTER24", -0xb19 : "MHPMCOUNTER25", -0xb1a : "MHPMCOUNTER26", -0xb1b : "MHPMCOUNTER27", -0xb1c : "MHPMCOUNTER28", -0xb1d : "MHPMCOUNTER29", -0xb1e : "MHPMCOUNTER30", -0xb1f : "MHPMCOUNTER31", -0xc00 : "CYCLE", -0xc01 : "TIME", -0xc02 : "INSTRET", -0xc03 : "HPMCOUNTER3", -0xc04 : "HPMCOUNTER4", -0xc05 : "HPMCOUNTER5", -0xc06 : "HPMCOUNTER6", -0xc07 : "HPMCOUNTER7", -0xc08 : "HPMCOUNTER8", -0xc09 : "HPMCOUNTER9", -0xc0a : "HPMCOUNTER10", -0xc0b : "HPMCOUNTER11", -0xc0c : "HPMCOUNTER12", -0xc0d : "HPMCOUNTER13", -0xc0e : "HPMCOUNTER14", -0xc0f : "HPMCOUNTER15", -0xc10 : "HPMCOUNTER16", -0xc11 : "HPMCOUNTER17", -0xc12 : "HPMCOUNTER18", -0xc13 : "HPMCOUNTER19", -0xc14 : "HPMCOUNTER20", -0xc15 : "HPMCOUNTER21", -0xc16 : "HPMCOUNTER22", -0xc17 : "HPMCOUNTER23", -0xc18 : "HPMCOUNTER24", -0xc19 : "HPMCOUNTER25", -0xc1a : "HPMCOUNTER26", -0xc1b : "HPMCOUNTER27", -0xc1c : "HPMCOUNTER28", -0xc1d : "HPMCOUNTER29", -0xc1e : "HPMCOUNTER30", -0xc1f : "HPMCOUNTER31", -0xc20 : "VL", -0xc21 : "VTYPE", -0xc22 : "VLENB", -0xda0 : "SCOUNTOVF", -0xdb0 : "STOPI", -0xe12 : "HGEIP", -0xeb0 : "VSTOPI", -0xf11 : "MVENDORID", -0xf12 : "MARCHID", -0xf13 : "MIMPID", -0xf14 : "MHARTID", -0xf15 : "MCONFIGPTR", -0xfb0 : "MTOPI", -} diff --git a/backends/opcodes_maker/output/inst.rs b/backends/opcodes_maker/output/inst.rs deleted file mode 100644 index 77b31b5b3..000000000 --- a/backends/opcodes_maker/output/inst.rs +++ /dev/null @@ -1,2769 +0,0 @@ - -/* Automatically generated by parse_opcodes */ -const MATCH_ADD: u32 = 0x33; -const MASK_ADD: u32 = 0xfe00707f; -const MATCH_ADD_UW: u32 = 0x800003b; -const MASK_ADD_UW: u32 = 0xfe00707f; -const MATCH_ADDI: u32 = 0x13; -const MASK_ADDI: u32 = 0x707f; -const MATCH_ADDIW: u32 = 0x1b; -const MASK_ADDIW: u32 = 0x707f; -const MATCH_ADDW: u32 = 0x3b; -const MASK_ADDW: u32 = 0xfe00707f; -const MATCH_AES32DSI: u32 = 0x2a000033; -const MASK_AES32DSI: u32 = 0x3e00707f; -const MATCH_AES32DSMI: u32 = 0x2e000033; -const MASK_AES32DSMI: u32 = 0x3e00707f; -const MATCH_AES32ESI: u32 = 0x22000033; -const MASK_AES32ESI: u32 = 0x3e00707f; -const MATCH_AES32ESMI: u32 = 0x26000033; -const MASK_AES32ESMI: u32 = 0x3e00707f; -const MATCH_AES64DS: u32 = 0x3a000033; -const MASK_AES64DS: u32 = 0xfe00707f; -const MATCH_AES64DSM: u32 = 0x3e000033; -const MASK_AES64DSM: u32 = 0xfe00707f; -const MATCH_AES64ES: u32 = 0x32000033; -const MASK_AES64ES: u32 = 0xfe00707f; -const MATCH_AES64ESM: u32 = 0x36000033; -const MASK_AES64ESM: u32 = 0xfe00707f; -const MATCH_AES64IM: u32 = 0x30001013; -const MASK_AES64IM: u32 = 0xfff0707f; -const MATCH_AES64KS1I: u32 = 0x31001013; -const MASK_AES64KS1I: u32 = 0xff00707f; -const MATCH_AES64KS2: u32 = 0x7e000033; -const MASK_AES64KS2: u32 = 0xfe00707f; -const MATCH_AMOADD_B: u32 = 0x2f; -const MASK_AMOADD_B: u32 = 0xf800707f; -const MATCH_AMOADD_D: u32 = 0x302f; -const MASK_AMOADD_D: u32 = 0xf800707f; -const MATCH_AMOADD_H: u32 = 0x102f; -const MASK_AMOADD_H: u32 = 0xf800707f; -const MATCH_AMOADD_W: u32 = 0x202f; -const MASK_AMOADD_W: u32 = 0xf800707f; -const MATCH_AMOAND_B: u32 = 0x6000002f; -const MASK_AMOAND_B: u32 = 0xf800707f; -const MATCH_AMOAND_D: u32 = 0x6000302f; -const MASK_AMOAND_D: u32 = 0xf800707f; -const MATCH_AMOAND_H: u32 = 0x6000102f; -const MASK_AMOAND_H: u32 = 0xf800707f; -const MATCH_AMOAND_W: u32 = 0x6000202f; -const MASK_AMOAND_W: u32 = 0xf800707f; -const MATCH_AMOCAS_B: u32 = 0x2800002f; -const MASK_AMOCAS_B: u32 = 0xf800707f; -const MATCH_AMOCAS_D: u32 = 0x2800302f; -const MASK_AMOCAS_D: u32 = 0xf800707f; -const MATCH_AMOCAS_H: u32 = 0x2800102f; -const MASK_AMOCAS_H: u32 = 0xf800707f; -const MATCH_AMOCAS_Q: u32 = 0x2800402f; -const MASK_AMOCAS_Q: u32 = 0xf800707f; -const MATCH_AMOCAS_W: u32 = 0x2800202f; -const MASK_AMOCAS_W: u32 = 0xf800707f; -const MATCH_AMOMAX_B: u32 = 0xa000002f; -const MASK_AMOMAX_B: u32 = 0xf800707f; -const MATCH_AMOMAX_D: u32 = 0xa000302f; -const MASK_AMOMAX_D: u32 = 0xf800707f; -const MATCH_AMOMAX_H: u32 = 0xa000102f; -const MASK_AMOMAX_H: u32 = 0xf800707f; -const MATCH_AMOMAX_W: u32 = 0xa000202f; -const MASK_AMOMAX_W: u32 = 0xf800707f; -const MATCH_AMOMAXU_B: u32 = 0xe000002f; -const MASK_AMOMAXU_B: u32 = 0xf800707f; -const MATCH_AMOMAXU_D: u32 = 0xe000302f; -const MASK_AMOMAXU_D: u32 = 0xf800707f; -const MATCH_AMOMAXU_H: u32 = 0xe000102f; -const MASK_AMOMAXU_H: u32 = 0xf800707f; -const MATCH_AMOMAXU_W: u32 = 0xe000202f; -const MASK_AMOMAXU_W: u32 = 0xf800707f; -const MATCH_AMOMIN_B: u32 = 0x8000002f; -const MASK_AMOMIN_B: u32 = 0xf800707f; -const MATCH_AMOMIN_D: u32 = 0x8000302f; -const MASK_AMOMIN_D: u32 = 0xf800707f; -const MATCH_AMOMIN_H: u32 = 0x8000102f; -const MASK_AMOMIN_H: u32 = 0xf800707f; -const MATCH_AMOMIN_W: u32 = 0x8000202f; -const MASK_AMOMIN_W: u32 = 0xf800707f; -const MATCH_AMOMINU_B: u32 = 0xc000002f; -const MASK_AMOMINU_B: u32 = 0xf800707f; -const MATCH_AMOMINU_D: u32 = 0xc000302f; -const MASK_AMOMINU_D: u32 = 0xf800707f; -const MATCH_AMOMINU_H: u32 = 0xc000102f; -const MASK_AMOMINU_H: u32 = 0xf800707f; -const MATCH_AMOMINU_W: u32 = 0xc000202f; -const MASK_AMOMINU_W: u32 = 0xf800707f; -const MATCH_AMOOR_B: u32 = 0x4000002f; -const MASK_AMOOR_B: u32 = 0xf800707f; -const MATCH_AMOOR_D: u32 = 0x4000302f; -const MASK_AMOOR_D: u32 = 0xf800707f; -const MATCH_AMOOR_H: u32 = 0x4000102f; -const MASK_AMOOR_H: u32 = 0xf800707f; -const MATCH_AMOOR_W: u32 = 0x4000202f; -const MASK_AMOOR_W: u32 = 0xf800707f; -const MATCH_AMOSWAP_B: u32 = 0x800002f; -const MASK_AMOSWAP_B: u32 = 0xf800707f; -const MATCH_AMOSWAP_D: u32 = 0x800302f; -const MASK_AMOSWAP_D: u32 = 0xf800707f; -const MATCH_AMOSWAP_H: u32 = 0x800102f; -const MASK_AMOSWAP_H: u32 = 0xf800707f; -const MATCH_AMOSWAP_W: u32 = 0x800202f; -const MASK_AMOSWAP_W: u32 = 0xf800707f; -const MATCH_AMOXOR_B: u32 = 0x2000002f; -const MASK_AMOXOR_B: u32 = 0xf800707f; -const MATCH_AMOXOR_D: u32 = 0x2000302f; -const MASK_AMOXOR_D: u32 = 0xf800707f; -const MATCH_AMOXOR_H: u32 = 0x2000102f; -const MASK_AMOXOR_H: u32 = 0xf800707f; -const MATCH_AMOXOR_W: u32 = 0x2000202f; -const MASK_AMOXOR_W: u32 = 0xf800707f; -const MATCH_AND: u32 = 0x7033; -const MASK_AND: u32 = 0xfe00707f; -const MATCH_ANDI: u32 = 0x7013; -const MASK_ANDI: u32 = 0x707f; -const MATCH_ANDN: u32 = 0x40007033; -const MASK_ANDN: u32 = 0xfe00707f; -const MATCH_AUIPC: u32 = 0x17; -const MASK_AUIPC: u32 = 0x7f; -const MATCH_BCLR: u32 = 0x48001033; -const MASK_BCLR: u32 = 0xfe00707f; -const MATCH_BCLRI: u32 = 0x48001013; -const MASK_BCLRI: u32 = 0xfc00707f; -const MATCH_BEQ: u32 = 0x63; -const MASK_BEQ: u32 = 0x707f; -const MATCH_BEXT: u32 = 0x48005033; -const MASK_BEXT: u32 = 0xfe00707f; -const MATCH_BEXTI: u32 = 0x48005013; -const MASK_BEXTI: u32 = 0xfc00707f; -const MATCH_BGE: u32 = 0x5063; -const MASK_BGE: u32 = 0x707f; -const MATCH_BGEU: u32 = 0x7063; -const MASK_BGEU: u32 = 0x707f; -const MATCH_BINV: u32 = 0x68001033; -const MASK_BINV: u32 = 0xfe00707f; -const MATCH_BINVI: u32 = 0x68001013; -const MASK_BINVI: u32 = 0xfc00707f; -const MATCH_BLT: u32 = 0x4063; -const MASK_BLT: u32 = 0x707f; -const MATCH_BLTU: u32 = 0x6063; -const MASK_BLTU: u32 = 0x707f; -const MATCH_BNE: u32 = 0x1063; -const MASK_BNE: u32 = 0x707f; -const MATCH_BREV8: u32 = 0x68705013; -const MASK_BREV8: u32 = 0xfff0707f; -const MATCH_BSET: u32 = 0x28001033; -const MASK_BSET: u32 = 0xfe00707f; -const MATCH_BSETI: u32 = 0x28001013; -const MASK_BSETI: u32 = 0xfc00707f; -const MATCH_C_ADD: u32 = 0x9002; -const MASK_C_ADD: u32 = 0xf003; -const MATCH_C_ADDI: u32 = 0x1; -const MASK_C_ADDI: u32 = 0xe003; -const MATCH_C_ADDI16SP: u32 = 0x6101; -const MASK_C_ADDI16SP: u32 = 0xef83; -const MATCH_C_ADDI4SPN: u32 = 0x0; -const MASK_C_ADDI4SPN: u32 = 0xe003; -const MATCH_C_ADDIW: u32 = 0x2001; -const MASK_C_ADDIW: u32 = 0xe003; -const MATCH_C_ADDW: u32 = 0x9c21; -const MASK_C_ADDW: u32 = 0xfc63; -const MATCH_C_AND: u32 = 0x8c61; -const MASK_C_AND: u32 = 0xfc63; -const MATCH_C_ANDI: u32 = 0x8801; -const MASK_C_ANDI: u32 = 0xec03; -const MATCH_C_BEQZ: u32 = 0xc001; -const MASK_C_BEQZ: u32 = 0xe003; -const MATCH_C_BNEZ: u32 = 0xe001; -const MASK_C_BNEZ: u32 = 0xe003; -const MATCH_C_EBREAK: u32 = 0x9002; -const MASK_C_EBREAK: u32 = 0xffff; -const MATCH_C_FLD: u32 = 0x2000; -const MASK_C_FLD: u32 = 0xe003; -const MATCH_C_FLDSP: u32 = 0x2002; -const MASK_C_FLDSP: u32 = 0xe003; -const MATCH_C_FLW: u32 = 0x6000; -const MASK_C_FLW: u32 = 0xe003; -const MATCH_C_FLWSP: u32 = 0x6002; -const MASK_C_FLWSP: u32 = 0xe003; -const MATCH_C_FSD: u32 = 0xa000; -const MASK_C_FSD: u32 = 0xe003; -const MATCH_C_FSDSP: u32 = 0xa002; -const MASK_C_FSDSP: u32 = 0xe003; -const MATCH_C_FSW: u32 = 0xe000; -const MASK_C_FSW: u32 = 0xe003; -const MATCH_C_FSWSP: u32 = 0xe002; -const MASK_C_FSWSP: u32 = 0xe003; -const MATCH_C_J: u32 = 0xa001; -const MASK_C_J: u32 = 0xe003; -const MATCH_C_JAL: u32 = 0x2001; -const MASK_C_JAL: u32 = 0xe003; -const MATCH_C_JALR: u32 = 0x9002; -const MASK_C_JALR: u32 = 0xf07f; -const MATCH_C_JR: u32 = 0x8002; -const MASK_C_JR: u32 = 0xf07f; -const MATCH_C_LBU: u32 = 0x8000; -const MASK_C_LBU: u32 = 0xfc03; -const MATCH_C_LD: u32 = 0x6000; -const MASK_C_LD: u32 = 0xe003; -const MATCH_C_LDSP: u32 = 0x6002; -const MASK_C_LDSP: u32 = 0xe003; -const MATCH_C_LI: u32 = 0x4001; -const MASK_C_LI: u32 = 0xe003; -const MATCH_C_LUI: u32 = 0x6001; -const MASK_C_LUI: u32 = 0xe003; -const MATCH_C_LW: u32 = 0x4000; -const MASK_C_LW: u32 = 0xe003; -const MATCH_C_LWSP: u32 = 0x4002; -const MASK_C_LWSP: u32 = 0xe003; -const MATCH_C_MUL: u32 = 0x9c41; -const MASK_C_MUL: u32 = 0xfc63; -const MATCH_C_MV: u32 = 0x8002; -const MASK_C_MV: u32 = 0xf003; -const MATCH_C_NOP: u32 = 0x1; -const MASK_C_NOP: u32 = 0xef83; -const MATCH_C_NOT: u32 = 0x9c75; -const MASK_C_NOT: u32 = 0xfc7f; -const MATCH_C_OR: u32 = 0x8c41; -const MASK_C_OR: u32 = 0xfc63; -const MATCH_C_SB: u32 = 0x8800; -const MASK_C_SB: u32 = 0xfc03; -const MATCH_C_SD: u32 = 0xe000; -const MASK_C_SD: u32 = 0xe003; -const MATCH_C_SDSP: u32 = 0xe002; -const MASK_C_SDSP: u32 = 0xe003; -const MATCH_C_SEXT_B: u32 = 0x9c65; -const MASK_C_SEXT_B: u32 = 0xfc7f; -const MATCH_C_SEXT_H: u32 = 0x9c6d; -const MASK_C_SEXT_H: u32 = 0xfc7f; -const MATCH_C_SLLI: u32 = 0x2; -const MASK_C_SLLI: u32 = 0xe003; -const MATCH_C_SRAI: u32 = 0x8401; -const MASK_C_SRAI: u32 = 0xec03; -const MATCH_C_SRLI: u32 = 0x8001; -const MASK_C_SRLI: u32 = 0xec03; -const MATCH_C_SUB: u32 = 0x8c01; -const MASK_C_SUB: u32 = 0xfc63; -const MATCH_C_SUBW: u32 = 0x9c01; -const MASK_C_SUBW: u32 = 0xfc63; -const MATCH_C_SW: u32 = 0xc000; -const MASK_C_SW: u32 = 0xe003; -const MATCH_C_SWSP: u32 = 0xc002; -const MASK_C_SWSP: u32 = 0xe003; -const MATCH_C_XOR: u32 = 0x8c21; -const MASK_C_XOR: u32 = 0xfc63; -const MATCH_C_ZEXT_B: u32 = 0x9c61; -const MASK_C_ZEXT_B: u32 = 0xfc7f; -const MATCH_C_ZEXT_H: u32 = 0x9c69; -const MASK_C_ZEXT_H: u32 = 0xfc7f; -const MATCH_C_ZEXT_W: u32 = 0x9c71; -const MASK_C_ZEXT_W: u32 = 0xfc7f; -const MATCH_CBO_CLEAN: u32 = 0x10200f; -const MASK_CBO_CLEAN: u32 = 0xfff07fff; -const MATCH_CBO_FLUSH: u32 = 0x20200f; -const MASK_CBO_FLUSH: u32 = 0xfff07fff; -const MATCH_CBO_INVAL: u32 = 0x200f; -const MASK_CBO_INVAL: u32 = 0xfff07fff; -const MATCH_CBO_ZERO: u32 = 0x40200f; -const MASK_CBO_ZERO: u32 = 0xfff07fff; -const MATCH_CLMUL: u32 = 0xa001033; -const MASK_CLMUL: u32 = 0xfe00707f; -const MATCH_CLMULH: u32 = 0xa003033; -const MASK_CLMULH: u32 = 0xfe00707f; -const MATCH_CLMULR: u32 = 0xa002033; -const MASK_CLMULR: u32 = 0xfe00707f; -const MATCH_CLZ: u32 = 0x60001013; -const MASK_CLZ: u32 = 0xfff0707f; -const MATCH_CLZW: u32 = 0x6000101b; -const MASK_CLZW: u32 = 0xfff0707f; -const MATCH_CM_MVA01S: u32 = 0xac62; -const MASK_CM_MVA01S: u32 = 0xfc63; -const MATCH_CM_MVSA01: u32 = 0xac22; -const MASK_CM_MVSA01: u32 = 0xfc63; -const MATCH_CM_POP: u32 = 0xba02; -const MASK_CM_POP: u32 = 0xff03; -const MATCH_CM_POPRET: u32 = 0xbe02; -const MASK_CM_POPRET: u32 = 0xff03; -const MATCH_CM_POPRETZ: u32 = 0xbc02; -const MASK_CM_POPRETZ: u32 = 0xff03; -const MATCH_CM_PUSH: u32 = 0xb802; -const MASK_CM_PUSH: u32 = 0xff03; -const MATCH_CPOP: u32 = 0x60201013; -const MASK_CPOP: u32 = 0xfff0707f; -const MATCH_CPOPW: u32 = 0x6020101b; -const MASK_CPOPW: u32 = 0xfff0707f; -const MATCH_CSRRC: u32 = 0x3073; -const MASK_CSRRC: u32 = 0x707f; -const MATCH_CSRRCI: u32 = 0x7073; -const MASK_CSRRCI: u32 = 0x707f; -const MATCH_CSRRS: u32 = 0x2073; -const MASK_CSRRS: u32 = 0x707f; -const MATCH_CSRRSI: u32 = 0x6073; -const MASK_CSRRSI: u32 = 0x707f; -const MATCH_CSRRW: u32 = 0x1073; -const MASK_CSRRW: u32 = 0x707f; -const MATCH_CSRRWI: u32 = 0x5073; -const MASK_CSRRWI: u32 = 0x707f; -const MATCH_CTZ: u32 = 0x60101013; -const MASK_CTZ: u32 = 0xfff0707f; -const MATCH_CTZW: u32 = 0x6010101b; -const MASK_CTZW: u32 = 0xfff0707f; -const MATCH_CZERO_EQZ: u32 = 0xe005033; -const MASK_CZERO_EQZ: u32 = 0xfe00707f; -const MATCH_CZERO_NEZ: u32 = 0xe007033; -const MASK_CZERO_NEZ: u32 = 0xfe00707f; -const MATCH_DIV: u32 = 0x2004033; -const MASK_DIV: u32 = 0xfe00707f; -const MATCH_DIVU: u32 = 0x2005033; -const MASK_DIVU: u32 = 0xfe00707f; -const MATCH_DIVUW: u32 = 0x200503b; -const MASK_DIVUW: u32 = 0xfe00707f; -const MATCH_DIVW: u32 = 0x200403b; -const MASK_DIVW: u32 = 0xfe00707f; -const MATCH_DRET: u32 = 0x7b200073; -const MASK_DRET: u32 = 0xffffffff; -const MATCH_EBREAK: u32 = 0x100073; -const MASK_EBREAK: u32 = 0xffffffff; -const MATCH_ECALL: u32 = 0x73; -const MASK_ECALL: u32 = 0xffffffff; -const MATCH_FADD_D: u32 = 0x2000053; -const MASK_FADD_D: u32 = 0xfe00007f; -const MATCH_FADD_H: u32 = 0x4000053; -const MASK_FADD_H: u32 = 0xfe00007f; -const MATCH_FADD_Q: u32 = 0x6000053; -const MASK_FADD_Q: u32 = 0xfe00007f; -const MATCH_FADD_S: u32 = 0x53; -const MASK_FADD_S: u32 = 0xfe00007f; -const MATCH_FCLASS_D: u32 = 0xe2001053; -const MASK_FCLASS_D: u32 = 0xfff0707f; -const MATCH_FCLASS_H: u32 = 0xe4001053; -const MASK_FCLASS_H: u32 = 0xfff0707f; -const MATCH_FCLASS_Q: u32 = 0xe6001053; -const MASK_FCLASS_Q: u32 = 0xfff0707f; -const MATCH_FCLASS_S: u32 = 0xe0001053; -const MASK_FCLASS_S: u32 = 0xfff0707f; -const MATCH_FCVT_BF16_S: u32 = 0x44800053; -const MASK_FCVT_BF16_S: u32 = 0xfff0007f; -const MATCH_FCVT_D_H: u32 = 0x42200053; -const MASK_FCVT_D_H: u32 = 0xfff0007f; -const MATCH_FCVT_D_L: u32 = 0xd2200053; -const MASK_FCVT_D_L: u32 = 0xfff0007f; -const MATCH_FCVT_D_LU: u32 = 0xd2300053; -const MASK_FCVT_D_LU: u32 = 0xfff0007f; -const MATCH_FCVT_D_Q: u32 = 0x42300053; -const MASK_FCVT_D_Q: u32 = 0xfff0007f; -const MATCH_FCVT_D_S: u32 = 0x42000053; -const MASK_FCVT_D_S: u32 = 0xfff0007f; -const MATCH_FCVT_D_W: u32 = 0xd2000053; -const MASK_FCVT_D_W: u32 = 0xfff0007f; -const MATCH_FCVT_D_WU: u32 = 0xd2100053; -const MASK_FCVT_D_WU: u32 = 0xfff0007f; -const MATCH_FCVT_H_D: u32 = 0x44100053; -const MASK_FCVT_H_D: u32 = 0xfff0007f; -const MATCH_FCVT_H_L: u32 = 0xd4200053; -const MASK_FCVT_H_L: u32 = 0xfff0007f; -const MATCH_FCVT_H_LU: u32 = 0xd4300053; -const MASK_FCVT_H_LU: u32 = 0xfff0007f; -const MATCH_FCVT_H_Q: u32 = 0x44300053; -const MASK_FCVT_H_Q: u32 = 0xfff0007f; -const MATCH_FCVT_H_S: u32 = 0x44000053; -const MASK_FCVT_H_S: u32 = 0xfff0007f; -const MATCH_FCVT_H_W: u32 = 0xd4000053; -const MASK_FCVT_H_W: u32 = 0xfff0007f; -const MATCH_FCVT_H_WU: u32 = 0xd4100053; -const MASK_FCVT_H_WU: u32 = 0xfff0007f; -const MATCH_FCVT_L_D: u32 = 0xc2200053; -const MASK_FCVT_L_D: u32 = 0xfff0007f; -const MATCH_FCVT_L_H: u32 = 0xc4200053; -const MASK_FCVT_L_H: u32 = 0xfff0007f; -const MATCH_FCVT_L_Q: u32 = 0xc6200053; -const MASK_FCVT_L_Q: u32 = 0xfff0007f; -const MATCH_FCVT_L_S: u32 = 0xc0200053; -const MASK_FCVT_L_S: u32 = 0xfff0007f; -const MATCH_FCVT_LU_D: u32 = 0xc2300053; -const MASK_FCVT_LU_D: u32 = 0xfff0007f; -const MATCH_FCVT_LU_H: u32 = 0xc4300053; -const MASK_FCVT_LU_H: u32 = 0xfff0007f; -const MATCH_FCVT_LU_Q: u32 = 0xc6300053; -const MASK_FCVT_LU_Q: u32 = 0xfff0007f; -const MATCH_FCVT_LU_S: u32 = 0xc0300053; -const MASK_FCVT_LU_S: u32 = 0xfff0007f; -const MATCH_FCVT_Q_D: u32 = 0x46100053; -const MASK_FCVT_Q_D: u32 = 0xfff0007f; -const MATCH_FCVT_Q_H: u32 = 0x46200053; -const MASK_FCVT_Q_H: u32 = 0xfff0007f; -const MATCH_FCVT_Q_L: u32 = 0xd6200053; -const MASK_FCVT_Q_L: u32 = 0xfff0007f; -const MATCH_FCVT_Q_LU: u32 = 0xd6300053; -const MASK_FCVT_Q_LU: u32 = 0xfff0007f; -const MATCH_FCVT_Q_S: u32 = 0x46000053; -const MASK_FCVT_Q_S: u32 = 0xfff0007f; -const MATCH_FCVT_Q_W: u32 = 0xd6000053; -const MASK_FCVT_Q_W: u32 = 0xfff0007f; -const MATCH_FCVT_Q_WU: u32 = 0xd6100053; -const MASK_FCVT_Q_WU: u32 = 0xfff0007f; -const MATCH_FCVT_S_BF16: u32 = 0x40600053; -const MASK_FCVT_S_BF16: u32 = 0xfff0007f; -const MATCH_FCVT_S_D: u32 = 0x40100053; -const MASK_FCVT_S_D: u32 = 0xfff0007f; -const MATCH_FCVT_S_H: u32 = 0x40200053; -const MASK_FCVT_S_H: u32 = 0xfff0007f; -const MATCH_FCVT_S_L: u32 = 0xd0200053; -const MASK_FCVT_S_L: u32 = 0xfff0007f; -const MATCH_FCVT_S_LU: u32 = 0xd0300053; -const MASK_FCVT_S_LU: u32 = 0xfff0007f; -const MATCH_FCVT_S_Q: u32 = 0x40300053; -const MASK_FCVT_S_Q: u32 = 0xfff0007f; -const MATCH_FCVT_S_W: u32 = 0xd0000053; -const MASK_FCVT_S_W: u32 = 0xfff0007f; -const MATCH_FCVT_S_WU: u32 = 0xd0100053; -const MASK_FCVT_S_WU: u32 = 0xfff0007f; -const MATCH_FCVT_W_D: u32 = 0xc2000053; -const MASK_FCVT_W_D: u32 = 0xfff0007f; -const MATCH_FCVT_W_H: u32 = 0xc4000053; -const MASK_FCVT_W_H: u32 = 0xfff0007f; -const MATCH_FCVT_W_Q: u32 = 0xc6000053; -const MASK_FCVT_W_Q: u32 = 0xfff0007f; -const MATCH_FCVT_W_S: u32 = 0xc0000053; -const MASK_FCVT_W_S: u32 = 0xfff0007f; -const MATCH_FCVT_WU_D: u32 = 0xc2100053; -const MASK_FCVT_WU_D: u32 = 0xfff0007f; -const MATCH_FCVT_WU_H: u32 = 0xc4100053; -const MASK_FCVT_WU_H: u32 = 0xfff0007f; -const MATCH_FCVT_WU_Q: u32 = 0xc6100053; -const MASK_FCVT_WU_Q: u32 = 0xfff0007f; -const MATCH_FCVT_WU_S: u32 = 0xc0100053; -const MASK_FCVT_WU_S: u32 = 0xfff0007f; -const MATCH_FCVTMOD_W_D: u32 = 0xc2801053; -const MASK_FCVTMOD_W_D: u32 = 0xfff0707f; -const MATCH_FDIV_D: u32 = 0x1a000053; -const MASK_FDIV_D: u32 = 0xfe00007f; -const MATCH_FDIV_H: u32 = 0x1c000053; -const MASK_FDIV_H: u32 = 0xfe00007f; -const MATCH_FDIV_Q: u32 = 0x1e000053; -const MASK_FDIV_Q: u32 = 0xfe00007f; -const MATCH_FDIV_S: u32 = 0x18000053; -const MASK_FDIV_S: u32 = 0xfe00007f; -const MATCH_FENCE: u32 = 0xf; -const MASK_FENCE: u32 = 0x707f; -const MATCH_FENCE_I: u32 = 0x100f; -const MASK_FENCE_I: u32 = 0x707f; -const MATCH_FEQ_D: u32 = 0xa2002053; -const MASK_FEQ_D: u32 = 0xfe00707f; -const MATCH_FEQ_H: u32 = 0xa4002053; -const MASK_FEQ_H: u32 = 0xfe00707f; -const MATCH_FEQ_Q: u32 = 0xa6002053; -const MASK_FEQ_Q: u32 = 0xfe00707f; -const MATCH_FEQ_S: u32 = 0xa0002053; -const MASK_FEQ_S: u32 = 0xfe00707f; -const MATCH_FLD: u32 = 0x3007; -const MASK_FLD: u32 = 0x707f; -const MATCH_FLE_D: u32 = 0xa2000053; -const MASK_FLE_D: u32 = 0xfe00707f; -const MATCH_FLE_H: u32 = 0xa4000053; -const MASK_FLE_H: u32 = 0xfe00707f; -const MATCH_FLE_Q: u32 = 0xa6000053; -const MASK_FLE_Q: u32 = 0xfe00707f; -const MATCH_FLE_S: u32 = 0xa0000053; -const MASK_FLE_S: u32 = 0xfe00707f; -const MATCH_FLEQ_D: u32 = 0xa2004053; -const MASK_FLEQ_D: u32 = 0xfe00707f; -const MATCH_FLEQ_H: u32 = 0xa4004053; -const MASK_FLEQ_H: u32 = 0xfe00707f; -const MATCH_FLEQ_Q: u32 = 0xa6004053; -const MASK_FLEQ_Q: u32 = 0xfe00707f; -const MATCH_FLEQ_S: u32 = 0xa0004053; -const MASK_FLEQ_S: u32 = 0xfe00707f; -const MATCH_FLH: u32 = 0x1007; -const MASK_FLH: u32 = 0x707f; -const MATCH_FLI_D: u32 = 0xf2100053; -const MASK_FLI_D: u32 = 0xfff0707f; -const MATCH_FLI_H: u32 = 0xf4100053; -const MASK_FLI_H: u32 = 0xfff0707f; -const MATCH_FLI_Q: u32 = 0xf6100053; -const MASK_FLI_Q: u32 = 0xfff0707f; -const MATCH_FLI_S: u32 = 0xf0100053; -const MASK_FLI_S: u32 = 0xfff0707f; -const MATCH_FLQ: u32 = 0x4007; -const MASK_FLQ: u32 = 0x707f; -const MATCH_FLT_D: u32 = 0xa2001053; -const MASK_FLT_D: u32 = 0xfe00707f; -const MATCH_FLT_H: u32 = 0xa4001053; -const MASK_FLT_H: u32 = 0xfe00707f; -const MATCH_FLT_Q: u32 = 0xa6001053; -const MASK_FLT_Q: u32 = 0xfe00707f; -const MATCH_FLT_S: u32 = 0xa0001053; -const MASK_FLT_S: u32 = 0xfe00707f; -const MATCH_FLTQ_D: u32 = 0xa2005053; -const MASK_FLTQ_D: u32 = 0xfe00707f; -const MATCH_FLTQ_H: u32 = 0xa4005053; -const MASK_FLTQ_H: u32 = 0xfe00707f; -const MATCH_FLTQ_Q: u32 = 0xa6005053; -const MASK_FLTQ_Q: u32 = 0xfe00707f; -const MATCH_FLTQ_S: u32 = 0xa0005053; -const MASK_FLTQ_S: u32 = 0xfe00707f; -const MATCH_FLW: u32 = 0x2007; -const MASK_FLW: u32 = 0x707f; -const MATCH_FMADD_D: u32 = 0x2000043; -const MASK_FMADD_D: u32 = 0x600007f; -const MATCH_FMADD_H: u32 = 0x4000043; -const MASK_FMADD_H: u32 = 0x600007f; -const MATCH_FMADD_Q: u32 = 0x6000043; -const MASK_FMADD_Q: u32 = 0x600007f; -const MATCH_FMADD_S: u32 = 0x43; -const MASK_FMADD_S: u32 = 0x600007f; -const MATCH_FMAX_D: u32 = 0x2a001053; -const MASK_FMAX_D: u32 = 0xfe00707f; -const MATCH_FMAX_H: u32 = 0x2c001053; -const MASK_FMAX_H: u32 = 0xfe00707f; -const MATCH_FMAX_Q: u32 = 0x2e001053; -const MASK_FMAX_Q: u32 = 0xfe00707f; -const MATCH_FMAX_S: u32 = 0x28001053; -const MASK_FMAX_S: u32 = 0xfe00707f; -const MATCH_FMAXM_D: u32 = 0x2a003053; -const MASK_FMAXM_D: u32 = 0xfe00707f; -const MATCH_FMAXM_H: u32 = 0x2c003053; -const MASK_FMAXM_H: u32 = 0xfe00707f; -const MATCH_FMAXM_Q: u32 = 0x2e003053; -const MASK_FMAXM_Q: u32 = 0xfe00707f; -const MATCH_FMAXM_S: u32 = 0x28003053; -const MASK_FMAXM_S: u32 = 0xfe00707f; -const MATCH_FMIN_D: u32 = 0x2a000053; -const MASK_FMIN_D: u32 = 0xfe00707f; -const MATCH_FMIN_H: u32 = 0x2c000053; -const MASK_FMIN_H: u32 = 0xfe00707f; -const MATCH_FMIN_Q: u32 = 0x2e000053; -const MASK_FMIN_Q: u32 = 0xfe00707f; -const MATCH_FMIN_S: u32 = 0x28000053; -const MASK_FMIN_S: u32 = 0xfe00707f; -const MATCH_FMINM_D: u32 = 0x2a002053; -const MASK_FMINM_D: u32 = 0xfe00707f; -const MATCH_FMINM_H: u32 = 0x2c002053; -const MASK_FMINM_H: u32 = 0xfe00707f; -const MATCH_FMINM_Q: u32 = 0x2e002053; -const MASK_FMINM_Q: u32 = 0xfe00707f; -const MATCH_FMINM_S: u32 = 0x28002053; -const MASK_FMINM_S: u32 = 0xfe00707f; -const MATCH_FMSUB_D: u32 = 0x2000047; -const MASK_FMSUB_D: u32 = 0x600007f; -const MATCH_FMSUB_H: u32 = 0x4000047; -const MASK_FMSUB_H: u32 = 0x600007f; -const MATCH_FMSUB_Q: u32 = 0x6000047; -const MASK_FMSUB_Q: u32 = 0x600007f; -const MATCH_FMSUB_S: u32 = 0x47; -const MASK_FMSUB_S: u32 = 0x600007f; -const MATCH_FMUL_D: u32 = 0x12000053; -const MASK_FMUL_D: u32 = 0xfe00007f; -const MATCH_FMUL_H: u32 = 0x14000053; -const MASK_FMUL_H: u32 = 0xfe00007f; -const MATCH_FMUL_Q: u32 = 0x16000053; -const MASK_FMUL_Q: u32 = 0xfe00007f; -const MATCH_FMUL_S: u32 = 0x10000053; -const MASK_FMUL_S: u32 = 0xfe00007f; -const MATCH_FMV_D_X: u32 = 0xf2000053; -const MASK_FMV_D_X: u32 = 0xfff0707f; -const MATCH_FMV_H_X: u32 = 0xf4000053; -const MASK_FMV_H_X: u32 = 0xfff0707f; -const MATCH_FMV_W_X: u32 = 0xf0000053; -const MASK_FMV_W_X: u32 = 0xfff0707f; -const MATCH_FMV_X_D: u32 = 0xe2000053; -const MASK_FMV_X_D: u32 = 0xfff0707f; -const MATCH_FMV_X_H: u32 = 0xe4000053; -const MASK_FMV_X_H: u32 = 0xfff0707f; -const MATCH_FMV_X_W: u32 = 0xe0000053; -const MASK_FMV_X_W: u32 = 0xfff0707f; -const MATCH_FMVH_X_D: u32 = 0xe2100053; -const MASK_FMVH_X_D: u32 = 0xfff0707f; -const MATCH_FMVH_X_Q: u32 = 0xe6100053; -const MASK_FMVH_X_Q: u32 = 0xfff0707f; -const MATCH_FMVP_D_X: u32 = 0xb2000053; -const MASK_FMVP_D_X: u32 = 0xfe00707f; -const MATCH_FMVP_Q_X: u32 = 0xb6000053; -const MASK_FMVP_Q_X: u32 = 0xfe00707f; -const MATCH_FNMADD_D: u32 = 0x200004f; -const MASK_FNMADD_D: u32 = 0x600007f; -const MATCH_FNMADD_H: u32 = 0x400004f; -const MASK_FNMADD_H: u32 = 0x600007f; -const MATCH_FNMADD_Q: u32 = 0x600004f; -const MASK_FNMADD_Q: u32 = 0x600007f; -const MATCH_FNMADD_S: u32 = 0x4f; -const MASK_FNMADD_S: u32 = 0x600007f; -const MATCH_FNMSUB_D: u32 = 0x200004b; -const MASK_FNMSUB_D: u32 = 0x600007f; -const MATCH_FNMSUB_H: u32 = 0x400004b; -const MASK_FNMSUB_H: u32 = 0x600007f; -const MATCH_FNMSUB_Q: u32 = 0x600004b; -const MASK_FNMSUB_Q: u32 = 0x600007f; -const MATCH_FNMSUB_S: u32 = 0x4b; -const MASK_FNMSUB_S: u32 = 0x600007f; -const MATCH_FROUND_D: u32 = 0x42400053; -const MASK_FROUND_D: u32 = 0xfff0007f; -const MATCH_FROUND_H: u32 = 0x44400053; -const MASK_FROUND_H: u32 = 0xfff0007f; -const MATCH_FROUND_Q: u32 = 0x46400053; -const MASK_FROUND_Q: u32 = 0xfff0007f; -const MATCH_FROUND_S: u32 = 0x40400053; -const MASK_FROUND_S: u32 = 0xfff0007f; -const MATCH_FROUNDNX_D: u32 = 0x42500053; -const MASK_FROUNDNX_D: u32 = 0xfff0007f; -const MATCH_FROUNDNX_H: u32 = 0x44500053; -const MASK_FROUNDNX_H: u32 = 0xfff0007f; -const MATCH_FROUNDNX_Q: u32 = 0x46500053; -const MASK_FROUNDNX_Q: u32 = 0xfff0007f; -const MATCH_FROUNDNX_S: u32 = 0x40500053; -const MASK_FROUNDNX_S: u32 = 0xfff0007f; -const MATCH_FSD: u32 = 0x3027; -const MASK_FSD: u32 = 0x707f; -const MATCH_FSGNJ_D: u32 = 0x22000053; -const MASK_FSGNJ_D: u32 = 0xfe00707f; -const MATCH_FSGNJ_H: u32 = 0x24000053; -const MASK_FSGNJ_H: u32 = 0xfe00707f; -const MATCH_FSGNJ_Q: u32 = 0x26000053; -const MASK_FSGNJ_Q: u32 = 0xfe00707f; -const MATCH_FSGNJ_S: u32 = 0x20000053; -const MASK_FSGNJ_S: u32 = 0xfe00707f; -const MATCH_FSGNJN_D: u32 = 0x22001053; -const MASK_FSGNJN_D: u32 = 0xfe00707f; -const MATCH_FSGNJN_H: u32 = 0x24001053; -const MASK_FSGNJN_H: u32 = 0xfe00707f; -const MATCH_FSGNJN_Q: u32 = 0x26001053; -const MASK_FSGNJN_Q: u32 = 0xfe00707f; -const MATCH_FSGNJN_S: u32 = 0x20001053; -const MASK_FSGNJN_S: u32 = 0xfe00707f; -const MATCH_FSGNJX_D: u32 = 0x22002053; -const MASK_FSGNJX_D: u32 = 0xfe00707f; -const MATCH_FSGNJX_H: u32 = 0x24002053; -const MASK_FSGNJX_H: u32 = 0xfe00707f; -const MATCH_FSGNJX_Q: u32 = 0x26002053; -const MASK_FSGNJX_Q: u32 = 0xfe00707f; -const MATCH_FSGNJX_S: u32 = 0x20002053; -const MASK_FSGNJX_S: u32 = 0xfe00707f; -const MATCH_FSH: u32 = 0x1027; -const MASK_FSH: u32 = 0x707f; -const MATCH_FSQ: u32 = 0x4027; -const MASK_FSQ: u32 = 0x707f; -const MATCH_FSQRT_D: u32 = 0x5a000053; -const MASK_FSQRT_D: u32 = 0xfff0007f; -const MATCH_FSQRT_H: u32 = 0x5c000053; -const MASK_FSQRT_H: u32 = 0xfff0007f; -const MATCH_FSQRT_Q: u32 = 0x5e000053; -const MASK_FSQRT_Q: u32 = 0xfff0007f; -const MATCH_FSQRT_S: u32 = 0x58000053; -const MASK_FSQRT_S: u32 = 0xfff0007f; -const MATCH_FSUB_D: u32 = 0xa000053; -const MASK_FSUB_D: u32 = 0xfe00007f; -const MATCH_FSUB_H: u32 = 0xc000053; -const MASK_FSUB_H: u32 = 0xfe00007f; -const MATCH_FSUB_Q: u32 = 0xe000053; -const MASK_FSUB_Q: u32 = 0xfe00007f; -const MATCH_FSUB_S: u32 = 0x8000053; -const MASK_FSUB_S: u32 = 0xfe00007f; -const MATCH_FSW: u32 = 0x2027; -const MASK_FSW: u32 = 0x707f; -const MATCH_HFENCE_GVMA: u32 = 0x62000073; -const MASK_HFENCE_GVMA: u32 = 0xfe007fff; -const MATCH_HFENCE_VVMA: u32 = 0x22000073; -const MASK_HFENCE_VVMA: u32 = 0xfe007fff; -const MATCH_HINVAL_GVMA: u32 = 0x66000073; -const MASK_HINVAL_GVMA: u32 = 0xfe007fff; -const MATCH_HINVAL_VVMA: u32 = 0x26000073; -const MASK_HINVAL_VVMA: u32 = 0xfe007fff; -const MATCH_HLV_B: u32 = 0x60004073; -const MASK_HLV_B: u32 = 0xfff0707f; -const MATCH_HLV_BU: u32 = 0x60104073; -const MASK_HLV_BU: u32 = 0xfff0707f; -const MATCH_HLV_D: u32 = 0x6c004073; -const MASK_HLV_D: u32 = 0xfff0707f; -const MATCH_HLV_H: u32 = 0x64004073; -const MASK_HLV_H: u32 = 0xfff0707f; -const MATCH_HLV_HU: u32 = 0x64104073; -const MASK_HLV_HU: u32 = 0xfff0707f; -const MATCH_HLV_W: u32 = 0x68004073; -const MASK_HLV_W: u32 = 0xfff0707f; -const MATCH_HLV_WU: u32 = 0x68104073; -const MASK_HLV_WU: u32 = 0xfff0707f; -const MATCH_HLVX_HU: u32 = 0x64304073; -const MASK_HLVX_HU: u32 = 0xfff0707f; -const MATCH_HLVX_WU: u32 = 0x68304073; -const MASK_HLVX_WU: u32 = 0xfff0707f; -const MATCH_HSV_B: u32 = 0x62004073; -const MASK_HSV_B: u32 = 0xfe007fff; -const MATCH_HSV_D: u32 = 0x6e004073; -const MASK_HSV_D: u32 = 0xfe007fff; -const MATCH_HSV_H: u32 = 0x66004073; -const MASK_HSV_H: u32 = 0xfe007fff; -const MATCH_HSV_W: u32 = 0x6a004073; -const MASK_HSV_W: u32 = 0xfe007fff; -const MATCH_JAL: u32 = 0x6f; -const MASK_JAL: u32 = 0x7f; -const MATCH_JALR: u32 = 0x67; -const MASK_JALR: u32 = 0x707f; -const MATCH_LB: u32 = 0x3; -const MASK_LB: u32 = 0x707f; -const MATCH_LB_AQ: u32 = 0x3400002f; -const MASK_LB_AQ: u32 = 0xfdf0707f; -const MATCH_LBU: u32 = 0x4003; -const MASK_LBU: u32 = 0x707f; -const MATCH_LD: u32 = 0x3003; -const MASK_LD: u32 = 0x707f; -const MATCH_LD_AQ: u32 = 0x3400302f; -const MASK_LD_AQ: u32 = 0xfdf0707f; -const MATCH_LH: u32 = 0x1003; -const MASK_LH: u32 = 0x707f; -const MATCH_LH_AQ: u32 = 0x3400102f; -const MASK_LH_AQ: u32 = 0xfdf0707f; -const MATCH_LHU: u32 = 0x5003; -const MASK_LHU: u32 = 0x707f; -const MATCH_LPAD: u32 = 0x17; -const MASK_LPAD: u32 = 0xfff; -const MATCH_LR_D: u32 = 0x1000302f; -const MASK_LR_D: u32 = 0xf9f0707f; -const MATCH_LR_W: u32 = 0x1000202f; -const MASK_LR_W: u32 = 0xf9f0707f; -const MATCH_LUI: u32 = 0x37; -const MASK_LUI: u32 = 0x7f; -const MATCH_LW: u32 = 0x2003; -const MASK_LW: u32 = 0x707f; -const MATCH_LW_AQ: u32 = 0x3400202f; -const MASK_LW_AQ: u32 = 0xfdf0707f; -const MATCH_LWU: u32 = 0x6003; -const MASK_LWU: u32 = 0x707f; -const MATCH_MAX: u32 = 0xa006033; -const MASK_MAX: u32 = 0xfe00707f; -const MATCH_MAXU: u32 = 0xa007033; -const MASK_MAXU: u32 = 0xfe00707f; -const MATCH_MIN: u32 = 0xa004033; -const MASK_MIN: u32 = 0xfe00707f; -const MATCH_MINU: u32 = 0xa005033; -const MASK_MINU: u32 = 0xfe00707f; -const MATCH_MNRET: u32 = 0x70200073; -const MASK_MNRET: u32 = 0xffffffff; -const MATCH_MOP_R_N: u32 = 0x81c04073; -const MASK_MOP_R_N: u32 = 0xb3c0707f; -const MATCH_MOP_RR_N: u32 = 0x82004073; -const MASK_MOP_RR_N: u32 = 0xb200707f; -const MATCH_MRET: u32 = 0x30200073; -const MASK_MRET: u32 = 0xffffffff; -const MATCH_MUL: u32 = 0x2000033; -const MASK_MUL: u32 = 0xfe00707f; -const MATCH_MULH: u32 = 0x2001033; -const MASK_MULH: u32 = 0xfe00707f; -const MATCH_MULHSU: u32 = 0x2002033; -const MASK_MULHSU: u32 = 0xfe00707f; -const MATCH_MULHU: u32 = 0x2003033; -const MASK_MULHU: u32 = 0xfe00707f; -const MATCH_MULW: u32 = 0x200003b; -const MASK_MULW: u32 = 0xfe00707f; -const MATCH_OR: u32 = 0x6033; -const MASK_OR: u32 = 0xfe00707f; -const MATCH_ORC_B: u32 = 0x28705013; -const MASK_ORC_B: u32 = 0xfff0707f; -const MATCH_ORI: u32 = 0x6013; -const MASK_ORI: u32 = 0x707f; -const MATCH_ORN: u32 = 0x40006033; -const MASK_ORN: u32 = 0xfe00707f; -const MATCH_PACK: u32 = 0x8004033; -const MASK_PACK: u32 = 0xfe00707f; -const MATCH_PACKH: u32 = 0x8007033; -const MASK_PACKH: u32 = 0xfe00707f; -const MATCH_PACKW: u32 = 0x800403b; -const MASK_PACKW: u32 = 0xfe00707f; -const MATCH_REM: u32 = 0x2006033; -const MASK_REM: u32 = 0xfe00707f; -const MATCH_REMU: u32 = 0x2007033; -const MASK_REMU: u32 = 0xfe00707f; -const MATCH_REMUW: u32 = 0x200703b; -const MASK_REMUW: u32 = 0xfe00707f; -const MATCH_REMW: u32 = 0x200603b; -const MASK_REMW: u32 = 0xfe00707f; -const MATCH_REV8: u32 = 0x6b805013; -const MASK_REV8: u32 = 0xfff0707f; -const MATCH_ROL: u32 = 0x60001033; -const MASK_ROL: u32 = 0xfe00707f; -const MATCH_ROLW: u32 = 0x6000103b; -const MASK_ROLW: u32 = 0xfe00707f; -const MATCH_ROR: u32 = 0x60005033; -const MASK_ROR: u32 = 0xfe00707f; -const MATCH_RORI: u32 = 0x60005013; -const MASK_RORI: u32 = 0xfc00707f; -const MATCH_RORIW: u32 = 0x6000501b; -const MASK_RORIW: u32 = 0xfe00707f; -const MATCH_RORW: u32 = 0x6000503b; -const MASK_RORW: u32 = 0xfe00707f; -const MATCH_SB: u32 = 0x23; -const MASK_SB: u32 = 0x707f; -const MATCH_SB_RL: u32 = 0x3a00002f; -const MASK_SB_RL: u32 = 0xfa007fff; -const MATCH_SC_D: u32 = 0x1800302f; -const MASK_SC_D: u32 = 0xf800707f; -const MATCH_SC_W: u32 = 0x1800202f; -const MASK_SC_W: u32 = 0xf800707f; -const MATCH_SCTRCLR: u32 = 0x10400073; -const MASK_SCTRCLR: u32 = 0xffffffff; -const MATCH_SD: u32 = 0x3023; -const MASK_SD: u32 = 0x707f; -const MATCH_SD_RL: u32 = 0x3a00302f; -const MASK_SD_RL: u32 = 0xfa007fff; -const MATCH_SEXT_B: u32 = 0x60401013; -const MASK_SEXT_B: u32 = 0xfff0707f; -const MATCH_SEXT_H: u32 = 0x60501013; -const MASK_SEXT_H: u32 = 0xfff0707f; -const MATCH_SFENCE_INVAL_IR: u32 = 0x18100073; -const MASK_SFENCE_INVAL_IR: u32 = 0xffffffff; -const MATCH_SFENCE_VMA: u32 = 0x12000073; -const MASK_SFENCE_VMA: u32 = 0xfe007fff; -const MATCH_SFENCE_W_INVAL: u32 = 0x18000073; -const MASK_SFENCE_W_INVAL: u32 = 0xffffffff; -const MATCH_SH: u32 = 0x1023; -const MASK_SH: u32 = 0x707f; -const MATCH_SH1ADD: u32 = 0x20002033; -const MASK_SH1ADD: u32 = 0xfe00707f; -const MATCH_SH1ADD_UW: u32 = 0x2000203b; -const MASK_SH1ADD_UW: u32 = 0xfe00707f; -const MATCH_SH2ADD: u32 = 0x20004033; -const MASK_SH2ADD: u32 = 0xfe00707f; -const MATCH_SH2ADD_UW: u32 = 0x2000403b; -const MASK_SH2ADD_UW: u32 = 0xfe00707f; -const MATCH_SH3ADD: u32 = 0x20006033; -const MASK_SH3ADD: u32 = 0xfe00707f; -const MATCH_SH3ADD_UW: u32 = 0x2000603b; -const MASK_SH3ADD_UW: u32 = 0xfe00707f; -const MATCH_SH_RL: u32 = 0x3a00102f; -const MASK_SH_RL: u32 = 0xfa007fff; -const MATCH_SHA256SIG0: u32 = 0x10201013; -const MASK_SHA256SIG0: u32 = 0xfff0707f; -const MATCH_SHA256SIG1: u32 = 0x10301013; -const MASK_SHA256SIG1: u32 = 0xfff0707f; -const MATCH_SHA256SUM0: u32 = 0x10001013; -const MASK_SHA256SUM0: u32 = 0xfff0707f; -const MATCH_SHA256SUM1: u32 = 0x10101013; -const MASK_SHA256SUM1: u32 = 0xfff0707f; -const MATCH_SHA512SIG0: u32 = 0x10601013; -const MASK_SHA512SIG0: u32 = 0xfff0707f; -const MATCH_SHA512SIG0H: u32 = 0x5c000033; -const MASK_SHA512SIG0H: u32 = 0xfe00707f; -const MATCH_SHA512SIG0L: u32 = 0x54000033; -const MASK_SHA512SIG0L: u32 = 0xfe00707f; -const MATCH_SHA512SIG1: u32 = 0x10701013; -const MASK_SHA512SIG1: u32 = 0xfff0707f; -const MATCH_SHA512SIG1H: u32 = 0x5e000033; -const MASK_SHA512SIG1H: u32 = 0xfe00707f; -const MATCH_SHA512SIG1L: u32 = 0x56000033; -const MASK_SHA512SIG1L: u32 = 0xfe00707f; -const MATCH_SHA512SUM0: u32 = 0x10401013; -const MASK_SHA512SUM0: u32 = 0xfff0707f; -const MATCH_SHA512SUM0R: u32 = 0x50000033; -const MASK_SHA512SUM0R: u32 = 0xfe00707f; -const MATCH_SHA512SUM1: u32 = 0x10501013; -const MASK_SHA512SUM1: u32 = 0xfff0707f; -const MATCH_SHA512SUM1R: u32 = 0x52000033; -const MASK_SHA512SUM1R: u32 = 0xfe00707f; -const MATCH_SINVAL_VMA: u32 = 0x16000073; -const MASK_SINVAL_VMA: u32 = 0xfe007fff; -const MATCH_SLL: u32 = 0x1033; -const MASK_SLL: u32 = 0xfe00707f; -const MATCH_SLLI: u32 = 0x1013; -const MASK_SLLI: u32 = 0xfc00707f; -const MATCH_SLLI_UW: u32 = 0x800101b; -const MASK_SLLI_UW: u32 = 0xfc00707f; -const MATCH_SLLIW: u32 = 0x101b; -const MASK_SLLIW: u32 = 0xfe00707f; -const MATCH_SLLW: u32 = 0x103b; -const MASK_SLLW: u32 = 0xfe00707f; -const MATCH_SLT: u32 = 0x2033; -const MASK_SLT: u32 = 0xfe00707f; -const MATCH_SLTI: u32 = 0x2013; -const MASK_SLTI: u32 = 0x707f; -const MATCH_SLTIU: u32 = 0x3013; -const MASK_SLTIU: u32 = 0x707f; -const MATCH_SLTU: u32 = 0x3033; -const MASK_SLTU: u32 = 0xfe00707f; -const MATCH_SM3P0: u32 = 0x10801013; -const MASK_SM3P0: u32 = 0xfff0707f; -const MATCH_SM3P1: u32 = 0x10901013; -const MASK_SM3P1: u32 = 0xfff0707f; -const MATCH_SM4ED: u32 = 0x30000033; -const MASK_SM4ED: u32 = 0x3e00707f; -const MATCH_SM4KS: u32 = 0x34000033; -const MASK_SM4KS: u32 = 0x3e00707f; -const MATCH_SRA: u32 = 0x40005033; -const MASK_SRA: u32 = 0xfe00707f; -const MATCH_SRAI: u32 = 0x40005013; -const MASK_SRAI: u32 = 0xfc00707f; -const MATCH_SRAIW: u32 = 0x4000501b; -const MASK_SRAIW: u32 = 0xfe00707f; -const MATCH_SRAW: u32 = 0x4000503b; -const MASK_SRAW: u32 = 0xfe00707f; -const MATCH_SRET: u32 = 0x10200073; -const MASK_SRET: u32 = 0xffffffff; -const MATCH_SRL: u32 = 0x5033; -const MASK_SRL: u32 = 0xfe00707f; -const MATCH_SRLI: u32 = 0x5013; -const MASK_SRLI: u32 = 0xfc00707f; -const MATCH_SRLIW: u32 = 0x501b; -const MASK_SRLIW: u32 = 0xfe00707f; -const MATCH_SRLW: u32 = 0x503b; -const MASK_SRLW: u32 = 0xfe00707f; -const MATCH_SSAMOSWAP_D: u32 = 0x4800302f; -const MASK_SSAMOSWAP_D: u32 = 0xf800707f; -const MATCH_SSAMOSWAP_W: u32 = 0x4800202f; -const MASK_SSAMOSWAP_W: u32 = 0xf800707f; -const MATCH_SSPOPCHK_X1: u32 = 0xcdc0c073; -const MASK_SSPOPCHK_X1: u32 = 0xffffffff; -const MATCH_SSPOPCHK_X5: u32 = 0xcdc2c073; -const MASK_SSPOPCHK_X5: u32 = 0xffffffff; -const MATCH_SSPUSH_X1: u32 = 0xce104073; -const MASK_SSPUSH_X1: u32 = 0xffffffff; -const MATCH_SSPUSH_X5: u32 = 0xce504073; -const MASK_SSPUSH_X5: u32 = 0xffffffff; -const MATCH_SSRDP: u32 = 0xcdc04073; -const MASK_SSRDP: u32 = 0xfffff07f; -const MATCH_SUB: u32 = 0x40000033; -const MASK_SUB: u32 = 0xfe00707f; -const MATCH_SUBW: u32 = 0x4000003b; -const MASK_SUBW: u32 = 0xfe00707f; -const MATCH_SW: u32 = 0x2023; -const MASK_SW: u32 = 0x707f; -const MATCH_SW_RL: u32 = 0x3a00202f; -const MASK_SW_RL: u32 = 0xfa007fff; -const MATCH_UNZIP: u32 = 0x8f05013; -const MASK_UNZIP: u32 = 0xfff0707f; -const MATCH_VAADD_VV: u32 = 0x24002057; -const MASK_VAADD_VV: u32 = 0xfc00707f; -const MATCH_VAADD_VX: u32 = 0x24006057; -const MASK_VAADD_VX: u32 = 0xfc00707f; -const MATCH_VAADDU_VV: u32 = 0x20002057; -const MASK_VAADDU_VV: u32 = 0xfc00707f; -const MATCH_VAADDU_VX: u32 = 0x20006057; -const MASK_VAADDU_VX: u32 = 0xfc00707f; -const MATCH_VADC_VIM: u32 = 0x40003057; -const MASK_VADC_VIM: u32 = 0xfe00707f; -const MATCH_VADC_VVM: u32 = 0x40000057; -const MASK_VADC_VVM: u32 = 0xfe00707f; -const MATCH_VADC_VXM: u32 = 0x40004057; -const MASK_VADC_VXM: u32 = 0xfe00707f; -const MATCH_VADD_VI: u32 = 0x3057; -const MASK_VADD_VI: u32 = 0xfc00707f; -const MATCH_VADD_VV: u32 = 0x57; -const MASK_VADD_VV: u32 = 0xfc00707f; -const MATCH_VADD_VX: u32 = 0x4057; -const MASK_VADD_VX: u32 = 0xfc00707f; -const MATCH_VAESDF_VS: u32 = 0xa600a077; -const MASK_VAESDF_VS: u32 = 0xfe0ff07f; -const MATCH_VAESDF_VV: u32 = 0xa200a077; -const MASK_VAESDF_VV: u32 = 0xfe0ff07f; -const MATCH_VAESDM_VS: u32 = 0xa6002077; -const MASK_VAESDM_VS: u32 = 0xfe0ff07f; -const MATCH_VAESDM_VV: u32 = 0xa2002077; -const MASK_VAESDM_VV: u32 = 0xfe0ff07f; -const MATCH_VAESEF_VS: u32 = 0xa601a077; -const MASK_VAESEF_VS: u32 = 0xfe0ff07f; -const MATCH_VAESEF_VV: u32 = 0xa201a077; -const MASK_VAESEF_VV: u32 = 0xfe0ff07f; -const MATCH_VAESEM_VS: u32 = 0xa6012077; -const MASK_VAESEM_VS: u32 = 0xfe0ff07f; -const MATCH_VAESEM_VV: u32 = 0xa2012077; -const MASK_VAESEM_VV: u32 = 0xfe0ff07f; -const MATCH_VAESKF1_VI: u32 = 0x8a002077; -const MASK_VAESKF1_VI: u32 = 0xfe00707f; -const MATCH_VAESKF2_VI: u32 = 0xaa002077; -const MASK_VAESKF2_VI: u32 = 0xfe00707f; -const MATCH_VAESZ_VS: u32 = 0xa603a077; -const MASK_VAESZ_VS: u32 = 0xfe0ff07f; -const MATCH_VAND_VI: u32 = 0x24003057; -const MASK_VAND_VI: u32 = 0xfc00707f; -const MATCH_VAND_VV: u32 = 0x24000057; -const MASK_VAND_VV: u32 = 0xfc00707f; -const MATCH_VAND_VX: u32 = 0x24004057; -const MASK_VAND_VX: u32 = 0xfc00707f; -const MATCH_VANDN_VV: u32 = 0x4000057; -const MASK_VANDN_VV: u32 = 0xfc00707f; -const MATCH_VANDN_VX: u32 = 0x4004057; -const MASK_VANDN_VX: u32 = 0xfc00707f; -const MATCH_VASUB_VV: u32 = 0x2c002057; -const MASK_VASUB_VV: u32 = 0xfc00707f; -const MATCH_VASUB_VX: u32 = 0x2c006057; -const MASK_VASUB_VX: u32 = 0xfc00707f; -const MATCH_VASUBU_VV: u32 = 0x28002057; -const MASK_VASUBU_VV: u32 = 0xfc00707f; -const MATCH_VASUBU_VX: u32 = 0x28006057; -const MASK_VASUBU_VX: u32 = 0xfc00707f; -const MATCH_VBREV8_V: u32 = 0x48042057; -const MASK_VBREV8_V: u32 = 0xfc0ff07f; -const MATCH_VBREV_V: u32 = 0x48052057; -const MASK_VBREV_V: u32 = 0xfc0ff07f; -const MATCH_VCLMUL_VV: u32 = 0x30002057; -const MASK_VCLMUL_VV: u32 = 0xfc00707f; -const MATCH_VCLMUL_VX: u32 = 0x30006057; -const MASK_VCLMUL_VX: u32 = 0xfc00707f; -const MATCH_VCLMULH_VV: u32 = 0x34002057; -const MASK_VCLMULH_VV: u32 = 0xfc00707f; -const MATCH_VCLMULH_VX: u32 = 0x34006057; -const MASK_VCLMULH_VX: u32 = 0xfc00707f; -const MATCH_VCLZ_V: u32 = 0x48062057; -const MASK_VCLZ_V: u32 = 0xfc0ff07f; -const MATCH_VCOMPRESS_VM: u32 = 0x5e002057; -const MASK_VCOMPRESS_VM: u32 = 0xfe00707f; -const MATCH_VCPOP_M: u32 = 0x40082057; -const MASK_VCPOP_M: u32 = 0xfc0ff07f; -const MATCH_VCPOP_V: u32 = 0x48072057; -const MASK_VCPOP_V: u32 = 0xfc0ff07f; -const MATCH_VCTZ_V: u32 = 0x4806a057; -const MASK_VCTZ_V: u32 = 0xfc0ff07f; -const MATCH_VDIV_VV: u32 = 0x84002057; -const MASK_VDIV_VV: u32 = 0xfc00707f; -const MATCH_VDIV_VX: u32 = 0x84006057; -const MASK_VDIV_VX: u32 = 0xfc00707f; -const MATCH_VDIVU_VV: u32 = 0x80002057; -const MASK_VDIVU_VV: u32 = 0xfc00707f; -const MATCH_VDIVU_VX: u32 = 0x80006057; -const MASK_VDIVU_VX: u32 = 0xfc00707f; -const MATCH_VFADD_VF: u32 = 0x5057; -const MASK_VFADD_VF: u32 = 0xfc00707f; -const MATCH_VFADD_VV: u32 = 0x1057; -const MASK_VFADD_VV: u32 = 0xfc00707f; -const MATCH_VFCLASS_V: u32 = 0x4c081057; -const MASK_VFCLASS_V: u32 = 0xfc0ff07f; -const MATCH_VFCVT_F_X_V: u32 = 0x48019057; -const MASK_VFCVT_F_X_V: u32 = 0xfc0ff07f; -const MATCH_VFCVT_F_XU_V: u32 = 0x48011057; -const MASK_VFCVT_F_XU_V: u32 = 0xfc0ff07f; -const MATCH_VFCVT_RTZ_X_F_V: u32 = 0x48039057; -const MASK_VFCVT_RTZ_X_F_V: u32 = 0xfc0ff07f; -const MATCH_VFCVT_RTZ_XU_F_V: u32 = 0x48031057; -const MASK_VFCVT_RTZ_XU_F_V: u32 = 0xfc0ff07f; -const MATCH_VFCVT_X_F_V: u32 = 0x48009057; -const MASK_VFCVT_X_F_V: u32 = 0xfc0ff07f; -const MATCH_VFCVT_XU_F_V: u32 = 0x48001057; -const MASK_VFCVT_XU_F_V: u32 = 0xfc0ff07f; -const MATCH_VFDIV_VF: u32 = 0x80005057; -const MASK_VFDIV_VF: u32 = 0xfc00707f; -const MATCH_VFDIV_VV: u32 = 0x80001057; -const MASK_VFDIV_VV: u32 = 0xfc00707f; -const MATCH_VFIRST_M: u32 = 0x4008a057; -const MASK_VFIRST_M: u32 = 0xfc0ff07f; -const MATCH_VFMACC_VF: u32 = 0xb0005057; -const MASK_VFMACC_VF: u32 = 0xfc00707f; -const MATCH_VFMACC_VV: u32 = 0xb0001057; -const MASK_VFMACC_VV: u32 = 0xfc00707f; -const MATCH_VFMADD_VF: u32 = 0xa0005057; -const MASK_VFMADD_VF: u32 = 0xfc00707f; -const MATCH_VFMADD_VV: u32 = 0xa0001057; -const MASK_VFMADD_VV: u32 = 0xfc00707f; -const MATCH_VFMAX_VF: u32 = 0x18005057; -const MASK_VFMAX_VF: u32 = 0xfc00707f; -const MATCH_VFMAX_VV: u32 = 0x18001057; -const MASK_VFMAX_VV: u32 = 0xfc00707f; -const MATCH_VFMERGE_VFM: u32 = 0x5c005057; -const MASK_VFMERGE_VFM: u32 = 0xfe00707f; -const MATCH_VFMIN_VF: u32 = 0x10005057; -const MASK_VFMIN_VF: u32 = 0xfc00707f; -const MATCH_VFMIN_VV: u32 = 0x10001057; -const MASK_VFMIN_VV: u32 = 0xfc00707f; -const MATCH_VFMSAC_VF: u32 = 0xb8005057; -const MASK_VFMSAC_VF: u32 = 0xfc00707f; -const MATCH_VFMSAC_VV: u32 = 0xb8001057; -const MASK_VFMSAC_VV: u32 = 0xfc00707f; -const MATCH_VFMSUB_VF: u32 = 0xa8005057; -const MASK_VFMSUB_VF: u32 = 0xfc00707f; -const MATCH_VFMSUB_VV: u32 = 0xa8001057; -const MASK_VFMSUB_VV: u32 = 0xfc00707f; -const MATCH_VFMUL_VF: u32 = 0x90005057; -const MASK_VFMUL_VF: u32 = 0xfc00707f; -const MATCH_VFMUL_VV: u32 = 0x90001057; -const MASK_VFMUL_VV: u32 = 0xfc00707f; -const MATCH_VFMV_F_S: u32 = 0x42001057; -const MASK_VFMV_F_S: u32 = 0xfe0ff07f; -const MATCH_VFMV_S_F: u32 = 0x42005057; -const MASK_VFMV_S_F: u32 = 0xfff0707f; -const MATCH_VFMV_V_F: u32 = 0x5e005057; -const MASK_VFMV_V_F: u32 = 0xfff0707f; -const MATCH_VFNCVT_F_F_W: u32 = 0x480a1057; -const MASK_VFNCVT_F_F_W: u32 = 0xfc0ff07f; -const MATCH_VFNCVT_F_X_W: u32 = 0x48099057; -const MASK_VFNCVT_F_X_W: u32 = 0xfc0ff07f; -const MATCH_VFNCVT_F_XU_W: u32 = 0x48091057; -const MASK_VFNCVT_F_XU_W: u32 = 0xfc0ff07f; -const MATCH_VFNCVT_ROD_F_F_W: u32 = 0x480a9057; -const MASK_VFNCVT_ROD_F_F_W: u32 = 0xfc0ff07f; -const MATCH_VFNCVT_RTZ_X_F_W: u32 = 0x480b9057; -const MASK_VFNCVT_RTZ_X_F_W: u32 = 0xfc0ff07f; -const MATCH_VFNCVT_RTZ_XU_F_W: u32 = 0x480b1057; -const MASK_VFNCVT_RTZ_XU_F_W: u32 = 0xfc0ff07f; -const MATCH_VFNCVT_X_F_W: u32 = 0x48089057; -const MASK_VFNCVT_X_F_W: u32 = 0xfc0ff07f; -const MATCH_VFNCVT_XU_F_W: u32 = 0x48081057; -const MASK_VFNCVT_XU_F_W: u32 = 0xfc0ff07f; -const MATCH_VFNCVTBF16_F_F_W: u32 = 0x480e9057; -const MASK_VFNCVTBF16_F_F_W: u32 = 0xfc0ff07f; -const MATCH_VFNMACC_VF: u32 = 0xb4005057; -const MASK_VFNMACC_VF: u32 = 0xfc00707f; -const MATCH_VFNMACC_VV: u32 = 0xb4001057; -const MASK_VFNMACC_VV: u32 = 0xfc00707f; -const MATCH_VFNMADD_VF: u32 = 0xa4005057; -const MASK_VFNMADD_VF: u32 = 0xfc00707f; -const MATCH_VFNMADD_VV: u32 = 0xa4001057; -const MASK_VFNMADD_VV: u32 = 0xfc00707f; -const MATCH_VFNMSAC_VF: u32 = 0xbc005057; -const MASK_VFNMSAC_VF: u32 = 0xfc00707f; -const MATCH_VFNMSAC_VV: u32 = 0xbc001057; -const MASK_VFNMSAC_VV: u32 = 0xfc00707f; -const MATCH_VFNMSUB_VF: u32 = 0xac005057; -const MASK_VFNMSUB_VF: u32 = 0xfc00707f; -const MATCH_VFNMSUB_VV: u32 = 0xac001057; -const MASK_VFNMSUB_VV: u32 = 0xfc00707f; -const MATCH_VFRDIV_VF: u32 = 0x84005057; -const MASK_VFRDIV_VF: u32 = 0xfc00707f; -const MATCH_VFREC7_V: u32 = 0x4c029057; -const MASK_VFREC7_V: u32 = 0xfc0ff07f; -const MATCH_VFREDMAX_VS: u32 = 0x1c001057; -const MASK_VFREDMAX_VS: u32 = 0xfc00707f; -const MATCH_VFREDMIN_VS: u32 = 0x14001057; -const MASK_VFREDMIN_VS: u32 = 0xfc00707f; -const MATCH_VFREDOSUM_VS: u32 = 0xc001057; -const MASK_VFREDOSUM_VS: u32 = 0xfc00707f; -const MATCH_VFREDUSUM_VS: u32 = 0x4001057; -const MASK_VFREDUSUM_VS: u32 = 0xfc00707f; -const MATCH_VFRSQRT7_V: u32 = 0x4c021057; -const MASK_VFRSQRT7_V: u32 = 0xfc0ff07f; -const MATCH_VFRSUB_VF: u32 = 0x9c005057; -const MASK_VFRSUB_VF: u32 = 0xfc00707f; -const MATCH_VFSGNJ_VF: u32 = 0x20005057; -const MASK_VFSGNJ_VF: u32 = 0xfc00707f; -const MATCH_VFSGNJ_VV: u32 = 0x20001057; -const MASK_VFSGNJ_VV: u32 = 0xfc00707f; -const MATCH_VFSGNJN_VF: u32 = 0x24005057; -const MASK_VFSGNJN_VF: u32 = 0xfc00707f; -const MATCH_VFSGNJN_VV: u32 = 0x24001057; -const MASK_VFSGNJN_VV: u32 = 0xfc00707f; -const MATCH_VFSGNJX_VF: u32 = 0x28005057; -const MASK_VFSGNJX_VF: u32 = 0xfc00707f; -const MATCH_VFSGNJX_VV: u32 = 0x28001057; -const MASK_VFSGNJX_VV: u32 = 0xfc00707f; -const MATCH_VFSLIDE1DOWN_VF: u32 = 0x3c005057; -const MASK_VFSLIDE1DOWN_VF: u32 = 0xfc00707f; -const MATCH_VFSLIDE1UP_VF: u32 = 0x38005057; -const MASK_VFSLIDE1UP_VF: u32 = 0xfc00707f; -const MATCH_VFSQRT_V: u32 = 0x4c001057; -const MASK_VFSQRT_V: u32 = 0xfc0ff07f; -const MATCH_VFSUB_VF: u32 = 0x8005057; -const MASK_VFSUB_VF: u32 = 0xfc00707f; -const MATCH_VFSUB_VV: u32 = 0x8001057; -const MASK_VFSUB_VV: u32 = 0xfc00707f; -const MATCH_VFWADD_VF: u32 = 0xc0005057; -const MASK_VFWADD_VF: u32 = 0xfc00707f; -const MATCH_VFWADD_VV: u32 = 0xc0001057; -const MASK_VFWADD_VV: u32 = 0xfc00707f; -const MATCH_VFWADD_WF: u32 = 0xd0005057; -const MASK_VFWADD_WF: u32 = 0xfc00707f; -const MATCH_VFWADD_WV: u32 = 0xd0001057; -const MASK_VFWADD_WV: u32 = 0xfc00707f; -const MATCH_VFWCVT_F_F_V: u32 = 0x48061057; -const MASK_VFWCVT_F_F_V: u32 = 0xfc0ff07f; -const MATCH_VFWCVT_F_X_V: u32 = 0x48059057; -const MASK_VFWCVT_F_X_V: u32 = 0xfc0ff07f; -const MATCH_VFWCVT_F_XU_V: u32 = 0x48051057; -const MASK_VFWCVT_F_XU_V: u32 = 0xfc0ff07f; -const MATCH_VFWCVT_RTZ_X_F_V: u32 = 0x48079057; -const MASK_VFWCVT_RTZ_X_F_V: u32 = 0xfc0ff07f; -const MATCH_VFWCVT_RTZ_XU_F_V: u32 = 0x48071057; -const MASK_VFWCVT_RTZ_XU_F_V: u32 = 0xfc0ff07f; -const MATCH_VFWCVT_X_F_V: u32 = 0x48049057; -const MASK_VFWCVT_X_F_V: u32 = 0xfc0ff07f; -const MATCH_VFWCVT_XU_F_V: u32 = 0x48041057; -const MASK_VFWCVT_XU_F_V: u32 = 0xfc0ff07f; -const MATCH_VFWCVTBF16_F_F_V: u32 = 0x48069057; -const MASK_VFWCVTBF16_F_F_V: u32 = 0xfc0ff07f; -const MATCH_VFWMACC_VF: u32 = 0xf0005057; -const MASK_VFWMACC_VF: u32 = 0xfc00707f; -const MATCH_VFWMACC_VV: u32 = 0xf0001057; -const MASK_VFWMACC_VV: u32 = 0xfc00707f; -const MATCH_VFWMACCBF16_VF: u32 = 0xec005057; -const MASK_VFWMACCBF16_VF: u32 = 0xfc00707f; -const MATCH_VFWMACCBF16_VV: u32 = 0xec001057; -const MASK_VFWMACCBF16_VV: u32 = 0xfc00707f; -const MATCH_VFWMSAC_VF: u32 = 0xf8005057; -const MASK_VFWMSAC_VF: u32 = 0xfc00707f; -const MATCH_VFWMSAC_VV: u32 = 0xf8001057; -const MASK_VFWMSAC_VV: u32 = 0xfc00707f; -const MATCH_VFWMUL_VF: u32 = 0xe0005057; -const MASK_VFWMUL_VF: u32 = 0xfc00707f; -const MATCH_VFWMUL_VV: u32 = 0xe0001057; -const MASK_VFWMUL_VV: u32 = 0xfc00707f; -const MATCH_VFWNMACC_VF: u32 = 0xf4005057; -const MASK_VFWNMACC_VF: u32 = 0xfc00707f; -const MATCH_VFWNMACC_VV: u32 = 0xf4001057; -const MASK_VFWNMACC_VV: u32 = 0xfc00707f; -const MATCH_VFWNMSAC_VF: u32 = 0xfc005057; -const MASK_VFWNMSAC_VF: u32 = 0xfc00707f; -const MATCH_VFWNMSAC_VV: u32 = 0xfc001057; -const MASK_VFWNMSAC_VV: u32 = 0xfc00707f; -const MATCH_VFWREDOSUM_VS: u32 = 0xcc001057; -const MASK_VFWREDOSUM_VS: u32 = 0xfc00707f; -const MATCH_VFWREDUSUM_VS: u32 = 0xc4001057; -const MASK_VFWREDUSUM_VS: u32 = 0xfc00707f; -const MATCH_VFWSUB_VF: u32 = 0xc8005057; -const MASK_VFWSUB_VF: u32 = 0xfc00707f; -const MATCH_VFWSUB_VV: u32 = 0xc8001057; -const MASK_VFWSUB_VV: u32 = 0xfc00707f; -const MATCH_VFWSUB_WF: u32 = 0xd8005057; -const MASK_VFWSUB_WF: u32 = 0xfc00707f; -const MATCH_VFWSUB_WV: u32 = 0xd8001057; -const MASK_VFWSUB_WV: u32 = 0xfc00707f; -const MATCH_VGHSH_VV: u32 = 0xb2002077; -const MASK_VGHSH_VV: u32 = 0xfe00707f; -const MATCH_VGMUL_VV: u32 = 0xa208a077; -const MASK_VGMUL_VV: u32 = 0xfe0ff07f; -const MATCH_VID_V: u32 = 0x5008a057; -const MASK_VID_V: u32 = 0xfdfff07f; -const MATCH_VIOTA_M: u32 = 0x50082057; -const MASK_VIOTA_M: u32 = 0xfc0ff07f; -const MATCH_VL1RE16_V: u32 = 0x2805007; -const MASK_VL1RE16_V: u32 = 0xfff0707f; -const MATCH_VL1RE32_V: u32 = 0x2806007; -const MASK_VL1RE32_V: u32 = 0xfff0707f; -const MATCH_VL1RE64_V: u32 = 0x2807007; -const MASK_VL1RE64_V: u32 = 0xfff0707f; -const MATCH_VL1RE8_V: u32 = 0x2800007; -const MASK_VL1RE8_V: u32 = 0xfff0707f; -const MATCH_VL2RE16_V: u32 = 0x22805007; -const MASK_VL2RE16_V: u32 = 0xfff0707f; -const MATCH_VL2RE32_V: u32 = 0x22806007; -const MASK_VL2RE32_V: u32 = 0xfff0707f; -const MATCH_VL2RE64_V: u32 = 0x22807007; -const MASK_VL2RE64_V: u32 = 0xfff0707f; -const MATCH_VL2RE8_V: u32 = 0x22800007; -const MASK_VL2RE8_V: u32 = 0xfff0707f; -const MATCH_VL4RE16_V: u32 = 0x62805007; -const MASK_VL4RE16_V: u32 = 0xfff0707f; -const MATCH_VL4RE32_V: u32 = 0x62806007; -const MASK_VL4RE32_V: u32 = 0xfff0707f; -const MATCH_VL4RE64_V: u32 = 0x62807007; -const MASK_VL4RE64_V: u32 = 0xfff0707f; -const MATCH_VL4RE8_V: u32 = 0x62800007; -const MASK_VL4RE8_V: u32 = 0xfff0707f; -const MATCH_VL8RE16_V: u32 = 0xe2805007; -const MASK_VL8RE16_V: u32 = 0xfff0707f; -const MATCH_VL8RE32_V: u32 = 0xe2806007; -const MASK_VL8RE32_V: u32 = 0xfff0707f; -const MATCH_VL8RE64_V: u32 = 0xe2807007; -const MASK_VL8RE64_V: u32 = 0xfff0707f; -const MATCH_VL8RE8_V: u32 = 0xe2800007; -const MASK_VL8RE8_V: u32 = 0xfff0707f; -const MATCH_VLE16_V: u32 = 0x5007; -const MASK_VLE16_V: u32 = 0xfdf0707f; -const MATCH_VLE16FF_V: u32 = 0x1005007; -const MASK_VLE16FF_V: u32 = 0xfdf0707f; -const MATCH_VLE32_V: u32 = 0x6007; -const MASK_VLE32_V: u32 = 0xfdf0707f; -const MATCH_VLE32FF_V: u32 = 0x1006007; -const MASK_VLE32FF_V: u32 = 0xfdf0707f; -const MATCH_VLE64_V: u32 = 0x7007; -const MASK_VLE64_V: u32 = 0xfdf0707f; -const MATCH_VLE64FF_V: u32 = 0x1007007; -const MASK_VLE64FF_V: u32 = 0xfdf0707f; -const MATCH_VLE8_V: u32 = 0x7; -const MASK_VLE8_V: u32 = 0xfdf0707f; -const MATCH_VLE8FF_V: u32 = 0x1000007; -const MASK_VLE8FF_V: u32 = 0xfdf0707f; -const MATCH_VLM_V: u32 = 0x2b00007; -const MASK_VLM_V: u32 = 0xfff0707f; -const MATCH_VLOXEI16_V: u32 = 0xc005007; -const MASK_VLOXEI16_V: u32 = 0xfc00707f; -const MATCH_VLOXEI32_V: u32 = 0xc006007; -const MASK_VLOXEI32_V: u32 = 0xfc00707f; -const MATCH_VLOXEI64_V: u32 = 0xc007007; -const MASK_VLOXEI64_V: u32 = 0xfc00707f; -const MATCH_VLOXEI8_V: u32 = 0xc000007; -const MASK_VLOXEI8_V: u32 = 0xfc00707f; -const MATCH_VLOXSEG2EI16_V: u32 = 0x2c005007; -const MASK_VLOXSEG2EI16_V: u32 = 0xfc00707f; -const MATCH_VLOXSEG2EI32_V: u32 = 0x2c006007; -const MASK_VLOXSEG2EI32_V: u32 = 0xfc00707f; -const MATCH_VLOXSEG2EI64_V: u32 = 0x2c007007; -const MASK_VLOXSEG2EI64_V: u32 = 0xfc00707f; -const MATCH_VLOXSEG2EI8_V: u32 = 0x2c000007; -const MASK_VLOXSEG2EI8_V: u32 = 0xfc00707f; -const MATCH_VLOXSEG3EI16_V: u32 = 0x4c005007; -const MASK_VLOXSEG3EI16_V: u32 = 0xfc00707f; -const MATCH_VLOXSEG3EI32_V: u32 = 0x4c006007; -const MASK_VLOXSEG3EI32_V: u32 = 0xfc00707f; -const MATCH_VLOXSEG3EI64_V: u32 = 0x4c007007; -const MASK_VLOXSEG3EI64_V: u32 = 0xfc00707f; -const MATCH_VLOXSEG3EI8_V: u32 = 0x4c000007; -const MASK_VLOXSEG3EI8_V: u32 = 0xfc00707f; -const MATCH_VLOXSEG4EI16_V: u32 = 0x6c005007; -const MASK_VLOXSEG4EI16_V: u32 = 0xfc00707f; -const MATCH_VLOXSEG4EI32_V: u32 = 0x6c006007; -const MASK_VLOXSEG4EI32_V: u32 = 0xfc00707f; -const MATCH_VLOXSEG4EI64_V: u32 = 0x6c007007; -const MASK_VLOXSEG4EI64_V: u32 = 0xfc00707f; -const MATCH_VLOXSEG4EI8_V: u32 = 0x6c000007; -const MASK_VLOXSEG4EI8_V: u32 = 0xfc00707f; -const MATCH_VLOXSEG5EI16_V: u32 = 0x8c005007; -const MASK_VLOXSEG5EI16_V: u32 = 0xfc00707f; -const MATCH_VLOXSEG5EI32_V: u32 = 0x8c006007; -const MASK_VLOXSEG5EI32_V: u32 = 0xfc00707f; -const MATCH_VLOXSEG5EI64_V: u32 = 0x8c007007; -const MASK_VLOXSEG5EI64_V: u32 = 0xfc00707f; -const MATCH_VLOXSEG5EI8_V: u32 = 0x8c000007; -const MASK_VLOXSEG5EI8_V: u32 = 0xfc00707f; -const MATCH_VLOXSEG6EI16_V: u32 = 0xac005007; -const MASK_VLOXSEG6EI16_V: u32 = 0xfc00707f; -const MATCH_VLOXSEG6EI32_V: u32 = 0xac006007; -const MASK_VLOXSEG6EI32_V: u32 = 0xfc00707f; -const MATCH_VLOXSEG6EI64_V: u32 = 0xac007007; -const MASK_VLOXSEG6EI64_V: u32 = 0xfc00707f; -const MATCH_VLOXSEG6EI8_V: u32 = 0xac000007; -const MASK_VLOXSEG6EI8_V: u32 = 0xfc00707f; -const MATCH_VLOXSEG7EI16_V: u32 = 0xcc005007; -const MASK_VLOXSEG7EI16_V: u32 = 0xfc00707f; -const MATCH_VLOXSEG7EI32_V: u32 = 0xcc006007; -const MASK_VLOXSEG7EI32_V: u32 = 0xfc00707f; -const MATCH_VLOXSEG7EI64_V: u32 = 0xcc007007; -const MASK_VLOXSEG7EI64_V: u32 = 0xfc00707f; -const MATCH_VLOXSEG7EI8_V: u32 = 0xcc000007; -const MASK_VLOXSEG7EI8_V: u32 = 0xfc00707f; -const MATCH_VLOXSEG8EI16_V: u32 = 0xec005007; -const MASK_VLOXSEG8EI16_V: u32 = 0xfc00707f; -const MATCH_VLOXSEG8EI32_V: u32 = 0xec006007; -const MASK_VLOXSEG8EI32_V: u32 = 0xfc00707f; -const MATCH_VLOXSEG8EI64_V: u32 = 0xec007007; -const MASK_VLOXSEG8EI64_V: u32 = 0xfc00707f; -const MATCH_VLOXSEG8EI8_V: u32 = 0xec000007; -const MASK_VLOXSEG8EI8_V: u32 = 0xfc00707f; -const MATCH_VLSE16_V: u32 = 0x8005007; -const MASK_VLSE16_V: u32 = 0xfc00707f; -const MATCH_VLSE32_V: u32 = 0x8006007; -const MASK_VLSE32_V: u32 = 0xfc00707f; -const MATCH_VLSE64_V: u32 = 0x8007007; -const MASK_VLSE64_V: u32 = 0xfc00707f; -const MATCH_VLSE8_V: u32 = 0x8000007; -const MASK_VLSE8_V: u32 = 0xfc00707f; -const MATCH_VLSEG2E16_V: u32 = 0x20005007; -const MASK_VLSEG2E16_V: u32 = 0xfdf0707f; -const MATCH_VLSEG2E16FF_V: u32 = 0x21005007; -const MASK_VLSEG2E16FF_V: u32 = 0xfdf0707f; -const MATCH_VLSEG2E32_V: u32 = 0x20006007; -const MASK_VLSEG2E32_V: u32 = 0xfdf0707f; -const MATCH_VLSEG2E32FF_V: u32 = 0x21006007; -const MASK_VLSEG2E32FF_V: u32 = 0xfdf0707f; -const MATCH_VLSEG2E64_V: u32 = 0x20007007; -const MASK_VLSEG2E64_V: u32 = 0xfdf0707f; -const MATCH_VLSEG2E64FF_V: u32 = 0x21007007; -const MASK_VLSEG2E64FF_V: u32 = 0xfdf0707f; -const MATCH_VLSEG2E8_V: u32 = 0x20000007; -const MASK_VLSEG2E8_V: u32 = 0xfdf0707f; -const MATCH_VLSEG2E8FF_V: u32 = 0x21000007; -const MASK_VLSEG2E8FF_V: u32 = 0xfdf0707f; -const MATCH_VLSEG3E16_V: u32 = 0x40005007; -const MASK_VLSEG3E16_V: u32 = 0xfdf0707f; -const MATCH_VLSEG3E16FF_V: u32 = 0x41005007; -const MASK_VLSEG3E16FF_V: u32 = 0xfdf0707f; -const MATCH_VLSEG3E32_V: u32 = 0x40006007; -const MASK_VLSEG3E32_V: u32 = 0xfdf0707f; -const MATCH_VLSEG3E32FF_V: u32 = 0x41006007; -const MASK_VLSEG3E32FF_V: u32 = 0xfdf0707f; -const MATCH_VLSEG3E64_V: u32 = 0x40007007; -const MASK_VLSEG3E64_V: u32 = 0xfdf0707f; -const MATCH_VLSEG3E64FF_V: u32 = 0x41007007; -const MASK_VLSEG3E64FF_V: u32 = 0xfdf0707f; -const MATCH_VLSEG3E8_V: u32 = 0x40000007; -const MASK_VLSEG3E8_V: u32 = 0xfdf0707f; -const MATCH_VLSEG3E8FF_V: u32 = 0x41000007; -const MASK_VLSEG3E8FF_V: u32 = 0xfdf0707f; -const MATCH_VLSEG4E16_V: u32 = 0x60005007; -const MASK_VLSEG4E16_V: u32 = 0xfdf0707f; -const MATCH_VLSEG4E16FF_V: u32 = 0x61005007; -const MASK_VLSEG4E16FF_V: u32 = 0xfdf0707f; -const MATCH_VLSEG4E32_V: u32 = 0x60006007; -const MASK_VLSEG4E32_V: u32 = 0xfdf0707f; -const MATCH_VLSEG4E32FF_V: u32 = 0x61006007; -const MASK_VLSEG4E32FF_V: u32 = 0xfdf0707f; -const MATCH_VLSEG4E64_V: u32 = 0x60007007; -const MASK_VLSEG4E64_V: u32 = 0xfdf0707f; -const MATCH_VLSEG4E64FF_V: u32 = 0x61007007; -const MASK_VLSEG4E64FF_V: u32 = 0xfdf0707f; -const MATCH_VLSEG4E8_V: u32 = 0x60000007; -const MASK_VLSEG4E8_V: u32 = 0xfdf0707f; -const MATCH_VLSEG4E8FF_V: u32 = 0x61000007; -const MASK_VLSEG4E8FF_V: u32 = 0xfdf0707f; -const MATCH_VLSEG5E16_V: u32 = 0x80005007; -const MASK_VLSEG5E16_V: u32 = 0xfdf0707f; -const MATCH_VLSEG5E16FF_V: u32 = 0x81005007; -const MASK_VLSEG5E16FF_V: u32 = 0xfdf0707f; -const MATCH_VLSEG5E32_V: u32 = 0x80006007; -const MASK_VLSEG5E32_V: u32 = 0xfdf0707f; -const MATCH_VLSEG5E32FF_V: u32 = 0x81006007; -const MASK_VLSEG5E32FF_V: u32 = 0xfdf0707f; -const MATCH_VLSEG5E64_V: u32 = 0x80007007; -const MASK_VLSEG5E64_V: u32 = 0xfdf0707f; -const MATCH_VLSEG5E64FF_V: u32 = 0x81007007; -const MASK_VLSEG5E64FF_V: u32 = 0xfdf0707f; -const MATCH_VLSEG5E8_V: u32 = 0x80000007; -const MASK_VLSEG5E8_V: u32 = 0xfdf0707f; -const MATCH_VLSEG5E8FF_V: u32 = 0x81000007; -const MASK_VLSEG5E8FF_V: u32 = 0xfdf0707f; -const MATCH_VLSEG6E16_V: u32 = 0xa0005007; -const MASK_VLSEG6E16_V: u32 = 0xfdf0707f; -const MATCH_VLSEG6E16FF_V: u32 = 0xa1005007; -const MASK_VLSEG6E16FF_V: u32 = 0xfdf0707f; -const MATCH_VLSEG6E32_V: u32 = 0xa0006007; -const MASK_VLSEG6E32_V: u32 = 0xfdf0707f; -const MATCH_VLSEG6E32FF_V: u32 = 0xa1006007; -const MASK_VLSEG6E32FF_V: u32 = 0xfdf0707f; -const MATCH_VLSEG6E64_V: u32 = 0xa0007007; -const MASK_VLSEG6E64_V: u32 = 0xfdf0707f; -const MATCH_VLSEG6E64FF_V: u32 = 0xa1007007; -const MASK_VLSEG6E64FF_V: u32 = 0xfdf0707f; -const MATCH_VLSEG6E8_V: u32 = 0xa0000007; -const MASK_VLSEG6E8_V: u32 = 0xfdf0707f; -const MATCH_VLSEG6E8FF_V: u32 = 0xa1000007; -const MASK_VLSEG6E8FF_V: u32 = 0xfdf0707f; -const MATCH_VLSEG7E16_V: u32 = 0xc0005007; -const MASK_VLSEG7E16_V: u32 = 0xfdf0707f; -const MATCH_VLSEG7E16FF_V: u32 = 0xc1005007; -const MASK_VLSEG7E16FF_V: u32 = 0xfdf0707f; -const MATCH_VLSEG7E32_V: u32 = 0xc0006007; -const MASK_VLSEG7E32_V: u32 = 0xfdf0707f; -const MATCH_VLSEG7E32FF_V: u32 = 0xc1006007; -const MASK_VLSEG7E32FF_V: u32 = 0xfdf0707f; -const MATCH_VLSEG7E64_V: u32 = 0xc0007007; -const MASK_VLSEG7E64_V: u32 = 0xfdf0707f; -const MATCH_VLSEG7E64FF_V: u32 = 0xc1007007; -const MASK_VLSEG7E64FF_V: u32 = 0xfdf0707f; -const MATCH_VLSEG7E8_V: u32 = 0xc0000007; -const MASK_VLSEG7E8_V: u32 = 0xfdf0707f; -const MATCH_VLSEG7E8FF_V: u32 = 0xc1000007; -const MASK_VLSEG7E8FF_V: u32 = 0xfdf0707f; -const MATCH_VLSEG8E16_V: u32 = 0xe0005007; -const MASK_VLSEG8E16_V: u32 = 0xfdf0707f; -const MATCH_VLSEG8E16FF_V: u32 = 0xe1005007; -const MASK_VLSEG8E16FF_V: u32 = 0xfdf0707f; -const MATCH_VLSEG8E32_V: u32 = 0xe0006007; -const MASK_VLSEG8E32_V: u32 = 0xfdf0707f; -const MATCH_VLSEG8E32FF_V: u32 = 0xe1006007; -const MASK_VLSEG8E32FF_V: u32 = 0xfdf0707f; -const MATCH_VLSEG8E64_V: u32 = 0xe0007007; -const MASK_VLSEG8E64_V: u32 = 0xfdf0707f; -const MATCH_VLSEG8E64FF_V: u32 = 0xe1007007; -const MASK_VLSEG8E64FF_V: u32 = 0xfdf0707f; -const MATCH_VLSEG8E8_V: u32 = 0xe0000007; -const MASK_VLSEG8E8_V: u32 = 0xfdf0707f; -const MATCH_VLSEG8E8FF_V: u32 = 0xe1000007; -const MASK_VLSEG8E8FF_V: u32 = 0xfdf0707f; -const MATCH_VLSSEG2E16_V: u32 = 0x28005007; -const MASK_VLSSEG2E16_V: u32 = 0xfc00707f; -const MATCH_VLSSEG2E32_V: u32 = 0x28006007; -const MASK_VLSSEG2E32_V: u32 = 0xfc00707f; -const MATCH_VLSSEG2E64_V: u32 = 0x28007007; -const MASK_VLSSEG2E64_V: u32 = 0xfc00707f; -const MATCH_VLSSEG2E8_V: u32 = 0x28000007; -const MASK_VLSSEG2E8_V: u32 = 0xfc00707f; -const MATCH_VLSSEG3E16_V: u32 = 0x48005007; -const MASK_VLSSEG3E16_V: u32 = 0xfc00707f; -const MATCH_VLSSEG3E32_V: u32 = 0x48006007; -const MASK_VLSSEG3E32_V: u32 = 0xfc00707f; -const MATCH_VLSSEG3E64_V: u32 = 0x48007007; -const MASK_VLSSEG3E64_V: u32 = 0xfc00707f; -const MATCH_VLSSEG3E8_V: u32 = 0x48000007; -const MASK_VLSSEG3E8_V: u32 = 0xfc00707f; -const MATCH_VLSSEG4E16_V: u32 = 0x68005007; -const MASK_VLSSEG4E16_V: u32 = 0xfc00707f; -const MATCH_VLSSEG4E32_V: u32 = 0x68006007; -const MASK_VLSSEG4E32_V: u32 = 0xfc00707f; -const MATCH_VLSSEG4E64_V: u32 = 0x68007007; -const MASK_VLSSEG4E64_V: u32 = 0xfc00707f; -const MATCH_VLSSEG4E8_V: u32 = 0x68000007; -const MASK_VLSSEG4E8_V: u32 = 0xfc00707f; -const MATCH_VLSSEG5E16_V: u32 = 0x88005007; -const MASK_VLSSEG5E16_V: u32 = 0xfc00707f; -const MATCH_VLSSEG5E32_V: u32 = 0x88006007; -const MASK_VLSSEG5E32_V: u32 = 0xfc00707f; -const MATCH_VLSSEG5E64_V: u32 = 0x88007007; -const MASK_VLSSEG5E64_V: u32 = 0xfc00707f; -const MATCH_VLSSEG5E8_V: u32 = 0x88000007; -const MASK_VLSSEG5E8_V: u32 = 0xfc00707f; -const MATCH_VLSSEG6E16_V: u32 = 0xa8005007; -const MASK_VLSSEG6E16_V: u32 = 0xfc00707f; -const MATCH_VLSSEG6E32_V: u32 = 0xa8006007; -const MASK_VLSSEG6E32_V: u32 = 0xfc00707f; -const MATCH_VLSSEG6E64_V: u32 = 0xa8007007; -const MASK_VLSSEG6E64_V: u32 = 0xfc00707f; -const MATCH_VLSSEG6E8_V: u32 = 0xa8000007; -const MASK_VLSSEG6E8_V: u32 = 0xfc00707f; -const MATCH_VLSSEG7E16_V: u32 = 0xc8005007; -const MASK_VLSSEG7E16_V: u32 = 0xfc00707f; -const MATCH_VLSSEG7E32_V: u32 = 0xc8006007; -const MASK_VLSSEG7E32_V: u32 = 0xfc00707f; -const MATCH_VLSSEG7E64_V: u32 = 0xc8007007; -const MASK_VLSSEG7E64_V: u32 = 0xfc00707f; -const MATCH_VLSSEG7E8_V: u32 = 0xc8000007; -const MASK_VLSSEG7E8_V: u32 = 0xfc00707f; -const MATCH_VLSSEG8E16_V: u32 = 0xe8005007; -const MASK_VLSSEG8E16_V: u32 = 0xfc00707f; -const MATCH_VLSSEG8E32_V: u32 = 0xe8006007; -const MASK_VLSSEG8E32_V: u32 = 0xfc00707f; -const MATCH_VLSSEG8E64_V: u32 = 0xe8007007; -const MASK_VLSSEG8E64_V: u32 = 0xfc00707f; -const MATCH_VLSSEG8E8_V: u32 = 0xe8000007; -const MASK_VLSSEG8E8_V: u32 = 0xfc00707f; -const MATCH_VLUXEI16_V: u32 = 0x4005007; -const MASK_VLUXEI16_V: u32 = 0xfc00707f; -const MATCH_VLUXEI32_V: u32 = 0x4006007; -const MASK_VLUXEI32_V: u32 = 0xfc00707f; -const MATCH_VLUXEI64_V: u32 = 0x4007007; -const MASK_VLUXEI64_V: u32 = 0xfc00707f; -const MATCH_VLUXEI8_V: u32 = 0x4000007; -const MASK_VLUXEI8_V: u32 = 0xfc00707f; -const MATCH_VLUXSEG2EI16_V: u32 = 0x24005007; -const MASK_VLUXSEG2EI16_V: u32 = 0xfc00707f; -const MATCH_VLUXSEG2EI32_V: u32 = 0x24006007; -const MASK_VLUXSEG2EI32_V: u32 = 0xfc00707f; -const MATCH_VLUXSEG2EI64_V: u32 = 0x24007007; -const MASK_VLUXSEG2EI64_V: u32 = 0xfc00707f; -const MATCH_VLUXSEG2EI8_V: u32 = 0x24000007; -const MASK_VLUXSEG2EI8_V: u32 = 0xfc00707f; -const MATCH_VLUXSEG3EI16_V: u32 = 0x44005007; -const MASK_VLUXSEG3EI16_V: u32 = 0xfc00707f; -const MATCH_VLUXSEG3EI32_V: u32 = 0x44006007; -const MASK_VLUXSEG3EI32_V: u32 = 0xfc00707f; -const MATCH_VLUXSEG3EI64_V: u32 = 0x44007007; -const MASK_VLUXSEG3EI64_V: u32 = 0xfc00707f; -const MATCH_VLUXSEG3EI8_V: u32 = 0x44000007; -const MASK_VLUXSEG3EI8_V: u32 = 0xfc00707f; -const MATCH_VLUXSEG4EI16_V: u32 = 0x64005007; -const MASK_VLUXSEG4EI16_V: u32 = 0xfc00707f; -const MATCH_VLUXSEG4EI32_V: u32 = 0x64006007; -const MASK_VLUXSEG4EI32_V: u32 = 0xfc00707f; -const MATCH_VLUXSEG4EI64_V: u32 = 0x64007007; -const MASK_VLUXSEG4EI64_V: u32 = 0xfc00707f; -const MATCH_VLUXSEG4EI8_V: u32 = 0x64000007; -const MASK_VLUXSEG4EI8_V: u32 = 0xfc00707f; -const MATCH_VLUXSEG5EI16_V: u32 = 0x84005007; -const MASK_VLUXSEG5EI16_V: u32 = 0xfc00707f; -const MATCH_VLUXSEG5EI32_V: u32 = 0x84006007; -const MASK_VLUXSEG5EI32_V: u32 = 0xfc00707f; -const MATCH_VLUXSEG5EI64_V: u32 = 0x84007007; -const MASK_VLUXSEG5EI64_V: u32 = 0xfc00707f; -const MATCH_VLUXSEG5EI8_V: u32 = 0x84000007; -const MASK_VLUXSEG5EI8_V: u32 = 0xfc00707f; -const MATCH_VLUXSEG6EI16_V: u32 = 0xa4005007; -const MASK_VLUXSEG6EI16_V: u32 = 0xfc00707f; -const MATCH_VLUXSEG6EI32_V: u32 = 0xa4006007; -const MASK_VLUXSEG6EI32_V: u32 = 0xfc00707f; -const MATCH_VLUXSEG6EI64_V: u32 = 0xa4007007; -const MASK_VLUXSEG6EI64_V: u32 = 0xfc00707f; -const MATCH_VLUXSEG6EI8_V: u32 = 0xa4000007; -const MASK_VLUXSEG6EI8_V: u32 = 0xfc00707f; -const MATCH_VLUXSEG7EI16_V: u32 = 0xc4005007; -const MASK_VLUXSEG7EI16_V: u32 = 0xfc00707f; -const MATCH_VLUXSEG7EI32_V: u32 = 0xc4006007; -const MASK_VLUXSEG7EI32_V: u32 = 0xfc00707f; -const MATCH_VLUXSEG7EI64_V: u32 = 0xc4007007; -const MASK_VLUXSEG7EI64_V: u32 = 0xfc00707f; -const MATCH_VLUXSEG7EI8_V: u32 = 0xc4000007; -const MASK_VLUXSEG7EI8_V: u32 = 0xfc00707f; -const MATCH_VLUXSEG8EI16_V: u32 = 0xe4005007; -const MASK_VLUXSEG8EI16_V: u32 = 0xfc00707f; -const MATCH_VLUXSEG8EI32_V: u32 = 0xe4006007; -const MASK_VLUXSEG8EI32_V: u32 = 0xfc00707f; -const MATCH_VLUXSEG8EI64_V: u32 = 0xe4007007; -const MASK_VLUXSEG8EI64_V: u32 = 0xfc00707f; -const MATCH_VLUXSEG8EI8_V: u32 = 0xe4000007; -const MASK_VLUXSEG8EI8_V: u32 = 0xfc00707f; -const MATCH_VMACC_VV: u32 = 0xb4002057; -const MASK_VMACC_VV: u32 = 0xfc00707f; -const MATCH_VMACC_VX: u32 = 0xb4006057; -const MASK_VMACC_VX: u32 = 0xfc00707f; -const MATCH_VMADC_VI: u32 = 0x46003057; -const MASK_VMADC_VI: u32 = 0xfe00707f; -const MATCH_VMADC_VIM: u32 = 0x44003057; -const MASK_VMADC_VIM: u32 = 0xfe00707f; -const MATCH_VMADC_VV: u32 = 0x46000057; -const MASK_VMADC_VV: u32 = 0xfe00707f; -const MATCH_VMADC_VVM: u32 = 0x44000057; -const MASK_VMADC_VVM: u32 = 0xfe00707f; -const MATCH_VMADC_VX: u32 = 0x46004057; -const MASK_VMADC_VX: u32 = 0xfe00707f; -const MATCH_VMADC_VXM: u32 = 0x44004057; -const MASK_VMADC_VXM: u32 = 0xfe00707f; -const MATCH_VMADD_VV: u32 = 0xa4002057; -const MASK_VMADD_VV: u32 = 0xfc00707f; -const MATCH_VMADD_VX: u32 = 0xa4006057; -const MASK_VMADD_VX: u32 = 0xfc00707f; -const MATCH_VMAND_MM: u32 = 0x66002057; -const MASK_VMAND_MM: u32 = 0xfe00707f; -const MATCH_VMANDN_MM: u32 = 0x62002057; -const MASK_VMANDN_MM: u32 = 0xfe00707f; -const MATCH_VMAX_VV: u32 = 0x1c000057; -const MASK_VMAX_VV: u32 = 0xfc00707f; -const MATCH_VMAX_VX: u32 = 0x1c004057; -const MASK_VMAX_VX: u32 = 0xfc00707f; -const MATCH_VMAXU_VV: u32 = 0x18000057; -const MASK_VMAXU_VV: u32 = 0xfc00707f; -const MATCH_VMAXU_VX: u32 = 0x18004057; -const MASK_VMAXU_VX: u32 = 0xfc00707f; -const MATCH_VMERGE_VIM: u32 = 0x5c003057; -const MASK_VMERGE_VIM: u32 = 0xfe00707f; -const MATCH_VMERGE_VVM: u32 = 0x5c000057; -const MASK_VMERGE_VVM: u32 = 0xfe00707f; -const MATCH_VMERGE_VXM: u32 = 0x5c004057; -const MASK_VMERGE_VXM: u32 = 0xfe00707f; -const MATCH_VMFEQ_VF: u32 = 0x60005057; -const MASK_VMFEQ_VF: u32 = 0xfc00707f; -const MATCH_VMFEQ_VV: u32 = 0x60001057; -const MASK_VMFEQ_VV: u32 = 0xfc00707f; -const MATCH_VMFGE_VF: u32 = 0x7c005057; -const MASK_VMFGE_VF: u32 = 0xfc00707f; -const MATCH_VMFGT_VF: u32 = 0x74005057; -const MASK_VMFGT_VF: u32 = 0xfc00707f; -const MATCH_VMFLE_VF: u32 = 0x64005057; -const MASK_VMFLE_VF: u32 = 0xfc00707f; -const MATCH_VMFLE_VV: u32 = 0x64001057; -const MASK_VMFLE_VV: u32 = 0xfc00707f; -const MATCH_VMFLT_VF: u32 = 0x6c005057; -const MASK_VMFLT_VF: u32 = 0xfc00707f; -const MATCH_VMFLT_VV: u32 = 0x6c001057; -const MASK_VMFLT_VV: u32 = 0xfc00707f; -const MATCH_VMFNE_VF: u32 = 0x70005057; -const MASK_VMFNE_VF: u32 = 0xfc00707f; -const MATCH_VMFNE_VV: u32 = 0x70001057; -const MASK_VMFNE_VV: u32 = 0xfc00707f; -const MATCH_VMIN_VV: u32 = 0x14000057; -const MASK_VMIN_VV: u32 = 0xfc00707f; -const MATCH_VMIN_VX: u32 = 0x14004057; -const MASK_VMIN_VX: u32 = 0xfc00707f; -const MATCH_VMINU_VV: u32 = 0x10000057; -const MASK_VMINU_VV: u32 = 0xfc00707f; -const MATCH_VMINU_VX: u32 = 0x10004057; -const MASK_VMINU_VX: u32 = 0xfc00707f; -const MATCH_VMNAND_MM: u32 = 0x76002057; -const MASK_VMNAND_MM: u32 = 0xfe00707f; -const MATCH_VMNOR_MM: u32 = 0x7a002057; -const MASK_VMNOR_MM: u32 = 0xfe00707f; -const MATCH_VMOR_MM: u32 = 0x6a002057; -const MASK_VMOR_MM: u32 = 0xfe00707f; -const MATCH_VMORN_MM: u32 = 0x72002057; -const MASK_VMORN_MM: u32 = 0xfe00707f; -const MATCH_VMSBC_VV: u32 = 0x4e000057; -const MASK_VMSBC_VV: u32 = 0xfe00707f; -const MATCH_VMSBC_VVM: u32 = 0x4c000057; -const MASK_VMSBC_VVM: u32 = 0xfe00707f; -const MATCH_VMSBC_VX: u32 = 0x4e004057; -const MASK_VMSBC_VX: u32 = 0xfe00707f; -const MATCH_VMSBC_VXM: u32 = 0x4c004057; -const MASK_VMSBC_VXM: u32 = 0xfe00707f; -const MATCH_VMSBF_M: u32 = 0x5000a057; -const MASK_VMSBF_M: u32 = 0xfc0ff07f; -const MATCH_VMSEQ_VI: u32 = 0x60003057; -const MASK_VMSEQ_VI: u32 = 0xfc00707f; -const MATCH_VMSEQ_VV: u32 = 0x60000057; -const MASK_VMSEQ_VV: u32 = 0xfc00707f; -const MATCH_VMSEQ_VX: u32 = 0x60004057; -const MASK_VMSEQ_VX: u32 = 0xfc00707f; -const MATCH_VMSGT_VI: u32 = 0x7c003057; -const MASK_VMSGT_VI: u32 = 0xfc00707f; -const MATCH_VMSGT_VX: u32 = 0x7c004057; -const MASK_VMSGT_VX: u32 = 0xfc00707f; -const MATCH_VMSGTU_VI: u32 = 0x78003057; -const MASK_VMSGTU_VI: u32 = 0xfc00707f; -const MATCH_VMSGTU_VX: u32 = 0x78004057; -const MASK_VMSGTU_VX: u32 = 0xfc00707f; -const MATCH_VMSIF_M: u32 = 0x5001a057; -const MASK_VMSIF_M: u32 = 0xfc0ff07f; -const MATCH_VMSLE_VI: u32 = 0x74003057; -const MASK_VMSLE_VI: u32 = 0xfc00707f; -const MATCH_VMSLE_VV: u32 = 0x74000057; -const MASK_VMSLE_VV: u32 = 0xfc00707f; -const MATCH_VMSLE_VX: u32 = 0x74004057; -const MASK_VMSLE_VX: u32 = 0xfc00707f; -const MATCH_VMSLEU_VI: u32 = 0x70003057; -const MASK_VMSLEU_VI: u32 = 0xfc00707f; -const MATCH_VMSLEU_VV: u32 = 0x70000057; -const MASK_VMSLEU_VV: u32 = 0xfc00707f; -const MATCH_VMSLEU_VX: u32 = 0x70004057; -const MASK_VMSLEU_VX: u32 = 0xfc00707f; -const MATCH_VMSLT_VV: u32 = 0x6c000057; -const MASK_VMSLT_VV: u32 = 0xfc00707f; -const MATCH_VMSLT_VX: u32 = 0x6c004057; -const MASK_VMSLT_VX: u32 = 0xfc00707f; -const MATCH_VMSLTU_VV: u32 = 0x68000057; -const MASK_VMSLTU_VV: u32 = 0xfc00707f; -const MATCH_VMSLTU_VX: u32 = 0x68004057; -const MASK_VMSLTU_VX: u32 = 0xfc00707f; -const MATCH_VMSNE_VI: u32 = 0x64003057; -const MASK_VMSNE_VI: u32 = 0xfc00707f; -const MATCH_VMSNE_VV: u32 = 0x64000057; -const MASK_VMSNE_VV: u32 = 0xfc00707f; -const MATCH_VMSNE_VX: u32 = 0x64004057; -const MASK_VMSNE_VX: u32 = 0xfc00707f; -const MATCH_VMSOF_M: u32 = 0x50012057; -const MASK_VMSOF_M: u32 = 0xfc0ff07f; -const MATCH_VMUL_VV: u32 = 0x94002057; -const MASK_VMUL_VV: u32 = 0xfc00707f; -const MATCH_VMUL_VX: u32 = 0x94006057; -const MASK_VMUL_VX: u32 = 0xfc00707f; -const MATCH_VMULH_VV: u32 = 0x9c002057; -const MASK_VMULH_VV: u32 = 0xfc00707f; -const MATCH_VMULH_VX: u32 = 0x9c006057; -const MASK_VMULH_VX: u32 = 0xfc00707f; -const MATCH_VMULHSU_VV: u32 = 0x98002057; -const MASK_VMULHSU_VV: u32 = 0xfc00707f; -const MATCH_VMULHSU_VX: u32 = 0x98006057; -const MASK_VMULHSU_VX: u32 = 0xfc00707f; -const MATCH_VMULHU_VV: u32 = 0x90002057; -const MASK_VMULHU_VV: u32 = 0xfc00707f; -const MATCH_VMULHU_VX: u32 = 0x90006057; -const MASK_VMULHU_VX: u32 = 0xfc00707f; -const MATCH_VMV1R_V: u32 = 0x9e003057; -const MASK_VMV1R_V: u32 = 0xfe0ff07f; -const MATCH_VMV2R_V: u32 = 0x9e00b057; -const MASK_VMV2R_V: u32 = 0xfe0ff07f; -const MATCH_VMV4R_V: u32 = 0x9e01b057; -const MASK_VMV4R_V: u32 = 0xfe0ff07f; -const MATCH_VMV8R_V: u32 = 0x9e03b057; -const MASK_VMV8R_V: u32 = 0xfe0ff07f; -const MATCH_VMV_S_X: u32 = 0x42006057; -const MASK_VMV_S_X: u32 = 0xfff0707f; -const MATCH_VMV_V_I: u32 = 0x5e003057; -const MASK_VMV_V_I: u32 = 0xfff0707f; -const MATCH_VMV_V_V: u32 = 0x5e000057; -const MASK_VMV_V_V: u32 = 0xfff0707f; -const MATCH_VMV_V_X: u32 = 0x5e004057; -const MASK_VMV_V_X: u32 = 0xfff0707f; -const MATCH_VMV_X_S: u32 = 0x42002057; -const MASK_VMV_X_S: u32 = 0xfe0ff07f; -const MATCH_VMXNOR_MM: u32 = 0x7e002057; -const MASK_VMXNOR_MM: u32 = 0xfe00707f; -const MATCH_VMXOR_MM: u32 = 0x6e002057; -const MASK_VMXOR_MM: u32 = 0xfe00707f; -const MATCH_VNCLIP_WI: u32 = 0xbc003057; -const MASK_VNCLIP_WI: u32 = 0xfc00707f; -const MATCH_VNCLIP_WV: u32 = 0xbc000057; -const MASK_VNCLIP_WV: u32 = 0xfc00707f; -const MATCH_VNCLIP_WX: u32 = 0xbc004057; -const MASK_VNCLIP_WX: u32 = 0xfc00707f; -const MATCH_VNCLIPU_WI: u32 = 0xb8003057; -const MASK_VNCLIPU_WI: u32 = 0xfc00707f; -const MATCH_VNCLIPU_WV: u32 = 0xb8000057; -const MASK_VNCLIPU_WV: u32 = 0xfc00707f; -const MATCH_VNCLIPU_WX: u32 = 0xb8004057; -const MASK_VNCLIPU_WX: u32 = 0xfc00707f; -const MATCH_VNMSAC_VV: u32 = 0xbc002057; -const MASK_VNMSAC_VV: u32 = 0xfc00707f; -const MATCH_VNMSAC_VX: u32 = 0xbc006057; -const MASK_VNMSAC_VX: u32 = 0xfc00707f; -const MATCH_VNMSUB_VV: u32 = 0xac002057; -const MASK_VNMSUB_VV: u32 = 0xfc00707f; -const MATCH_VNMSUB_VX: u32 = 0xac006057; -const MASK_VNMSUB_VX: u32 = 0xfc00707f; -const MATCH_VNSRA_WI: u32 = 0xb4003057; -const MASK_VNSRA_WI: u32 = 0xfc00707f; -const MATCH_VNSRA_WV: u32 = 0xb4000057; -const MASK_VNSRA_WV: u32 = 0xfc00707f; -const MATCH_VNSRA_WX: u32 = 0xb4004057; -const MASK_VNSRA_WX: u32 = 0xfc00707f; -const MATCH_VNSRL_WI: u32 = 0xb0003057; -const MASK_VNSRL_WI: u32 = 0xfc00707f; -const MATCH_VNSRL_WV: u32 = 0xb0000057; -const MASK_VNSRL_WV: u32 = 0xfc00707f; -const MATCH_VNSRL_WX: u32 = 0xb0004057; -const MASK_VNSRL_WX: u32 = 0xfc00707f; -const MATCH_VOR_VI: u32 = 0x28003057; -const MASK_VOR_VI: u32 = 0xfc00707f; -const MATCH_VOR_VV: u32 = 0x28000057; -const MASK_VOR_VV: u32 = 0xfc00707f; -const MATCH_VOR_VX: u32 = 0x28004057; -const MASK_VOR_VX: u32 = 0xfc00707f; -const MATCH_VREDAND_VS: u32 = 0x4002057; -const MASK_VREDAND_VS: u32 = 0xfc00707f; -const MATCH_VREDMAX_VS: u32 = 0x1c002057; -const MASK_VREDMAX_VS: u32 = 0xfc00707f; -const MATCH_VREDMAXU_VS: u32 = 0x18002057; -const MASK_VREDMAXU_VS: u32 = 0xfc00707f; -const MATCH_VREDMIN_VS: u32 = 0x14002057; -const MASK_VREDMIN_VS: u32 = 0xfc00707f; -const MATCH_VREDMINU_VS: u32 = 0x10002057; -const MASK_VREDMINU_VS: u32 = 0xfc00707f; -const MATCH_VREDOR_VS: u32 = 0x8002057; -const MASK_VREDOR_VS: u32 = 0xfc00707f; -const MATCH_VREDSUM_VS: u32 = 0x2057; -const MASK_VREDSUM_VS: u32 = 0xfc00707f; -const MATCH_VREDXOR_VS: u32 = 0xc002057; -const MASK_VREDXOR_VS: u32 = 0xfc00707f; -const MATCH_VREM_VV: u32 = 0x8c002057; -const MASK_VREM_VV: u32 = 0xfc00707f; -const MATCH_VREM_VX: u32 = 0x8c006057; -const MASK_VREM_VX: u32 = 0xfc00707f; -const MATCH_VREMU_VV: u32 = 0x88002057; -const MASK_VREMU_VV: u32 = 0xfc00707f; -const MATCH_VREMU_VX: u32 = 0x88006057; -const MASK_VREMU_VX: u32 = 0xfc00707f; -const MATCH_VREV8_V: u32 = 0x4804a057; -const MASK_VREV8_V: u32 = 0xfc0ff07f; -const MATCH_VRGATHER_VI: u32 = 0x30003057; -const MASK_VRGATHER_VI: u32 = 0xfc00707f; -const MATCH_VRGATHER_VV: u32 = 0x30000057; -const MASK_VRGATHER_VV: u32 = 0xfc00707f; -const MATCH_VRGATHER_VX: u32 = 0x30004057; -const MASK_VRGATHER_VX: u32 = 0xfc00707f; -const MATCH_VRGATHEREI16_VV: u32 = 0x38000057; -const MASK_VRGATHEREI16_VV: u32 = 0xfc00707f; -const MATCH_VROL_VV: u32 = 0x54000057; -const MASK_VROL_VV: u32 = 0xfc00707f; -const MATCH_VROL_VX: u32 = 0x54004057; -const MASK_VROL_VX: u32 = 0xfc00707f; -const MATCH_VROR_VI: u32 = 0x50003057; -const MASK_VROR_VI: u32 = 0xf800707f; -const MATCH_VROR_VV: u32 = 0x50000057; -const MASK_VROR_VV: u32 = 0xfc00707f; -const MATCH_VROR_VX: u32 = 0x50004057; -const MASK_VROR_VX: u32 = 0xfc00707f; -const MATCH_VRSUB_VI: u32 = 0xc003057; -const MASK_VRSUB_VI: u32 = 0xfc00707f; -const MATCH_VRSUB_VX: u32 = 0xc004057; -const MASK_VRSUB_VX: u32 = 0xfc00707f; -const MATCH_VS1R_V: u32 = 0x2800027; -const MASK_VS1R_V: u32 = 0xfff0707f; -const MATCH_VS2R_V: u32 = 0x22800027; -const MASK_VS2R_V: u32 = 0xfff0707f; -const MATCH_VS4R_V: u32 = 0x62800027; -const MASK_VS4R_V: u32 = 0xfff0707f; -const MATCH_VS8R_V: u32 = 0xe2800027; -const MASK_VS8R_V: u32 = 0xfff0707f; -const MATCH_VSADD_VI: u32 = 0x84003057; -const MASK_VSADD_VI: u32 = 0xfc00707f; -const MATCH_VSADD_VV: u32 = 0x84000057; -const MASK_VSADD_VV: u32 = 0xfc00707f; -const MATCH_VSADD_VX: u32 = 0x84004057; -const MASK_VSADD_VX: u32 = 0xfc00707f; -const MATCH_VSADDU_VI: u32 = 0x80003057; -const MASK_VSADDU_VI: u32 = 0xfc00707f; -const MATCH_VSADDU_VV: u32 = 0x80000057; -const MASK_VSADDU_VV: u32 = 0xfc00707f; -const MATCH_VSADDU_VX: u32 = 0x80004057; -const MASK_VSADDU_VX: u32 = 0xfc00707f; -const MATCH_VSBC_VVM: u32 = 0x48000057; -const MASK_VSBC_VVM: u32 = 0xfe00707f; -const MATCH_VSBC_VXM: u32 = 0x48004057; -const MASK_VSBC_VXM: u32 = 0xfe00707f; -const MATCH_VSE16_V: u32 = 0x5027; -const MASK_VSE16_V: u32 = 0xfdf0707f; -const MATCH_VSE32_V: u32 = 0x6027; -const MASK_VSE32_V: u32 = 0xfdf0707f; -const MATCH_VSE64_V: u32 = 0x7027; -const MASK_VSE64_V: u32 = 0xfdf0707f; -const MATCH_VSE8_V: u32 = 0x27; -const MASK_VSE8_V: u32 = 0xfdf0707f; -const MATCH_VSETIVLI: u32 = 0xc0007057; -const MASK_VSETIVLI: u32 = 0xc000707f; -const MATCH_VSETVL: u32 = 0x80007057; -const MASK_VSETVL: u32 = 0xfe00707f; -const MATCH_VSETVLI: u32 = 0x7057; -const MASK_VSETVLI: u32 = 0x8000707f; -const MATCH_VSEXT_VF2: u32 = 0x4803a057; -const MASK_VSEXT_VF2: u32 = 0xfc0ff07f; -const MATCH_VSEXT_VF4: u32 = 0x4802a057; -const MASK_VSEXT_VF4: u32 = 0xfc0ff07f; -const MATCH_VSEXT_VF8: u32 = 0x4801a057; -const MASK_VSEXT_VF8: u32 = 0xfc0ff07f; -const MATCH_VSHA2CH_VV: u32 = 0xba002077; -const MASK_VSHA2CH_VV: u32 = 0xfe00707f; -const MATCH_VSHA2CL_VV: u32 = 0xbe002077; -const MASK_VSHA2CL_VV: u32 = 0xfe00707f; -const MATCH_VSHA2MS_VV: u32 = 0xb6002077; -const MASK_VSHA2MS_VV: u32 = 0xfe00707f; -const MATCH_VSLIDE1DOWN_VX: u32 = 0x3c006057; -const MASK_VSLIDE1DOWN_VX: u32 = 0xfc00707f; -const MATCH_VSLIDE1UP_VX: u32 = 0x38006057; -const MASK_VSLIDE1UP_VX: u32 = 0xfc00707f; -const MATCH_VSLIDEDOWN_VI: u32 = 0x3c003057; -const MASK_VSLIDEDOWN_VI: u32 = 0xfc00707f; -const MATCH_VSLIDEDOWN_VX: u32 = 0x3c004057; -const MASK_VSLIDEDOWN_VX: u32 = 0xfc00707f; -const MATCH_VSLIDEUP_VI: u32 = 0x38003057; -const MASK_VSLIDEUP_VI: u32 = 0xfc00707f; -const MATCH_VSLIDEUP_VX: u32 = 0x38004057; -const MASK_VSLIDEUP_VX: u32 = 0xfc00707f; -const MATCH_VSLL_VI: u32 = 0x94003057; -const MASK_VSLL_VI: u32 = 0xfc00707f; -const MATCH_VSLL_VV: u32 = 0x94000057; -const MASK_VSLL_VV: u32 = 0xfc00707f; -const MATCH_VSLL_VX: u32 = 0x94004057; -const MASK_VSLL_VX: u32 = 0xfc00707f; -const MATCH_VSM3C_VI: u32 = 0xae002077; -const MASK_VSM3C_VI: u32 = 0xfe00707f; -const MATCH_VSM3ME_VV: u32 = 0x82002077; -const MASK_VSM3ME_VV: u32 = 0xfe00707f; -const MATCH_VSM4K_VI: u32 = 0x86002077; -const MASK_VSM4K_VI: u32 = 0xfe00707f; -const MATCH_VSM4R_VS: u32 = 0xa6082077; -const MASK_VSM4R_VS: u32 = 0xfe0ff07f; -const MATCH_VSM4R_VV: u32 = 0xa2082077; -const MASK_VSM4R_VV: u32 = 0xfe0ff07f; -const MATCH_VSM_V: u32 = 0x2b00027; -const MASK_VSM_V: u32 = 0xfff0707f; -const MATCH_VSMUL_VV: u32 = 0x9c000057; -const MASK_VSMUL_VV: u32 = 0xfc00707f; -const MATCH_VSMUL_VX: u32 = 0x9c004057; -const MASK_VSMUL_VX: u32 = 0xfc00707f; -const MATCH_VSOXEI16_V: u32 = 0xc005027; -const MASK_VSOXEI16_V: u32 = 0xfc00707f; -const MATCH_VSOXEI32_V: u32 = 0xc006027; -const MASK_VSOXEI32_V: u32 = 0xfc00707f; -const MATCH_VSOXEI64_V: u32 = 0xc007027; -const MASK_VSOXEI64_V: u32 = 0xfc00707f; -const MATCH_VSOXEI8_V: u32 = 0xc000027; -const MASK_VSOXEI8_V: u32 = 0xfc00707f; -const MATCH_VSOXSEG2EI16_V: u32 = 0x2c005027; -const MASK_VSOXSEG2EI16_V: u32 = 0xfc00707f; -const MATCH_VSOXSEG2EI32_V: u32 = 0x2c006027; -const MASK_VSOXSEG2EI32_V: u32 = 0xfc00707f; -const MATCH_VSOXSEG2EI64_V: u32 = 0x2c007027; -const MASK_VSOXSEG2EI64_V: u32 = 0xfc00707f; -const MATCH_VSOXSEG2EI8_V: u32 = 0x2c000027; -const MASK_VSOXSEG2EI8_V: u32 = 0xfc00707f; -const MATCH_VSOXSEG3EI16_V: u32 = 0x4c005027; -const MASK_VSOXSEG3EI16_V: u32 = 0xfc00707f; -const MATCH_VSOXSEG3EI32_V: u32 = 0x4c006027; -const MASK_VSOXSEG3EI32_V: u32 = 0xfc00707f; -const MATCH_VSOXSEG3EI64_V: u32 = 0x4c007027; -const MASK_VSOXSEG3EI64_V: u32 = 0xfc00707f; -const MATCH_VSOXSEG3EI8_V: u32 = 0x4c000027; -const MASK_VSOXSEG3EI8_V: u32 = 0xfc00707f; -const MATCH_VSOXSEG4EI16_V: u32 = 0x6c005027; -const MASK_VSOXSEG4EI16_V: u32 = 0xfc00707f; -const MATCH_VSOXSEG4EI32_V: u32 = 0x6c006027; -const MASK_VSOXSEG4EI32_V: u32 = 0xfc00707f; -const MATCH_VSOXSEG4EI64_V: u32 = 0x6c007027; -const MASK_VSOXSEG4EI64_V: u32 = 0xfc00707f; -const MATCH_VSOXSEG4EI8_V: u32 = 0x6c000027; -const MASK_VSOXSEG4EI8_V: u32 = 0xfc00707f; -const MATCH_VSOXSEG5EI16_V: u32 = 0x8c005027; -const MASK_VSOXSEG5EI16_V: u32 = 0xfc00707f; -const MATCH_VSOXSEG5EI32_V: u32 = 0x8c006027; -const MASK_VSOXSEG5EI32_V: u32 = 0xfc00707f; -const MATCH_VSOXSEG5EI64_V: u32 = 0x8c007027; -const MASK_VSOXSEG5EI64_V: u32 = 0xfc00707f; -const MATCH_VSOXSEG5EI8_V: u32 = 0x8c000027; -const MASK_VSOXSEG5EI8_V: u32 = 0xfc00707f; -const MATCH_VSOXSEG6EI16_V: u32 = 0xac005027; -const MASK_VSOXSEG6EI16_V: u32 = 0xfc00707f; -const MATCH_VSOXSEG6EI32_V: u32 = 0xac006027; -const MASK_VSOXSEG6EI32_V: u32 = 0xfc00707f; -const MATCH_VSOXSEG6EI64_V: u32 = 0xac007027; -const MASK_VSOXSEG6EI64_V: u32 = 0xfc00707f; -const MATCH_VSOXSEG6EI8_V: u32 = 0xac000027; -const MASK_VSOXSEG6EI8_V: u32 = 0xfc00707f; -const MATCH_VSOXSEG7EI16_V: u32 = 0xcc005027; -const MASK_VSOXSEG7EI16_V: u32 = 0xfc00707f; -const MATCH_VSOXSEG7EI32_V: u32 = 0xcc006027; -const MASK_VSOXSEG7EI32_V: u32 = 0xfc00707f; -const MATCH_VSOXSEG7EI64_V: u32 = 0xcc007027; -const MASK_VSOXSEG7EI64_V: u32 = 0xfc00707f; -const MATCH_VSOXSEG7EI8_V: u32 = 0xcc000027; -const MASK_VSOXSEG7EI8_V: u32 = 0xfc00707f; -const MATCH_VSOXSEG8EI16_V: u32 = 0xec005027; -const MASK_VSOXSEG8EI16_V: u32 = 0xfc00707f; -const MATCH_VSOXSEG8EI32_V: u32 = 0xec006027; -const MASK_VSOXSEG8EI32_V: u32 = 0xfc00707f; -const MATCH_VSOXSEG8EI64_V: u32 = 0xec007027; -const MASK_VSOXSEG8EI64_V: u32 = 0xfc00707f; -const MATCH_VSOXSEG8EI8_V: u32 = 0xec000027; -const MASK_VSOXSEG8EI8_V: u32 = 0xfc00707f; -const MATCH_VSRA_VI: u32 = 0xa4003057; -const MASK_VSRA_VI: u32 = 0xfc00707f; -const MATCH_VSRA_VV: u32 = 0xa4000057; -const MASK_VSRA_VV: u32 = 0xfc00707f; -const MATCH_VSRA_VX: u32 = 0xa4004057; -const MASK_VSRA_VX: u32 = 0xfc00707f; -const MATCH_VSRL_VI: u32 = 0xa0003057; -const MASK_VSRL_VI: u32 = 0xfc00707f; -const MATCH_VSRL_VV: u32 = 0xa0000057; -const MASK_VSRL_VV: u32 = 0xfc00707f; -const MATCH_VSRL_VX: u32 = 0xa0004057; -const MASK_VSRL_VX: u32 = 0xfc00707f; -const MATCH_VSSE16_V: u32 = 0x8005027; -const MASK_VSSE16_V: u32 = 0xfc00707f; -const MATCH_VSSE32_V: u32 = 0x8006027; -const MASK_VSSE32_V: u32 = 0xfc00707f; -const MATCH_VSSE64_V: u32 = 0x8007027; -const MASK_VSSE64_V: u32 = 0xfc00707f; -const MATCH_VSSE8_V: u32 = 0x8000027; -const MASK_VSSE8_V: u32 = 0xfc00707f; -const MATCH_VSSEG2E16_V: u32 = 0x20005027; -const MASK_VSSEG2E16_V: u32 = 0xfdf0707f; -const MATCH_VSSEG2E32_V: u32 = 0x20006027; -const MASK_VSSEG2E32_V: u32 = 0xfdf0707f; -const MATCH_VSSEG2E64_V: u32 = 0x20007027; -const MASK_VSSEG2E64_V: u32 = 0xfdf0707f; -const MATCH_VSSEG2E8_V: u32 = 0x20000027; -const MASK_VSSEG2E8_V: u32 = 0xfdf0707f; -const MATCH_VSSEG3E16_V: u32 = 0x40005027; -const MASK_VSSEG3E16_V: u32 = 0xfdf0707f; -const MATCH_VSSEG3E32_V: u32 = 0x40006027; -const MASK_VSSEG3E32_V: u32 = 0xfdf0707f; -const MATCH_VSSEG3E64_V: u32 = 0x40007027; -const MASK_VSSEG3E64_V: u32 = 0xfdf0707f; -const MATCH_VSSEG3E8_V: u32 = 0x40000027; -const MASK_VSSEG3E8_V: u32 = 0xfdf0707f; -const MATCH_VSSEG4E16_V: u32 = 0x60005027; -const MASK_VSSEG4E16_V: u32 = 0xfdf0707f; -const MATCH_VSSEG4E32_V: u32 = 0x60006027; -const MASK_VSSEG4E32_V: u32 = 0xfdf0707f; -const MATCH_VSSEG4E64_V: u32 = 0x60007027; -const MASK_VSSEG4E64_V: u32 = 0xfdf0707f; -const MATCH_VSSEG4E8_V: u32 = 0x60000027; -const MASK_VSSEG4E8_V: u32 = 0xfdf0707f; -const MATCH_VSSEG5E16_V: u32 = 0x80005027; -const MASK_VSSEG5E16_V: u32 = 0xfdf0707f; -const MATCH_VSSEG5E32_V: u32 = 0x80006027; -const MASK_VSSEG5E32_V: u32 = 0xfdf0707f; -const MATCH_VSSEG5E64_V: u32 = 0x80007027; -const MASK_VSSEG5E64_V: u32 = 0xfdf0707f; -const MATCH_VSSEG5E8_V: u32 = 0x80000027; -const MASK_VSSEG5E8_V: u32 = 0xfdf0707f; -const MATCH_VSSEG6E16_V: u32 = 0xa0005027; -const MASK_VSSEG6E16_V: u32 = 0xfdf0707f; -const MATCH_VSSEG6E32_V: u32 = 0xa0006027; -const MASK_VSSEG6E32_V: u32 = 0xfdf0707f; -const MATCH_VSSEG6E64_V: u32 = 0xa0007027; -const MASK_VSSEG6E64_V: u32 = 0xfdf0707f; -const MATCH_VSSEG6E8_V: u32 = 0xa0000027; -const MASK_VSSEG6E8_V: u32 = 0xfdf0707f; -const MATCH_VSSEG7E16_V: u32 = 0xc0005027; -const MASK_VSSEG7E16_V: u32 = 0xfdf0707f; -const MATCH_VSSEG7E32_V: u32 = 0xc0006027; -const MASK_VSSEG7E32_V: u32 = 0xfdf0707f; -const MATCH_VSSEG7E64_V: u32 = 0xc0007027; -const MASK_VSSEG7E64_V: u32 = 0xfdf0707f; -const MATCH_VSSEG7E8_V: u32 = 0xc0000027; -const MASK_VSSEG7E8_V: u32 = 0xfdf0707f; -const MATCH_VSSEG8E16_V: u32 = 0xe0005027; -const MASK_VSSEG8E16_V: u32 = 0xfdf0707f; -const MATCH_VSSEG8E32_V: u32 = 0xe0006027; -const MASK_VSSEG8E32_V: u32 = 0xfdf0707f; -const MATCH_VSSEG8E64_V: u32 = 0xe0007027; -const MASK_VSSEG8E64_V: u32 = 0xfdf0707f; -const MATCH_VSSEG8E8_V: u32 = 0xe0000027; -const MASK_VSSEG8E8_V: u32 = 0xfdf0707f; -const MATCH_VSSRA_VI: u32 = 0xac003057; -const MASK_VSSRA_VI: u32 = 0xfc00707f; -const MATCH_VSSRA_VV: u32 = 0xac000057; -const MASK_VSSRA_VV: u32 = 0xfc00707f; -const MATCH_VSSRA_VX: u32 = 0xac004057; -const MASK_VSSRA_VX: u32 = 0xfc00707f; -const MATCH_VSSRL_VI: u32 = 0xa8003057; -const MASK_VSSRL_VI: u32 = 0xfc00707f; -const MATCH_VSSRL_VV: u32 = 0xa8000057; -const MASK_VSSRL_VV: u32 = 0xfc00707f; -const MATCH_VSSRL_VX: u32 = 0xa8004057; -const MASK_VSSRL_VX: u32 = 0xfc00707f; -const MATCH_VSSSEG2E16_V: u32 = 0x28005027; -const MASK_VSSSEG2E16_V: u32 = 0xfc00707f; -const MATCH_VSSSEG2E32_V: u32 = 0x28006027; -const MASK_VSSSEG2E32_V: u32 = 0xfc00707f; -const MATCH_VSSSEG2E64_V: u32 = 0x28007027; -const MASK_VSSSEG2E64_V: u32 = 0xfc00707f; -const MATCH_VSSSEG2E8_V: u32 = 0x28000027; -const MASK_VSSSEG2E8_V: u32 = 0xfc00707f; -const MATCH_VSSSEG3E16_V: u32 = 0x48005027; -const MASK_VSSSEG3E16_V: u32 = 0xfc00707f; -const MATCH_VSSSEG3E32_V: u32 = 0x48006027; -const MASK_VSSSEG3E32_V: u32 = 0xfc00707f; -const MATCH_VSSSEG3E64_V: u32 = 0x48007027; -const MASK_VSSSEG3E64_V: u32 = 0xfc00707f; -const MATCH_VSSSEG3E8_V: u32 = 0x48000027; -const MASK_VSSSEG3E8_V: u32 = 0xfc00707f; -const MATCH_VSSSEG4E16_V: u32 = 0x68005027; -const MASK_VSSSEG4E16_V: u32 = 0xfc00707f; -const MATCH_VSSSEG4E32_V: u32 = 0x68006027; -const MASK_VSSSEG4E32_V: u32 = 0xfc00707f; -const MATCH_VSSSEG4E64_V: u32 = 0x68007027; -const MASK_VSSSEG4E64_V: u32 = 0xfc00707f; -const MATCH_VSSSEG4E8_V: u32 = 0x68000027; -const MASK_VSSSEG4E8_V: u32 = 0xfc00707f; -const MATCH_VSSSEG5E16_V: u32 = 0x88005027; -const MASK_VSSSEG5E16_V: u32 = 0xfc00707f; -const MATCH_VSSSEG5E32_V: u32 = 0x88006027; -const MASK_VSSSEG5E32_V: u32 = 0xfc00707f; -const MATCH_VSSSEG5E64_V: u32 = 0x88007027; -const MASK_VSSSEG5E64_V: u32 = 0xfc00707f; -const MATCH_VSSSEG5E8_V: u32 = 0x88000027; -const MASK_VSSSEG5E8_V: u32 = 0xfc00707f; -const MATCH_VSSSEG6E16_V: u32 = 0xa8005027; -const MASK_VSSSEG6E16_V: u32 = 0xfc00707f; -const MATCH_VSSSEG6E32_V: u32 = 0xa8006027; -const MASK_VSSSEG6E32_V: u32 = 0xfc00707f; -const MATCH_VSSSEG6E64_V: u32 = 0xa8007027; -const MASK_VSSSEG6E64_V: u32 = 0xfc00707f; -const MATCH_VSSSEG6E8_V: u32 = 0xa8000027; -const MASK_VSSSEG6E8_V: u32 = 0xfc00707f; -const MATCH_VSSSEG7E16_V: u32 = 0xc8005027; -const MASK_VSSSEG7E16_V: u32 = 0xfc00707f; -const MATCH_VSSSEG7E32_V: u32 = 0xc8006027; -const MASK_VSSSEG7E32_V: u32 = 0xfc00707f; -const MATCH_VSSSEG7E64_V: u32 = 0xc8007027; -const MASK_VSSSEG7E64_V: u32 = 0xfc00707f; -const MATCH_VSSSEG7E8_V: u32 = 0xc8000027; -const MASK_VSSSEG7E8_V: u32 = 0xfc00707f; -const MATCH_VSSSEG8E16_V: u32 = 0xe8005027; -const MASK_VSSSEG8E16_V: u32 = 0xfc00707f; -const MATCH_VSSSEG8E32_V: u32 = 0xe8006027; -const MASK_VSSSEG8E32_V: u32 = 0xfc00707f; -const MATCH_VSSSEG8E64_V: u32 = 0xe8007027; -const MASK_VSSSEG8E64_V: u32 = 0xfc00707f; -const MATCH_VSSSEG8E8_V: u32 = 0xe8000027; -const MASK_VSSSEG8E8_V: u32 = 0xfc00707f; -const MATCH_VSSUB_VV: u32 = 0x8c000057; -const MASK_VSSUB_VV: u32 = 0xfc00707f; -const MATCH_VSSUB_VX: u32 = 0x8c004057; -const MASK_VSSUB_VX: u32 = 0xfc00707f; -const MATCH_VSSUBU_VV: u32 = 0x88000057; -const MASK_VSSUBU_VV: u32 = 0xfc00707f; -const MATCH_VSSUBU_VX: u32 = 0x88004057; -const MASK_VSSUBU_VX: u32 = 0xfc00707f; -const MATCH_VSUB_VV: u32 = 0x8000057; -const MASK_VSUB_VV: u32 = 0xfc00707f; -const MATCH_VSUB_VX: u32 = 0x8004057; -const MASK_VSUB_VX: u32 = 0xfc00707f; -const MATCH_VSUXEI16_V: u32 = 0x4005027; -const MASK_VSUXEI16_V: u32 = 0xfc00707f; -const MATCH_VSUXEI32_V: u32 = 0x4006027; -const MASK_VSUXEI32_V: u32 = 0xfc00707f; -const MATCH_VSUXEI64_V: u32 = 0x4007027; -const MASK_VSUXEI64_V: u32 = 0xfc00707f; -const MATCH_VSUXEI8_V: u32 = 0x4000027; -const MASK_VSUXEI8_V: u32 = 0xfc00707f; -const MATCH_VSUXSEG2EI16_V: u32 = 0x24005027; -const MASK_VSUXSEG2EI16_V: u32 = 0xfc00707f; -const MATCH_VSUXSEG2EI32_V: u32 = 0x24006027; -const MASK_VSUXSEG2EI32_V: u32 = 0xfc00707f; -const MATCH_VSUXSEG2EI64_V: u32 = 0x24007027; -const MASK_VSUXSEG2EI64_V: u32 = 0xfc00707f; -const MATCH_VSUXSEG2EI8_V: u32 = 0x24000027; -const MASK_VSUXSEG2EI8_V: u32 = 0xfc00707f; -const MATCH_VSUXSEG3EI16_V: u32 = 0x44005027; -const MASK_VSUXSEG3EI16_V: u32 = 0xfc00707f; -const MATCH_VSUXSEG3EI32_V: u32 = 0x44006027; -const MASK_VSUXSEG3EI32_V: u32 = 0xfc00707f; -const MATCH_VSUXSEG3EI64_V: u32 = 0x44007027; -const MASK_VSUXSEG3EI64_V: u32 = 0xfc00707f; -const MATCH_VSUXSEG3EI8_V: u32 = 0x44000027; -const MASK_VSUXSEG3EI8_V: u32 = 0xfc00707f; -const MATCH_VSUXSEG4EI16_V: u32 = 0x64005027; -const MASK_VSUXSEG4EI16_V: u32 = 0xfc00707f; -const MATCH_VSUXSEG4EI32_V: u32 = 0x64006027; -const MASK_VSUXSEG4EI32_V: u32 = 0xfc00707f; -const MATCH_VSUXSEG4EI64_V: u32 = 0x64007027; -const MASK_VSUXSEG4EI64_V: u32 = 0xfc00707f; -const MATCH_VSUXSEG4EI8_V: u32 = 0x64000027; -const MASK_VSUXSEG4EI8_V: u32 = 0xfc00707f; -const MATCH_VSUXSEG5EI16_V: u32 = 0x84005027; -const MASK_VSUXSEG5EI16_V: u32 = 0xfc00707f; -const MATCH_VSUXSEG5EI32_V: u32 = 0x84006027; -const MASK_VSUXSEG5EI32_V: u32 = 0xfc00707f; -const MATCH_VSUXSEG5EI64_V: u32 = 0x84007027; -const MASK_VSUXSEG5EI64_V: u32 = 0xfc00707f; -const MATCH_VSUXSEG5EI8_V: u32 = 0x84000027; -const MASK_VSUXSEG5EI8_V: u32 = 0xfc00707f; -const MATCH_VSUXSEG6EI16_V: u32 = 0xa4005027; -const MASK_VSUXSEG6EI16_V: u32 = 0xfc00707f; -const MATCH_VSUXSEG6EI32_V: u32 = 0xa4006027; -const MASK_VSUXSEG6EI32_V: u32 = 0xfc00707f; -const MATCH_VSUXSEG6EI64_V: u32 = 0xa4007027; -const MASK_VSUXSEG6EI64_V: u32 = 0xfc00707f; -const MATCH_VSUXSEG6EI8_V: u32 = 0xa4000027; -const MASK_VSUXSEG6EI8_V: u32 = 0xfc00707f; -const MATCH_VSUXSEG7EI16_V: u32 = 0xc4005027; -const MASK_VSUXSEG7EI16_V: u32 = 0xfc00707f; -const MATCH_VSUXSEG7EI32_V: u32 = 0xc4006027; -const MASK_VSUXSEG7EI32_V: u32 = 0xfc00707f; -const MATCH_VSUXSEG7EI64_V: u32 = 0xc4007027; -const MASK_VSUXSEG7EI64_V: u32 = 0xfc00707f; -const MATCH_VSUXSEG7EI8_V: u32 = 0xc4000027; -const MASK_VSUXSEG7EI8_V: u32 = 0xfc00707f; -const MATCH_VSUXSEG8EI16_V: u32 = 0xe4005027; -const MASK_VSUXSEG8EI16_V: u32 = 0xfc00707f; -const MATCH_VSUXSEG8EI32_V: u32 = 0xe4006027; -const MASK_VSUXSEG8EI32_V: u32 = 0xfc00707f; -const MATCH_VSUXSEG8EI64_V: u32 = 0xe4007027; -const MASK_VSUXSEG8EI64_V: u32 = 0xfc00707f; -const MATCH_VSUXSEG8EI8_V: u32 = 0xe4000027; -const MASK_VSUXSEG8EI8_V: u32 = 0xfc00707f; -const MATCH_VWADD_VV: u32 = 0xc4002057; -const MASK_VWADD_VV: u32 = 0xfc00707f; -const MATCH_VWADD_VX: u32 = 0xc4006057; -const MASK_VWADD_VX: u32 = 0xfc00707f; -const MATCH_VWADD_WV: u32 = 0xd4002057; -const MASK_VWADD_WV: u32 = 0xfc00707f; -const MATCH_VWADD_WX: u32 = 0xd4006057; -const MASK_VWADD_WX: u32 = 0xfc00707f; -const MATCH_VWADDU_VV: u32 = 0xc0002057; -const MASK_VWADDU_VV: u32 = 0xfc00707f; -const MATCH_VWADDU_VX: u32 = 0xc0006057; -const MASK_VWADDU_VX: u32 = 0xfc00707f; -const MATCH_VWADDU_WV: u32 = 0xd0002057; -const MASK_VWADDU_WV: u32 = 0xfc00707f; -const MATCH_VWADDU_WX: u32 = 0xd0006057; -const MASK_VWADDU_WX: u32 = 0xfc00707f; -const MATCH_VWMACC_VV: u32 = 0xf4002057; -const MASK_VWMACC_VV: u32 = 0xfc00707f; -const MATCH_VWMACC_VX: u32 = 0xf4006057; -const MASK_VWMACC_VX: u32 = 0xfc00707f; -const MATCH_VWMACCSU_VV: u32 = 0xfc002057; -const MASK_VWMACCSU_VV: u32 = 0xfc00707f; -const MATCH_VWMACCSU_VX: u32 = 0xfc006057; -const MASK_VWMACCSU_VX: u32 = 0xfc00707f; -const MATCH_VWMACCU_VV: u32 = 0xf0002057; -const MASK_VWMACCU_VV: u32 = 0xfc00707f; -const MATCH_VWMACCU_VX: u32 = 0xf0006057; -const MASK_VWMACCU_VX: u32 = 0xfc00707f; -const MATCH_VWMACCUS_VX: u32 = 0xf8006057; -const MASK_VWMACCUS_VX: u32 = 0xfc00707f; -const MATCH_VWMUL_VV: u32 = 0xec002057; -const MASK_VWMUL_VV: u32 = 0xfc00707f; -const MATCH_VWMUL_VX: u32 = 0xec006057; -const MASK_VWMUL_VX: u32 = 0xfc00707f; -const MATCH_VWMULSU_VV: u32 = 0xe8002057; -const MASK_VWMULSU_VV: u32 = 0xfc00707f; -const MATCH_VWMULSU_VX: u32 = 0xe8006057; -const MASK_VWMULSU_VX: u32 = 0xfc00707f; -const MATCH_VWMULU_VV: u32 = 0xe0002057; -const MASK_VWMULU_VV: u32 = 0xfc00707f; -const MATCH_VWMULU_VX: u32 = 0xe0006057; -const MASK_VWMULU_VX: u32 = 0xfc00707f; -const MATCH_VWREDSUM_VS: u32 = 0xc4000057; -const MASK_VWREDSUM_VS: u32 = 0xfc00707f; -const MATCH_VWREDSUMU_VS: u32 = 0xc0000057; -const MASK_VWREDSUMU_VS: u32 = 0xfc00707f; -const MATCH_VWSLL_VI: u32 = 0xd4003057; -const MASK_VWSLL_VI: u32 = 0xfc00707f; -const MATCH_VWSLL_VV: u32 = 0xd4000057; -const MASK_VWSLL_VV: u32 = 0xfc00707f; -const MATCH_VWSLL_VX: u32 = 0xd4004057; -const MASK_VWSLL_VX: u32 = 0xfc00707f; -const MATCH_VWSUB_VV: u32 = 0xcc002057; -const MASK_VWSUB_VV: u32 = 0xfc00707f; -const MATCH_VWSUB_VX: u32 = 0xcc006057; -const MASK_VWSUB_VX: u32 = 0xfc00707f; -const MATCH_VWSUB_WV: u32 = 0xdc002057; -const MASK_VWSUB_WV: u32 = 0xfc00707f; -const MATCH_VWSUB_WX: u32 = 0xdc006057; -const MASK_VWSUB_WX: u32 = 0xfc00707f; -const MATCH_VWSUBU_VV: u32 = 0xc8002057; -const MASK_VWSUBU_VV: u32 = 0xfc00707f; -const MATCH_VWSUBU_VX: u32 = 0xc8006057; -const MASK_VWSUBU_VX: u32 = 0xfc00707f; -const MATCH_VWSUBU_WV: u32 = 0xd8002057; -const MASK_VWSUBU_WV: u32 = 0xfc00707f; -const MATCH_VWSUBU_WX: u32 = 0xd8006057; -const MASK_VWSUBU_WX: u32 = 0xfc00707f; -const MATCH_VXOR_VI: u32 = 0x2c003057; -const MASK_VXOR_VI: u32 = 0xfc00707f; -const MATCH_VXOR_VV: u32 = 0x2c000057; -const MASK_VXOR_VV: u32 = 0xfc00707f; -const MATCH_VXOR_VX: u32 = 0x2c004057; -const MASK_VXOR_VX: u32 = 0xfc00707f; -const MATCH_VZEXT_VF2: u32 = 0x48032057; -const MASK_VZEXT_VF2: u32 = 0xfc0ff07f; -const MATCH_VZEXT_VF4: u32 = 0x48022057; -const MASK_VZEXT_VF4: u32 = 0xfc0ff07f; -const MATCH_VZEXT_VF8: u32 = 0x48012057; -const MASK_VZEXT_VF8: u32 = 0xfc0ff07f; -const MATCH_WFI: u32 = 0x10500073; -const MASK_WFI: u32 = 0xffffffff; -const MATCH_WRS_NTO: u32 = 0xd00073; -const MASK_WRS_NTO: u32 = 0xffffffff; -const MATCH_WRS_STO: u32 = 0x1d00073; -const MASK_WRS_STO: u32 = 0xffffffff; -const MATCH_XNOR: u32 = 0x40004033; -const MASK_XNOR: u32 = 0xfe00707f; -const MATCH_XOR: u32 = 0x4033; -const MASK_XOR: u32 = 0xfe00707f; -const MATCH_XORI: u32 = 0x4013; -const MASK_XORI: u32 = 0x707f; -const MATCH_XPERM4: u32 = 0x28002033; -const MASK_XPERM4: u32 = 0xfe00707f; -const MATCH_XPERM8: u32 = 0x28004033; -const MASK_XPERM8: u32 = 0xfe00707f; -const MATCH_ZEXT_H: u32 = 0x800403b; -const MASK_ZEXT_H: u32 = 0xfff0707f; -const MATCH_ZIP: u32 = 0x8f01013; -const MASK_ZIP: u32 = 0xfff0707f; -const CSR_FFLAGS: u16 = 0x1; -const CSR_FRM: u16 = 0x2; -const CSR_FCSR: u16 = 0x3; -const CSR_VSTART: u16 = 0x8; -const CSR_VXSAT: u16 = 0x9; -const CSR_VXRM: u16 = 0xa; -const CSR_VCSR: u16 = 0xf; -const CSR_SSP: u16 = 0x11; -const CSR_SEED: u16 = 0x15; -const CSR_JVT: u16 = 0x17; -const CSR_CYCLE: u16 = 0xc00; -const CSR_TIME: u16 = 0xc01; -const CSR_INSTRET: u16 = 0xc02; -const CSR_HPMCOUNTER3: u16 = 0xc03; -const CSR_HPMCOUNTER4: u16 = 0xc04; -const CSR_HPMCOUNTER5: u16 = 0xc05; -const CSR_HPMCOUNTER6: u16 = 0xc06; -const CSR_HPMCOUNTER7: u16 = 0xc07; -const CSR_HPMCOUNTER8: u16 = 0xc08; -const CSR_HPMCOUNTER9: u16 = 0xc09; -const CSR_HPMCOUNTER10: u16 = 0xc0a; -const CSR_HPMCOUNTER11: u16 = 0xc0b; -const CSR_HPMCOUNTER12: u16 = 0xc0c; -const CSR_HPMCOUNTER13: u16 = 0xc0d; -const CSR_HPMCOUNTER14: u16 = 0xc0e; -const CSR_HPMCOUNTER15: u16 = 0xc0f; -const CSR_HPMCOUNTER16: u16 = 0xc10; -const CSR_HPMCOUNTER17: u16 = 0xc11; -const CSR_HPMCOUNTER18: u16 = 0xc12; -const CSR_HPMCOUNTER19: u16 = 0xc13; -const CSR_HPMCOUNTER20: u16 = 0xc14; -const CSR_HPMCOUNTER21: u16 = 0xc15; -const CSR_HPMCOUNTER22: u16 = 0xc16; -const CSR_HPMCOUNTER23: u16 = 0xc17; -const CSR_HPMCOUNTER24: u16 = 0xc18; -const CSR_HPMCOUNTER25: u16 = 0xc19; -const CSR_HPMCOUNTER26: u16 = 0xc1a; -const CSR_HPMCOUNTER27: u16 = 0xc1b; -const CSR_HPMCOUNTER28: u16 = 0xc1c; -const CSR_HPMCOUNTER29: u16 = 0xc1d; -const CSR_HPMCOUNTER30: u16 = 0xc1e; -const CSR_HPMCOUNTER31: u16 = 0xc1f; -const CSR_VL: u16 = 0xc20; -const CSR_VTYPE: u16 = 0xc21; -const CSR_VLENB: u16 = 0xc22; -const CSR_SSTATUS: u16 = 0x100; -const CSR_SEDELEG: u16 = 0x102; -const CSR_SIDELEG: u16 = 0x103; -const CSR_SIE: u16 = 0x104; -const CSR_STVEC: u16 = 0x105; -const CSR_SCOUNTEREN: u16 = 0x106; -const CSR_SENVCFG: u16 = 0x10a; -const CSR_SSTATEEN0: u16 = 0x10c; -const CSR_SSTATEEN1: u16 = 0x10d; -const CSR_SSTATEEN2: u16 = 0x10e; -const CSR_SSTATEEN3: u16 = 0x10f; -const CSR_SCOUNTINHIBIT: u16 = 0x120; -const CSR_SSCRATCH: u16 = 0x140; -const CSR_SEPC: u16 = 0x141; -const CSR_SCAUSE: u16 = 0x142; -const CSR_STVAL: u16 = 0x143; -const CSR_SIP: u16 = 0x144; -const CSR_STIMECMP: u16 = 0x14d; -const CSR_SCTRCTL: u16 = 0x14e; -const CSR_SCTRSTATUS: u16 = 0x14f; -const CSR_SISELECT: u16 = 0x150; -const CSR_SIREG: u16 = 0x151; -const CSR_SIREG2: u16 = 0x152; -const CSR_SIREG3: u16 = 0x153; -const CSR_SIREG4: u16 = 0x155; -const CSR_SIREG5: u16 = 0x156; -const CSR_SIREG6: u16 = 0x157; -const CSR_STOPEI: u16 = 0x15c; -const CSR_SCTRDEPTH: u16 = 0x15f; -const CSR_SATP: u16 = 0x180; -const CSR_SRMCFG: u16 = 0x181; -const CSR_SCONTEXT: u16 = 0x5a8; -const CSR_VSSTATUS: u16 = 0x200; -const CSR_VSIE: u16 = 0x204; -const CSR_VSTVEC: u16 = 0x205; -const CSR_VSSCRATCH: u16 = 0x240; -const CSR_VSEPC: u16 = 0x241; -const CSR_VSCAUSE: u16 = 0x242; -const CSR_VSTVAL: u16 = 0x243; -const CSR_VSIP: u16 = 0x244; -const CSR_VSTIMECMP: u16 = 0x24d; -const CSR_VSCTRCTL: u16 = 0x24e; -const CSR_VSISELECT: u16 = 0x250; -const CSR_VSIREG: u16 = 0x251; -const CSR_VSIREG2: u16 = 0x252; -const CSR_VSIREG3: u16 = 0x253; -const CSR_VSIREG4: u16 = 0x255; -const CSR_VSIREG5: u16 = 0x256; -const CSR_VSIREG6: u16 = 0x257; -const CSR_VSTOPEI: u16 = 0x25c; -const CSR_VSATP: u16 = 0x280; -const CSR_HSTATUS: u16 = 0x600; -const CSR_HEDELEG: u16 = 0x602; -const CSR_HIDELEG: u16 = 0x603; -const CSR_HIE: u16 = 0x604; -const CSR_HTIMEDELTA: u16 = 0x605; -const CSR_HCOUNTEREN: u16 = 0x606; -const CSR_HGEIE: u16 = 0x607; -const CSR_HVIEN: u16 = 0x608; -const CSR_HVICTL: u16 = 0x609; -const CSR_HENVCFG: u16 = 0x60a; -const CSR_HSTATEEN0: u16 = 0x60c; -const CSR_HSTATEEN1: u16 = 0x60d; -const CSR_HSTATEEN2: u16 = 0x60e; -const CSR_HSTATEEN3: u16 = 0x60f; -const CSR_HTVAL: u16 = 0x643; -const CSR_HIP: u16 = 0x644; -const CSR_HVIP: u16 = 0x645; -const CSR_HVIPRIO1: u16 = 0x646; -const CSR_HVIPRIO2: u16 = 0x647; -const CSR_HTINST: u16 = 0x64a; -const CSR_HGATP: u16 = 0x680; -const CSR_HCONTEXT: u16 = 0x6a8; -const CSR_HGEIP: u16 = 0xe12; -const CSR_VSTOPI: u16 = 0xeb0; -const CSR_SCOUNTOVF: u16 = 0xda0; -const CSR_STOPI: u16 = 0xdb0; -const CSR_UTVT: u16 = 0x7; -const CSR_UNXTI: u16 = 0x45; -const CSR_UINTSTATUS: u16 = 0x46; -const CSR_USCRATCHCSW: u16 = 0x48; -const CSR_USCRATCHCSWL: u16 = 0x49; -const CSR_STVT: u16 = 0x107; -const CSR_SNXTI: u16 = 0x145; -const CSR_SINTSTATUS: u16 = 0x146; -const CSR_SSCRATCHCSW: u16 = 0x148; -const CSR_SSCRATCHCSWL: u16 = 0x149; -const CSR_MTVT: u16 = 0x307; -const CSR_MNXTI: u16 = 0x345; -const CSR_MINTSTATUS: u16 = 0x346; -const CSR_MSCRATCHCSW: u16 = 0x348; -const CSR_MSCRATCHCSWL: u16 = 0x349; -const CSR_MSTATUS: u16 = 0x300; -const CSR_MISA: u16 = 0x301; -const CSR_MEDELEG: u16 = 0x302; -const CSR_MIDELEG: u16 = 0x303; -const CSR_MIE: u16 = 0x304; -const CSR_MTVEC: u16 = 0x305; -const CSR_MCOUNTEREN: u16 = 0x306; -const CSR_MVIEN: u16 = 0x308; -const CSR_MVIP: u16 = 0x309; -const CSR_MENVCFG: u16 = 0x30a; -const CSR_MSTATEEN0: u16 = 0x30c; -const CSR_MSTATEEN1: u16 = 0x30d; -const CSR_MSTATEEN2: u16 = 0x30e; -const CSR_MSTATEEN3: u16 = 0x30f; -const CSR_MCOUNTINHIBIT: u16 = 0x320; -const CSR_MSCRATCH: u16 = 0x340; -const CSR_MEPC: u16 = 0x341; -const CSR_MCAUSE: u16 = 0x342; -const CSR_MTVAL: u16 = 0x343; -const CSR_MIP: u16 = 0x344; -const CSR_MTINST: u16 = 0x34a; -const CSR_MTVAL2: u16 = 0x34b; -const CSR_MCTRCTL: u16 = 0x34e; -const CSR_MISELECT: u16 = 0x350; -const CSR_MIREG: u16 = 0x351; -const CSR_MIREG2: u16 = 0x352; -const CSR_MIREG3: u16 = 0x353; -const CSR_MIREG4: u16 = 0x355; -const CSR_MIREG5: u16 = 0x356; -const CSR_MIREG6: u16 = 0x357; -const CSR_MTOPEI: u16 = 0x35c; -const CSR_PMPCFG0: u16 = 0x3a0; -const CSR_PMPCFG1: u16 = 0x3a1; -const CSR_PMPCFG2: u16 = 0x3a2; -const CSR_PMPCFG3: u16 = 0x3a3; -const CSR_PMPCFG4: u16 = 0x3a4; -const CSR_PMPCFG5: u16 = 0x3a5; -const CSR_PMPCFG6: u16 = 0x3a6; -const CSR_PMPCFG7: u16 = 0x3a7; -const CSR_PMPCFG8: u16 = 0x3a8; -const CSR_PMPCFG9: u16 = 0x3a9; -const CSR_PMPCFG10: u16 = 0x3aa; -const CSR_PMPCFG11: u16 = 0x3ab; -const CSR_PMPCFG12: u16 = 0x3ac; -const CSR_PMPCFG13: u16 = 0x3ad; -const CSR_PMPCFG14: u16 = 0x3ae; -const CSR_PMPCFG15: u16 = 0x3af; -const CSR_PMPADDR0: u16 = 0x3b0; -const CSR_PMPADDR1: u16 = 0x3b1; -const CSR_PMPADDR2: u16 = 0x3b2; -const CSR_PMPADDR3: u16 = 0x3b3; -const CSR_PMPADDR4: u16 = 0x3b4; -const CSR_PMPADDR5: u16 = 0x3b5; -const CSR_PMPADDR6: u16 = 0x3b6; -const CSR_PMPADDR7: u16 = 0x3b7; -const CSR_PMPADDR8: u16 = 0x3b8; -const CSR_PMPADDR9: u16 = 0x3b9; -const CSR_PMPADDR10: u16 = 0x3ba; -const CSR_PMPADDR11: u16 = 0x3bb; -const CSR_PMPADDR12: u16 = 0x3bc; -const CSR_PMPADDR13: u16 = 0x3bd; -const CSR_PMPADDR14: u16 = 0x3be; -const CSR_PMPADDR15: u16 = 0x3bf; -const CSR_PMPADDR16: u16 = 0x3c0; -const CSR_PMPADDR17: u16 = 0x3c1; -const CSR_PMPADDR18: u16 = 0x3c2; -const CSR_PMPADDR19: u16 = 0x3c3; -const CSR_PMPADDR20: u16 = 0x3c4; -const CSR_PMPADDR21: u16 = 0x3c5; -const CSR_PMPADDR22: u16 = 0x3c6; -const CSR_PMPADDR23: u16 = 0x3c7; -const CSR_PMPADDR24: u16 = 0x3c8; -const CSR_PMPADDR25: u16 = 0x3c9; -const CSR_PMPADDR26: u16 = 0x3ca; -const CSR_PMPADDR27: u16 = 0x3cb; -const CSR_PMPADDR28: u16 = 0x3cc; -const CSR_PMPADDR29: u16 = 0x3cd; -const CSR_PMPADDR30: u16 = 0x3ce; -const CSR_PMPADDR31: u16 = 0x3cf; -const CSR_PMPADDR32: u16 = 0x3d0; -const CSR_PMPADDR33: u16 = 0x3d1; -const CSR_PMPADDR34: u16 = 0x3d2; -const CSR_PMPADDR35: u16 = 0x3d3; -const CSR_PMPADDR36: u16 = 0x3d4; -const CSR_PMPADDR37: u16 = 0x3d5; -const CSR_PMPADDR38: u16 = 0x3d6; -const CSR_PMPADDR39: u16 = 0x3d7; -const CSR_PMPADDR40: u16 = 0x3d8; -const CSR_PMPADDR41: u16 = 0x3d9; -const CSR_PMPADDR42: u16 = 0x3da; -const CSR_PMPADDR43: u16 = 0x3db; -const CSR_PMPADDR44: u16 = 0x3dc; -const CSR_PMPADDR45: u16 = 0x3dd; -const CSR_PMPADDR46: u16 = 0x3de; -const CSR_PMPADDR47: u16 = 0x3df; -const CSR_PMPADDR48: u16 = 0x3e0; -const CSR_PMPADDR49: u16 = 0x3e1; -const CSR_PMPADDR50: u16 = 0x3e2; -const CSR_PMPADDR51: u16 = 0x3e3; -const CSR_PMPADDR52: u16 = 0x3e4; -const CSR_PMPADDR53: u16 = 0x3e5; -const CSR_PMPADDR54: u16 = 0x3e6; -const CSR_PMPADDR55: u16 = 0x3e7; -const CSR_PMPADDR56: u16 = 0x3e8; -const CSR_PMPADDR57: u16 = 0x3e9; -const CSR_PMPADDR58: u16 = 0x3ea; -const CSR_PMPADDR59: u16 = 0x3eb; -const CSR_PMPADDR60: u16 = 0x3ec; -const CSR_PMPADDR61: u16 = 0x3ed; -const CSR_PMPADDR62: u16 = 0x3ee; -const CSR_PMPADDR63: u16 = 0x3ef; -const CSR_MSECCFG: u16 = 0x747; -const CSR_TSELECT: u16 = 0x7a0; -const CSR_TDATA1: u16 = 0x7a1; -const CSR_TDATA2: u16 = 0x7a2; -const CSR_TDATA3: u16 = 0x7a3; -const CSR_TINFO: u16 = 0x7a4; -const CSR_TCONTROL: u16 = 0x7a5; -const CSR_MCONTEXT: u16 = 0x7a8; -const CSR_MSCONTEXT: u16 = 0x7aa; -const CSR_DCSR: u16 = 0x7b0; -const CSR_DPC: u16 = 0x7b1; -const CSR_DSCRATCH0: u16 = 0x7b2; -const CSR_DSCRATCH1: u16 = 0x7b3; -const CSR_MCYCLE: u16 = 0xb00; -const CSR_MINSTRET: u16 = 0xb02; -const CSR_MHPMCOUNTER3: u16 = 0xb03; -const CSR_MHPMCOUNTER4: u16 = 0xb04; -const CSR_MHPMCOUNTER5: u16 = 0xb05; -const CSR_MHPMCOUNTER6: u16 = 0xb06; -const CSR_MHPMCOUNTER7: u16 = 0xb07; -const CSR_MHPMCOUNTER8: u16 = 0xb08; -const CSR_MHPMCOUNTER9: u16 = 0xb09; -const CSR_MHPMCOUNTER10: u16 = 0xb0a; -const CSR_MHPMCOUNTER11: u16 = 0xb0b; -const CSR_MHPMCOUNTER12: u16 = 0xb0c; -const CSR_MHPMCOUNTER13: u16 = 0xb0d; -const CSR_MHPMCOUNTER14: u16 = 0xb0e; -const CSR_MHPMCOUNTER15: u16 = 0xb0f; -const CSR_MHPMCOUNTER16: u16 = 0xb10; -const CSR_MHPMCOUNTER17: u16 = 0xb11; -const CSR_MHPMCOUNTER18: u16 = 0xb12; -const CSR_MHPMCOUNTER19: u16 = 0xb13; -const CSR_MHPMCOUNTER20: u16 = 0xb14; -const CSR_MHPMCOUNTER21: u16 = 0xb15; -const CSR_MHPMCOUNTER22: u16 = 0xb16; -const CSR_MHPMCOUNTER23: u16 = 0xb17; -const CSR_MHPMCOUNTER24: u16 = 0xb18; -const CSR_MHPMCOUNTER25: u16 = 0xb19; -const CSR_MHPMCOUNTER26: u16 = 0xb1a; -const CSR_MHPMCOUNTER27: u16 = 0xb1b; -const CSR_MHPMCOUNTER28: u16 = 0xb1c; -const CSR_MHPMCOUNTER29: u16 = 0xb1d; -const CSR_MHPMCOUNTER30: u16 = 0xb1e; -const CSR_MHPMCOUNTER31: u16 = 0xb1f; -const CSR_MCYCLECFG: u16 = 0x321; -const CSR_MINSTRETCFG: u16 = 0x322; -const CSR_MHPMEVENT3: u16 = 0x323; -const CSR_MHPMEVENT4: u16 = 0x324; -const CSR_MHPMEVENT5: u16 = 0x325; -const CSR_MHPMEVENT6: u16 = 0x326; -const CSR_MHPMEVENT7: u16 = 0x327; -const CSR_MHPMEVENT8: u16 = 0x328; -const CSR_MHPMEVENT9: u16 = 0x329; -const CSR_MHPMEVENT10: u16 = 0x32a; -const CSR_MHPMEVENT11: u16 = 0x32b; -const CSR_MHPMEVENT12: u16 = 0x32c; -const CSR_MHPMEVENT13: u16 = 0x32d; -const CSR_MHPMEVENT14: u16 = 0x32e; -const CSR_MHPMEVENT15: u16 = 0x32f; -const CSR_MHPMEVENT16: u16 = 0x330; -const CSR_MHPMEVENT17: u16 = 0x331; -const CSR_MHPMEVENT18: u16 = 0x332; -const CSR_MHPMEVENT19: u16 = 0x333; -const CSR_MHPMEVENT20: u16 = 0x334; -const CSR_MHPMEVENT21: u16 = 0x335; -const CSR_MHPMEVENT22: u16 = 0x336; -const CSR_MHPMEVENT23: u16 = 0x337; -const CSR_MHPMEVENT24: u16 = 0x338; -const CSR_MHPMEVENT25: u16 = 0x339; -const CSR_MHPMEVENT26: u16 = 0x33a; -const CSR_MHPMEVENT27: u16 = 0x33b; -const CSR_MHPMEVENT28: u16 = 0x33c; -const CSR_MHPMEVENT29: u16 = 0x33d; -const CSR_MHPMEVENT30: u16 = 0x33e; -const CSR_MHPMEVENT31: u16 = 0x33f; -const CSR_MVENDORID: u16 = 0xf11; -const CSR_MARCHID: u16 = 0xf12; -const CSR_MIMPID: u16 = 0xf13; -const CSR_MHARTID: u16 = 0xf14; -const CSR_MCONFIGPTR: u16 = 0xf15; -const CSR_MTOPI: u16 = 0xfb0; -const CSR_SIEH: u16 = 0x114; -const CSR_SIPH: u16 = 0x154; -const CSR_STIMECMPH: u16 = 0x15d; -const CSR_VSIEH: u16 = 0x214; -const CSR_VSIPH: u16 = 0x254; -const CSR_VSTIMECMPH: u16 = 0x25d; -const CSR_HEDELEGH: u16 = 0x612; -const CSR_HTIMEDELTAH: u16 = 0x615; -const CSR_HIDELEGH: u16 = 0x613; -const CSR_HVIENH: u16 = 0x618; -const CSR_HENVCFGH: u16 = 0x61a; -const CSR_HVIPH: u16 = 0x655; -const CSR_HVIPRIO1H: u16 = 0x656; -const CSR_HVIPRIO2H: u16 = 0x657; -const CSR_HSTATEEN0H: u16 = 0x61c; -const CSR_HSTATEEN1H: u16 = 0x61d; -const CSR_HSTATEEN2H: u16 = 0x61e; -const CSR_HSTATEEN3H: u16 = 0x61f; -const CSR_CYCLEH: u16 = 0xc80; -const CSR_TIMEH: u16 = 0xc81; -const CSR_INSTRETH: u16 = 0xc82; -const CSR_HPMCOUNTER3H: u16 = 0xc83; -const CSR_HPMCOUNTER4H: u16 = 0xc84; -const CSR_HPMCOUNTER5H: u16 = 0xc85; -const CSR_HPMCOUNTER6H: u16 = 0xc86; -const CSR_HPMCOUNTER7H: u16 = 0xc87; -const CSR_HPMCOUNTER8H: u16 = 0xc88; -const CSR_HPMCOUNTER9H: u16 = 0xc89; -const CSR_HPMCOUNTER10H: u16 = 0xc8a; -const CSR_HPMCOUNTER11H: u16 = 0xc8b; -const CSR_HPMCOUNTER12H: u16 = 0xc8c; -const CSR_HPMCOUNTER13H: u16 = 0xc8d; -const CSR_HPMCOUNTER14H: u16 = 0xc8e; -const CSR_HPMCOUNTER15H: u16 = 0xc8f; -const CSR_HPMCOUNTER16H: u16 = 0xc90; -const CSR_HPMCOUNTER17H: u16 = 0xc91; -const CSR_HPMCOUNTER18H: u16 = 0xc92; -const CSR_HPMCOUNTER19H: u16 = 0xc93; -const CSR_HPMCOUNTER20H: u16 = 0xc94; -const CSR_HPMCOUNTER21H: u16 = 0xc95; -const CSR_HPMCOUNTER22H: u16 = 0xc96; -const CSR_HPMCOUNTER23H: u16 = 0xc97; -const CSR_HPMCOUNTER24H: u16 = 0xc98; -const CSR_HPMCOUNTER25H: u16 = 0xc99; -const CSR_HPMCOUNTER26H: u16 = 0xc9a; -const CSR_HPMCOUNTER27H: u16 = 0xc9b; -const CSR_HPMCOUNTER28H: u16 = 0xc9c; -const CSR_HPMCOUNTER29H: u16 = 0xc9d; -const CSR_HPMCOUNTER30H: u16 = 0xc9e; -const CSR_HPMCOUNTER31H: u16 = 0xc9f; -const CSR_MSTATUSH: u16 = 0x310; -const CSR_MIDELEGH: u16 = 0x313; -const CSR_MIEH: u16 = 0x314; -const CSR_MVIENH: u16 = 0x318; -const CSR_MVIPH: u16 = 0x319; -const CSR_MENVCFGH: u16 = 0x31a; -const CSR_MSTATEEN0H: u16 = 0x31c; -const CSR_MSTATEEN1H: u16 = 0x31d; -const CSR_MSTATEEN2H: u16 = 0x31e; -const CSR_MSTATEEN3H: u16 = 0x31f; -const CSR_MIPH: u16 = 0x354; -const CSR_MCYCLECFGH: u16 = 0x721; -const CSR_MINSTRETCFGH: u16 = 0x722; -const CSR_MHPMEVENT3H: u16 = 0x723; -const CSR_MHPMEVENT4H: u16 = 0x724; -const CSR_MHPMEVENT5H: u16 = 0x725; -const CSR_MHPMEVENT6H: u16 = 0x726; -const CSR_MHPMEVENT7H: u16 = 0x727; -const CSR_MHPMEVENT8H: u16 = 0x728; -const CSR_MHPMEVENT9H: u16 = 0x729; -const CSR_MHPMEVENT10H: u16 = 0x72a; -const CSR_MHPMEVENT11H: u16 = 0x72b; -const CSR_MHPMEVENT12H: u16 = 0x72c; -const CSR_MHPMEVENT13H: u16 = 0x72d; -const CSR_MHPMEVENT14H: u16 = 0x72e; -const CSR_MHPMEVENT15H: u16 = 0x72f; -const CSR_MHPMEVENT16H: u16 = 0x730; -const CSR_MHPMEVENT17H: u16 = 0x731; -const CSR_MHPMEVENT18H: u16 = 0x732; -const CSR_MHPMEVENT19H: u16 = 0x733; -const CSR_MHPMEVENT20H: u16 = 0x734; -const CSR_MHPMEVENT21H: u16 = 0x735; -const CSR_MHPMEVENT22H: u16 = 0x736; -const CSR_MHPMEVENT23H: u16 = 0x737; -const CSR_MHPMEVENT24H: u16 = 0x738; -const CSR_MHPMEVENT25H: u16 = 0x739; -const CSR_MHPMEVENT26H: u16 = 0x73a; -const CSR_MHPMEVENT27H: u16 = 0x73b; -const CSR_MHPMEVENT28H: u16 = 0x73c; -const CSR_MHPMEVENT29H: u16 = 0x73d; -const CSR_MHPMEVENT30H: u16 = 0x73e; -const CSR_MHPMEVENT31H: u16 = 0x73f; -const CSR_MNSCRATCH: u16 = 0x740; -const CSR_MNEPC: u16 = 0x741; -const CSR_MNCAUSE: u16 = 0x742; -const CSR_MNSTATUS: u16 = 0x744; -const CSR_MSECCFGH: u16 = 0x757; -const CSR_MCYCLEH: u16 = 0xb80; -const CSR_MINSTRETH: u16 = 0xb82; -const CSR_MHPMCOUNTER3H: u16 = 0xb83; -const CSR_MHPMCOUNTER4H: u16 = 0xb84; -const CSR_MHPMCOUNTER5H: u16 = 0xb85; -const CSR_MHPMCOUNTER6H: u16 = 0xb86; -const CSR_MHPMCOUNTER7H: u16 = 0xb87; -const CSR_MHPMCOUNTER8H: u16 = 0xb88; -const CSR_MHPMCOUNTER9H: u16 = 0xb89; -const CSR_MHPMCOUNTER10H: u16 = 0xb8a; -const CSR_MHPMCOUNTER11H: u16 = 0xb8b; -const CSR_MHPMCOUNTER12H: u16 = 0xb8c; -const CSR_MHPMCOUNTER13H: u16 = 0xb8d; -const CSR_MHPMCOUNTER14H: u16 = 0xb8e; -const CSR_MHPMCOUNTER15H: u16 = 0xb8f; -const CSR_MHPMCOUNTER16H: u16 = 0xb90; -const CSR_MHPMCOUNTER17H: u16 = 0xb91; -const CSR_MHPMCOUNTER18H: u16 = 0xb92; -const CSR_MHPMCOUNTER19H: u16 = 0xb93; -const CSR_MHPMCOUNTER20H: u16 = 0xb94; -const CSR_MHPMCOUNTER21H: u16 = 0xb95; -const CSR_MHPMCOUNTER22H: u16 = 0xb96; -const CSR_MHPMCOUNTER23H: u16 = 0xb97; -const CSR_MHPMCOUNTER24H: u16 = 0xb98; -const CSR_MHPMCOUNTER25H: u16 = 0xb99; -const CSR_MHPMCOUNTER26H: u16 = 0xb9a; -const CSR_MHPMCOUNTER27H: u16 = 0xb9b; -const CSR_MHPMCOUNTER28H: u16 = 0xb9c; -const CSR_MHPMCOUNTER29H: u16 = 0xb9d; -const CSR_MHPMCOUNTER30H: u16 = 0xb9e; -const CSR_MHPMCOUNTER31H: u16 = 0xb9f; -const CAUSE_MISALIGNED_FETCH: u8 = 0x0; -const CAUSE_FETCH_ACCESS: u8 = 0x1; -const CAUSE_ILLEGAL_INSTRUCTION: u8 = 0x2; -const CAUSE_BREAKPOINT: u8 = 0x3; -const CAUSE_MISALIGNED_LOAD: u8 = 0x4; -const CAUSE_LOAD_ACCESS: u8 = 0x5; -const CAUSE_MISALIGNED_STORE: u8 = 0x6; -const CAUSE_STORE_ACCESS: u8 = 0x7; -const CAUSE_USER_ECALL: u8 = 0x8; -const CAUSE_SUPERVISOR_ECALL: u8 = 0x9; -const CAUSE_VIRTUAL_SUPERVISOR_ECALL: u8 = 0xa; -const CAUSE_MACHINE_ECALL: u8 = 0xb; -const CAUSE_FETCH_PAGE_FAULT: u8 = 0xc; -const CAUSE_LOAD_PAGE_FAULT: u8 = 0xd; -const CAUSE_STORE_PAGE_FAULT: u8 = 0xf; -const CAUSE_DOUBLE_TRAP: u8 = 0x10; -const CAUSE_SOFTWARE_CHECK_FAULT: u8 = 0x12; -const CAUSE_HARDWARE_ERROR_FAULT: u8 = 0x13; -const CAUSE_FETCH_GUEST_PAGE_FAULT: u8 = 0x14; -const CAUSE_LOAD_GUEST_PAGE_FAULT: u8 = 0x15; -const CAUSE_VIRTUAL_INSTRUCTION: u8 = 0x16; -const CAUSE_STORE_GUEST_PAGE_FAULT: u8 = 0x17; diff --git a/backends/opcodes_maker/output/inst.spinalhdl b/backends/opcodes_maker/output/inst.spinalhdl deleted file mode 100644 index cd11c2ded..000000000 --- a/backends/opcodes_maker/output/inst.spinalhdl +++ /dev/null @@ -1,2123 +0,0 @@ - -/* Automatically generated by parse_opcodes */ -object Instructions { - def ADD = M"b0000000----------000-----0110011" - def ADD_UW = M"b0000100----------000-----0111011" - def ADDI = M"b-----------------000-----0010011" - def ADDIW = M"b-----------------000-----0011011" - def ADDW = M"b0000000----------000-----0111011" - def AES32DSI = M"b--10101----------000-----0110011" - def AES32DSMI = M"b--10111----------000-----0110011" - def AES32ESI = M"b--10001----------000-----0110011" - def AES32ESMI = M"b--10011----------000-----0110011" - def AES64DS = M"b0011101----------000-----0110011" - def AES64DSM = M"b0011111----------000-----0110011" - def AES64ES = M"b0011001----------000-----0110011" - def AES64ESM = M"b0011011----------000-----0110011" - def AES64IM = M"b001100000000-----001-----0010011" - def AES64KS1I = M"b00110001---------001-----0010011" - def AES64KS2 = M"b0111111----------000-----0110011" - def AMOADD_B = M"b00000------------000-----0101111" - def AMOADD_D = M"b00000------------011-----0101111" - def AMOADD_H = M"b00000------------001-----0101111" - def AMOADD_W = M"b00000------------010-----0101111" - def AMOAND_B = M"b01100------------000-----0101111" - def AMOAND_D = M"b01100------------011-----0101111" - def AMOAND_H = M"b01100------------001-----0101111" - def AMOAND_W = M"b01100------------010-----0101111" - def AMOCAS_B = M"b00101------------000-----0101111" - def AMOCAS_D = M"b00101------------011-----0101111" - def AMOCAS_H = M"b00101------------001-----0101111" - def AMOCAS_Q = M"b00101------------100-----0101111" - def AMOCAS_W = M"b00101------------010-----0101111" - def AMOMAX_B = M"b10100------------000-----0101111" - def AMOMAX_D = M"b10100------------011-----0101111" - def AMOMAX_H = M"b10100------------001-----0101111" - def AMOMAX_W = M"b10100------------010-----0101111" - def AMOMAXU_B = M"b11100------------000-----0101111" - def AMOMAXU_D = M"b11100------------011-----0101111" - def AMOMAXU_H = M"b11100------------001-----0101111" - def AMOMAXU_W = M"b11100------------010-----0101111" - def AMOMIN_B = M"b10000------------000-----0101111" - def AMOMIN_D = M"b10000------------011-----0101111" - def AMOMIN_H = M"b10000------------001-----0101111" - def AMOMIN_W = M"b10000------------010-----0101111" - def AMOMINU_B = M"b11000------------000-----0101111" - def AMOMINU_D = M"b11000------------011-----0101111" - def AMOMINU_H = M"b11000------------001-----0101111" - def AMOMINU_W = M"b11000------------010-----0101111" - def AMOOR_B = M"b01000------------000-----0101111" - def AMOOR_D = M"b01000------------011-----0101111" - def AMOOR_H = M"b01000------------001-----0101111" - def AMOOR_W = M"b01000------------010-----0101111" - def AMOSWAP_B = M"b00001------------000-----0101111" - def AMOSWAP_D = M"b00001------------011-----0101111" - def AMOSWAP_H = M"b00001------------001-----0101111" - def AMOSWAP_W = M"b00001------------010-----0101111" - def AMOXOR_B = M"b00100------------000-----0101111" - def AMOXOR_D = M"b00100------------011-----0101111" - def AMOXOR_H = M"b00100------------001-----0101111" - def AMOXOR_W = M"b00100------------010-----0101111" - def AND = M"b0000000----------111-----0110011" - def ANDI = M"b-----------------111-----0010011" - def ANDN = M"b0100000----------111-----0110011" - def AUIPC = M"b-------------------------0010111" - def BCLR = M"b0100100----------001-----0110011" - def BCLRI = M"b010010-----------001-----0010011" - def BEQ = M"b-----------------000-----1100011" - def BEXT = M"b0100100----------101-----0110011" - def BEXTI = M"b010010-----------101-----0010011" - def BGE = M"b-----------------101-----1100011" - def BGEU = M"b-----------------111-----1100011" - def BINV = M"b0110100----------001-----0110011" - def BINVI = M"b011010-----------001-----0010011" - def BLT = M"b-----------------100-----1100011" - def BLTU = M"b-----------------110-----1100011" - def BNE = M"b-----------------001-----1100011" - def BREV8 = M"b011010000111-----101-----0010011" - def BSET = M"b0010100----------001-----0110011" - def BSETI = M"b001010-----------001-----0010011" - def C_ADD = M"b----------------1001----------10" - def C_ADDI = M"b----------------000-----------01" - def C_ADDI16SP = M"b----------------011-00010-----01" - def C_ADDI4SPN = M"b----------------000-----------00" - def C_ADDIW = M"b----------------001-----------01" - def C_ADDW = M"b----------------100111---01---01" - def C_AND = M"b----------------100011---11---01" - def C_ANDI = M"b----------------100-10--------01" - def C_BEQZ = M"b----------------110-----------01" - def C_BNEZ = M"b----------------111-----------01" - def C_EBREAK = M"b----------------1001000000000010" - def C_FLD = M"b----------------001-----------00" - def C_FLDSP = M"b----------------001-----------10" - def C_FLW = M"b----------------011-----------00" - def C_FLWSP = M"b----------------011-----------10" - def C_FSD = M"b----------------101-----------00" - def C_FSDSP = M"b----------------101-----------10" - def C_FSW = M"b----------------111-----------00" - def C_FSWSP = M"b----------------111-----------10" - def C_J = M"b----------------101-----------01" - def C_JAL = M"b----------------001-----------01" - def C_JALR = M"b----------------1001-----0000010" - def C_JR = M"b----------------1000-----0000010" - def C_LBU = M"b----------------100000--------00" - def C_LD = M"b----------------011-----------00" - def C_LDSP = M"b----------------011-----------10" - def C_LI = M"b----------------010-----------01" - def C_LUI = M"b----------------011-----------01" - def C_LW = M"b----------------010-----------00" - def C_LWSP = M"b----------------010-----------10" - def C_MUL = M"b----------------100111---10---01" - def C_MV = M"b----------------1000----------10" - def C_NOP = M"b----------------000-00000-----01" - def C_NOT = M"b----------------100111---1110101" - def C_OR = M"b----------------100011---10---01" - def C_SB = M"b----------------100010--------00" - def C_SD = M"b----------------111-----------00" - def C_SDSP = M"b----------------111-----------10" - def C_SEXT_B = M"b----------------100111---1100101" - def C_SEXT_H = M"b----------------100111---1101101" - def C_SLLI = M"b----------------000-----------10" - def C_SRAI = M"b----------------100-01--------01" - def C_SRLI = M"b----------------100-00--------01" - def C_SUB = M"b----------------100011---00---01" - def C_SUBW = M"b----------------100111---00---01" - def C_SW = M"b----------------110-----------00" - def C_SWSP = M"b----------------110-----------10" - def C_XOR = M"b----------------100011---01---01" - def C_ZEXT_B = M"b----------------100111---1100001" - def C_ZEXT_H = M"b----------------100111---1101001" - def C_ZEXT_W = M"b----------------100111---1110001" - def CBO_CLEAN = M"b000000000001-----010000000001111" - def CBO_FLUSH = M"b000000000010-----010000000001111" - def CBO_INVAL = M"b000000000000-----010000000001111" - def CBO_ZERO = M"b000000000100-----010000000001111" - def CLMUL = M"b0000101----------001-----0110011" - def CLMULH = M"b0000101----------011-----0110011" - def CLMULR = M"b0000101----------010-----0110011" - def CLZ = M"b011000000000-----001-----0010011" - def CLZW = M"b011000000000-----001-----0011011" - def CM_MVA01S = M"b----------------101011---11---10" - def CM_MVSA01 = M"b----------------101011---01---10" - def CM_POP = M"b----------------10111010------10" - def CM_POPRET = M"b----------------10111110------10" - def CM_POPRETZ = M"b----------------10111100------10" - def CM_PUSH = M"b----------------10111000------10" - def CPOP = M"b011000000010-----001-----0010011" - def CPOPW = M"b011000000010-----001-----0011011" - def CSRRC = M"b-----------------011-----1110011" - def CSRRCI = M"b-----------------111-----1110011" - def CSRRS = M"b-----------------010-----1110011" - def CSRRSI = M"b-----------------110-----1110011" - def CSRRW = M"b-----------------001-----1110011" - def CSRRWI = M"b-----------------101-----1110011" - def CTZ = M"b011000000001-----001-----0010011" - def CTZW = M"b011000000001-----001-----0011011" - def CZERO_EQZ = M"b0000111----------101-----0110011" - def CZERO_NEZ = M"b0000111----------111-----0110011" - def DIV = M"b0000001----------100-----0110011" - def DIVU = M"b0000001----------101-----0110011" - def DIVUW = M"b0000001----------101-----0111011" - def DIVW = M"b0000001----------100-----0111011" - def DRET = M"b01111011001000000000000001110011" - def EBREAK = M"b00000000000100000000000001110011" - def ECALL = M"b00000000000000000000000001110011" - def FADD_D = M"b0000001------------------1010011" - def FADD_H = M"b0000010------------------1010011" - def FADD_Q = M"b0000011------------------1010011" - def FADD_S = M"b0000000------------------1010011" - def FCLASS_D = M"b111000100000-----001-----1010011" - def FCLASS_H = M"b111001000000-----001-----1010011" - def FCLASS_Q = M"b111001100000-----001-----1010011" - def FCLASS_S = M"b111000000000-----001-----1010011" - def FCVT_BF16_S = M"b010001001000-------------1010011" - def FCVT_D_H = M"b010000100010-------------1010011" - def FCVT_D_L = M"b110100100010-------------1010011" - def FCVT_D_LU = M"b110100100011-------------1010011" - def FCVT_D_Q = M"b010000100011-------------1010011" - def FCVT_D_S = M"b010000100000-------------1010011" - def FCVT_D_W = M"b110100100000-------------1010011" - def FCVT_D_WU = M"b110100100001-------------1010011" - def FCVT_H_D = M"b010001000001-------------1010011" - def FCVT_H_L = M"b110101000010-------------1010011" - def FCVT_H_LU = M"b110101000011-------------1010011" - def FCVT_H_Q = M"b010001000011-------------1010011" - def FCVT_H_S = M"b010001000000-------------1010011" - def FCVT_H_W = M"b110101000000-------------1010011" - def FCVT_H_WU = M"b110101000001-------------1010011" - def FCVT_L_D = M"b110000100010-------------1010011" - def FCVT_L_H = M"b110001000010-------------1010011" - def FCVT_L_Q = M"b110001100010-------------1010011" - def FCVT_L_S = M"b110000000010-------------1010011" - def FCVT_LU_D = M"b110000100011-------------1010011" - def FCVT_LU_H = M"b110001000011-------------1010011" - def FCVT_LU_Q = M"b110001100011-------------1010011" - def FCVT_LU_S = M"b110000000011-------------1010011" - def FCVT_Q_D = M"b010001100001-------------1010011" - def FCVT_Q_H = M"b010001100010-------------1010011" - def FCVT_Q_L = M"b110101100010-------------1010011" - def FCVT_Q_LU = M"b110101100011-------------1010011" - def FCVT_Q_S = M"b010001100000-------------1010011" - def FCVT_Q_W = M"b110101100000-------------1010011" - def FCVT_Q_WU = M"b110101100001-------------1010011" - def FCVT_S_BF16 = M"b010000000110-------------1010011" - def FCVT_S_D = M"b010000000001-------------1010011" - def FCVT_S_H = M"b010000000010-------------1010011" - def FCVT_S_L = M"b110100000010-------------1010011" - def FCVT_S_LU = M"b110100000011-------------1010011" - def FCVT_S_Q = M"b010000000011-------------1010011" - def FCVT_S_W = M"b110100000000-------------1010011" - def FCVT_S_WU = M"b110100000001-------------1010011" - def FCVT_W_D = M"b110000100000-------------1010011" - def FCVT_W_H = M"b110001000000-------------1010011" - def FCVT_W_Q = M"b110001100000-------------1010011" - def FCVT_W_S = M"b110000000000-------------1010011" - def FCVT_WU_D = M"b110000100001-------------1010011" - def FCVT_WU_H = M"b110001000001-------------1010011" - def FCVT_WU_Q = M"b110001100001-------------1010011" - def FCVT_WU_S = M"b110000000001-------------1010011" - def FCVTMOD_W_D = M"b110000101000-----001-----1010011" - def FDIV_D = M"b0001101------------------1010011" - def FDIV_H = M"b0001110------------------1010011" - def FDIV_Q = M"b0001111------------------1010011" - def FDIV_S = M"b0001100------------------1010011" - def FENCE = M"b-----------------000-----0001111" - def FENCE_I = M"b-----------------001-----0001111" - def FEQ_D = M"b1010001----------010-----1010011" - def FEQ_H = M"b1010010----------010-----1010011" - def FEQ_Q = M"b1010011----------010-----1010011" - def FEQ_S = M"b1010000----------010-----1010011" - def FLD = M"b-----------------011-----0000111" - def FLE_D = M"b1010001----------000-----1010011" - def FLE_H = M"b1010010----------000-----1010011" - def FLE_Q = M"b1010011----------000-----1010011" - def FLE_S = M"b1010000----------000-----1010011" - def FLEQ_D = M"b1010001----------100-----1010011" - def FLEQ_H = M"b1010010----------100-----1010011" - def FLEQ_Q = M"b1010011----------100-----1010011" - def FLEQ_S = M"b1010000----------100-----1010011" - def FLH = M"b-----------------001-----0000111" - def FLI_D = M"b111100100001-----000-----1010011" - def FLI_H = M"b111101000001-----000-----1010011" - def FLI_Q = M"b111101100001-----000-----1010011" - def FLI_S = M"b111100000001-----000-----1010011" - def FLQ = M"b-----------------100-----0000111" - def FLT_D = M"b1010001----------001-----1010011" - def FLT_H = M"b1010010----------001-----1010011" - def FLT_Q = M"b1010011----------001-----1010011" - def FLT_S = M"b1010000----------001-----1010011" - def FLTQ_D = M"b1010001----------101-----1010011" - def FLTQ_H = M"b1010010----------101-----1010011" - def FLTQ_Q = M"b1010011----------101-----1010011" - def FLTQ_S = M"b1010000----------101-----1010011" - def FLW = M"b-----------------010-----0000111" - def FMADD_D = M"b-----01------------------1000011" - def FMADD_H = M"b-----10------------------1000011" - def FMADD_Q = M"b-----11------------------1000011" - def FMADD_S = M"b-----00------------------1000011" - def FMAX_D = M"b0010101----------001-----1010011" - def FMAX_H = M"b0010110----------001-----1010011" - def FMAX_Q = M"b0010111----------001-----1010011" - def FMAX_S = M"b0010100----------001-----1010011" - def FMAXM_D = M"b0010101----------011-----1010011" - def FMAXM_H = M"b0010110----------011-----1010011" - def FMAXM_Q = M"b0010111----------011-----1010011" - def FMAXM_S = M"b0010100----------011-----1010011" - def FMIN_D = M"b0010101----------000-----1010011" - def FMIN_H = M"b0010110----------000-----1010011" - def FMIN_Q = M"b0010111----------000-----1010011" - def FMIN_S = M"b0010100----------000-----1010011" - def FMINM_D = M"b0010101----------010-----1010011" - def FMINM_H = M"b0010110----------010-----1010011" - def FMINM_Q = M"b0010111----------010-----1010011" - def FMINM_S = M"b0010100----------010-----1010011" - def FMSUB_D = M"b-----01------------------1000111" - def FMSUB_H = M"b-----10------------------1000111" - def FMSUB_Q = M"b-----11------------------1000111" - def FMSUB_S = M"b-----00------------------1000111" - def FMUL_D = M"b0001001------------------1010011" - def FMUL_H = M"b0001010------------------1010011" - def FMUL_Q = M"b0001011------------------1010011" - def FMUL_S = M"b0001000------------------1010011" - def FMV_D_X = M"b111100100000-----000-----1010011" - def FMV_H_X = M"b111101000000-----000-----1010011" - def FMV_W_X = M"b111100000000-----000-----1010011" - def FMV_X_D = M"b111000100000-----000-----1010011" - def FMV_X_H = M"b111001000000-----000-----1010011" - def FMV_X_W = M"b111000000000-----000-----1010011" - def FMVH_X_D = M"b111000100001-----000-----1010011" - def FMVH_X_Q = M"b111001100001-----000-----1010011" - def FMVP_D_X = M"b1011001----------000-----1010011" - def FMVP_Q_X = M"b1011011----------000-----1010011" - def FNMADD_D = M"b-----01------------------1001111" - def FNMADD_H = M"b-----10------------------1001111" - def FNMADD_Q = M"b-----11------------------1001111" - def FNMADD_S = M"b-----00------------------1001111" - def FNMSUB_D = M"b-----01------------------1001011" - def FNMSUB_H = M"b-----10------------------1001011" - def FNMSUB_Q = M"b-----11------------------1001011" - def FNMSUB_S = M"b-----00------------------1001011" - def FROUND_D = M"b010000100100-------------1010011" - def FROUND_H = M"b010001000100-------------1010011" - def FROUND_Q = M"b010001100100-------------1010011" - def FROUND_S = M"b010000000100-------------1010011" - def FROUNDNX_D = M"b010000100101-------------1010011" - def FROUNDNX_H = M"b010001000101-------------1010011" - def FROUNDNX_Q = M"b010001100101-------------1010011" - def FROUNDNX_S = M"b010000000101-------------1010011" - def FSD = M"b-----------------011-----0100111" - def FSGNJ_D = M"b0010001----------000-----1010011" - def FSGNJ_H = M"b0010010----------000-----1010011" - def FSGNJ_Q = M"b0010011----------000-----1010011" - def FSGNJ_S = M"b0010000----------000-----1010011" - def FSGNJN_D = M"b0010001----------001-----1010011" - def FSGNJN_H = M"b0010010----------001-----1010011" - def FSGNJN_Q = M"b0010011----------001-----1010011" - def FSGNJN_S = M"b0010000----------001-----1010011" - def FSGNJX_D = M"b0010001----------010-----1010011" - def FSGNJX_H = M"b0010010----------010-----1010011" - def FSGNJX_Q = M"b0010011----------010-----1010011" - def FSGNJX_S = M"b0010000----------010-----1010011" - def FSH = M"b-----------------001-----0100111" - def FSQ = M"b-----------------100-----0100111" - def FSQRT_D = M"b010110100000-------------1010011" - def FSQRT_H = M"b010111000000-------------1010011" - def FSQRT_Q = M"b010111100000-------------1010011" - def FSQRT_S = M"b010110000000-------------1010011" - def FSUB_D = M"b0000101------------------1010011" - def FSUB_H = M"b0000110------------------1010011" - def FSUB_Q = M"b0000111------------------1010011" - def FSUB_S = M"b0000100------------------1010011" - def FSW = M"b-----------------010-----0100111" - def HFENCE_GVMA = M"b0110001----------000000001110011" - def HFENCE_VVMA = M"b0010001----------000000001110011" - def HINVAL_GVMA = M"b0110011----------000000001110011" - def HINVAL_VVMA = M"b0010011----------000000001110011" - def HLV_B = M"b011000000000-----100-----1110011" - def HLV_BU = M"b011000000001-----100-----1110011" - def HLV_D = M"b011011000000-----100-----1110011" - def HLV_H = M"b011001000000-----100-----1110011" - def HLV_HU = M"b011001000001-----100-----1110011" - def HLV_W = M"b011010000000-----100-----1110011" - def HLV_WU = M"b011010000001-----100-----1110011" - def HLVX_HU = M"b011001000011-----100-----1110011" - def HLVX_WU = M"b011010000011-----100-----1110011" - def HSV_B = M"b0110001----------100000001110011" - def HSV_D = M"b0110111----------100000001110011" - def HSV_H = M"b0110011----------100000001110011" - def HSV_W = M"b0110101----------100000001110011" - def JAL = M"b-------------------------1101111" - def JALR = M"b-----------------000-----1100111" - def LB = M"b-----------------000-----0000011" - def LB_AQ = M"b001101-00000-----000-----0101111" - def LBU = M"b-----------------100-----0000011" - def LD = M"b-----------------011-----0000011" - def LD_AQ = M"b001101-00000-----011-----0101111" - def LH = M"b-----------------001-----0000011" - def LH_AQ = M"b001101-00000-----001-----0101111" - def LHU = M"b-----------------101-----0000011" - def LPAD = M"b--------------------000000010111" - def LR_D = M"b00010--00000-----011-----0101111" - def LR_W = M"b00010--00000-----010-----0101111" - def LUI = M"b-------------------------0110111" - def LW = M"b-----------------010-----0000011" - def LW_AQ = M"b001101-00000-----010-----0101111" - def LWU = M"b-----------------110-----0000011" - def MAX = M"b0000101----------110-----0110011" - def MAXU = M"b0000101----------111-----0110011" - def MIN = M"b0000101----------100-----0110011" - def MINU = M"b0000101----------101-----0110011" - def MNRET = M"b01110000001000000000000001110011" - def MOP_R_N = M"b1-00--0111-------100-----1110011" - def MOP_RR_N = M"b1-00--1----------100-----1110011" - def MRET = M"b00110000001000000000000001110011" - def MUL = M"b0000001----------000-----0110011" - def MULH = M"b0000001----------001-----0110011" - def MULHSU = M"b0000001----------010-----0110011" - def MULHU = M"b0000001----------011-----0110011" - def MULW = M"b0000001----------000-----0111011" - def OR = M"b0000000----------110-----0110011" - def ORC_B = M"b001010000111-----101-----0010011" - def ORI = M"b-----------------110-----0010011" - def ORN = M"b0100000----------110-----0110011" - def PACK = M"b0000100----------100-----0110011" - def PACKH = M"b0000100----------111-----0110011" - def PACKW = M"b0000100----------100-----0111011" - def REM = M"b0000001----------110-----0110011" - def REMU = M"b0000001----------111-----0110011" - def REMUW = M"b0000001----------111-----0111011" - def REMW = M"b0000001----------110-----0111011" - def REV8 = M"b011010111000-----101-----0010011" - def ROL = M"b0110000----------001-----0110011" - def ROLW = M"b0110000----------001-----0111011" - def ROR = M"b0110000----------101-----0110011" - def RORI = M"b011000-----------101-----0010011" - def RORIW = M"b0110000----------101-----0011011" - def RORW = M"b0110000----------101-----0111011" - def SB = M"b-----------------000-----0100011" - def SB_RL = M"b00111-1----------000000000101111" - def SC_D = M"b00011------------011-----0101111" - def SC_W = M"b00011------------010-----0101111" - def SCTRCLR = M"b00010000010000000000000001110011" - def SD = M"b-----------------011-----0100011" - def SD_RL = M"b00111-1----------011000000101111" - def SEXT_B = M"b011000000100-----001-----0010011" - def SEXT_H = M"b011000000101-----001-----0010011" - def SFENCE_INVAL_IR = M"b00011000000100000000000001110011" - def SFENCE_VMA = M"b0001001----------000000001110011" - def SFENCE_W_INVAL = M"b00011000000000000000000001110011" - def SH = M"b-----------------001-----0100011" - def SH1ADD = M"b0010000----------010-----0110011" - def SH1ADD_UW = M"b0010000----------010-----0111011" - def SH2ADD = M"b0010000----------100-----0110011" - def SH2ADD_UW = M"b0010000----------100-----0111011" - def SH3ADD = M"b0010000----------110-----0110011" - def SH3ADD_UW = M"b0010000----------110-----0111011" - def SH_RL = M"b00111-1----------001000000101111" - def SHA256SIG0 = M"b000100000010-----001-----0010011" - def SHA256SIG1 = M"b000100000011-----001-----0010011" - def SHA256SUM0 = M"b000100000000-----001-----0010011" - def SHA256SUM1 = M"b000100000001-----001-----0010011" - def SHA512SIG0 = M"b000100000110-----001-----0010011" - def SHA512SIG0H = M"b0101110----------000-----0110011" - def SHA512SIG0L = M"b0101010----------000-----0110011" - def SHA512SIG1 = M"b000100000111-----001-----0010011" - def SHA512SIG1H = M"b0101111----------000-----0110011" - def SHA512SIG1L = M"b0101011----------000-----0110011" - def SHA512SUM0 = M"b000100000100-----001-----0010011" - def SHA512SUM0R = M"b0101000----------000-----0110011" - def SHA512SUM1 = M"b000100000101-----001-----0010011" - def SHA512SUM1R = M"b0101001----------000-----0110011" - def SINVAL_VMA = M"b0001011----------000000001110011" - def SLL = M"b0000000----------001-----0110011" - def SLLI = M"b000000-----------001-----0010011" - def SLLI_UW = M"b000010-----------001-----0011011" - def SLLIW = M"b0000000----------001-----0011011" - def SLLW = M"b0000000----------001-----0111011" - def SLT = M"b0000000----------010-----0110011" - def SLTI = M"b-----------------010-----0010011" - def SLTIU = M"b-----------------011-----0010011" - def SLTU = M"b0000000----------011-----0110011" - def SM3P0 = M"b000100001000-----001-----0010011" - def SM3P1 = M"b000100001001-----001-----0010011" - def SM4ED = M"b--11000----------000-----0110011" - def SM4KS = M"b--11010----------000-----0110011" - def SRA = M"b0100000----------101-----0110011" - def SRAI = M"b010000-----------101-----0010011" - def SRAIW = M"b0100000----------101-----0011011" - def SRAW = M"b0100000----------101-----0111011" - def SRET = M"b00010000001000000000000001110011" - def SRL = M"b0000000----------101-----0110011" - def SRLI = M"b000000-----------101-----0010011" - def SRLIW = M"b0000000----------101-----0011011" - def SRLW = M"b0000000----------101-----0111011" - def SSAMOSWAP_D = M"b01001------------011-----0101111" - def SSAMOSWAP_W = M"b01001------------010-----0101111" - def SSPOPCHK_X1 = M"b11001101110000001100000001110011" - def SSPOPCHK_X5 = M"b11001101110000101100000001110011" - def SSPUSH_X1 = M"b11001110000100000100000001110011" - def SSPUSH_X5 = M"b11001110010100000100000001110011" - def SSRDP = M"b11001101110000000100-----1110011" - def SUB = M"b0100000----------000-----0110011" - def SUBW = M"b0100000----------000-----0111011" - def SW = M"b-----------------010-----0100011" - def SW_RL = M"b00111-1----------010000000101111" - def UNZIP = M"b000010001111-----101-----0010011" - def VAADD_VV = M"b001001-----------010-----1010111" - def VAADD_VX = M"b001001-----------110-----1010111" - def VAADDU_VV = M"b001000-----------010-----1010111" - def VAADDU_VX = M"b001000-----------110-----1010111" - def VADC_VIM = M"b0100000----------011-----1010111" - def VADC_VVM = M"b0100000----------000-----1010111" - def VADC_VXM = M"b0100000----------100-----1010111" - def VADD_VI = M"b000000-----------011-----1010111" - def VADD_VV = M"b000000-----------000-----1010111" - def VADD_VX = M"b000000-----------100-----1010111" - def VAESDF_VS = M"b1010011-----00001010-----1110111" - def VAESDF_VV = M"b1010001-----00001010-----1110111" - def VAESDM_VS = M"b1010011-----00000010-----1110111" - def VAESDM_VV = M"b1010001-----00000010-----1110111" - def VAESEF_VS = M"b1010011-----00011010-----1110111" - def VAESEF_VV = M"b1010001-----00011010-----1110111" - def VAESEM_VS = M"b1010011-----00010010-----1110111" - def VAESEM_VV = M"b1010001-----00010010-----1110111" - def VAESKF1_VI = M"b1000101----------010-----1110111" - def VAESKF2_VI = M"b1010101----------010-----1110111" - def VAESZ_VS = M"b1010011-----00111010-----1110111" - def VAND_VI = M"b001001-----------011-----1010111" - def VAND_VV = M"b001001-----------000-----1010111" - def VAND_VX = M"b001001-----------100-----1010111" - def VANDN_VV = M"b000001-----------000-----1010111" - def VANDN_VX = M"b000001-----------100-----1010111" - def VASUB_VV = M"b001011-----------010-----1010111" - def VASUB_VX = M"b001011-----------110-----1010111" - def VASUBU_VV = M"b001010-----------010-----1010111" - def VASUBU_VX = M"b001010-----------110-----1010111" - def VBREV8_V = M"b010010------01000010-----1010111" - def VBREV_V = M"b010010------01010010-----1010111" - def VCLMUL_VV = M"b001100-----------010-----1010111" - def VCLMUL_VX = M"b001100-----------110-----1010111" - def VCLMULH_VV = M"b001101-----------010-----1010111" - def VCLMULH_VX = M"b001101-----------110-----1010111" - def VCLZ_V = M"b010010------01100010-----1010111" - def VCOMPRESS_VM = M"b0101111----------010-----1010111" - def VCPOP_M = M"b010000------10000010-----1010111" - def VCPOP_V = M"b010010------01110010-----1010111" - def VCTZ_V = M"b010010------01101010-----1010111" - def VDIV_VV = M"b100001-----------010-----1010111" - def VDIV_VX = M"b100001-----------110-----1010111" - def VDIVU_VV = M"b100000-----------010-----1010111" - def VDIVU_VX = M"b100000-----------110-----1010111" - def VFADD_VF = M"b000000-----------101-----1010111" - def VFADD_VV = M"b000000-----------001-----1010111" - def VFCLASS_V = M"b010011------10000001-----1010111" - def VFCVT_F_X_V = M"b010010------00011001-----1010111" - def VFCVT_F_XU_V = M"b010010------00010001-----1010111" - def VFCVT_RTZ_X_F_V = M"b010010------00111001-----1010111" - def VFCVT_RTZ_XU_F_V = M"b010010------00110001-----1010111" - def VFCVT_X_F_V = M"b010010------00001001-----1010111" - def VFCVT_XU_F_V = M"b010010------00000001-----1010111" - def VFDIV_VF = M"b100000-----------101-----1010111" - def VFDIV_VV = M"b100000-----------001-----1010111" - def VFIRST_M = M"b010000------10001010-----1010111" - def VFMACC_VF = M"b101100-----------101-----1010111" - def VFMACC_VV = M"b101100-----------001-----1010111" - def VFMADD_VF = M"b101000-----------101-----1010111" - def VFMADD_VV = M"b101000-----------001-----1010111" - def VFMAX_VF = M"b000110-----------101-----1010111" - def VFMAX_VV = M"b000110-----------001-----1010111" - def VFMERGE_VFM = M"b0101110----------101-----1010111" - def VFMIN_VF = M"b000100-----------101-----1010111" - def VFMIN_VV = M"b000100-----------001-----1010111" - def VFMSAC_VF = M"b101110-----------101-----1010111" - def VFMSAC_VV = M"b101110-----------001-----1010111" - def VFMSUB_VF = M"b101010-----------101-----1010111" - def VFMSUB_VV = M"b101010-----------001-----1010111" - def VFMUL_VF = M"b100100-----------101-----1010111" - def VFMUL_VV = M"b100100-----------001-----1010111" - def VFMV_F_S = M"b0100001-----00000001-----1010111" - def VFMV_S_F = M"b010000100000-----101-----1010111" - def VFMV_V_F = M"b010111100000-----101-----1010111" - def VFNCVT_F_F_W = M"b010010------10100001-----1010111" - def VFNCVT_F_X_W = M"b010010------10011001-----1010111" - def VFNCVT_F_XU_W = M"b010010------10010001-----1010111" - def VFNCVT_ROD_F_F_W = M"b010010------10101001-----1010111" - def VFNCVT_RTZ_X_F_W = M"b010010------10111001-----1010111" - def VFNCVT_RTZ_XU_F_W = M"b010010------10110001-----1010111" - def VFNCVT_X_F_W = M"b010010------10001001-----1010111" - def VFNCVT_XU_F_W = M"b010010------10000001-----1010111" - def VFNCVTBF16_F_F_W = M"b010010------11101001-----1010111" - def VFNMACC_VF = M"b101101-----------101-----1010111" - def VFNMACC_VV = M"b101101-----------001-----1010111" - def VFNMADD_VF = M"b101001-----------101-----1010111" - def VFNMADD_VV = M"b101001-----------001-----1010111" - def VFNMSAC_VF = M"b101111-----------101-----1010111" - def VFNMSAC_VV = M"b101111-----------001-----1010111" - def VFNMSUB_VF = M"b101011-----------101-----1010111" - def VFNMSUB_VV = M"b101011-----------001-----1010111" - def VFRDIV_VF = M"b100001-----------101-----1010111" - def VFREC7_V = M"b010011------00101001-----1010111" - def VFREDMAX_VS = M"b000111-----------001-----1010111" - def VFREDMIN_VS = M"b000101-----------001-----1010111" - def VFREDOSUM_VS = M"b000011-----------001-----1010111" - def VFREDUSUM_VS = M"b000001-----------001-----1010111" - def VFRSQRT7_V = M"b010011------00100001-----1010111" - def VFRSUB_VF = M"b100111-----------101-----1010111" - def VFSGNJ_VF = M"b001000-----------101-----1010111" - def VFSGNJ_VV = M"b001000-----------001-----1010111" - def VFSGNJN_VF = M"b001001-----------101-----1010111" - def VFSGNJN_VV = M"b001001-----------001-----1010111" - def VFSGNJX_VF = M"b001010-----------101-----1010111" - def VFSGNJX_VV = M"b001010-----------001-----1010111" - def VFSLIDE1DOWN_VF = M"b001111-----------101-----1010111" - def VFSLIDE1UP_VF = M"b001110-----------101-----1010111" - def VFSQRT_V = M"b010011------00000001-----1010111" - def VFSUB_VF = M"b000010-----------101-----1010111" - def VFSUB_VV = M"b000010-----------001-----1010111" - def VFWADD_VF = M"b110000-----------101-----1010111" - def VFWADD_VV = M"b110000-----------001-----1010111" - def VFWADD_WF = M"b110100-----------101-----1010111" - def VFWADD_WV = M"b110100-----------001-----1010111" - def VFWCVT_F_F_V = M"b010010------01100001-----1010111" - def VFWCVT_F_X_V = M"b010010------01011001-----1010111" - def VFWCVT_F_XU_V = M"b010010------01010001-----1010111" - def VFWCVT_RTZ_X_F_V = M"b010010------01111001-----1010111" - def VFWCVT_RTZ_XU_F_V = M"b010010------01110001-----1010111" - def VFWCVT_X_F_V = M"b010010------01001001-----1010111" - def VFWCVT_XU_F_V = M"b010010------01000001-----1010111" - def VFWCVTBF16_F_F_V = M"b010010------01101001-----1010111" - def VFWMACC_VF = M"b111100-----------101-----1010111" - def VFWMACC_VV = M"b111100-----------001-----1010111" - def VFWMACCBF16_VF = M"b111011-----------101-----1010111" - def VFWMACCBF16_VV = M"b111011-----------001-----1010111" - def VFWMSAC_VF = M"b111110-----------101-----1010111" - def VFWMSAC_VV = M"b111110-----------001-----1010111" - def VFWMUL_VF = M"b111000-----------101-----1010111" - def VFWMUL_VV = M"b111000-----------001-----1010111" - def VFWNMACC_VF = M"b111101-----------101-----1010111" - def VFWNMACC_VV = M"b111101-----------001-----1010111" - def VFWNMSAC_VF = M"b111111-----------101-----1010111" - def VFWNMSAC_VV = M"b111111-----------001-----1010111" - def VFWREDOSUM_VS = M"b110011-----------001-----1010111" - def VFWREDUSUM_VS = M"b110001-----------001-----1010111" - def VFWSUB_VF = M"b110010-----------101-----1010111" - def VFWSUB_VV = M"b110010-----------001-----1010111" - def VFWSUB_WF = M"b110110-----------101-----1010111" - def VFWSUB_WV = M"b110110-----------001-----1010111" - def VGHSH_VV = M"b1011001----------010-----1110111" - def VGMUL_VV = M"b1010001-----10001010-----1110111" - def VID_V = M"b010100-0000010001010-----1010111" - def VIOTA_M = M"b010100------10000010-----1010111" - def VL1RE16_V = M"b000000101000-----101-----0000111" - def VL1RE32_V = M"b000000101000-----110-----0000111" - def VL1RE64_V = M"b000000101000-----111-----0000111" - def VL1RE8_V = M"b000000101000-----000-----0000111" - def VL2RE16_V = M"b001000101000-----101-----0000111" - def VL2RE32_V = M"b001000101000-----110-----0000111" - def VL2RE64_V = M"b001000101000-----111-----0000111" - def VL2RE8_V = M"b001000101000-----000-----0000111" - def VL4RE16_V = M"b011000101000-----101-----0000111" - def VL4RE32_V = M"b011000101000-----110-----0000111" - def VL4RE64_V = M"b011000101000-----111-----0000111" - def VL4RE8_V = M"b011000101000-----000-----0000111" - def VL8RE16_V = M"b111000101000-----101-----0000111" - def VL8RE32_V = M"b111000101000-----110-----0000111" - def VL8RE64_V = M"b111000101000-----111-----0000111" - def VL8RE8_V = M"b111000101000-----000-----0000111" - def VLE16_V = M"b000000-00000-----101-----0000111" - def VLE16FF_V = M"b000000-10000-----101-----0000111" - def VLE32_V = M"b000000-00000-----110-----0000111" - def VLE32FF_V = M"b000000-10000-----110-----0000111" - def VLE64_V = M"b000000-00000-----111-----0000111" - def VLE64FF_V = M"b000000-10000-----111-----0000111" - def VLE8_V = M"b000000-00000-----000-----0000111" - def VLE8FF_V = M"b000000-10000-----000-----0000111" - def VLM_V = M"b000000101011-----000-----0000111" - def VLOXEI16_V = M"b000011-----------101-----0000111" - def VLOXEI32_V = M"b000011-----------110-----0000111" - def VLOXEI64_V = M"b000011-----------111-----0000111" - def VLOXEI8_V = M"b000011-----------000-----0000111" - def VLOXSEG2EI16_V = M"b001011-----------101-----0000111" - def VLOXSEG2EI32_V = M"b001011-----------110-----0000111" - def VLOXSEG2EI64_V = M"b001011-----------111-----0000111" - def VLOXSEG2EI8_V = M"b001011-----------000-----0000111" - def VLOXSEG3EI16_V = M"b010011-----------101-----0000111" - def VLOXSEG3EI32_V = M"b010011-----------110-----0000111" - def VLOXSEG3EI64_V = M"b010011-----------111-----0000111" - def VLOXSEG3EI8_V = M"b010011-----------000-----0000111" - def VLOXSEG4EI16_V = M"b011011-----------101-----0000111" - def VLOXSEG4EI32_V = M"b011011-----------110-----0000111" - def VLOXSEG4EI64_V = M"b011011-----------111-----0000111" - def VLOXSEG4EI8_V = M"b011011-----------000-----0000111" - def VLOXSEG5EI16_V = M"b100011-----------101-----0000111" - def VLOXSEG5EI32_V = M"b100011-----------110-----0000111" - def VLOXSEG5EI64_V = M"b100011-----------111-----0000111" - def VLOXSEG5EI8_V = M"b100011-----------000-----0000111" - def VLOXSEG6EI16_V = M"b101011-----------101-----0000111" - def VLOXSEG6EI32_V = M"b101011-----------110-----0000111" - def VLOXSEG6EI64_V = M"b101011-----------111-----0000111" - def VLOXSEG6EI8_V = M"b101011-----------000-----0000111" - def VLOXSEG7EI16_V = M"b110011-----------101-----0000111" - def VLOXSEG7EI32_V = M"b110011-----------110-----0000111" - def VLOXSEG7EI64_V = M"b110011-----------111-----0000111" - def VLOXSEG7EI8_V = M"b110011-----------000-----0000111" - def VLOXSEG8EI16_V = M"b111011-----------101-----0000111" - def VLOXSEG8EI32_V = M"b111011-----------110-----0000111" - def VLOXSEG8EI64_V = M"b111011-----------111-----0000111" - def VLOXSEG8EI8_V = M"b111011-----------000-----0000111" - def VLSE16_V = M"b000010-----------101-----0000111" - def VLSE32_V = M"b000010-----------110-----0000111" - def VLSE64_V = M"b000010-----------111-----0000111" - def VLSE8_V = M"b000010-----------000-----0000111" - def VLSEG2E16_V = M"b001000-00000-----101-----0000111" - def VLSEG2E16FF_V = M"b001000-10000-----101-----0000111" - def VLSEG2E32_V = M"b001000-00000-----110-----0000111" - def VLSEG2E32FF_V = M"b001000-10000-----110-----0000111" - def VLSEG2E64_V = M"b001000-00000-----111-----0000111" - def VLSEG2E64FF_V = M"b001000-10000-----111-----0000111" - def VLSEG2E8_V = M"b001000-00000-----000-----0000111" - def VLSEG2E8FF_V = M"b001000-10000-----000-----0000111" - def VLSEG3E16_V = M"b010000-00000-----101-----0000111" - def VLSEG3E16FF_V = M"b010000-10000-----101-----0000111" - def VLSEG3E32_V = M"b010000-00000-----110-----0000111" - def VLSEG3E32FF_V = M"b010000-10000-----110-----0000111" - def VLSEG3E64_V = M"b010000-00000-----111-----0000111" - def VLSEG3E64FF_V = M"b010000-10000-----111-----0000111" - def VLSEG3E8_V = M"b010000-00000-----000-----0000111" - def VLSEG3E8FF_V = M"b010000-10000-----000-----0000111" - def VLSEG4E16_V = M"b011000-00000-----101-----0000111" - def VLSEG4E16FF_V = M"b011000-10000-----101-----0000111" - def VLSEG4E32_V = M"b011000-00000-----110-----0000111" - def VLSEG4E32FF_V = M"b011000-10000-----110-----0000111" - def VLSEG4E64_V = M"b011000-00000-----111-----0000111" - def VLSEG4E64FF_V = M"b011000-10000-----111-----0000111" - def VLSEG4E8_V = M"b011000-00000-----000-----0000111" - def VLSEG4E8FF_V = M"b011000-10000-----000-----0000111" - def VLSEG5E16_V = M"b100000-00000-----101-----0000111" - def VLSEG5E16FF_V = M"b100000-10000-----101-----0000111" - def VLSEG5E32_V = M"b100000-00000-----110-----0000111" - def VLSEG5E32FF_V = M"b100000-10000-----110-----0000111" - def VLSEG5E64_V = M"b100000-00000-----111-----0000111" - def VLSEG5E64FF_V = M"b100000-10000-----111-----0000111" - def VLSEG5E8_V = M"b100000-00000-----000-----0000111" - def VLSEG5E8FF_V = M"b100000-10000-----000-----0000111" - def VLSEG6E16_V = M"b101000-00000-----101-----0000111" - def VLSEG6E16FF_V = M"b101000-10000-----101-----0000111" - def VLSEG6E32_V = M"b101000-00000-----110-----0000111" - def VLSEG6E32FF_V = M"b101000-10000-----110-----0000111" - def VLSEG6E64_V = M"b101000-00000-----111-----0000111" - def VLSEG6E64FF_V = M"b101000-10000-----111-----0000111" - def VLSEG6E8_V = M"b101000-00000-----000-----0000111" - def VLSEG6E8FF_V = M"b101000-10000-----000-----0000111" - def VLSEG7E16_V = M"b110000-00000-----101-----0000111" - def VLSEG7E16FF_V = M"b110000-10000-----101-----0000111" - def VLSEG7E32_V = M"b110000-00000-----110-----0000111" - def VLSEG7E32FF_V = M"b110000-10000-----110-----0000111" - def VLSEG7E64_V = M"b110000-00000-----111-----0000111" - def VLSEG7E64FF_V = M"b110000-10000-----111-----0000111" - def VLSEG7E8_V = M"b110000-00000-----000-----0000111" - def VLSEG7E8FF_V = M"b110000-10000-----000-----0000111" - def VLSEG8E16_V = M"b111000-00000-----101-----0000111" - def VLSEG8E16FF_V = M"b111000-10000-----101-----0000111" - def VLSEG8E32_V = M"b111000-00000-----110-----0000111" - def VLSEG8E32FF_V = M"b111000-10000-----110-----0000111" - def VLSEG8E64_V = M"b111000-00000-----111-----0000111" - def VLSEG8E64FF_V = M"b111000-10000-----111-----0000111" - def VLSEG8E8_V = M"b111000-00000-----000-----0000111" - def VLSEG8E8FF_V = M"b111000-10000-----000-----0000111" - def VLSSEG2E16_V = M"b001010-----------101-----0000111" - def VLSSEG2E32_V = M"b001010-----------110-----0000111" - def VLSSEG2E64_V = M"b001010-----------111-----0000111" - def VLSSEG2E8_V = M"b001010-----------000-----0000111" - def VLSSEG3E16_V = M"b010010-----------101-----0000111" - def VLSSEG3E32_V = M"b010010-----------110-----0000111" - def VLSSEG3E64_V = M"b010010-----------111-----0000111" - def VLSSEG3E8_V = M"b010010-----------000-----0000111" - def VLSSEG4E16_V = M"b011010-----------101-----0000111" - def VLSSEG4E32_V = M"b011010-----------110-----0000111" - def VLSSEG4E64_V = M"b011010-----------111-----0000111" - def VLSSEG4E8_V = M"b011010-----------000-----0000111" - def VLSSEG5E16_V = M"b100010-----------101-----0000111" - def VLSSEG5E32_V = M"b100010-----------110-----0000111" - def VLSSEG5E64_V = M"b100010-----------111-----0000111" - def VLSSEG5E8_V = M"b100010-----------000-----0000111" - def VLSSEG6E16_V = M"b101010-----------101-----0000111" - def VLSSEG6E32_V = M"b101010-----------110-----0000111" - def VLSSEG6E64_V = M"b101010-----------111-----0000111" - def VLSSEG6E8_V = M"b101010-----------000-----0000111" - def VLSSEG7E16_V = M"b110010-----------101-----0000111" - def VLSSEG7E32_V = M"b110010-----------110-----0000111" - def VLSSEG7E64_V = M"b110010-----------111-----0000111" - def VLSSEG7E8_V = M"b110010-----------000-----0000111" - def VLSSEG8E16_V = M"b111010-----------101-----0000111" - def VLSSEG8E32_V = M"b111010-----------110-----0000111" - def VLSSEG8E64_V = M"b111010-----------111-----0000111" - def VLSSEG8E8_V = M"b111010-----------000-----0000111" - def VLUXEI16_V = M"b000001-----------101-----0000111" - def VLUXEI32_V = M"b000001-----------110-----0000111" - def VLUXEI64_V = M"b000001-----------111-----0000111" - def VLUXEI8_V = M"b000001-----------000-----0000111" - def VLUXSEG2EI16_V = M"b001001-----------101-----0000111" - def VLUXSEG2EI32_V = M"b001001-----------110-----0000111" - def VLUXSEG2EI64_V = M"b001001-----------111-----0000111" - def VLUXSEG2EI8_V = M"b001001-----------000-----0000111" - def VLUXSEG3EI16_V = M"b010001-----------101-----0000111" - def VLUXSEG3EI32_V = M"b010001-----------110-----0000111" - def VLUXSEG3EI64_V = M"b010001-----------111-----0000111" - def VLUXSEG3EI8_V = M"b010001-----------000-----0000111" - def VLUXSEG4EI16_V = M"b011001-----------101-----0000111" - def VLUXSEG4EI32_V = M"b011001-----------110-----0000111" - def VLUXSEG4EI64_V = M"b011001-----------111-----0000111" - def VLUXSEG4EI8_V = M"b011001-----------000-----0000111" - def VLUXSEG5EI16_V = M"b100001-----------101-----0000111" - def VLUXSEG5EI32_V = M"b100001-----------110-----0000111" - def VLUXSEG5EI64_V = M"b100001-----------111-----0000111" - def VLUXSEG5EI8_V = M"b100001-----------000-----0000111" - def VLUXSEG6EI16_V = M"b101001-----------101-----0000111" - def VLUXSEG6EI32_V = M"b101001-----------110-----0000111" - def VLUXSEG6EI64_V = M"b101001-----------111-----0000111" - def VLUXSEG6EI8_V = M"b101001-----------000-----0000111" - def VLUXSEG7EI16_V = M"b110001-----------101-----0000111" - def VLUXSEG7EI32_V = M"b110001-----------110-----0000111" - def VLUXSEG7EI64_V = M"b110001-----------111-----0000111" - def VLUXSEG7EI8_V = M"b110001-----------000-----0000111" - def VLUXSEG8EI16_V = M"b111001-----------101-----0000111" - def VLUXSEG8EI32_V = M"b111001-----------110-----0000111" - def VLUXSEG8EI64_V = M"b111001-----------111-----0000111" - def VLUXSEG8EI8_V = M"b111001-----------000-----0000111" - def VMACC_VV = M"b101101-----------010-----1010111" - def VMACC_VX = M"b101101-----------110-----1010111" - def VMADC_VI = M"b0100011----------011-----1010111" - def VMADC_VIM = M"b0100010----------011-----1010111" - def VMADC_VV = M"b0100011----------000-----1010111" - def VMADC_VVM = M"b0100010----------000-----1010111" - def VMADC_VX = M"b0100011----------100-----1010111" - def VMADC_VXM = M"b0100010----------100-----1010111" - def VMADD_VV = M"b101001-----------010-----1010111" - def VMADD_VX = M"b101001-----------110-----1010111" - def VMAND_MM = M"b0110011----------010-----1010111" - def VMANDN_MM = M"b0110001----------010-----1010111" - def VMAX_VV = M"b000111-----------000-----1010111" - def VMAX_VX = M"b000111-----------100-----1010111" - def VMAXU_VV = M"b000110-----------000-----1010111" - def VMAXU_VX = M"b000110-----------100-----1010111" - def VMERGE_VIM = M"b0101110----------011-----1010111" - def VMERGE_VVM = M"b0101110----------000-----1010111" - def VMERGE_VXM = M"b0101110----------100-----1010111" - def VMFEQ_VF = M"b011000-----------101-----1010111" - def VMFEQ_VV = M"b011000-----------001-----1010111" - def VMFGE_VF = M"b011111-----------101-----1010111" - def VMFGT_VF = M"b011101-----------101-----1010111" - def VMFLE_VF = M"b011001-----------101-----1010111" - def VMFLE_VV = M"b011001-----------001-----1010111" - def VMFLT_VF = M"b011011-----------101-----1010111" - def VMFLT_VV = M"b011011-----------001-----1010111" - def VMFNE_VF = M"b011100-----------101-----1010111" - def VMFNE_VV = M"b011100-----------001-----1010111" - def VMIN_VV = M"b000101-----------000-----1010111" - def VMIN_VX = M"b000101-----------100-----1010111" - def VMINU_VV = M"b000100-----------000-----1010111" - def VMINU_VX = M"b000100-----------100-----1010111" - def VMNAND_MM = M"b0111011----------010-----1010111" - def VMNOR_MM = M"b0111101----------010-----1010111" - def VMOR_MM = M"b0110101----------010-----1010111" - def VMORN_MM = M"b0111001----------010-----1010111" - def VMSBC_VV = M"b0100111----------000-----1010111" - def VMSBC_VVM = M"b0100110----------000-----1010111" - def VMSBC_VX = M"b0100111----------100-----1010111" - def VMSBC_VXM = M"b0100110----------100-----1010111" - def VMSBF_M = M"b010100------00001010-----1010111" - def VMSEQ_VI = M"b011000-----------011-----1010111" - def VMSEQ_VV = M"b011000-----------000-----1010111" - def VMSEQ_VX = M"b011000-----------100-----1010111" - def VMSGT_VI = M"b011111-----------011-----1010111" - def VMSGT_VX = M"b011111-----------100-----1010111" - def VMSGTU_VI = M"b011110-----------011-----1010111" - def VMSGTU_VX = M"b011110-----------100-----1010111" - def VMSIF_M = M"b010100------00011010-----1010111" - def VMSLE_VI = M"b011101-----------011-----1010111" - def VMSLE_VV = M"b011101-----------000-----1010111" - def VMSLE_VX = M"b011101-----------100-----1010111" - def VMSLEU_VI = M"b011100-----------011-----1010111" - def VMSLEU_VV = M"b011100-----------000-----1010111" - def VMSLEU_VX = M"b011100-----------100-----1010111" - def VMSLT_VV = M"b011011-----------000-----1010111" - def VMSLT_VX = M"b011011-----------100-----1010111" - def VMSLTU_VV = M"b011010-----------000-----1010111" - def VMSLTU_VX = M"b011010-----------100-----1010111" - def VMSNE_VI = M"b011001-----------011-----1010111" - def VMSNE_VV = M"b011001-----------000-----1010111" - def VMSNE_VX = M"b011001-----------100-----1010111" - def VMSOF_M = M"b010100------00010010-----1010111" - def VMUL_VV = M"b100101-----------010-----1010111" - def VMUL_VX = M"b100101-----------110-----1010111" - def VMULH_VV = M"b100111-----------010-----1010111" - def VMULH_VX = M"b100111-----------110-----1010111" - def VMULHSU_VV = M"b100110-----------010-----1010111" - def VMULHSU_VX = M"b100110-----------110-----1010111" - def VMULHU_VV = M"b100100-----------010-----1010111" - def VMULHU_VX = M"b100100-----------110-----1010111" - def VMV1R_V = M"b1001111-----00000011-----1010111" - def VMV2R_V = M"b1001111-----00001011-----1010111" - def VMV4R_V = M"b1001111-----00011011-----1010111" - def VMV8R_V = M"b1001111-----00111011-----1010111" - def VMV_S_X = M"b010000100000-----110-----1010111" - def VMV_V_I = M"b010111100000-----011-----1010111" - def VMV_V_V = M"b010111100000-----000-----1010111" - def VMV_V_X = M"b010111100000-----100-----1010111" - def VMV_X_S = M"b0100001-----00000010-----1010111" - def VMXNOR_MM = M"b0111111----------010-----1010111" - def VMXOR_MM = M"b0110111----------010-----1010111" - def VNCLIP_WI = M"b101111-----------011-----1010111" - def VNCLIP_WV = M"b101111-----------000-----1010111" - def VNCLIP_WX = M"b101111-----------100-----1010111" - def VNCLIPU_WI = M"b101110-----------011-----1010111" - def VNCLIPU_WV = M"b101110-----------000-----1010111" - def VNCLIPU_WX = M"b101110-----------100-----1010111" - def VNMSAC_VV = M"b101111-----------010-----1010111" - def VNMSAC_VX = M"b101111-----------110-----1010111" - def VNMSUB_VV = M"b101011-----------010-----1010111" - def VNMSUB_VX = M"b101011-----------110-----1010111" - def VNSRA_WI = M"b101101-----------011-----1010111" - def VNSRA_WV = M"b101101-----------000-----1010111" - def VNSRA_WX = M"b101101-----------100-----1010111" - def VNSRL_WI = M"b101100-----------011-----1010111" - def VNSRL_WV = M"b101100-----------000-----1010111" - def VNSRL_WX = M"b101100-----------100-----1010111" - def VOR_VI = M"b001010-----------011-----1010111" - def VOR_VV = M"b001010-----------000-----1010111" - def VOR_VX = M"b001010-----------100-----1010111" - def VREDAND_VS = M"b000001-----------010-----1010111" - def VREDMAX_VS = M"b000111-----------010-----1010111" - def VREDMAXU_VS = M"b000110-----------010-----1010111" - def VREDMIN_VS = M"b000101-----------010-----1010111" - def VREDMINU_VS = M"b000100-----------010-----1010111" - def VREDOR_VS = M"b000010-----------010-----1010111" - def VREDSUM_VS = M"b000000-----------010-----1010111" - def VREDXOR_VS = M"b000011-----------010-----1010111" - def VREM_VV = M"b100011-----------010-----1010111" - def VREM_VX = M"b100011-----------110-----1010111" - def VREMU_VV = M"b100010-----------010-----1010111" - def VREMU_VX = M"b100010-----------110-----1010111" - def VREV8_V = M"b010010------01001010-----1010111" - def VRGATHER_VI = M"b001100-----------011-----1010111" - def VRGATHER_VV = M"b001100-----------000-----1010111" - def VRGATHER_VX = M"b001100-----------100-----1010111" - def VRGATHEREI16_VV = M"b001110-----------000-----1010111" - def VROL_VV = M"b010101-----------000-----1010111" - def VROL_VX = M"b010101-----------100-----1010111" - def VROR_VI = M"b01010------------011-----1010111" - def VROR_VV = M"b010100-----------000-----1010111" - def VROR_VX = M"b010100-----------100-----1010111" - def VRSUB_VI = M"b000011-----------011-----1010111" - def VRSUB_VX = M"b000011-----------100-----1010111" - def VS1R_V = M"b000000101000-----000-----0100111" - def VS2R_V = M"b001000101000-----000-----0100111" - def VS4R_V = M"b011000101000-----000-----0100111" - def VS8R_V = M"b111000101000-----000-----0100111" - def VSADD_VI = M"b100001-----------011-----1010111" - def VSADD_VV = M"b100001-----------000-----1010111" - def VSADD_VX = M"b100001-----------100-----1010111" - def VSADDU_VI = M"b100000-----------011-----1010111" - def VSADDU_VV = M"b100000-----------000-----1010111" - def VSADDU_VX = M"b100000-----------100-----1010111" - def VSBC_VVM = M"b0100100----------000-----1010111" - def VSBC_VXM = M"b0100100----------100-----1010111" - def VSE16_V = M"b000000-00000-----101-----0100111" - def VSE32_V = M"b000000-00000-----110-----0100111" - def VSE64_V = M"b000000-00000-----111-----0100111" - def VSE8_V = M"b000000-00000-----000-----0100111" - def VSETIVLI = M"b11---------------111-----1010111" - def VSETVL = M"b1000000----------111-----1010111" - def VSETVLI = M"b0----------------111-----1010111" - def VSEXT_VF2 = M"b010010------00111010-----1010111" - def VSEXT_VF4 = M"b010010------00101010-----1010111" - def VSEXT_VF8 = M"b010010------00011010-----1010111" - def VSHA2CH_VV = M"b1011101----------010-----1110111" - def VSHA2CL_VV = M"b1011111----------010-----1110111" - def VSHA2MS_VV = M"b1011011----------010-----1110111" - def VSLIDE1DOWN_VX = M"b001111-----------110-----1010111" - def VSLIDE1UP_VX = M"b001110-----------110-----1010111" - def VSLIDEDOWN_VI = M"b001111-----------011-----1010111" - def VSLIDEDOWN_VX = M"b001111-----------100-----1010111" - def VSLIDEUP_VI = M"b001110-----------011-----1010111" - def VSLIDEUP_VX = M"b001110-----------100-----1010111" - def VSLL_VI = M"b100101-----------011-----1010111" - def VSLL_VV = M"b100101-----------000-----1010111" - def VSLL_VX = M"b100101-----------100-----1010111" - def VSM3C_VI = M"b1010111----------010-----1110111" - def VSM3ME_VV = M"b1000001----------010-----1110111" - def VSM4K_VI = M"b1000011----------010-----1110111" - def VSM4R_VS = M"b1010011-----10000010-----1110111" - def VSM4R_VV = M"b1010001-----10000010-----1110111" - def VSM_V = M"b000000101011-----000-----0100111" - def VSMUL_VV = M"b100111-----------000-----1010111" - def VSMUL_VX = M"b100111-----------100-----1010111" - def VSOXEI16_V = M"b000011-----------101-----0100111" - def VSOXEI32_V = M"b000011-----------110-----0100111" - def VSOXEI64_V = M"b000011-----------111-----0100111" - def VSOXEI8_V = M"b000011-----------000-----0100111" - def VSOXSEG2EI16_V = M"b001011-----------101-----0100111" - def VSOXSEG2EI32_V = M"b001011-----------110-----0100111" - def VSOXSEG2EI64_V = M"b001011-----------111-----0100111" - def VSOXSEG2EI8_V = M"b001011-----------000-----0100111" - def VSOXSEG3EI16_V = M"b010011-----------101-----0100111" - def VSOXSEG3EI32_V = M"b010011-----------110-----0100111" - def VSOXSEG3EI64_V = M"b010011-----------111-----0100111" - def VSOXSEG3EI8_V = M"b010011-----------000-----0100111" - def VSOXSEG4EI16_V = M"b011011-----------101-----0100111" - def VSOXSEG4EI32_V = M"b011011-----------110-----0100111" - def VSOXSEG4EI64_V = M"b011011-----------111-----0100111" - def VSOXSEG4EI8_V = M"b011011-----------000-----0100111" - def VSOXSEG5EI16_V = M"b100011-----------101-----0100111" - def VSOXSEG5EI32_V = M"b100011-----------110-----0100111" - def VSOXSEG5EI64_V = M"b100011-----------111-----0100111" - def VSOXSEG5EI8_V = M"b100011-----------000-----0100111" - def VSOXSEG6EI16_V = M"b101011-----------101-----0100111" - def VSOXSEG6EI32_V = M"b101011-----------110-----0100111" - def VSOXSEG6EI64_V = M"b101011-----------111-----0100111" - def VSOXSEG6EI8_V = M"b101011-----------000-----0100111" - def VSOXSEG7EI16_V = M"b110011-----------101-----0100111" - def VSOXSEG7EI32_V = M"b110011-----------110-----0100111" - def VSOXSEG7EI64_V = M"b110011-----------111-----0100111" - def VSOXSEG7EI8_V = M"b110011-----------000-----0100111" - def VSOXSEG8EI16_V = M"b111011-----------101-----0100111" - def VSOXSEG8EI32_V = M"b111011-----------110-----0100111" - def VSOXSEG8EI64_V = M"b111011-----------111-----0100111" - def VSOXSEG8EI8_V = M"b111011-----------000-----0100111" - def VSRA_VI = M"b101001-----------011-----1010111" - def VSRA_VV = M"b101001-----------000-----1010111" - def VSRA_VX = M"b101001-----------100-----1010111" - def VSRL_VI = M"b101000-----------011-----1010111" - def VSRL_VV = M"b101000-----------000-----1010111" - def VSRL_VX = M"b101000-----------100-----1010111" - def VSSE16_V = M"b000010-----------101-----0100111" - def VSSE32_V = M"b000010-----------110-----0100111" - def VSSE64_V = M"b000010-----------111-----0100111" - def VSSE8_V = M"b000010-----------000-----0100111" - def VSSEG2E16_V = M"b001000-00000-----101-----0100111" - def VSSEG2E32_V = M"b001000-00000-----110-----0100111" - def VSSEG2E64_V = M"b001000-00000-----111-----0100111" - def VSSEG2E8_V = M"b001000-00000-----000-----0100111" - def VSSEG3E16_V = M"b010000-00000-----101-----0100111" - def VSSEG3E32_V = M"b010000-00000-----110-----0100111" - def VSSEG3E64_V = M"b010000-00000-----111-----0100111" - def VSSEG3E8_V = M"b010000-00000-----000-----0100111" - def VSSEG4E16_V = M"b011000-00000-----101-----0100111" - def VSSEG4E32_V = M"b011000-00000-----110-----0100111" - def VSSEG4E64_V = M"b011000-00000-----111-----0100111" - def VSSEG4E8_V = M"b011000-00000-----000-----0100111" - def VSSEG5E16_V = M"b100000-00000-----101-----0100111" - def VSSEG5E32_V = M"b100000-00000-----110-----0100111" - def VSSEG5E64_V = M"b100000-00000-----111-----0100111" - def VSSEG5E8_V = M"b100000-00000-----000-----0100111" - def VSSEG6E16_V = M"b101000-00000-----101-----0100111" - def VSSEG6E32_V = M"b101000-00000-----110-----0100111" - def VSSEG6E64_V = M"b101000-00000-----111-----0100111" - def VSSEG6E8_V = M"b101000-00000-----000-----0100111" - def VSSEG7E16_V = M"b110000-00000-----101-----0100111" - def VSSEG7E32_V = M"b110000-00000-----110-----0100111" - def VSSEG7E64_V = M"b110000-00000-----111-----0100111" - def VSSEG7E8_V = M"b110000-00000-----000-----0100111" - def VSSEG8E16_V = M"b111000-00000-----101-----0100111" - def VSSEG8E32_V = M"b111000-00000-----110-----0100111" - def VSSEG8E64_V = M"b111000-00000-----111-----0100111" - def VSSEG8E8_V = M"b111000-00000-----000-----0100111" - def VSSRA_VI = M"b101011-----------011-----1010111" - def VSSRA_VV = M"b101011-----------000-----1010111" - def VSSRA_VX = M"b101011-----------100-----1010111" - def VSSRL_VI = M"b101010-----------011-----1010111" - def VSSRL_VV = M"b101010-----------000-----1010111" - def VSSRL_VX = M"b101010-----------100-----1010111" - def VSSSEG2E16_V = M"b001010-----------101-----0100111" - def VSSSEG2E32_V = M"b001010-----------110-----0100111" - def VSSSEG2E64_V = M"b001010-----------111-----0100111" - def VSSSEG2E8_V = M"b001010-----------000-----0100111" - def VSSSEG3E16_V = M"b010010-----------101-----0100111" - def VSSSEG3E32_V = M"b010010-----------110-----0100111" - def VSSSEG3E64_V = M"b010010-----------111-----0100111" - def VSSSEG3E8_V = M"b010010-----------000-----0100111" - def VSSSEG4E16_V = M"b011010-----------101-----0100111" - def VSSSEG4E32_V = M"b011010-----------110-----0100111" - def VSSSEG4E64_V = M"b011010-----------111-----0100111" - def VSSSEG4E8_V = M"b011010-----------000-----0100111" - def VSSSEG5E16_V = M"b100010-----------101-----0100111" - def VSSSEG5E32_V = M"b100010-----------110-----0100111" - def VSSSEG5E64_V = M"b100010-----------111-----0100111" - def VSSSEG5E8_V = M"b100010-----------000-----0100111" - def VSSSEG6E16_V = M"b101010-----------101-----0100111" - def VSSSEG6E32_V = M"b101010-----------110-----0100111" - def VSSSEG6E64_V = M"b101010-----------111-----0100111" - def VSSSEG6E8_V = M"b101010-----------000-----0100111" - def VSSSEG7E16_V = M"b110010-----------101-----0100111" - def VSSSEG7E32_V = M"b110010-----------110-----0100111" - def VSSSEG7E64_V = M"b110010-----------111-----0100111" - def VSSSEG7E8_V = M"b110010-----------000-----0100111" - def VSSSEG8E16_V = M"b111010-----------101-----0100111" - def VSSSEG8E32_V = M"b111010-----------110-----0100111" - def VSSSEG8E64_V = M"b111010-----------111-----0100111" - def VSSSEG8E8_V = M"b111010-----------000-----0100111" - def VSSUB_VV = M"b100011-----------000-----1010111" - def VSSUB_VX = M"b100011-----------100-----1010111" - def VSSUBU_VV = M"b100010-----------000-----1010111" - def VSSUBU_VX = M"b100010-----------100-----1010111" - def VSUB_VV = M"b000010-----------000-----1010111" - def VSUB_VX = M"b000010-----------100-----1010111" - def VSUXEI16_V = M"b000001-----------101-----0100111" - def VSUXEI32_V = M"b000001-----------110-----0100111" - def VSUXEI64_V = M"b000001-----------111-----0100111" - def VSUXEI8_V = M"b000001-----------000-----0100111" - def VSUXSEG2EI16_V = M"b001001-----------101-----0100111" - def VSUXSEG2EI32_V = M"b001001-----------110-----0100111" - def VSUXSEG2EI64_V = M"b001001-----------111-----0100111" - def VSUXSEG2EI8_V = M"b001001-----------000-----0100111" - def VSUXSEG3EI16_V = M"b010001-----------101-----0100111" - def VSUXSEG3EI32_V = M"b010001-----------110-----0100111" - def VSUXSEG3EI64_V = M"b010001-----------111-----0100111" - def VSUXSEG3EI8_V = M"b010001-----------000-----0100111" - def VSUXSEG4EI16_V = M"b011001-----------101-----0100111" - def VSUXSEG4EI32_V = M"b011001-----------110-----0100111" - def VSUXSEG4EI64_V = M"b011001-----------111-----0100111" - def VSUXSEG4EI8_V = M"b011001-----------000-----0100111" - def VSUXSEG5EI16_V = M"b100001-----------101-----0100111" - def VSUXSEG5EI32_V = M"b100001-----------110-----0100111" - def VSUXSEG5EI64_V = M"b100001-----------111-----0100111" - def VSUXSEG5EI8_V = M"b100001-----------000-----0100111" - def VSUXSEG6EI16_V = M"b101001-----------101-----0100111" - def VSUXSEG6EI32_V = M"b101001-----------110-----0100111" - def VSUXSEG6EI64_V = M"b101001-----------111-----0100111" - def VSUXSEG6EI8_V = M"b101001-----------000-----0100111" - def VSUXSEG7EI16_V = M"b110001-----------101-----0100111" - def VSUXSEG7EI32_V = M"b110001-----------110-----0100111" - def VSUXSEG7EI64_V = M"b110001-----------111-----0100111" - def VSUXSEG7EI8_V = M"b110001-----------000-----0100111" - def VSUXSEG8EI16_V = M"b111001-----------101-----0100111" - def VSUXSEG8EI32_V = M"b111001-----------110-----0100111" - def VSUXSEG8EI64_V = M"b111001-----------111-----0100111" - def VSUXSEG8EI8_V = M"b111001-----------000-----0100111" - def VWADD_VV = M"b110001-----------010-----1010111" - def VWADD_VX = M"b110001-----------110-----1010111" - def VWADD_WV = M"b110101-----------010-----1010111" - def VWADD_WX = M"b110101-----------110-----1010111" - def VWADDU_VV = M"b110000-----------010-----1010111" - def VWADDU_VX = M"b110000-----------110-----1010111" - def VWADDU_WV = M"b110100-----------010-----1010111" - def VWADDU_WX = M"b110100-----------110-----1010111" - def VWMACC_VV = M"b111101-----------010-----1010111" - def VWMACC_VX = M"b111101-----------110-----1010111" - def VWMACCSU_VV = M"b111111-----------010-----1010111" - def VWMACCSU_VX = M"b111111-----------110-----1010111" - def VWMACCU_VV = M"b111100-----------010-----1010111" - def VWMACCU_VX = M"b111100-----------110-----1010111" - def VWMACCUS_VX = M"b111110-----------110-----1010111" - def VWMUL_VV = M"b111011-----------010-----1010111" - def VWMUL_VX = M"b111011-----------110-----1010111" - def VWMULSU_VV = M"b111010-----------010-----1010111" - def VWMULSU_VX = M"b111010-----------110-----1010111" - def VWMULU_VV = M"b111000-----------010-----1010111" - def VWMULU_VX = M"b111000-----------110-----1010111" - def VWREDSUM_VS = M"b110001-----------000-----1010111" - def VWREDSUMU_VS = M"b110000-----------000-----1010111" - def VWSLL_VI = M"b110101-----------011-----1010111" - def VWSLL_VV = M"b110101-----------000-----1010111" - def VWSLL_VX = M"b110101-----------100-----1010111" - def VWSUB_VV = M"b110011-----------010-----1010111" - def VWSUB_VX = M"b110011-----------110-----1010111" - def VWSUB_WV = M"b110111-----------010-----1010111" - def VWSUB_WX = M"b110111-----------110-----1010111" - def VWSUBU_VV = M"b110010-----------010-----1010111" - def VWSUBU_VX = M"b110010-----------110-----1010111" - def VWSUBU_WV = M"b110110-----------010-----1010111" - def VWSUBU_WX = M"b110110-----------110-----1010111" - def VXOR_VI = M"b001011-----------011-----1010111" - def VXOR_VV = M"b001011-----------000-----1010111" - def VXOR_VX = M"b001011-----------100-----1010111" - def VZEXT_VF2 = M"b010010------00110010-----1010111" - def VZEXT_VF4 = M"b010010------00100010-----1010111" - def VZEXT_VF8 = M"b010010------00010010-----1010111" - def WFI = M"b00010000010100000000000001110011" - def WRS_NTO = M"b00000000110100000000000001110011" - def WRS_STO = M"b00000001110100000000000001110011" - def XNOR = M"b0100000----------100-----0110011" - def XOR = M"b0000000----------100-----0110011" - def XORI = M"b-----------------100-----0010011" - def XPERM4 = M"b0010100----------010-----0110011" - def XPERM8 = M"b0010100----------100-----0110011" - def ZEXT_H = M"b000010000000-----100-----0111011" - def ZIP = M"b000010001111-----001-----0010011" - -} -object Causes { - val misaligned_fetch = 0x0 - val fetch_access = 0x1 - val illegal_instruction = 0x2 - val breakpoint = 0x3 - val misaligned_load = 0x4 - val load_access = 0x5 - val misaligned_store = 0x6 - val store_access = 0x7 - val user_ecall = 0x8 - val supervisor_ecall = 0x9 - val virtual_supervisor_ecall = 0xa - val machine_ecall = 0xb - val fetch_page_fault = 0xc - val load_page_fault = 0xd - val store_page_fault = 0xf - val double_trap = 0x10 - val software_check_fault = 0x12 - val hardware_error_fault = 0x13 - val fetch_guest_page_fault = 0x14 - val load_guest_page_fault = 0x15 - val virtual_instruction = 0x16 - val store_guest_page_fault = 0x17 - val all = { - val res = collection.mutable.ArrayBuffer[Int]() - res += misaligned_fetch - res += fetch_access - res += illegal_instruction - res += breakpoint - res += misaligned_load - res += load_access - res += misaligned_store - res += store_access - res += user_ecall - res += supervisor_ecall - res += virtual_supervisor_ecall - res += machine_ecall - res += fetch_page_fault - res += load_page_fault - res += store_page_fault - res += double_trap - res += software_check_fault - res += hardware_error_fault - res += fetch_guest_page_fault - res += load_guest_page_fault - res += virtual_instruction - res += store_guest_page_fault - res.toArray - } -} -object CSRs { - val fflags = 0x1 - val frm = 0x2 - val fcsr = 0x3 - val vstart = 0x8 - val vxsat = 0x9 - val vxrm = 0xa - val vcsr = 0xf - val ssp = 0x11 - val seed = 0x15 - val jvt = 0x17 - val cycle = 0xc00 - val time = 0xc01 - val instret = 0xc02 - val hpmcounter3 = 0xc03 - val hpmcounter4 = 0xc04 - val hpmcounter5 = 0xc05 - val hpmcounter6 = 0xc06 - val hpmcounter7 = 0xc07 - val hpmcounter8 = 0xc08 - val hpmcounter9 = 0xc09 - val hpmcounter10 = 0xc0a - val hpmcounter11 = 0xc0b - val hpmcounter12 = 0xc0c - val hpmcounter13 = 0xc0d - val hpmcounter14 = 0xc0e - val hpmcounter15 = 0xc0f - val hpmcounter16 = 0xc10 - val hpmcounter17 = 0xc11 - val hpmcounter18 = 0xc12 - val hpmcounter19 = 0xc13 - val hpmcounter20 = 0xc14 - val hpmcounter21 = 0xc15 - val hpmcounter22 = 0xc16 - val hpmcounter23 = 0xc17 - val hpmcounter24 = 0xc18 - val hpmcounter25 = 0xc19 - val hpmcounter26 = 0xc1a - val hpmcounter27 = 0xc1b - val hpmcounter28 = 0xc1c - val hpmcounter29 = 0xc1d - val hpmcounter30 = 0xc1e - val hpmcounter31 = 0xc1f - val vl = 0xc20 - val vtype = 0xc21 - val vlenb = 0xc22 - val sstatus = 0x100 - val sedeleg = 0x102 - val sideleg = 0x103 - val sie = 0x104 - val stvec = 0x105 - val scounteren = 0x106 - val senvcfg = 0x10a - val sstateen0 = 0x10c - val sstateen1 = 0x10d - val sstateen2 = 0x10e - val sstateen3 = 0x10f - val scountinhibit = 0x120 - val sscratch = 0x140 - val sepc = 0x141 - val scause = 0x142 - val stval = 0x143 - val sip = 0x144 - val stimecmp = 0x14d - val sctrctl = 0x14e - val sctrstatus = 0x14f - val siselect = 0x150 - val sireg = 0x151 - val sireg2 = 0x152 - val sireg3 = 0x153 - val sireg4 = 0x155 - val sireg5 = 0x156 - val sireg6 = 0x157 - val stopei = 0x15c - val sctrdepth = 0x15f - val satp = 0x180 - val srmcfg = 0x181 - val scontext = 0x5a8 - val vsstatus = 0x200 - val vsie = 0x204 - val vstvec = 0x205 - val vsscratch = 0x240 - val vsepc = 0x241 - val vscause = 0x242 - val vstval = 0x243 - val vsip = 0x244 - val vstimecmp = 0x24d - val vsctrctl = 0x24e - val vsiselect = 0x250 - val vsireg = 0x251 - val vsireg2 = 0x252 - val vsireg3 = 0x253 - val vsireg4 = 0x255 - val vsireg5 = 0x256 - val vsireg6 = 0x257 - val vstopei = 0x25c - val vsatp = 0x280 - val hstatus = 0x600 - val hedeleg = 0x602 - val hideleg = 0x603 - val hie = 0x604 - val htimedelta = 0x605 - val hcounteren = 0x606 - val hgeie = 0x607 - val hvien = 0x608 - val hvictl = 0x609 - val henvcfg = 0x60a - val hstateen0 = 0x60c - val hstateen1 = 0x60d - val hstateen2 = 0x60e - val hstateen3 = 0x60f - val htval = 0x643 - val hip = 0x644 - val hvip = 0x645 - val hviprio1 = 0x646 - val hviprio2 = 0x647 - val htinst = 0x64a - val hgatp = 0x680 - val hcontext = 0x6a8 - val hgeip = 0xe12 - val vstopi = 0xeb0 - val scountovf = 0xda0 - val stopi = 0xdb0 - val utvt = 0x7 - val unxti = 0x45 - val uintstatus = 0x46 - val uscratchcsw = 0x48 - val uscratchcswl = 0x49 - val stvt = 0x107 - val snxti = 0x145 - val sintstatus = 0x146 - val sscratchcsw = 0x148 - val sscratchcswl = 0x149 - val mtvt = 0x307 - val mnxti = 0x345 - val mintstatus = 0x346 - val mscratchcsw = 0x348 - val mscratchcswl = 0x349 - val mstatus = 0x300 - val misa = 0x301 - val medeleg = 0x302 - val mideleg = 0x303 - val mie = 0x304 - val mtvec = 0x305 - val mcounteren = 0x306 - val mvien = 0x308 - val mvip = 0x309 - val menvcfg = 0x30a - val mstateen0 = 0x30c - val mstateen1 = 0x30d - val mstateen2 = 0x30e - val mstateen3 = 0x30f - val mcountinhibit = 0x320 - val mscratch = 0x340 - val mepc = 0x341 - val mcause = 0x342 - val mtval = 0x343 - val mip = 0x344 - val mtinst = 0x34a - val mtval2 = 0x34b - val mctrctl = 0x34e - val miselect = 0x350 - val mireg = 0x351 - val mireg2 = 0x352 - val mireg3 = 0x353 - val mireg4 = 0x355 - val mireg5 = 0x356 - val mireg6 = 0x357 - val mtopei = 0x35c - val pmpcfg0 = 0x3a0 - val pmpcfg1 = 0x3a1 - val pmpcfg2 = 0x3a2 - val pmpcfg3 = 0x3a3 - val pmpcfg4 = 0x3a4 - val pmpcfg5 = 0x3a5 - val pmpcfg6 = 0x3a6 - val pmpcfg7 = 0x3a7 - val pmpcfg8 = 0x3a8 - val pmpcfg9 = 0x3a9 - val pmpcfg10 = 0x3aa - val pmpcfg11 = 0x3ab - val pmpcfg12 = 0x3ac - val pmpcfg13 = 0x3ad - val pmpcfg14 = 0x3ae - val pmpcfg15 = 0x3af - val pmpaddr0 = 0x3b0 - val pmpaddr1 = 0x3b1 - val pmpaddr2 = 0x3b2 - val pmpaddr3 = 0x3b3 - val pmpaddr4 = 0x3b4 - val pmpaddr5 = 0x3b5 - val pmpaddr6 = 0x3b6 - val pmpaddr7 = 0x3b7 - val pmpaddr8 = 0x3b8 - val pmpaddr9 = 0x3b9 - val pmpaddr10 = 0x3ba - val pmpaddr11 = 0x3bb - val pmpaddr12 = 0x3bc - val pmpaddr13 = 0x3bd - val pmpaddr14 = 0x3be - val pmpaddr15 = 0x3bf - val pmpaddr16 = 0x3c0 - val pmpaddr17 = 0x3c1 - val pmpaddr18 = 0x3c2 - val pmpaddr19 = 0x3c3 - val pmpaddr20 = 0x3c4 - val pmpaddr21 = 0x3c5 - val pmpaddr22 = 0x3c6 - val pmpaddr23 = 0x3c7 - val pmpaddr24 = 0x3c8 - val pmpaddr25 = 0x3c9 - val pmpaddr26 = 0x3ca - val pmpaddr27 = 0x3cb - val pmpaddr28 = 0x3cc - val pmpaddr29 = 0x3cd - val pmpaddr30 = 0x3ce - val pmpaddr31 = 0x3cf - val pmpaddr32 = 0x3d0 - val pmpaddr33 = 0x3d1 - val pmpaddr34 = 0x3d2 - val pmpaddr35 = 0x3d3 - val pmpaddr36 = 0x3d4 - val pmpaddr37 = 0x3d5 - val pmpaddr38 = 0x3d6 - val pmpaddr39 = 0x3d7 - val pmpaddr40 = 0x3d8 - val pmpaddr41 = 0x3d9 - val pmpaddr42 = 0x3da - val pmpaddr43 = 0x3db - val pmpaddr44 = 0x3dc - val pmpaddr45 = 0x3dd - val pmpaddr46 = 0x3de - val pmpaddr47 = 0x3df - val pmpaddr48 = 0x3e0 - val pmpaddr49 = 0x3e1 - val pmpaddr50 = 0x3e2 - val pmpaddr51 = 0x3e3 - val pmpaddr52 = 0x3e4 - val pmpaddr53 = 0x3e5 - val pmpaddr54 = 0x3e6 - val pmpaddr55 = 0x3e7 - val pmpaddr56 = 0x3e8 - val pmpaddr57 = 0x3e9 - val pmpaddr58 = 0x3ea - val pmpaddr59 = 0x3eb - val pmpaddr60 = 0x3ec - val pmpaddr61 = 0x3ed - val pmpaddr62 = 0x3ee - val pmpaddr63 = 0x3ef - val mseccfg = 0x747 - val tselect = 0x7a0 - val tdata1 = 0x7a1 - val tdata2 = 0x7a2 - val tdata3 = 0x7a3 - val tinfo = 0x7a4 - val tcontrol = 0x7a5 - val mcontext = 0x7a8 - val mscontext = 0x7aa - val dcsr = 0x7b0 - val dpc = 0x7b1 - val dscratch0 = 0x7b2 - val dscratch1 = 0x7b3 - val mcycle = 0xb00 - val minstret = 0xb02 - val mhpmcounter3 = 0xb03 - val mhpmcounter4 = 0xb04 - val mhpmcounter5 = 0xb05 - val mhpmcounter6 = 0xb06 - val mhpmcounter7 = 0xb07 - val mhpmcounter8 = 0xb08 - val mhpmcounter9 = 0xb09 - val mhpmcounter10 = 0xb0a - val mhpmcounter11 = 0xb0b - val mhpmcounter12 = 0xb0c - val mhpmcounter13 = 0xb0d - val mhpmcounter14 = 0xb0e - val mhpmcounter15 = 0xb0f - val mhpmcounter16 = 0xb10 - val mhpmcounter17 = 0xb11 - val mhpmcounter18 = 0xb12 - val mhpmcounter19 = 0xb13 - val mhpmcounter20 = 0xb14 - val mhpmcounter21 = 0xb15 - val mhpmcounter22 = 0xb16 - val mhpmcounter23 = 0xb17 - val mhpmcounter24 = 0xb18 - val mhpmcounter25 = 0xb19 - val mhpmcounter26 = 0xb1a - val mhpmcounter27 = 0xb1b - val mhpmcounter28 = 0xb1c - val mhpmcounter29 = 0xb1d - val mhpmcounter30 = 0xb1e - val mhpmcounter31 = 0xb1f - val mcyclecfg = 0x321 - val minstretcfg = 0x322 - val mhpmevent3 = 0x323 - val mhpmevent4 = 0x324 - val mhpmevent5 = 0x325 - val mhpmevent6 = 0x326 - val mhpmevent7 = 0x327 - val mhpmevent8 = 0x328 - val mhpmevent9 = 0x329 - val mhpmevent10 = 0x32a - val mhpmevent11 = 0x32b - val mhpmevent12 = 0x32c - val mhpmevent13 = 0x32d - val mhpmevent14 = 0x32e - val mhpmevent15 = 0x32f - val mhpmevent16 = 0x330 - val mhpmevent17 = 0x331 - val mhpmevent18 = 0x332 - val mhpmevent19 = 0x333 - val mhpmevent20 = 0x334 - val mhpmevent21 = 0x335 - val mhpmevent22 = 0x336 - val mhpmevent23 = 0x337 - val mhpmevent24 = 0x338 - val mhpmevent25 = 0x339 - val mhpmevent26 = 0x33a - val mhpmevent27 = 0x33b - val mhpmevent28 = 0x33c - val mhpmevent29 = 0x33d - val mhpmevent30 = 0x33e - val mhpmevent31 = 0x33f - val mvendorid = 0xf11 - val marchid = 0xf12 - val mimpid = 0xf13 - val mhartid = 0xf14 - val mconfigptr = 0xf15 - val mtopi = 0xfb0 - val sieh = 0x114 - val siph = 0x154 - val stimecmph = 0x15d - val vsieh = 0x214 - val vsiph = 0x254 - val vstimecmph = 0x25d - val hedelegh = 0x612 - val htimedeltah = 0x615 - val hidelegh = 0x613 - val hvienh = 0x618 - val henvcfgh = 0x61a - val hviph = 0x655 - val hviprio1h = 0x656 - val hviprio2h = 0x657 - val hstateen0h = 0x61c - val hstateen1h = 0x61d - val hstateen2h = 0x61e - val hstateen3h = 0x61f - val cycleh = 0xc80 - val timeh = 0xc81 - val instreth = 0xc82 - val hpmcounter3h = 0xc83 - val hpmcounter4h = 0xc84 - val hpmcounter5h = 0xc85 - val hpmcounter6h = 0xc86 - val hpmcounter7h = 0xc87 - val hpmcounter8h = 0xc88 - val hpmcounter9h = 0xc89 - val hpmcounter10h = 0xc8a - val hpmcounter11h = 0xc8b - val hpmcounter12h = 0xc8c - val hpmcounter13h = 0xc8d - val hpmcounter14h = 0xc8e - val hpmcounter15h = 0xc8f - val hpmcounter16h = 0xc90 - val hpmcounter17h = 0xc91 - val hpmcounter18h = 0xc92 - val hpmcounter19h = 0xc93 - val hpmcounter20h = 0xc94 - val hpmcounter21h = 0xc95 - val hpmcounter22h = 0xc96 - val hpmcounter23h = 0xc97 - val hpmcounter24h = 0xc98 - val hpmcounter25h = 0xc99 - val hpmcounter26h = 0xc9a - val hpmcounter27h = 0xc9b - val hpmcounter28h = 0xc9c - val hpmcounter29h = 0xc9d - val hpmcounter30h = 0xc9e - val hpmcounter31h = 0xc9f - val mstatush = 0x310 - val midelegh = 0x313 - val mieh = 0x314 - val mvienh = 0x318 - val mviph = 0x319 - val menvcfgh = 0x31a - val mstateen0h = 0x31c - val mstateen1h = 0x31d - val mstateen2h = 0x31e - val mstateen3h = 0x31f - val miph = 0x354 - val mcyclecfgh = 0x721 - val minstretcfgh = 0x722 - val mhpmevent3h = 0x723 - val mhpmevent4h = 0x724 - val mhpmevent5h = 0x725 - val mhpmevent6h = 0x726 - val mhpmevent7h = 0x727 - val mhpmevent8h = 0x728 - val mhpmevent9h = 0x729 - val mhpmevent10h = 0x72a - val mhpmevent11h = 0x72b - val mhpmevent12h = 0x72c - val mhpmevent13h = 0x72d - val mhpmevent14h = 0x72e - val mhpmevent15h = 0x72f - val mhpmevent16h = 0x730 - val mhpmevent17h = 0x731 - val mhpmevent18h = 0x732 - val mhpmevent19h = 0x733 - val mhpmevent20h = 0x734 - val mhpmevent21h = 0x735 - val mhpmevent22h = 0x736 - val mhpmevent23h = 0x737 - val mhpmevent24h = 0x738 - val mhpmevent25h = 0x739 - val mhpmevent26h = 0x73a - val mhpmevent27h = 0x73b - val mhpmevent28h = 0x73c - val mhpmevent29h = 0x73d - val mhpmevent30h = 0x73e - val mhpmevent31h = 0x73f - val mnscratch = 0x740 - val mnepc = 0x741 - val mncause = 0x742 - val mnstatus = 0x744 - val mseccfgh = 0x757 - val mcycleh = 0xb80 - val minstreth = 0xb82 - val mhpmcounter3h = 0xb83 - val mhpmcounter4h = 0xb84 - val mhpmcounter5h = 0xb85 - val mhpmcounter6h = 0xb86 - val mhpmcounter7h = 0xb87 - val mhpmcounter8h = 0xb88 - val mhpmcounter9h = 0xb89 - val mhpmcounter10h = 0xb8a - val mhpmcounter11h = 0xb8b - val mhpmcounter12h = 0xb8c - val mhpmcounter13h = 0xb8d - val mhpmcounter14h = 0xb8e - val mhpmcounter15h = 0xb8f - val mhpmcounter16h = 0xb90 - val mhpmcounter17h = 0xb91 - val mhpmcounter18h = 0xb92 - val mhpmcounter19h = 0xb93 - val mhpmcounter20h = 0xb94 - val mhpmcounter21h = 0xb95 - val mhpmcounter22h = 0xb96 - val mhpmcounter23h = 0xb97 - val mhpmcounter24h = 0xb98 - val mhpmcounter25h = 0xb99 - val mhpmcounter26h = 0xb9a - val mhpmcounter27h = 0xb9b - val mhpmcounter28h = 0xb9c - val mhpmcounter29h = 0xb9d - val mhpmcounter30h = 0xb9e - val mhpmcounter31h = 0xb9f - val all = { - val res = collection.mutable.ArrayBuffer[Int]() - res += fflags - res += frm - res += fcsr - res += vstart - res += vxsat - res += vxrm - res += vcsr - res += ssp - res += seed - res += jvt - res += cycle - res += time - res += instret - res += hpmcounter3 - res += hpmcounter4 - res += hpmcounter5 - res += hpmcounter6 - res += hpmcounter7 - res += hpmcounter8 - res += hpmcounter9 - res += hpmcounter10 - res += hpmcounter11 - res += hpmcounter12 - res += hpmcounter13 - res += hpmcounter14 - res += hpmcounter15 - res += hpmcounter16 - res += hpmcounter17 - res += hpmcounter18 - res += hpmcounter19 - res += hpmcounter20 - res += hpmcounter21 - res += hpmcounter22 - res += hpmcounter23 - res += hpmcounter24 - res += hpmcounter25 - res += hpmcounter26 - res += hpmcounter27 - res += hpmcounter28 - res += hpmcounter29 - res += hpmcounter30 - res += hpmcounter31 - res += vl - res += vtype - res += vlenb - res += sstatus - res += sedeleg - res += sideleg - res += sie - res += stvec - res += scounteren - res += senvcfg - res += sstateen0 - res += sstateen1 - res += sstateen2 - res += sstateen3 - res += scountinhibit - res += sscratch - res += sepc - res += scause - res += stval - res += sip - res += stimecmp - res += sctrctl - res += sctrstatus - res += siselect - res += sireg - res += sireg2 - res += sireg3 - res += sireg4 - res += sireg5 - res += sireg6 - res += stopei - res += sctrdepth - res += satp - res += srmcfg - res += scontext - res += vsstatus - res += vsie - res += vstvec - res += vsscratch - res += vsepc - res += vscause - res += vstval - res += vsip - res += vstimecmp - res += vsctrctl - res += vsiselect - res += vsireg - res += vsireg2 - res += vsireg3 - res += vsireg4 - res += vsireg5 - res += vsireg6 - res += vstopei - res += vsatp - res += hstatus - res += hedeleg - res += hideleg - res += hie - res += htimedelta - res += hcounteren - res += hgeie - res += hvien - res += hvictl - res += henvcfg - res += hstateen0 - res += hstateen1 - res += hstateen2 - res += hstateen3 - res += htval - res += hip - res += hvip - res += hviprio1 - res += hviprio2 - res += htinst - res += hgatp - res += hcontext - res += hgeip - res += vstopi - res += scountovf - res += stopi - res += utvt - res += unxti - res += uintstatus - res += uscratchcsw - res += uscratchcswl - res += stvt - res += snxti - res += sintstatus - res += sscratchcsw - res += sscratchcswl - res += mtvt - res += mnxti - res += mintstatus - res += mscratchcsw - res += mscratchcswl - res += mstatus - res += misa - res += medeleg - res += mideleg - res += mie - res += mtvec - res += mcounteren - res += mvien - res += mvip - res += menvcfg - res += mstateen0 - res += mstateen1 - res += mstateen2 - res += mstateen3 - res += mcountinhibit - res += mscratch - res += mepc - res += mcause - res += mtval - res += mip - res += mtinst - res += mtval2 - res += mctrctl - res += miselect - res += mireg - res += mireg2 - res += mireg3 - res += mireg4 - res += mireg5 - res += mireg6 - res += mtopei - res += pmpcfg0 - res += pmpcfg1 - res += pmpcfg2 - res += pmpcfg3 - res += pmpcfg4 - res += pmpcfg5 - res += pmpcfg6 - res += pmpcfg7 - res += pmpcfg8 - res += pmpcfg9 - res += pmpcfg10 - res += pmpcfg11 - res += pmpcfg12 - res += pmpcfg13 - res += pmpcfg14 - res += pmpcfg15 - res += pmpaddr0 - res += pmpaddr1 - res += pmpaddr2 - res += pmpaddr3 - res += pmpaddr4 - res += pmpaddr5 - res += pmpaddr6 - res += pmpaddr7 - res += pmpaddr8 - res += pmpaddr9 - res += pmpaddr10 - res += pmpaddr11 - res += pmpaddr12 - res += pmpaddr13 - res += pmpaddr14 - res += pmpaddr15 - res += pmpaddr16 - res += pmpaddr17 - res += pmpaddr18 - res += pmpaddr19 - res += pmpaddr20 - res += pmpaddr21 - res += pmpaddr22 - res += pmpaddr23 - res += pmpaddr24 - res += pmpaddr25 - res += pmpaddr26 - res += pmpaddr27 - res += pmpaddr28 - res += pmpaddr29 - res += pmpaddr30 - res += pmpaddr31 - res += pmpaddr32 - res += pmpaddr33 - res += pmpaddr34 - res += pmpaddr35 - res += pmpaddr36 - res += pmpaddr37 - res += pmpaddr38 - res += pmpaddr39 - res += pmpaddr40 - res += pmpaddr41 - res += pmpaddr42 - res += pmpaddr43 - res += pmpaddr44 - res += pmpaddr45 - res += pmpaddr46 - res += pmpaddr47 - res += pmpaddr48 - res += pmpaddr49 - res += pmpaddr50 - res += pmpaddr51 - res += pmpaddr52 - res += pmpaddr53 - res += pmpaddr54 - res += pmpaddr55 - res += pmpaddr56 - res += pmpaddr57 - res += pmpaddr58 - res += pmpaddr59 - res += pmpaddr60 - res += pmpaddr61 - res += pmpaddr62 - res += pmpaddr63 - res += mseccfg - res += tselect - res += tdata1 - res += tdata2 - res += tdata3 - res += tinfo - res += tcontrol - res += mcontext - res += mscontext - res += dcsr - res += dpc - res += dscratch0 - res += dscratch1 - res += mcycle - res += minstret - res += mhpmcounter3 - res += mhpmcounter4 - res += mhpmcounter5 - res += mhpmcounter6 - res += mhpmcounter7 - res += mhpmcounter8 - res += mhpmcounter9 - res += mhpmcounter10 - res += mhpmcounter11 - res += mhpmcounter12 - res += mhpmcounter13 - res += mhpmcounter14 - res += mhpmcounter15 - res += mhpmcounter16 - res += mhpmcounter17 - res += mhpmcounter18 - res += mhpmcounter19 - res += mhpmcounter20 - res += mhpmcounter21 - res += mhpmcounter22 - res += mhpmcounter23 - res += mhpmcounter24 - res += mhpmcounter25 - res += mhpmcounter26 - res += mhpmcounter27 - res += mhpmcounter28 - res += mhpmcounter29 - res += mhpmcounter30 - res += mhpmcounter31 - res += mcyclecfg - res += minstretcfg - res += mhpmevent3 - res += mhpmevent4 - res += mhpmevent5 - res += mhpmevent6 - res += mhpmevent7 - res += mhpmevent8 - res += mhpmevent9 - res += mhpmevent10 - res += mhpmevent11 - res += mhpmevent12 - res += mhpmevent13 - res += mhpmevent14 - res += mhpmevent15 - res += mhpmevent16 - res += mhpmevent17 - res += mhpmevent18 - res += mhpmevent19 - res += mhpmevent20 - res += mhpmevent21 - res += mhpmevent22 - res += mhpmevent23 - res += mhpmevent24 - res += mhpmevent25 - res += mhpmevent26 - res += mhpmevent27 - res += mhpmevent28 - res += mhpmevent29 - res += mhpmevent30 - res += mhpmevent31 - res += mvendorid - res += marchid - res += mimpid - res += mhartid - res += mconfigptr - res += mtopi - res.toArray - } - val all32 = { - val res = collection.mutable.ArrayBuffer(all:_*) - res += sieh - res += siph - res += stimecmph - res += vsieh - res += vsiph - res += vstimecmph - res += hedelegh - res += htimedeltah - res += hidelegh - res += hvienh - res += henvcfgh - res += hviph - res += hviprio1h - res += hviprio2h - res += hstateen0h - res += hstateen1h - res += hstateen2h - res += hstateen3h - res += cycleh - res += timeh - res += instreth - res += hpmcounter3h - res += hpmcounter4h - res += hpmcounter5h - res += hpmcounter6h - res += hpmcounter7h - res += hpmcounter8h - res += hpmcounter9h - res += hpmcounter10h - res += hpmcounter11h - res += hpmcounter12h - res += hpmcounter13h - res += hpmcounter14h - res += hpmcounter15h - res += hpmcounter16h - res += hpmcounter17h - res += hpmcounter18h - res += hpmcounter19h - res += hpmcounter20h - res += hpmcounter21h - res += hpmcounter22h - res += hpmcounter23h - res += hpmcounter24h - res += hpmcounter25h - res += hpmcounter26h - res += hpmcounter27h - res += hpmcounter28h - res += hpmcounter29h - res += hpmcounter30h - res += hpmcounter31h - res += mstatush - res += midelegh - res += mieh - res += mvienh - res += mviph - res += menvcfgh - res += mstateen0h - res += mstateen1h - res += mstateen2h - res += mstateen3h - res += miph - res += mcyclecfgh - res += minstretcfgh - res += mhpmevent3h - res += mhpmevent4h - res += mhpmevent5h - res += mhpmevent6h - res += mhpmevent7h - res += mhpmevent8h - res += mhpmevent9h - res += mhpmevent10h - res += mhpmevent11h - res += mhpmevent12h - res += mhpmevent13h - res += mhpmevent14h - res += mhpmevent15h - res += mhpmevent16h - res += mhpmevent17h - res += mhpmevent18h - res += mhpmevent19h - res += mhpmevent20h - res += mhpmevent21h - res += mhpmevent22h - res += mhpmevent23h - res += mhpmevent24h - res += mhpmevent25h - res += mhpmevent26h - res += mhpmevent27h - res += mhpmevent28h - res += mhpmevent29h - res += mhpmevent30h - res += mhpmevent31h - res += mnscratch - res += mnepc - res += mncause - res += mnstatus - res += mseccfgh - res += mcycleh - res += minstreth - res += mhpmcounter3h - res += mhpmcounter4h - res += mhpmcounter5h - res += mhpmcounter6h - res += mhpmcounter7h - res += mhpmcounter8h - res += mhpmcounter9h - res += mhpmcounter10h - res += mhpmcounter11h - res += mhpmcounter12h - res += mhpmcounter13h - res += mhpmcounter14h - res += mhpmcounter15h - res += mhpmcounter16h - res += mhpmcounter17h - res += mhpmcounter18h - res += mhpmcounter19h - res += mhpmcounter20h - res += mhpmcounter21h - res += mhpmcounter22h - res += mhpmcounter23h - res += mhpmcounter24h - res += mhpmcounter25h - res += mhpmcounter26h - res += mhpmcounter27h - res += mhpmcounter28h - res += mhpmcounter29h - res += mhpmcounter30h - res += mhpmcounter31h - res.toArray - } -} diff --git a/backends/opcodes_maker/output/inst.sverilog b/backends/opcodes_maker/output/inst.sverilog deleted file mode 100644 index 256dc02c3..000000000 --- a/backends/opcodes_maker/output/inst.sverilog +++ /dev/null @@ -1,1607 +0,0 @@ - -/* Automatically generated by parse_opcodes */ -package riscv_instr; - localparam [31:0] ADD = 32'b0000000??????????000?????0110011; - localparam [31:0] ADD_UW = 32'b0000100??????????000?????0111011; - localparam [31:0] ADDI = 32'b?????????????????000?????0010011; - localparam [31:0] ADDIW = 32'b?????????????????000?????0011011; - localparam [31:0] ADDW = 32'b0000000??????????000?????0111011; - localparam [31:0] AES32DSI = 32'b??10101??????????000?????0110011; - localparam [31:0] AES32DSMI = 32'b??10111??????????000?????0110011; - localparam [31:0] AES32ESI = 32'b??10001??????????000?????0110011; - localparam [31:0] AES32ESMI = 32'b??10011??????????000?????0110011; - localparam [31:0] AES64DS = 32'b0011101??????????000?????0110011; - localparam [31:0] AES64DSM = 32'b0011111??????????000?????0110011; - localparam [31:0] AES64ES = 32'b0011001??????????000?????0110011; - localparam [31:0] AES64ESM = 32'b0011011??????????000?????0110011; - localparam [31:0] AES64IM = 32'b001100000000?????001?????0010011; - localparam [31:0] AES64KS1I = 32'b00110001?????????001?????0010011; - localparam [31:0] AES64KS2 = 32'b0111111??????????000?????0110011; - localparam [31:0] AMOADD_B = 32'b00000????????????000?????0101111; - localparam [31:0] AMOADD_D = 32'b00000????????????011?????0101111; - localparam [31:0] AMOADD_H = 32'b00000????????????001?????0101111; - localparam [31:0] AMOADD_W = 32'b00000????????????010?????0101111; - localparam [31:0] AMOAND_B = 32'b01100????????????000?????0101111; - localparam [31:0] AMOAND_D = 32'b01100????????????011?????0101111; - localparam [31:0] AMOAND_H = 32'b01100????????????001?????0101111; - localparam [31:0] AMOAND_W = 32'b01100????????????010?????0101111; - localparam [31:0] AMOCAS_B = 32'b00101????????????000?????0101111; - localparam [31:0] AMOCAS_D = 32'b00101????????????011?????0101111; - localparam [31:0] AMOCAS_H = 32'b00101????????????001?????0101111; - localparam [31:0] AMOCAS_Q = 32'b00101????????????100?????0101111; - localparam [31:0] AMOCAS_W = 32'b00101????????????010?????0101111; - localparam [31:0] AMOMAX_B = 32'b10100????????????000?????0101111; - localparam [31:0] AMOMAX_D = 32'b10100????????????011?????0101111; - localparam [31:0] AMOMAX_H = 32'b10100????????????001?????0101111; - localparam [31:0] AMOMAX_W = 32'b10100????????????010?????0101111; - localparam [31:0] AMOMAXU_B = 32'b11100????????????000?????0101111; - localparam [31:0] AMOMAXU_D = 32'b11100????????????011?????0101111; - localparam [31:0] AMOMAXU_H = 32'b11100????????????001?????0101111; - localparam [31:0] AMOMAXU_W = 32'b11100????????????010?????0101111; - localparam [31:0] AMOMIN_B = 32'b10000????????????000?????0101111; - localparam [31:0] AMOMIN_D = 32'b10000????????????011?????0101111; - localparam [31:0] AMOMIN_H = 32'b10000????????????001?????0101111; - localparam [31:0] AMOMIN_W = 32'b10000????????????010?????0101111; - localparam [31:0] AMOMINU_B = 32'b11000????????????000?????0101111; - localparam [31:0] AMOMINU_D = 32'b11000????????????011?????0101111; - localparam [31:0] AMOMINU_H = 32'b11000????????????001?????0101111; - localparam [31:0] AMOMINU_W = 32'b11000????????????010?????0101111; - localparam [31:0] AMOOR_B = 32'b01000????????????000?????0101111; - localparam [31:0] AMOOR_D = 32'b01000????????????011?????0101111; - localparam [31:0] AMOOR_H = 32'b01000????????????001?????0101111; - localparam [31:0] AMOOR_W = 32'b01000????????????010?????0101111; - localparam [31:0] AMOSWAP_B = 32'b00001????????????000?????0101111; - localparam [31:0] AMOSWAP_D = 32'b00001????????????011?????0101111; - localparam [31:0] AMOSWAP_H = 32'b00001????????????001?????0101111; - localparam [31:0] AMOSWAP_W = 32'b00001????????????010?????0101111; - localparam [31:0] AMOXOR_B = 32'b00100????????????000?????0101111; - localparam [31:0] AMOXOR_D = 32'b00100????????????011?????0101111; - localparam [31:0] AMOXOR_H = 32'b00100????????????001?????0101111; - localparam [31:0] AMOXOR_W = 32'b00100????????????010?????0101111; - localparam [31:0] AND = 32'b0000000??????????111?????0110011; - localparam [31:0] ANDI = 32'b?????????????????111?????0010011; - localparam [31:0] ANDN = 32'b0100000??????????111?????0110011; - localparam [31:0] AUIPC = 32'b?????????????????????????0010111; - localparam [31:0] BCLR = 32'b0100100??????????001?????0110011; - localparam [31:0] BCLRI = 32'b010010???????????001?????0010011; - localparam [31:0] BEQ = 32'b?????????????????000?????1100011; - localparam [31:0] BEXT = 32'b0100100??????????101?????0110011; - localparam [31:0] BEXTI = 32'b010010???????????101?????0010011; - localparam [31:0] BGE = 32'b?????????????????101?????1100011; - localparam [31:0] BGEU = 32'b?????????????????111?????1100011; - localparam [31:0] BINV = 32'b0110100??????????001?????0110011; - localparam [31:0] BINVI = 32'b011010???????????001?????0010011; - localparam [31:0] BLT = 32'b?????????????????100?????1100011; - localparam [31:0] BLTU = 32'b?????????????????110?????1100011; - localparam [31:0] BNE = 32'b?????????????????001?????1100011; - localparam [31:0] BREV8 = 32'b011010000111?????101?????0010011; - localparam [31:0] BSET = 32'b0010100??????????001?????0110011; - localparam [31:0] BSETI = 32'b001010???????????001?????0010011; - localparam [31:0] C_ADD = 32'b????????????????1001??????????10; - localparam [31:0] C_ADDI = 32'b????????????????000???????????01; - localparam [31:0] C_ADDI16SP = 32'b????????????????011?00010?????01; - localparam [31:0] C_ADDI4SPN = 32'b????????????????000???????????00; - localparam [31:0] C_ADDIW = 32'b????????????????001???????????01; - localparam [31:0] C_ADDW = 32'b????????????????100111???01???01; - localparam [31:0] C_AND = 32'b????????????????100011???11???01; - localparam [31:0] C_ANDI = 32'b????????????????100?10????????01; - localparam [31:0] C_BEQZ = 32'b????????????????110???????????01; - localparam [31:0] C_BNEZ = 32'b????????????????111???????????01; - localparam [31:0] C_EBREAK = 32'b????????????????1001000000000010; - localparam [31:0] C_FLD = 32'b????????????????001???????????00; - localparam [31:0] C_FLDSP = 32'b????????????????001???????????10; - localparam [31:0] C_FLW = 32'b????????????????011???????????00; - localparam [31:0] C_FLWSP = 32'b????????????????011???????????10; - localparam [31:0] C_FSD = 32'b????????????????101???????????00; - localparam [31:0] C_FSDSP = 32'b????????????????101???????????10; - localparam [31:0] C_FSW = 32'b????????????????111???????????00; - localparam [31:0] C_FSWSP = 32'b????????????????111???????????10; - localparam [31:0] C_J = 32'b????????????????101???????????01; - localparam [31:0] C_JAL = 32'b????????????????001???????????01; - localparam [31:0] C_JALR = 32'b????????????????1001?????0000010; - localparam [31:0] C_JR = 32'b????????????????1000?????0000010; - localparam [31:0] C_LBU = 32'b????????????????100000????????00; - localparam [31:0] C_LD = 32'b????????????????011???????????00; - localparam [31:0] C_LDSP = 32'b????????????????011???????????10; - localparam [31:0] C_LI = 32'b????????????????010???????????01; - localparam [31:0] C_LUI = 32'b????????????????011???????????01; - localparam [31:0] C_LW = 32'b????????????????010???????????00; - localparam [31:0] C_LWSP = 32'b????????????????010???????????10; - localparam [31:0] C_MUL = 32'b????????????????100111???10???01; - localparam [31:0] C_MV = 32'b????????????????1000??????????10; - localparam [31:0] C_NOP = 32'b????????????????000?00000?????01; - localparam [31:0] C_NOT = 32'b????????????????100111???1110101; - localparam [31:0] C_OR = 32'b????????????????100011???10???01; - localparam [31:0] C_SB = 32'b????????????????100010????????00; - localparam [31:0] C_SD = 32'b????????????????111???????????00; - localparam [31:0] C_SDSP = 32'b????????????????111???????????10; - localparam [31:0] C_SEXT_B = 32'b????????????????100111???1100101; - localparam [31:0] C_SEXT_H = 32'b????????????????100111???1101101; - localparam [31:0] C_SLLI = 32'b????????????????000???????????10; - localparam [31:0] C_SRAI = 32'b????????????????100?01????????01; - localparam [31:0] C_SRLI = 32'b????????????????100?00????????01; - localparam [31:0] C_SUB = 32'b????????????????100011???00???01; - localparam [31:0] C_SUBW = 32'b????????????????100111???00???01; - localparam [31:0] C_SW = 32'b????????????????110???????????00; - localparam [31:0] C_SWSP = 32'b????????????????110???????????10; - localparam [31:0] C_XOR = 32'b????????????????100011???01???01; - localparam [31:0] C_ZEXT_B = 32'b????????????????100111???1100001; - localparam [31:0] C_ZEXT_H = 32'b????????????????100111???1101001; - localparam [31:0] C_ZEXT_W = 32'b????????????????100111???1110001; - localparam [31:0] CBO_CLEAN = 32'b000000000001?????010000000001111; - localparam [31:0] CBO_FLUSH = 32'b000000000010?????010000000001111; - localparam [31:0] CBO_INVAL = 32'b000000000000?????010000000001111; - localparam [31:0] CBO_ZERO = 32'b000000000100?????010000000001111; - localparam [31:0] CLMUL = 32'b0000101??????????001?????0110011; - localparam [31:0] CLMULH = 32'b0000101??????????011?????0110011; - localparam [31:0] CLMULR = 32'b0000101??????????010?????0110011; - localparam [31:0] CLZ = 32'b011000000000?????001?????0010011; - localparam [31:0] CLZW = 32'b011000000000?????001?????0011011; - localparam [31:0] CM_MVA01S = 32'b????????????????101011???11???10; - localparam [31:0] CM_MVSA01 = 32'b????????????????101011???01???10; - localparam [31:0] CM_POP = 32'b????????????????10111010??????10; - localparam [31:0] CM_POPRET = 32'b????????????????10111110??????10; - localparam [31:0] CM_POPRETZ = 32'b????????????????10111100??????10; - localparam [31:0] CM_PUSH = 32'b????????????????10111000??????10; - localparam [31:0] CPOP = 32'b011000000010?????001?????0010011; - localparam [31:0] CPOPW = 32'b011000000010?????001?????0011011; - localparam [31:0] CSRRC = 32'b?????????????????011?????1110011; - localparam [31:0] CSRRCI = 32'b?????????????????111?????1110011; - localparam [31:0] CSRRS = 32'b?????????????????010?????1110011; - localparam [31:0] CSRRSI = 32'b?????????????????110?????1110011; - localparam [31:0] CSRRW = 32'b?????????????????001?????1110011; - localparam [31:0] CSRRWI = 32'b?????????????????101?????1110011; - localparam [31:0] CTZ = 32'b011000000001?????001?????0010011; - localparam [31:0] CTZW = 32'b011000000001?????001?????0011011; - localparam [31:0] CZERO_EQZ = 32'b0000111??????????101?????0110011; - localparam [31:0] CZERO_NEZ = 32'b0000111??????????111?????0110011; - localparam [31:0] DIV = 32'b0000001??????????100?????0110011; - localparam [31:0] DIVU = 32'b0000001??????????101?????0110011; - localparam [31:0] DIVUW = 32'b0000001??????????101?????0111011; - localparam [31:0] DIVW = 32'b0000001??????????100?????0111011; - localparam [31:0] DRET = 32'b01111011001000000000000001110011; - localparam [31:0] EBREAK = 32'b00000000000100000000000001110011; - localparam [31:0] ECALL = 32'b00000000000000000000000001110011; - localparam [31:0] FADD_D = 32'b0000001??????????????????1010011; - localparam [31:0] FADD_H = 32'b0000010??????????????????1010011; - localparam [31:0] FADD_Q = 32'b0000011??????????????????1010011; - localparam [31:0] FADD_S = 32'b0000000??????????????????1010011; - localparam [31:0] FCLASS_D = 32'b111000100000?????001?????1010011; - localparam [31:0] FCLASS_H = 32'b111001000000?????001?????1010011; - localparam [31:0] FCLASS_Q = 32'b111001100000?????001?????1010011; - localparam [31:0] FCLASS_S = 32'b111000000000?????001?????1010011; - localparam [31:0] FCVT_BF16_S = 32'b010001001000?????????????1010011; - localparam [31:0] FCVT_D_H = 32'b010000100010?????????????1010011; - localparam [31:0] FCVT_D_L = 32'b110100100010?????????????1010011; - localparam [31:0] FCVT_D_LU = 32'b110100100011?????????????1010011; - localparam [31:0] FCVT_D_Q = 32'b010000100011?????????????1010011; - localparam [31:0] FCVT_D_S = 32'b010000100000?????????????1010011; - localparam [31:0] FCVT_D_W = 32'b110100100000?????????????1010011; - localparam [31:0] FCVT_D_WU = 32'b110100100001?????????????1010011; - localparam [31:0] FCVT_H_D = 32'b010001000001?????????????1010011; - localparam [31:0] FCVT_H_L = 32'b110101000010?????????????1010011; - localparam [31:0] FCVT_H_LU = 32'b110101000011?????????????1010011; - localparam [31:0] FCVT_H_Q = 32'b010001000011?????????????1010011; - localparam [31:0] FCVT_H_S = 32'b010001000000?????????????1010011; - localparam [31:0] FCVT_H_W = 32'b110101000000?????????????1010011; - localparam [31:0] FCVT_H_WU = 32'b110101000001?????????????1010011; - localparam [31:0] FCVT_L_D = 32'b110000100010?????????????1010011; - localparam [31:0] FCVT_L_H = 32'b110001000010?????????????1010011; - localparam [31:0] FCVT_L_Q = 32'b110001100010?????????????1010011; - localparam [31:0] FCVT_L_S = 32'b110000000010?????????????1010011; - localparam [31:0] FCVT_LU_D = 32'b110000100011?????????????1010011; - localparam [31:0] FCVT_LU_H = 32'b110001000011?????????????1010011; - localparam [31:0] FCVT_LU_Q = 32'b110001100011?????????????1010011; - localparam [31:0] FCVT_LU_S = 32'b110000000011?????????????1010011; - localparam [31:0] FCVT_Q_D = 32'b010001100001?????????????1010011; - localparam [31:0] FCVT_Q_H = 32'b010001100010?????????????1010011; - localparam [31:0] FCVT_Q_L = 32'b110101100010?????????????1010011; - localparam [31:0] FCVT_Q_LU = 32'b110101100011?????????????1010011; - localparam [31:0] FCVT_Q_S = 32'b010001100000?????????????1010011; - localparam [31:0] FCVT_Q_W = 32'b110101100000?????????????1010011; - localparam [31:0] FCVT_Q_WU = 32'b110101100001?????????????1010011; - localparam [31:0] FCVT_S_BF16 = 32'b010000000110?????????????1010011; - localparam [31:0] FCVT_S_D = 32'b010000000001?????????????1010011; - localparam [31:0] FCVT_S_H = 32'b010000000010?????????????1010011; - localparam [31:0] FCVT_S_L = 32'b110100000010?????????????1010011; - localparam [31:0] FCVT_S_LU = 32'b110100000011?????????????1010011; - localparam [31:0] FCVT_S_Q = 32'b010000000011?????????????1010011; - localparam [31:0] FCVT_S_W = 32'b110100000000?????????????1010011; - localparam [31:0] FCVT_S_WU = 32'b110100000001?????????????1010011; - localparam [31:0] FCVT_W_D = 32'b110000100000?????????????1010011; - localparam [31:0] FCVT_W_H = 32'b110001000000?????????????1010011; - localparam [31:0] FCVT_W_Q = 32'b110001100000?????????????1010011; - localparam [31:0] FCVT_W_S = 32'b110000000000?????????????1010011; - localparam [31:0] FCVT_WU_D = 32'b110000100001?????????????1010011; - localparam [31:0] FCVT_WU_H = 32'b110001000001?????????????1010011; - localparam [31:0] FCVT_WU_Q = 32'b110001100001?????????????1010011; - localparam [31:0] FCVT_WU_S = 32'b110000000001?????????????1010011; - localparam [31:0] FCVTMOD_W_D = 32'b110000101000?????001?????1010011; - localparam [31:0] FDIV_D = 32'b0001101??????????????????1010011; - localparam [31:0] FDIV_H = 32'b0001110??????????????????1010011; - localparam [31:0] FDIV_Q = 32'b0001111??????????????????1010011; - localparam [31:0] FDIV_S = 32'b0001100??????????????????1010011; - localparam [31:0] FENCE = 32'b?????????????????000?????0001111; - localparam [31:0] FENCE_I = 32'b?????????????????001?????0001111; - localparam [31:0] FEQ_D = 32'b1010001??????????010?????1010011; - localparam [31:0] FEQ_H = 32'b1010010??????????010?????1010011; - localparam [31:0] FEQ_Q = 32'b1010011??????????010?????1010011; - localparam [31:0] FEQ_S = 32'b1010000??????????010?????1010011; - localparam [31:0] FLD = 32'b?????????????????011?????0000111; - localparam [31:0] FLE_D = 32'b1010001??????????000?????1010011; - localparam [31:0] FLE_H = 32'b1010010??????????000?????1010011; - localparam [31:0] FLE_Q = 32'b1010011??????????000?????1010011; - localparam [31:0] FLE_S = 32'b1010000??????????000?????1010011; - localparam [31:0] FLEQ_D = 32'b1010001??????????100?????1010011; - localparam [31:0] FLEQ_H = 32'b1010010??????????100?????1010011; - localparam [31:0] FLEQ_Q = 32'b1010011??????????100?????1010011; - localparam [31:0] FLEQ_S = 32'b1010000??????????100?????1010011; - localparam [31:0] FLH = 32'b?????????????????001?????0000111; - localparam [31:0] FLI_D = 32'b111100100001?????000?????1010011; - localparam [31:0] FLI_H = 32'b111101000001?????000?????1010011; - localparam [31:0] FLI_Q = 32'b111101100001?????000?????1010011; - localparam [31:0] FLI_S = 32'b111100000001?????000?????1010011; - localparam [31:0] FLQ = 32'b?????????????????100?????0000111; - localparam [31:0] FLT_D = 32'b1010001??????????001?????1010011; - localparam [31:0] FLT_H = 32'b1010010??????????001?????1010011; - localparam [31:0] FLT_Q = 32'b1010011??????????001?????1010011; - localparam [31:0] FLT_S = 32'b1010000??????????001?????1010011; - localparam [31:0] FLTQ_D = 32'b1010001??????????101?????1010011; - localparam [31:0] FLTQ_H = 32'b1010010??????????101?????1010011; - localparam [31:0] FLTQ_Q = 32'b1010011??????????101?????1010011; - localparam [31:0] FLTQ_S = 32'b1010000??????????101?????1010011; - localparam [31:0] FLW = 32'b?????????????????010?????0000111; - localparam [31:0] FMADD_D = 32'b?????01??????????????????1000011; - localparam [31:0] FMADD_H = 32'b?????10??????????????????1000011; - localparam [31:0] FMADD_Q = 32'b?????11??????????????????1000011; - localparam [31:0] FMADD_S = 32'b?????00??????????????????1000011; - localparam [31:0] FMAX_D = 32'b0010101??????????001?????1010011; - localparam [31:0] FMAX_H = 32'b0010110??????????001?????1010011; - localparam [31:0] FMAX_Q = 32'b0010111??????????001?????1010011; - localparam [31:0] FMAX_S = 32'b0010100??????????001?????1010011; - localparam [31:0] FMAXM_D = 32'b0010101??????????011?????1010011; - localparam [31:0] FMAXM_H = 32'b0010110??????????011?????1010011; - localparam [31:0] FMAXM_Q = 32'b0010111??????????011?????1010011; - localparam [31:0] FMAXM_S = 32'b0010100??????????011?????1010011; - localparam [31:0] FMIN_D = 32'b0010101??????????000?????1010011; - localparam [31:0] FMIN_H = 32'b0010110??????????000?????1010011; - localparam [31:0] FMIN_Q = 32'b0010111??????????000?????1010011; - localparam [31:0] FMIN_S = 32'b0010100??????????000?????1010011; - localparam [31:0] FMINM_D = 32'b0010101??????????010?????1010011; - localparam [31:0] FMINM_H = 32'b0010110??????????010?????1010011; - localparam [31:0] FMINM_Q = 32'b0010111??????????010?????1010011; - localparam [31:0] FMINM_S = 32'b0010100??????????010?????1010011; - localparam [31:0] FMSUB_D = 32'b?????01??????????????????1000111; - localparam [31:0] FMSUB_H = 32'b?????10??????????????????1000111; - localparam [31:0] FMSUB_Q = 32'b?????11??????????????????1000111; - localparam [31:0] FMSUB_S = 32'b?????00??????????????????1000111; - localparam [31:0] FMUL_D = 32'b0001001??????????????????1010011; - localparam [31:0] FMUL_H = 32'b0001010??????????????????1010011; - localparam [31:0] FMUL_Q = 32'b0001011??????????????????1010011; - localparam [31:0] FMUL_S = 32'b0001000??????????????????1010011; - localparam [31:0] FMV_D_X = 32'b111100100000?????000?????1010011; - localparam [31:0] FMV_H_X = 32'b111101000000?????000?????1010011; - localparam [31:0] FMV_W_X = 32'b111100000000?????000?????1010011; - localparam [31:0] FMV_X_D = 32'b111000100000?????000?????1010011; - localparam [31:0] FMV_X_H = 32'b111001000000?????000?????1010011; - localparam [31:0] FMV_X_W = 32'b111000000000?????000?????1010011; - localparam [31:0] FMVH_X_D = 32'b111000100001?????000?????1010011; - localparam [31:0] FMVH_X_Q = 32'b111001100001?????000?????1010011; - localparam [31:0] FMVP_D_X = 32'b1011001??????????000?????1010011; - localparam [31:0] FMVP_Q_X = 32'b1011011??????????000?????1010011; - localparam [31:0] FNMADD_D = 32'b?????01??????????????????1001111; - localparam [31:0] FNMADD_H = 32'b?????10??????????????????1001111; - localparam [31:0] FNMADD_Q = 32'b?????11??????????????????1001111; - localparam [31:0] FNMADD_S = 32'b?????00??????????????????1001111; - localparam [31:0] FNMSUB_D = 32'b?????01??????????????????1001011; - localparam [31:0] FNMSUB_H = 32'b?????10??????????????????1001011; - localparam [31:0] FNMSUB_Q = 32'b?????11??????????????????1001011; - localparam [31:0] FNMSUB_S = 32'b?????00??????????????????1001011; - localparam [31:0] FROUND_D = 32'b010000100100?????????????1010011; - localparam [31:0] FROUND_H = 32'b010001000100?????????????1010011; - localparam [31:0] FROUND_Q = 32'b010001100100?????????????1010011; - localparam [31:0] FROUND_S = 32'b010000000100?????????????1010011; - localparam [31:0] FROUNDNX_D = 32'b010000100101?????????????1010011; - localparam [31:0] FROUNDNX_H = 32'b010001000101?????????????1010011; - localparam [31:0] FROUNDNX_Q = 32'b010001100101?????????????1010011; - localparam [31:0] FROUNDNX_S = 32'b010000000101?????????????1010011; - localparam [31:0] FSD = 32'b?????????????????011?????0100111; - localparam [31:0] FSGNJ_D = 32'b0010001??????????000?????1010011; - localparam [31:0] FSGNJ_H = 32'b0010010??????????000?????1010011; - localparam [31:0] FSGNJ_Q = 32'b0010011??????????000?????1010011; - localparam [31:0] FSGNJ_S = 32'b0010000??????????000?????1010011; - localparam [31:0] FSGNJN_D = 32'b0010001??????????001?????1010011; - localparam [31:0] FSGNJN_H = 32'b0010010??????????001?????1010011; - localparam [31:0] FSGNJN_Q = 32'b0010011??????????001?????1010011; - localparam [31:0] FSGNJN_S = 32'b0010000??????????001?????1010011; - localparam [31:0] FSGNJX_D = 32'b0010001??????????010?????1010011; - localparam [31:0] FSGNJX_H = 32'b0010010??????????010?????1010011; - localparam [31:0] FSGNJX_Q = 32'b0010011??????????010?????1010011; - localparam [31:0] FSGNJX_S = 32'b0010000??????????010?????1010011; - localparam [31:0] FSH = 32'b?????????????????001?????0100111; - localparam [31:0] FSQ = 32'b?????????????????100?????0100111; - localparam [31:0] FSQRT_D = 32'b010110100000?????????????1010011; - localparam [31:0] FSQRT_H = 32'b010111000000?????????????1010011; - localparam [31:0] FSQRT_Q = 32'b010111100000?????????????1010011; - localparam [31:0] FSQRT_S = 32'b010110000000?????????????1010011; - localparam [31:0] FSUB_D = 32'b0000101??????????????????1010011; - localparam [31:0] FSUB_H = 32'b0000110??????????????????1010011; - localparam [31:0] FSUB_Q = 32'b0000111??????????????????1010011; - localparam [31:0] FSUB_S = 32'b0000100??????????????????1010011; - localparam [31:0] FSW = 32'b?????????????????010?????0100111; - localparam [31:0] HFENCE_GVMA = 32'b0110001??????????000000001110011; - localparam [31:0] HFENCE_VVMA = 32'b0010001??????????000000001110011; - localparam [31:0] HINVAL_GVMA = 32'b0110011??????????000000001110011; - localparam [31:0] HINVAL_VVMA = 32'b0010011??????????000000001110011; - localparam [31:0] HLV_B = 32'b011000000000?????100?????1110011; - localparam [31:0] HLV_BU = 32'b011000000001?????100?????1110011; - localparam [31:0] HLV_D = 32'b011011000000?????100?????1110011; - localparam [31:0] HLV_H = 32'b011001000000?????100?????1110011; - localparam [31:0] HLV_HU = 32'b011001000001?????100?????1110011; - localparam [31:0] HLV_W = 32'b011010000000?????100?????1110011; - localparam [31:0] HLV_WU = 32'b011010000001?????100?????1110011; - localparam [31:0] HLVX_HU = 32'b011001000011?????100?????1110011; - localparam [31:0] HLVX_WU = 32'b011010000011?????100?????1110011; - localparam [31:0] HSV_B = 32'b0110001??????????100000001110011; - localparam [31:0] HSV_D = 32'b0110111??????????100000001110011; - localparam [31:0] HSV_H = 32'b0110011??????????100000001110011; - localparam [31:0] HSV_W = 32'b0110101??????????100000001110011; - localparam [31:0] JAL = 32'b?????????????????????????1101111; - localparam [31:0] JALR = 32'b?????????????????000?????1100111; - localparam [31:0] LB = 32'b?????????????????000?????0000011; - localparam [31:0] LB_AQ = 32'b001101?00000?????000?????0101111; - localparam [31:0] LBU = 32'b?????????????????100?????0000011; - localparam [31:0] LD = 32'b?????????????????011?????0000011; - localparam [31:0] LD_AQ = 32'b001101?00000?????011?????0101111; - localparam [31:0] LH = 32'b?????????????????001?????0000011; - localparam [31:0] LH_AQ = 32'b001101?00000?????001?????0101111; - localparam [31:0] LHU = 32'b?????????????????101?????0000011; - localparam [31:0] LPAD = 32'b????????????????????000000010111; - localparam [31:0] LR_D = 32'b00010??00000?????011?????0101111; - localparam [31:0] LR_W = 32'b00010??00000?????010?????0101111; - localparam [31:0] LUI = 32'b?????????????????????????0110111; - localparam [31:0] LW = 32'b?????????????????010?????0000011; - localparam [31:0] LW_AQ = 32'b001101?00000?????010?????0101111; - localparam [31:0] LWU = 32'b?????????????????110?????0000011; - localparam [31:0] MAX = 32'b0000101??????????110?????0110011; - localparam [31:0] MAXU = 32'b0000101??????????111?????0110011; - localparam [31:0] MIN = 32'b0000101??????????100?????0110011; - localparam [31:0] MINU = 32'b0000101??????????101?????0110011; - localparam [31:0] MNRET = 32'b01110000001000000000000001110011; - localparam [31:0] MOP_R_N = 32'b1?00??0111???????100?????1110011; - localparam [31:0] MOP_RR_N = 32'b1?00??1??????????100?????1110011; - localparam [31:0] MRET = 32'b00110000001000000000000001110011; - localparam [31:0] MUL = 32'b0000001??????????000?????0110011; - localparam [31:0] MULH = 32'b0000001??????????001?????0110011; - localparam [31:0] MULHSU = 32'b0000001??????????010?????0110011; - localparam [31:0] MULHU = 32'b0000001??????????011?????0110011; - localparam [31:0] MULW = 32'b0000001??????????000?????0111011; - localparam [31:0] OR = 32'b0000000??????????110?????0110011; - localparam [31:0] ORC_B = 32'b001010000111?????101?????0010011; - localparam [31:0] ORI = 32'b?????????????????110?????0010011; - localparam [31:0] ORN = 32'b0100000??????????110?????0110011; - localparam [31:0] PACK = 32'b0000100??????????100?????0110011; - localparam [31:0] PACKH = 32'b0000100??????????111?????0110011; - localparam [31:0] PACKW = 32'b0000100??????????100?????0111011; - localparam [31:0] REM = 32'b0000001??????????110?????0110011; - localparam [31:0] REMU = 32'b0000001??????????111?????0110011; - localparam [31:0] REMUW = 32'b0000001??????????111?????0111011; - localparam [31:0] REMW = 32'b0000001??????????110?????0111011; - localparam [31:0] REV8 = 32'b011010111000?????101?????0010011; - localparam [31:0] ROL = 32'b0110000??????????001?????0110011; - localparam [31:0] ROLW = 32'b0110000??????????001?????0111011; - localparam [31:0] ROR = 32'b0110000??????????101?????0110011; - localparam [31:0] RORI = 32'b011000???????????101?????0010011; - localparam [31:0] RORIW = 32'b0110000??????????101?????0011011; - localparam [31:0] RORW = 32'b0110000??????????101?????0111011; - localparam [31:0] SB = 32'b?????????????????000?????0100011; - localparam [31:0] SB_RL = 32'b00111?1??????????000000000101111; - localparam [31:0] SC_D = 32'b00011????????????011?????0101111; - localparam [31:0] SC_W = 32'b00011????????????010?????0101111; - localparam [31:0] SCTRCLR = 32'b00010000010000000000000001110011; - localparam [31:0] SD = 32'b?????????????????011?????0100011; - localparam [31:0] SD_RL = 32'b00111?1??????????011000000101111; - localparam [31:0] SEXT_B = 32'b011000000100?????001?????0010011; - localparam [31:0] SEXT_H = 32'b011000000101?????001?????0010011; - localparam [31:0] SFENCE_INVAL_IR = 32'b00011000000100000000000001110011; - localparam [31:0] SFENCE_VMA = 32'b0001001??????????000000001110011; - localparam [31:0] SFENCE_W_INVAL = 32'b00011000000000000000000001110011; - localparam [31:0] SH = 32'b?????????????????001?????0100011; - localparam [31:0] SH1ADD = 32'b0010000??????????010?????0110011; - localparam [31:0] SH1ADD_UW = 32'b0010000??????????010?????0111011; - localparam [31:0] SH2ADD = 32'b0010000??????????100?????0110011; - localparam [31:0] SH2ADD_UW = 32'b0010000??????????100?????0111011; - localparam [31:0] SH3ADD = 32'b0010000??????????110?????0110011; - localparam [31:0] SH3ADD_UW = 32'b0010000??????????110?????0111011; - localparam [31:0] SH_RL = 32'b00111?1??????????001000000101111; - localparam [31:0] SHA256SIG0 = 32'b000100000010?????001?????0010011; - localparam [31:0] SHA256SIG1 = 32'b000100000011?????001?????0010011; - localparam [31:0] SHA256SUM0 = 32'b000100000000?????001?????0010011; - localparam [31:0] SHA256SUM1 = 32'b000100000001?????001?????0010011; - localparam [31:0] SHA512SIG0 = 32'b000100000110?????001?????0010011; - localparam [31:0] SHA512SIG0H = 32'b0101110??????????000?????0110011; - localparam [31:0] SHA512SIG0L = 32'b0101010??????????000?????0110011; - localparam [31:0] SHA512SIG1 = 32'b000100000111?????001?????0010011; - localparam [31:0] SHA512SIG1H = 32'b0101111??????????000?????0110011; - localparam [31:0] SHA512SIG1L = 32'b0101011??????????000?????0110011; - localparam [31:0] SHA512SUM0 = 32'b000100000100?????001?????0010011; - localparam [31:0] SHA512SUM0R = 32'b0101000??????????000?????0110011; - localparam [31:0] SHA512SUM1 = 32'b000100000101?????001?????0010011; - localparam [31:0] SHA512SUM1R = 32'b0101001??????????000?????0110011; - localparam [31:0] SINVAL_VMA = 32'b0001011??????????000000001110011; - localparam [31:0] SLL = 32'b0000000??????????001?????0110011; - localparam [31:0] SLLI = 32'b000000???????????001?????0010011; - localparam [31:0] SLLI_UW = 32'b000010???????????001?????0011011; - localparam [31:0] SLLIW = 32'b0000000??????????001?????0011011; - localparam [31:0] SLLW = 32'b0000000??????????001?????0111011; - localparam [31:0] SLT = 32'b0000000??????????010?????0110011; - localparam [31:0] SLTI = 32'b?????????????????010?????0010011; - localparam [31:0] SLTIU = 32'b?????????????????011?????0010011; - localparam [31:0] SLTU = 32'b0000000??????????011?????0110011; - localparam [31:0] SM3P0 = 32'b000100001000?????001?????0010011; - localparam [31:0] SM3P1 = 32'b000100001001?????001?????0010011; - localparam [31:0] SM4ED = 32'b??11000??????????000?????0110011; - localparam [31:0] SM4KS = 32'b??11010??????????000?????0110011; - localparam [31:0] SRA = 32'b0100000??????????101?????0110011; - localparam [31:0] SRAI = 32'b010000???????????101?????0010011; - localparam [31:0] SRAIW = 32'b0100000??????????101?????0011011; - localparam [31:0] SRAW = 32'b0100000??????????101?????0111011; - localparam [31:0] SRET = 32'b00010000001000000000000001110011; - localparam [31:0] SRL = 32'b0000000??????????101?????0110011; - localparam [31:0] SRLI = 32'b000000???????????101?????0010011; - localparam [31:0] SRLIW = 32'b0000000??????????101?????0011011; - localparam [31:0] SRLW = 32'b0000000??????????101?????0111011; - localparam [31:0] SSAMOSWAP_D = 32'b01001????????????011?????0101111; - localparam [31:0] SSAMOSWAP_W = 32'b01001????????????010?????0101111; - localparam [31:0] SSPOPCHK_X1 = 32'b11001101110000001100000001110011; - localparam [31:0] SSPOPCHK_X5 = 32'b11001101110000101100000001110011; - localparam [31:0] SSPUSH_X1 = 32'b11001110000100000100000001110011; - localparam [31:0] SSPUSH_X5 = 32'b11001110010100000100000001110011; - localparam [31:0] SSRDP = 32'b11001101110000000100?????1110011; - localparam [31:0] SUB = 32'b0100000??????????000?????0110011; - localparam [31:0] SUBW = 32'b0100000??????????000?????0111011; - localparam [31:0] SW = 32'b?????????????????010?????0100011; - localparam [31:0] SW_RL = 32'b00111?1??????????010000000101111; - localparam [31:0] UNZIP = 32'b000010001111?????101?????0010011; - localparam [31:0] VAADD_VV = 32'b001001???????????010?????1010111; - localparam [31:0] VAADD_VX = 32'b001001???????????110?????1010111; - localparam [31:0] VAADDU_VV = 32'b001000???????????010?????1010111; - localparam [31:0] VAADDU_VX = 32'b001000???????????110?????1010111; - localparam [31:0] VADC_VIM = 32'b0100000??????????011?????1010111; - localparam [31:0] VADC_VVM = 32'b0100000??????????000?????1010111; - localparam [31:0] VADC_VXM = 32'b0100000??????????100?????1010111; - localparam [31:0] VADD_VI = 32'b000000???????????011?????1010111; - localparam [31:0] VADD_VV = 32'b000000???????????000?????1010111; - localparam [31:0] VADD_VX = 32'b000000???????????100?????1010111; - localparam [31:0] VAESDF_VS = 32'b1010011?????00001010?????1110111; - localparam [31:0] VAESDF_VV = 32'b1010001?????00001010?????1110111; - localparam [31:0] VAESDM_VS = 32'b1010011?????00000010?????1110111; - localparam [31:0] VAESDM_VV = 32'b1010001?????00000010?????1110111; - localparam [31:0] VAESEF_VS = 32'b1010011?????00011010?????1110111; - localparam [31:0] VAESEF_VV = 32'b1010001?????00011010?????1110111; - localparam [31:0] VAESEM_VS = 32'b1010011?????00010010?????1110111; - localparam [31:0] VAESEM_VV = 32'b1010001?????00010010?????1110111; - localparam [31:0] VAESKF1_VI = 32'b1000101??????????010?????1110111; - localparam [31:0] VAESKF2_VI = 32'b1010101??????????010?????1110111; - localparam [31:0] VAESZ_VS = 32'b1010011?????00111010?????1110111; - localparam [31:0] VAND_VI = 32'b001001???????????011?????1010111; - localparam [31:0] VAND_VV = 32'b001001???????????000?????1010111; - localparam [31:0] VAND_VX = 32'b001001???????????100?????1010111; - localparam [31:0] VANDN_VV = 32'b000001???????????000?????1010111; - localparam [31:0] VANDN_VX = 32'b000001???????????100?????1010111; - localparam [31:0] VASUB_VV = 32'b001011???????????010?????1010111; - localparam [31:0] VASUB_VX = 32'b001011???????????110?????1010111; - localparam [31:0] VASUBU_VV = 32'b001010???????????010?????1010111; - localparam [31:0] VASUBU_VX = 32'b001010???????????110?????1010111; - localparam [31:0] VBREV8_V = 32'b010010??????01000010?????1010111; - localparam [31:0] VBREV_V = 32'b010010??????01010010?????1010111; - localparam [31:0] VCLMUL_VV = 32'b001100???????????010?????1010111; - localparam [31:0] VCLMUL_VX = 32'b001100???????????110?????1010111; - localparam [31:0] VCLMULH_VV = 32'b001101???????????010?????1010111; - localparam [31:0] VCLMULH_VX = 32'b001101???????????110?????1010111; - localparam [31:0] VCLZ_V = 32'b010010??????01100010?????1010111; - localparam [31:0] VCOMPRESS_VM = 32'b0101111??????????010?????1010111; - localparam [31:0] VCPOP_M = 32'b010000??????10000010?????1010111; - localparam [31:0] VCPOP_V = 32'b010010??????01110010?????1010111; - localparam [31:0] VCTZ_V = 32'b010010??????01101010?????1010111; - localparam [31:0] VDIV_VV = 32'b100001???????????010?????1010111; - localparam [31:0] VDIV_VX = 32'b100001???????????110?????1010111; - localparam [31:0] VDIVU_VV = 32'b100000???????????010?????1010111; - localparam [31:0] VDIVU_VX = 32'b100000???????????110?????1010111; - localparam [31:0] VFADD_VF = 32'b000000???????????101?????1010111; - localparam [31:0] VFADD_VV = 32'b000000???????????001?????1010111; - localparam [31:0] VFCLASS_V = 32'b010011??????10000001?????1010111; - localparam [31:0] VFCVT_F_X_V = 32'b010010??????00011001?????1010111; - localparam [31:0] VFCVT_F_XU_V = 32'b010010??????00010001?????1010111; - localparam [31:0] VFCVT_RTZ_X_F_V = 32'b010010??????00111001?????1010111; - localparam [31:0] VFCVT_RTZ_XU_F_V = 32'b010010??????00110001?????1010111; - localparam [31:0] VFCVT_X_F_V = 32'b010010??????00001001?????1010111; - localparam [31:0] VFCVT_XU_F_V = 32'b010010??????00000001?????1010111; - localparam [31:0] VFDIV_VF = 32'b100000???????????101?????1010111; - localparam [31:0] VFDIV_VV = 32'b100000???????????001?????1010111; - localparam [31:0] VFIRST_M = 32'b010000??????10001010?????1010111; - localparam [31:0] VFMACC_VF = 32'b101100???????????101?????1010111; - localparam [31:0] VFMACC_VV = 32'b101100???????????001?????1010111; - localparam [31:0] VFMADD_VF = 32'b101000???????????101?????1010111; - localparam [31:0] VFMADD_VV = 32'b101000???????????001?????1010111; - localparam [31:0] VFMAX_VF = 32'b000110???????????101?????1010111; - localparam [31:0] VFMAX_VV = 32'b000110???????????001?????1010111; - localparam [31:0] VFMERGE_VFM = 32'b0101110??????????101?????1010111; - localparam [31:0] VFMIN_VF = 32'b000100???????????101?????1010111; - localparam [31:0] VFMIN_VV = 32'b000100???????????001?????1010111; - localparam [31:0] VFMSAC_VF = 32'b101110???????????101?????1010111; - localparam [31:0] VFMSAC_VV = 32'b101110???????????001?????1010111; - localparam [31:0] VFMSUB_VF = 32'b101010???????????101?????1010111; - localparam [31:0] VFMSUB_VV = 32'b101010???????????001?????1010111; - localparam [31:0] VFMUL_VF = 32'b100100???????????101?????1010111; - localparam [31:0] VFMUL_VV = 32'b100100???????????001?????1010111; - localparam [31:0] VFMV_F_S = 32'b0100001?????00000001?????1010111; - localparam [31:0] VFMV_S_F = 32'b010000100000?????101?????1010111; - localparam [31:0] VFMV_V_F = 32'b010111100000?????101?????1010111; - localparam [31:0] VFNCVT_F_F_W = 32'b010010??????10100001?????1010111; - localparam [31:0] VFNCVT_F_X_W = 32'b010010??????10011001?????1010111; - localparam [31:0] VFNCVT_F_XU_W = 32'b010010??????10010001?????1010111; - localparam [31:0] VFNCVT_ROD_F_F_W = 32'b010010??????10101001?????1010111; - localparam [31:0] VFNCVT_RTZ_X_F_W = 32'b010010??????10111001?????1010111; - localparam [31:0] VFNCVT_RTZ_XU_F_W = 32'b010010??????10110001?????1010111; - localparam [31:0] VFNCVT_X_F_W = 32'b010010??????10001001?????1010111; - localparam [31:0] VFNCVT_XU_F_W = 32'b010010??????10000001?????1010111; - localparam [31:0] VFNCVTBF16_F_F_W = 32'b010010??????11101001?????1010111; - localparam [31:0] VFNMACC_VF = 32'b101101???????????101?????1010111; - localparam [31:0] VFNMACC_VV = 32'b101101???????????001?????1010111; - localparam [31:0] VFNMADD_VF = 32'b101001???????????101?????1010111; - localparam [31:0] VFNMADD_VV = 32'b101001???????????001?????1010111; - localparam [31:0] VFNMSAC_VF = 32'b101111???????????101?????1010111; - localparam [31:0] VFNMSAC_VV = 32'b101111???????????001?????1010111; - localparam [31:0] VFNMSUB_VF = 32'b101011???????????101?????1010111; - localparam [31:0] VFNMSUB_VV = 32'b101011???????????001?????1010111; - localparam [31:0] VFRDIV_VF = 32'b100001???????????101?????1010111; - localparam [31:0] VFREC7_V = 32'b010011??????00101001?????1010111; - localparam [31:0] VFREDMAX_VS = 32'b000111???????????001?????1010111; - localparam [31:0] VFREDMIN_VS = 32'b000101???????????001?????1010111; - localparam [31:0] VFREDOSUM_VS = 32'b000011???????????001?????1010111; - localparam [31:0] VFREDUSUM_VS = 32'b000001???????????001?????1010111; - localparam [31:0] VFRSQRT7_V = 32'b010011??????00100001?????1010111; - localparam [31:0] VFRSUB_VF = 32'b100111???????????101?????1010111; - localparam [31:0] VFSGNJ_VF = 32'b001000???????????101?????1010111; - localparam [31:0] VFSGNJ_VV = 32'b001000???????????001?????1010111; - localparam [31:0] VFSGNJN_VF = 32'b001001???????????101?????1010111; - localparam [31:0] VFSGNJN_VV = 32'b001001???????????001?????1010111; - localparam [31:0] VFSGNJX_VF = 32'b001010???????????101?????1010111; - localparam [31:0] VFSGNJX_VV = 32'b001010???????????001?????1010111; - localparam [31:0] VFSLIDE1DOWN_VF = 32'b001111???????????101?????1010111; - localparam [31:0] VFSLIDE1UP_VF = 32'b001110???????????101?????1010111; - localparam [31:0] VFSQRT_V = 32'b010011??????00000001?????1010111; - localparam [31:0] VFSUB_VF = 32'b000010???????????101?????1010111; - localparam [31:0] VFSUB_VV = 32'b000010???????????001?????1010111; - localparam [31:0] VFWADD_VF = 32'b110000???????????101?????1010111; - localparam [31:0] VFWADD_VV = 32'b110000???????????001?????1010111; - localparam [31:0] VFWADD_WF = 32'b110100???????????101?????1010111; - localparam [31:0] VFWADD_WV = 32'b110100???????????001?????1010111; - localparam [31:0] VFWCVT_F_F_V = 32'b010010??????01100001?????1010111; - localparam [31:0] VFWCVT_F_X_V = 32'b010010??????01011001?????1010111; - localparam [31:0] VFWCVT_F_XU_V = 32'b010010??????01010001?????1010111; - localparam [31:0] VFWCVT_RTZ_X_F_V = 32'b010010??????01111001?????1010111; - localparam [31:0] VFWCVT_RTZ_XU_F_V = 32'b010010??????01110001?????1010111; - localparam [31:0] VFWCVT_X_F_V = 32'b010010??????01001001?????1010111; - localparam [31:0] VFWCVT_XU_F_V = 32'b010010??????01000001?????1010111; - localparam [31:0] VFWCVTBF16_F_F_V = 32'b010010??????01101001?????1010111; - localparam [31:0] VFWMACC_VF = 32'b111100???????????101?????1010111; - localparam [31:0] VFWMACC_VV = 32'b111100???????????001?????1010111; - localparam [31:0] VFWMACCBF16_VF = 32'b111011???????????101?????1010111; - localparam [31:0] VFWMACCBF16_VV = 32'b111011???????????001?????1010111; - localparam [31:0] VFWMSAC_VF = 32'b111110???????????101?????1010111; - localparam [31:0] VFWMSAC_VV = 32'b111110???????????001?????1010111; - localparam [31:0] VFWMUL_VF = 32'b111000???????????101?????1010111; - localparam [31:0] VFWMUL_VV = 32'b111000???????????001?????1010111; - localparam [31:0] VFWNMACC_VF = 32'b111101???????????101?????1010111; - localparam [31:0] VFWNMACC_VV = 32'b111101???????????001?????1010111; - localparam [31:0] VFWNMSAC_VF = 32'b111111???????????101?????1010111; - localparam [31:0] VFWNMSAC_VV = 32'b111111???????????001?????1010111; - localparam [31:0] VFWREDOSUM_VS = 32'b110011???????????001?????1010111; - localparam [31:0] VFWREDUSUM_VS = 32'b110001???????????001?????1010111; - localparam [31:0] VFWSUB_VF = 32'b110010???????????101?????1010111; - localparam [31:0] VFWSUB_VV = 32'b110010???????????001?????1010111; - localparam [31:0] VFWSUB_WF = 32'b110110???????????101?????1010111; - localparam [31:0] VFWSUB_WV = 32'b110110???????????001?????1010111; - localparam [31:0] VGHSH_VV = 32'b1011001??????????010?????1110111; - localparam [31:0] VGMUL_VV = 32'b1010001?????10001010?????1110111; - localparam [31:0] VID_V = 32'b010100?0000010001010?????1010111; - localparam [31:0] VIOTA_M = 32'b010100??????10000010?????1010111; - localparam [31:0] VL1RE16_V = 32'b000000101000?????101?????0000111; - localparam [31:0] VL1RE32_V = 32'b000000101000?????110?????0000111; - localparam [31:0] VL1RE64_V = 32'b000000101000?????111?????0000111; - localparam [31:0] VL1RE8_V = 32'b000000101000?????000?????0000111; - localparam [31:0] VL2RE16_V = 32'b001000101000?????101?????0000111; - localparam [31:0] VL2RE32_V = 32'b001000101000?????110?????0000111; - localparam [31:0] VL2RE64_V = 32'b001000101000?????111?????0000111; - localparam [31:0] VL2RE8_V = 32'b001000101000?????000?????0000111; - localparam [31:0] VL4RE16_V = 32'b011000101000?????101?????0000111; - localparam [31:0] VL4RE32_V = 32'b011000101000?????110?????0000111; - localparam [31:0] VL4RE64_V = 32'b011000101000?????111?????0000111; - localparam [31:0] VL4RE8_V = 32'b011000101000?????000?????0000111; - localparam [31:0] VL8RE16_V = 32'b111000101000?????101?????0000111; - localparam [31:0] VL8RE32_V = 32'b111000101000?????110?????0000111; - localparam [31:0] VL8RE64_V = 32'b111000101000?????111?????0000111; - localparam [31:0] VL8RE8_V = 32'b111000101000?????000?????0000111; - localparam [31:0] VLE16_V = 32'b000000?00000?????101?????0000111; - localparam [31:0] VLE16FF_V = 32'b000000?10000?????101?????0000111; - localparam [31:0] VLE32_V = 32'b000000?00000?????110?????0000111; - localparam [31:0] VLE32FF_V = 32'b000000?10000?????110?????0000111; - localparam [31:0] VLE64_V = 32'b000000?00000?????111?????0000111; - localparam [31:0] VLE64FF_V = 32'b000000?10000?????111?????0000111; - localparam [31:0] VLE8_V = 32'b000000?00000?????000?????0000111; - localparam [31:0] VLE8FF_V = 32'b000000?10000?????000?????0000111; - localparam [31:0] VLM_V = 32'b000000101011?????000?????0000111; - localparam [31:0] VLOXEI16_V = 32'b000011???????????101?????0000111; - localparam [31:0] VLOXEI32_V = 32'b000011???????????110?????0000111; - localparam [31:0] VLOXEI64_V = 32'b000011???????????111?????0000111; - localparam [31:0] VLOXEI8_V = 32'b000011???????????000?????0000111; - localparam [31:0] VLOXSEG2EI16_V = 32'b001011???????????101?????0000111; - localparam [31:0] VLOXSEG2EI32_V = 32'b001011???????????110?????0000111; - localparam [31:0] VLOXSEG2EI64_V = 32'b001011???????????111?????0000111; - localparam [31:0] VLOXSEG2EI8_V = 32'b001011???????????000?????0000111; - localparam [31:0] VLOXSEG3EI16_V = 32'b010011???????????101?????0000111; - localparam [31:0] VLOXSEG3EI32_V = 32'b010011???????????110?????0000111; - localparam [31:0] VLOXSEG3EI64_V = 32'b010011???????????111?????0000111; - localparam [31:0] VLOXSEG3EI8_V = 32'b010011???????????000?????0000111; - localparam [31:0] VLOXSEG4EI16_V = 32'b011011???????????101?????0000111; - localparam [31:0] VLOXSEG4EI32_V = 32'b011011???????????110?????0000111; - localparam [31:0] VLOXSEG4EI64_V = 32'b011011???????????111?????0000111; - localparam [31:0] VLOXSEG4EI8_V = 32'b011011???????????000?????0000111; - localparam [31:0] VLOXSEG5EI16_V = 32'b100011???????????101?????0000111; - localparam [31:0] VLOXSEG5EI32_V = 32'b100011???????????110?????0000111; - localparam [31:0] VLOXSEG5EI64_V = 32'b100011???????????111?????0000111; - localparam [31:0] VLOXSEG5EI8_V = 32'b100011???????????000?????0000111; - localparam [31:0] VLOXSEG6EI16_V = 32'b101011???????????101?????0000111; - localparam [31:0] VLOXSEG6EI32_V = 32'b101011???????????110?????0000111; - localparam [31:0] VLOXSEG6EI64_V = 32'b101011???????????111?????0000111; - localparam [31:0] VLOXSEG6EI8_V = 32'b101011???????????000?????0000111; - localparam [31:0] VLOXSEG7EI16_V = 32'b110011???????????101?????0000111; - localparam [31:0] VLOXSEG7EI32_V = 32'b110011???????????110?????0000111; - localparam [31:0] VLOXSEG7EI64_V = 32'b110011???????????111?????0000111; - localparam [31:0] VLOXSEG7EI8_V = 32'b110011???????????000?????0000111; - localparam [31:0] VLOXSEG8EI16_V = 32'b111011???????????101?????0000111; - localparam [31:0] VLOXSEG8EI32_V = 32'b111011???????????110?????0000111; - localparam [31:0] VLOXSEG8EI64_V = 32'b111011???????????111?????0000111; - localparam [31:0] VLOXSEG8EI8_V = 32'b111011???????????000?????0000111; - localparam [31:0] VLSE16_V = 32'b000010???????????101?????0000111; - localparam [31:0] VLSE32_V = 32'b000010???????????110?????0000111; - localparam [31:0] VLSE64_V = 32'b000010???????????111?????0000111; - localparam [31:0] VLSE8_V = 32'b000010???????????000?????0000111; - localparam [31:0] VLSEG2E16_V = 32'b001000?00000?????101?????0000111; - localparam [31:0] VLSEG2E16FF_V = 32'b001000?10000?????101?????0000111; - localparam [31:0] VLSEG2E32_V = 32'b001000?00000?????110?????0000111; - localparam [31:0] VLSEG2E32FF_V = 32'b001000?10000?????110?????0000111; - localparam [31:0] VLSEG2E64_V = 32'b001000?00000?????111?????0000111; - localparam [31:0] VLSEG2E64FF_V = 32'b001000?10000?????111?????0000111; - localparam [31:0] VLSEG2E8_V = 32'b001000?00000?????000?????0000111; - localparam [31:0] VLSEG2E8FF_V = 32'b001000?10000?????000?????0000111; - localparam [31:0] VLSEG3E16_V = 32'b010000?00000?????101?????0000111; - localparam [31:0] VLSEG3E16FF_V = 32'b010000?10000?????101?????0000111; - localparam [31:0] VLSEG3E32_V = 32'b010000?00000?????110?????0000111; - localparam [31:0] VLSEG3E32FF_V = 32'b010000?10000?????110?????0000111; - localparam [31:0] VLSEG3E64_V = 32'b010000?00000?????111?????0000111; - localparam [31:0] VLSEG3E64FF_V = 32'b010000?10000?????111?????0000111; - localparam [31:0] VLSEG3E8_V = 32'b010000?00000?????000?????0000111; - localparam [31:0] VLSEG3E8FF_V = 32'b010000?10000?????000?????0000111; - localparam [31:0] VLSEG4E16_V = 32'b011000?00000?????101?????0000111; - localparam [31:0] VLSEG4E16FF_V = 32'b011000?10000?????101?????0000111; - localparam [31:0] VLSEG4E32_V = 32'b011000?00000?????110?????0000111; - localparam [31:0] VLSEG4E32FF_V = 32'b011000?10000?????110?????0000111; - localparam [31:0] VLSEG4E64_V = 32'b011000?00000?????111?????0000111; - localparam [31:0] VLSEG4E64FF_V = 32'b011000?10000?????111?????0000111; - localparam [31:0] VLSEG4E8_V = 32'b011000?00000?????000?????0000111; - localparam [31:0] VLSEG4E8FF_V = 32'b011000?10000?????000?????0000111; - localparam [31:0] VLSEG5E16_V = 32'b100000?00000?????101?????0000111; - localparam [31:0] VLSEG5E16FF_V = 32'b100000?10000?????101?????0000111; - localparam [31:0] VLSEG5E32_V = 32'b100000?00000?????110?????0000111; - localparam [31:0] VLSEG5E32FF_V = 32'b100000?10000?????110?????0000111; - localparam [31:0] VLSEG5E64_V = 32'b100000?00000?????111?????0000111; - localparam [31:0] VLSEG5E64FF_V = 32'b100000?10000?????111?????0000111; - localparam [31:0] VLSEG5E8_V = 32'b100000?00000?????000?????0000111; - localparam [31:0] VLSEG5E8FF_V = 32'b100000?10000?????000?????0000111; - localparam [31:0] VLSEG6E16_V = 32'b101000?00000?????101?????0000111; - localparam [31:0] VLSEG6E16FF_V = 32'b101000?10000?????101?????0000111; - localparam [31:0] VLSEG6E32_V = 32'b101000?00000?????110?????0000111; - localparam [31:0] VLSEG6E32FF_V = 32'b101000?10000?????110?????0000111; - localparam [31:0] VLSEG6E64_V = 32'b101000?00000?????111?????0000111; - localparam [31:0] VLSEG6E64FF_V = 32'b101000?10000?????111?????0000111; - localparam [31:0] VLSEG6E8_V = 32'b101000?00000?????000?????0000111; - localparam [31:0] VLSEG6E8FF_V = 32'b101000?10000?????000?????0000111; - localparam [31:0] VLSEG7E16_V = 32'b110000?00000?????101?????0000111; - localparam [31:0] VLSEG7E16FF_V = 32'b110000?10000?????101?????0000111; - localparam [31:0] VLSEG7E32_V = 32'b110000?00000?????110?????0000111; - localparam [31:0] VLSEG7E32FF_V = 32'b110000?10000?????110?????0000111; - localparam [31:0] VLSEG7E64_V = 32'b110000?00000?????111?????0000111; - localparam [31:0] VLSEG7E64FF_V = 32'b110000?10000?????111?????0000111; - localparam [31:0] VLSEG7E8_V = 32'b110000?00000?????000?????0000111; - localparam [31:0] VLSEG7E8FF_V = 32'b110000?10000?????000?????0000111; - localparam [31:0] VLSEG8E16_V = 32'b111000?00000?????101?????0000111; - localparam [31:0] VLSEG8E16FF_V = 32'b111000?10000?????101?????0000111; - localparam [31:0] VLSEG8E32_V = 32'b111000?00000?????110?????0000111; - localparam [31:0] VLSEG8E32FF_V = 32'b111000?10000?????110?????0000111; - localparam [31:0] VLSEG8E64_V = 32'b111000?00000?????111?????0000111; - localparam [31:0] VLSEG8E64FF_V = 32'b111000?10000?????111?????0000111; - localparam [31:0] VLSEG8E8_V = 32'b111000?00000?????000?????0000111; - localparam [31:0] VLSEG8E8FF_V = 32'b111000?10000?????000?????0000111; - localparam [31:0] VLSSEG2E16_V = 32'b001010???????????101?????0000111; - localparam [31:0] VLSSEG2E32_V = 32'b001010???????????110?????0000111; - localparam [31:0] VLSSEG2E64_V = 32'b001010???????????111?????0000111; - localparam [31:0] VLSSEG2E8_V = 32'b001010???????????000?????0000111; - localparam [31:0] VLSSEG3E16_V = 32'b010010???????????101?????0000111; - localparam [31:0] VLSSEG3E32_V = 32'b010010???????????110?????0000111; - localparam [31:0] VLSSEG3E64_V = 32'b010010???????????111?????0000111; - localparam [31:0] VLSSEG3E8_V = 32'b010010???????????000?????0000111; - localparam [31:0] VLSSEG4E16_V = 32'b011010???????????101?????0000111; - localparam [31:0] VLSSEG4E32_V = 32'b011010???????????110?????0000111; - localparam [31:0] VLSSEG4E64_V = 32'b011010???????????111?????0000111; - localparam [31:0] VLSSEG4E8_V = 32'b011010???????????000?????0000111; - localparam [31:0] VLSSEG5E16_V = 32'b100010???????????101?????0000111; - localparam [31:0] VLSSEG5E32_V = 32'b100010???????????110?????0000111; - localparam [31:0] VLSSEG5E64_V = 32'b100010???????????111?????0000111; - localparam [31:0] VLSSEG5E8_V = 32'b100010???????????000?????0000111; - localparam [31:0] VLSSEG6E16_V = 32'b101010???????????101?????0000111; - localparam [31:0] VLSSEG6E32_V = 32'b101010???????????110?????0000111; - localparam [31:0] VLSSEG6E64_V = 32'b101010???????????111?????0000111; - localparam [31:0] VLSSEG6E8_V = 32'b101010???????????000?????0000111; - localparam [31:0] VLSSEG7E16_V = 32'b110010???????????101?????0000111; - localparam [31:0] VLSSEG7E32_V = 32'b110010???????????110?????0000111; - localparam [31:0] VLSSEG7E64_V = 32'b110010???????????111?????0000111; - localparam [31:0] VLSSEG7E8_V = 32'b110010???????????000?????0000111; - localparam [31:0] VLSSEG8E16_V = 32'b111010???????????101?????0000111; - localparam [31:0] VLSSEG8E32_V = 32'b111010???????????110?????0000111; - localparam [31:0] VLSSEG8E64_V = 32'b111010???????????111?????0000111; - localparam [31:0] VLSSEG8E8_V = 32'b111010???????????000?????0000111; - localparam [31:0] VLUXEI16_V = 32'b000001???????????101?????0000111; - localparam [31:0] VLUXEI32_V = 32'b000001???????????110?????0000111; - localparam [31:0] VLUXEI64_V = 32'b000001???????????111?????0000111; - localparam [31:0] VLUXEI8_V = 32'b000001???????????000?????0000111; - localparam [31:0] VLUXSEG2EI16_V = 32'b001001???????????101?????0000111; - localparam [31:0] VLUXSEG2EI32_V = 32'b001001???????????110?????0000111; - localparam [31:0] VLUXSEG2EI64_V = 32'b001001???????????111?????0000111; - localparam [31:0] VLUXSEG2EI8_V = 32'b001001???????????000?????0000111; - localparam [31:0] VLUXSEG3EI16_V = 32'b010001???????????101?????0000111; - localparam [31:0] VLUXSEG3EI32_V = 32'b010001???????????110?????0000111; - localparam [31:0] VLUXSEG3EI64_V = 32'b010001???????????111?????0000111; - localparam [31:0] VLUXSEG3EI8_V = 32'b010001???????????000?????0000111; - localparam [31:0] VLUXSEG4EI16_V = 32'b011001???????????101?????0000111; - localparam [31:0] VLUXSEG4EI32_V = 32'b011001???????????110?????0000111; - localparam [31:0] VLUXSEG4EI64_V = 32'b011001???????????111?????0000111; - localparam [31:0] VLUXSEG4EI8_V = 32'b011001???????????000?????0000111; - localparam [31:0] VLUXSEG5EI16_V = 32'b100001???????????101?????0000111; - localparam [31:0] VLUXSEG5EI32_V = 32'b100001???????????110?????0000111; - localparam [31:0] VLUXSEG5EI64_V = 32'b100001???????????111?????0000111; - localparam [31:0] VLUXSEG5EI8_V = 32'b100001???????????000?????0000111; - localparam [31:0] VLUXSEG6EI16_V = 32'b101001???????????101?????0000111; - localparam [31:0] VLUXSEG6EI32_V = 32'b101001???????????110?????0000111; - localparam [31:0] VLUXSEG6EI64_V = 32'b101001???????????111?????0000111; - localparam [31:0] VLUXSEG6EI8_V = 32'b101001???????????000?????0000111; - localparam [31:0] VLUXSEG7EI16_V = 32'b110001???????????101?????0000111; - localparam [31:0] VLUXSEG7EI32_V = 32'b110001???????????110?????0000111; - localparam [31:0] VLUXSEG7EI64_V = 32'b110001???????????111?????0000111; - localparam [31:0] VLUXSEG7EI8_V = 32'b110001???????????000?????0000111; - localparam [31:0] VLUXSEG8EI16_V = 32'b111001???????????101?????0000111; - localparam [31:0] VLUXSEG8EI32_V = 32'b111001???????????110?????0000111; - localparam [31:0] VLUXSEG8EI64_V = 32'b111001???????????111?????0000111; - localparam [31:0] VLUXSEG8EI8_V = 32'b111001???????????000?????0000111; - localparam [31:0] VMACC_VV = 32'b101101???????????010?????1010111; - localparam [31:0] VMACC_VX = 32'b101101???????????110?????1010111; - localparam [31:0] VMADC_VI = 32'b0100011??????????011?????1010111; - localparam [31:0] VMADC_VIM = 32'b0100010??????????011?????1010111; - localparam [31:0] VMADC_VV = 32'b0100011??????????000?????1010111; - localparam [31:0] VMADC_VVM = 32'b0100010??????????000?????1010111; - localparam [31:0] VMADC_VX = 32'b0100011??????????100?????1010111; - localparam [31:0] VMADC_VXM = 32'b0100010??????????100?????1010111; - localparam [31:0] VMADD_VV = 32'b101001???????????010?????1010111; - localparam [31:0] VMADD_VX = 32'b101001???????????110?????1010111; - localparam [31:0] VMAND_MM = 32'b0110011??????????010?????1010111; - localparam [31:0] VMANDN_MM = 32'b0110001??????????010?????1010111; - localparam [31:0] VMAX_VV = 32'b000111???????????000?????1010111; - localparam [31:0] VMAX_VX = 32'b000111???????????100?????1010111; - localparam [31:0] VMAXU_VV = 32'b000110???????????000?????1010111; - localparam [31:0] VMAXU_VX = 32'b000110???????????100?????1010111; - localparam [31:0] VMERGE_VIM = 32'b0101110??????????011?????1010111; - localparam [31:0] VMERGE_VVM = 32'b0101110??????????000?????1010111; - localparam [31:0] VMERGE_VXM = 32'b0101110??????????100?????1010111; - localparam [31:0] VMFEQ_VF = 32'b011000???????????101?????1010111; - localparam [31:0] VMFEQ_VV = 32'b011000???????????001?????1010111; - localparam [31:0] VMFGE_VF = 32'b011111???????????101?????1010111; - localparam [31:0] VMFGT_VF = 32'b011101???????????101?????1010111; - localparam [31:0] VMFLE_VF = 32'b011001???????????101?????1010111; - localparam [31:0] VMFLE_VV = 32'b011001???????????001?????1010111; - localparam [31:0] VMFLT_VF = 32'b011011???????????101?????1010111; - localparam [31:0] VMFLT_VV = 32'b011011???????????001?????1010111; - localparam [31:0] VMFNE_VF = 32'b011100???????????101?????1010111; - localparam [31:0] VMFNE_VV = 32'b011100???????????001?????1010111; - localparam [31:0] VMIN_VV = 32'b000101???????????000?????1010111; - localparam [31:0] VMIN_VX = 32'b000101???????????100?????1010111; - localparam [31:0] VMINU_VV = 32'b000100???????????000?????1010111; - localparam [31:0] VMINU_VX = 32'b000100???????????100?????1010111; - localparam [31:0] VMNAND_MM = 32'b0111011??????????010?????1010111; - localparam [31:0] VMNOR_MM = 32'b0111101??????????010?????1010111; - localparam [31:0] VMOR_MM = 32'b0110101??????????010?????1010111; - localparam [31:0] VMORN_MM = 32'b0111001??????????010?????1010111; - localparam [31:0] VMSBC_VV = 32'b0100111??????????000?????1010111; - localparam [31:0] VMSBC_VVM = 32'b0100110??????????000?????1010111; - localparam [31:0] VMSBC_VX = 32'b0100111??????????100?????1010111; - localparam [31:0] VMSBC_VXM = 32'b0100110??????????100?????1010111; - localparam [31:0] VMSBF_M = 32'b010100??????00001010?????1010111; - localparam [31:0] VMSEQ_VI = 32'b011000???????????011?????1010111; - localparam [31:0] VMSEQ_VV = 32'b011000???????????000?????1010111; - localparam [31:0] VMSEQ_VX = 32'b011000???????????100?????1010111; - localparam [31:0] VMSGT_VI = 32'b011111???????????011?????1010111; - localparam [31:0] VMSGT_VX = 32'b011111???????????100?????1010111; - localparam [31:0] VMSGTU_VI = 32'b011110???????????011?????1010111; - localparam [31:0] VMSGTU_VX = 32'b011110???????????100?????1010111; - localparam [31:0] VMSIF_M = 32'b010100??????00011010?????1010111; - localparam [31:0] VMSLE_VI = 32'b011101???????????011?????1010111; - localparam [31:0] VMSLE_VV = 32'b011101???????????000?????1010111; - localparam [31:0] VMSLE_VX = 32'b011101???????????100?????1010111; - localparam [31:0] VMSLEU_VI = 32'b011100???????????011?????1010111; - localparam [31:0] VMSLEU_VV = 32'b011100???????????000?????1010111; - localparam [31:0] VMSLEU_VX = 32'b011100???????????100?????1010111; - localparam [31:0] VMSLT_VV = 32'b011011???????????000?????1010111; - localparam [31:0] VMSLT_VX = 32'b011011???????????100?????1010111; - localparam [31:0] VMSLTU_VV = 32'b011010???????????000?????1010111; - localparam [31:0] VMSLTU_VX = 32'b011010???????????100?????1010111; - localparam [31:0] VMSNE_VI = 32'b011001???????????011?????1010111; - localparam [31:0] VMSNE_VV = 32'b011001???????????000?????1010111; - localparam [31:0] VMSNE_VX = 32'b011001???????????100?????1010111; - localparam [31:0] VMSOF_M = 32'b010100??????00010010?????1010111; - localparam [31:0] VMUL_VV = 32'b100101???????????010?????1010111; - localparam [31:0] VMUL_VX = 32'b100101???????????110?????1010111; - localparam [31:0] VMULH_VV = 32'b100111???????????010?????1010111; - localparam [31:0] VMULH_VX = 32'b100111???????????110?????1010111; - localparam [31:0] VMULHSU_VV = 32'b100110???????????010?????1010111; - localparam [31:0] VMULHSU_VX = 32'b100110???????????110?????1010111; - localparam [31:0] VMULHU_VV = 32'b100100???????????010?????1010111; - localparam [31:0] VMULHU_VX = 32'b100100???????????110?????1010111; - localparam [31:0] VMV1R_V = 32'b1001111?????00000011?????1010111; - localparam [31:0] VMV2R_V = 32'b1001111?????00001011?????1010111; - localparam [31:0] VMV4R_V = 32'b1001111?????00011011?????1010111; - localparam [31:0] VMV8R_V = 32'b1001111?????00111011?????1010111; - localparam [31:0] VMV_S_X = 32'b010000100000?????110?????1010111; - localparam [31:0] VMV_V_I = 32'b010111100000?????011?????1010111; - localparam [31:0] VMV_V_V = 32'b010111100000?????000?????1010111; - localparam [31:0] VMV_V_X = 32'b010111100000?????100?????1010111; - localparam [31:0] VMV_X_S = 32'b0100001?????00000010?????1010111; - localparam [31:0] VMXNOR_MM = 32'b0111111??????????010?????1010111; - localparam [31:0] VMXOR_MM = 32'b0110111??????????010?????1010111; - localparam [31:0] VNCLIP_WI = 32'b101111???????????011?????1010111; - localparam [31:0] VNCLIP_WV = 32'b101111???????????000?????1010111; - localparam [31:0] VNCLIP_WX = 32'b101111???????????100?????1010111; - localparam [31:0] VNCLIPU_WI = 32'b101110???????????011?????1010111; - localparam [31:0] VNCLIPU_WV = 32'b101110???????????000?????1010111; - localparam [31:0] VNCLIPU_WX = 32'b101110???????????100?????1010111; - localparam [31:0] VNMSAC_VV = 32'b101111???????????010?????1010111; - localparam [31:0] VNMSAC_VX = 32'b101111???????????110?????1010111; - localparam [31:0] VNMSUB_VV = 32'b101011???????????010?????1010111; - localparam [31:0] VNMSUB_VX = 32'b101011???????????110?????1010111; - localparam [31:0] VNSRA_WI = 32'b101101???????????011?????1010111; - localparam [31:0] VNSRA_WV = 32'b101101???????????000?????1010111; - localparam [31:0] VNSRA_WX = 32'b101101???????????100?????1010111; - localparam [31:0] VNSRL_WI = 32'b101100???????????011?????1010111; - localparam [31:0] VNSRL_WV = 32'b101100???????????000?????1010111; - localparam [31:0] VNSRL_WX = 32'b101100???????????100?????1010111; - localparam [31:0] VOR_VI = 32'b001010???????????011?????1010111; - localparam [31:0] VOR_VV = 32'b001010???????????000?????1010111; - localparam [31:0] VOR_VX = 32'b001010???????????100?????1010111; - localparam [31:0] VREDAND_VS = 32'b000001???????????010?????1010111; - localparam [31:0] VREDMAX_VS = 32'b000111???????????010?????1010111; - localparam [31:0] VREDMAXU_VS = 32'b000110???????????010?????1010111; - localparam [31:0] VREDMIN_VS = 32'b000101???????????010?????1010111; - localparam [31:0] VREDMINU_VS = 32'b000100???????????010?????1010111; - localparam [31:0] VREDOR_VS = 32'b000010???????????010?????1010111; - localparam [31:0] VREDSUM_VS = 32'b000000???????????010?????1010111; - localparam [31:0] VREDXOR_VS = 32'b000011???????????010?????1010111; - localparam [31:0] VREM_VV = 32'b100011???????????010?????1010111; - localparam [31:0] VREM_VX = 32'b100011???????????110?????1010111; - localparam [31:0] VREMU_VV = 32'b100010???????????010?????1010111; - localparam [31:0] VREMU_VX = 32'b100010???????????110?????1010111; - localparam [31:0] VREV8_V = 32'b010010??????01001010?????1010111; - localparam [31:0] VRGATHER_VI = 32'b001100???????????011?????1010111; - localparam [31:0] VRGATHER_VV = 32'b001100???????????000?????1010111; - localparam [31:0] VRGATHER_VX = 32'b001100???????????100?????1010111; - localparam [31:0] VRGATHEREI16_VV = 32'b001110???????????000?????1010111; - localparam [31:0] VROL_VV = 32'b010101???????????000?????1010111; - localparam [31:0] VROL_VX = 32'b010101???????????100?????1010111; - localparam [31:0] VROR_VI = 32'b01010????????????011?????1010111; - localparam [31:0] VROR_VV = 32'b010100???????????000?????1010111; - localparam [31:0] VROR_VX = 32'b010100???????????100?????1010111; - localparam [31:0] VRSUB_VI = 32'b000011???????????011?????1010111; - localparam [31:0] VRSUB_VX = 32'b000011???????????100?????1010111; - localparam [31:0] VS1R_V = 32'b000000101000?????000?????0100111; - localparam [31:0] VS2R_V = 32'b001000101000?????000?????0100111; - localparam [31:0] VS4R_V = 32'b011000101000?????000?????0100111; - localparam [31:0] VS8R_V = 32'b111000101000?????000?????0100111; - localparam [31:0] VSADD_VI = 32'b100001???????????011?????1010111; - localparam [31:0] VSADD_VV = 32'b100001???????????000?????1010111; - localparam [31:0] VSADD_VX = 32'b100001???????????100?????1010111; - localparam [31:0] VSADDU_VI = 32'b100000???????????011?????1010111; - localparam [31:0] VSADDU_VV = 32'b100000???????????000?????1010111; - localparam [31:0] VSADDU_VX = 32'b100000???????????100?????1010111; - localparam [31:0] VSBC_VVM = 32'b0100100??????????000?????1010111; - localparam [31:0] VSBC_VXM = 32'b0100100??????????100?????1010111; - localparam [31:0] VSE16_V = 32'b000000?00000?????101?????0100111; - localparam [31:0] VSE32_V = 32'b000000?00000?????110?????0100111; - localparam [31:0] VSE64_V = 32'b000000?00000?????111?????0100111; - localparam [31:0] VSE8_V = 32'b000000?00000?????000?????0100111; - localparam [31:0] VSETIVLI = 32'b11???????????????111?????1010111; - localparam [31:0] VSETVL = 32'b1000000??????????111?????1010111; - localparam [31:0] VSETVLI = 32'b0????????????????111?????1010111; - localparam [31:0] VSEXT_VF2 = 32'b010010??????00111010?????1010111; - localparam [31:0] VSEXT_VF4 = 32'b010010??????00101010?????1010111; - localparam [31:0] VSEXT_VF8 = 32'b010010??????00011010?????1010111; - localparam [31:0] VSHA2CH_VV = 32'b1011101??????????010?????1110111; - localparam [31:0] VSHA2CL_VV = 32'b1011111??????????010?????1110111; - localparam [31:0] VSHA2MS_VV = 32'b1011011??????????010?????1110111; - localparam [31:0] VSLIDE1DOWN_VX = 32'b001111???????????110?????1010111; - localparam [31:0] VSLIDE1UP_VX = 32'b001110???????????110?????1010111; - localparam [31:0] VSLIDEDOWN_VI = 32'b001111???????????011?????1010111; - localparam [31:0] VSLIDEDOWN_VX = 32'b001111???????????100?????1010111; - localparam [31:0] VSLIDEUP_VI = 32'b001110???????????011?????1010111; - localparam [31:0] VSLIDEUP_VX = 32'b001110???????????100?????1010111; - localparam [31:0] VSLL_VI = 32'b100101???????????011?????1010111; - localparam [31:0] VSLL_VV = 32'b100101???????????000?????1010111; - localparam [31:0] VSLL_VX = 32'b100101???????????100?????1010111; - localparam [31:0] VSM3C_VI = 32'b1010111??????????010?????1110111; - localparam [31:0] VSM3ME_VV = 32'b1000001??????????010?????1110111; - localparam [31:0] VSM4K_VI = 32'b1000011??????????010?????1110111; - localparam [31:0] VSM4R_VS = 32'b1010011?????10000010?????1110111; - localparam [31:0] VSM4R_VV = 32'b1010001?????10000010?????1110111; - localparam [31:0] VSM_V = 32'b000000101011?????000?????0100111; - localparam [31:0] VSMUL_VV = 32'b100111???????????000?????1010111; - localparam [31:0] VSMUL_VX = 32'b100111???????????100?????1010111; - localparam [31:0] VSOXEI16_V = 32'b000011???????????101?????0100111; - localparam [31:0] VSOXEI32_V = 32'b000011???????????110?????0100111; - localparam [31:0] VSOXEI64_V = 32'b000011???????????111?????0100111; - localparam [31:0] VSOXEI8_V = 32'b000011???????????000?????0100111; - localparam [31:0] VSOXSEG2EI16_V = 32'b001011???????????101?????0100111; - localparam [31:0] VSOXSEG2EI32_V = 32'b001011???????????110?????0100111; - localparam [31:0] VSOXSEG2EI64_V = 32'b001011???????????111?????0100111; - localparam [31:0] VSOXSEG2EI8_V = 32'b001011???????????000?????0100111; - localparam [31:0] VSOXSEG3EI16_V = 32'b010011???????????101?????0100111; - localparam [31:0] VSOXSEG3EI32_V = 32'b010011???????????110?????0100111; - localparam [31:0] VSOXSEG3EI64_V = 32'b010011???????????111?????0100111; - localparam [31:0] VSOXSEG3EI8_V = 32'b010011???????????000?????0100111; - localparam [31:0] VSOXSEG4EI16_V = 32'b011011???????????101?????0100111; - localparam [31:0] VSOXSEG4EI32_V = 32'b011011???????????110?????0100111; - localparam [31:0] VSOXSEG4EI64_V = 32'b011011???????????111?????0100111; - localparam [31:0] VSOXSEG4EI8_V = 32'b011011???????????000?????0100111; - localparam [31:0] VSOXSEG5EI16_V = 32'b100011???????????101?????0100111; - localparam [31:0] VSOXSEG5EI32_V = 32'b100011???????????110?????0100111; - localparam [31:0] VSOXSEG5EI64_V = 32'b100011???????????111?????0100111; - localparam [31:0] VSOXSEG5EI8_V = 32'b100011???????????000?????0100111; - localparam [31:0] VSOXSEG6EI16_V = 32'b101011???????????101?????0100111; - localparam [31:0] VSOXSEG6EI32_V = 32'b101011???????????110?????0100111; - localparam [31:0] VSOXSEG6EI64_V = 32'b101011???????????111?????0100111; - localparam [31:0] VSOXSEG6EI8_V = 32'b101011???????????000?????0100111; - localparam [31:0] VSOXSEG7EI16_V = 32'b110011???????????101?????0100111; - localparam [31:0] VSOXSEG7EI32_V = 32'b110011???????????110?????0100111; - localparam [31:0] VSOXSEG7EI64_V = 32'b110011???????????111?????0100111; - localparam [31:0] VSOXSEG7EI8_V = 32'b110011???????????000?????0100111; - localparam [31:0] VSOXSEG8EI16_V = 32'b111011???????????101?????0100111; - localparam [31:0] VSOXSEG8EI32_V = 32'b111011???????????110?????0100111; - localparam [31:0] VSOXSEG8EI64_V = 32'b111011???????????111?????0100111; - localparam [31:0] VSOXSEG8EI8_V = 32'b111011???????????000?????0100111; - localparam [31:0] VSRA_VI = 32'b101001???????????011?????1010111; - localparam [31:0] VSRA_VV = 32'b101001???????????000?????1010111; - localparam [31:0] VSRA_VX = 32'b101001???????????100?????1010111; - localparam [31:0] VSRL_VI = 32'b101000???????????011?????1010111; - localparam [31:0] VSRL_VV = 32'b101000???????????000?????1010111; - localparam [31:0] VSRL_VX = 32'b101000???????????100?????1010111; - localparam [31:0] VSSE16_V = 32'b000010???????????101?????0100111; - localparam [31:0] VSSE32_V = 32'b000010???????????110?????0100111; - localparam [31:0] VSSE64_V = 32'b000010???????????111?????0100111; - localparam [31:0] VSSE8_V = 32'b000010???????????000?????0100111; - localparam [31:0] VSSEG2E16_V = 32'b001000?00000?????101?????0100111; - localparam [31:0] VSSEG2E32_V = 32'b001000?00000?????110?????0100111; - localparam [31:0] VSSEG2E64_V = 32'b001000?00000?????111?????0100111; - localparam [31:0] VSSEG2E8_V = 32'b001000?00000?????000?????0100111; - localparam [31:0] VSSEG3E16_V = 32'b010000?00000?????101?????0100111; - localparam [31:0] VSSEG3E32_V = 32'b010000?00000?????110?????0100111; - localparam [31:0] VSSEG3E64_V = 32'b010000?00000?????111?????0100111; - localparam [31:0] VSSEG3E8_V = 32'b010000?00000?????000?????0100111; - localparam [31:0] VSSEG4E16_V = 32'b011000?00000?????101?????0100111; - localparam [31:0] VSSEG4E32_V = 32'b011000?00000?????110?????0100111; - localparam [31:0] VSSEG4E64_V = 32'b011000?00000?????111?????0100111; - localparam [31:0] VSSEG4E8_V = 32'b011000?00000?????000?????0100111; - localparam [31:0] VSSEG5E16_V = 32'b100000?00000?????101?????0100111; - localparam [31:0] VSSEG5E32_V = 32'b100000?00000?????110?????0100111; - localparam [31:0] VSSEG5E64_V = 32'b100000?00000?????111?????0100111; - localparam [31:0] VSSEG5E8_V = 32'b100000?00000?????000?????0100111; - localparam [31:0] VSSEG6E16_V = 32'b101000?00000?????101?????0100111; - localparam [31:0] VSSEG6E32_V = 32'b101000?00000?????110?????0100111; - localparam [31:0] VSSEG6E64_V = 32'b101000?00000?????111?????0100111; - localparam [31:0] VSSEG6E8_V = 32'b101000?00000?????000?????0100111; - localparam [31:0] VSSEG7E16_V = 32'b110000?00000?????101?????0100111; - localparam [31:0] VSSEG7E32_V = 32'b110000?00000?????110?????0100111; - localparam [31:0] VSSEG7E64_V = 32'b110000?00000?????111?????0100111; - localparam [31:0] VSSEG7E8_V = 32'b110000?00000?????000?????0100111; - localparam [31:0] VSSEG8E16_V = 32'b111000?00000?????101?????0100111; - localparam [31:0] VSSEG8E32_V = 32'b111000?00000?????110?????0100111; - localparam [31:0] VSSEG8E64_V = 32'b111000?00000?????111?????0100111; - localparam [31:0] VSSEG8E8_V = 32'b111000?00000?????000?????0100111; - localparam [31:0] VSSRA_VI = 32'b101011???????????011?????1010111; - localparam [31:0] VSSRA_VV = 32'b101011???????????000?????1010111; - localparam [31:0] VSSRA_VX = 32'b101011???????????100?????1010111; - localparam [31:0] VSSRL_VI = 32'b101010???????????011?????1010111; - localparam [31:0] VSSRL_VV = 32'b101010???????????000?????1010111; - localparam [31:0] VSSRL_VX = 32'b101010???????????100?????1010111; - localparam [31:0] VSSSEG2E16_V = 32'b001010???????????101?????0100111; - localparam [31:0] VSSSEG2E32_V = 32'b001010???????????110?????0100111; - localparam [31:0] VSSSEG2E64_V = 32'b001010???????????111?????0100111; - localparam [31:0] VSSSEG2E8_V = 32'b001010???????????000?????0100111; - localparam [31:0] VSSSEG3E16_V = 32'b010010???????????101?????0100111; - localparam [31:0] VSSSEG3E32_V = 32'b010010???????????110?????0100111; - localparam [31:0] VSSSEG3E64_V = 32'b010010???????????111?????0100111; - localparam [31:0] VSSSEG3E8_V = 32'b010010???????????000?????0100111; - localparam [31:0] VSSSEG4E16_V = 32'b011010???????????101?????0100111; - localparam [31:0] VSSSEG4E32_V = 32'b011010???????????110?????0100111; - localparam [31:0] VSSSEG4E64_V = 32'b011010???????????111?????0100111; - localparam [31:0] VSSSEG4E8_V = 32'b011010???????????000?????0100111; - localparam [31:0] VSSSEG5E16_V = 32'b100010???????????101?????0100111; - localparam [31:0] VSSSEG5E32_V = 32'b100010???????????110?????0100111; - localparam [31:0] VSSSEG5E64_V = 32'b100010???????????111?????0100111; - localparam [31:0] VSSSEG5E8_V = 32'b100010???????????000?????0100111; - localparam [31:0] VSSSEG6E16_V = 32'b101010???????????101?????0100111; - localparam [31:0] VSSSEG6E32_V = 32'b101010???????????110?????0100111; - localparam [31:0] VSSSEG6E64_V = 32'b101010???????????111?????0100111; - localparam [31:0] VSSSEG6E8_V = 32'b101010???????????000?????0100111; - localparam [31:0] VSSSEG7E16_V = 32'b110010???????????101?????0100111; - localparam [31:0] VSSSEG7E32_V = 32'b110010???????????110?????0100111; - localparam [31:0] VSSSEG7E64_V = 32'b110010???????????111?????0100111; - localparam [31:0] VSSSEG7E8_V = 32'b110010???????????000?????0100111; - localparam [31:0] VSSSEG8E16_V = 32'b111010???????????101?????0100111; - localparam [31:0] VSSSEG8E32_V = 32'b111010???????????110?????0100111; - localparam [31:0] VSSSEG8E64_V = 32'b111010???????????111?????0100111; - localparam [31:0] VSSSEG8E8_V = 32'b111010???????????000?????0100111; - localparam [31:0] VSSUB_VV = 32'b100011???????????000?????1010111; - localparam [31:0] VSSUB_VX = 32'b100011???????????100?????1010111; - localparam [31:0] VSSUBU_VV = 32'b100010???????????000?????1010111; - localparam [31:0] VSSUBU_VX = 32'b100010???????????100?????1010111; - localparam [31:0] VSUB_VV = 32'b000010???????????000?????1010111; - localparam [31:0] VSUB_VX = 32'b000010???????????100?????1010111; - localparam [31:0] VSUXEI16_V = 32'b000001???????????101?????0100111; - localparam [31:0] VSUXEI32_V = 32'b000001???????????110?????0100111; - localparam [31:0] VSUXEI64_V = 32'b000001???????????111?????0100111; - localparam [31:0] VSUXEI8_V = 32'b000001???????????000?????0100111; - localparam [31:0] VSUXSEG2EI16_V = 32'b001001???????????101?????0100111; - localparam [31:0] VSUXSEG2EI32_V = 32'b001001???????????110?????0100111; - localparam [31:0] VSUXSEG2EI64_V = 32'b001001???????????111?????0100111; - localparam [31:0] VSUXSEG2EI8_V = 32'b001001???????????000?????0100111; - localparam [31:0] VSUXSEG3EI16_V = 32'b010001???????????101?????0100111; - localparam [31:0] VSUXSEG3EI32_V = 32'b010001???????????110?????0100111; - localparam [31:0] VSUXSEG3EI64_V = 32'b010001???????????111?????0100111; - localparam [31:0] VSUXSEG3EI8_V = 32'b010001???????????000?????0100111; - localparam [31:0] VSUXSEG4EI16_V = 32'b011001???????????101?????0100111; - localparam [31:0] VSUXSEG4EI32_V = 32'b011001???????????110?????0100111; - localparam [31:0] VSUXSEG4EI64_V = 32'b011001???????????111?????0100111; - localparam [31:0] VSUXSEG4EI8_V = 32'b011001???????????000?????0100111; - localparam [31:0] VSUXSEG5EI16_V = 32'b100001???????????101?????0100111; - localparam [31:0] VSUXSEG5EI32_V = 32'b100001???????????110?????0100111; - localparam [31:0] VSUXSEG5EI64_V = 32'b100001???????????111?????0100111; - localparam [31:0] VSUXSEG5EI8_V = 32'b100001???????????000?????0100111; - localparam [31:0] VSUXSEG6EI16_V = 32'b101001???????????101?????0100111; - localparam [31:0] VSUXSEG6EI32_V = 32'b101001???????????110?????0100111; - localparam [31:0] VSUXSEG6EI64_V = 32'b101001???????????111?????0100111; - localparam [31:0] VSUXSEG6EI8_V = 32'b101001???????????000?????0100111; - localparam [31:0] VSUXSEG7EI16_V = 32'b110001???????????101?????0100111; - localparam [31:0] VSUXSEG7EI32_V = 32'b110001???????????110?????0100111; - localparam [31:0] VSUXSEG7EI64_V = 32'b110001???????????111?????0100111; - localparam [31:0] VSUXSEG7EI8_V = 32'b110001???????????000?????0100111; - localparam [31:0] VSUXSEG8EI16_V = 32'b111001???????????101?????0100111; - localparam [31:0] VSUXSEG8EI32_V = 32'b111001???????????110?????0100111; - localparam [31:0] VSUXSEG8EI64_V = 32'b111001???????????111?????0100111; - localparam [31:0] VSUXSEG8EI8_V = 32'b111001???????????000?????0100111; - localparam [31:0] VWADD_VV = 32'b110001???????????010?????1010111; - localparam [31:0] VWADD_VX = 32'b110001???????????110?????1010111; - localparam [31:0] VWADD_WV = 32'b110101???????????010?????1010111; - localparam [31:0] VWADD_WX = 32'b110101???????????110?????1010111; - localparam [31:0] VWADDU_VV = 32'b110000???????????010?????1010111; - localparam [31:0] VWADDU_VX = 32'b110000???????????110?????1010111; - localparam [31:0] VWADDU_WV = 32'b110100???????????010?????1010111; - localparam [31:0] VWADDU_WX = 32'b110100???????????110?????1010111; - localparam [31:0] VWMACC_VV = 32'b111101???????????010?????1010111; - localparam [31:0] VWMACC_VX = 32'b111101???????????110?????1010111; - localparam [31:0] VWMACCSU_VV = 32'b111111???????????010?????1010111; - localparam [31:0] VWMACCSU_VX = 32'b111111???????????110?????1010111; - localparam [31:0] VWMACCU_VV = 32'b111100???????????010?????1010111; - localparam [31:0] VWMACCU_VX = 32'b111100???????????110?????1010111; - localparam [31:0] VWMACCUS_VX = 32'b111110???????????110?????1010111; - localparam [31:0] VWMUL_VV = 32'b111011???????????010?????1010111; - localparam [31:0] VWMUL_VX = 32'b111011???????????110?????1010111; - localparam [31:0] VWMULSU_VV = 32'b111010???????????010?????1010111; - localparam [31:0] VWMULSU_VX = 32'b111010???????????110?????1010111; - localparam [31:0] VWMULU_VV = 32'b111000???????????010?????1010111; - localparam [31:0] VWMULU_VX = 32'b111000???????????110?????1010111; - localparam [31:0] VWREDSUM_VS = 32'b110001???????????000?????1010111; - localparam [31:0] VWREDSUMU_VS = 32'b110000???????????000?????1010111; - localparam [31:0] VWSLL_VI = 32'b110101???????????011?????1010111; - localparam [31:0] VWSLL_VV = 32'b110101???????????000?????1010111; - localparam [31:0] VWSLL_VX = 32'b110101???????????100?????1010111; - localparam [31:0] VWSUB_VV = 32'b110011???????????010?????1010111; - localparam [31:0] VWSUB_VX = 32'b110011???????????110?????1010111; - localparam [31:0] VWSUB_WV = 32'b110111???????????010?????1010111; - localparam [31:0] VWSUB_WX = 32'b110111???????????110?????1010111; - localparam [31:0] VWSUBU_VV = 32'b110010???????????010?????1010111; - localparam [31:0] VWSUBU_VX = 32'b110010???????????110?????1010111; - localparam [31:0] VWSUBU_WV = 32'b110110???????????010?????1010111; - localparam [31:0] VWSUBU_WX = 32'b110110???????????110?????1010111; - localparam [31:0] VXOR_VI = 32'b001011???????????011?????1010111; - localparam [31:0] VXOR_VV = 32'b001011???????????000?????1010111; - localparam [31:0] VXOR_VX = 32'b001011???????????100?????1010111; - localparam [31:0] VZEXT_VF2 = 32'b010010??????00110010?????1010111; - localparam [31:0] VZEXT_VF4 = 32'b010010??????00100010?????1010111; - localparam [31:0] VZEXT_VF8 = 32'b010010??????00010010?????1010111; - localparam [31:0] WFI = 32'b00010000010100000000000001110011; - localparam [31:0] WRS_NTO = 32'b00000000110100000000000001110011; - localparam [31:0] WRS_STO = 32'b00000001110100000000000001110011; - localparam [31:0] XNOR = 32'b0100000??????????100?????0110011; - localparam [31:0] XOR = 32'b0000000??????????100?????0110011; - localparam [31:0] XORI = 32'b?????????????????100?????0010011; - localparam [31:0] XPERM4 = 32'b0010100??????????010?????0110011; - localparam [31:0] XPERM8 = 32'b0010100??????????100?????0110011; - localparam [31:0] ZEXT_H = 32'b000010000000?????100?????0111011; - localparam [31:0] ZIP = 32'b000010001111?????001?????0010011; - /* CSR Addresses */ - localparam logic [11:0] CSR_FFLAGS = 12'h1; - localparam logic [11:0] CSR_FRM = 12'h2; - localparam logic [11:0] CSR_FCSR = 12'h3; - localparam logic [11:0] CSR_VSTART = 12'h8; - localparam logic [11:0] CSR_VXSAT = 12'h9; - localparam logic [11:0] CSR_VXRM = 12'ha; - localparam logic [11:0] CSR_VCSR = 12'hf; - localparam logic [11:0] CSR_SSP = 12'h11; - localparam logic [11:0] CSR_SEED = 12'h15; - localparam logic [11:0] CSR_JVT = 12'h17; - localparam logic [11:0] CSR_CYCLE = 12'hc00; - localparam logic [11:0] CSR_TIME = 12'hc01; - localparam logic [11:0] CSR_INSTRET = 12'hc02; - localparam logic [11:0] CSR_HPMCOUNTER3 = 12'hc03; - localparam logic [11:0] CSR_HPMCOUNTER4 = 12'hc04; - localparam logic [11:0] CSR_HPMCOUNTER5 = 12'hc05; - localparam logic [11:0] CSR_HPMCOUNTER6 = 12'hc06; - localparam logic [11:0] CSR_HPMCOUNTER7 = 12'hc07; - localparam logic [11:0] CSR_HPMCOUNTER8 = 12'hc08; - localparam logic [11:0] CSR_HPMCOUNTER9 = 12'hc09; - localparam logic [11:0] CSR_HPMCOUNTER10 = 12'hc0a; - localparam logic [11:0] CSR_HPMCOUNTER11 = 12'hc0b; - localparam logic [11:0] CSR_HPMCOUNTER12 = 12'hc0c; - localparam logic [11:0] CSR_HPMCOUNTER13 = 12'hc0d; - localparam logic [11:0] CSR_HPMCOUNTER14 = 12'hc0e; - localparam logic [11:0] CSR_HPMCOUNTER15 = 12'hc0f; - localparam logic [11:0] CSR_HPMCOUNTER16 = 12'hc10; - localparam logic [11:0] CSR_HPMCOUNTER17 = 12'hc11; - localparam logic [11:0] CSR_HPMCOUNTER18 = 12'hc12; - localparam logic [11:0] CSR_HPMCOUNTER19 = 12'hc13; - localparam logic [11:0] CSR_HPMCOUNTER20 = 12'hc14; - localparam logic [11:0] CSR_HPMCOUNTER21 = 12'hc15; - localparam logic [11:0] CSR_HPMCOUNTER22 = 12'hc16; - localparam logic [11:0] CSR_HPMCOUNTER23 = 12'hc17; - localparam logic [11:0] CSR_HPMCOUNTER24 = 12'hc18; - localparam logic [11:0] CSR_HPMCOUNTER25 = 12'hc19; - localparam logic [11:0] CSR_HPMCOUNTER26 = 12'hc1a; - localparam logic [11:0] CSR_HPMCOUNTER27 = 12'hc1b; - localparam logic [11:0] CSR_HPMCOUNTER28 = 12'hc1c; - localparam logic [11:0] CSR_HPMCOUNTER29 = 12'hc1d; - localparam logic [11:0] CSR_HPMCOUNTER30 = 12'hc1e; - localparam logic [11:0] CSR_HPMCOUNTER31 = 12'hc1f; - localparam logic [11:0] CSR_VL = 12'hc20; - localparam logic [11:0] CSR_VTYPE = 12'hc21; - localparam logic [11:0] CSR_VLENB = 12'hc22; - localparam logic [11:0] CSR_SSTATUS = 12'h100; - localparam logic [11:0] CSR_SEDELEG = 12'h102; - localparam logic [11:0] CSR_SIDELEG = 12'h103; - localparam logic [11:0] CSR_SIE = 12'h104; - localparam logic [11:0] CSR_STVEC = 12'h105; - localparam logic [11:0] CSR_SCOUNTEREN = 12'h106; - localparam logic [11:0] CSR_SENVCFG = 12'h10a; - localparam logic [11:0] CSR_SSTATEEN0 = 12'h10c; - localparam logic [11:0] CSR_SSTATEEN1 = 12'h10d; - localparam logic [11:0] CSR_SSTATEEN2 = 12'h10e; - localparam logic [11:0] CSR_SSTATEEN3 = 12'h10f; - localparam logic [11:0] CSR_SCOUNTINHIBIT = 12'h120; - localparam logic [11:0] CSR_SSCRATCH = 12'h140; - localparam logic [11:0] CSR_SEPC = 12'h141; - localparam logic [11:0] CSR_SCAUSE = 12'h142; - localparam logic [11:0] CSR_STVAL = 12'h143; - localparam logic [11:0] CSR_SIP = 12'h144; - localparam logic [11:0] CSR_STIMECMP = 12'h14d; - localparam logic [11:0] CSR_SCTRCTL = 12'h14e; - localparam logic [11:0] CSR_SCTRSTATUS = 12'h14f; - localparam logic [11:0] CSR_SISELECT = 12'h150; - localparam logic [11:0] CSR_SIREG = 12'h151; - localparam logic [11:0] CSR_SIREG2 = 12'h152; - localparam logic [11:0] CSR_SIREG3 = 12'h153; - localparam logic [11:0] CSR_SIREG4 = 12'h155; - localparam logic [11:0] CSR_SIREG5 = 12'h156; - localparam logic [11:0] CSR_SIREG6 = 12'h157; - localparam logic [11:0] CSR_STOPEI = 12'h15c; - localparam logic [11:0] CSR_SCTRDEPTH = 12'h15f; - localparam logic [11:0] CSR_SATP = 12'h180; - localparam logic [11:0] CSR_SRMCFG = 12'h181; - localparam logic [11:0] CSR_SCONTEXT = 12'h5a8; - localparam logic [11:0] CSR_VSSTATUS = 12'h200; - localparam logic [11:0] CSR_VSIE = 12'h204; - localparam logic [11:0] CSR_VSTVEC = 12'h205; - localparam logic [11:0] CSR_VSSCRATCH = 12'h240; - localparam logic [11:0] CSR_VSEPC = 12'h241; - localparam logic [11:0] CSR_VSCAUSE = 12'h242; - localparam logic [11:0] CSR_VSTVAL = 12'h243; - localparam logic [11:0] CSR_VSIP = 12'h244; - localparam logic [11:0] CSR_VSTIMECMP = 12'h24d; - localparam logic [11:0] CSR_VSCTRCTL = 12'h24e; - localparam logic [11:0] CSR_VSISELECT = 12'h250; - localparam logic [11:0] CSR_VSIREG = 12'h251; - localparam logic [11:0] CSR_VSIREG2 = 12'h252; - localparam logic [11:0] CSR_VSIREG3 = 12'h253; - localparam logic [11:0] CSR_VSIREG4 = 12'h255; - localparam logic [11:0] CSR_VSIREG5 = 12'h256; - localparam logic [11:0] CSR_VSIREG6 = 12'h257; - localparam logic [11:0] CSR_VSTOPEI = 12'h25c; - localparam logic [11:0] CSR_VSATP = 12'h280; - localparam logic [11:0] CSR_HSTATUS = 12'h600; - localparam logic [11:0] CSR_HEDELEG = 12'h602; - localparam logic [11:0] CSR_HIDELEG = 12'h603; - localparam logic [11:0] CSR_HIE = 12'h604; - localparam logic [11:0] CSR_HTIMEDELTA = 12'h605; - localparam logic [11:0] CSR_HCOUNTEREN = 12'h606; - localparam logic [11:0] CSR_HGEIE = 12'h607; - localparam logic [11:0] CSR_HVIEN = 12'h608; - localparam logic [11:0] CSR_HVICTL = 12'h609; - localparam logic [11:0] CSR_HENVCFG = 12'h60a; - localparam logic [11:0] CSR_HSTATEEN0 = 12'h60c; - localparam logic [11:0] CSR_HSTATEEN1 = 12'h60d; - localparam logic [11:0] CSR_HSTATEEN2 = 12'h60e; - localparam logic [11:0] CSR_HSTATEEN3 = 12'h60f; - localparam logic [11:0] CSR_HTVAL = 12'h643; - localparam logic [11:0] CSR_HIP = 12'h644; - localparam logic [11:0] CSR_HVIP = 12'h645; - localparam logic [11:0] CSR_HVIPRIO1 = 12'h646; - localparam logic [11:0] CSR_HVIPRIO2 = 12'h647; - localparam logic [11:0] CSR_HTINST = 12'h64a; - localparam logic [11:0] CSR_HGATP = 12'h680; - localparam logic [11:0] CSR_HCONTEXT = 12'h6a8; - localparam logic [11:0] CSR_HGEIP = 12'he12; - localparam logic [11:0] CSR_VSTOPI = 12'heb0; - localparam logic [11:0] CSR_SCOUNTOVF = 12'hda0; - localparam logic [11:0] CSR_STOPI = 12'hdb0; - localparam logic [11:0] CSR_UTVT = 12'h7; - localparam logic [11:0] CSR_UNXTI = 12'h45; - localparam logic [11:0] CSR_UINTSTATUS = 12'h46; - localparam logic [11:0] CSR_USCRATCHCSW = 12'h48; - localparam logic [11:0] CSR_USCRATCHCSWL = 12'h49; - localparam logic [11:0] CSR_STVT = 12'h107; - localparam logic [11:0] CSR_SNXTI = 12'h145; - localparam logic [11:0] CSR_SINTSTATUS = 12'h146; - localparam logic [11:0] CSR_SSCRATCHCSW = 12'h148; - localparam logic [11:0] CSR_SSCRATCHCSWL = 12'h149; - localparam logic [11:0] CSR_MTVT = 12'h307; - localparam logic [11:0] CSR_MNXTI = 12'h345; - localparam logic [11:0] CSR_MINTSTATUS = 12'h346; - localparam logic [11:0] CSR_MSCRATCHCSW = 12'h348; - localparam logic [11:0] CSR_MSCRATCHCSWL = 12'h349; - localparam logic [11:0] CSR_MSTATUS = 12'h300; - localparam logic [11:0] CSR_MISA = 12'h301; - localparam logic [11:0] CSR_MEDELEG = 12'h302; - localparam logic [11:0] CSR_MIDELEG = 12'h303; - localparam logic [11:0] CSR_MIE = 12'h304; - localparam logic [11:0] CSR_MTVEC = 12'h305; - localparam logic [11:0] CSR_MCOUNTEREN = 12'h306; - localparam logic [11:0] CSR_MVIEN = 12'h308; - localparam logic [11:0] CSR_MVIP = 12'h309; - localparam logic [11:0] CSR_MENVCFG = 12'h30a; - localparam logic [11:0] CSR_MSTATEEN0 = 12'h30c; - localparam logic [11:0] CSR_MSTATEEN1 = 12'h30d; - localparam logic [11:0] CSR_MSTATEEN2 = 12'h30e; - localparam logic [11:0] CSR_MSTATEEN3 = 12'h30f; - localparam logic [11:0] CSR_MCOUNTINHIBIT = 12'h320; - localparam logic [11:0] CSR_MSCRATCH = 12'h340; - localparam logic [11:0] CSR_MEPC = 12'h341; - localparam logic [11:0] CSR_MCAUSE = 12'h342; - localparam logic [11:0] CSR_MTVAL = 12'h343; - localparam logic [11:0] CSR_MIP = 12'h344; - localparam logic [11:0] CSR_MTINST = 12'h34a; - localparam logic [11:0] CSR_MTVAL2 = 12'h34b; - localparam logic [11:0] CSR_MCTRCTL = 12'h34e; - localparam logic [11:0] CSR_MISELECT = 12'h350; - localparam logic [11:0] CSR_MIREG = 12'h351; - localparam logic [11:0] CSR_MIREG2 = 12'h352; - localparam logic [11:0] CSR_MIREG3 = 12'h353; - localparam logic [11:0] CSR_MIREG4 = 12'h355; - localparam logic [11:0] CSR_MIREG5 = 12'h356; - localparam logic [11:0] CSR_MIREG6 = 12'h357; - localparam logic [11:0] CSR_MTOPEI = 12'h35c; - localparam logic [11:0] CSR_PMPCFG0 = 12'h3a0; - localparam logic [11:0] CSR_PMPCFG1 = 12'h3a1; - localparam logic [11:0] CSR_PMPCFG2 = 12'h3a2; - localparam logic [11:0] CSR_PMPCFG3 = 12'h3a3; - localparam logic [11:0] CSR_PMPCFG4 = 12'h3a4; - localparam logic [11:0] CSR_PMPCFG5 = 12'h3a5; - localparam logic [11:0] CSR_PMPCFG6 = 12'h3a6; - localparam logic [11:0] CSR_PMPCFG7 = 12'h3a7; - localparam logic [11:0] CSR_PMPCFG8 = 12'h3a8; - localparam logic [11:0] CSR_PMPCFG9 = 12'h3a9; - localparam logic [11:0] CSR_PMPCFG10 = 12'h3aa; - localparam logic [11:0] CSR_PMPCFG11 = 12'h3ab; - localparam logic [11:0] CSR_PMPCFG12 = 12'h3ac; - localparam logic [11:0] CSR_PMPCFG13 = 12'h3ad; - localparam logic [11:0] CSR_PMPCFG14 = 12'h3ae; - localparam logic [11:0] CSR_PMPCFG15 = 12'h3af; - localparam logic [11:0] CSR_PMPADDR0 = 12'h3b0; - localparam logic [11:0] CSR_PMPADDR1 = 12'h3b1; - localparam logic [11:0] CSR_PMPADDR2 = 12'h3b2; - localparam logic [11:0] CSR_PMPADDR3 = 12'h3b3; - localparam logic [11:0] CSR_PMPADDR4 = 12'h3b4; - localparam logic [11:0] CSR_PMPADDR5 = 12'h3b5; - localparam logic [11:0] CSR_PMPADDR6 = 12'h3b6; - localparam logic [11:0] CSR_PMPADDR7 = 12'h3b7; - localparam logic [11:0] CSR_PMPADDR8 = 12'h3b8; - localparam logic [11:0] CSR_PMPADDR9 = 12'h3b9; - localparam logic [11:0] CSR_PMPADDR10 = 12'h3ba; - localparam logic [11:0] CSR_PMPADDR11 = 12'h3bb; - localparam logic [11:0] CSR_PMPADDR12 = 12'h3bc; - localparam logic [11:0] CSR_PMPADDR13 = 12'h3bd; - localparam logic [11:0] CSR_PMPADDR14 = 12'h3be; - localparam logic [11:0] CSR_PMPADDR15 = 12'h3bf; - localparam logic [11:0] CSR_PMPADDR16 = 12'h3c0; - localparam logic [11:0] CSR_PMPADDR17 = 12'h3c1; - localparam logic [11:0] CSR_PMPADDR18 = 12'h3c2; - localparam logic [11:0] CSR_PMPADDR19 = 12'h3c3; - localparam logic [11:0] CSR_PMPADDR20 = 12'h3c4; - localparam logic [11:0] CSR_PMPADDR21 = 12'h3c5; - localparam logic [11:0] CSR_PMPADDR22 = 12'h3c6; - localparam logic [11:0] CSR_PMPADDR23 = 12'h3c7; - localparam logic [11:0] CSR_PMPADDR24 = 12'h3c8; - localparam logic [11:0] CSR_PMPADDR25 = 12'h3c9; - localparam logic [11:0] CSR_PMPADDR26 = 12'h3ca; - localparam logic [11:0] CSR_PMPADDR27 = 12'h3cb; - localparam logic [11:0] CSR_PMPADDR28 = 12'h3cc; - localparam logic [11:0] CSR_PMPADDR29 = 12'h3cd; - localparam logic [11:0] CSR_PMPADDR30 = 12'h3ce; - localparam logic [11:0] CSR_PMPADDR31 = 12'h3cf; - localparam logic [11:0] CSR_PMPADDR32 = 12'h3d0; - localparam logic [11:0] CSR_PMPADDR33 = 12'h3d1; - localparam logic [11:0] CSR_PMPADDR34 = 12'h3d2; - localparam logic [11:0] CSR_PMPADDR35 = 12'h3d3; - localparam logic [11:0] CSR_PMPADDR36 = 12'h3d4; - localparam logic [11:0] CSR_PMPADDR37 = 12'h3d5; - localparam logic [11:0] CSR_PMPADDR38 = 12'h3d6; - localparam logic [11:0] CSR_PMPADDR39 = 12'h3d7; - localparam logic [11:0] CSR_PMPADDR40 = 12'h3d8; - localparam logic [11:0] CSR_PMPADDR41 = 12'h3d9; - localparam logic [11:0] CSR_PMPADDR42 = 12'h3da; - localparam logic [11:0] CSR_PMPADDR43 = 12'h3db; - localparam logic [11:0] CSR_PMPADDR44 = 12'h3dc; - localparam logic [11:0] CSR_PMPADDR45 = 12'h3dd; - localparam logic [11:0] CSR_PMPADDR46 = 12'h3de; - localparam logic [11:0] CSR_PMPADDR47 = 12'h3df; - localparam logic [11:0] CSR_PMPADDR48 = 12'h3e0; - localparam logic [11:0] CSR_PMPADDR49 = 12'h3e1; - localparam logic [11:0] CSR_PMPADDR50 = 12'h3e2; - localparam logic [11:0] CSR_PMPADDR51 = 12'h3e3; - localparam logic [11:0] CSR_PMPADDR52 = 12'h3e4; - localparam logic [11:0] CSR_PMPADDR53 = 12'h3e5; - localparam logic [11:0] CSR_PMPADDR54 = 12'h3e6; - localparam logic [11:0] CSR_PMPADDR55 = 12'h3e7; - localparam logic [11:0] CSR_PMPADDR56 = 12'h3e8; - localparam logic [11:0] CSR_PMPADDR57 = 12'h3e9; - localparam logic [11:0] CSR_PMPADDR58 = 12'h3ea; - localparam logic [11:0] CSR_PMPADDR59 = 12'h3eb; - localparam logic [11:0] CSR_PMPADDR60 = 12'h3ec; - localparam logic [11:0] CSR_PMPADDR61 = 12'h3ed; - localparam logic [11:0] CSR_PMPADDR62 = 12'h3ee; - localparam logic [11:0] CSR_PMPADDR63 = 12'h3ef; - localparam logic [11:0] CSR_MSECCFG = 12'h747; - localparam logic [11:0] CSR_TSELECT = 12'h7a0; - localparam logic [11:0] CSR_TDATA1 = 12'h7a1; - localparam logic [11:0] CSR_TDATA2 = 12'h7a2; - localparam logic [11:0] CSR_TDATA3 = 12'h7a3; - localparam logic [11:0] CSR_TINFO = 12'h7a4; - localparam logic [11:0] CSR_TCONTROL = 12'h7a5; - localparam logic [11:0] CSR_MCONTEXT = 12'h7a8; - localparam logic [11:0] CSR_MSCONTEXT = 12'h7aa; - localparam logic [11:0] CSR_DCSR = 12'h7b0; - localparam logic [11:0] CSR_DPC = 12'h7b1; - localparam logic [11:0] CSR_DSCRATCH0 = 12'h7b2; - localparam logic [11:0] CSR_DSCRATCH1 = 12'h7b3; - localparam logic [11:0] CSR_MCYCLE = 12'hb00; - localparam logic [11:0] CSR_MINSTRET = 12'hb02; - localparam logic [11:0] CSR_MHPMCOUNTER3 = 12'hb03; - localparam logic [11:0] CSR_MHPMCOUNTER4 = 12'hb04; - localparam logic [11:0] CSR_MHPMCOUNTER5 = 12'hb05; - localparam logic [11:0] CSR_MHPMCOUNTER6 = 12'hb06; - localparam logic [11:0] CSR_MHPMCOUNTER7 = 12'hb07; - localparam logic [11:0] CSR_MHPMCOUNTER8 = 12'hb08; - localparam logic [11:0] CSR_MHPMCOUNTER9 = 12'hb09; - localparam logic [11:0] CSR_MHPMCOUNTER10 = 12'hb0a; - localparam logic [11:0] CSR_MHPMCOUNTER11 = 12'hb0b; - localparam logic [11:0] CSR_MHPMCOUNTER12 = 12'hb0c; - localparam logic [11:0] CSR_MHPMCOUNTER13 = 12'hb0d; - localparam logic [11:0] CSR_MHPMCOUNTER14 = 12'hb0e; - localparam logic [11:0] CSR_MHPMCOUNTER15 = 12'hb0f; - localparam logic [11:0] CSR_MHPMCOUNTER16 = 12'hb10; - localparam logic [11:0] CSR_MHPMCOUNTER17 = 12'hb11; - localparam logic [11:0] CSR_MHPMCOUNTER18 = 12'hb12; - localparam logic [11:0] CSR_MHPMCOUNTER19 = 12'hb13; - localparam logic [11:0] CSR_MHPMCOUNTER20 = 12'hb14; - localparam logic [11:0] CSR_MHPMCOUNTER21 = 12'hb15; - localparam logic [11:0] CSR_MHPMCOUNTER22 = 12'hb16; - localparam logic [11:0] CSR_MHPMCOUNTER23 = 12'hb17; - localparam logic [11:0] CSR_MHPMCOUNTER24 = 12'hb18; - localparam logic [11:0] CSR_MHPMCOUNTER25 = 12'hb19; - localparam logic [11:0] CSR_MHPMCOUNTER26 = 12'hb1a; - localparam logic [11:0] CSR_MHPMCOUNTER27 = 12'hb1b; - localparam logic [11:0] CSR_MHPMCOUNTER28 = 12'hb1c; - localparam logic [11:0] CSR_MHPMCOUNTER29 = 12'hb1d; - localparam logic [11:0] CSR_MHPMCOUNTER30 = 12'hb1e; - localparam logic [11:0] CSR_MHPMCOUNTER31 = 12'hb1f; - localparam logic [11:0] CSR_MCYCLECFG = 12'h321; - localparam logic [11:0] CSR_MINSTRETCFG = 12'h322; - localparam logic [11:0] CSR_MHPMEVENT3 = 12'h323; - localparam logic [11:0] CSR_MHPMEVENT4 = 12'h324; - localparam logic [11:0] CSR_MHPMEVENT5 = 12'h325; - localparam logic [11:0] CSR_MHPMEVENT6 = 12'h326; - localparam logic [11:0] CSR_MHPMEVENT7 = 12'h327; - localparam logic [11:0] CSR_MHPMEVENT8 = 12'h328; - localparam logic [11:0] CSR_MHPMEVENT9 = 12'h329; - localparam logic [11:0] CSR_MHPMEVENT10 = 12'h32a; - localparam logic [11:0] CSR_MHPMEVENT11 = 12'h32b; - localparam logic [11:0] CSR_MHPMEVENT12 = 12'h32c; - localparam logic [11:0] CSR_MHPMEVENT13 = 12'h32d; - localparam logic [11:0] CSR_MHPMEVENT14 = 12'h32e; - localparam logic [11:0] CSR_MHPMEVENT15 = 12'h32f; - localparam logic [11:0] CSR_MHPMEVENT16 = 12'h330; - localparam logic [11:0] CSR_MHPMEVENT17 = 12'h331; - localparam logic [11:0] CSR_MHPMEVENT18 = 12'h332; - localparam logic [11:0] CSR_MHPMEVENT19 = 12'h333; - localparam logic [11:0] CSR_MHPMEVENT20 = 12'h334; - localparam logic [11:0] CSR_MHPMEVENT21 = 12'h335; - localparam logic [11:0] CSR_MHPMEVENT22 = 12'h336; - localparam logic [11:0] CSR_MHPMEVENT23 = 12'h337; - localparam logic [11:0] CSR_MHPMEVENT24 = 12'h338; - localparam logic [11:0] CSR_MHPMEVENT25 = 12'h339; - localparam logic [11:0] CSR_MHPMEVENT26 = 12'h33a; - localparam logic [11:0] CSR_MHPMEVENT27 = 12'h33b; - localparam logic [11:0] CSR_MHPMEVENT28 = 12'h33c; - localparam logic [11:0] CSR_MHPMEVENT29 = 12'h33d; - localparam logic [11:0] CSR_MHPMEVENT30 = 12'h33e; - localparam logic [11:0] CSR_MHPMEVENT31 = 12'h33f; - localparam logic [11:0] CSR_MVENDORID = 12'hf11; - localparam logic [11:0] CSR_MARCHID = 12'hf12; - localparam logic [11:0] CSR_MIMPID = 12'hf13; - localparam logic [11:0] CSR_MHARTID = 12'hf14; - localparam logic [11:0] CSR_MCONFIGPTR = 12'hf15; - localparam logic [11:0] CSR_MTOPI = 12'hfb0; - localparam logic [11:0] CSR_SIEH = 12'h114; - localparam logic [11:0] CSR_SIPH = 12'h154; - localparam logic [11:0] CSR_STIMECMPH = 12'h15d; - localparam logic [11:0] CSR_VSIEH = 12'h214; - localparam logic [11:0] CSR_VSIPH = 12'h254; - localparam logic [11:0] CSR_VSTIMECMPH = 12'h25d; - localparam logic [11:0] CSR_HEDELEGH = 12'h612; - localparam logic [11:0] CSR_HTIMEDELTAH = 12'h615; - localparam logic [11:0] CSR_HIDELEGH = 12'h613; - localparam logic [11:0] CSR_HVIENH = 12'h618; - localparam logic [11:0] CSR_HENVCFGH = 12'h61a; - localparam logic [11:0] CSR_HVIPH = 12'h655; - localparam logic [11:0] CSR_HVIPRIO1H = 12'h656; - localparam logic [11:0] CSR_HVIPRIO2H = 12'h657; - localparam logic [11:0] CSR_HSTATEEN0H = 12'h61c; - localparam logic [11:0] CSR_HSTATEEN1H = 12'h61d; - localparam logic [11:0] CSR_HSTATEEN2H = 12'h61e; - localparam logic [11:0] CSR_HSTATEEN3H = 12'h61f; - localparam logic [11:0] CSR_CYCLEH = 12'hc80; - localparam logic [11:0] CSR_TIMEH = 12'hc81; - localparam logic [11:0] CSR_INSTRETH = 12'hc82; - localparam logic [11:0] CSR_HPMCOUNTER3H = 12'hc83; - localparam logic [11:0] CSR_HPMCOUNTER4H = 12'hc84; - localparam logic [11:0] CSR_HPMCOUNTER5H = 12'hc85; - localparam logic [11:0] CSR_HPMCOUNTER6H = 12'hc86; - localparam logic [11:0] CSR_HPMCOUNTER7H = 12'hc87; - localparam logic [11:0] CSR_HPMCOUNTER8H = 12'hc88; - localparam logic [11:0] CSR_HPMCOUNTER9H = 12'hc89; - localparam logic [11:0] CSR_HPMCOUNTER10H = 12'hc8a; - localparam logic [11:0] CSR_HPMCOUNTER11H = 12'hc8b; - localparam logic [11:0] CSR_HPMCOUNTER12H = 12'hc8c; - localparam logic [11:0] CSR_HPMCOUNTER13H = 12'hc8d; - localparam logic [11:0] CSR_HPMCOUNTER14H = 12'hc8e; - localparam logic [11:0] CSR_HPMCOUNTER15H = 12'hc8f; - localparam logic [11:0] CSR_HPMCOUNTER16H = 12'hc90; - localparam logic [11:0] CSR_HPMCOUNTER17H = 12'hc91; - localparam logic [11:0] CSR_HPMCOUNTER18H = 12'hc92; - localparam logic [11:0] CSR_HPMCOUNTER19H = 12'hc93; - localparam logic [11:0] CSR_HPMCOUNTER20H = 12'hc94; - localparam logic [11:0] CSR_HPMCOUNTER21H = 12'hc95; - localparam logic [11:0] CSR_HPMCOUNTER22H = 12'hc96; - localparam logic [11:0] CSR_HPMCOUNTER23H = 12'hc97; - localparam logic [11:0] CSR_HPMCOUNTER24H = 12'hc98; - localparam logic [11:0] CSR_HPMCOUNTER25H = 12'hc99; - localparam logic [11:0] CSR_HPMCOUNTER26H = 12'hc9a; - localparam logic [11:0] CSR_HPMCOUNTER27H = 12'hc9b; - localparam logic [11:0] CSR_HPMCOUNTER28H = 12'hc9c; - localparam logic [11:0] CSR_HPMCOUNTER29H = 12'hc9d; - localparam logic [11:0] CSR_HPMCOUNTER30H = 12'hc9e; - localparam logic [11:0] CSR_HPMCOUNTER31H = 12'hc9f; - localparam logic [11:0] CSR_MSTATUSH = 12'h310; - localparam logic [11:0] CSR_MIDELEGH = 12'h313; - localparam logic [11:0] CSR_MIEH = 12'h314; - localparam logic [11:0] CSR_MVIENH = 12'h318; - localparam logic [11:0] CSR_MVIPH = 12'h319; - localparam logic [11:0] CSR_MENVCFGH = 12'h31a; - localparam logic [11:0] CSR_MSTATEEN0H = 12'h31c; - localparam logic [11:0] CSR_MSTATEEN1H = 12'h31d; - localparam logic [11:0] CSR_MSTATEEN2H = 12'h31e; - localparam logic [11:0] CSR_MSTATEEN3H = 12'h31f; - localparam logic [11:0] CSR_MIPH = 12'h354; - localparam logic [11:0] CSR_MCYCLECFGH = 12'h721; - localparam logic [11:0] CSR_MINSTRETCFGH = 12'h722; - localparam logic [11:0] CSR_MHPMEVENT3H = 12'h723; - localparam logic [11:0] CSR_MHPMEVENT4H = 12'h724; - localparam logic [11:0] CSR_MHPMEVENT5H = 12'h725; - localparam logic [11:0] CSR_MHPMEVENT6H = 12'h726; - localparam logic [11:0] CSR_MHPMEVENT7H = 12'h727; - localparam logic [11:0] CSR_MHPMEVENT8H = 12'h728; - localparam logic [11:0] CSR_MHPMEVENT9H = 12'h729; - localparam logic [11:0] CSR_MHPMEVENT10H = 12'h72a; - localparam logic [11:0] CSR_MHPMEVENT11H = 12'h72b; - localparam logic [11:0] CSR_MHPMEVENT12H = 12'h72c; - localparam logic [11:0] CSR_MHPMEVENT13H = 12'h72d; - localparam logic [11:0] CSR_MHPMEVENT14H = 12'h72e; - localparam logic [11:0] CSR_MHPMEVENT15H = 12'h72f; - localparam logic [11:0] CSR_MHPMEVENT16H = 12'h730; - localparam logic [11:0] CSR_MHPMEVENT17H = 12'h731; - localparam logic [11:0] CSR_MHPMEVENT18H = 12'h732; - localparam logic [11:0] CSR_MHPMEVENT19H = 12'h733; - localparam logic [11:0] CSR_MHPMEVENT20H = 12'h734; - localparam logic [11:0] CSR_MHPMEVENT21H = 12'h735; - localparam logic [11:0] CSR_MHPMEVENT22H = 12'h736; - localparam logic [11:0] CSR_MHPMEVENT23H = 12'h737; - localparam logic [11:0] CSR_MHPMEVENT24H = 12'h738; - localparam logic [11:0] CSR_MHPMEVENT25H = 12'h739; - localparam logic [11:0] CSR_MHPMEVENT26H = 12'h73a; - localparam logic [11:0] CSR_MHPMEVENT27H = 12'h73b; - localparam logic [11:0] CSR_MHPMEVENT28H = 12'h73c; - localparam logic [11:0] CSR_MHPMEVENT29H = 12'h73d; - localparam logic [11:0] CSR_MHPMEVENT30H = 12'h73e; - localparam logic [11:0] CSR_MHPMEVENT31H = 12'h73f; - localparam logic [11:0] CSR_MNSCRATCH = 12'h740; - localparam logic [11:0] CSR_MNEPC = 12'h741; - localparam logic [11:0] CSR_MNCAUSE = 12'h742; - localparam logic [11:0] CSR_MNSTATUS = 12'h744; - localparam logic [11:0] CSR_MSECCFGH = 12'h757; - localparam logic [11:0] CSR_MCYCLEH = 12'hb80; - localparam logic [11:0] CSR_MINSTRETH = 12'hb82; - localparam logic [11:0] CSR_MHPMCOUNTER3H = 12'hb83; - localparam logic [11:0] CSR_MHPMCOUNTER4H = 12'hb84; - localparam logic [11:0] CSR_MHPMCOUNTER5H = 12'hb85; - localparam logic [11:0] CSR_MHPMCOUNTER6H = 12'hb86; - localparam logic [11:0] CSR_MHPMCOUNTER7H = 12'hb87; - localparam logic [11:0] CSR_MHPMCOUNTER8H = 12'hb88; - localparam logic [11:0] CSR_MHPMCOUNTER9H = 12'hb89; - localparam logic [11:0] CSR_MHPMCOUNTER10H = 12'hb8a; - localparam logic [11:0] CSR_MHPMCOUNTER11H = 12'hb8b; - localparam logic [11:0] CSR_MHPMCOUNTER12H = 12'hb8c; - localparam logic [11:0] CSR_MHPMCOUNTER13H = 12'hb8d; - localparam logic [11:0] CSR_MHPMCOUNTER14H = 12'hb8e; - localparam logic [11:0] CSR_MHPMCOUNTER15H = 12'hb8f; - localparam logic [11:0] CSR_MHPMCOUNTER16H = 12'hb90; - localparam logic [11:0] CSR_MHPMCOUNTER17H = 12'hb91; - localparam logic [11:0] CSR_MHPMCOUNTER18H = 12'hb92; - localparam logic [11:0] CSR_MHPMCOUNTER19H = 12'hb93; - localparam logic [11:0] CSR_MHPMCOUNTER20H = 12'hb94; - localparam logic [11:0] CSR_MHPMCOUNTER21H = 12'hb95; - localparam logic [11:0] CSR_MHPMCOUNTER22H = 12'hb96; - localparam logic [11:0] CSR_MHPMCOUNTER23H = 12'hb97; - localparam logic [11:0] CSR_MHPMCOUNTER24H = 12'hb98; - localparam logic [11:0] CSR_MHPMCOUNTER25H = 12'hb99; - localparam logic [11:0] CSR_MHPMCOUNTER26H = 12'hb9a; - localparam logic [11:0] CSR_MHPMCOUNTER27H = 12'hb9b; - localparam logic [11:0] CSR_MHPMCOUNTER28H = 12'hb9c; - localparam logic [11:0] CSR_MHPMCOUNTER29H = 12'hb9d; - localparam logic [11:0] CSR_MHPMCOUNTER30H = 12'hb9e; - localparam logic [11:0] CSR_MHPMCOUNTER31H = 12'hb9f; - -endpackage diff --git a/backends/opcodes_maker/output/instr-table.tex b/backends/opcodes_maker/output/instr-table.tex deleted file mode 100644 index 81e920d0f..000000000 --- a/backends/opcodes_maker/output/instr-table.tex +++ /dev/null @@ -1,2774 +0,0 @@ - -\newpage - -\begin{table}[p] -\begin{small} -\begin{center} - \begin{tabular} {p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}l} - & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & \\ - - & - - \multicolumn{3}{l}{31} & - \multicolumn{2}{r}{27} & - \multicolumn{1}{c}{26} & - \multicolumn{1}{r}{25} & - \multicolumn{3}{l}{24} & - \multicolumn{2}{r}{20} & - \multicolumn{3}{l}{19} & - \multicolumn{2}{r}{15} & - \multicolumn{2}{l}{14} & - \multicolumn{1}{r}{12} & - \multicolumn{4}{l}{11} & - \multicolumn{1}{r}{7} & - \multicolumn{6}{l}{6} & - \multicolumn{1}{r}{0} \\ - \cline{2-33} -& - - -\multicolumn{7}{|c|}{funct7} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{funct3} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{opcode} & R-type \\ -\cline{2-33} -& - -\multicolumn{12}{|c|}{imm[11:0]} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{funct3} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{opcode} & I-type \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{imm[11:5]} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{funct3} & -\multicolumn{5}{c|}{imm[4:0]} & -\multicolumn{7}{|c|}{opcode} & S-type \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{imm[12$\vert$10:5]} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{funct3} & -\multicolumn{5}{c|}{imm[4:1$\vert$11]} & -\multicolumn{7}{|c|}{opcode} & B-type \\ -\cline{2-33} -& - -\multicolumn{20}{|c|}{imm[31:12]} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{opcode} & U-type \\ -\cline{2-33} -& - -\multicolumn{20}{|c|}{imm[20$\vert$10:1$\vert$11$\vert$19:12]} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{opcode} & J-type \\ -\cline{2-33} -& - - - - -\multicolumn{32}{c}{} & \\ -\multicolumn{32}{c}{\bf RV32I Base Instruction Set } & \\ -\cline{2-33} - - & -\multicolumn{20}{|c|}{imm[31:12]} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0110111} & LUI \\ -\cline{2-33} -& - -\multicolumn{20}{|c|}{imm[31:12]} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0010111} & AUIPC \\ -\cline{2-33} -& - -\multicolumn{20}{|c|}{imm[20$\vert$10:1$\vert$11$\vert$19:12]} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1101111} & JAL \\ -\cline{2-33} -& - -\multicolumn{12}{|c|}{imm[11:0]} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1100111} & JALR \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{imm[12$\vert$10:5]} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{imm[4:1$\vert$11]} & -\multicolumn{7}{|c|}{1100011} & BEQ \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{imm[12$\vert$10:5]} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{001} & -\multicolumn{5}{c|}{imm[4:1$\vert$11]} & -\multicolumn{7}{|c|}{1100011} & BNE \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{imm[12$\vert$10:5]} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{100} & -\multicolumn{5}{c|}{imm[4:1$\vert$11]} & -\multicolumn{7}{|c|}{1100011} & BLT \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{imm[12$\vert$10:5]} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{101} & -\multicolumn{5}{c|}{imm[4:1$\vert$11]} & -\multicolumn{7}{|c|}{1100011} & BGE \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{imm[12$\vert$10:5]} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{110} & -\multicolumn{5}{c|}{imm[4:1$\vert$11]} & -\multicolumn{7}{|c|}{1100011} & BLTU \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{imm[12$\vert$10:5]} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{111} & -\multicolumn{5}{c|}{imm[4:1$\vert$11]} & -\multicolumn{7}{|c|}{1100011} & BGEU \\ -\cline{2-33} -& - -\multicolumn{12}{|c|}{imm[11:0]} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0000011} & LB \\ -\cline{2-33} -& - -\multicolumn{12}{|c|}{imm[11:0]} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{001} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0000011} & LH \\ -\cline{2-33} -& - -\multicolumn{12}{|c|}{imm[11:0]} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{010} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0000011} & LW \\ -\cline{2-33} -& - -\multicolumn{12}{|c|}{imm[11:0]} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{100} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0000011} & LBU \\ -\cline{2-33} -& - -\multicolumn{12}{|c|}{imm[11:0]} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{101} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0000011} & LHU \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{imm[11:5]} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{imm[4:0]} & -\multicolumn{7}{|c|}{0100011} & SB \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{imm[11:5]} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{001} & -\multicolumn{5}{c|}{imm[4:0]} & -\multicolumn{7}{|c|}{0100011} & SH \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{imm[11:5]} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{010} & -\multicolumn{5}{c|}{imm[4:0]} & -\multicolumn{7}{|c|}{0100011} & SW \\ -\cline{2-33} -& - -\multicolumn{12}{|c|}{imm[11:0]} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0010011} & ADDI \\ -\cline{2-33} -& - -\multicolumn{12}{|c|}{imm[11:0]} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{010} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0010011} & SLTI \\ -\cline{2-33} -& - -\multicolumn{12}{|c|}{imm[11:0]} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{011} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0010011} & SLTIU \\ -\cline{2-33} -& - -\multicolumn{12}{|c|}{imm[11:0]} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{100} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0010011} & XORI \\ -\cline{2-33} -& - -\multicolumn{12}{|c|}{imm[11:0]} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{110} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0010011} & ORI \\ -\cline{2-33} -& - -\multicolumn{12}{|c|}{imm[11:0]} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{111} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0010011} & ANDI \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000000} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0110011} & ADD \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0100000} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0110011} & SUB \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000000} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{001} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0110011} & SLL \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000000} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{010} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0110011} & SLT \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000000} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{011} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0110011} & SLTU \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000000} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{100} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0110011} & XOR \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000000} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{101} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0110011} & SRL \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0100000} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{101} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0110011} & SRA \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000000} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{110} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0110011} & OR \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000000} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{111} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0110011} & AND \\ -\cline{2-33} -& - -\multicolumn{4}{|c|}{fm} & -\multicolumn{4}{c|}{pred} & -\multicolumn{4}{c|}{succ} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0001111} & FENCE \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000000} & -\multicolumn{5}{c|}{00000} & -\multicolumn{5}{c|}{00000} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{00000} & -\multicolumn{7}{|c|}{1110011} & ECALL \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000000} & -\multicolumn{5}{c|}{00001} & -\multicolumn{5}{c|}{00000} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{00000} & -\multicolumn{7}{|c|}{1110011} & EBREAK \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000000} & -\multicolumn{5}{c|}{shamt} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{001} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0010011} & SLLI \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000000} & -\multicolumn{5}{c|}{shamt} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{101} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0010011} & SRLI \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0100000} & -\multicolumn{5}{c|}{shamt} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{101} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0010011} & SRAI \\ -\cline{2-33} -& - - - -\multicolumn{7}{|c|}{1000001} & -\multicolumn{5}{c|}{10011} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0001111} & FENCE.TSO \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000000} & -\multicolumn{5}{c|}{10000} & -\multicolumn{5}{c|}{00000} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{00000} & -\multicolumn{7}{|c|}{0001111} & PAUSE \\ -\cline{2-33} -& - - - - -\end{tabular} -\end{center} -\end{small} - -\end{table} - -\newpage - -\begin{table}[p] -\begin{small} -\begin{center} - \begin{tabular} {p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}l} - & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & \\ - - & - - \multicolumn{3}{l}{31} & - \multicolumn{2}{r}{27} & - \multicolumn{1}{c}{26} & - \multicolumn{1}{r}{25} & - \multicolumn{3}{l}{24} & - \multicolumn{2}{r}{20} & - \multicolumn{3}{l}{19} & - \multicolumn{2}{r}{15} & - \multicolumn{2}{l}{14} & - \multicolumn{1}{r}{12} & - \multicolumn{4}{l}{11} & - \multicolumn{1}{r}{7} & - \multicolumn{6}{l}{6} & - \multicolumn{1}{r}{0} \\ - \cline{2-33} -& - - -\multicolumn{7}{|c|}{funct7} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{funct3} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{opcode} & R-type \\ -\cline{2-33} -& - -\multicolumn{12}{|c|}{imm[11:0]} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{funct3} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{opcode} & I-type \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{imm[11:5]} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{funct3} & -\multicolumn{5}{c|}{imm[4:0]} & -\multicolumn{7}{|c|}{opcode} & S-type \\ -\cline{2-33} -& - - - - -\multicolumn{32}{c}{} & \\ -\multicolumn{32}{c}{\bf RV64I Base Instruction Set (in addition to RV32I) } & \\ -\cline{2-33} - - & -\multicolumn{12}{|c|}{imm[11:0]} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{110} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0000011} & LWU \\ -\cline{2-33} -& - -\multicolumn{12}{|c|}{imm[11:0]} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{011} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0000011} & LD \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{imm[11:5]} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{011} & -\multicolumn{5}{c|}{imm[4:0]} & -\multicolumn{7}{|c|}{0100011} & SD \\ -\cline{2-33} -& - -\multicolumn{6}{|c|}{000000} & -\multicolumn{6}{c|}{shamt} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{001} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0010011} & SLLI \\ -\cline{2-33} -& - -\multicolumn{6}{|c|}{000000} & -\multicolumn{6}{c|}{shamt} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{101} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0010011} & SRLI \\ -\cline{2-33} -& - -\multicolumn{6}{|c|}{010000} & -\multicolumn{6}{c|}{shamt} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{101} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0010011} & SRAI \\ -\cline{2-33} -& - -\multicolumn{12}{|c|}{imm[11:0]} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0011011} & ADDIW \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000000} & -\multicolumn{5}{c|}{shamt} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{001} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0011011} & SLLIW \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000000} & -\multicolumn{5}{c|}{shamt} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{101} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0011011} & SRLIW \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0100000} & -\multicolumn{5}{c|}{shamt} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{101} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0011011} & SRAIW \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000000} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0111011} & ADDW \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0100000} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0111011} & SUBW \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000000} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{001} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0111011} & SLLW \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000000} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{101} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0111011} & SRLW \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0100000} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{101} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0111011} & SRAW \\ -\cline{2-33} -& - - - - -\multicolumn{32}{c}{} & \\ -\multicolumn{32}{c}{\bf RV32/RV64 Zifencei Standard Extension } & \\ -\cline{2-33} - - & -\multicolumn{12}{|c|}{imm[11:0]} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{001} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0001111} & FENCE.I \\ -\cline{2-33} -& - - - - -\multicolumn{32}{c}{} & \\ -\multicolumn{32}{c}{\bf RV32/RV64 Zicsr Standard Extension } & \\ -\cline{2-33} - - & -\multicolumn{12}{|c|}{csr} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{001} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1110011} & CSRRW \\ -\cline{2-33} -& - -\multicolumn{12}{|c|}{csr} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{010} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1110011} & CSRRS \\ -\cline{2-33} -& - -\multicolumn{12}{|c|}{csr} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{011} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1110011} & CSRRC \\ -\cline{2-33} -& - -\multicolumn{12}{|c|}{csr} & -\multicolumn{5}{c|}{uimm} & -\multicolumn{3}{c|}{101} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1110011} & CSRRWI \\ -\cline{2-33} -& - -\multicolumn{12}{|c|}{csr} & -\multicolumn{5}{c|}{uimm} & -\multicolumn{3}{c|}{110} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1110011} & CSRRSI \\ -\cline{2-33} -& - -\multicolumn{12}{|c|}{csr} & -\multicolumn{5}{c|}{uimm} & -\multicolumn{3}{c|}{111} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1110011} & CSRRCI \\ -\cline{2-33} -& - - - - -\multicolumn{32}{c}{} & \\ -\multicolumn{32}{c}{\bf RV32M Standard Extension } & \\ -\cline{2-33} - - & -\multicolumn{7}{|c|}{0000001} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0110011} & MUL \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000001} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{001} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0110011} & MULH \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000001} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{010} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0110011} & MULHSU \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000001} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{011} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0110011} & MULHU \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000001} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{100} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0110011} & DIV \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000001} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{101} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0110011} & DIVU \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000001} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{110} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0110011} & REM \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000001} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{111} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0110011} & REMU \\ -\cline{2-33} -& - - - - -\multicolumn{32}{c}{} & \\ -\multicolumn{32}{c}{\bf RV64M Standard Extension (in addition to RV32M) } & \\ -\cline{2-33} - - & -\multicolumn{7}{|c|}{0000001} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0111011} & MULW \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000001} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{100} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0111011} & DIVW \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000001} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{101} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0111011} & DIVUW \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000001} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{110} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0111011} & REMW \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000001} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{111} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0111011} & REMUW \\ -\cline{2-33} -& - - - - -\end{tabular} -\end{center} -\end{small} - -\end{table} - -\newpage - -\begin{table}[p] -\begin{small} -\begin{center} - \begin{tabular} {p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}l} - & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & \\ - - & - - \multicolumn{3}{l}{31} & - \multicolumn{2}{r}{27} & - \multicolumn{1}{c}{26} & - \multicolumn{1}{r}{25} & - \multicolumn{3}{l}{24} & - \multicolumn{2}{r}{20} & - \multicolumn{3}{l}{19} & - \multicolumn{2}{r}{15} & - \multicolumn{2}{l}{14} & - \multicolumn{1}{r}{12} & - \multicolumn{4}{l}{11} & - \multicolumn{1}{r}{7} & - \multicolumn{6}{l}{6} & - \multicolumn{1}{r}{0} \\ - \cline{2-33} -& - - -\multicolumn{7}{|c|}{funct7} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{funct3} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{opcode} & R-type \\ -\cline{2-33} -& - - - - -\multicolumn{32}{c}{} & \\ -\multicolumn{32}{c}{\bf RV32A Standard Extension } & \\ -\cline{2-33} - - & -\multicolumn{5}{|c|}{00010} & -\multicolumn{1}{c|}{aq} & -\multicolumn{1}{c|}{rl} & -\multicolumn{5}{c|}{00000} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{010} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0101111} & LR.W \\ -\cline{2-33} -& - -\multicolumn{5}{|c|}{00011} & -\multicolumn{1}{c|}{aq} & -\multicolumn{1}{c|}{rl} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{010} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0101111} & SC.W \\ -\cline{2-33} -& - -\multicolumn{5}{|c|}{00001} & -\multicolumn{1}{c|}{aq} & -\multicolumn{1}{c|}{rl} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{010} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0101111} & AMOSWAP.W \\ -\cline{2-33} -& - -\multicolumn{5}{|c|}{00000} & -\multicolumn{1}{c|}{aq} & -\multicolumn{1}{c|}{rl} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{010} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0101111} & AMOADD.W \\ -\cline{2-33} -& - -\multicolumn{5}{|c|}{00100} & -\multicolumn{1}{c|}{aq} & -\multicolumn{1}{c|}{rl} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{010} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0101111} & AMOXOR.W \\ -\cline{2-33} -& - -\multicolumn{5}{|c|}{01100} & -\multicolumn{1}{c|}{aq} & -\multicolumn{1}{c|}{rl} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{010} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0101111} & AMOAND.W \\ -\cline{2-33} -& - -\multicolumn{5}{|c|}{01000} & -\multicolumn{1}{c|}{aq} & -\multicolumn{1}{c|}{rl} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{010} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0101111} & AMOOR.W \\ -\cline{2-33} -& - -\multicolumn{5}{|c|}{10000} & -\multicolumn{1}{c|}{aq} & -\multicolumn{1}{c|}{rl} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{010} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0101111} & AMOMIN.W \\ -\cline{2-33} -& - -\multicolumn{5}{|c|}{10100} & -\multicolumn{1}{c|}{aq} & -\multicolumn{1}{c|}{rl} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{010} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0101111} & AMOMAX.W \\ -\cline{2-33} -& - -\multicolumn{5}{|c|}{11000} & -\multicolumn{1}{c|}{aq} & -\multicolumn{1}{c|}{rl} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{010} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0101111} & AMOMINU.W \\ -\cline{2-33} -& - -\multicolumn{5}{|c|}{11100} & -\multicolumn{1}{c|}{aq} & -\multicolumn{1}{c|}{rl} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{010} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0101111} & AMOMAXU.W \\ -\cline{2-33} -& - - - - -\multicolumn{32}{c}{} & \\ -\multicolumn{32}{c}{\bf RV64A Standard Extension (in addition to RV32A) } & \\ -\cline{2-33} - - & -\multicolumn{5}{|c|}{00010} & -\multicolumn{1}{c|}{aq} & -\multicolumn{1}{c|}{rl} & -\multicolumn{5}{c|}{00000} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{011} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0101111} & LR.D \\ -\cline{2-33} -& - -\multicolumn{5}{|c|}{00011} & -\multicolumn{1}{c|}{aq} & -\multicolumn{1}{c|}{rl} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{011} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0101111} & SC.D \\ -\cline{2-33} -& - -\multicolumn{5}{|c|}{00001} & -\multicolumn{1}{c|}{aq} & -\multicolumn{1}{c|}{rl} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{011} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0101111} & AMOSWAP.D \\ -\cline{2-33} -& - -\multicolumn{5}{|c|}{00000} & -\multicolumn{1}{c|}{aq} & -\multicolumn{1}{c|}{rl} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{011} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0101111} & AMOADD.D \\ -\cline{2-33} -& - -\multicolumn{5}{|c|}{00100} & -\multicolumn{1}{c|}{aq} & -\multicolumn{1}{c|}{rl} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{011} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0101111} & AMOXOR.D \\ -\cline{2-33} -& - -\multicolumn{5}{|c|}{01100} & -\multicolumn{1}{c|}{aq} & -\multicolumn{1}{c|}{rl} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{011} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0101111} & AMOAND.D \\ -\cline{2-33} -& - -\multicolumn{5}{|c|}{01000} & -\multicolumn{1}{c|}{aq} & -\multicolumn{1}{c|}{rl} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{011} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0101111} & AMOOR.D \\ -\cline{2-33} -& - -\multicolumn{5}{|c|}{10000} & -\multicolumn{1}{c|}{aq} & -\multicolumn{1}{c|}{rl} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{011} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0101111} & AMOMIN.D \\ -\cline{2-33} -& - -\multicolumn{5}{|c|}{10100} & -\multicolumn{1}{c|}{aq} & -\multicolumn{1}{c|}{rl} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{011} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0101111} & AMOMAX.D \\ -\cline{2-33} -& - -\multicolumn{5}{|c|}{11000} & -\multicolumn{1}{c|}{aq} & -\multicolumn{1}{c|}{rl} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{011} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0101111} & AMOMINU.D \\ -\cline{2-33} -& - -\multicolumn{5}{|c|}{11100} & -\multicolumn{1}{c|}{aq} & -\multicolumn{1}{c|}{rl} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{011} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0101111} & AMOMAXU.D \\ -\cline{2-33} -& - - - - -\end{tabular} -\end{center} -\end{small} - -\end{table} - -\newpage - -\begin{table}[p] -\begin{small} -\begin{center} - \begin{tabular} {p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}l} - & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & \\ - - & - - \multicolumn{3}{l}{31} & - \multicolumn{2}{r}{27} & - \multicolumn{1}{c}{26} & - \multicolumn{1}{r}{25} & - \multicolumn{3}{l}{24} & - \multicolumn{2}{r}{20} & - \multicolumn{3}{l}{19} & - \multicolumn{2}{r}{15} & - \multicolumn{2}{l}{14} & - \multicolumn{1}{r}{12} & - \multicolumn{4}{l}{11} & - \multicolumn{1}{r}{7} & - \multicolumn{6}{l}{6} & - \multicolumn{1}{r}{0} \\ - \cline{2-33} -& - - -\multicolumn{7}{|c|}{funct7} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{funct3} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{opcode} & R-type \\ -\cline{2-33} -& - -\multicolumn{5}{|c|}{rs3} & -\multicolumn{2}{c|}{funct2} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{funct3} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{opcode} & R4-type \\ -\cline{2-33} -& - -\multicolumn{12}{|c|}{imm[11:0]} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{funct3} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{opcode} & I-type \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{imm[11:5]} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{funct3} & -\multicolumn{5}{c|}{imm[4:0]} & -\multicolumn{7}{|c|}{opcode} & S-type \\ -\cline{2-33} -& - - - - -\multicolumn{32}{c}{} & \\ -\multicolumn{32}{c}{\bf RV32F Standard Extension } & \\ -\cline{2-33} - - & -\multicolumn{12}{|c|}{imm[11:0]} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{010} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0000111} & FLW \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{imm[11:5]} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{010} & -\multicolumn{5}{c|}{imm[4:0]} & -\multicolumn{7}{|c|}{0100111} & FSW \\ -\cline{2-33} -& - -\multicolumn{5}{|c|}{rs3} & -\multicolumn{2}{c|}{00} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1000011} & FMADD.S \\ -\cline{2-33} -& - -\multicolumn{5}{|c|}{rs3} & -\multicolumn{2}{c|}{00} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1000111} & FMSUB.S \\ -\cline{2-33} -& - -\multicolumn{5}{|c|}{rs3} & -\multicolumn{2}{c|}{00} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1001011} & FNMSUB.S \\ -\cline{2-33} -& - -\multicolumn{5}{|c|}{rs3} & -\multicolumn{2}{c|}{00} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1001111} & FNMADD.S \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000000} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FADD.S \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000100} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FSUB.S \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0001000} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FMUL.S \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0001100} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FDIV.S \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0101100} & -\multicolumn{5}{c|}{00000} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FSQRT.S \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0010000} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FSGNJ.S \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0010000} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{001} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FSGNJN.S \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0010000} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{010} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FSGNJX.S \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0010100} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FMIN.S \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0010100} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{001} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FMAX.S \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1100000} & -\multicolumn{5}{c|}{00000} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCVT.W.S \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1100000} & -\multicolumn{5}{c|}{00001} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCVT.WU.S \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1110000} & -\multicolumn{5}{c|}{00000} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FMV.X.W \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1010000} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{010} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FEQ.S \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1010000} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{001} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FLT.S \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1010000} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FLE.S \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1110000} & -\multicolumn{5}{c|}{00000} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{001} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCLASS.S \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1101000} & -\multicolumn{5}{c|}{00000} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCVT.S.W \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1101000} & -\multicolumn{5}{c|}{00001} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCVT.S.WU \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1111000} & -\multicolumn{5}{c|}{00000} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FMV.W.X \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000000} & -\multicolumn{5}{c|}{00001} & -\multicolumn{5}{c|}{00000} & -\multicolumn{3}{c|}{010} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1110011} & FRFLAGS \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000000} & -\multicolumn{5}{c|}{00001} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{001} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1110011} & FSFLAGS \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000000} & -\multicolumn{5}{c|}{00001} & -\multicolumn{5}{c|}{uimm} & -\multicolumn{3}{c|}{101} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1110011} & FSFLAGSI \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000000} & -\multicolumn{5}{c|}{00010} & -\multicolumn{5}{c|}{00000} & -\multicolumn{3}{c|}{010} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1110011} & FRRM \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000000} & -\multicolumn{5}{c|}{00010} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{001} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1110011} & FSRM \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000000} & -\multicolumn{5}{c|}{00010} & -\multicolumn{5}{c|}{uimm} & -\multicolumn{3}{c|}{101} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1110011} & FSRMI \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000000} & -\multicolumn{5}{c|}{00011} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{001} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1110011} & FSCSR \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000000} & -\multicolumn{5}{c|}{00011} & -\multicolumn{5}{c|}{00000} & -\multicolumn{3}{c|}{010} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1110011} & FRCSR \\ -\cline{2-33} -& - - - - -\multicolumn{32}{c}{} & \\ -\multicolumn{32}{c}{\bf RV64F Standard Extension (in addition to RV32F) } & \\ -\cline{2-33} - - & -\multicolumn{7}{|c|}{1100000} & -\multicolumn{5}{c|}{00010} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCVT.L.S \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1100000} & -\multicolumn{5}{c|}{00011} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCVT.LU.S \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1101000} & -\multicolumn{5}{c|}{00010} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCVT.S.L \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1101000} & -\multicolumn{5}{c|}{00011} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCVT.S.LU \\ -\cline{2-33} -& - - - - -\end{tabular} -\end{center} -\end{small} - -\end{table} - -\newpage - -\begin{table}[p] -\begin{small} -\begin{center} - \begin{tabular} {p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}l} - & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & \\ - - & - - \multicolumn{3}{l}{31} & - \multicolumn{2}{r}{27} & - \multicolumn{1}{c}{26} & - \multicolumn{1}{r}{25} & - \multicolumn{3}{l}{24} & - \multicolumn{2}{r}{20} & - \multicolumn{3}{l}{19} & - \multicolumn{2}{r}{15} & - \multicolumn{2}{l}{14} & - \multicolumn{1}{r}{12} & - \multicolumn{4}{l}{11} & - \multicolumn{1}{r}{7} & - \multicolumn{6}{l}{6} & - \multicolumn{1}{r}{0} \\ - \cline{2-33} -& - - -\multicolumn{7}{|c|}{funct7} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{funct3} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{opcode} & R-type \\ -\cline{2-33} -& - -\multicolumn{5}{|c|}{rs3} & -\multicolumn{2}{c|}{funct2} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{funct3} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{opcode} & R4-type \\ -\cline{2-33} -& - -\multicolumn{12}{|c|}{imm[11:0]} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{funct3} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{opcode} & I-type \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{imm[11:5]} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{funct3} & -\multicolumn{5}{c|}{imm[4:0]} & -\multicolumn{7}{|c|}{opcode} & S-type \\ -\cline{2-33} -& - - - - -\multicolumn{32}{c}{} & \\ -\multicolumn{32}{c}{\bf RV32D Standard Extension } & \\ -\cline{2-33} - - & -\multicolumn{12}{|c|}{imm[11:0]} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{011} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0000111} & FLD \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{imm[11:5]} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{011} & -\multicolumn{5}{c|}{imm[4:0]} & -\multicolumn{7}{|c|}{0100111} & FSD \\ -\cline{2-33} -& - -\multicolumn{5}{|c|}{rs3} & -\multicolumn{2}{c|}{01} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1000011} & FMADD.D \\ -\cline{2-33} -& - -\multicolumn{5}{|c|}{rs3} & -\multicolumn{2}{c|}{01} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1000111} & FMSUB.D \\ -\cline{2-33} -& - -\multicolumn{5}{|c|}{rs3} & -\multicolumn{2}{c|}{01} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1001011} & FNMSUB.D \\ -\cline{2-33} -& - -\multicolumn{5}{|c|}{rs3} & -\multicolumn{2}{c|}{01} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1001111} & FNMADD.D \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000001} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FADD.D \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000101} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FSUB.D \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0001001} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FMUL.D \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0001101} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FDIV.D \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0101101} & -\multicolumn{5}{c|}{00000} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FSQRT.D \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0010001} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FSGNJ.D \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0010001} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{001} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FSGNJN.D \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0010001} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{010} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FSGNJX.D \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0010101} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FMIN.D \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0010101} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{001} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FMAX.D \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0100000} & -\multicolumn{5}{c|}{00001} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCVT.S.D \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0100001} & -\multicolumn{5}{c|}{00000} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCVT.D.S \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1010001} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{010} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FEQ.D \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1010001} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{001} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FLT.D \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1010001} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FLE.D \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1110001} & -\multicolumn{5}{c|}{00000} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{001} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCLASS.D \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1100001} & -\multicolumn{5}{c|}{00000} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCVT.W.D \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1100001} & -\multicolumn{5}{c|}{00001} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCVT.WU.D \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1101001} & -\multicolumn{5}{c|}{00000} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCVT.D.W \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1101001} & -\multicolumn{5}{c|}{00001} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCVT.D.WU \\ -\cline{2-33} -& - - - - -\multicolumn{32}{c}{} & \\ -\multicolumn{32}{c}{\bf RV64D Standard Extension (in addition to RV32D) } & \\ -\cline{2-33} - - & -\multicolumn{7}{|c|}{1100001} & -\multicolumn{5}{c|}{00010} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCVT.L.D \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1100001} & -\multicolumn{5}{c|}{00011} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCVT.LU.D \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1110001} & -\multicolumn{5}{c|}{00000} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FMV.X.D \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1101001} & -\multicolumn{5}{c|}{00010} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCVT.D.L \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1101001} & -\multicolumn{5}{c|}{00011} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCVT.D.LU \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1111001} & -\multicolumn{5}{c|}{00000} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FMV.D.X \\ -\cline{2-33} -& - - - - -\end{tabular} -\end{center} -\end{small} - -\end{table} - -\newpage - -\begin{table}[p] -\begin{small} -\begin{center} - \begin{tabular} {p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}l} - & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & \\ - - & - - \multicolumn{3}{l}{31} & - \multicolumn{2}{r}{27} & - \multicolumn{1}{c}{26} & - \multicolumn{1}{r}{25} & - \multicolumn{3}{l}{24} & - \multicolumn{2}{r}{20} & - \multicolumn{3}{l}{19} & - \multicolumn{2}{r}{15} & - \multicolumn{2}{l}{14} & - \multicolumn{1}{r}{12} & - \multicolumn{4}{l}{11} & - \multicolumn{1}{r}{7} & - \multicolumn{6}{l}{6} & - \multicolumn{1}{r}{0} \\ - \cline{2-33} -& - - -\multicolumn{7}{|c|}{funct7} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{funct3} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{opcode} & R-type \\ -\cline{2-33} -& - -\multicolumn{5}{|c|}{rs3} & -\multicolumn{2}{c|}{funct2} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{funct3} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{opcode} & R4-type \\ -\cline{2-33} -& - -\multicolumn{12}{|c|}{imm[11:0]} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{funct3} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{opcode} & I-type \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{imm[11:5]} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{funct3} & -\multicolumn{5}{c|}{imm[4:0]} & -\multicolumn{7}{|c|}{opcode} & S-type \\ -\cline{2-33} -& - - - - -\multicolumn{32}{c}{} & \\ -\multicolumn{32}{c}{\bf RV32Q Standard Extension } & \\ -\cline{2-33} - - & -\multicolumn{12}{|c|}{imm[11:0]} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{100} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0000111} & FLQ \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{imm[11:5]} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{100} & -\multicolumn{5}{c|}{imm[4:0]} & -\multicolumn{7}{|c|}{0100111} & FSQ \\ -\cline{2-33} -& - -\multicolumn{5}{|c|}{rs3} & -\multicolumn{2}{c|}{11} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1000011} & FMADD.Q \\ -\cline{2-33} -& - -\multicolumn{5}{|c|}{rs3} & -\multicolumn{2}{c|}{11} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1000111} & FMSUB.Q \\ -\cline{2-33} -& - -\multicolumn{5}{|c|}{rs3} & -\multicolumn{2}{c|}{11} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1001011} & FNMSUB.Q \\ -\cline{2-33} -& - -\multicolumn{5}{|c|}{rs3} & -\multicolumn{2}{c|}{11} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1001111} & FNMADD.Q \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000011} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FADD.Q \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000111} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FSUB.Q \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0001011} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FMUL.Q \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0001111} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FDIV.Q \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0101111} & -\multicolumn{5}{c|}{00000} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FSQRT.Q \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0010011} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FSGNJ.Q \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0010011} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{001} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FSGNJN.Q \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0010011} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{010} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FSGNJX.Q \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0010111} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FMIN.Q \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0010111} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{001} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FMAX.Q \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0100000} & -\multicolumn{5}{c|}{00011} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCVT.S.Q \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0100011} & -\multicolumn{5}{c|}{00000} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCVT.Q.S \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0100001} & -\multicolumn{5}{c|}{00011} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCVT.D.Q \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0100011} & -\multicolumn{5}{c|}{00001} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCVT.Q.D \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1010011} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{010} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FEQ.Q \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1010011} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{001} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FLT.Q \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1010011} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FLE.Q \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1110011} & -\multicolumn{5}{c|}{00000} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{001} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCLASS.Q \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1100011} & -\multicolumn{5}{c|}{00000} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCVT.W.Q \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1100011} & -\multicolumn{5}{c|}{00001} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCVT.WU.Q \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1101011} & -\multicolumn{5}{c|}{00000} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCVT.Q.W \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1101011} & -\multicolumn{5}{c|}{00001} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCVT.Q.WU \\ -\cline{2-33} -& - - - - -\multicolumn{32}{c}{} & \\ -\multicolumn{32}{c}{\bf RV64Q Standard Extension (in addition to RV32Q) } & \\ -\cline{2-33} - - & -\multicolumn{7}{|c|}{1100011} & -\multicolumn{5}{c|}{00010} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCVT.L.Q \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1100011} & -\multicolumn{5}{c|}{00011} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCVT.LU.Q \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1101011} & -\multicolumn{5}{c|}{00010} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCVT.Q.L \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1101011} & -\multicolumn{5}{c|}{00011} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCVT.Q.LU \\ -\cline{2-33} -& - - - - -\end{tabular} -\end{center} -\end{small} - -\end{table} - -\newpage - -\begin{table}[p] -\begin{small} -\begin{center} - \begin{tabular} {p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}l} - & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & \\ - - & - - \multicolumn{3}{l}{31} & - \multicolumn{2}{r}{27} & - \multicolumn{1}{c}{26} & - \multicolumn{1}{r}{25} & - \multicolumn{3}{l}{24} & - \multicolumn{2}{r}{20} & - \multicolumn{3}{l}{19} & - \multicolumn{2}{r}{15} & - \multicolumn{2}{l}{14} & - \multicolumn{1}{r}{12} & - \multicolumn{4}{l}{11} & - \multicolumn{1}{r}{7} & - \multicolumn{6}{l}{6} & - \multicolumn{1}{r}{0} \\ - \cline{2-33} -& - - -\multicolumn{7}{|c|}{funct7} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{funct3} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{opcode} & R-type \\ -\cline{2-33} -& - -\multicolumn{5}{|c|}{rs3} & -\multicolumn{2}{c|}{funct2} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{funct3} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{opcode} & R4-type \\ -\cline{2-33} -& - -\multicolumn{12}{|c|}{imm[11:0]} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{funct3} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{opcode} & I-type \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{imm[11:5]} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{funct3} & -\multicolumn{5}{c|}{imm[4:0]} & -\multicolumn{7}{|c|}{opcode} & S-type \\ -\cline{2-33} -& - - - - -\multicolumn{32}{c}{} & \\ -\multicolumn{32}{c}{\bf RV32Zfh Standard Extension } & \\ -\cline{2-33} - - & -\multicolumn{12}{|c|}{imm[11:0]} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{001} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{0000111} & FLH \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{imm[11:5]} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{001} & -\multicolumn{5}{c|}{imm[4:0]} & -\multicolumn{7}{|c|}{0100111} & FSH \\ -\cline{2-33} -& - -\multicolumn{5}{|c|}{rs3} & -\multicolumn{2}{c|}{10} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1000011} & FMADD.H \\ -\cline{2-33} -& - -\multicolumn{5}{|c|}{rs3} & -\multicolumn{2}{c|}{10} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1000111} & FMSUB.H \\ -\cline{2-33} -& - -\multicolumn{5}{|c|}{rs3} & -\multicolumn{2}{c|}{10} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1001011} & FNMSUB.H \\ -\cline{2-33} -& - -\multicolumn{5}{|c|}{rs3} & -\multicolumn{2}{c|}{10} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1001111} & FNMADD.H \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000010} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FADD.H \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0000110} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FSUB.H \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0001010} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FMUL.H \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0001110} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FDIV.H \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0101110} & -\multicolumn{5}{c|}{00000} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FSQRT.H \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0010010} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FSGNJ.H \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0010010} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{001} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FSGNJN.H \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0010010} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{010} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FSGNJX.H \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0010110} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FMIN.H \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0010110} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{001} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FMAX.H \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0100000} & -\multicolumn{5}{c|}{00010} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCVT.S.H \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0100010} & -\multicolumn{5}{c|}{00000} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCVT.H.S \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1010010} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{010} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FEQ.H \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1010010} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{001} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FLT.H \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1010010} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FLE.H \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1110010} & -\multicolumn{5}{c|}{00000} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{001} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCLASS.H \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1100010} & -\multicolumn{5}{c|}{00000} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCVT.W.H \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1100010} & -\multicolumn{5}{c|}{00001} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCVT.WU.H \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1110010} & -\multicolumn{5}{c|}{00000} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FMV.X.H \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1101010} & -\multicolumn{5}{c|}{00000} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCVT.H.W \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1101010} & -\multicolumn{5}{c|}{00001} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCVT.H.WU \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1111010} & -\multicolumn{5}{c|}{00000} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FMV.H.X \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0100001} & -\multicolumn{5}{c|}{00010} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCVT.D.H \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0100010} & -\multicolumn{5}{c|}{00001} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCVT.H.D \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0100011} & -\multicolumn{5}{c|}{00010} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCVT.Q.H \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0100010} & -\multicolumn{5}{c|}{00011} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCVT.H.Q \\ -\cline{2-33} -& - - - - -\multicolumn{32}{c}{} & \\ -\multicolumn{32}{c}{\bf RV64Zfh Standard Extension (in addition to RV32Zfh) } & \\ -\cline{2-33} - - & -\multicolumn{7}{|c|}{1100010} & -\multicolumn{5}{c|}{00010} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCVT.L.H \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1100010} & -\multicolumn{5}{c|}{00011} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCVT.LU.H \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1101010} & -\multicolumn{5}{c|}{00010} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCVT.H.L \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{1101010} & -\multicolumn{5}{c|}{00011} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{rm} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1010011} & FCVT.H.LU \\ -\cline{2-33} -& - - - - -\end{tabular} -\end{center} -\end{small} -\caption{Instruction listing for RISC-V} -\end{table} diff --git a/backends/opcodes_maker/output/instr_dict.json b/backends/opcodes_maker/output/instr_dict.json deleted file mode 100755 index c22017c25..000000000 --- a/backends/opcodes_maker/output/instr_dict.json +++ /dev/null @@ -1,8044 +0,0 @@ -{ - "add": { - "encoding": "0000000----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_i"], - "match": "0x33", - "mask": "0xfe00707f" - }, - "add_uw": { - "encoding": "0000100----------000-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_b", "rv64_zba"], - "match": "0x800003b", - "mask": "0xfe00707f" - }, - "addi": { - "encoding": "-----------------000-----0010011", - "variable_fields": ["rd", "rs1", "imm12"], - "extension": ["rv_i"], - "match": "0x13", - "mask": "0x707f" - }, - "addiw": { - "encoding": "-----------------000-----0011011", - "variable_fields": ["rd", "rs1", "imm12"], - "extension": ["rv64_i"], - "match": "0x1b", - "mask": "0x707f" - }, - "addw": { - "encoding": "0000000----------000-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_i"], - "match": "0x3b", - "mask": "0xfe00707f" - }, - "aes32dsi": { - "encoding": "--10101----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2", "bs"], - "extension": ["rv32_zk", "rv32_zkn", "rv32_zknd"], - "match": "0x2a000033", - "mask": "0x3e00707f" - }, - "aes32dsmi": { - "encoding": "--10111----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2", "bs"], - "extension": ["rv32_zk", "rv32_zkn", "rv32_zknd"], - "match": "0x2e000033", - "mask": "0x3e00707f" - }, - "aes32esi": { - "encoding": "--10001----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2", "bs"], - "extension": ["rv32_zk", "rv32_zkn", "rv32_zkne"], - "match": "0x22000033", - "mask": "0x3e00707f" - }, - "aes32esmi": { - "encoding": "--10011----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2", "bs"], - "extension": ["rv32_zk", "rv32_zkn", "rv32_zkne"], - "match": "0x26000033", - "mask": "0x3e00707f" - }, - "aes64ds": { - "encoding": "0011101----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_zk", "rv64_zkn", "rv64_zknd"], - "match": "0x3a000033", - "mask": "0xfe00707f" - }, - "aes64dsm": { - "encoding": "0011111----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_zk", "rv64_zkn", "rv64_zknd"], - "match": "0x3e000033", - "mask": "0xfe00707f" - }, - "aes64es": { - "encoding": "0011001----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_zk", "rv64_zkn", "rv64_zkne"], - "match": "0x32000033", - "mask": "0xfe00707f" - }, - "aes64esm": { - "encoding": "0011011----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_zk", "rv64_zkn", "rv64_zkne"], - "match": "0x36000033", - "mask": "0xfe00707f" - }, - "aes64im": { - "encoding": "001100000000-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_zk", "rv64_zkn", "rv64_zknd"], - "match": "0x30001013", - "mask": "0xfff0707f" - }, - "aes64ks1i": { - "encoding": "00110001---------001-----0010011", - "variable_fields": ["rd", "rs1", "rnum"], - "extension": ["rv64_zk", "rv64_zkn", "rv64_zknd", "rv64_zkne"], - "match": "0x31001013", - "mask": "0xff00707f" - }, - "aes64ks2": { - "encoding": "0111111----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_zk", "rv64_zkn", "rv64_zknd", "rv64_zkne"], - "match": "0x7e000033", - "mask": "0xfe00707f" - }, - "amoadd_b": { - "encoding": "00000------------000-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zabha"], - "match": "0x2f", - "mask": "0xf800707f" - }, - "amoadd_d": { - "encoding": "00000------------011-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv64_a", "rv64_zaamo"], - "match": "0x302f", - "mask": "0xf800707f" - }, - "amoadd_h": { - "encoding": "00000------------001-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zabha"], - "match": "0x102f", - "mask": "0xf800707f" - }, - "amoadd_w": { - "encoding": "00000------------010-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_a", "rv_zaamo"], - "match": "0x202f", - "mask": "0xf800707f" - }, - "amoand_b": { - "encoding": "01100------------000-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zabha"], - "match": "0x6000002f", - "mask": "0xf800707f" - }, - "amoand_d": { - "encoding": "01100------------011-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv64_a", "rv64_zaamo"], - "match": "0x6000302f", - "mask": "0xf800707f" - }, - "amoand_h": { - "encoding": "01100------------001-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zabha"], - "match": "0x6000102f", - "mask": "0xf800707f" - }, - "amoand_w": { - "encoding": "01100------------010-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_a", "rv_zaamo"], - "match": "0x6000202f", - "mask": "0xf800707f" - }, - "amocas_b": { - "encoding": "00101------------000-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zabha"], - "match": "0x2800002f", - "mask": "0xf800707f" - }, - "amocas_d": { - "encoding": "00101------------011-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zacas"], - "match": "0x2800302f", - "mask": "0xf800707f" - }, - "amocas_h": { - "encoding": "00101------------001-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zabha"], - "match": "0x2800102f", - "mask": "0xf800707f" - }, - "amocas_q": { - "encoding": "00101------------100-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv64_zacas"], - "match": "0x2800402f", - "mask": "0xf800707f" - }, - "amocas_w": { - "encoding": "00101------------010-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zacas"], - "match": "0x2800202f", - "mask": "0xf800707f" - }, - "amomax_b": { - "encoding": "10100------------000-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zabha"], - "match": "0xa000002f", - "mask": "0xf800707f" - }, - "amomax_d": { - "encoding": "10100------------011-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv64_a", "rv64_zaamo"], - "match": "0xa000302f", - "mask": "0xf800707f" - }, - "amomax_h": { - "encoding": "10100------------001-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zabha"], - "match": "0xa000102f", - "mask": "0xf800707f" - }, - "amomax_w": { - "encoding": "10100------------010-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_a", "rv_zaamo"], - "match": "0xa000202f", - "mask": "0xf800707f" - }, - "amomaxu_b": { - "encoding": "11100------------000-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zabha"], - "match": "0xe000002f", - "mask": "0xf800707f" - }, - "amomaxu_d": { - "encoding": "11100------------011-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv64_a", "rv64_zaamo"], - "match": "0xe000302f", - "mask": "0xf800707f" - }, - "amomaxu_h": { - "encoding": "11100------------001-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zabha"], - "match": "0xe000102f", - "mask": "0xf800707f" - }, - "amomaxu_w": { - "encoding": "11100------------010-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_a", "rv_zaamo"], - "match": "0xe000202f", - "mask": "0xf800707f" - }, - "amomin_b": { - "encoding": "10000------------000-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zabha"], - "match": "0x8000002f", - "mask": "0xf800707f" - }, - "amomin_d": { - "encoding": "10000------------011-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv64_a", "rv64_zaamo"], - "match": "0x8000302f", - "mask": "0xf800707f" - }, - "amomin_h": { - "encoding": "10000------------001-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zabha"], - "match": "0x8000102f", - "mask": "0xf800707f" - }, - "amomin_w": { - "encoding": "10000------------010-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_a", "rv_zaamo"], - "match": "0x8000202f", - "mask": "0xf800707f" - }, - "amominu_b": { - "encoding": "11000------------000-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zabha"], - "match": "0xc000002f", - "mask": "0xf800707f" - }, - "amominu_d": { - "encoding": "11000------------011-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv64_a", "rv64_zaamo"], - "match": "0xc000302f", - "mask": "0xf800707f" - }, - "amominu_h": { - "encoding": "11000------------001-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zabha"], - "match": "0xc000102f", - "mask": "0xf800707f" - }, - "amominu_w": { - "encoding": "11000------------010-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_a", "rv_zaamo"], - "match": "0xc000202f", - "mask": "0xf800707f" - }, - "amoor_b": { - "encoding": "01000------------000-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zabha"], - "match": "0x4000002f", - "mask": "0xf800707f" - }, - "amoor_d": { - "encoding": "01000------------011-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv64_a", "rv64_zaamo"], - "match": "0x4000302f", - "mask": "0xf800707f" - }, - "amoor_h": { - "encoding": "01000------------001-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zabha"], - "match": "0x4000102f", - "mask": "0xf800707f" - }, - "amoor_w": { - "encoding": "01000------------010-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_a", "rv_zaamo"], - "match": "0x4000202f", - "mask": "0xf800707f" - }, - "amoswap_b": { - "encoding": "00001------------000-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zabha"], - "match": "0x800002f", - "mask": "0xf800707f" - }, - "amoswap_d": { - "encoding": "00001------------011-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv64_a", "rv64_zaamo"], - "match": "0x800302f", - "mask": "0xf800707f" - }, - "amoswap_h": { - "encoding": "00001------------001-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zabha"], - "match": "0x800102f", - "mask": "0xf800707f" - }, - "amoswap_w": { - "encoding": "00001------------010-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_a", "rv_zaamo"], - "match": "0x800202f", - "mask": "0xf800707f" - }, - "amoxor_b": { - "encoding": "00100------------000-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zabha"], - "match": "0x2000002f", - "mask": "0xf800707f" - }, - "amoxor_d": { - "encoding": "00100------------011-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv64_a", "rv64_zaamo"], - "match": "0x2000302f", - "mask": "0xf800707f" - }, - "amoxor_h": { - "encoding": "00100------------001-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zabha"], - "match": "0x2000102f", - "mask": "0xf800707f" - }, - "amoxor_w": { - "encoding": "00100------------010-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_a", "rv_zaamo"], - "match": "0x2000202f", - "mask": "0xf800707f" - }, - "and": { - "encoding": "0000000----------111-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_i"], - "match": "0x7033", - "mask": "0xfe00707f" - }, - "andi": { - "encoding": "-----------------111-----0010011", - "variable_fields": ["rd", "rs1", "imm12"], - "extension": ["rv_i"], - "match": "0x7013", - "mask": "0x707f" - }, - "andn": { - "encoding": "0100000----------111-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbb", "rv_zbkb", "rv_zk", "rv_zkn", "rv_zks"], - "match": "0x40007033", - "mask": "0xfe00707f" - }, - "auipc": { - "encoding": "-------------------------0010111", - "variable_fields": ["rd", "imm20"], - "extension": ["rv_i"], - "match": "0x17", - "mask": "0x7f" - }, - "bclr": { - "encoding": "0100100----------001-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbs"], - "match": "0x48001033", - "mask": "0xfe00707f" - }, - "bclri": { - "encoding": "010010-----------001-----0010011", - "variable_fields": ["rd", "rs1", "shamtd"], - "extension": ["rv64_b", "rv64_zbs"], - "match": "0x48001013", - "mask": "0xfc00707f" - }, - "beq": { - "encoding": "-----------------000-----1100011", - "variable_fields": ["rs1", "rs2", "bimm12hi", "bimm12lo"], - "extension": ["rv_i"], - "match": "0x63", - "mask": "0x707f" - }, - "bext": { - "encoding": "0100100----------101-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbs"], - "match": "0x48005033", - "mask": "0xfe00707f" - }, - "bexti": { - "encoding": "010010-----------101-----0010011", - "variable_fields": ["rd", "rs1", "shamtd"], - "extension": ["rv64_b", "rv64_zbs"], - "match": "0x48005013", - "mask": "0xfc00707f" - }, - "bge": { - "encoding": "-----------------101-----1100011", - "variable_fields": ["rs1", "rs2", "bimm12hi", "bimm12lo"], - "extension": ["rv_i"], - "match": "0x5063", - "mask": "0x707f" - }, - "bgeu": { - "encoding": "-----------------111-----1100011", - "variable_fields": ["rs1", "rs2", "bimm12hi", "bimm12lo"], - "extension": ["rv_i"], - "match": "0x7063", - "mask": "0x707f" - }, - "binv": { - "encoding": "0110100----------001-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbs"], - "match": "0x68001033", - "mask": "0xfe00707f" - }, - "binvi": { - "encoding": "011010-----------001-----0010011", - "variable_fields": ["rd", "rs1", "shamtd"], - "extension": ["rv64_b", "rv64_zbs"], - "match": "0x68001013", - "mask": "0xfc00707f" - }, - "blt": { - "encoding": "-----------------100-----1100011", - "variable_fields": ["rs1", "rs2", "bimm12hi", "bimm12lo"], - "extension": ["rv_i"], - "match": "0x4063", - "mask": "0x707f" - }, - "bltu": { - "encoding": "-----------------110-----1100011", - "variable_fields": ["rs1", "rs2", "bimm12hi", "bimm12lo"], - "extension": ["rv_i"], - "match": "0x6063", - "mask": "0x707f" - }, - "bne": { - "encoding": "-----------------001-----1100011", - "variable_fields": ["rs1", "rs2", "bimm12hi", "bimm12lo"], - "extension": ["rv_i"], - "match": "0x1063", - "mask": "0x707f" - }, - "brev8": { - "encoding": "011010000111-----101-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_zbkb"], - "match": "0x68705013", - "mask": "0xfff0707f" - }, - "bset": { - "encoding": "0010100----------001-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbs"], - "match": "0x28001033", - "mask": "0xfe00707f" - }, - "bseti": { - "encoding": "001010-----------001-----0010011", - "variable_fields": ["rd", "rs1", "shamtd"], - "extension": ["rv64_b", "rv64_zbs"], - "match": "0x28001013", - "mask": "0xfc00707f" - }, - "c_add": { - "encoding": "----------------1001----------10", - "variable_fields": ["rd", "rs2"], - "extension": ["rv_c", "rv_zca"], - "match": "0x9002", - "mask": "0xf003" - }, - "c_addi": { - "encoding": "----------------000-----------01", - "variable_fields": ["rd"], - "extension": ["rv_c", "rv_zca"], - "match": "0x1", - "mask": "0xe003" - }, - "c_addi16sp": { - "encoding": "----------------011-00010-----01", - "variable_fields": [], - "extension": ["rv_c", "rv_zca"], - "match": "0x6101", - "mask": "0xef83" - }, - "c_addi4spn": { - "encoding": "----------------000-----------00", - "variable_fields": ["rd"], - "extension": ["rv_c", "rv_zca"], - "match": "0x0", - "mask": "0xe003" - }, - "c_addiw": { - "encoding": "----------------001-----------01", - "variable_fields": ["rd"], - "extension": ["rv64_c", "rv64_zca"], - "match": "0x2001", - "mask": "0xe003" - }, - "c_addw": { - "encoding": "----------------100111---01---01", - "variable_fields": ["rd", "rs2"], - "extension": ["rv64_c", "rv64_zca"], - "match": "0x9c21", - "mask": "0xfc63" - }, - "c_and": { - "encoding": "----------------100011---11---01", - "variable_fields": ["rd", "rs2"], - "extension": ["rv_c", "rv_zca"], - "match": "0x8c61", - "mask": "0xfc63" - }, - "c_andi": { - "encoding": "----------------100-10--------01", - "variable_fields": ["rd"], - "extension": ["rv_c", "rv_zca"], - "match": "0x8801", - "mask": "0xec03" - }, - "c_beqz": { - "encoding": "----------------110-----------01", - "variable_fields": ["rs1"], - "extension": ["rv_c", "rv_zca"], - "match": "0xc001", - "mask": "0xe003" - }, - "c_bnez": { - "encoding": "----------------111-----------01", - "variable_fields": ["rs1"], - "extension": ["rv_c", "rv_zca"], - "match": "0xe001", - "mask": "0xe003" - }, - "c_ebreak": { - "encoding": "----------------1001000000000010", - "variable_fields": [], - "extension": ["rv_c", "rv_zca"], - "match": "0x9002", - "mask": "0xffff" - }, - "c_fld": { - "encoding": "----------------001-----------00", - "variable_fields": ["rs1", "rd"], - "extension": ["rv_c", "rv_d"], - "match": "0x2000", - "mask": "0xe003" - }, - "c_fldsp": { - "encoding": "----------------001-----------10", - "variable_fields": ["rd"], - "extension": ["rv_c", "rv_d"], - "match": "0x2002", - "mask": "0xe003" - }, - "c_flw": { - "encoding": "----------------011-----------00", - "variable_fields": ["rs1", "rd"], - "extension": ["rv_c", "rv_f"], - "match": "0x6000", - "mask": "0xe003" - }, - "c_flwsp": { - "encoding": "----------------011-----------10", - "variable_fields": ["rd"], - "extension": ["rv_c", "rv_f"], - "match": "0x6002", - "mask": "0xe003" - }, - "c_fsd": { - "encoding": "----------------101-----------00", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv_c", "rv_d"], - "match": "0xa000", - "mask": "0xe003" - }, - "c_fsdsp": { - "encoding": "----------------101-----------10", - "variable_fields": ["rs2"], - "extension": ["rv_c", "rv_d"], - "match": "0xa002", - "mask": "0xe003" - }, - "c_fsw": { - "encoding": "----------------111-----------00", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv_c", "rv_f"], - "match": "0xe000", - "mask": "0xe003" - }, - "c_fswsp": { - "encoding": "----------------111-----------10", - "variable_fields": ["rs2"], - "extension": ["rv_c", "rv_f"], - "match": "0xe002", - "mask": "0xe003" - }, - "c_j": { - "encoding": "----------------101-----------01", - "variable_fields": [], - "extension": ["rv_c", "rv_zca"], - "match": "0xa001", - "mask": "0xe003" - }, - "c_jal": { - "encoding": "----------------001-----------01", - "variable_fields": [], - "extension": ["rv32_c", "rv32_zca"], - "match": "0x2001", - "mask": "0xe003" - }, - "c_jalr": { - "encoding": "----------------1001-----0000010", - "variable_fields": ["rs1"], - "extension": ["rv_c", "rv_zca"], - "match": "0x9002", - "mask": "0xf07f" - }, - "c_jr": { - "encoding": "----------------1000-----0000010", - "variable_fields": ["rs1"], - "extension": ["rv_c", "rv_zca"], - "match": "0x8002", - "mask": "0xf07f" - }, - "c_lbu": { - "encoding": "----------------100000--------00", - "variable_fields": ["rs1", "rd"], - "extension": ["rv_zcb", "rv_zce"], - "match": "0x8000", - "mask": "0xfc03" - }, - "c_ld": { - "encoding": "----------------011-----------00", - "variable_fields": ["rs1", "rd"], - "extension": ["rv64_c", "rv64_zca"], - "match": "0x6000", - "mask": "0xe003" - }, - "c_ldsp": { - "encoding": "----------------011-----------10", - "variable_fields": ["rd"], - "extension": ["rv64_c", "rv64_zca"], - "match": "0x6002", - "mask": "0xe003" - }, - "c_li": { - "encoding": "----------------010-----------01", - "variable_fields": ["rd"], - "extension": ["rv_c", "rv_zca"], - "match": "0x4001", - "mask": "0xe003" - }, - "c_lui": { - "encoding": "----------------011-----------01", - "variable_fields": ["rd"], - "extension": ["rv_c", "rv_zca"], - "match": "0x6001", - "mask": "0xe003" - }, - "c_lw": { - "encoding": "----------------010-----------00", - "variable_fields": ["rs1", "rd"], - "extension": ["rv_c", "rv_zca"], - "match": "0x4000", - "mask": "0xe003" - }, - "c_lwsp": { - "encoding": "----------------010-----------10", - "variable_fields": ["rd"], - "extension": ["rv_c", "rv_zca"], - "match": "0x4002", - "mask": "0xe003" - }, - "c_mul": { - "encoding": "----------------100111---10---01", - "variable_fields": ["rs2", "rd"], - "extension": ["rv_zcb", "rv_zmmul"], - "match": "0x9c41", - "mask": "0xfc63" - }, - "c_mv": { - "encoding": "----------------1000----------10", - "variable_fields": ["rs2", "rd"], - "extension": ["rv_c", "rv_zca"], - "match": "0x8002", - "mask": "0xf003" - }, - "c_nop": { - "encoding": "----------------000-00000-----01", - "variable_fields": [], - "extension": ["rv_c", "rv_zca"], - "match": "0x1", - "mask": "0xef83" - }, - "c_not": { - "encoding": "----------------100111---1110101", - "variable_fields": ["rd"], - "extension": ["rv_zcb", "rv_zce"], - "match": "0x9c75", - "mask": "0xfc7f" - }, - "c_or": { - "encoding": "----------------100011---10---01", - "variable_fields": ["rd", "rs2"], - "extension": ["rv_c", "rv_zca"], - "match": "0x8c41", - "mask": "0xfc63" - }, - "c_sb": { - "encoding": "----------------100010--------00", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv_zcb", "rv_zce"], - "match": "0x8800", - "mask": "0xfc03" - }, - "c_sd": { - "encoding": "----------------111-----------00", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv64_c", "rv64_zca"], - "match": "0xe000", - "mask": "0xe003" - }, - "c_sdsp": { - "encoding": "----------------111-----------10", - "variable_fields": ["rs2"], - "extension": ["rv64_c", "rv64_zca"], - "match": "0xe002", - "mask": "0xe003" - }, - "c_sext_b": { - "encoding": "----------------100111---1100101", - "variable_fields": ["rd"], - "extension": ["rv_zcb", "rv_zbb"], - "match": "0x9c65", - "mask": "0xfc7f" - }, - "c_sext_h": { - "encoding": "----------------100111---1101101", - "variable_fields": ["rd"], - "extension": ["rv_zcb", "rv_zbb"], - "match": "0x9c6d", - "mask": "0xfc7f" - }, - "c_slli": { - "encoding": "----------------000-----------10", - "variable_fields": ["rd", "shamt"], - "extension": ["rv64_c", "rv64_zca"], - "match": "0x2", - "mask": "0xe003" - }, - "c_srai": { - "encoding": "----------------100-01--------01", - "variable_fields": ["rd", "shamt"], - "extension": ["rv64_c", "rv64_zca"], - "match": "0x8401", - "mask": "0xec03" - }, - "c_srli": { - "encoding": "----------------100-00--------01", - "variable_fields": ["rd", "shamt"], - "extension": ["rv64_c", "rv64_zca"], - "match": "0x8001", - "mask": "0xec03" - }, - "c_sub": { - "encoding": "----------------100011---00---01", - "variable_fields": ["rd", "rs2"], - "extension": ["rv_c", "rv_zca"], - "match": "0x8c01", - "mask": "0xfc63" - }, - "c_subw": { - "encoding": "----------------100111---00---01", - "variable_fields": ["rd", "rs2"], - "extension": ["rv64_c", "rv64_zca"], - "match": "0x9c01", - "mask": "0xfc63" - }, - "c_sw": { - "encoding": "----------------110-----------00", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv_c", "rv_zca"], - "match": "0xc000", - "mask": "0xe003" - }, - "c_swsp": { - "encoding": "----------------110-----------10", - "variable_fields": ["rs2"], - "extension": ["rv_c", "rv_zca"], - "match": "0xc002", - "mask": "0xe003" - }, - "c_xor": { - "encoding": "----------------100011---01---01", - "variable_fields": ["rd", "rs2"], - "extension": ["rv_c", "rv_zca"], - "match": "0x8c21", - "mask": "0xfc63" - }, - "c_zext_b": { - "encoding": "----------------100111---1100001", - "variable_fields": ["rd"], - "extension": ["rv_zcb", "rv_zbb"], - "match": "0x9c61", - "mask": "0xfc7f" - }, - "c_zext_h": { - "encoding": "----------------100111---1101001", - "variable_fields": ["rd"], - "extension": ["rv_zcb", "rv_zbb"], - "match": "0x9c69", - "mask": "0xfc7f" - }, - "c_zext_w": { - "encoding": "----------------100111---1110001", - "variable_fields": ["rd"], - "extension": ["rv64_zcb", "rv64_zbb"], - "match": "0x9c71", - "mask": "0xfc7f" - }, - "cbo_clean": { - "encoding": "000000000001-----010000000001111", - "variable_fields": ["rs1"], - "extension": ["rv_zicbom"], - "match": "0x10200f", - "mask": "0xfff07fff" - }, - "cbo_flush": { - "encoding": "000000000010-----010000000001111", - "variable_fields": ["rs1"], - "extension": ["rv_zicbom"], - "match": "0x20200f", - "mask": "0xfff07fff" - }, - "cbo_inval": { - "encoding": "000000000000-----010000000001111", - "variable_fields": ["rs1"], - "extension": ["rv_zicbom"], - "match": "0x200f", - "mask": "0xfff07fff" - }, - "cbo_zero": { - "encoding": "000000000100-----010000000001111", - "variable_fields": ["rs1"], - "extension": ["rv_zicboz"], - "match": "0x40200f", - "mask": "0xfff07fff" - }, - "clmul": { - "encoding": "0000101----------001-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbc", "rv_zbkc", "rv_zk", "rv_zkn", "rv_zks"], - "match": "0xa001033", - "mask": "0xfe00707f" - }, - "clmulh": { - "encoding": "0000101----------011-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbc", "rv_zbkc", "rv_zk", "rv_zkn", "rv_zks"], - "match": "0xa003033", - "mask": "0xfe00707f" - }, - "clmulr": { - "encoding": "0000101----------010-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbc"], - "match": "0xa002033", - "mask": "0xfe00707f" - }, - "clz": { - "encoding": "011000000000-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_b", "rv_zbb"], - "match": "0x60001013", - "mask": "0xfff0707f" - }, - "clzw": { - "encoding": "011000000000-----001-----0011011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_b", "rv64_zbb"], - "match": "0x6000101b", - "mask": "0xfff0707f" - }, - "cm_mva01s": { - "encoding": "----------------101011---11---10", - "variable_fields": [], - "extension": ["rv_zcmp"], - "match": "0xac62", - "mask": "0xfc63" - }, - "cm_mvsa01": { - "encoding": "----------------101011---01---10", - "variable_fields": [], - "extension": ["rv_zcmp"], - "match": "0xac22", - "mask": "0xfc63" - }, - "cm_pop": { - "encoding": "----------------10111010------10", - "variable_fields": [], - "extension": ["rv_zcmp"], - "match": "0xba02", - "mask": "0xff03" - }, - "cm_popret": { - "encoding": "----------------10111110------10", - "variable_fields": [], - "extension": ["rv_zcmp"], - "match": "0xbe02", - "mask": "0xff03" - }, - "cm_popretz": { - "encoding": "----------------10111100------10", - "variable_fields": [], - "extension": ["rv_zcmp"], - "match": "0xbc02", - "mask": "0xff03" - }, - "cm_push": { - "encoding": "----------------10111000------10", - "variable_fields": [], - "extension": ["rv_zcmp"], - "match": "0xb802", - "mask": "0xff03" - }, - "cpop": { - "encoding": "011000000010-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_b", "rv_zbb"], - "match": "0x60201013", - "mask": "0xfff0707f" - }, - "cpopw": { - "encoding": "011000000010-----001-----0011011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_b", "rv64_zbb"], - "match": "0x6020101b", - "mask": "0xfff0707f" - }, - "csrrc": { - "encoding": "-----------------011-----1110011", - "variable_fields": ["rd", "rs1", "csr"], - "extension": ["rv_zicsr"], - "match": "0x3073", - "mask": "0x707f" - }, - "csrrci": { - "encoding": "-----------------111-----1110011", - "variable_fields": ["rd", "csr"], - "extension": ["rv_zicsr"], - "match": "0x7073", - "mask": "0x707f" - }, - "csrrs": { - "encoding": "-----------------010-----1110011", - "variable_fields": ["rd", "rs1", "csr"], - "extension": ["rv_zicsr"], - "match": "0x2073", - "mask": "0x707f" - }, - "csrrsi": { - "encoding": "-----------------110-----1110011", - "variable_fields": ["rd", "csr"], - "extension": ["rv_zicsr"], - "match": "0x6073", - "mask": "0x707f" - }, - "csrrw": { - "encoding": "-----------------001-----1110011", - "variable_fields": ["rd", "rs1", "csr"], - "extension": ["rv_zicsr"], - "match": "0x1073", - "mask": "0x707f" - }, - "csrrwi": { - "encoding": "-----------------101-----1110011", - "variable_fields": ["rd", "zimm", "csr"], - "extension": ["rv_zicsr"], - "match": "0x5073", - "mask": "0x707f" - }, - "ctz": { - "encoding": "011000000001-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_b", "rv_zbb"], - "match": "0x60101013", - "mask": "0xfff0707f" - }, - "ctzw": { - "encoding": "011000000001-----001-----0011011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_b", "rv64_zbb"], - "match": "0x6010101b", - "mask": "0xfff0707f" - }, - "czero_eqz": { - "encoding": "0000111----------101-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zicond"], - "match": "0xe005033", - "mask": "0xfe00707f" - }, - "czero_nez": { - "encoding": "0000111----------111-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zicond"], - "match": "0xe007033", - "mask": "0xfe00707f" - }, - "div": { - "encoding": "0000001----------100-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_m"], - "match": "0x2004033", - "mask": "0xfe00707f" - }, - "divu": { - "encoding": "0000001----------101-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_m"], - "match": "0x2005033", - "mask": "0xfe00707f" - }, - "divuw": { - "encoding": "0000001----------101-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_m"], - "match": "0x200503b", - "mask": "0xfe00707f" - }, - "divw": { - "encoding": "0000001----------100-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_m"], - "match": "0x200403b", - "mask": "0xfe00707f" - }, - "dret": { - "encoding": "01111011001000000000000001110011", - "variable_fields": [], - "extension": ["rv_sdext"], - "match": "0x7b200073", - "mask": "0xffffffff" - }, - "ebreak": { - "encoding": "00000000000100000000000001110011", - "variable_fields": [], - "extension": ["rv_i"], - "match": "0x100073", - "mask": "0xffffffff" - }, - "ecall": { - "encoding": "00000000000000000000000001110011", - "variable_fields": [], - "extension": ["rv_i"], - "match": "0x73", - "mask": "0xffffffff" - }, - "fadd_d": { - "encoding": "0000001------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_d"], - "match": "0x2000053", - "mask": "0xfe00007f" - }, - "fadd_h": { - "encoding": "0000010------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_zfh"], - "match": "0x4000053", - "mask": "0xfe00007f" - }, - "fadd_q": { - "encoding": "0000011------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_q"], - "match": "0x6000053", - "mask": "0xfe00007f" - }, - "fadd_s": { - "encoding": "0000000------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_f"], - "match": "0x53", - "mask": "0xfe00007f" - }, - "fclass_d": { - "encoding": "111000100000-----001-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_d"], - "match": "0xe2001053", - "mask": "0xfff0707f" - }, - "fclass_h": { - "encoding": "111001000000-----001-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_zfh"], - "match": "0xe4001053", - "mask": "0xfff0707f" - }, - "fclass_q": { - "encoding": "111001100000-----001-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_q"], - "match": "0xe6001053", - "mask": "0xfff0707f" - }, - "fclass_s": { - "encoding": "111000000000-----001-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_f"], - "match": "0xe0001053", - "mask": "0xfff0707f" - }, - "fcvt_bf16_s": { - "encoding": "010001001000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_zfbfmin"], - "match": "0x44800053", - "mask": "0xfff0007f" - }, - "fcvt_d_h": { - "encoding": "010000100010-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_d", "rv_zfh"], - "match": "0x42200053", - "mask": "0xfff0007f" - }, - "fcvt_d_l": { - "encoding": "110100100010-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_d"], - "match": "0xd2200053", - "mask": "0xfff0007f" - }, - "fcvt_d_lu": { - "encoding": "110100100011-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_d"], - "match": "0xd2300053", - "mask": "0xfff0007f" - }, - "fcvt_d_q": { - "encoding": "010000100011-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_q"], - "match": "0x42300053", - "mask": "0xfff0007f" - }, - "fcvt_d_s": { - "encoding": "010000100000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_d"], - "match": "0x42000053", - "mask": "0xfff0007f" - }, - "fcvt_d_w": { - "encoding": "110100100000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_d"], - "match": "0xd2000053", - "mask": "0xfff0007f" - }, - "fcvt_d_wu": { - "encoding": "110100100001-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_d"], - "match": "0xd2100053", - "mask": "0xfff0007f" - }, - "fcvt_h_d": { - "encoding": "010001000001-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_d", "rv_zfh"], - "match": "0x44100053", - "mask": "0xfff0007f" - }, - "fcvt_h_l": { - "encoding": "110101000010-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_zfh"], - "match": "0xd4200053", - "mask": "0xfff0007f" - }, - "fcvt_h_lu": { - "encoding": "110101000011-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_zfh"], - "match": "0xd4300053", - "mask": "0xfff0007f" - }, - "fcvt_h_q": { - "encoding": "010001000011-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_q", "rv_zfh"], - "match": "0x44300053", - "mask": "0xfff0007f" - }, - "fcvt_h_s": { - "encoding": "010001000000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_zfh", "rv_zfhmin"], - "match": "0x44000053", - "mask": "0xfff0007f" - }, - "fcvt_h_w": { - "encoding": "110101000000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_zfh"], - "match": "0xd4000053", - "mask": "0xfff0007f" - }, - "fcvt_h_wu": { - "encoding": "110101000001-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_zfh"], - "match": "0xd4100053", - "mask": "0xfff0007f" - }, - "fcvt_l_d": { - "encoding": "110000100010-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_d"], - "match": "0xc2200053", - "mask": "0xfff0007f" - }, - "fcvt_l_h": { - "encoding": "110001000010-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_zfh"], - "match": "0xc4200053", - "mask": "0xfff0007f" - }, - "fcvt_l_q": { - "encoding": "110001100010-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_q"], - "match": "0xc6200053", - "mask": "0xfff0007f" - }, - "fcvt_l_s": { - "encoding": "110000000010-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_f"], - "match": "0xc0200053", - "mask": "0xfff0007f" - }, - "fcvt_lu_d": { - "encoding": "110000100011-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_d"], - "match": "0xc2300053", - "mask": "0xfff0007f" - }, - "fcvt_lu_h": { - "encoding": "110001000011-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_zfh"], - "match": "0xc4300053", - "mask": "0xfff0007f" - }, - "fcvt_lu_q": { - "encoding": "110001100011-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_q"], - "match": "0xc6300053", - "mask": "0xfff0007f" - }, - "fcvt_lu_s": { - "encoding": "110000000011-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_f"], - "match": "0xc0300053", - "mask": "0xfff0007f" - }, - "fcvt_q_d": { - "encoding": "010001100001-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_q"], - "match": "0x46100053", - "mask": "0xfff0007f" - }, - "fcvt_q_h": { - "encoding": "010001100010-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_q", "rv_zfh"], - "match": "0x46200053", - "mask": "0xfff0007f" - }, - "fcvt_q_l": { - "encoding": "110101100010-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_q"], - "match": "0xd6200053", - "mask": "0xfff0007f" - }, - "fcvt_q_lu": { - "encoding": "110101100011-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_q"], - "match": "0xd6300053", - "mask": "0xfff0007f" - }, - "fcvt_q_s": { - "encoding": "010001100000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_q"], - "match": "0x46000053", - "mask": "0xfff0007f" - }, - "fcvt_q_w": { - "encoding": "110101100000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_q"], - "match": "0xd6000053", - "mask": "0xfff0007f" - }, - "fcvt_q_wu": { - "encoding": "110101100001-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_q"], - "match": "0xd6100053", - "mask": "0xfff0007f" - }, - "fcvt_s_bf16": { - "encoding": "010000000110-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_zfbfmin"], - "match": "0x40600053", - "mask": "0xfff0007f" - }, - "fcvt_s_d": { - "encoding": "010000000001-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_d"], - "match": "0x40100053", - "mask": "0xfff0007f" - }, - "fcvt_s_h": { - "encoding": "010000000010-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_zfh", "rv_zfhmin"], - "match": "0x40200053", - "mask": "0xfff0007f" - }, - "fcvt_s_l": { - "encoding": "110100000010-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_f"], - "match": "0xd0200053", - "mask": "0xfff0007f" - }, - "fcvt_s_lu": { - "encoding": "110100000011-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_f"], - "match": "0xd0300053", - "mask": "0xfff0007f" - }, - "fcvt_s_q": { - "encoding": "010000000011-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_q"], - "match": "0x40300053", - "mask": "0xfff0007f" - }, - "fcvt_s_w": { - "encoding": "110100000000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_f"], - "match": "0xd0000053", - "mask": "0xfff0007f" - }, - "fcvt_s_wu": { - "encoding": "110100000001-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_f"], - "match": "0xd0100053", - "mask": "0xfff0007f" - }, - "fcvt_w_d": { - "encoding": "110000100000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_d"], - "match": "0xc2000053", - "mask": "0xfff0007f" - }, - "fcvt_w_h": { - "encoding": "110001000000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_zfh"], - "match": "0xc4000053", - "mask": "0xfff0007f" - }, - "fcvt_w_q": { - "encoding": "110001100000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_q"], - "match": "0xc6000053", - "mask": "0xfff0007f" - }, - "fcvt_w_s": { - "encoding": "110000000000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_f"], - "match": "0xc0000053", - "mask": "0xfff0007f" - }, - "fcvt_wu_d": { - "encoding": "110000100001-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_d"], - "match": "0xc2100053", - "mask": "0xfff0007f" - }, - "fcvt_wu_h": { - "encoding": "110001000001-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_zfh"], - "match": "0xc4100053", - "mask": "0xfff0007f" - }, - "fcvt_wu_q": { - "encoding": "110001100001-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_q"], - "match": "0xc6100053", - "mask": "0xfff0007f" - }, - "fcvt_wu_s": { - "encoding": "110000000001-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_f"], - "match": "0xc0100053", - "mask": "0xfff0007f" - }, - "fcvtmod_w_d": { - "encoding": "110000101000-----001-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_d", "rv_zfa"], - "match": "0xc2801053", - "mask": "0xfff0707f" - }, - "fdiv_d": { - "encoding": "0001101------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_d"], - "match": "0x1a000053", - "mask": "0xfe00007f" - }, - "fdiv_h": { - "encoding": "0001110------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_zfh"], - "match": "0x1c000053", - "mask": "0xfe00007f" - }, - "fdiv_q": { - "encoding": "0001111------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_q"], - "match": "0x1e000053", - "mask": "0xfe00007f" - }, - "fdiv_s": { - "encoding": "0001100------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_f"], - "match": "0x18000053", - "mask": "0xfe00007f" - }, - "fence": { - "encoding": "-----------------000-----0001111", - "variable_fields": ["rd", "rs1", "succ", "pred", "rm"], - "extension": ["rv_i"], - "match": "0xf", - "mask": "0x707f" - }, - "fence_i": { - "encoding": "-----------------001-----0001111", - "variable_fields": ["rd", "rs1", "imm12"], - "extension": ["rv_zifencei"], - "match": "0x100f", - "mask": "0x707f" - }, - "feq_d": { - "encoding": "1010001----------010-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_d"], - "match": "0xa2002053", - "mask": "0xfe00707f" - }, - "feq_h": { - "encoding": "1010010----------010-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfh"], - "match": "0xa4002053", - "mask": "0xfe00707f" - }, - "feq_q": { - "encoding": "1010011----------010-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_q"], - "match": "0xa6002053", - "mask": "0xfe00707f" - }, - "feq_s": { - "encoding": "1010000----------010-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_f"], - "match": "0xa0002053", - "mask": "0xfe00707f" - }, - "fld": { - "encoding": "-----------------011-----0000111", - "variable_fields": ["rd", "rs1", "imm12"], - "extension": ["rv_d"], - "match": "0x3007", - "mask": "0x707f" - }, - "fle_d": { - "encoding": "1010001----------000-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_d"], - "match": "0xa2000053", - "mask": "0xfe00707f" - }, - "fle_h": { - "encoding": "1010010----------000-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfh"], - "match": "0xa4000053", - "mask": "0xfe00707f" - }, - "fle_q": { - "encoding": "1010011----------000-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_q"], - "match": "0xa6000053", - "mask": "0xfe00707f" - }, - "fle_s": { - "encoding": "1010000----------000-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_f"], - "match": "0xa0000053", - "mask": "0xfe00707f" - }, - "fleq_d": { - "encoding": "1010001----------100-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_d", "rv_zfa"], - "match": "0xa2004053", - "mask": "0xfe00707f" - }, - "fleq_h": { - "encoding": "1010010----------100-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfa", "rv_zfh"], - "match": "0xa4004053", - "mask": "0xfe00707f" - }, - "fleq_q": { - "encoding": "1010011----------100-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_q", "rv_zfa"], - "match": "0xa6004053", - "mask": "0xfe00707f" - }, - "fleq_s": { - "encoding": "1010000----------100-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfa"], - "match": "0xa0004053", - "mask": "0xfe00707f" - }, - "flh": { - "encoding": "-----------------001-----0000111", - "variable_fields": ["rd", "rs1", "imm12"], - "extension": ["rv_zfh", "rv_zfhmin", "rv_zhinx"], - "match": "0x1007", - "mask": "0x707f" - }, - "fli_d": { - "encoding": "111100100001-----000-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_d", "rv_zfa"], - "match": "0xf2100053", - "mask": "0xfff0707f" - }, - "fli_h": { - "encoding": "111101000001-----000-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_zfa", "rv_zfh"], - "match": "0xf4100053", - "mask": "0xfff0707f" - }, - "fli_q": { - "encoding": "111101100001-----000-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_q", "rv_zfa"], - "match": "0xf6100053", - "mask": "0xfff0707f" - }, - "fli_s": { - "encoding": "111100000001-----000-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_zfa"], - "match": "0xf0100053", - "mask": "0xfff0707f" - }, - "flq": { - "encoding": "-----------------100-----0000111", - "variable_fields": ["rd", "rs1", "imm12"], - "extension": ["rv_q"], - "match": "0x4007", - "mask": "0x707f" - }, - "flt_d": { - "encoding": "1010001----------001-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_d"], - "match": "0xa2001053", - "mask": "0xfe00707f" - }, - "flt_h": { - "encoding": "1010010----------001-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfh"], - "match": "0xa4001053", - "mask": "0xfe00707f" - }, - "flt_q": { - "encoding": "1010011----------001-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_q"], - "match": "0xa6001053", - "mask": "0xfe00707f" - }, - "flt_s": { - "encoding": "1010000----------001-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_f"], - "match": "0xa0001053", - "mask": "0xfe00707f" - }, - "fltq_d": { - "encoding": "1010001----------101-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_d", "rv_zfa"], - "match": "0xa2005053", - "mask": "0xfe00707f" - }, - "fltq_h": { - "encoding": "1010010----------101-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfa", "rv_zfh"], - "match": "0xa4005053", - "mask": "0xfe00707f" - }, - "fltq_q": { - "encoding": "1010011----------101-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_q", "rv_zfa"], - "match": "0xa6005053", - "mask": "0xfe00707f" - }, - "fltq_s": { - "encoding": "1010000----------101-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfa"], - "match": "0xa0005053", - "mask": "0xfe00707f" - }, - "flw": { - "encoding": "-----------------010-----0000111", - "variable_fields": ["rd", "rs1", "imm12"], - "extension": ["rv_f"], - "match": "0x2007", - "mask": "0x707f" - }, - "fmadd_d": { - "encoding": "-----01------------------1000011", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_d"], - "match": "0x2000043", - "mask": "0x600007f" - }, - "fmadd_h": { - "encoding": "-----10------------------1000011", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_zfh"], - "match": "0x4000043", - "mask": "0x600007f" - }, - "fmadd_q": { - "encoding": "-----11------------------1000011", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_q"], - "match": "0x6000043", - "mask": "0x600007f" - }, - "fmadd_s": { - "encoding": "-----00------------------1000011", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_f"], - "match": "0x43", - "mask": "0x600007f" - }, - "fmax_d": { - "encoding": "0010101----------001-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_d"], - "match": "0x2a001053", - "mask": "0xfe00707f" - }, - "fmax_h": { - "encoding": "0010110----------001-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfh"], - "match": "0x2c001053", - "mask": "0xfe00707f" - }, - "fmax_q": { - "encoding": "0010111----------001-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_q"], - "match": "0x2e001053", - "mask": "0xfe00707f" - }, - "fmax_s": { - "encoding": "0010100----------001-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_f"], - "match": "0x28001053", - "mask": "0xfe00707f" - }, - "fmaxm_d": { - "encoding": "0010101----------011-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_d", "rv_zfa"], - "match": "0x2a003053", - "mask": "0xfe00707f" - }, - "fmaxm_h": { - "encoding": "0010110----------011-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfa", "rv_zfh"], - "match": "0x2c003053", - "mask": "0xfe00707f" - }, - "fmaxm_q": { - "encoding": "0010111----------011-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_q", "rv_zfa"], - "match": "0x2e003053", - "mask": "0xfe00707f" - }, - "fmaxm_s": { - "encoding": "0010100----------011-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfa"], - "match": "0x28003053", - "mask": "0xfe00707f" - }, - "fmin_d": { - "encoding": "0010101----------000-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_d"], - "match": "0x2a000053", - "mask": "0xfe00707f" - }, - "fmin_h": { - "encoding": "0010110----------000-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfh"], - "match": "0x2c000053", - "mask": "0xfe00707f" - }, - "fmin_q": { - "encoding": "0010111----------000-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_q"], - "match": "0x2e000053", - "mask": "0xfe00707f" - }, - "fmin_s": { - "encoding": "0010100----------000-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_f"], - "match": "0x28000053", - "mask": "0xfe00707f" - }, - "fminm_d": { - "encoding": "0010101----------010-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_d", "rv_zfa"], - "match": "0x2a002053", - "mask": "0xfe00707f" - }, - "fminm_h": { - "encoding": "0010110----------010-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfa", "rv_zfh"], - "match": "0x2c002053", - "mask": "0xfe00707f" - }, - "fminm_q": { - "encoding": "0010111----------010-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_q", "rv_zfa"], - "match": "0x2e002053", - "mask": "0xfe00707f" - }, - "fminm_s": { - "encoding": "0010100----------010-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfa"], - "match": "0x28002053", - "mask": "0xfe00707f" - }, - "fmsub_d": { - "encoding": "-----01------------------1000111", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_d"], - "match": "0x2000047", - "mask": "0x600007f" - }, - "fmsub_h": { - "encoding": "-----10------------------1000111", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_zfh"], - "match": "0x4000047", - "mask": "0x600007f" - }, - "fmsub_q": { - "encoding": "-----11------------------1000111", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_q"], - "match": "0x6000047", - "mask": "0x600007f" - }, - "fmsub_s": { - "encoding": "-----00------------------1000111", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_f"], - "match": "0x47", - "mask": "0x600007f" - }, - "fmul_d": { - "encoding": "0001001------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_d"], - "match": "0x12000053", - "mask": "0xfe00007f" - }, - "fmul_h": { - "encoding": "0001010------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_zfh"], - "match": "0x14000053", - "mask": "0xfe00007f" - }, - "fmul_q": { - "encoding": "0001011------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_q"], - "match": "0x16000053", - "mask": "0xfe00007f" - }, - "fmul_s": { - "encoding": "0001000------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_f"], - "match": "0x10000053", - "mask": "0xfe00007f" - }, - "fmv_d_x": { - "encoding": "111100100000-----000-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_d"], - "match": "0xf2000053", - "mask": "0xfff0707f" - }, - "fmv_h_x": { - "encoding": "111101000000-----000-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_f"], - "match": "0xf4000053", - "mask": "0xfff0707f" - }, - "fmv_w_x": { - "encoding": "111100000000-----000-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_f"], - "match": "0xf0000053", - "mask": "0xfff0707f" - }, - "fmv_x_d": { - "encoding": "111000100000-----000-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_d"], - "match": "0xe2000053", - "mask": "0xfff0707f" - }, - "fmv_x_h": { - "encoding": "111001000000-----000-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_zfh", "rv_zfhmin", "rv_zhinx"], - "match": "0xe4000053", - "mask": "0xfff0707f" - }, - "fmv_x_w": { - "encoding": "111000000000-----000-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_f"], - "match": "0xe0000053", - "mask": "0xfff0707f" - }, - "fmvh_x_d": { - "encoding": "111000100001-----000-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv32_d", "rv32_zfa"], - "match": "0xe2100053", - "mask": "0xfff0707f" - }, - "fmvh_x_q": { - "encoding": "111001100001-----000-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_q", "rv64_zfa"], - "match": "0xe6100053", - "mask": "0xfff0707f" - }, - "fmvp_d_x": { - "encoding": "1011001----------000-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv32_d", "rv32_zfa"], - "match": "0xb2000053", - "mask": "0xfe00707f" - }, - "fmvp_q_x": { - "encoding": "1011011----------000-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_q", "rv64_zfa"], - "match": "0xb6000053", - "mask": "0xfe00707f" - }, - "fnmadd_d": { - "encoding": "-----01------------------1001111", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_d"], - "match": "0x200004f", - "mask": "0x600007f" - }, - "fnmadd_h": { - "encoding": "-----10------------------1001111", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_zfh"], - "match": "0x400004f", - "mask": "0x600007f" - }, - "fnmadd_q": { - "encoding": "-----11------------------1001111", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_q"], - "match": "0x600004f", - "mask": "0x600007f" - }, - "fnmadd_s": { - "encoding": "-----00------------------1001111", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_f"], - "match": "0x4f", - "mask": "0x600007f" - }, - "fnmsub_d": { - "encoding": "-----01------------------1001011", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_d"], - "match": "0x200004b", - "mask": "0x600007f" - }, - "fnmsub_h": { - "encoding": "-----10------------------1001011", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_zfh"], - "match": "0x400004b", - "mask": "0x600007f" - }, - "fnmsub_q": { - "encoding": "-----11------------------1001011", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_q"], - "match": "0x600004b", - "mask": "0x600007f" - }, - "fnmsub_s": { - "encoding": "-----00------------------1001011", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_f"], - "match": "0x4b", - "mask": "0x600007f" - }, - "fround_d": { - "encoding": "010000100100-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_d", "rv_zfa"], - "match": "0x42400053", - "mask": "0xfff0007f" - }, - "fround_h": { - "encoding": "010001000100-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_zfa", "rv_zfh"], - "match": "0x44400053", - "mask": "0xfff0007f" - }, - "fround_q": { - "encoding": "010001100100-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_q", "rv_zfa"], - "match": "0x46400053", - "mask": "0xfff0007f" - }, - "fround_s": { - "encoding": "010000000100-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_zfa"], - "match": "0x40400053", - "mask": "0xfff0007f" - }, - "froundnx_d": { - "encoding": "010000100101-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_d", "rv_zfa"], - "match": "0x42500053", - "mask": "0xfff0007f" - }, - "froundnx_h": { - "encoding": "010001000101-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_zfa", "rv_zfh"], - "match": "0x44500053", - "mask": "0xfff0007f" - }, - "froundnx_q": { - "encoding": "010001100101-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_q", "rv_zfa"], - "match": "0x46500053", - "mask": "0xfff0007f" - }, - "froundnx_s": { - "encoding": "010000000101-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_zfa"], - "match": "0x40500053", - "mask": "0xfff0007f" - }, - "fsd": { - "encoding": "-----------------011-----0100111", - "variable_fields": ["rs1", "rs2", "imm12hi", "imm12lo"], - "extension": ["rv_d"], - "match": "0x3027", - "mask": "0x707f" - }, - "fsgnj_d": { - "encoding": "0010001----------000-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_d"], - "match": "0x22000053", - "mask": "0xfe00707f" - }, - "fsgnj_h": { - "encoding": "0010010----------000-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfh"], - "match": "0x24000053", - "mask": "0xfe00707f" - }, - "fsgnj_q": { - "encoding": "0010011----------000-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_q"], - "match": "0x26000053", - "mask": "0xfe00707f" - }, - "fsgnj_s": { - "encoding": "0010000----------000-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_f"], - "match": "0x20000053", - "mask": "0xfe00707f" - }, - "fsgnjn_d": { - "encoding": "0010001----------001-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_d"], - "match": "0x22001053", - "mask": "0xfe00707f" - }, - "fsgnjn_h": { - "encoding": "0010010----------001-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfh"], - "match": "0x24001053", - "mask": "0xfe00707f" - }, - "fsgnjn_q": { - "encoding": "0010011----------001-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_q"], - "match": "0x26001053", - "mask": "0xfe00707f" - }, - "fsgnjn_s": { - "encoding": "0010000----------001-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_f"], - "match": "0x20001053", - "mask": "0xfe00707f" - }, - "fsgnjx_d": { - "encoding": "0010001----------010-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_d"], - "match": "0x22002053", - "mask": "0xfe00707f" - }, - "fsgnjx_h": { - "encoding": "0010010----------010-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfh"], - "match": "0x24002053", - "mask": "0xfe00707f" - }, - "fsgnjx_q": { - "encoding": "0010011----------010-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_q"], - "match": "0x26002053", - "mask": "0xfe00707f" - }, - "fsgnjx_s": { - "encoding": "0010000----------010-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_f"], - "match": "0x20002053", - "mask": "0xfe00707f" - }, - "fsh": { - "encoding": "-----------------001-----0100111", - "variable_fields": ["rs2", "rs1", "imm12hi", "imm12lo"], - "extension": ["rv_zfh", "rv_zfhmin", "rv_zhinx"], - "match": "0x1027", - "mask": "0x707f" - }, - "fsq": { - "encoding": "-----------------100-----0100111", - "variable_fields": ["rs1", "rs2", "imm12hi", "imm12lo"], - "extension": ["rv_q"], - "match": "0x4027", - "mask": "0x707f" - }, - "fsqrt_d": { - "encoding": "010110100000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_d"], - "match": "0x5a000053", - "mask": "0xfff0007f" - }, - "fsqrt_h": { - "encoding": "010111000000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_zfh"], - "match": "0x5c000053", - "mask": "0xfff0007f" - }, - "fsqrt_q": { - "encoding": "010111100000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_q"], - "match": "0x5e000053", - "mask": "0xfff0007f" - }, - "fsqrt_s": { - "encoding": "010110000000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_f"], - "match": "0x58000053", - "mask": "0xfff0007f" - }, - "fsub_d": { - "encoding": "0000101------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_d"], - "match": "0xa000053", - "mask": "0xfe00007f" - }, - "fsub_h": { - "encoding": "0000110------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_zfh"], - "match": "0xc000053", - "mask": "0xfe00007f" - }, - "fsub_q": { - "encoding": "0000111------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_q"], - "match": "0xe000053", - "mask": "0xfe00007f" - }, - "fsub_s": { - "encoding": "0000100------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_f"], - "match": "0x8000053", - "mask": "0xfe00007f" - }, - "fsw": { - "encoding": "-----------------010-----0100111", - "variable_fields": ["rs1", "rs2", "imm12hi", "imm12lo"], - "extension": ["rv_f"], - "match": "0x2027", - "mask": "0x707f" - }, - "hfence_gvma": { - "encoding": "0110001----------000000001110011", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv_h"], - "match": "0x62000073", - "mask": "0xfe007fff" - }, - "hfence_vvma": { - "encoding": "0010001----------000000001110011", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv_h"], - "match": "0x22000073", - "mask": "0xfe007fff" - }, - "hinval_gvma": { - "encoding": "0110011----------000000001110011", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv_svinval", "rv_h"], - "match": "0x66000073", - "mask": "0xfe007fff" - }, - "hinval_vvma": { - "encoding": "0010011----------000000001110011", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv_svinval", "rv_h"], - "match": "0x26000073", - "mask": "0xfe007fff" - }, - "hlv_b": { - "encoding": "011000000000-----100-----1110011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_h"], - "match": "0x60004073", - "mask": "0xfff0707f" - }, - "hlv_bu": { - "encoding": "011000000001-----100-----1110011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_h"], - "match": "0x60104073", - "mask": "0xfff0707f" - }, - "hlv_d": { - "encoding": "011011000000-----100-----1110011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_h"], - "match": "0x6c004073", - "mask": "0xfff0707f" - }, - "hlv_h": { - "encoding": "011001000000-----100-----1110011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_h"], - "match": "0x64004073", - "mask": "0xfff0707f" - }, - "hlv_hu": { - "encoding": "011001000001-----100-----1110011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_h"], - "match": "0x64104073", - "mask": "0xfff0707f" - }, - "hlv_w": { - "encoding": "011010000000-----100-----1110011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_h"], - "match": "0x68004073", - "mask": "0xfff0707f" - }, - "hlv_wu": { - "encoding": "011010000001-----100-----1110011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_h"], - "match": "0x68104073", - "mask": "0xfff0707f" - }, - "hlvx_hu": { - "encoding": "011001000011-----100-----1110011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_h"], - "match": "0x64304073", - "mask": "0xfff0707f" - }, - "hlvx_wu": { - "encoding": "011010000011-----100-----1110011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_h"], - "match": "0x68304073", - "mask": "0xfff0707f" - }, - "hsv_b": { - "encoding": "0110001----------100000001110011", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv_h"], - "match": "0x62004073", - "mask": "0xfe007fff" - }, - "hsv_d": { - "encoding": "0110111----------100000001110011", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv64_h"], - "match": "0x6e004073", - "mask": "0xfe007fff" - }, - "hsv_h": { - "encoding": "0110011----------100000001110011", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv_h"], - "match": "0x66004073", - "mask": "0xfe007fff" - }, - "hsv_w": { - "encoding": "0110101----------100000001110011", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv_h"], - "match": "0x6a004073", - "mask": "0xfe007fff" - }, - "jal": { - "encoding": "-------------------------1101111", - "variable_fields": ["rd"], - "extension": ["rv_i"], - "match": "0x6f", - "mask": "0x7f" - }, - "jalr": { - "encoding": "-----------------000-----1100111", - "variable_fields": ["rd", "rs1", "imm12"], - "extension": ["rv_i"], - "match": "0x67", - "mask": "0x707f" - }, - "lb": { - "encoding": "-----------------000-----0000011", - "variable_fields": ["rd", "rs1", "imm12"], - "extension": ["rv_i"], - "match": "0x3", - "mask": "0x707f" - }, - "lb_aq": { - "encoding": "001101-00000-----000-----0101111", - "variable_fields": ["rd", "rs1", "rl"], - "extension": ["rv_zalasr"], - "match": "0x3400002f", - "mask": "0xfdf0707f" - }, - "lbu": { - "encoding": "-----------------100-----0000011", - "variable_fields": ["rd", "rs1", "imm12"], - "extension": ["rv_i"], - "match": "0x4003", - "mask": "0x707f" - }, - "ld": { - "encoding": "-----------------011-----0000011", - "variable_fields": ["rd", "rs1", "imm12"], - "extension": ["rv64_i"], - "match": "0x3003", - "mask": "0x707f" - }, - "ld_aq": { - "encoding": "001101-00000-----011-----0101111", - "variable_fields": ["rd", "rs1", "rl"], - "extension": ["rv_zalasr"], - "match": "0x3400302f", - "mask": "0xfdf0707f" - }, - "lh": { - "encoding": "-----------------001-----0000011", - "variable_fields": ["rd", "rs1", "imm12"], - "extension": ["rv_i"], - "match": "0x1003", - "mask": "0x707f" - }, - "lh_aq": { - "encoding": "001101-00000-----001-----0101111", - "variable_fields": ["rd", "rs1", "rl"], - "extension": ["rv_zalasr"], - "match": "0x3400102f", - "mask": "0xfdf0707f" - }, - "lhu": { - "encoding": "-----------------101-----0000011", - "variable_fields": ["rd", "rs1", "imm12"], - "extension": ["rv_i"], - "match": "0x5003", - "mask": "0x707f" - }, - "lpad": { - "encoding": "--------------------000000010111", - "variable_fields": ["imm20"], - "extension": ["rv_zicfilp"], - "match": "0x17", - "mask": "0xfff" - }, - "lr_d": { - "encoding": "00010--00000-----011-----0101111", - "variable_fields": ["rd", "rs1", "rl", "aq"], - "extension": ["rv64_a", "rv64_zalrsc"], - "match": "0x1000302f", - "mask": "0xf9f0707f" - }, - "lr_w": { - "encoding": "00010--00000-----010-----0101111", - "variable_fields": ["rd", "rs1", "rl", "aq"], - "extension": ["rv_a", "rv_zalrsc"], - "match": "0x1000202f", - "mask": "0xf9f0707f" - }, - "lui": { - "encoding": "-------------------------0110111", - "variable_fields": ["rd", "imm20"], - "extension": ["rv_i"], - "match": "0x37", - "mask": "0x7f" - }, - "lw": { - "encoding": "-----------------010-----0000011", - "variable_fields": ["rd", "rs1", "imm12"], - "extension": ["rv_i"], - "match": "0x2003", - "mask": "0x707f" - }, - "lw_aq": { - "encoding": "001101-00000-----010-----0101111", - "variable_fields": ["rd", "rs1", "rl"], - "extension": ["rv_zalasr"], - "match": "0x3400202f", - "mask": "0xfdf0707f" - }, - "lwu": { - "encoding": "-----------------110-----0000011", - "variable_fields": ["rd", "rs1", "imm12"], - "extension": ["rv64_i"], - "match": "0x6003", - "mask": "0x707f" - }, - "max": { - "encoding": "0000101----------110-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbb"], - "match": "0xa006033", - "mask": "0xfe00707f" - }, - "maxu": { - "encoding": "0000101----------111-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbb"], - "match": "0xa007033", - "mask": "0xfe00707f" - }, - "min": { - "encoding": "0000101----------100-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbb"], - "match": "0xa004033", - "mask": "0xfe00707f" - }, - "minu": { - "encoding": "0000101----------101-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbb"], - "match": "0xa005033", - "mask": "0xfe00707f" - }, - "mnret": { - "encoding": "01110000001000000000000001110011", - "variable_fields": [], - "extension": ["rv_smrnmi"], - "match": "0x70200073", - "mask": "0xffffffff" - }, - "mop_r_n": { - "encoding": "1-00--0111-------100-----1110011", - "variable_fields": [ - "rd", - "rs1", - "mop_r_t_21_20", - "mop_r_t_27_26", - "mop_r_t_30" - ], - "extension": ["rv_zimop"], - "match": "0x81c04073", - "mask": "0xb3c0707f" - }, - "mop_rr_n": { - "encoding": "1-00--1----------100-----1110011", - "variable_fields": ["rd", "rs1", "rs2", "mop_rr_t_27_26", "mop_rr_t_30"], - "extension": ["rv_zimop"], - "match": "0x82004073", - "mask": "0xb200707f" - }, - "mret": { - "encoding": "00110000001000000000000001110011", - "variable_fields": [], - "extension": ["rv_sm"], - "match": "0x30200073", - "mask": "0xffffffff" - }, - "mul": { - "encoding": "0000001----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_m", "rv_zmmul"], - "match": "0x2000033", - "mask": "0xfe00707f" - }, - "mulh": { - "encoding": "0000001----------001-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_m", "rv_zmmul"], - "match": "0x2001033", - "mask": "0xfe00707f" - }, - "mulhsu": { - "encoding": "0000001----------010-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_m", "rv_zmmul"], - "match": "0x2002033", - "mask": "0xfe00707f" - }, - "mulhu": { - "encoding": "0000001----------011-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_m", "rv_zmmul"], - "match": "0x2003033", - "mask": "0xfe00707f" - }, - "mulw": { - "encoding": "0000001----------000-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_m", "rv64_zmmul"], - "match": "0x200003b", - "mask": "0xfe00707f" - }, - "or": { - "encoding": "0000000----------110-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_i"], - "match": "0x6033", - "mask": "0xfe00707f" - }, - "orc_b": { - "encoding": "001010000111-----101-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_b", "rv_zbb"], - "match": "0x28705013", - "mask": "0xfff0707f" - }, - "ori": { - "encoding": "-----------------110-----0010011", - "variable_fields": ["rd", "rs1", "imm12"], - "extension": ["rv_i"], - "match": "0x6013", - "mask": "0x707f" - }, - "orn": { - "encoding": "0100000----------110-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbb", "rv_zbkb", "rv_zk", "rv_zkn", "rv_zks"], - "match": "0x40006033", - "mask": "0xfe00707f" - }, - "pack": { - "encoding": "0000100----------100-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zbkb", "rv_zk", "rv_zkn", "rv_zks"], - "match": "0x8004033", - "mask": "0xfe00707f" - }, - "packh": { - "encoding": "0000100----------111-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zbkb", "rv_zk", "rv_zkn", "rv_zks"], - "match": "0x8007033", - "mask": "0xfe00707f" - }, - "packw": { - "encoding": "0000100----------100-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_zbkb", "rv64_zk", "rv64_zkn", "rv64_zks"], - "match": "0x800403b", - "mask": "0xfe00707f" - }, - "rem": { - "encoding": "0000001----------110-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_m"], - "match": "0x2006033", - "mask": "0xfe00707f" - }, - "remu": { - "encoding": "0000001----------111-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_m"], - "match": "0x2007033", - "mask": "0xfe00707f" - }, - "remuw": { - "encoding": "0000001----------111-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_m"], - "match": "0x200703b", - "mask": "0xfe00707f" - }, - "remw": { - "encoding": "0000001----------110-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_m"], - "match": "0x200603b", - "mask": "0xfe00707f" - }, - "rev8": { - "encoding": "011010111000-----101-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_b", "rv64_zbb", "rv64_zbkb"], - "match": "0x6b805013", - "mask": "0xfff0707f" - }, - "rol": { - "encoding": "0110000----------001-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbb", "rv_zbkb", "rv_zk", "rv_zkn", "rv_zks"], - "match": "0x60001033", - "mask": "0xfe00707f" - }, - "rolw": { - "encoding": "0110000----------001-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": [ - "rv64_b", - "rv64_zbb", - "rv64_zbkb", - "rv64_zk", - "rv64_zkn", - "rv64_zks" - ], - "match": "0x6000103b", - "mask": "0xfe00707f" - }, - "ror": { - "encoding": "0110000----------101-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbb", "rv_zbkb", "rv_zk", "rv_zkn", "rv_zks"], - "match": "0x60005033", - "mask": "0xfe00707f" - }, - "rori": { - "encoding": "011000-----------101-----0010011", - "variable_fields": ["rd", "rs1", "shamtd"], - "extension": [ - "rv64_b", - "rv64_zbb", - "rv64_zbkb", - "rv64_zk", - "rv64_zkn", - "rv64_zks" - ], - "match": "0x60005013", - "mask": "0xfc00707f" - }, - "roriw": { - "encoding": "0110000----------101-----0011011", - "variable_fields": ["rd", "rs1", "shamtw"], - "extension": [ - "rv64_b", - "rv64_zbb", - "rv64_zbkb", - "rv64_zk", - "rv64_zkn", - "rv64_zks" - ], - "match": "0x6000501b", - "mask": "0xfe00707f" - }, - "rorw": { - "encoding": "0110000----------101-----0111011", - "variable_fields": ["rd", "rs1"], - "extension": [ - "rv64_b", - "rv64_zbb", - "rv64_zbkb", - "rv64_zk", - "rv64_zkn", - "rv64_zks" - ], - "match": "0x6000503b", - "mask": "0xfe00707f" - }, - "sb": { - "encoding": "-----------------000-----0100011", - "variable_fields": ["rs1", "rs2", "imm12hi", "imm12lo"], - "extension": ["rv_i"], - "match": "0x23", - "mask": "0x707f" - }, - "sb_rl": { - "encoding": "00111-1----------000000000101111", - "variable_fields": ["rs1", "rs2", "aq"], - "extension": ["rv_zalasr"], - "match": "0x3a00002f", - "mask": "0xfa007fff" - }, - "sc_d": { - "encoding": "00011------------011-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv64_a", "rv64_zalrsc"], - "match": "0x1800302f", - "mask": "0xf800707f" - }, - "sc_w": { - "encoding": "00011------------010-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_a", "rv_zalrsc"], - "match": "0x1800202f", - "mask": "0xf800707f" - }, - "sctrclr": { - "encoding": "00010000010000000000000001110011", - "variable_fields": [], - "extension": ["rv_smdbltrp"], - "match": "0x10400073", - "mask": "0xffffffff" - }, - "sd": { - "encoding": "-----------------011-----0100011", - "variable_fields": ["rs2", "rs1", "imm12hi", "imm12lo"], - "extension": ["rv64_i"], - "match": "0x3023", - "mask": "0x707f" - }, - "sd_rl": { - "encoding": "00111-1----------011000000101111", - "variable_fields": ["rs1", "rs2", "aq"], - "extension": ["rv_zalasr"], - "match": "0x3a00302f", - "mask": "0xfa007fff" - }, - "sext_b": { - "encoding": "011000000100-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_b", "rv_zbb"], - "match": "0x60401013", - "mask": "0xfff0707f" - }, - "sext_h": { - "encoding": "011000000101-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_b", "rv_zbb"], - "match": "0x60501013", - "mask": "0xfff0707f" - }, - "sfence_inval_ir": { - "encoding": "00011000000100000000000001110011", - "variable_fields": [], - "extension": ["rv_svinval"], - "match": "0x18100073", - "mask": "0xffffffff" - }, - "sfence_vma": { - "encoding": "0001001----------000000001110011", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv_s"], - "match": "0x12000073", - "mask": "0xfe007fff" - }, - "sfence_w_inval": { - "encoding": "00011000000000000000000001110011", - "variable_fields": [], - "extension": ["rv_svinval"], - "match": "0x18000073", - "mask": "0xffffffff" - }, - "sh": { - "encoding": "-----------------001-----0100011", - "variable_fields": ["rs1", "rs2", "imm12hi", "imm12lo"], - "extension": ["rv_i"], - "match": "0x1023", - "mask": "0x707f" - }, - "sh1add": { - "encoding": "0010000----------010-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zba"], - "match": "0x20002033", - "mask": "0xfe00707f" - }, - "sh1add_uw": { - "encoding": "0010000----------010-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_b", "rv64_zba"], - "match": "0x2000203b", - "mask": "0xfe00707f" - }, - "sh2add": { - "encoding": "0010000----------100-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zba"], - "match": "0x20004033", - "mask": "0xfe00707f" - }, - "sh2add_uw": { - "encoding": "0010000----------100-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_b", "rv64_zba"], - "match": "0x2000403b", - "mask": "0xfe00707f" - }, - "sh3add": { - "encoding": "0010000----------110-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zba"], - "match": "0x20006033", - "mask": "0xfe00707f" - }, - "sh3add_uw": { - "encoding": "0010000----------110-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_b", "rv64_zba"], - "match": "0x2000603b", - "mask": "0xfe00707f" - }, - "sh_rl": { - "encoding": "00111-1----------001000000101111", - "variable_fields": ["rs1", "rs2", "aq"], - "extension": ["rv_zalasr"], - "match": "0x3a00102f", - "mask": "0xfa007fff" - }, - "sha256sig0": { - "encoding": "000100000010-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_zk", "rv_zkn", "rv_zknh"], - "match": "0x10201013", - "mask": "0xfff0707f" - }, - "sha256sig1": { - "encoding": "000100000011-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_zk", "rv_zkn", "rv_zknh"], - "match": "0x10301013", - "mask": "0xfff0707f" - }, - "sha256sum0": { - "encoding": "000100000000-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_zk", "rv_zkn", "rv_zknh"], - "match": "0x10001013", - "mask": "0xfff0707f" - }, - "sha256sum1": { - "encoding": "000100000001-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_zk", "rv_zkn", "rv_zknh"], - "match": "0x10101013", - "mask": "0xfff0707f" - }, - "sha512sig0": { - "encoding": "000100000110-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_zk", "rv64_zkn", "rv64_zknh"], - "match": "0x10601013", - "mask": "0xfff0707f" - }, - "sha512sig0h": { - "encoding": "0101110----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv32_zk", "rv32_zkn", "rv32_zknh"], - "match": "0x5c000033", - "mask": "0xfe00707f" - }, - "sha512sig0l": { - "encoding": "0101010----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv32_zk", "rv32_zkn", "rv32_zknh"], - "match": "0x54000033", - "mask": "0xfe00707f" - }, - "sha512sig1": { - "encoding": "000100000111-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_zk", "rv64_zkn", "rv64_zknh"], - "match": "0x10701013", - "mask": "0xfff0707f" - }, - "sha512sig1h": { - "encoding": "0101111----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv32_zk", "rv32_zkn", "rv32_zknh"], - "match": "0x5e000033", - "mask": "0xfe00707f" - }, - "sha512sig1l": { - "encoding": "0101011----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv32_zk", "rv32_zkn", "rv32_zknh"], - "match": "0x56000033", - "mask": "0xfe00707f" - }, - "sha512sum0": { - "encoding": "000100000100-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_zk", "rv64_zkn", "rv64_zknh"], - "match": "0x10401013", - "mask": "0xfff0707f" - }, - "sha512sum0r": { - "encoding": "0101000----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv32_zk", "rv32_zkn", "rv32_zknh"], - "match": "0x50000033", - "mask": "0xfe00707f" - }, - "sha512sum1": { - "encoding": "000100000101-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_zk", "rv64_zkn", "rv64_zknh"], - "match": "0x10501013", - "mask": "0xfff0707f" - }, - "sha512sum1r": { - "encoding": "0101001----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv32_zk", "rv32_zkn", "rv32_zknh"], - "match": "0x52000033", - "mask": "0xfe00707f" - }, - "sinval_vma": { - "encoding": "0001011----------000000001110011", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv_svinval"], - "match": "0x16000073", - "mask": "0xfe007fff" - }, - "sll": { - "encoding": "0000000----------001-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_i"], - "match": "0x1033", - "mask": "0xfe00707f" - }, - "slli": { - "encoding": "000000-----------001-----0010011", - "variable_fields": ["rd", "rs1", "shamtd"], - "extension": ["rv64_i"], - "match": "0x1013", - "mask": "0xfc00707f" - }, - "slli_uw": { - "encoding": "000010-----------001-----0011011", - "variable_fields": ["rd", "rs1", "shamtd"], - "extension": ["rv64_b", "rv64_zba"], - "match": "0x800101b", - "mask": "0xfc00707f" - }, - "slliw": { - "encoding": "0000000----------001-----0011011", - "variable_fields": ["rd", "rs1", "shamtw"], - "extension": ["rv64_i"], - "match": "0x101b", - "mask": "0xfe00707f" - }, - "sllw": { - "encoding": "0000000----------001-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_i"], - "match": "0x103b", - "mask": "0xfe00707f" - }, - "slt": { - "encoding": "0000000----------010-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_i"], - "match": "0x2033", - "mask": "0xfe00707f" - }, - "slti": { - "encoding": "-----------------010-----0010011", - "variable_fields": ["rd", "rs1", "imm12"], - "extension": ["rv_i"], - "match": "0x2013", - "mask": "0x707f" - }, - "sltiu": { - "encoding": "-----------------011-----0010011", - "variable_fields": ["rd", "rs1", "imm12"], - "extension": ["rv_i"], - "match": "0x3013", - "mask": "0x707f" - }, - "sltu": { - "encoding": "0000000----------011-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_i"], - "match": "0x3033", - "mask": "0xfe00707f" - }, - "sm3p0": { - "encoding": "000100001000-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_zks", "rv_zksh"], - "match": "0x10801013", - "mask": "0xfff0707f" - }, - "sm3p1": { - "encoding": "000100001001-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_zks", "rv_zksh"], - "match": "0x10901013", - "mask": "0xfff0707f" - }, - "sm4ed": { - "encoding": "--11000----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2", "bs"], - "extension": ["rv_zks", "rv_zksed"], - "match": "0x30000033", - "mask": "0x3e00707f" - }, - "sm4ks": { - "encoding": "--11010----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2", "bs"], - "extension": ["rv_zks", "rv_zksed"], - "match": "0x34000033", - "mask": "0x3e00707f" - }, - "sra": { - "encoding": "0100000----------101-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_i"], - "match": "0x40005033", - "mask": "0xfe00707f" - }, - "srai": { - "encoding": "010000-----------101-----0010011", - "variable_fields": ["rd", "rs1", "shamtd"], - "extension": ["rv64_i"], - "match": "0x40005013", - "mask": "0xfc00707f" - }, - "sraiw": { - "encoding": "0100000----------101-----0011011", - "variable_fields": ["rd", "rs1", "shamtw"], - "extension": ["rv64_i"], - "match": "0x4000501b", - "mask": "0xfe00707f" - }, - "sraw": { - "encoding": "0100000----------101-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_i"], - "match": "0x4000503b", - "mask": "0xfe00707f" - }, - "sret": { - "encoding": "00010000001000000000000001110011", - "variable_fields": [], - "extension": ["rv_s"], - "match": "0x10200073", - "mask": "0xffffffff" - }, - "srl": { - "encoding": "0000000----------101-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_i"], - "match": "0x5033", - "mask": "0xfe00707f" - }, - "srli": { - "encoding": "000000-----------101-----0010011", - "variable_fields": ["rd", "rs1", "shamtd"], - "extension": ["rv64_i"], - "match": "0x5013", - "mask": "0xfc00707f" - }, - "srliw": { - "encoding": "0000000----------101-----0011011", - "variable_fields": ["rd", "rs1", "shamtw"], - "extension": ["rv64_i"], - "match": "0x501b", - "mask": "0xfe00707f" - }, - "srlw": { - "encoding": "0000000----------101-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_i"], - "match": "0x503b", - "mask": "0xfe00707f" - }, - "ssamoswap_d": { - "encoding": "01001------------011-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zicfiss"], - "match": "0x4800302f", - "mask": "0xf800707f" - }, - "ssamoswap_w": { - "encoding": "01001------------010-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zicfiss"], - "match": "0x4800202f", - "mask": "0xf800707f" - }, - "sspopchk_x1": { - "encoding": "11001101110000001100000001110011", - "variable_fields": [], - "extension": ["rv_zicfiss"], - "match": "0xcdc0c073", - "mask": "0xffffffff" - }, - "sspopchk_x5": { - "encoding": "11001101110000101100000001110011", - "variable_fields": [], - "extension": ["rv_zicfiss"], - "match": "0xcdc2c073", - "mask": "0xffffffff" - }, - "sspush_x1": { - "encoding": "11001110000100000100000001110011", - "variable_fields": [], - "extension": ["rv_zicfiss"], - "match": "0xce104073", - "mask": "0xffffffff" - }, - "sspush_x5": { - "encoding": "11001110010100000100000001110011", - "variable_fields": [], - "extension": ["rv_zicfiss"], - "match": "0xce504073", - "mask": "0xffffffff" - }, - "ssrdp": { - "encoding": "11001101110000000100-----1110011", - "variable_fields": ["rd"], - "extension": ["rv_zicfiss"], - "match": "0xcdc04073", - "mask": "0xfffff07f" - }, - "sub": { - "encoding": "0100000----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_i"], - "match": "0x40000033", - "mask": "0xfe00707f" - }, - "subw": { - "encoding": "0100000----------000-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_i"], - "match": "0x4000003b", - "mask": "0xfe00707f" - }, - "sw": { - "encoding": "-----------------010-----0100011", - "variable_fields": ["rs1", "rs2", "imm12hi", "imm12lo"], - "extension": ["rv_i"], - "match": "0x2023", - "mask": "0x707f" - }, - "sw_rl": { - "encoding": "00111-1----------010000000101111", - "variable_fields": ["rs1", "rs2", "aq"], - "extension": ["rv_zalasr"], - "match": "0x3a00202f", - "mask": "0xfa007fff" - }, - "unzip": { - "encoding": "000010001111-----101-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv32_zbkb"], - "match": "0x8f05013", - "mask": "0xfff0707f" - }, - "vaadd_vv": { - "encoding": "001001-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x24002057", - "mask": "0xfc00707f" - }, - "vaadd_vx": { - "encoding": "001001-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x24006057", - "mask": "0xfc00707f" - }, - "vaaddu_vv": { - "encoding": "001000-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x20002057", - "mask": "0xfc00707f" - }, - "vaaddu_vx": { - "encoding": "001000-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x20006057", - "mask": "0xfc00707f" - }, - "vadc_vim": { - "encoding": "0100000----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2"], - "extension": ["rv_v"], - "match": "0x40003057", - "mask": "0xfe00707f" - }, - "vadc_vvm": { - "encoding": "0100000----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x40000057", - "mask": "0xfe00707f" - }, - "vadc_vxm": { - "encoding": "0100000----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2"], - "extension": ["rv_v"], - "match": "0x40004057", - "mask": "0xfe00707f" - }, - "vadd_vi": { - "encoding": "000000-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x3057", - "mask": "0xfc00707f" - }, - "vadd_vv": { - "encoding": "000000-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x57", - "mask": "0xfc00707f" - }, - "vadd_vx": { - "encoding": "000000-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4057", - "mask": "0xfc00707f" - }, - "vaesdf_vs": { - "encoding": "1010011-----00001010-----1110111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_zvkn", "rv_zvkned"], - "match": "0xa600a077", - "mask": "0xfe0ff07f" - }, - "vaesdf_vv": { - "encoding": "1010001-----00001010-----1110111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_zvkn", "rv_zvkned"], - "match": "0xa200a077", - "mask": "0xfe0ff07f" - }, - "vaesdm_vs": { - "encoding": "1010011-----00000010-----1110111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_zvkn", "rv_zvkned"], - "match": "0xa6002077", - "mask": "0xfe0ff07f" - }, - "vaesdm_vv": { - "encoding": "1010001-----00000010-----1110111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_zvkn", "rv_zvkned"], - "match": "0xa2002077", - "mask": "0xfe0ff07f" - }, - "vaesef_vs": { - "encoding": "1010011-----00011010-----1110111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_zvkn", "rv_zvkned"], - "match": "0xa601a077", - "mask": "0xfe0ff07f" - }, - "vaesef_vv": { - "encoding": "1010001-----00011010-----1110111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_zvkn", "rv_zvkned"], - "match": "0xa201a077", - "mask": "0xfe0ff07f" - }, - "vaesem_vs": { - "encoding": "1010011-----00010010-----1110111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_zvkn", "rv_zvkned"], - "match": "0xa6012077", - "mask": "0xfe0ff07f" - }, - "vaesem_vv": { - "encoding": "1010001-----00010010-----1110111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_zvkn", "rv_zvkned"], - "match": "0xa2012077", - "mask": "0xfe0ff07f" - }, - "vaeskf1_vi": { - "encoding": "1000101----------010-----1110111", - "variable_fields": ["vd", "zimm5", "vs2"], - "extension": ["rv_zvkn", "rv_zvkned"], - "match": "0x8a002077", - "mask": "0xfe00707f" - }, - "vaeskf2_vi": { - "encoding": "1010101----------010-----1110111", - "variable_fields": ["vd", "zimm5", "vs2"], - "extension": ["rv_zvkn", "rv_zvkned"], - "match": "0xaa002077", - "mask": "0xfe00707f" - }, - "vaesz_vs": { - "encoding": "1010011-----00111010-----1110111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_zvkn", "rv_zvkned"], - "match": "0xa603a077", - "mask": "0xfe0ff07f" - }, - "vand_vi": { - "encoding": "001001-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x24003057", - "mask": "0xfc00707f" - }, - "vand_vv": { - "encoding": "001001-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x24000057", - "mask": "0xfc00707f" - }, - "vand_vx": { - "encoding": "001001-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x24004057", - "mask": "0xfc00707f" - }, - "vandn_vv": { - "encoding": "000001-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0x4000057", - "mask": "0xfc00707f" - }, - "vandn_vx": { - "encoding": "000001-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0x4004057", - "mask": "0xfc00707f" - }, - "vasub_vv": { - "encoding": "001011-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x2c002057", - "mask": "0xfc00707f" - }, - "vasub_vx": { - "encoding": "001011-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x2c006057", - "mask": "0xfc00707f" - }, - "vasubu_vv": { - "encoding": "001010-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x28002057", - "mask": "0xfc00707f" - }, - "vasubu_vx": { - "encoding": "001010-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x28006057", - "mask": "0xfc00707f" - }, - "vbrev8_v": { - "encoding": "010010------01000010-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0x48042057", - "mask": "0xfc0ff07f" - }, - "vbrev_v": { - "encoding": "010010------01010010-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0x48052057", - "mask": "0xfc0ff07f" - }, - "vclmul_vv": { - "encoding": "001100-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_zvbc", "rv_zvkn", "rv_zvks"], - "match": "0x30002057", - "mask": "0xfc00707f" - }, - "vclmul_vx": { - "encoding": "001100-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_zvbc", "rv_zvkn", "rv_zvks"], - "match": "0x30006057", - "mask": "0xfc00707f" - }, - "vclmulh_vv": { - "encoding": "001101-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_zvbc", "rv_zvkn", "rv_zvks"], - "match": "0x34002057", - "mask": "0xfc00707f" - }, - "vclmulh_vx": { - "encoding": "001101-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_zvbc", "rv_zvkn", "rv_zvks"], - "match": "0x34006057", - "mask": "0xfc00707f" - }, - "vclz_v": { - "encoding": "010010------01100010-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0x48062057", - "mask": "0xfc0ff07f" - }, - "vcompress_vm": { - "encoding": "0101111----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x5e002057", - "mask": "0xfe00707f" - }, - "vcpop_m": { - "encoding": "010000------10000010-----1010111", - "variable_fields": ["rd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x40082057", - "mask": "0xfc0ff07f" - }, - "vcpop_v": { - "encoding": "010010------01110010-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0x48072057", - "mask": "0xfc0ff07f" - }, - "vctz_v": { - "encoding": "010010------01101010-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0x4806a057", - "mask": "0xfc0ff07f" - }, - "vdiv_vv": { - "encoding": "100001-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x84002057", - "mask": "0xfc00707f" - }, - "vdiv_vx": { - "encoding": "100001-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x84006057", - "mask": "0xfc00707f" - }, - "vdivu_vv": { - "encoding": "100000-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x80002057", - "mask": "0xfc00707f" - }, - "vdivu_vx": { - "encoding": "100000-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x80006057", - "mask": "0xfc00707f" - }, - "vfadd_vf": { - "encoding": "000000-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x5057", - "mask": "0xfc00707f" - }, - "vfadd_vv": { - "encoding": "000000-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x1057", - "mask": "0xfc00707f" - }, - "vfclass_v": { - "encoding": "010011------10000001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4c081057", - "mask": "0xfc0ff07f" - }, - "vfcvt_f_x_v": { - "encoding": "010010------00011001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x48019057", - "mask": "0xfc0ff07f" - }, - "vfcvt_f_xu_v": { - "encoding": "010010------00010001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x48011057", - "mask": "0xfc0ff07f" - }, - "vfcvt_rtz_x_f_v": { - "encoding": "010010------00111001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x48039057", - "mask": "0xfc0ff07f" - }, - "vfcvt_rtz_xu_f_v": { - "encoding": "010010------00110001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x48031057", - "mask": "0xfc0ff07f" - }, - "vfcvt_x_f_v": { - "encoding": "010010------00001001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x48009057", - "mask": "0xfc0ff07f" - }, - "vfcvt_xu_f_v": { - "encoding": "010010------00000001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x48001057", - "mask": "0xfc0ff07f" - }, - "vfdiv_vf": { - "encoding": "100000-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x80005057", - "mask": "0xfc00707f" - }, - "vfdiv_vv": { - "encoding": "100000-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x80001057", - "mask": "0xfc00707f" - }, - "vfirst_m": { - "encoding": "010000------10001010-----1010111", - "variable_fields": ["rd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4008a057", - "mask": "0xfc0ff07f" - }, - "vfmacc_vf": { - "encoding": "101100-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xb0005057", - "mask": "0xfc00707f" - }, - "vfmacc_vv": { - "encoding": "101100-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xb0001057", - "mask": "0xfc00707f" - }, - "vfmadd_vf": { - "encoding": "101000-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa0005057", - "mask": "0xfc00707f" - }, - "vfmadd_vv": { - "encoding": "101000-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa0001057", - "mask": "0xfc00707f" - }, - "vfmax_vf": { - "encoding": "000110-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x18005057", - "mask": "0xfc00707f" - }, - "vfmax_vv": { - "encoding": "000110-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x18001057", - "mask": "0xfc00707f" - }, - "vfmerge_vfm": { - "encoding": "0101110----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2"], - "extension": ["rv_v"], - "match": "0x5c005057", - "mask": "0xfe00707f" - }, - "vfmin_vf": { - "encoding": "000100-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x10005057", - "mask": "0xfc00707f" - }, - "vfmin_vv": { - "encoding": "000100-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x10001057", - "mask": "0xfc00707f" - }, - "vfmsac_vf": { - "encoding": "101110-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xb8005057", - "mask": "0xfc00707f" - }, - "vfmsac_vv": { - "encoding": "101110-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xb8001057", - "mask": "0xfc00707f" - }, - "vfmsub_vf": { - "encoding": "101010-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa8005057", - "mask": "0xfc00707f" - }, - "vfmsub_vv": { - "encoding": "101010-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa8001057", - "mask": "0xfc00707f" - }, - "vfmul_vf": { - "encoding": "100100-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x90005057", - "mask": "0xfc00707f" - }, - "vfmul_vv": { - "encoding": "100100-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x90001057", - "mask": "0xfc00707f" - }, - "vfmv_f_s": { - "encoding": "0100001-----00000001-----1010111", - "variable_fields": ["rd", "vs2"], - "extension": ["rv_v"], - "match": "0x42001057", - "mask": "0xfe0ff07f" - }, - "vfmv_s_f": { - "encoding": "010000100000-----101-----1010111", - "variable_fields": ["vd", "rs1"], - "extension": ["rv_v"], - "match": "0x42005057", - "mask": "0xfff0707f" - }, - "vfmv_v_f": { - "encoding": "010111100000-----101-----1010111", - "variable_fields": ["vd", "rs1"], - "extension": ["rv_v"], - "match": "0x5e005057", - "mask": "0xfff0707f" - }, - "vfncvt_f_f_w": { - "encoding": "010010------10100001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x480a1057", - "mask": "0xfc0ff07f" - }, - "vfncvt_f_x_w": { - "encoding": "010010------10011001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x48099057", - "mask": "0xfc0ff07f" - }, - "vfncvt_f_xu_w": { - "encoding": "010010------10010001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x48091057", - "mask": "0xfc0ff07f" - }, - "vfncvt_rod_f_f_w": { - "encoding": "010010------10101001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x480a9057", - "mask": "0xfc0ff07f" - }, - "vfncvt_rtz_x_f_w": { - "encoding": "010010------10111001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x480b9057", - "mask": "0xfc0ff07f" - }, - "vfncvt_rtz_xu_f_w": { - "encoding": "010010------10110001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x480b1057", - "mask": "0xfc0ff07f" - }, - "vfncvt_x_f_w": { - "encoding": "010010------10001001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x48089057", - "mask": "0xfc0ff07f" - }, - "vfncvt_xu_f_w": { - "encoding": "010010------10000001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x48081057", - "mask": "0xfc0ff07f" - }, - "vfncvtbf16_f_f_w": { - "encoding": "010010------11101001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_zvfbfmin"], - "match": "0x480e9057", - "mask": "0xfc0ff07f" - }, - "vfnmacc_vf": { - "encoding": "101101-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xb4005057", - "mask": "0xfc00707f" - }, - "vfnmacc_vv": { - "encoding": "101101-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xb4001057", - "mask": "0xfc00707f" - }, - "vfnmadd_vf": { - "encoding": "101001-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa4005057", - "mask": "0xfc00707f" - }, - "vfnmadd_vv": { - "encoding": "101001-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa4001057", - "mask": "0xfc00707f" - }, - "vfnmsac_vf": { - "encoding": "101111-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xbc005057", - "mask": "0xfc00707f" - }, - "vfnmsac_vv": { - "encoding": "101111-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xbc001057", - "mask": "0xfc00707f" - }, - "vfnmsub_vf": { - "encoding": "101011-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xac005057", - "mask": "0xfc00707f" - }, - "vfnmsub_vv": { - "encoding": "101011-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xac001057", - "mask": "0xfc00707f" - }, - "vfrdiv_vf": { - "encoding": "100001-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x84005057", - "mask": "0xfc00707f" - }, - "vfrec7_v": { - "encoding": "010011------00101001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4c029057", - "mask": "0xfc0ff07f" - }, - "vfredmax_vs": { - "encoding": "000111-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x1c001057", - "mask": "0xfc00707f" - }, - "vfredmin_vs": { - "encoding": "000101-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x14001057", - "mask": "0xfc00707f" - }, - "vfredosum_vs": { - "encoding": "000011-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc001057", - "mask": "0xfc00707f" - }, - "vfredusum_vs": { - "encoding": "000001-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4001057", - "mask": "0xfc00707f" - }, - "vfrsqrt7_v": { - "encoding": "010011------00100001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4c021057", - "mask": "0xfc0ff07f" - }, - "vfrsub_vf": { - "encoding": "100111-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x9c005057", - "mask": "0xfc00707f" - }, - "vfsgnj_vf": { - "encoding": "001000-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x20005057", - "mask": "0xfc00707f" - }, - "vfsgnj_vv": { - "encoding": "001000-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x20001057", - "mask": "0xfc00707f" - }, - "vfsgnjn_vf": { - "encoding": "001001-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x24005057", - "mask": "0xfc00707f" - }, - "vfsgnjn_vv": { - "encoding": "001001-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x24001057", - "mask": "0xfc00707f" - }, - "vfsgnjx_vf": { - "encoding": "001010-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x28005057", - "mask": "0xfc00707f" - }, - "vfsgnjx_vv": { - "encoding": "001010-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x28001057", - "mask": "0xfc00707f" - }, - "vfslide1down_vf": { - "encoding": "001111-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x3c005057", - "mask": "0xfc00707f" - }, - "vfslide1up_vf": { - "encoding": "001110-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x38005057", - "mask": "0xfc00707f" - }, - "vfsqrt_v": { - "encoding": "010011------00000001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4c001057", - "mask": "0xfc0ff07f" - }, - "vfsub_vf": { - "encoding": "000010-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x8005057", - "mask": "0xfc00707f" - }, - "vfsub_vv": { - "encoding": "000010-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x8001057", - "mask": "0xfc00707f" - }, - "vfwadd_vf": { - "encoding": "110000-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc0005057", - "mask": "0xfc00707f" - }, - "vfwadd_vv": { - "encoding": "110000-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc0001057", - "mask": "0xfc00707f" - }, - "vfwadd_wf": { - "encoding": "110100-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xd0005057", - "mask": "0xfc00707f" - }, - "vfwadd_wv": { - "encoding": "110100-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xd0001057", - "mask": "0xfc00707f" - }, - "vfwcvt_f_f_v": { - "encoding": "010010------01100001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x48061057", - "mask": "0xfc0ff07f" - }, - "vfwcvt_f_x_v": { - "encoding": "010010------01011001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x48059057", - "mask": "0xfc0ff07f" - }, - "vfwcvt_f_xu_v": { - "encoding": "010010------01010001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x48051057", - "mask": "0xfc0ff07f" - }, - "vfwcvt_rtz_x_f_v": { - "encoding": "010010------01111001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x48079057", - "mask": "0xfc0ff07f" - }, - "vfwcvt_rtz_xu_f_v": { - "encoding": "010010------01110001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x48071057", - "mask": "0xfc0ff07f" - }, - "vfwcvt_x_f_v": { - "encoding": "010010------01001001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x48049057", - "mask": "0xfc0ff07f" - }, - "vfwcvt_xu_f_v": { - "encoding": "010010------01000001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x48041057", - "mask": "0xfc0ff07f" - }, - "vfwcvtbf16_f_f_v": { - "encoding": "010010------01101001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_zvfbfmin"], - "match": "0x48069057", - "mask": "0xfc0ff07f" - }, - "vfwmacc_vf": { - "encoding": "111100-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xf0005057", - "mask": "0xfc00707f" - }, - "vfwmacc_vv": { - "encoding": "111100-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xf0001057", - "mask": "0xfc00707f" - }, - "vfwmaccbf16_vf": { - "encoding": "111011-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_zvfbfwma"], - "match": "0xec005057", - "mask": "0xfc00707f" - }, - "vfwmaccbf16_vv": { - "encoding": "111011-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_zvfbfwma"], - "match": "0xec001057", - "mask": "0xfc00707f" - }, - "vfwmsac_vf": { - "encoding": "111110-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xf8005057", - "mask": "0xfc00707f" - }, - "vfwmsac_vv": { - "encoding": "111110-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xf8001057", - "mask": "0xfc00707f" - }, - "vfwmul_vf": { - "encoding": "111000-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xe0005057", - "mask": "0xfc00707f" - }, - "vfwmul_vv": { - "encoding": "111000-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xe0001057", - "mask": "0xfc00707f" - }, - "vfwnmacc_vf": { - "encoding": "111101-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xf4005057", - "mask": "0xfc00707f" - }, - "vfwnmacc_vv": { - "encoding": "111101-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xf4001057", - "mask": "0xfc00707f" - }, - "vfwnmsac_vf": { - "encoding": "111111-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xfc005057", - "mask": "0xfc00707f" - }, - "vfwnmsac_vv": { - "encoding": "111111-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xfc001057", - "mask": "0xfc00707f" - }, - "vfwredosum_vs": { - "encoding": "110011-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xcc001057", - "mask": "0xfc00707f" - }, - "vfwredusum_vs": { - "encoding": "110001-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc4001057", - "mask": "0xfc00707f" - }, - "vfwsub_vf": { - "encoding": "110010-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc8005057", - "mask": "0xfc00707f" - }, - "vfwsub_vv": { - "encoding": "110010-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc8001057", - "mask": "0xfc00707f" - }, - "vfwsub_wf": { - "encoding": "110110-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xd8005057", - "mask": "0xfc00707f" - }, - "vfwsub_wv": { - "encoding": "110110-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xd8001057", - "mask": "0xfc00707f" - }, - "vghsh_vv": { - "encoding": "1011001----------010-----1110111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_zvkg"], - "match": "0xb2002077", - "mask": "0xfe00707f" - }, - "vgmul_vv": { - "encoding": "1010001-----10001010-----1110111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_zvkg"], - "match": "0xa208a077", - "mask": "0xfe0ff07f" - }, - "vid_v": { - "encoding": "010100-0000010001010-----1010111", - "variable_fields": ["vd", "vm"], - "extension": ["rv_v"], - "match": "0x5008a057", - "mask": "0xfdfff07f" - }, - "viota_m": { - "encoding": "010100------10000010-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x50082057", - "mask": "0xfc0ff07f" - }, - "vl1re16_v": { - "encoding": "000000101000-----101-----0000111", - "variable_fields": ["vd", "rs1"], - "extension": ["rv_v"], - "match": "0x2805007", - "mask": "0xfff0707f" - }, - "vl1re32_v": { - "encoding": "000000101000-----110-----0000111", - "variable_fields": ["vd", "rs1"], - "extension": ["rv_v"], - "match": "0x2806007", - "mask": "0xfff0707f" - }, - "vl1re64_v": { - "encoding": "000000101000-----111-----0000111", - "variable_fields": ["vd", "rs1"], - "extension": ["rv_v"], - "match": "0x2807007", - "mask": "0xfff0707f" - }, - "vl1re8_v": { - "encoding": "000000101000-----000-----0000111", - "variable_fields": ["vd", "rs1"], - "extension": ["rv_v"], - "match": "0x2800007", - "mask": "0xfff0707f" - }, - "vl2re16_v": { - "encoding": "001000101000-----101-----0000111", - "variable_fields": ["vd", "rs1"], - "extension": ["rv_v"], - "match": "0x22805007", - "mask": "0xfff0707f" - }, - "vl2re32_v": { - "encoding": "001000101000-----110-----0000111", - "variable_fields": ["vd", "rs1"], - "extension": ["rv_v"], - "match": "0x22806007", - "mask": "0xfff0707f" - }, - "vl2re64_v": { - "encoding": "001000101000-----111-----0000111", - "variable_fields": ["vd", "rs1"], - "extension": ["rv_v"], - "match": "0x22807007", - "mask": "0xfff0707f" - }, - "vl2re8_v": { - "encoding": "001000101000-----000-----0000111", - "variable_fields": ["vd", "rs1"], - "extension": ["rv_v"], - "match": "0x22800007", - "mask": "0xfff0707f" - }, - "vl4re16_v": { - "encoding": "011000101000-----101-----0000111", - "variable_fields": ["vd", "rs1"], - "extension": ["rv_v"], - "match": "0x62805007", - "mask": "0xfff0707f" - }, - "vl4re32_v": { - "encoding": "011000101000-----110-----0000111", - "variable_fields": ["vd", "rs1"], - "extension": ["rv_v"], - "match": "0x62806007", - "mask": "0xfff0707f" - }, - "vl4re64_v": { - "encoding": "011000101000-----111-----0000111", - "variable_fields": ["vd", "rs1"], - "extension": ["rv_v"], - "match": "0x62807007", - "mask": "0xfff0707f" - }, - "vl4re8_v": { - "encoding": "011000101000-----000-----0000111", - "variable_fields": ["vd", "rs1"], - "extension": ["rv_v"], - "match": "0x62800007", - "mask": "0xfff0707f" - }, - "vl8re16_v": { - "encoding": "111000101000-----101-----0000111", - "variable_fields": ["vd", "rs1"], - "extension": ["rv_v"], - "match": "0xe2805007", - "mask": "0xfff0707f" - }, - "vl8re32_v": { - "encoding": "111000101000-----110-----0000111", - "variable_fields": ["vd", "rs1"], - "extension": ["rv_v"], - "match": "0xe2806007", - "mask": "0xfff0707f" - }, - "vl8re64_v": { - "encoding": "111000101000-----111-----0000111", - "variable_fields": ["vd", "rs1"], - "extension": ["rv_v"], - "match": "0xe2807007", - "mask": "0xfff0707f" - }, - "vl8re8_v": { - "encoding": "111000101000-----000-----0000111", - "variable_fields": ["vd", "rs1"], - "extension": ["rv_v"], - "match": "0xe2800007", - "mask": "0xfff0707f" - }, - "vle16_v": { - "encoding": "000000-00000-----101-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x5007", - "mask": "0xfdf0707f" - }, - "vle16ff_v": { - "encoding": "000000-10000-----101-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x1005007", - "mask": "0xfdf0707f" - }, - "vle32_v": { - "encoding": "000000-00000-----110-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x6007", - "mask": "0xfdf0707f" - }, - "vle32ff_v": { - "encoding": "000000-10000-----110-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x1006007", - "mask": "0xfdf0707f" - }, - "vle64_v": { - "encoding": "000000-00000-----111-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x7007", - "mask": "0xfdf0707f" - }, - "vle64ff_v": { - "encoding": "000000-10000-----111-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x1007007", - "mask": "0xfdf0707f" - }, - "vle8_v": { - "encoding": "000000-00000-----000-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x7", - "mask": "0xfdf0707f" - }, - "vle8ff_v": { - "encoding": "000000-10000-----000-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x1000007", - "mask": "0xfdf0707f" - }, - "vlm_v": { - "encoding": "000000101011-----000-----0000111", - "variable_fields": ["vd", "rs1"], - "extension": ["rv_v"], - "match": "0x2b00007", - "mask": "0xfff0707f" - }, - "vloxei16_v": { - "encoding": "000011-----------101-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc005007", - "mask": "0xfc00707f" - }, - "vloxei32_v": { - "encoding": "000011-----------110-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc006007", - "mask": "0xfc00707f" - }, - "vloxei64_v": { - "encoding": "000011-----------111-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc007007", - "mask": "0xfc00707f" - }, - "vloxei8_v": { - "encoding": "000011-----------000-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc000007", - "mask": "0xfc00707f" - }, - "vloxseg2ei16_v": { - "encoding": "001011-----------101-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x2c005007", - "mask": "0xfc00707f" - }, - "vloxseg2ei32_v": { - "encoding": "001011-----------110-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x2c006007", - "mask": "0xfc00707f" - }, - "vloxseg2ei64_v": { - "encoding": "001011-----------111-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x2c007007", - "mask": "0xfc00707f" - }, - "vloxseg2ei8_v": { - "encoding": "001011-----------000-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x2c000007", - "mask": "0xfc00707f" - }, - "vloxseg3ei16_v": { - "encoding": "010011-----------101-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4c005007", - "mask": "0xfc00707f" - }, - "vloxseg3ei32_v": { - "encoding": "010011-----------110-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4c006007", - "mask": "0xfc00707f" - }, - "vloxseg3ei64_v": { - "encoding": "010011-----------111-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4c007007", - "mask": "0xfc00707f" - }, - "vloxseg3ei8_v": { - "encoding": "010011-----------000-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4c000007", - "mask": "0xfc00707f" - }, - "vloxseg4ei16_v": { - "encoding": "011011-----------101-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x6c005007", - "mask": "0xfc00707f" - }, - "vloxseg4ei32_v": { - "encoding": "011011-----------110-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x6c006007", - "mask": "0xfc00707f" - }, - "vloxseg4ei64_v": { - "encoding": "011011-----------111-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x6c007007", - "mask": "0xfc00707f" - }, - "vloxseg4ei8_v": { - "encoding": "011011-----------000-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x6c000007", - "mask": "0xfc00707f" - }, - "vloxseg5ei16_v": { - "encoding": "100011-----------101-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x8c005007", - "mask": "0xfc00707f" - }, - "vloxseg5ei32_v": { - "encoding": "100011-----------110-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x8c006007", - "mask": "0xfc00707f" - }, - "vloxseg5ei64_v": { - "encoding": "100011-----------111-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x8c007007", - "mask": "0xfc00707f" - }, - "vloxseg5ei8_v": { - "encoding": "100011-----------000-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x8c000007", - "mask": "0xfc00707f" - }, - "vloxseg6ei16_v": { - "encoding": "101011-----------101-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xac005007", - "mask": "0xfc00707f" - }, - "vloxseg6ei32_v": { - "encoding": "101011-----------110-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xac006007", - "mask": "0xfc00707f" - }, - "vloxseg6ei64_v": { - "encoding": "101011-----------111-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xac007007", - "mask": "0xfc00707f" - }, - "vloxseg6ei8_v": { - "encoding": "101011-----------000-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xac000007", - "mask": "0xfc00707f" - }, - "vloxseg7ei16_v": { - "encoding": "110011-----------101-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xcc005007", - "mask": "0xfc00707f" - }, - "vloxseg7ei32_v": { - "encoding": "110011-----------110-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xcc006007", - "mask": "0xfc00707f" - }, - "vloxseg7ei64_v": { - "encoding": "110011-----------111-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xcc007007", - "mask": "0xfc00707f" - }, - "vloxseg7ei8_v": { - "encoding": "110011-----------000-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xcc000007", - "mask": "0xfc00707f" - }, - "vloxseg8ei16_v": { - "encoding": "111011-----------101-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xec005007", - "mask": "0xfc00707f" - }, - "vloxseg8ei32_v": { - "encoding": "111011-----------110-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xec006007", - "mask": "0xfc00707f" - }, - "vloxseg8ei64_v": { - "encoding": "111011-----------111-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xec007007", - "mask": "0xfc00707f" - }, - "vloxseg8ei8_v": { - "encoding": "111011-----------000-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xec000007", - "mask": "0xfc00707f" - }, - "vlse16_v": { - "encoding": "000010-----------101-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x8005007", - "mask": "0xfc00707f" - }, - "vlse32_v": { - "encoding": "000010-----------110-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x8006007", - "mask": "0xfc00707f" - }, - "vlse64_v": { - "encoding": "000010-----------111-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x8007007", - "mask": "0xfc00707f" - }, - "vlse8_v": { - "encoding": "000010-----------000-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x8000007", - "mask": "0xfc00707f" - }, - "vlseg2e16_v": { - "encoding": "001000-00000-----101-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x20005007", - "mask": "0xfdf0707f" - }, - "vlseg2e16ff_v": { - "encoding": "001000-10000-----101-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x21005007", - "mask": "0xfdf0707f" - }, - "vlseg2e32_v": { - "encoding": "001000-00000-----110-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x20006007", - "mask": "0xfdf0707f" - }, - "vlseg2e32ff_v": { - "encoding": "001000-10000-----110-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x21006007", - "mask": "0xfdf0707f" - }, - "vlseg2e64_v": { - "encoding": "001000-00000-----111-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x20007007", - "mask": "0xfdf0707f" - }, - "vlseg2e64ff_v": { - "encoding": "001000-10000-----111-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x21007007", - "mask": "0xfdf0707f" - }, - "vlseg2e8_v": { - "encoding": "001000-00000-----000-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x20000007", - "mask": "0xfdf0707f" - }, - "vlseg2e8ff_v": { - "encoding": "001000-10000-----000-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x21000007", - "mask": "0xfdf0707f" - }, - "vlseg3e16_v": { - "encoding": "010000-00000-----101-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x40005007", - "mask": "0xfdf0707f" - }, - "vlseg3e16ff_v": { - "encoding": "010000-10000-----101-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x41005007", - "mask": "0xfdf0707f" - }, - "vlseg3e32_v": { - "encoding": "010000-00000-----110-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x40006007", - "mask": "0xfdf0707f" - }, - "vlseg3e32ff_v": { - "encoding": "010000-10000-----110-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x41006007", - "mask": "0xfdf0707f" - }, - "vlseg3e64_v": { - "encoding": "010000-00000-----111-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x40007007", - "mask": "0xfdf0707f" - }, - "vlseg3e64ff_v": { - "encoding": "010000-10000-----111-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x41007007", - "mask": "0xfdf0707f" - }, - "vlseg3e8_v": { - "encoding": "010000-00000-----000-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x40000007", - "mask": "0xfdf0707f" - }, - "vlseg3e8ff_v": { - "encoding": "010000-10000-----000-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x41000007", - "mask": "0xfdf0707f" - }, - "vlseg4e16_v": { - "encoding": "011000-00000-----101-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x60005007", - "mask": "0xfdf0707f" - }, - "vlseg4e16ff_v": { - "encoding": "011000-10000-----101-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x61005007", - "mask": "0xfdf0707f" - }, - "vlseg4e32_v": { - "encoding": "011000-00000-----110-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x60006007", - "mask": "0xfdf0707f" - }, - "vlseg4e32ff_v": { - "encoding": "011000-10000-----110-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x61006007", - "mask": "0xfdf0707f" - }, - "vlseg4e64_v": { - "encoding": "011000-00000-----111-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x60007007", - "mask": "0xfdf0707f" - }, - "vlseg4e64ff_v": { - "encoding": "011000-10000-----111-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x61007007", - "mask": "0xfdf0707f" - }, - "vlseg4e8_v": { - "encoding": "011000-00000-----000-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x60000007", - "mask": "0xfdf0707f" - }, - "vlseg4e8ff_v": { - "encoding": "011000-10000-----000-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x61000007", - "mask": "0xfdf0707f" - }, - "vlseg5e16_v": { - "encoding": "100000-00000-----101-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x80005007", - "mask": "0xfdf0707f" - }, - "vlseg5e16ff_v": { - "encoding": "100000-10000-----101-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x81005007", - "mask": "0xfdf0707f" - }, - "vlseg5e32_v": { - "encoding": "100000-00000-----110-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x80006007", - "mask": "0xfdf0707f" - }, - "vlseg5e32ff_v": { - "encoding": "100000-10000-----110-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x81006007", - "mask": "0xfdf0707f" - }, - "vlseg5e64_v": { - "encoding": "100000-00000-----111-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x80007007", - "mask": "0xfdf0707f" - }, - "vlseg5e64ff_v": { - "encoding": "100000-10000-----111-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x81007007", - "mask": "0xfdf0707f" - }, - "vlseg5e8_v": { - "encoding": "100000-00000-----000-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x80000007", - "mask": "0xfdf0707f" - }, - "vlseg5e8ff_v": { - "encoding": "100000-10000-----000-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x81000007", - "mask": "0xfdf0707f" - }, - "vlseg6e16_v": { - "encoding": "101000-00000-----101-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xa0005007", - "mask": "0xfdf0707f" - }, - "vlseg6e16ff_v": { - "encoding": "101000-10000-----101-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xa1005007", - "mask": "0xfdf0707f" - }, - "vlseg6e32_v": { - "encoding": "101000-00000-----110-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xa0006007", - "mask": "0xfdf0707f" - }, - "vlseg6e32ff_v": { - "encoding": "101000-10000-----110-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xa1006007", - "mask": "0xfdf0707f" - }, - "vlseg6e64_v": { - "encoding": "101000-00000-----111-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xa0007007", - "mask": "0xfdf0707f" - }, - "vlseg6e64ff_v": { - "encoding": "101000-10000-----111-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xa1007007", - "mask": "0xfdf0707f" - }, - "vlseg6e8_v": { - "encoding": "101000-00000-----000-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xa0000007", - "mask": "0xfdf0707f" - }, - "vlseg6e8ff_v": { - "encoding": "101000-10000-----000-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xa1000007", - "mask": "0xfdf0707f" - }, - "vlseg7e16_v": { - "encoding": "110000-00000-----101-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xc0005007", - "mask": "0xfdf0707f" - }, - "vlseg7e16ff_v": { - "encoding": "110000-10000-----101-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xc1005007", - "mask": "0xfdf0707f" - }, - "vlseg7e32_v": { - "encoding": "110000-00000-----110-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xc0006007", - "mask": "0xfdf0707f" - }, - "vlseg7e32ff_v": { - "encoding": "110000-10000-----110-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xc1006007", - "mask": "0xfdf0707f" - }, - "vlseg7e64_v": { - "encoding": "110000-00000-----111-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xc0007007", - "mask": "0xfdf0707f" - }, - "vlseg7e64ff_v": { - "encoding": "110000-10000-----111-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xc1007007", - "mask": "0xfdf0707f" - }, - "vlseg7e8_v": { - "encoding": "110000-00000-----000-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xc0000007", - "mask": "0xfdf0707f" - }, - "vlseg7e8ff_v": { - "encoding": "110000-10000-----000-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xc1000007", - "mask": "0xfdf0707f" - }, - "vlseg8e16_v": { - "encoding": "111000-00000-----101-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xe0005007", - "mask": "0xfdf0707f" - }, - "vlseg8e16ff_v": { - "encoding": "111000-10000-----101-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xe1005007", - "mask": "0xfdf0707f" - }, - "vlseg8e32_v": { - "encoding": "111000-00000-----110-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xe0006007", - "mask": "0xfdf0707f" - }, - "vlseg8e32ff_v": { - "encoding": "111000-10000-----110-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xe1006007", - "mask": "0xfdf0707f" - }, - "vlseg8e64_v": { - "encoding": "111000-00000-----111-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xe0007007", - "mask": "0xfdf0707f" - }, - "vlseg8e64ff_v": { - "encoding": "111000-10000-----111-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xe1007007", - "mask": "0xfdf0707f" - }, - "vlseg8e8_v": { - "encoding": "111000-00000-----000-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xe0000007", - "mask": "0xfdf0707f" - }, - "vlseg8e8ff_v": { - "encoding": "111000-10000-----000-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xe1000007", - "mask": "0xfdf0707f" - }, - "vlsseg2e16_v": { - "encoding": "001010-----------101-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x28005007", - "mask": "0xfc00707f" - }, - "vlsseg2e32_v": { - "encoding": "001010-----------110-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x28006007", - "mask": "0xfc00707f" - }, - "vlsseg2e64_v": { - "encoding": "001010-----------111-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x28007007", - "mask": "0xfc00707f" - }, - "vlsseg2e8_v": { - "encoding": "001010-----------000-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x28000007", - "mask": "0xfc00707f" - }, - "vlsseg3e16_v": { - "encoding": "010010-----------101-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x48005007", - "mask": "0xfc00707f" - }, - "vlsseg3e32_v": { - "encoding": "010010-----------110-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x48006007", - "mask": "0xfc00707f" - }, - "vlsseg3e64_v": { - "encoding": "010010-----------111-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x48007007", - "mask": "0xfc00707f" - }, - "vlsseg3e8_v": { - "encoding": "010010-----------000-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x48000007", - "mask": "0xfc00707f" - }, - "vlsseg4e16_v": { - "encoding": "011010-----------101-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x68005007", - "mask": "0xfc00707f" - }, - "vlsseg4e32_v": { - "encoding": "011010-----------110-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x68006007", - "mask": "0xfc00707f" - }, - "vlsseg4e64_v": { - "encoding": "011010-----------111-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x68007007", - "mask": "0xfc00707f" - }, - "vlsseg4e8_v": { - "encoding": "011010-----------000-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x68000007", - "mask": "0xfc00707f" - }, - "vlsseg5e16_v": { - "encoding": "100010-----------101-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x88005007", - "mask": "0xfc00707f" - }, - "vlsseg5e32_v": { - "encoding": "100010-----------110-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x88006007", - "mask": "0xfc00707f" - }, - "vlsseg5e64_v": { - "encoding": "100010-----------111-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x88007007", - "mask": "0xfc00707f" - }, - "vlsseg5e8_v": { - "encoding": "100010-----------000-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x88000007", - "mask": "0xfc00707f" - }, - "vlsseg6e16_v": { - "encoding": "101010-----------101-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xa8005007", - "mask": "0xfc00707f" - }, - "vlsseg6e32_v": { - "encoding": "101010-----------110-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xa8006007", - "mask": "0xfc00707f" - }, - "vlsseg6e64_v": { - "encoding": "101010-----------111-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xa8007007", - "mask": "0xfc00707f" - }, - "vlsseg6e8_v": { - "encoding": "101010-----------000-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xa8000007", - "mask": "0xfc00707f" - }, - "vlsseg7e16_v": { - "encoding": "110010-----------101-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xc8005007", - "mask": "0xfc00707f" - }, - "vlsseg7e32_v": { - "encoding": "110010-----------110-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xc8006007", - "mask": "0xfc00707f" - }, - "vlsseg7e64_v": { - "encoding": "110010-----------111-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xc8007007", - "mask": "0xfc00707f" - }, - "vlsseg7e8_v": { - "encoding": "110010-----------000-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xc8000007", - "mask": "0xfc00707f" - }, - "vlsseg8e16_v": { - "encoding": "111010-----------101-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xe8005007", - "mask": "0xfc00707f" - }, - "vlsseg8e32_v": { - "encoding": "111010-----------110-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xe8006007", - "mask": "0xfc00707f" - }, - "vlsseg8e64_v": { - "encoding": "111010-----------111-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xe8007007", - "mask": "0xfc00707f" - }, - "vlsseg8e8_v": { - "encoding": "111010-----------000-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xe8000007", - "mask": "0xfc00707f" - }, - "vluxei16_v": { - "encoding": "000001-----------101-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4005007", - "mask": "0xfc00707f" - }, - "vluxei32_v": { - "encoding": "000001-----------110-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4006007", - "mask": "0xfc00707f" - }, - "vluxei64_v": { - "encoding": "000001-----------111-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4007007", - "mask": "0xfc00707f" - }, - "vluxei8_v": { - "encoding": "000001-----------000-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4000007", - "mask": "0xfc00707f" - }, - "vluxseg2ei16_v": { - "encoding": "001001-----------101-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x24005007", - "mask": "0xfc00707f" - }, - "vluxseg2ei32_v": { - "encoding": "001001-----------110-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x24006007", - "mask": "0xfc00707f" - }, - "vluxseg2ei64_v": { - "encoding": "001001-----------111-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x24007007", - "mask": "0xfc00707f" - }, - "vluxseg2ei8_v": { - "encoding": "001001-----------000-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x24000007", - "mask": "0xfc00707f" - }, - "vluxseg3ei16_v": { - "encoding": "010001-----------101-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x44005007", - "mask": "0xfc00707f" - }, - "vluxseg3ei32_v": { - "encoding": "010001-----------110-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x44006007", - "mask": "0xfc00707f" - }, - "vluxseg3ei64_v": { - "encoding": "010001-----------111-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x44007007", - "mask": "0xfc00707f" - }, - "vluxseg3ei8_v": { - "encoding": "010001-----------000-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x44000007", - "mask": "0xfc00707f" - }, - "vluxseg4ei16_v": { - "encoding": "011001-----------101-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x64005007", - "mask": "0xfc00707f" - }, - "vluxseg4ei32_v": { - "encoding": "011001-----------110-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x64006007", - "mask": "0xfc00707f" - }, - "vluxseg4ei64_v": { - "encoding": "011001-----------111-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x64007007", - "mask": "0xfc00707f" - }, - "vluxseg4ei8_v": { - "encoding": "011001-----------000-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x64000007", - "mask": "0xfc00707f" - }, - "vluxseg5ei16_v": { - "encoding": "100001-----------101-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x84005007", - "mask": "0xfc00707f" - }, - "vluxseg5ei32_v": { - "encoding": "100001-----------110-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x84006007", - "mask": "0xfc00707f" - }, - "vluxseg5ei64_v": { - "encoding": "100001-----------111-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x84007007", - "mask": "0xfc00707f" - }, - "vluxseg5ei8_v": { - "encoding": "100001-----------000-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x84000007", - "mask": "0xfc00707f" - }, - "vluxseg6ei16_v": { - "encoding": "101001-----------101-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa4005007", - "mask": "0xfc00707f" - }, - "vluxseg6ei32_v": { - "encoding": "101001-----------110-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa4006007", - "mask": "0xfc00707f" - }, - "vluxseg6ei64_v": { - "encoding": "101001-----------111-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa4007007", - "mask": "0xfc00707f" - }, - "vluxseg6ei8_v": { - "encoding": "101001-----------000-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa4000007", - "mask": "0xfc00707f" - }, - "vluxseg7ei16_v": { - "encoding": "110001-----------101-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc4005007", - "mask": "0xfc00707f" - }, - "vluxseg7ei32_v": { - "encoding": "110001-----------110-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc4006007", - "mask": "0xfc00707f" - }, - "vluxseg7ei64_v": { - "encoding": "110001-----------111-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc4007007", - "mask": "0xfc00707f" - }, - "vluxseg7ei8_v": { - "encoding": "110001-----------000-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc4000007", - "mask": "0xfc00707f" - }, - "vluxseg8ei16_v": { - "encoding": "111001-----------101-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xe4005007", - "mask": "0xfc00707f" - }, - "vluxseg8ei32_v": { - "encoding": "111001-----------110-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xe4006007", - "mask": "0xfc00707f" - }, - "vluxseg8ei64_v": { - "encoding": "111001-----------111-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xe4007007", - "mask": "0xfc00707f" - }, - "vluxseg8ei8_v": { - "encoding": "111001-----------000-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xe4000007", - "mask": "0xfc00707f" - }, - "vmacc_vv": { - "encoding": "101101-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xb4002057", - "mask": "0xfc00707f" - }, - "vmacc_vx": { - "encoding": "101101-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xb4006057", - "mask": "0xfc00707f" - }, - "vmadc_vi": { - "encoding": "0100011----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2"], - "extension": ["rv_v"], - "match": "0x46003057", - "mask": "0xfe00707f" - }, - "vmadc_vim": { - "encoding": "0100010----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2"], - "extension": ["rv_v"], - "match": "0x44003057", - "mask": "0xfe00707f" - }, - "vmadc_vv": { - "encoding": "0100011----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x46000057", - "mask": "0xfe00707f" - }, - "vmadc_vvm": { - "encoding": "0100010----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x44000057", - "mask": "0xfe00707f" - }, - "vmadc_vx": { - "encoding": "0100011----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2"], - "extension": ["rv_v"], - "match": "0x46004057", - "mask": "0xfe00707f" - }, - "vmadc_vxm": { - "encoding": "0100010----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2"], - "extension": ["rv_v"], - "match": "0x44004057", - "mask": "0xfe00707f" - }, - "vmadd_vv": { - "encoding": "101001-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa4002057", - "mask": "0xfc00707f" - }, - "vmadd_vx": { - "encoding": "101001-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa4006057", - "mask": "0xfc00707f" - }, - "vmand_mm": { - "encoding": "0110011----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x66002057", - "mask": "0xfe00707f" - }, - "vmandn_mm": { - "encoding": "0110001----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x62002057", - "mask": "0xfe00707f" - }, - "vmax_vv": { - "encoding": "000111-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x1c000057", - "mask": "0xfc00707f" - }, - "vmax_vx": { - "encoding": "000111-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x1c004057", - "mask": "0xfc00707f" - }, - "vmaxu_vv": { - "encoding": "000110-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x18000057", - "mask": "0xfc00707f" - }, - "vmaxu_vx": { - "encoding": "000110-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x18004057", - "mask": "0xfc00707f" - }, - "vmerge_vim": { - "encoding": "0101110----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2"], - "extension": ["rv_v"], - "match": "0x5c003057", - "mask": "0xfe00707f" - }, - "vmerge_vvm": { - "encoding": "0101110----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x5c000057", - "mask": "0xfe00707f" - }, - "vmerge_vxm": { - "encoding": "0101110----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2"], - "extension": ["rv_v"], - "match": "0x5c004057", - "mask": "0xfe00707f" - }, - "vmfeq_vf": { - "encoding": "011000-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x60005057", - "mask": "0xfc00707f" - }, - "vmfeq_vv": { - "encoding": "011000-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x60001057", - "mask": "0xfc00707f" - }, - "vmfge_vf": { - "encoding": "011111-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x7c005057", - "mask": "0xfc00707f" - }, - "vmfgt_vf": { - "encoding": "011101-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x74005057", - "mask": "0xfc00707f" - }, - "vmfle_vf": { - "encoding": "011001-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x64005057", - "mask": "0xfc00707f" - }, - "vmfle_vv": { - "encoding": "011001-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x64001057", - "mask": "0xfc00707f" - }, - "vmflt_vf": { - "encoding": "011011-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x6c005057", - "mask": "0xfc00707f" - }, - "vmflt_vv": { - "encoding": "011011-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x6c001057", - "mask": "0xfc00707f" - }, - "vmfne_vf": { - "encoding": "011100-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x70005057", - "mask": "0xfc00707f" - }, - "vmfne_vv": { - "encoding": "011100-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x70001057", - "mask": "0xfc00707f" - }, - "vmin_vv": { - "encoding": "000101-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x14000057", - "mask": "0xfc00707f" - }, - "vmin_vx": { - "encoding": "000101-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x14004057", - "mask": "0xfc00707f" - }, - "vminu_vv": { - "encoding": "000100-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x10000057", - "mask": "0xfc00707f" - }, - "vminu_vx": { - "encoding": "000100-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x10004057", - "mask": "0xfc00707f" - }, - "vmnand_mm": { - "encoding": "0111011----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x76002057", - "mask": "0xfe00707f" - }, - "vmnor_mm": { - "encoding": "0111101----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x7a002057", - "mask": "0xfe00707f" - }, - "vmor_mm": { - "encoding": "0110101----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x6a002057", - "mask": "0xfe00707f" - }, - "vmorn_mm": { - "encoding": "0111001----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x72002057", - "mask": "0xfe00707f" - }, - "vmsbc_vv": { - "encoding": "0100111----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x4e000057", - "mask": "0xfe00707f" - }, - "vmsbc_vvm": { - "encoding": "0100110----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x4c000057", - "mask": "0xfe00707f" - }, - "vmsbc_vx": { - "encoding": "0100111----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2"], - "extension": ["rv_v"], - "match": "0x4e004057", - "mask": "0xfe00707f" - }, - "vmsbc_vxm": { - "encoding": "0100110----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2"], - "extension": ["rv_v"], - "match": "0x4c004057", - "mask": "0xfe00707f" - }, - "vmsbf_m": { - "encoding": "010100------00001010-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x5000a057", - "mask": "0xfc0ff07f" - }, - "vmseq_vi": { - "encoding": "011000-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x60003057", - "mask": "0xfc00707f" - }, - "vmseq_vv": { - "encoding": "011000-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x60000057", - "mask": "0xfc00707f" - }, - "vmseq_vx": { - "encoding": "011000-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x60004057", - "mask": "0xfc00707f" - }, - "vmsgt_vi": { - "encoding": "011111-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x7c003057", - "mask": "0xfc00707f" - }, - "vmsgt_vx": { - "encoding": "011111-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x7c004057", - "mask": "0xfc00707f" - }, - "vmsgtu_vi": { - "encoding": "011110-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x78003057", - "mask": "0xfc00707f" - }, - "vmsgtu_vx": { - "encoding": "011110-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x78004057", - "mask": "0xfc00707f" - }, - "vmsif_m": { - "encoding": "010100------00011010-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x5001a057", - "mask": "0xfc0ff07f" - }, - "vmsle_vi": { - "encoding": "011101-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x74003057", - "mask": "0xfc00707f" - }, - "vmsle_vv": { - "encoding": "011101-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x74000057", - "mask": "0xfc00707f" - }, - "vmsle_vx": { - "encoding": "011101-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x74004057", - "mask": "0xfc00707f" - }, - "vmsleu_vi": { - "encoding": "011100-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x70003057", - "mask": "0xfc00707f" - }, - "vmsleu_vv": { - "encoding": "011100-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x70000057", - "mask": "0xfc00707f" - }, - "vmsleu_vx": { - "encoding": "011100-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x70004057", - "mask": "0xfc00707f" - }, - "vmslt_vv": { - "encoding": "011011-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x6c000057", - "mask": "0xfc00707f" - }, - "vmslt_vx": { - "encoding": "011011-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x6c004057", - "mask": "0xfc00707f" - }, - "vmsltu_vv": { - "encoding": "011010-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x68000057", - "mask": "0xfc00707f" - }, - "vmsltu_vx": { - "encoding": "011010-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x68004057", - "mask": "0xfc00707f" - }, - "vmsne_vi": { - "encoding": "011001-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x64003057", - "mask": "0xfc00707f" - }, - "vmsne_vv": { - "encoding": "011001-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x64000057", - "mask": "0xfc00707f" - }, - "vmsne_vx": { - "encoding": "011001-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x64004057", - "mask": "0xfc00707f" - }, - "vmsof_m": { - "encoding": "010100------00010010-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x50012057", - "mask": "0xfc0ff07f" - }, - "vmul_vv": { - "encoding": "100101-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x94002057", - "mask": "0xfc00707f" - }, - "vmul_vx": { - "encoding": "100101-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x94006057", - "mask": "0xfc00707f" - }, - "vmulh_vv": { - "encoding": "100111-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x9c002057", - "mask": "0xfc00707f" - }, - "vmulh_vx": { - "encoding": "100111-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x9c006057", - "mask": "0xfc00707f" - }, - "vmulhsu_vv": { - "encoding": "100110-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x98002057", - "mask": "0xfc00707f" - }, - "vmulhsu_vx": { - "encoding": "100110-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x98006057", - "mask": "0xfc00707f" - }, - "vmulhu_vv": { - "encoding": "100100-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x90002057", - "mask": "0xfc00707f" - }, - "vmulhu_vx": { - "encoding": "100100-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x90006057", - "mask": "0xfc00707f" - }, - "vmv1r_v": { - "encoding": "1001111-----00000011-----1010111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_v"], - "match": "0x9e003057", - "mask": "0xfe0ff07f" - }, - "vmv2r_v": { - "encoding": "1001111-----00001011-----1010111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_v"], - "match": "0x9e00b057", - "mask": "0xfe0ff07f" - }, - "vmv4r_v": { - "encoding": "1001111-----00011011-----1010111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_v"], - "match": "0x9e01b057", - "mask": "0xfe0ff07f" - }, - "vmv8r_v": { - "encoding": "1001111-----00111011-----1010111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_v"], - "match": "0x9e03b057", - "mask": "0xfe0ff07f" - }, - "vmv_s_x": { - "encoding": "010000100000-----110-----1010111", - "variable_fields": ["vd", "rs1"], - "extension": ["rv_v"], - "match": "0x42006057", - "mask": "0xfff0707f" - }, - "vmv_v_i": { - "encoding": "010111100000-----011-----1010111", - "variable_fields": ["vd", "simm5"], - "extension": ["rv_v"], - "match": "0x5e003057", - "mask": "0xfff0707f" - }, - "vmv_v_v": { - "encoding": "010111100000-----000-----1010111", - "variable_fields": ["vd", "vs1"], - "extension": ["rv_v"], - "match": "0x5e000057", - "mask": "0xfff0707f" - }, - "vmv_v_x": { - "encoding": "010111100000-----100-----1010111", - "variable_fields": ["vd", "rs1"], - "extension": ["rv_v"], - "match": "0x5e004057", - "mask": "0xfff0707f" - }, - "vmv_x_s": { - "encoding": "0100001-----00000010-----1010111", - "variable_fields": ["rd", "vs2"], - "extension": ["rv_v"], - "match": "0x42002057", - "mask": "0xfe0ff07f" - }, - "vmxnor_mm": { - "encoding": "0111111----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x7e002057", - "mask": "0xfe00707f" - }, - "vmxor_mm": { - "encoding": "0110111----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x6e002057", - "mask": "0xfe00707f" - }, - "vnclip_wi": { - "encoding": "101111-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xbc003057", - "mask": "0xfc00707f" - }, - "vnclip_wv": { - "encoding": "101111-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xbc000057", - "mask": "0xfc00707f" - }, - "vnclip_wx": { - "encoding": "101111-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xbc004057", - "mask": "0xfc00707f" - }, - "vnclipu_wi": { - "encoding": "101110-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xb8003057", - "mask": "0xfc00707f" - }, - "vnclipu_wv": { - "encoding": "101110-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xb8000057", - "mask": "0xfc00707f" - }, - "vnclipu_wx": { - "encoding": "101110-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xb8004057", - "mask": "0xfc00707f" - }, - "vnmsac_vv": { - "encoding": "101111-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xbc002057", - "mask": "0xfc00707f" - }, - "vnmsac_vx": { - "encoding": "101111-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xbc006057", - "mask": "0xfc00707f" - }, - "vnmsub_vv": { - "encoding": "101011-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xac002057", - "mask": "0xfc00707f" - }, - "vnmsub_vx": { - "encoding": "101011-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xac006057", - "mask": "0xfc00707f" - }, - "vnsra_wi": { - "encoding": "101101-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xb4003057", - "mask": "0xfc00707f" - }, - "vnsra_wv": { - "encoding": "101101-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xb4000057", - "mask": "0xfc00707f" - }, - "vnsra_wx": { - "encoding": "101101-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xb4004057", - "mask": "0xfc00707f" - }, - "vnsrl_wi": { - "encoding": "101100-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xb0003057", - "mask": "0xfc00707f" - }, - "vnsrl_wv": { - "encoding": "101100-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xb0000057", - "mask": "0xfc00707f" - }, - "vnsrl_wx": { - "encoding": "101100-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xb0004057", - "mask": "0xfc00707f" - }, - "vor_vi": { - "encoding": "001010-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x28003057", - "mask": "0xfc00707f" - }, - "vor_vv": { - "encoding": "001010-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x28000057", - "mask": "0xfc00707f" - }, - "vor_vx": { - "encoding": "001010-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x28004057", - "mask": "0xfc00707f" - }, - "vredand_vs": { - "encoding": "000001-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4002057", - "mask": "0xfc00707f" - }, - "vredmax_vs": { - "encoding": "000111-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x1c002057", - "mask": "0xfc00707f" - }, - "vredmaxu_vs": { - "encoding": "000110-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x18002057", - "mask": "0xfc00707f" - }, - "vredmin_vs": { - "encoding": "000101-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x14002057", - "mask": "0xfc00707f" - }, - "vredminu_vs": { - "encoding": "000100-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x10002057", - "mask": "0xfc00707f" - }, - "vredor_vs": { - "encoding": "000010-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x8002057", - "mask": "0xfc00707f" - }, - "vredsum_vs": { - "encoding": "000000-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x2057", - "mask": "0xfc00707f" - }, - "vredxor_vs": { - "encoding": "000011-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc002057", - "mask": "0xfc00707f" - }, - "vrem_vv": { - "encoding": "100011-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x8c002057", - "mask": "0xfc00707f" - }, - "vrem_vx": { - "encoding": "100011-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x8c006057", - "mask": "0xfc00707f" - }, - "vremu_vv": { - "encoding": "100010-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x88002057", - "mask": "0xfc00707f" - }, - "vremu_vx": { - "encoding": "100010-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x88006057", - "mask": "0xfc00707f" - }, - "vrev8_v": { - "encoding": "010010------01001010-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0x4804a057", - "mask": "0xfc0ff07f" - }, - "vrgather_vi": { - "encoding": "001100-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x30003057", - "mask": "0xfc00707f" - }, - "vrgather_vv": { - "encoding": "001100-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x30000057", - "mask": "0xfc00707f" - }, - "vrgather_vx": { - "encoding": "001100-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x30004057", - "mask": "0xfc00707f" - }, - "vrgatherei16_vv": { - "encoding": "001110-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x38000057", - "mask": "0xfc00707f" - }, - "vrol_vv": { - "encoding": "010101-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0x54000057", - "mask": "0xfc00707f" - }, - "vrol_vx": { - "encoding": "010101-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0x54004057", - "mask": "0xfc00707f" - }, - "vror_vi": { - "encoding": "01010------------011-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0x50003057", - "mask": "0xf800707f" - }, - "vror_vv": { - "encoding": "010100-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0x50000057", - "mask": "0xfc00707f" - }, - "vror_vx": { - "encoding": "010100-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0x50004057", - "mask": "0xfc00707f" - }, - "vrsub_vi": { - "encoding": "000011-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc003057", - "mask": "0xfc00707f" - }, - "vrsub_vx": { - "encoding": "000011-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc004057", - "mask": "0xfc00707f" - }, - "vs1r_v": { - "encoding": "000000101000-----000-----0100111", - "variable_fields": ["vs3", "rs1"], - "extension": ["rv_v"], - "match": "0x2800027", - "mask": "0xfff0707f" - }, - "vs2r_v": { - "encoding": "001000101000-----000-----0100111", - "variable_fields": ["vs3", "rs1"], - "extension": ["rv_v"], - "match": "0x22800027", - "mask": "0xfff0707f" - }, - "vs4r_v": { - "encoding": "011000101000-----000-----0100111", - "variable_fields": ["vs3", "rs1"], - "extension": ["rv_v"], - "match": "0x62800027", - "mask": "0xfff0707f" - }, - "vs8r_v": { - "encoding": "111000101000-----000-----0100111", - "variable_fields": ["vs3", "rs1"], - "extension": ["rv_v"], - "match": "0xe2800027", - "mask": "0xfff0707f" - }, - "vsadd_vi": { - "encoding": "100001-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x84003057", - "mask": "0xfc00707f" - }, - "vsadd_vv": { - "encoding": "100001-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x84000057", - "mask": "0xfc00707f" - }, - "vsadd_vx": { - "encoding": "100001-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x84004057", - "mask": "0xfc00707f" - }, - "vsaddu_vi": { - "encoding": "100000-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x80003057", - "mask": "0xfc00707f" - }, - "vsaddu_vv": { - "encoding": "100000-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x80000057", - "mask": "0xfc00707f" - }, - "vsaddu_vx": { - "encoding": "100000-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x80004057", - "mask": "0xfc00707f" - }, - "vsbc_vvm": { - "encoding": "0100100----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x48000057", - "mask": "0xfe00707f" - }, - "vsbc_vxm": { - "encoding": "0100100----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2"], - "extension": ["rv_v"], - "match": "0x48004057", - "mask": "0xfe00707f" - }, - "vse16_v": { - "encoding": "000000-00000-----101-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x5027", - "mask": "0xfdf0707f" - }, - "vse32_v": { - "encoding": "000000-00000-----110-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x6027", - "mask": "0xfdf0707f" - }, - "vse64_v": { - "encoding": "000000-00000-----111-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x7027", - "mask": "0xfdf0707f" - }, - "vse8_v": { - "encoding": "000000-00000-----000-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x27", - "mask": "0xfdf0707f" - }, - "vsetivli": { - "encoding": "11---------------111-----1010111", - "variable_fields": ["rd", "zimm10"], - "extension": ["rv_v"], - "match": "0xc0007057", - "mask": "0xc000707f" - }, - "vsetvl": { - "encoding": "1000000----------111-----1010111", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_v"], - "match": "0x80007057", - "mask": "0xfe00707f" - }, - "vsetvli": { - "encoding": "0----------------111-----1010111", - "variable_fields": ["rd", "rs1", "zimm11"], - "extension": ["rv_v"], - "match": "0x7057", - "mask": "0x8000707f" - }, - "vsext_vf2": { - "encoding": "010010------00111010-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4803a057", - "mask": "0xfc0ff07f" - }, - "vsext_vf4": { - "encoding": "010010------00101010-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4802a057", - "mask": "0xfc0ff07f" - }, - "vsext_vf8": { - "encoding": "010010------00011010-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4801a057", - "mask": "0xfc0ff07f" - }, - "vsha2ch_vv": { - "encoding": "1011101----------010-----1110111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_zvkn", "rv_zvknha", "rv_zvknhb"], - "match": "0xba002077", - "mask": "0xfe00707f" - }, - "vsha2cl_vv": { - "encoding": "1011111----------010-----1110111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_zvkn", "rv_zvknha", "rv_zvknhb"], - "match": "0xbe002077", - "mask": "0xfe00707f" - }, - "vsha2ms_vv": { - "encoding": "1011011----------010-----1110111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_zvkn", "rv_zvknha", "rv_zvknhb"], - "match": "0xb6002077", - "mask": "0xfe00707f" - }, - "vslide1down_vx": { - "encoding": "001111-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x3c006057", - "mask": "0xfc00707f" - }, - "vslide1up_vx": { - "encoding": "001110-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x38006057", - "mask": "0xfc00707f" - }, - "vslidedown_vi": { - "encoding": "001111-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x3c003057", - "mask": "0xfc00707f" - }, - "vslidedown_vx": { - "encoding": "001111-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x3c004057", - "mask": "0xfc00707f" - }, - "vslideup_vi": { - "encoding": "001110-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x38003057", - "mask": "0xfc00707f" - }, - "vslideup_vx": { - "encoding": "001110-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x38004057", - "mask": "0xfc00707f" - }, - "vsll_vi": { - "encoding": "100101-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x94003057", - "mask": "0xfc00707f" - }, - "vsll_vv": { - "encoding": "100101-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x94000057", - "mask": "0xfc00707f" - }, - "vsll_vx": { - "encoding": "100101-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x94004057", - "mask": "0xfc00707f" - }, - "vsm3c_vi": { - "encoding": "1010111----------010-----1110111", - "variable_fields": ["vd", "zimm5", "vs2"], - "extension": ["rv_zvks", "rv_zvksh"], - "match": "0xae002077", - "mask": "0xfe00707f" - }, - "vsm3me_vv": { - "encoding": "1000001----------010-----1110111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_zvks", "rv_zvksh"], - "match": "0x82002077", - "mask": "0xfe00707f" - }, - "vsm4k_vi": { - "encoding": "1000011----------010-----1110111", - "variable_fields": ["vd", "zimm5", "vs2"], - "extension": ["rv_zvks", "rv_zvksed"], - "match": "0x86002077", - "mask": "0xfe00707f" - }, - "vsm4r_vs": { - "encoding": "1010011-----10000010-----1110111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_zvks", "rv_zvksed"], - "match": "0xa6082077", - "mask": "0xfe0ff07f" - }, - "vsm4r_vv": { - "encoding": "1010001-----10000010-----1110111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_zvks", "rv_zvksed"], - "match": "0xa2082077", - "mask": "0xfe0ff07f" - }, - "vsm_v": { - "encoding": "000000101011-----000-----0100111", - "variable_fields": ["vs3", "rs1"], - "extension": ["rv_v"], - "match": "0x2b00027", - "mask": "0xfff0707f" - }, - "vsmul_vv": { - "encoding": "100111-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x9c000057", - "mask": "0xfc00707f" - }, - "vsmul_vx": { - "encoding": "100111-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x9c004057", - "mask": "0xfc00707f" - }, - "vsoxei16_v": { - "encoding": "000011-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc005027", - "mask": "0xfc00707f" - }, - "vsoxei32_v": { - "encoding": "000011-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc006027", - "mask": "0xfc00707f" - }, - "vsoxei64_v": { - "encoding": "000011-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc007027", - "mask": "0xfc00707f" - }, - "vsoxei8_v": { - "encoding": "000011-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc000027", - "mask": "0xfc00707f" - }, - "vsoxseg2ei16_v": { - "encoding": "001011-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x2c005027", - "mask": "0xfc00707f" - }, - "vsoxseg2ei32_v": { - "encoding": "001011-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x2c006027", - "mask": "0xfc00707f" - }, - "vsoxseg2ei64_v": { - "encoding": "001011-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x2c007027", - "mask": "0xfc00707f" - }, - "vsoxseg2ei8_v": { - "encoding": "001011-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x2c000027", - "mask": "0xfc00707f" - }, - "vsoxseg3ei16_v": { - "encoding": "010011-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4c005027", - "mask": "0xfc00707f" - }, - "vsoxseg3ei32_v": { - "encoding": "010011-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4c006027", - "mask": "0xfc00707f" - }, - "vsoxseg3ei64_v": { - "encoding": "010011-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4c007027", - "mask": "0xfc00707f" - }, - "vsoxseg3ei8_v": { - "encoding": "010011-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4c000027", - "mask": "0xfc00707f" - }, - "vsoxseg4ei16_v": { - "encoding": "011011-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x6c005027", - "mask": "0xfc00707f" - }, - "vsoxseg4ei32_v": { - "encoding": "011011-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x6c006027", - "mask": "0xfc00707f" - }, - "vsoxseg4ei64_v": { - "encoding": "011011-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x6c007027", - "mask": "0xfc00707f" - }, - "vsoxseg4ei8_v": { - "encoding": "011011-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x6c000027", - "mask": "0xfc00707f" - }, - "vsoxseg5ei16_v": { - "encoding": "100011-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x8c005027", - "mask": "0xfc00707f" - }, - "vsoxseg5ei32_v": { - "encoding": "100011-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x8c006027", - "mask": "0xfc00707f" - }, - "vsoxseg5ei64_v": { - "encoding": "100011-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x8c007027", - "mask": "0xfc00707f" - }, - "vsoxseg5ei8_v": { - "encoding": "100011-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x8c000027", - "mask": "0xfc00707f" - }, - "vsoxseg6ei16_v": { - "encoding": "101011-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xac005027", - "mask": "0xfc00707f" - }, - "vsoxseg6ei32_v": { - "encoding": "101011-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xac006027", - "mask": "0xfc00707f" - }, - "vsoxseg6ei64_v": { - "encoding": "101011-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xac007027", - "mask": "0xfc00707f" - }, - "vsoxseg6ei8_v": { - "encoding": "101011-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xac000027", - "mask": "0xfc00707f" - }, - "vsoxseg7ei16_v": { - "encoding": "110011-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xcc005027", - "mask": "0xfc00707f" - }, - "vsoxseg7ei32_v": { - "encoding": "110011-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xcc006027", - "mask": "0xfc00707f" - }, - "vsoxseg7ei64_v": { - "encoding": "110011-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xcc007027", - "mask": "0xfc00707f" - }, - "vsoxseg7ei8_v": { - "encoding": "110011-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xcc000027", - "mask": "0xfc00707f" - }, - "vsoxseg8ei16_v": { - "encoding": "111011-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xec005027", - "mask": "0xfc00707f" - }, - "vsoxseg8ei32_v": { - "encoding": "111011-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xec006027", - "mask": "0xfc00707f" - }, - "vsoxseg8ei64_v": { - "encoding": "111011-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xec007027", - "mask": "0xfc00707f" - }, - "vsoxseg8ei8_v": { - "encoding": "111011-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xec000027", - "mask": "0xfc00707f" - }, - "vsra_vi": { - "encoding": "101001-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa4003057", - "mask": "0xfc00707f" - }, - "vsra_vv": { - "encoding": "101001-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa4000057", - "mask": "0xfc00707f" - }, - "vsra_vx": { - "encoding": "101001-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa4004057", - "mask": "0xfc00707f" - }, - "vsrl_vi": { - "encoding": "101000-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa0003057", - "mask": "0xfc00707f" - }, - "vsrl_vv": { - "encoding": "101000-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa0000057", - "mask": "0xfc00707f" - }, - "vsrl_vx": { - "encoding": "101000-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa0004057", - "mask": "0xfc00707f" - }, - "vsse16_v": { - "encoding": "000010-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x8005027", - "mask": "0xfc00707f" - }, - "vsse32_v": { - "encoding": "000010-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x8006027", - "mask": "0xfc00707f" - }, - "vsse64_v": { - "encoding": "000010-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x8007027", - "mask": "0xfc00707f" - }, - "vsse8_v": { - "encoding": "000010-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x8000027", - "mask": "0xfc00707f" - }, - "vsseg2e16_v": { - "encoding": "001000-00000-----101-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x20005027", - "mask": "0xfdf0707f" - }, - "vsseg2e32_v": { - "encoding": "001000-00000-----110-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x20006027", - "mask": "0xfdf0707f" - }, - "vsseg2e64_v": { - "encoding": "001000-00000-----111-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x20007027", - "mask": "0xfdf0707f" - }, - "vsseg2e8_v": { - "encoding": "001000-00000-----000-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x20000027", - "mask": "0xfdf0707f" - }, - "vsseg3e16_v": { - "encoding": "010000-00000-----101-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x40005027", - "mask": "0xfdf0707f" - }, - "vsseg3e32_v": { - "encoding": "010000-00000-----110-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x40006027", - "mask": "0xfdf0707f" - }, - "vsseg3e64_v": { - "encoding": "010000-00000-----111-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x40007027", - "mask": "0xfdf0707f" - }, - "vsseg3e8_v": { - "encoding": "010000-00000-----000-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x40000027", - "mask": "0xfdf0707f" - }, - "vsseg4e16_v": { - "encoding": "011000-00000-----101-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x60005027", - "mask": "0xfdf0707f" - }, - "vsseg4e32_v": { - "encoding": "011000-00000-----110-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x60006027", - "mask": "0xfdf0707f" - }, - "vsseg4e64_v": { - "encoding": "011000-00000-----111-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x60007027", - "mask": "0xfdf0707f" - }, - "vsseg4e8_v": { - "encoding": "011000-00000-----000-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x60000027", - "mask": "0xfdf0707f" - }, - "vsseg5e16_v": { - "encoding": "100000-00000-----101-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x80005027", - "mask": "0xfdf0707f" - }, - "vsseg5e32_v": { - "encoding": "100000-00000-----110-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x80006027", - "mask": "0xfdf0707f" - }, - "vsseg5e64_v": { - "encoding": "100000-00000-----111-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x80007027", - "mask": "0xfdf0707f" - }, - "vsseg5e8_v": { - "encoding": "100000-00000-----000-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x80000027", - "mask": "0xfdf0707f" - }, - "vsseg6e16_v": { - "encoding": "101000-00000-----101-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xa0005027", - "mask": "0xfdf0707f" - }, - "vsseg6e32_v": { - "encoding": "101000-00000-----110-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xa0006027", - "mask": "0xfdf0707f" - }, - "vsseg6e64_v": { - "encoding": "101000-00000-----111-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xa0007027", - "mask": "0xfdf0707f" - }, - "vsseg6e8_v": { - "encoding": "101000-00000-----000-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xa0000027", - "mask": "0xfdf0707f" - }, - "vsseg7e16_v": { - "encoding": "110000-00000-----101-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xc0005027", - "mask": "0xfdf0707f" - }, - "vsseg7e32_v": { - "encoding": "110000-00000-----110-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xc0006027", - "mask": "0xfdf0707f" - }, - "vsseg7e64_v": { - "encoding": "110000-00000-----111-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xc0007027", - "mask": "0xfdf0707f" - }, - "vsseg7e8_v": { - "encoding": "110000-00000-----000-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xc0000027", - "mask": "0xfdf0707f" - }, - "vsseg8e16_v": { - "encoding": "111000-00000-----101-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xe0005027", - "mask": "0xfdf0707f" - }, - "vsseg8e32_v": { - "encoding": "111000-00000-----110-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xe0006027", - "mask": "0xfdf0707f" - }, - "vsseg8e64_v": { - "encoding": "111000-00000-----111-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xe0007027", - "mask": "0xfdf0707f" - }, - "vsseg8e8_v": { - "encoding": "111000-00000-----000-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xe0000027", - "mask": "0xfdf0707f" - }, - "vssra_vi": { - "encoding": "101011-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xac003057", - "mask": "0xfc00707f" - }, - "vssra_vv": { - "encoding": "101011-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xac000057", - "mask": "0xfc00707f" - }, - "vssra_vx": { - "encoding": "101011-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xac004057", - "mask": "0xfc00707f" - }, - "vssrl_vi": { - "encoding": "101010-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa8003057", - "mask": "0xfc00707f" - }, - "vssrl_vv": { - "encoding": "101010-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa8000057", - "mask": "0xfc00707f" - }, - "vssrl_vx": { - "encoding": "101010-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa8004057", - "mask": "0xfc00707f" - }, - "vssseg2e16_v": { - "encoding": "001010-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x28005027", - "mask": "0xfc00707f" - }, - "vssseg2e32_v": { - "encoding": "001010-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x28006027", - "mask": "0xfc00707f" - }, - "vssseg2e64_v": { - "encoding": "001010-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x28007027", - "mask": "0xfc00707f" - }, - "vssseg2e8_v": { - "encoding": "001010-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x28000027", - "mask": "0xfc00707f" - }, - "vssseg3e16_v": { - "encoding": "010010-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x48005027", - "mask": "0xfc00707f" - }, - "vssseg3e32_v": { - "encoding": "010010-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x48006027", - "mask": "0xfc00707f" - }, - "vssseg3e64_v": { - "encoding": "010010-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x48007027", - "mask": "0xfc00707f" - }, - "vssseg3e8_v": { - "encoding": "010010-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x48000027", - "mask": "0xfc00707f" - }, - "vssseg4e16_v": { - "encoding": "011010-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x68005027", - "mask": "0xfc00707f" - }, - "vssseg4e32_v": { - "encoding": "011010-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x68006027", - "mask": "0xfc00707f" - }, - "vssseg4e64_v": { - "encoding": "011010-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x68007027", - "mask": "0xfc00707f" - }, - "vssseg4e8_v": { - "encoding": "011010-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x68000027", - "mask": "0xfc00707f" - }, - "vssseg5e16_v": { - "encoding": "100010-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x88005027", - "mask": "0xfc00707f" - }, - "vssseg5e32_v": { - "encoding": "100010-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x88006027", - "mask": "0xfc00707f" - }, - "vssseg5e64_v": { - "encoding": "100010-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x88007027", - "mask": "0xfc00707f" - }, - "vssseg5e8_v": { - "encoding": "100010-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x88000027", - "mask": "0xfc00707f" - }, - "vssseg6e16_v": { - "encoding": "101010-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xa8005027", - "mask": "0xfc00707f" - }, - "vssseg6e32_v": { - "encoding": "101010-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xa8006027", - "mask": "0xfc00707f" - }, - "vssseg6e64_v": { - "encoding": "101010-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xa8007027", - "mask": "0xfc00707f" - }, - "vssseg6e8_v": { - "encoding": "101010-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xa8000027", - "mask": "0xfc00707f" - }, - "vssseg7e16_v": { - "encoding": "110010-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xc8005027", - "mask": "0xfc00707f" - }, - "vssseg7e32_v": { - "encoding": "110010-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xc8006027", - "mask": "0xfc00707f" - }, - "vssseg7e64_v": { - "encoding": "110010-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xc8007027", - "mask": "0xfc00707f" - }, - "vssseg7e8_v": { - "encoding": "110010-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xc8000027", - "mask": "0xfc00707f" - }, - "vssseg8e16_v": { - "encoding": "111010-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xe8005027", - "mask": "0xfc00707f" - }, - "vssseg8e32_v": { - "encoding": "111010-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xe8006027", - "mask": "0xfc00707f" - }, - "vssseg8e64_v": { - "encoding": "111010-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xe8007027", - "mask": "0xfc00707f" - }, - "vssseg8e8_v": { - "encoding": "111010-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xe8000027", - "mask": "0xfc00707f" - }, - "vssub_vv": { - "encoding": "100011-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x8c000057", - "mask": "0xfc00707f" - }, - "vssub_vx": { - "encoding": "100011-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x8c004057", - "mask": "0xfc00707f" - }, - "vssubu_vv": { - "encoding": "100010-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x88000057", - "mask": "0xfc00707f" - }, - "vssubu_vx": { - "encoding": "100010-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x88004057", - "mask": "0xfc00707f" - }, - "vsub_vv": { - "encoding": "000010-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x8000057", - "mask": "0xfc00707f" - }, - "vsub_vx": { - "encoding": "000010-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x8004057", - "mask": "0xfc00707f" - }, - "vsuxei16_v": { - "encoding": "000001-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4005027", - "mask": "0xfc00707f" - }, - "vsuxei32_v": { - "encoding": "000001-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4006027", - "mask": "0xfc00707f" - }, - "vsuxei64_v": { - "encoding": "000001-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4007027", - "mask": "0xfc00707f" - }, - "vsuxei8_v": { - "encoding": "000001-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4000027", - "mask": "0xfc00707f" - }, - "vsuxseg2ei16_v": { - "encoding": "001001-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x24005027", - "mask": "0xfc00707f" - }, - "vsuxseg2ei32_v": { - "encoding": "001001-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x24006027", - "mask": "0xfc00707f" - }, - "vsuxseg2ei64_v": { - "encoding": "001001-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x24007027", - "mask": "0xfc00707f" - }, - "vsuxseg2ei8_v": { - "encoding": "001001-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x24000027", - "mask": "0xfc00707f" - }, - "vsuxseg3ei16_v": { - "encoding": "010001-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x44005027", - "mask": "0xfc00707f" - }, - "vsuxseg3ei32_v": { - "encoding": "010001-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x44006027", - "mask": "0xfc00707f" - }, - "vsuxseg3ei64_v": { - "encoding": "010001-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x44007027", - "mask": "0xfc00707f" - }, - "vsuxseg3ei8_v": { - "encoding": "010001-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x44000027", - "mask": "0xfc00707f" - }, - "vsuxseg4ei16_v": { - "encoding": "011001-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x64005027", - "mask": "0xfc00707f" - }, - "vsuxseg4ei32_v": { - "encoding": "011001-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x64006027", - "mask": "0xfc00707f" - }, - "vsuxseg4ei64_v": { - "encoding": "011001-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x64007027", - "mask": "0xfc00707f" - }, - "vsuxseg4ei8_v": { - "encoding": "011001-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x64000027", - "mask": "0xfc00707f" - }, - "vsuxseg5ei16_v": { - "encoding": "100001-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x84005027", - "mask": "0xfc00707f" - }, - "vsuxseg5ei32_v": { - "encoding": "100001-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x84006027", - "mask": "0xfc00707f" - }, - "vsuxseg5ei64_v": { - "encoding": "100001-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x84007027", - "mask": "0xfc00707f" - }, - "vsuxseg5ei8_v": { - "encoding": "100001-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x84000027", - "mask": "0xfc00707f" - }, - "vsuxseg6ei16_v": { - "encoding": "101001-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa4005027", - "mask": "0xfc00707f" - }, - "vsuxseg6ei32_v": { - "encoding": "101001-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa4006027", - "mask": "0xfc00707f" - }, - "vsuxseg6ei64_v": { - "encoding": "101001-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa4007027", - "mask": "0xfc00707f" - }, - "vsuxseg6ei8_v": { - "encoding": "101001-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa4000027", - "mask": "0xfc00707f" - }, - "vsuxseg7ei16_v": { - "encoding": "110001-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc4005027", - "mask": "0xfc00707f" - }, - "vsuxseg7ei32_v": { - "encoding": "110001-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc4006027", - "mask": "0xfc00707f" - }, - "vsuxseg7ei64_v": { - "encoding": "110001-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc4007027", - "mask": "0xfc00707f" - }, - "vsuxseg7ei8_v": { - "encoding": "110001-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc4000027", - "mask": "0xfc00707f" - }, - "vsuxseg8ei16_v": { - "encoding": "111001-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xe4005027", - "mask": "0xfc00707f" - }, - "vsuxseg8ei32_v": { - "encoding": "111001-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xe4006027", - "mask": "0xfc00707f" - }, - "vsuxseg8ei64_v": { - "encoding": "111001-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xe4007027", - "mask": "0xfc00707f" - }, - "vsuxseg8ei8_v": { - "encoding": "111001-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xe4000027", - "mask": "0xfc00707f" - }, - "vwadd_vv": { - "encoding": "110001-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc4002057", - "mask": "0xfc00707f" - }, - "vwadd_vx": { - "encoding": "110001-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc4006057", - "mask": "0xfc00707f" - }, - "vwadd_wv": { - "encoding": "110101-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xd4002057", - "mask": "0xfc00707f" - }, - "vwadd_wx": { - "encoding": "110101-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xd4006057", - "mask": "0xfc00707f" - }, - "vwaddu_vv": { - "encoding": "110000-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc0002057", - "mask": "0xfc00707f" - }, - "vwaddu_vx": { - "encoding": "110000-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc0006057", - "mask": "0xfc00707f" - }, - "vwaddu_wv": { - "encoding": "110100-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xd0002057", - "mask": "0xfc00707f" - }, - "vwaddu_wx": { - "encoding": "110100-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xd0006057", - "mask": "0xfc00707f" - }, - "vwmacc_vv": { - "encoding": "111101-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xf4002057", - "mask": "0xfc00707f" - }, - "vwmacc_vx": { - "encoding": "111101-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xf4006057", - "mask": "0xfc00707f" - }, - "vwmaccsu_vv": { - "encoding": "111111-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xfc002057", - "mask": "0xfc00707f" - }, - "vwmaccsu_vx": { - "encoding": "111111-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xfc006057", - "mask": "0xfc00707f" - }, - "vwmaccu_vv": { - "encoding": "111100-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xf0002057", - "mask": "0xfc00707f" - }, - "vwmaccu_vx": { - "encoding": "111100-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xf0006057", - "mask": "0xfc00707f" - }, - "vwmaccus_vx": { - "encoding": "111110-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xf8006057", - "mask": "0xfc00707f" - }, - "vwmul_vv": { - "encoding": "111011-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xec002057", - "mask": "0xfc00707f" - }, - "vwmul_vx": { - "encoding": "111011-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xec006057", - "mask": "0xfc00707f" - }, - "vwmulsu_vv": { - "encoding": "111010-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xe8002057", - "mask": "0xfc00707f" - }, - "vwmulsu_vx": { - "encoding": "111010-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xe8006057", - "mask": "0xfc00707f" - }, - "vwmulu_vv": { - "encoding": "111000-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xe0002057", - "mask": "0xfc00707f" - }, - "vwmulu_vx": { - "encoding": "111000-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xe0006057", - "mask": "0xfc00707f" - }, - "vwredsum_vs": { - "encoding": "110001-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc4000057", - "mask": "0xfc00707f" - }, - "vwredsumu_vs": { - "encoding": "110000-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc0000057", - "mask": "0xfc00707f" - }, - "vwsll_vi": { - "encoding": "110101-----------011-----1010111", - "variable_fields": ["vd", "zimm5", "vs2", "vm"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0xd4003057", - "mask": "0xfc00707f" - }, - "vwsll_vv": { - "encoding": "110101-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0xd4000057", - "mask": "0xfc00707f" - }, - "vwsll_vx": { - "encoding": "110101-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0xd4004057", - "mask": "0xfc00707f" - }, - "vwsub_vv": { - "encoding": "110011-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xcc002057", - "mask": "0xfc00707f" - }, - "vwsub_vx": { - "encoding": "110011-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xcc006057", - "mask": "0xfc00707f" - }, - "vwsub_wv": { - "encoding": "110111-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xdc002057", - "mask": "0xfc00707f" - }, - "vwsub_wx": { - "encoding": "110111-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xdc006057", - "mask": "0xfc00707f" - }, - "vwsubu_vv": { - "encoding": "110010-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc8002057", - "mask": "0xfc00707f" - }, - "vwsubu_vx": { - "encoding": "110010-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc8006057", - "mask": "0xfc00707f" - }, - "vwsubu_wv": { - "encoding": "110110-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xd8002057", - "mask": "0xfc00707f" - }, - "vwsubu_wx": { - "encoding": "110110-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xd8006057", - "mask": "0xfc00707f" - }, - "vxor_vi": { - "encoding": "001011-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x2c003057", - "mask": "0xfc00707f" - }, - "vxor_vv": { - "encoding": "001011-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x2c000057", - "mask": "0xfc00707f" - }, - "vxor_vx": { - "encoding": "001011-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x2c004057", - "mask": "0xfc00707f" - }, - "vzext_vf2": { - "encoding": "010010------00110010-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x48032057", - "mask": "0xfc0ff07f" - }, - "vzext_vf4": { - "encoding": "010010------00100010-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x48022057", - "mask": "0xfc0ff07f" - }, - "vzext_vf8": { - "encoding": "010010------00010010-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x48012057", - "mask": "0xfc0ff07f" - }, - "wfi": { - "encoding": "00010000010100000000000001110011", - "variable_fields": [], - "extension": ["rv_sm"], - "match": "0x10500073", - "mask": "0xffffffff" - }, - "wrs_nto": { - "encoding": "00000000110100000000000001110011", - "variable_fields": [], - "extension": ["rv_zawrs"], - "match": "0xd00073", - "mask": "0xffffffff" - }, - "wrs_sto": { - "encoding": "00000001110100000000000001110011", - "variable_fields": [], - "extension": ["rv_zawrs"], - "match": "0x1d00073", - "mask": "0xffffffff" - }, - "xnor": { - "encoding": "0100000----------100-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbb", "rv_zbkb", "rv_zk", "rv_zkn", "rv_zks"], - "match": "0x40004033", - "mask": "0xfe00707f" - }, - "xor": { - "encoding": "0000000----------100-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_i"], - "match": "0x4033", - "mask": "0xfe00707f" - }, - "xori": { - "encoding": "-----------------100-----0010011", - "variable_fields": ["rd", "rs1", "imm12"], - "extension": ["rv_i"], - "match": "0x4013", - "mask": "0x707f" - }, - "xperm4": { - "encoding": "0010100----------010-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zbkx"], - "match": "0x28002033", - "mask": "0xfe00707f" - }, - "xperm8": { - "encoding": "0010100----------100-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zbkx"], - "match": "0x28004033", - "mask": "0xfe00707f" - }, - "zext_h": { - "encoding": "000010000000-----100-----0111011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_b", "rv64_zbb"], - "match": "0x800403b", - "mask": "0xfff0707f" - }, - "zip": { - "encoding": "000010001111-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv32_zbkb"], - "match": "0x8f01013", - "mask": "0xfff0707f" - } -} diff --git a/backends/opcodes_maker/output/priv-instr-table.tex b/backends/opcodes_maker/output/priv-instr-table.tex deleted file mode 100644 index 9422ef068..000000000 --- a/backends/opcodes_maker/output/priv-instr-table.tex +++ /dev/null @@ -1,326 +0,0 @@ - -\newpage - -\begin{table}[p] -\begin{small} -\begin{center} - \begin{tabular} {p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}p{0.002in}l} - & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & \\ - - & - - \multicolumn{3}{l}{31} & - \multicolumn{2}{r}{27} & - \multicolumn{1}{c}{26} & - \multicolumn{1}{r}{25} & - \multicolumn{3}{l}{24} & - \multicolumn{2}{r}{20} & - \multicolumn{3}{l}{19} & - \multicolumn{2}{r}{15} & - \multicolumn{2}{l}{14} & - \multicolumn{1}{r}{12} & - \multicolumn{4}{l}{11} & - \multicolumn{1}{r}{7} & - \multicolumn{6}{l}{6} & - \multicolumn{1}{r}{0} \\ - \cline{2-33} -& - - -\multicolumn{7}{|c|}{funct7} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{funct3} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{opcode} & R-type \\ -\cline{2-33} -& - -\multicolumn{12}{|c|}{imm[11:0]} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{funct3} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{opcode} & I-type \\ -\cline{2-33} -& - - - - -\multicolumn{32}{c}{} & \\ -\multicolumn{32}{c}{\bf Trap-Return Instructions } & \\ -\cline{2-33} - - & -\multicolumn{7}{|c|}{0001000} & -\multicolumn{5}{c|}{00010} & -\multicolumn{5}{c|}{00000} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{00000} & -\multicolumn{7}{|c|}{1110011} & SRET \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0011000} & -\multicolumn{5}{c|}{00010} & -\multicolumn{5}{c|}{00000} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{00000} & -\multicolumn{7}{|c|}{1110011} & MRET \\ -\cline{2-33} -& - - - - -\multicolumn{32}{c}{} & \\ -\multicolumn{32}{c}{\bf Interrupt-Management Instructions } & \\ -\cline{2-33} - - & -\multicolumn{7}{|c|}{0001000} & -\multicolumn{5}{c|}{00101} & -\multicolumn{5}{c|}{00000} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{00000} & -\multicolumn{7}{|c|}{1110011} & WFI \\ -\cline{2-33} -& - - - - -\multicolumn{32}{c}{} & \\ -\multicolumn{32}{c}{\bf Supervisor Memory-Management Instructions } & \\ -\cline{2-33} - - & -\multicolumn{7}{|c|}{0001001} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{00000} & -\multicolumn{7}{|c|}{1110011} & SFENCE.VMA \\ -\cline{2-33} -& - - - - -\multicolumn{32}{c}{} & \\ -\multicolumn{32}{c}{\bf Hypervisor Memory-Management Instructions } & \\ -\cline{2-33} - - & -\multicolumn{7}{|c|}{0010001} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{00000} & -\multicolumn{7}{|c|}{1110011} & HFENCE.VVMA \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0110001} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{00000} & -\multicolumn{7}{|c|}{1110011} & HFENCE.GVMA \\ -\cline{2-33} -& - - - - -\multicolumn{32}{c}{} & \\ -\multicolumn{32}{c}{\bf Hypervisor Virtual-Machine Load and Store Instructions } & \\ -\cline{2-33} - - & -\multicolumn{7}{|c|}{0110000} & -\multicolumn{5}{c|}{00000} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{100} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1110011} & HLV.B \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0110000} & -\multicolumn{5}{c|}{00001} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{100} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1110011} & HLV.BU \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0110010} & -\multicolumn{5}{c|}{00000} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{100} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1110011} & HLV.H \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0110010} & -\multicolumn{5}{c|}{00001} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{100} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1110011} & HLV.HU \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0110100} & -\multicolumn{5}{c|}{00000} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{100} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1110011} & HLV.W \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0110010} & -\multicolumn{5}{c|}{00011} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{100} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1110011} & HLVX.HU \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0110100} & -\multicolumn{5}{c|}{00011} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{100} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1110011} & HLVX.WU \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0110001} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{100} & -\multicolumn{5}{c|}{00000} & -\multicolumn{7}{|c|}{1110011} & HSV.B \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0110011} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{100} & -\multicolumn{5}{c|}{00000} & -\multicolumn{7}{|c|}{1110011} & HSV.H \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0110101} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{100} & -\multicolumn{5}{c|}{00000} & -\multicolumn{7}{|c|}{1110011} & HSV.W \\ -\cline{2-33} -& - - - - -\multicolumn{32}{c}{} & \\ -\multicolumn{32}{c}{\bf Hypervisor Virtual-Machine Load and Store Instructions, RV64 only } & \\ -\cline{2-33} - - & -\multicolumn{7}{|c|}{0110100} & -\multicolumn{5}{c|}{00001} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{100} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1110011} & HLV.WU \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0110110} & -\multicolumn{5}{c|}{00000} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{100} & -\multicolumn{5}{c|}{rd} & -\multicolumn{7}{|c|}{1110011} & HLV.D \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0110111} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{100} & -\multicolumn{5}{c|}{00000} & -\multicolumn{7}{|c|}{1110011} & HSV.D \\ -\cline{2-33} -& - - - - -\multicolumn{32}{c}{} & \\ -\multicolumn{32}{c}{\bf Svinval Memory-Management Instructions } & \\ -\cline{2-33} - - & -\multicolumn{7}{|c|}{0001011} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{00000} & -\multicolumn{7}{|c|}{1110011} & SINVAL.VMA \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0001100} & -\multicolumn{5}{c|}{00000} & -\multicolumn{5}{c|}{00000} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{00000} & -\multicolumn{7}{|c|}{1110011} & SFENCE.W.INVAL \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0001100} & -\multicolumn{5}{c|}{00001} & -\multicolumn{5}{c|}{00000} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{00000} & -\multicolumn{7}{|c|}{1110011} & SFENCE.INVAL.IR \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0010011} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{00000} & -\multicolumn{7}{|c|}{1110011} & HINVAL.VVMA \\ -\cline{2-33} -& - -\multicolumn{7}{|c|}{0110011} & -\multicolumn{5}{c|}{rs2} & -\multicolumn{5}{c|}{rs1} & -\multicolumn{3}{c|}{000} & -\multicolumn{5}{c|}{00000} & -\multicolumn{7}{|c|}{1110011} & HINVAL.GVMA \\ -\cline{2-33} -& - - - - -\end{tabular} -\end{center} -\end{small} -\caption{RISC-V Privileged Instructions} -\end{table} diff --git a/backends/opcodes_maker/processed_instr_dict.json b/backends/opcodes_maker/processed_instr_dict.json deleted file mode 100755 index c22017c25..000000000 --- a/backends/opcodes_maker/processed_instr_dict.json +++ /dev/null @@ -1,8044 +0,0 @@ -{ - "add": { - "encoding": "0000000----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_i"], - "match": "0x33", - "mask": "0xfe00707f" - }, - "add_uw": { - "encoding": "0000100----------000-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_b", "rv64_zba"], - "match": "0x800003b", - "mask": "0xfe00707f" - }, - "addi": { - "encoding": "-----------------000-----0010011", - "variable_fields": ["rd", "rs1", "imm12"], - "extension": ["rv_i"], - "match": "0x13", - "mask": "0x707f" - }, - "addiw": { - "encoding": "-----------------000-----0011011", - "variable_fields": ["rd", "rs1", "imm12"], - "extension": ["rv64_i"], - "match": "0x1b", - "mask": "0x707f" - }, - "addw": { - "encoding": "0000000----------000-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_i"], - "match": "0x3b", - "mask": "0xfe00707f" - }, - "aes32dsi": { - "encoding": "--10101----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2", "bs"], - "extension": ["rv32_zk", "rv32_zkn", "rv32_zknd"], - "match": "0x2a000033", - "mask": "0x3e00707f" - }, - "aes32dsmi": { - "encoding": "--10111----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2", "bs"], - "extension": ["rv32_zk", "rv32_zkn", "rv32_zknd"], - "match": "0x2e000033", - "mask": "0x3e00707f" - }, - "aes32esi": { - "encoding": "--10001----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2", "bs"], - "extension": ["rv32_zk", "rv32_zkn", "rv32_zkne"], - "match": "0x22000033", - "mask": "0x3e00707f" - }, - "aes32esmi": { - "encoding": "--10011----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2", "bs"], - "extension": ["rv32_zk", "rv32_zkn", "rv32_zkne"], - "match": "0x26000033", - "mask": "0x3e00707f" - }, - "aes64ds": { - "encoding": "0011101----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_zk", "rv64_zkn", "rv64_zknd"], - "match": "0x3a000033", - "mask": "0xfe00707f" - }, - "aes64dsm": { - "encoding": "0011111----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_zk", "rv64_zkn", "rv64_zknd"], - "match": "0x3e000033", - "mask": "0xfe00707f" - }, - "aes64es": { - "encoding": "0011001----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_zk", "rv64_zkn", "rv64_zkne"], - "match": "0x32000033", - "mask": "0xfe00707f" - }, - "aes64esm": { - "encoding": "0011011----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_zk", "rv64_zkn", "rv64_zkne"], - "match": "0x36000033", - "mask": "0xfe00707f" - }, - "aes64im": { - "encoding": "001100000000-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_zk", "rv64_zkn", "rv64_zknd"], - "match": "0x30001013", - "mask": "0xfff0707f" - }, - "aes64ks1i": { - "encoding": "00110001---------001-----0010011", - "variable_fields": ["rd", "rs1", "rnum"], - "extension": ["rv64_zk", "rv64_zkn", "rv64_zknd", "rv64_zkne"], - "match": "0x31001013", - "mask": "0xff00707f" - }, - "aes64ks2": { - "encoding": "0111111----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_zk", "rv64_zkn", "rv64_zknd", "rv64_zkne"], - "match": "0x7e000033", - "mask": "0xfe00707f" - }, - "amoadd_b": { - "encoding": "00000------------000-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zabha"], - "match": "0x2f", - "mask": "0xf800707f" - }, - "amoadd_d": { - "encoding": "00000------------011-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv64_a", "rv64_zaamo"], - "match": "0x302f", - "mask": "0xf800707f" - }, - "amoadd_h": { - "encoding": "00000------------001-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zabha"], - "match": "0x102f", - "mask": "0xf800707f" - }, - "amoadd_w": { - "encoding": "00000------------010-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_a", "rv_zaamo"], - "match": "0x202f", - "mask": "0xf800707f" - }, - "amoand_b": { - "encoding": "01100------------000-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zabha"], - "match": "0x6000002f", - "mask": "0xf800707f" - }, - "amoand_d": { - "encoding": "01100------------011-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv64_a", "rv64_zaamo"], - "match": "0x6000302f", - "mask": "0xf800707f" - }, - "amoand_h": { - "encoding": "01100------------001-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zabha"], - "match": "0x6000102f", - "mask": "0xf800707f" - }, - "amoand_w": { - "encoding": "01100------------010-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_a", "rv_zaamo"], - "match": "0x6000202f", - "mask": "0xf800707f" - }, - "amocas_b": { - "encoding": "00101------------000-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zabha"], - "match": "0x2800002f", - "mask": "0xf800707f" - }, - "amocas_d": { - "encoding": "00101------------011-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zacas"], - "match": "0x2800302f", - "mask": "0xf800707f" - }, - "amocas_h": { - "encoding": "00101------------001-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zabha"], - "match": "0x2800102f", - "mask": "0xf800707f" - }, - "amocas_q": { - "encoding": "00101------------100-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv64_zacas"], - "match": "0x2800402f", - "mask": "0xf800707f" - }, - "amocas_w": { - "encoding": "00101------------010-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zacas"], - "match": "0x2800202f", - "mask": "0xf800707f" - }, - "amomax_b": { - "encoding": "10100------------000-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zabha"], - "match": "0xa000002f", - "mask": "0xf800707f" - }, - "amomax_d": { - "encoding": "10100------------011-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv64_a", "rv64_zaamo"], - "match": "0xa000302f", - "mask": "0xf800707f" - }, - "amomax_h": { - "encoding": "10100------------001-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zabha"], - "match": "0xa000102f", - "mask": "0xf800707f" - }, - "amomax_w": { - "encoding": "10100------------010-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_a", "rv_zaamo"], - "match": "0xa000202f", - "mask": "0xf800707f" - }, - "amomaxu_b": { - "encoding": "11100------------000-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zabha"], - "match": "0xe000002f", - "mask": "0xf800707f" - }, - "amomaxu_d": { - "encoding": "11100------------011-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv64_a", "rv64_zaamo"], - "match": "0xe000302f", - "mask": "0xf800707f" - }, - "amomaxu_h": { - "encoding": "11100------------001-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zabha"], - "match": "0xe000102f", - "mask": "0xf800707f" - }, - "amomaxu_w": { - "encoding": "11100------------010-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_a", "rv_zaamo"], - "match": "0xe000202f", - "mask": "0xf800707f" - }, - "amomin_b": { - "encoding": "10000------------000-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zabha"], - "match": "0x8000002f", - "mask": "0xf800707f" - }, - "amomin_d": { - "encoding": "10000------------011-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv64_a", "rv64_zaamo"], - "match": "0x8000302f", - "mask": "0xf800707f" - }, - "amomin_h": { - "encoding": "10000------------001-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zabha"], - "match": "0x8000102f", - "mask": "0xf800707f" - }, - "amomin_w": { - "encoding": "10000------------010-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_a", "rv_zaamo"], - "match": "0x8000202f", - "mask": "0xf800707f" - }, - "amominu_b": { - "encoding": "11000------------000-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zabha"], - "match": "0xc000002f", - "mask": "0xf800707f" - }, - "amominu_d": { - "encoding": "11000------------011-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv64_a", "rv64_zaamo"], - "match": "0xc000302f", - "mask": "0xf800707f" - }, - "amominu_h": { - "encoding": "11000------------001-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zabha"], - "match": "0xc000102f", - "mask": "0xf800707f" - }, - "amominu_w": { - "encoding": "11000------------010-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_a", "rv_zaamo"], - "match": "0xc000202f", - "mask": "0xf800707f" - }, - "amoor_b": { - "encoding": "01000------------000-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zabha"], - "match": "0x4000002f", - "mask": "0xf800707f" - }, - "amoor_d": { - "encoding": "01000------------011-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv64_a", "rv64_zaamo"], - "match": "0x4000302f", - "mask": "0xf800707f" - }, - "amoor_h": { - "encoding": "01000------------001-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zabha"], - "match": "0x4000102f", - "mask": "0xf800707f" - }, - "amoor_w": { - "encoding": "01000------------010-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_a", "rv_zaamo"], - "match": "0x4000202f", - "mask": "0xf800707f" - }, - "amoswap_b": { - "encoding": "00001------------000-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zabha"], - "match": "0x800002f", - "mask": "0xf800707f" - }, - "amoswap_d": { - "encoding": "00001------------011-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv64_a", "rv64_zaamo"], - "match": "0x800302f", - "mask": "0xf800707f" - }, - "amoswap_h": { - "encoding": "00001------------001-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zabha"], - "match": "0x800102f", - "mask": "0xf800707f" - }, - "amoswap_w": { - "encoding": "00001------------010-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_a", "rv_zaamo"], - "match": "0x800202f", - "mask": "0xf800707f" - }, - "amoxor_b": { - "encoding": "00100------------000-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zabha"], - "match": "0x2000002f", - "mask": "0xf800707f" - }, - "amoxor_d": { - "encoding": "00100------------011-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv64_a", "rv64_zaamo"], - "match": "0x2000302f", - "mask": "0xf800707f" - }, - "amoxor_h": { - "encoding": "00100------------001-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zabha"], - "match": "0x2000102f", - "mask": "0xf800707f" - }, - "amoxor_w": { - "encoding": "00100------------010-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_a", "rv_zaamo"], - "match": "0x2000202f", - "mask": "0xf800707f" - }, - "and": { - "encoding": "0000000----------111-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_i"], - "match": "0x7033", - "mask": "0xfe00707f" - }, - "andi": { - "encoding": "-----------------111-----0010011", - "variable_fields": ["rd", "rs1", "imm12"], - "extension": ["rv_i"], - "match": "0x7013", - "mask": "0x707f" - }, - "andn": { - "encoding": "0100000----------111-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbb", "rv_zbkb", "rv_zk", "rv_zkn", "rv_zks"], - "match": "0x40007033", - "mask": "0xfe00707f" - }, - "auipc": { - "encoding": "-------------------------0010111", - "variable_fields": ["rd", "imm20"], - "extension": ["rv_i"], - "match": "0x17", - "mask": "0x7f" - }, - "bclr": { - "encoding": "0100100----------001-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbs"], - "match": "0x48001033", - "mask": "0xfe00707f" - }, - "bclri": { - "encoding": "010010-----------001-----0010011", - "variable_fields": ["rd", "rs1", "shamtd"], - "extension": ["rv64_b", "rv64_zbs"], - "match": "0x48001013", - "mask": "0xfc00707f" - }, - "beq": { - "encoding": "-----------------000-----1100011", - "variable_fields": ["rs1", "rs2", "bimm12hi", "bimm12lo"], - "extension": ["rv_i"], - "match": "0x63", - "mask": "0x707f" - }, - "bext": { - "encoding": "0100100----------101-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbs"], - "match": "0x48005033", - "mask": "0xfe00707f" - }, - "bexti": { - "encoding": "010010-----------101-----0010011", - "variable_fields": ["rd", "rs1", "shamtd"], - "extension": ["rv64_b", "rv64_zbs"], - "match": "0x48005013", - "mask": "0xfc00707f" - }, - "bge": { - "encoding": "-----------------101-----1100011", - "variable_fields": ["rs1", "rs2", "bimm12hi", "bimm12lo"], - "extension": ["rv_i"], - "match": "0x5063", - "mask": "0x707f" - }, - "bgeu": { - "encoding": "-----------------111-----1100011", - "variable_fields": ["rs1", "rs2", "bimm12hi", "bimm12lo"], - "extension": ["rv_i"], - "match": "0x7063", - "mask": "0x707f" - }, - "binv": { - "encoding": "0110100----------001-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbs"], - "match": "0x68001033", - "mask": "0xfe00707f" - }, - "binvi": { - "encoding": "011010-----------001-----0010011", - "variable_fields": ["rd", "rs1", "shamtd"], - "extension": ["rv64_b", "rv64_zbs"], - "match": "0x68001013", - "mask": "0xfc00707f" - }, - "blt": { - "encoding": "-----------------100-----1100011", - "variable_fields": ["rs1", "rs2", "bimm12hi", "bimm12lo"], - "extension": ["rv_i"], - "match": "0x4063", - "mask": "0x707f" - }, - "bltu": { - "encoding": "-----------------110-----1100011", - "variable_fields": ["rs1", "rs2", "bimm12hi", "bimm12lo"], - "extension": ["rv_i"], - "match": "0x6063", - "mask": "0x707f" - }, - "bne": { - "encoding": "-----------------001-----1100011", - "variable_fields": ["rs1", "rs2", "bimm12hi", "bimm12lo"], - "extension": ["rv_i"], - "match": "0x1063", - "mask": "0x707f" - }, - "brev8": { - "encoding": "011010000111-----101-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_zbkb"], - "match": "0x68705013", - "mask": "0xfff0707f" - }, - "bset": { - "encoding": "0010100----------001-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbs"], - "match": "0x28001033", - "mask": "0xfe00707f" - }, - "bseti": { - "encoding": "001010-----------001-----0010011", - "variable_fields": ["rd", "rs1", "shamtd"], - "extension": ["rv64_b", "rv64_zbs"], - "match": "0x28001013", - "mask": "0xfc00707f" - }, - "c_add": { - "encoding": "----------------1001----------10", - "variable_fields": ["rd", "rs2"], - "extension": ["rv_c", "rv_zca"], - "match": "0x9002", - "mask": "0xf003" - }, - "c_addi": { - "encoding": "----------------000-----------01", - "variable_fields": ["rd"], - "extension": ["rv_c", "rv_zca"], - "match": "0x1", - "mask": "0xe003" - }, - "c_addi16sp": { - "encoding": "----------------011-00010-----01", - "variable_fields": [], - "extension": ["rv_c", "rv_zca"], - "match": "0x6101", - "mask": "0xef83" - }, - "c_addi4spn": { - "encoding": "----------------000-----------00", - "variable_fields": ["rd"], - "extension": ["rv_c", "rv_zca"], - "match": "0x0", - "mask": "0xe003" - }, - "c_addiw": { - "encoding": "----------------001-----------01", - "variable_fields": ["rd"], - "extension": ["rv64_c", "rv64_zca"], - "match": "0x2001", - "mask": "0xe003" - }, - "c_addw": { - "encoding": "----------------100111---01---01", - "variable_fields": ["rd", "rs2"], - "extension": ["rv64_c", "rv64_zca"], - "match": "0x9c21", - "mask": "0xfc63" - }, - "c_and": { - "encoding": "----------------100011---11---01", - "variable_fields": ["rd", "rs2"], - "extension": ["rv_c", "rv_zca"], - "match": "0x8c61", - "mask": "0xfc63" - }, - "c_andi": { - "encoding": "----------------100-10--------01", - "variable_fields": ["rd"], - "extension": ["rv_c", "rv_zca"], - "match": "0x8801", - "mask": "0xec03" - }, - "c_beqz": { - "encoding": "----------------110-----------01", - "variable_fields": ["rs1"], - "extension": ["rv_c", "rv_zca"], - "match": "0xc001", - "mask": "0xe003" - }, - "c_bnez": { - "encoding": "----------------111-----------01", - "variable_fields": ["rs1"], - "extension": ["rv_c", "rv_zca"], - "match": "0xe001", - "mask": "0xe003" - }, - "c_ebreak": { - "encoding": "----------------1001000000000010", - "variable_fields": [], - "extension": ["rv_c", "rv_zca"], - "match": "0x9002", - "mask": "0xffff" - }, - "c_fld": { - "encoding": "----------------001-----------00", - "variable_fields": ["rs1", "rd"], - "extension": ["rv_c", "rv_d"], - "match": "0x2000", - "mask": "0xe003" - }, - "c_fldsp": { - "encoding": "----------------001-----------10", - "variable_fields": ["rd"], - "extension": ["rv_c", "rv_d"], - "match": "0x2002", - "mask": "0xe003" - }, - "c_flw": { - "encoding": "----------------011-----------00", - "variable_fields": ["rs1", "rd"], - "extension": ["rv_c", "rv_f"], - "match": "0x6000", - "mask": "0xe003" - }, - "c_flwsp": { - "encoding": "----------------011-----------10", - "variable_fields": ["rd"], - "extension": ["rv_c", "rv_f"], - "match": "0x6002", - "mask": "0xe003" - }, - "c_fsd": { - "encoding": "----------------101-----------00", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv_c", "rv_d"], - "match": "0xa000", - "mask": "0xe003" - }, - "c_fsdsp": { - "encoding": "----------------101-----------10", - "variable_fields": ["rs2"], - "extension": ["rv_c", "rv_d"], - "match": "0xa002", - "mask": "0xe003" - }, - "c_fsw": { - "encoding": "----------------111-----------00", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv_c", "rv_f"], - "match": "0xe000", - "mask": "0xe003" - }, - "c_fswsp": { - "encoding": "----------------111-----------10", - "variable_fields": ["rs2"], - "extension": ["rv_c", "rv_f"], - "match": "0xe002", - "mask": "0xe003" - }, - "c_j": { - "encoding": "----------------101-----------01", - "variable_fields": [], - "extension": ["rv_c", "rv_zca"], - "match": "0xa001", - "mask": "0xe003" - }, - "c_jal": { - "encoding": "----------------001-----------01", - "variable_fields": [], - "extension": ["rv32_c", "rv32_zca"], - "match": "0x2001", - "mask": "0xe003" - }, - "c_jalr": { - "encoding": "----------------1001-----0000010", - "variable_fields": ["rs1"], - "extension": ["rv_c", "rv_zca"], - "match": "0x9002", - "mask": "0xf07f" - }, - "c_jr": { - "encoding": "----------------1000-----0000010", - "variable_fields": ["rs1"], - "extension": ["rv_c", "rv_zca"], - "match": "0x8002", - "mask": "0xf07f" - }, - "c_lbu": { - "encoding": "----------------100000--------00", - "variable_fields": ["rs1", "rd"], - "extension": ["rv_zcb", "rv_zce"], - "match": "0x8000", - "mask": "0xfc03" - }, - "c_ld": { - "encoding": "----------------011-----------00", - "variable_fields": ["rs1", "rd"], - "extension": ["rv64_c", "rv64_zca"], - "match": "0x6000", - "mask": "0xe003" - }, - "c_ldsp": { - "encoding": "----------------011-----------10", - "variable_fields": ["rd"], - "extension": ["rv64_c", "rv64_zca"], - "match": "0x6002", - "mask": "0xe003" - }, - "c_li": { - "encoding": "----------------010-----------01", - "variable_fields": ["rd"], - "extension": ["rv_c", "rv_zca"], - "match": "0x4001", - "mask": "0xe003" - }, - "c_lui": { - "encoding": "----------------011-----------01", - "variable_fields": ["rd"], - "extension": ["rv_c", "rv_zca"], - "match": "0x6001", - "mask": "0xe003" - }, - "c_lw": { - "encoding": "----------------010-----------00", - "variable_fields": ["rs1", "rd"], - "extension": ["rv_c", "rv_zca"], - "match": "0x4000", - "mask": "0xe003" - }, - "c_lwsp": { - "encoding": "----------------010-----------10", - "variable_fields": ["rd"], - "extension": ["rv_c", "rv_zca"], - "match": "0x4002", - "mask": "0xe003" - }, - "c_mul": { - "encoding": "----------------100111---10---01", - "variable_fields": ["rs2", "rd"], - "extension": ["rv_zcb", "rv_zmmul"], - "match": "0x9c41", - "mask": "0xfc63" - }, - "c_mv": { - "encoding": "----------------1000----------10", - "variable_fields": ["rs2", "rd"], - "extension": ["rv_c", "rv_zca"], - "match": "0x8002", - "mask": "0xf003" - }, - "c_nop": { - "encoding": "----------------000-00000-----01", - "variable_fields": [], - "extension": ["rv_c", "rv_zca"], - "match": "0x1", - "mask": "0xef83" - }, - "c_not": { - "encoding": "----------------100111---1110101", - "variable_fields": ["rd"], - "extension": ["rv_zcb", "rv_zce"], - "match": "0x9c75", - "mask": "0xfc7f" - }, - "c_or": { - "encoding": "----------------100011---10---01", - "variable_fields": ["rd", "rs2"], - "extension": ["rv_c", "rv_zca"], - "match": "0x8c41", - "mask": "0xfc63" - }, - "c_sb": { - "encoding": "----------------100010--------00", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv_zcb", "rv_zce"], - "match": "0x8800", - "mask": "0xfc03" - }, - "c_sd": { - "encoding": "----------------111-----------00", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv64_c", "rv64_zca"], - "match": "0xe000", - "mask": "0xe003" - }, - "c_sdsp": { - "encoding": "----------------111-----------10", - "variable_fields": ["rs2"], - "extension": ["rv64_c", "rv64_zca"], - "match": "0xe002", - "mask": "0xe003" - }, - "c_sext_b": { - "encoding": "----------------100111---1100101", - "variable_fields": ["rd"], - "extension": ["rv_zcb", "rv_zbb"], - "match": "0x9c65", - "mask": "0xfc7f" - }, - "c_sext_h": { - "encoding": "----------------100111---1101101", - "variable_fields": ["rd"], - "extension": ["rv_zcb", "rv_zbb"], - "match": "0x9c6d", - "mask": "0xfc7f" - }, - "c_slli": { - "encoding": "----------------000-----------10", - "variable_fields": ["rd", "shamt"], - "extension": ["rv64_c", "rv64_zca"], - "match": "0x2", - "mask": "0xe003" - }, - "c_srai": { - "encoding": "----------------100-01--------01", - "variable_fields": ["rd", "shamt"], - "extension": ["rv64_c", "rv64_zca"], - "match": "0x8401", - "mask": "0xec03" - }, - "c_srli": { - "encoding": "----------------100-00--------01", - "variable_fields": ["rd", "shamt"], - "extension": ["rv64_c", "rv64_zca"], - "match": "0x8001", - "mask": "0xec03" - }, - "c_sub": { - "encoding": "----------------100011---00---01", - "variable_fields": ["rd", "rs2"], - "extension": ["rv_c", "rv_zca"], - "match": "0x8c01", - "mask": "0xfc63" - }, - "c_subw": { - "encoding": "----------------100111---00---01", - "variable_fields": ["rd", "rs2"], - "extension": ["rv64_c", "rv64_zca"], - "match": "0x9c01", - "mask": "0xfc63" - }, - "c_sw": { - "encoding": "----------------110-----------00", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv_c", "rv_zca"], - "match": "0xc000", - "mask": "0xe003" - }, - "c_swsp": { - "encoding": "----------------110-----------10", - "variable_fields": ["rs2"], - "extension": ["rv_c", "rv_zca"], - "match": "0xc002", - "mask": "0xe003" - }, - "c_xor": { - "encoding": "----------------100011---01---01", - "variable_fields": ["rd", "rs2"], - "extension": ["rv_c", "rv_zca"], - "match": "0x8c21", - "mask": "0xfc63" - }, - "c_zext_b": { - "encoding": "----------------100111---1100001", - "variable_fields": ["rd"], - "extension": ["rv_zcb", "rv_zbb"], - "match": "0x9c61", - "mask": "0xfc7f" - }, - "c_zext_h": { - "encoding": "----------------100111---1101001", - "variable_fields": ["rd"], - "extension": ["rv_zcb", "rv_zbb"], - "match": "0x9c69", - "mask": "0xfc7f" - }, - "c_zext_w": { - "encoding": "----------------100111---1110001", - "variable_fields": ["rd"], - "extension": ["rv64_zcb", "rv64_zbb"], - "match": "0x9c71", - "mask": "0xfc7f" - }, - "cbo_clean": { - "encoding": "000000000001-----010000000001111", - "variable_fields": ["rs1"], - "extension": ["rv_zicbom"], - "match": "0x10200f", - "mask": "0xfff07fff" - }, - "cbo_flush": { - "encoding": "000000000010-----010000000001111", - "variable_fields": ["rs1"], - "extension": ["rv_zicbom"], - "match": "0x20200f", - "mask": "0xfff07fff" - }, - "cbo_inval": { - "encoding": "000000000000-----010000000001111", - "variable_fields": ["rs1"], - "extension": ["rv_zicbom"], - "match": "0x200f", - "mask": "0xfff07fff" - }, - "cbo_zero": { - "encoding": "000000000100-----010000000001111", - "variable_fields": ["rs1"], - "extension": ["rv_zicboz"], - "match": "0x40200f", - "mask": "0xfff07fff" - }, - "clmul": { - "encoding": "0000101----------001-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbc", "rv_zbkc", "rv_zk", "rv_zkn", "rv_zks"], - "match": "0xa001033", - "mask": "0xfe00707f" - }, - "clmulh": { - "encoding": "0000101----------011-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbc", "rv_zbkc", "rv_zk", "rv_zkn", "rv_zks"], - "match": "0xa003033", - "mask": "0xfe00707f" - }, - "clmulr": { - "encoding": "0000101----------010-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbc"], - "match": "0xa002033", - "mask": "0xfe00707f" - }, - "clz": { - "encoding": "011000000000-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_b", "rv_zbb"], - "match": "0x60001013", - "mask": "0xfff0707f" - }, - "clzw": { - "encoding": "011000000000-----001-----0011011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_b", "rv64_zbb"], - "match": "0x6000101b", - "mask": "0xfff0707f" - }, - "cm_mva01s": { - "encoding": "----------------101011---11---10", - "variable_fields": [], - "extension": ["rv_zcmp"], - "match": "0xac62", - "mask": "0xfc63" - }, - "cm_mvsa01": { - "encoding": "----------------101011---01---10", - "variable_fields": [], - "extension": ["rv_zcmp"], - "match": "0xac22", - "mask": "0xfc63" - }, - "cm_pop": { - "encoding": "----------------10111010------10", - "variable_fields": [], - "extension": ["rv_zcmp"], - "match": "0xba02", - "mask": "0xff03" - }, - "cm_popret": { - "encoding": "----------------10111110------10", - "variable_fields": [], - "extension": ["rv_zcmp"], - "match": "0xbe02", - "mask": "0xff03" - }, - "cm_popretz": { - "encoding": "----------------10111100------10", - "variable_fields": [], - "extension": ["rv_zcmp"], - "match": "0xbc02", - "mask": "0xff03" - }, - "cm_push": { - "encoding": "----------------10111000------10", - "variable_fields": [], - "extension": ["rv_zcmp"], - "match": "0xb802", - "mask": "0xff03" - }, - "cpop": { - "encoding": "011000000010-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_b", "rv_zbb"], - "match": "0x60201013", - "mask": "0xfff0707f" - }, - "cpopw": { - "encoding": "011000000010-----001-----0011011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_b", "rv64_zbb"], - "match": "0x6020101b", - "mask": "0xfff0707f" - }, - "csrrc": { - "encoding": "-----------------011-----1110011", - "variable_fields": ["rd", "rs1", "csr"], - "extension": ["rv_zicsr"], - "match": "0x3073", - "mask": "0x707f" - }, - "csrrci": { - "encoding": "-----------------111-----1110011", - "variable_fields": ["rd", "csr"], - "extension": ["rv_zicsr"], - "match": "0x7073", - "mask": "0x707f" - }, - "csrrs": { - "encoding": "-----------------010-----1110011", - "variable_fields": ["rd", "rs1", "csr"], - "extension": ["rv_zicsr"], - "match": "0x2073", - "mask": "0x707f" - }, - "csrrsi": { - "encoding": "-----------------110-----1110011", - "variable_fields": ["rd", "csr"], - "extension": ["rv_zicsr"], - "match": "0x6073", - "mask": "0x707f" - }, - "csrrw": { - "encoding": "-----------------001-----1110011", - "variable_fields": ["rd", "rs1", "csr"], - "extension": ["rv_zicsr"], - "match": "0x1073", - "mask": "0x707f" - }, - "csrrwi": { - "encoding": "-----------------101-----1110011", - "variable_fields": ["rd", "zimm", "csr"], - "extension": ["rv_zicsr"], - "match": "0x5073", - "mask": "0x707f" - }, - "ctz": { - "encoding": "011000000001-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_b", "rv_zbb"], - "match": "0x60101013", - "mask": "0xfff0707f" - }, - "ctzw": { - "encoding": "011000000001-----001-----0011011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_b", "rv64_zbb"], - "match": "0x6010101b", - "mask": "0xfff0707f" - }, - "czero_eqz": { - "encoding": "0000111----------101-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zicond"], - "match": "0xe005033", - "mask": "0xfe00707f" - }, - "czero_nez": { - "encoding": "0000111----------111-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zicond"], - "match": "0xe007033", - "mask": "0xfe00707f" - }, - "div": { - "encoding": "0000001----------100-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_m"], - "match": "0x2004033", - "mask": "0xfe00707f" - }, - "divu": { - "encoding": "0000001----------101-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_m"], - "match": "0x2005033", - "mask": "0xfe00707f" - }, - "divuw": { - "encoding": "0000001----------101-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_m"], - "match": "0x200503b", - "mask": "0xfe00707f" - }, - "divw": { - "encoding": "0000001----------100-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_m"], - "match": "0x200403b", - "mask": "0xfe00707f" - }, - "dret": { - "encoding": "01111011001000000000000001110011", - "variable_fields": [], - "extension": ["rv_sdext"], - "match": "0x7b200073", - "mask": "0xffffffff" - }, - "ebreak": { - "encoding": "00000000000100000000000001110011", - "variable_fields": [], - "extension": ["rv_i"], - "match": "0x100073", - "mask": "0xffffffff" - }, - "ecall": { - "encoding": "00000000000000000000000001110011", - "variable_fields": [], - "extension": ["rv_i"], - "match": "0x73", - "mask": "0xffffffff" - }, - "fadd_d": { - "encoding": "0000001------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_d"], - "match": "0x2000053", - "mask": "0xfe00007f" - }, - "fadd_h": { - "encoding": "0000010------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_zfh"], - "match": "0x4000053", - "mask": "0xfe00007f" - }, - "fadd_q": { - "encoding": "0000011------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_q"], - "match": "0x6000053", - "mask": "0xfe00007f" - }, - "fadd_s": { - "encoding": "0000000------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_f"], - "match": "0x53", - "mask": "0xfe00007f" - }, - "fclass_d": { - "encoding": "111000100000-----001-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_d"], - "match": "0xe2001053", - "mask": "0xfff0707f" - }, - "fclass_h": { - "encoding": "111001000000-----001-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_zfh"], - "match": "0xe4001053", - "mask": "0xfff0707f" - }, - "fclass_q": { - "encoding": "111001100000-----001-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_q"], - "match": "0xe6001053", - "mask": "0xfff0707f" - }, - "fclass_s": { - "encoding": "111000000000-----001-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_f"], - "match": "0xe0001053", - "mask": "0xfff0707f" - }, - "fcvt_bf16_s": { - "encoding": "010001001000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_zfbfmin"], - "match": "0x44800053", - "mask": "0xfff0007f" - }, - "fcvt_d_h": { - "encoding": "010000100010-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_d", "rv_zfh"], - "match": "0x42200053", - "mask": "0xfff0007f" - }, - "fcvt_d_l": { - "encoding": "110100100010-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_d"], - "match": "0xd2200053", - "mask": "0xfff0007f" - }, - "fcvt_d_lu": { - "encoding": "110100100011-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_d"], - "match": "0xd2300053", - "mask": "0xfff0007f" - }, - "fcvt_d_q": { - "encoding": "010000100011-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_q"], - "match": "0x42300053", - "mask": "0xfff0007f" - }, - "fcvt_d_s": { - "encoding": "010000100000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_d"], - "match": "0x42000053", - "mask": "0xfff0007f" - }, - "fcvt_d_w": { - "encoding": "110100100000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_d"], - "match": "0xd2000053", - "mask": "0xfff0007f" - }, - "fcvt_d_wu": { - "encoding": "110100100001-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_d"], - "match": "0xd2100053", - "mask": "0xfff0007f" - }, - "fcvt_h_d": { - "encoding": "010001000001-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_d", "rv_zfh"], - "match": "0x44100053", - "mask": "0xfff0007f" - }, - "fcvt_h_l": { - "encoding": "110101000010-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_zfh"], - "match": "0xd4200053", - "mask": "0xfff0007f" - }, - "fcvt_h_lu": { - "encoding": "110101000011-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_zfh"], - "match": "0xd4300053", - "mask": "0xfff0007f" - }, - "fcvt_h_q": { - "encoding": "010001000011-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_q", "rv_zfh"], - "match": "0x44300053", - "mask": "0xfff0007f" - }, - "fcvt_h_s": { - "encoding": "010001000000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_zfh", "rv_zfhmin"], - "match": "0x44000053", - "mask": "0xfff0007f" - }, - "fcvt_h_w": { - "encoding": "110101000000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_zfh"], - "match": "0xd4000053", - "mask": "0xfff0007f" - }, - "fcvt_h_wu": { - "encoding": "110101000001-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_zfh"], - "match": "0xd4100053", - "mask": "0xfff0007f" - }, - "fcvt_l_d": { - "encoding": "110000100010-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_d"], - "match": "0xc2200053", - "mask": "0xfff0007f" - }, - "fcvt_l_h": { - "encoding": "110001000010-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_zfh"], - "match": "0xc4200053", - "mask": "0xfff0007f" - }, - "fcvt_l_q": { - "encoding": "110001100010-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_q"], - "match": "0xc6200053", - "mask": "0xfff0007f" - }, - "fcvt_l_s": { - "encoding": "110000000010-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_f"], - "match": "0xc0200053", - "mask": "0xfff0007f" - }, - "fcvt_lu_d": { - "encoding": "110000100011-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_d"], - "match": "0xc2300053", - "mask": "0xfff0007f" - }, - "fcvt_lu_h": { - "encoding": "110001000011-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_zfh"], - "match": "0xc4300053", - "mask": "0xfff0007f" - }, - "fcvt_lu_q": { - "encoding": "110001100011-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_q"], - "match": "0xc6300053", - "mask": "0xfff0007f" - }, - "fcvt_lu_s": { - "encoding": "110000000011-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_f"], - "match": "0xc0300053", - "mask": "0xfff0007f" - }, - "fcvt_q_d": { - "encoding": "010001100001-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_q"], - "match": "0x46100053", - "mask": "0xfff0007f" - }, - "fcvt_q_h": { - "encoding": "010001100010-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_q", "rv_zfh"], - "match": "0x46200053", - "mask": "0xfff0007f" - }, - "fcvt_q_l": { - "encoding": "110101100010-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_q"], - "match": "0xd6200053", - "mask": "0xfff0007f" - }, - "fcvt_q_lu": { - "encoding": "110101100011-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_q"], - "match": "0xd6300053", - "mask": "0xfff0007f" - }, - "fcvt_q_s": { - "encoding": "010001100000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_q"], - "match": "0x46000053", - "mask": "0xfff0007f" - }, - "fcvt_q_w": { - "encoding": "110101100000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_q"], - "match": "0xd6000053", - "mask": "0xfff0007f" - }, - "fcvt_q_wu": { - "encoding": "110101100001-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_q"], - "match": "0xd6100053", - "mask": "0xfff0007f" - }, - "fcvt_s_bf16": { - "encoding": "010000000110-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_zfbfmin"], - "match": "0x40600053", - "mask": "0xfff0007f" - }, - "fcvt_s_d": { - "encoding": "010000000001-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_d"], - "match": "0x40100053", - "mask": "0xfff0007f" - }, - "fcvt_s_h": { - "encoding": "010000000010-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_zfh", "rv_zfhmin"], - "match": "0x40200053", - "mask": "0xfff0007f" - }, - "fcvt_s_l": { - "encoding": "110100000010-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_f"], - "match": "0xd0200053", - "mask": "0xfff0007f" - }, - "fcvt_s_lu": { - "encoding": "110100000011-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_f"], - "match": "0xd0300053", - "mask": "0xfff0007f" - }, - "fcvt_s_q": { - "encoding": "010000000011-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_q"], - "match": "0x40300053", - "mask": "0xfff0007f" - }, - "fcvt_s_w": { - "encoding": "110100000000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_f"], - "match": "0xd0000053", - "mask": "0xfff0007f" - }, - "fcvt_s_wu": { - "encoding": "110100000001-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_f"], - "match": "0xd0100053", - "mask": "0xfff0007f" - }, - "fcvt_w_d": { - "encoding": "110000100000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_d"], - "match": "0xc2000053", - "mask": "0xfff0007f" - }, - "fcvt_w_h": { - "encoding": "110001000000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_zfh"], - "match": "0xc4000053", - "mask": "0xfff0007f" - }, - "fcvt_w_q": { - "encoding": "110001100000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_q"], - "match": "0xc6000053", - "mask": "0xfff0007f" - }, - "fcvt_w_s": { - "encoding": "110000000000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_f"], - "match": "0xc0000053", - "mask": "0xfff0007f" - }, - "fcvt_wu_d": { - "encoding": "110000100001-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_d"], - "match": "0xc2100053", - "mask": "0xfff0007f" - }, - "fcvt_wu_h": { - "encoding": "110001000001-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_zfh"], - "match": "0xc4100053", - "mask": "0xfff0007f" - }, - "fcvt_wu_q": { - "encoding": "110001100001-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_q"], - "match": "0xc6100053", - "mask": "0xfff0007f" - }, - "fcvt_wu_s": { - "encoding": "110000000001-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_f"], - "match": "0xc0100053", - "mask": "0xfff0007f" - }, - "fcvtmod_w_d": { - "encoding": "110000101000-----001-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_d", "rv_zfa"], - "match": "0xc2801053", - "mask": "0xfff0707f" - }, - "fdiv_d": { - "encoding": "0001101------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_d"], - "match": "0x1a000053", - "mask": "0xfe00007f" - }, - "fdiv_h": { - "encoding": "0001110------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_zfh"], - "match": "0x1c000053", - "mask": "0xfe00007f" - }, - "fdiv_q": { - "encoding": "0001111------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_q"], - "match": "0x1e000053", - "mask": "0xfe00007f" - }, - "fdiv_s": { - "encoding": "0001100------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_f"], - "match": "0x18000053", - "mask": "0xfe00007f" - }, - "fence": { - "encoding": "-----------------000-----0001111", - "variable_fields": ["rd", "rs1", "succ", "pred", "rm"], - "extension": ["rv_i"], - "match": "0xf", - "mask": "0x707f" - }, - "fence_i": { - "encoding": "-----------------001-----0001111", - "variable_fields": ["rd", "rs1", "imm12"], - "extension": ["rv_zifencei"], - "match": "0x100f", - "mask": "0x707f" - }, - "feq_d": { - "encoding": "1010001----------010-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_d"], - "match": "0xa2002053", - "mask": "0xfe00707f" - }, - "feq_h": { - "encoding": "1010010----------010-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfh"], - "match": "0xa4002053", - "mask": "0xfe00707f" - }, - "feq_q": { - "encoding": "1010011----------010-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_q"], - "match": "0xa6002053", - "mask": "0xfe00707f" - }, - "feq_s": { - "encoding": "1010000----------010-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_f"], - "match": "0xa0002053", - "mask": "0xfe00707f" - }, - "fld": { - "encoding": "-----------------011-----0000111", - "variable_fields": ["rd", "rs1", "imm12"], - "extension": ["rv_d"], - "match": "0x3007", - "mask": "0x707f" - }, - "fle_d": { - "encoding": "1010001----------000-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_d"], - "match": "0xa2000053", - "mask": "0xfe00707f" - }, - "fle_h": { - "encoding": "1010010----------000-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfh"], - "match": "0xa4000053", - "mask": "0xfe00707f" - }, - "fle_q": { - "encoding": "1010011----------000-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_q"], - "match": "0xa6000053", - "mask": "0xfe00707f" - }, - "fle_s": { - "encoding": "1010000----------000-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_f"], - "match": "0xa0000053", - "mask": "0xfe00707f" - }, - "fleq_d": { - "encoding": "1010001----------100-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_d", "rv_zfa"], - "match": "0xa2004053", - "mask": "0xfe00707f" - }, - "fleq_h": { - "encoding": "1010010----------100-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfa", "rv_zfh"], - "match": "0xa4004053", - "mask": "0xfe00707f" - }, - "fleq_q": { - "encoding": "1010011----------100-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_q", "rv_zfa"], - "match": "0xa6004053", - "mask": "0xfe00707f" - }, - "fleq_s": { - "encoding": "1010000----------100-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfa"], - "match": "0xa0004053", - "mask": "0xfe00707f" - }, - "flh": { - "encoding": "-----------------001-----0000111", - "variable_fields": ["rd", "rs1", "imm12"], - "extension": ["rv_zfh", "rv_zfhmin", "rv_zhinx"], - "match": "0x1007", - "mask": "0x707f" - }, - "fli_d": { - "encoding": "111100100001-----000-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_d", "rv_zfa"], - "match": "0xf2100053", - "mask": "0xfff0707f" - }, - "fli_h": { - "encoding": "111101000001-----000-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_zfa", "rv_zfh"], - "match": "0xf4100053", - "mask": "0xfff0707f" - }, - "fli_q": { - "encoding": "111101100001-----000-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_q", "rv_zfa"], - "match": "0xf6100053", - "mask": "0xfff0707f" - }, - "fli_s": { - "encoding": "111100000001-----000-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_zfa"], - "match": "0xf0100053", - "mask": "0xfff0707f" - }, - "flq": { - "encoding": "-----------------100-----0000111", - "variable_fields": ["rd", "rs1", "imm12"], - "extension": ["rv_q"], - "match": "0x4007", - "mask": "0x707f" - }, - "flt_d": { - "encoding": "1010001----------001-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_d"], - "match": "0xa2001053", - "mask": "0xfe00707f" - }, - "flt_h": { - "encoding": "1010010----------001-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfh"], - "match": "0xa4001053", - "mask": "0xfe00707f" - }, - "flt_q": { - "encoding": "1010011----------001-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_q"], - "match": "0xa6001053", - "mask": "0xfe00707f" - }, - "flt_s": { - "encoding": "1010000----------001-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_f"], - "match": "0xa0001053", - "mask": "0xfe00707f" - }, - "fltq_d": { - "encoding": "1010001----------101-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_d", "rv_zfa"], - "match": "0xa2005053", - "mask": "0xfe00707f" - }, - "fltq_h": { - "encoding": "1010010----------101-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfa", "rv_zfh"], - "match": "0xa4005053", - "mask": "0xfe00707f" - }, - "fltq_q": { - "encoding": "1010011----------101-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_q", "rv_zfa"], - "match": "0xa6005053", - "mask": "0xfe00707f" - }, - "fltq_s": { - "encoding": "1010000----------101-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfa"], - "match": "0xa0005053", - "mask": "0xfe00707f" - }, - "flw": { - "encoding": "-----------------010-----0000111", - "variable_fields": ["rd", "rs1", "imm12"], - "extension": ["rv_f"], - "match": "0x2007", - "mask": "0x707f" - }, - "fmadd_d": { - "encoding": "-----01------------------1000011", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_d"], - "match": "0x2000043", - "mask": "0x600007f" - }, - "fmadd_h": { - "encoding": "-----10------------------1000011", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_zfh"], - "match": "0x4000043", - "mask": "0x600007f" - }, - "fmadd_q": { - "encoding": "-----11------------------1000011", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_q"], - "match": "0x6000043", - "mask": "0x600007f" - }, - "fmadd_s": { - "encoding": "-----00------------------1000011", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_f"], - "match": "0x43", - "mask": "0x600007f" - }, - "fmax_d": { - "encoding": "0010101----------001-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_d"], - "match": "0x2a001053", - "mask": "0xfe00707f" - }, - "fmax_h": { - "encoding": "0010110----------001-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfh"], - "match": "0x2c001053", - "mask": "0xfe00707f" - }, - "fmax_q": { - "encoding": "0010111----------001-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_q"], - "match": "0x2e001053", - "mask": "0xfe00707f" - }, - "fmax_s": { - "encoding": "0010100----------001-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_f"], - "match": "0x28001053", - "mask": "0xfe00707f" - }, - "fmaxm_d": { - "encoding": "0010101----------011-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_d", "rv_zfa"], - "match": "0x2a003053", - "mask": "0xfe00707f" - }, - "fmaxm_h": { - "encoding": "0010110----------011-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfa", "rv_zfh"], - "match": "0x2c003053", - "mask": "0xfe00707f" - }, - "fmaxm_q": { - "encoding": "0010111----------011-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_q", "rv_zfa"], - "match": "0x2e003053", - "mask": "0xfe00707f" - }, - "fmaxm_s": { - "encoding": "0010100----------011-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfa"], - "match": "0x28003053", - "mask": "0xfe00707f" - }, - "fmin_d": { - "encoding": "0010101----------000-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_d"], - "match": "0x2a000053", - "mask": "0xfe00707f" - }, - "fmin_h": { - "encoding": "0010110----------000-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfh"], - "match": "0x2c000053", - "mask": "0xfe00707f" - }, - "fmin_q": { - "encoding": "0010111----------000-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_q"], - "match": "0x2e000053", - "mask": "0xfe00707f" - }, - "fmin_s": { - "encoding": "0010100----------000-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_f"], - "match": "0x28000053", - "mask": "0xfe00707f" - }, - "fminm_d": { - "encoding": "0010101----------010-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_d", "rv_zfa"], - "match": "0x2a002053", - "mask": "0xfe00707f" - }, - "fminm_h": { - "encoding": "0010110----------010-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfa", "rv_zfh"], - "match": "0x2c002053", - "mask": "0xfe00707f" - }, - "fminm_q": { - "encoding": "0010111----------010-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_q", "rv_zfa"], - "match": "0x2e002053", - "mask": "0xfe00707f" - }, - "fminm_s": { - "encoding": "0010100----------010-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfa"], - "match": "0x28002053", - "mask": "0xfe00707f" - }, - "fmsub_d": { - "encoding": "-----01------------------1000111", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_d"], - "match": "0x2000047", - "mask": "0x600007f" - }, - "fmsub_h": { - "encoding": "-----10------------------1000111", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_zfh"], - "match": "0x4000047", - "mask": "0x600007f" - }, - "fmsub_q": { - "encoding": "-----11------------------1000111", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_q"], - "match": "0x6000047", - "mask": "0x600007f" - }, - "fmsub_s": { - "encoding": "-----00------------------1000111", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_f"], - "match": "0x47", - "mask": "0x600007f" - }, - "fmul_d": { - "encoding": "0001001------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_d"], - "match": "0x12000053", - "mask": "0xfe00007f" - }, - "fmul_h": { - "encoding": "0001010------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_zfh"], - "match": "0x14000053", - "mask": "0xfe00007f" - }, - "fmul_q": { - "encoding": "0001011------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_q"], - "match": "0x16000053", - "mask": "0xfe00007f" - }, - "fmul_s": { - "encoding": "0001000------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_f"], - "match": "0x10000053", - "mask": "0xfe00007f" - }, - "fmv_d_x": { - "encoding": "111100100000-----000-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_d"], - "match": "0xf2000053", - "mask": "0xfff0707f" - }, - "fmv_h_x": { - "encoding": "111101000000-----000-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_f"], - "match": "0xf4000053", - "mask": "0xfff0707f" - }, - "fmv_w_x": { - "encoding": "111100000000-----000-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_f"], - "match": "0xf0000053", - "mask": "0xfff0707f" - }, - "fmv_x_d": { - "encoding": "111000100000-----000-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_d"], - "match": "0xe2000053", - "mask": "0xfff0707f" - }, - "fmv_x_h": { - "encoding": "111001000000-----000-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_zfh", "rv_zfhmin", "rv_zhinx"], - "match": "0xe4000053", - "mask": "0xfff0707f" - }, - "fmv_x_w": { - "encoding": "111000000000-----000-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_f"], - "match": "0xe0000053", - "mask": "0xfff0707f" - }, - "fmvh_x_d": { - "encoding": "111000100001-----000-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv32_d", "rv32_zfa"], - "match": "0xe2100053", - "mask": "0xfff0707f" - }, - "fmvh_x_q": { - "encoding": "111001100001-----000-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_q", "rv64_zfa"], - "match": "0xe6100053", - "mask": "0xfff0707f" - }, - "fmvp_d_x": { - "encoding": "1011001----------000-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv32_d", "rv32_zfa"], - "match": "0xb2000053", - "mask": "0xfe00707f" - }, - "fmvp_q_x": { - "encoding": "1011011----------000-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_q", "rv64_zfa"], - "match": "0xb6000053", - "mask": "0xfe00707f" - }, - "fnmadd_d": { - "encoding": "-----01------------------1001111", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_d"], - "match": "0x200004f", - "mask": "0x600007f" - }, - "fnmadd_h": { - "encoding": "-----10------------------1001111", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_zfh"], - "match": "0x400004f", - "mask": "0x600007f" - }, - "fnmadd_q": { - "encoding": "-----11------------------1001111", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_q"], - "match": "0x600004f", - "mask": "0x600007f" - }, - "fnmadd_s": { - "encoding": "-----00------------------1001111", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_f"], - "match": "0x4f", - "mask": "0x600007f" - }, - "fnmsub_d": { - "encoding": "-----01------------------1001011", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_d"], - "match": "0x200004b", - "mask": "0x600007f" - }, - "fnmsub_h": { - "encoding": "-----10------------------1001011", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_zfh"], - "match": "0x400004b", - "mask": "0x600007f" - }, - "fnmsub_q": { - "encoding": "-----11------------------1001011", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_q"], - "match": "0x600004b", - "mask": "0x600007f" - }, - "fnmsub_s": { - "encoding": "-----00------------------1001011", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_f"], - "match": "0x4b", - "mask": "0x600007f" - }, - "fround_d": { - "encoding": "010000100100-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_d", "rv_zfa"], - "match": "0x42400053", - "mask": "0xfff0007f" - }, - "fround_h": { - "encoding": "010001000100-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_zfa", "rv_zfh"], - "match": "0x44400053", - "mask": "0xfff0007f" - }, - "fround_q": { - "encoding": "010001100100-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_q", "rv_zfa"], - "match": "0x46400053", - "mask": "0xfff0007f" - }, - "fround_s": { - "encoding": "010000000100-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_zfa"], - "match": "0x40400053", - "mask": "0xfff0007f" - }, - "froundnx_d": { - "encoding": "010000100101-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_d", "rv_zfa"], - "match": "0x42500053", - "mask": "0xfff0007f" - }, - "froundnx_h": { - "encoding": "010001000101-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_zfa", "rv_zfh"], - "match": "0x44500053", - "mask": "0xfff0007f" - }, - "froundnx_q": { - "encoding": "010001100101-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_q", "rv_zfa"], - "match": "0x46500053", - "mask": "0xfff0007f" - }, - "froundnx_s": { - "encoding": "010000000101-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_zfa"], - "match": "0x40500053", - "mask": "0xfff0007f" - }, - "fsd": { - "encoding": "-----------------011-----0100111", - "variable_fields": ["rs1", "rs2", "imm12hi", "imm12lo"], - "extension": ["rv_d"], - "match": "0x3027", - "mask": "0x707f" - }, - "fsgnj_d": { - "encoding": "0010001----------000-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_d"], - "match": "0x22000053", - "mask": "0xfe00707f" - }, - "fsgnj_h": { - "encoding": "0010010----------000-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfh"], - "match": "0x24000053", - "mask": "0xfe00707f" - }, - "fsgnj_q": { - "encoding": "0010011----------000-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_q"], - "match": "0x26000053", - "mask": "0xfe00707f" - }, - "fsgnj_s": { - "encoding": "0010000----------000-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_f"], - "match": "0x20000053", - "mask": "0xfe00707f" - }, - "fsgnjn_d": { - "encoding": "0010001----------001-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_d"], - "match": "0x22001053", - "mask": "0xfe00707f" - }, - "fsgnjn_h": { - "encoding": "0010010----------001-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfh"], - "match": "0x24001053", - "mask": "0xfe00707f" - }, - "fsgnjn_q": { - "encoding": "0010011----------001-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_q"], - "match": "0x26001053", - "mask": "0xfe00707f" - }, - "fsgnjn_s": { - "encoding": "0010000----------001-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_f"], - "match": "0x20001053", - "mask": "0xfe00707f" - }, - "fsgnjx_d": { - "encoding": "0010001----------010-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_d"], - "match": "0x22002053", - "mask": "0xfe00707f" - }, - "fsgnjx_h": { - "encoding": "0010010----------010-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfh"], - "match": "0x24002053", - "mask": "0xfe00707f" - }, - "fsgnjx_q": { - "encoding": "0010011----------010-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_q"], - "match": "0x26002053", - "mask": "0xfe00707f" - }, - "fsgnjx_s": { - "encoding": "0010000----------010-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_f"], - "match": "0x20002053", - "mask": "0xfe00707f" - }, - "fsh": { - "encoding": "-----------------001-----0100111", - "variable_fields": ["rs2", "rs1", "imm12hi", "imm12lo"], - "extension": ["rv_zfh", "rv_zfhmin", "rv_zhinx"], - "match": "0x1027", - "mask": "0x707f" - }, - "fsq": { - "encoding": "-----------------100-----0100111", - "variable_fields": ["rs1", "rs2", "imm12hi", "imm12lo"], - "extension": ["rv_q"], - "match": "0x4027", - "mask": "0x707f" - }, - "fsqrt_d": { - "encoding": "010110100000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_d"], - "match": "0x5a000053", - "mask": "0xfff0007f" - }, - "fsqrt_h": { - "encoding": "010111000000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_zfh"], - "match": "0x5c000053", - "mask": "0xfff0007f" - }, - "fsqrt_q": { - "encoding": "010111100000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_q"], - "match": "0x5e000053", - "mask": "0xfff0007f" - }, - "fsqrt_s": { - "encoding": "010110000000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_f"], - "match": "0x58000053", - "mask": "0xfff0007f" - }, - "fsub_d": { - "encoding": "0000101------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_d"], - "match": "0xa000053", - "mask": "0xfe00007f" - }, - "fsub_h": { - "encoding": "0000110------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_zfh"], - "match": "0xc000053", - "mask": "0xfe00007f" - }, - "fsub_q": { - "encoding": "0000111------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_q"], - "match": "0xe000053", - "mask": "0xfe00007f" - }, - "fsub_s": { - "encoding": "0000100------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_f"], - "match": "0x8000053", - "mask": "0xfe00007f" - }, - "fsw": { - "encoding": "-----------------010-----0100111", - "variable_fields": ["rs1", "rs2", "imm12hi", "imm12lo"], - "extension": ["rv_f"], - "match": "0x2027", - "mask": "0x707f" - }, - "hfence_gvma": { - "encoding": "0110001----------000000001110011", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv_h"], - "match": "0x62000073", - "mask": "0xfe007fff" - }, - "hfence_vvma": { - "encoding": "0010001----------000000001110011", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv_h"], - "match": "0x22000073", - "mask": "0xfe007fff" - }, - "hinval_gvma": { - "encoding": "0110011----------000000001110011", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv_svinval", "rv_h"], - "match": "0x66000073", - "mask": "0xfe007fff" - }, - "hinval_vvma": { - "encoding": "0010011----------000000001110011", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv_svinval", "rv_h"], - "match": "0x26000073", - "mask": "0xfe007fff" - }, - "hlv_b": { - "encoding": "011000000000-----100-----1110011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_h"], - "match": "0x60004073", - "mask": "0xfff0707f" - }, - "hlv_bu": { - "encoding": "011000000001-----100-----1110011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_h"], - "match": "0x60104073", - "mask": "0xfff0707f" - }, - "hlv_d": { - "encoding": "011011000000-----100-----1110011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_h"], - "match": "0x6c004073", - "mask": "0xfff0707f" - }, - "hlv_h": { - "encoding": "011001000000-----100-----1110011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_h"], - "match": "0x64004073", - "mask": "0xfff0707f" - }, - "hlv_hu": { - "encoding": "011001000001-----100-----1110011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_h"], - "match": "0x64104073", - "mask": "0xfff0707f" - }, - "hlv_w": { - "encoding": "011010000000-----100-----1110011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_h"], - "match": "0x68004073", - "mask": "0xfff0707f" - }, - "hlv_wu": { - "encoding": "011010000001-----100-----1110011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_h"], - "match": "0x68104073", - "mask": "0xfff0707f" - }, - "hlvx_hu": { - "encoding": "011001000011-----100-----1110011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_h"], - "match": "0x64304073", - "mask": "0xfff0707f" - }, - "hlvx_wu": { - "encoding": "011010000011-----100-----1110011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_h"], - "match": "0x68304073", - "mask": "0xfff0707f" - }, - "hsv_b": { - "encoding": "0110001----------100000001110011", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv_h"], - "match": "0x62004073", - "mask": "0xfe007fff" - }, - "hsv_d": { - "encoding": "0110111----------100000001110011", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv64_h"], - "match": "0x6e004073", - "mask": "0xfe007fff" - }, - "hsv_h": { - "encoding": "0110011----------100000001110011", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv_h"], - "match": "0x66004073", - "mask": "0xfe007fff" - }, - "hsv_w": { - "encoding": "0110101----------100000001110011", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv_h"], - "match": "0x6a004073", - "mask": "0xfe007fff" - }, - "jal": { - "encoding": "-------------------------1101111", - "variable_fields": ["rd"], - "extension": ["rv_i"], - "match": "0x6f", - "mask": "0x7f" - }, - "jalr": { - "encoding": "-----------------000-----1100111", - "variable_fields": ["rd", "rs1", "imm12"], - "extension": ["rv_i"], - "match": "0x67", - "mask": "0x707f" - }, - "lb": { - "encoding": "-----------------000-----0000011", - "variable_fields": ["rd", "rs1", "imm12"], - "extension": ["rv_i"], - "match": "0x3", - "mask": "0x707f" - }, - "lb_aq": { - "encoding": "001101-00000-----000-----0101111", - "variable_fields": ["rd", "rs1", "rl"], - "extension": ["rv_zalasr"], - "match": "0x3400002f", - "mask": "0xfdf0707f" - }, - "lbu": { - "encoding": "-----------------100-----0000011", - "variable_fields": ["rd", "rs1", "imm12"], - "extension": ["rv_i"], - "match": "0x4003", - "mask": "0x707f" - }, - "ld": { - "encoding": "-----------------011-----0000011", - "variable_fields": ["rd", "rs1", "imm12"], - "extension": ["rv64_i"], - "match": "0x3003", - "mask": "0x707f" - }, - "ld_aq": { - "encoding": "001101-00000-----011-----0101111", - "variable_fields": ["rd", "rs1", "rl"], - "extension": ["rv_zalasr"], - "match": "0x3400302f", - "mask": "0xfdf0707f" - }, - "lh": { - "encoding": "-----------------001-----0000011", - "variable_fields": ["rd", "rs1", "imm12"], - "extension": ["rv_i"], - "match": "0x1003", - "mask": "0x707f" - }, - "lh_aq": { - "encoding": "001101-00000-----001-----0101111", - "variable_fields": ["rd", "rs1", "rl"], - "extension": ["rv_zalasr"], - "match": "0x3400102f", - "mask": "0xfdf0707f" - }, - "lhu": { - "encoding": "-----------------101-----0000011", - "variable_fields": ["rd", "rs1", "imm12"], - "extension": ["rv_i"], - "match": "0x5003", - "mask": "0x707f" - }, - "lpad": { - "encoding": "--------------------000000010111", - "variable_fields": ["imm20"], - "extension": ["rv_zicfilp"], - "match": "0x17", - "mask": "0xfff" - }, - "lr_d": { - "encoding": "00010--00000-----011-----0101111", - "variable_fields": ["rd", "rs1", "rl", "aq"], - "extension": ["rv64_a", "rv64_zalrsc"], - "match": "0x1000302f", - "mask": "0xf9f0707f" - }, - "lr_w": { - "encoding": "00010--00000-----010-----0101111", - "variable_fields": ["rd", "rs1", "rl", "aq"], - "extension": ["rv_a", "rv_zalrsc"], - "match": "0x1000202f", - "mask": "0xf9f0707f" - }, - "lui": { - "encoding": "-------------------------0110111", - "variable_fields": ["rd", "imm20"], - "extension": ["rv_i"], - "match": "0x37", - "mask": "0x7f" - }, - "lw": { - "encoding": "-----------------010-----0000011", - "variable_fields": ["rd", "rs1", "imm12"], - "extension": ["rv_i"], - "match": "0x2003", - "mask": "0x707f" - }, - "lw_aq": { - "encoding": "001101-00000-----010-----0101111", - "variable_fields": ["rd", "rs1", "rl"], - "extension": ["rv_zalasr"], - "match": "0x3400202f", - "mask": "0xfdf0707f" - }, - "lwu": { - "encoding": "-----------------110-----0000011", - "variable_fields": ["rd", "rs1", "imm12"], - "extension": ["rv64_i"], - "match": "0x6003", - "mask": "0x707f" - }, - "max": { - "encoding": "0000101----------110-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbb"], - "match": "0xa006033", - "mask": "0xfe00707f" - }, - "maxu": { - "encoding": "0000101----------111-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbb"], - "match": "0xa007033", - "mask": "0xfe00707f" - }, - "min": { - "encoding": "0000101----------100-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbb"], - "match": "0xa004033", - "mask": "0xfe00707f" - }, - "minu": { - "encoding": "0000101----------101-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbb"], - "match": "0xa005033", - "mask": "0xfe00707f" - }, - "mnret": { - "encoding": "01110000001000000000000001110011", - "variable_fields": [], - "extension": ["rv_smrnmi"], - "match": "0x70200073", - "mask": "0xffffffff" - }, - "mop_r_n": { - "encoding": "1-00--0111-------100-----1110011", - "variable_fields": [ - "rd", - "rs1", - "mop_r_t_21_20", - "mop_r_t_27_26", - "mop_r_t_30" - ], - "extension": ["rv_zimop"], - "match": "0x81c04073", - "mask": "0xb3c0707f" - }, - "mop_rr_n": { - "encoding": "1-00--1----------100-----1110011", - "variable_fields": ["rd", "rs1", "rs2", "mop_rr_t_27_26", "mop_rr_t_30"], - "extension": ["rv_zimop"], - "match": "0x82004073", - "mask": "0xb200707f" - }, - "mret": { - "encoding": "00110000001000000000000001110011", - "variable_fields": [], - "extension": ["rv_sm"], - "match": "0x30200073", - "mask": "0xffffffff" - }, - "mul": { - "encoding": "0000001----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_m", "rv_zmmul"], - "match": "0x2000033", - "mask": "0xfe00707f" - }, - "mulh": { - "encoding": "0000001----------001-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_m", "rv_zmmul"], - "match": "0x2001033", - "mask": "0xfe00707f" - }, - "mulhsu": { - "encoding": "0000001----------010-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_m", "rv_zmmul"], - "match": "0x2002033", - "mask": "0xfe00707f" - }, - "mulhu": { - "encoding": "0000001----------011-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_m", "rv_zmmul"], - "match": "0x2003033", - "mask": "0xfe00707f" - }, - "mulw": { - "encoding": "0000001----------000-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_m", "rv64_zmmul"], - "match": "0x200003b", - "mask": "0xfe00707f" - }, - "or": { - "encoding": "0000000----------110-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_i"], - "match": "0x6033", - "mask": "0xfe00707f" - }, - "orc_b": { - "encoding": "001010000111-----101-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_b", "rv_zbb"], - "match": "0x28705013", - "mask": "0xfff0707f" - }, - "ori": { - "encoding": "-----------------110-----0010011", - "variable_fields": ["rd", "rs1", "imm12"], - "extension": ["rv_i"], - "match": "0x6013", - "mask": "0x707f" - }, - "orn": { - "encoding": "0100000----------110-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbb", "rv_zbkb", "rv_zk", "rv_zkn", "rv_zks"], - "match": "0x40006033", - "mask": "0xfe00707f" - }, - "pack": { - "encoding": "0000100----------100-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zbkb", "rv_zk", "rv_zkn", "rv_zks"], - "match": "0x8004033", - "mask": "0xfe00707f" - }, - "packh": { - "encoding": "0000100----------111-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zbkb", "rv_zk", "rv_zkn", "rv_zks"], - "match": "0x8007033", - "mask": "0xfe00707f" - }, - "packw": { - "encoding": "0000100----------100-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_zbkb", "rv64_zk", "rv64_zkn", "rv64_zks"], - "match": "0x800403b", - "mask": "0xfe00707f" - }, - "rem": { - "encoding": "0000001----------110-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_m"], - "match": "0x2006033", - "mask": "0xfe00707f" - }, - "remu": { - "encoding": "0000001----------111-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_m"], - "match": "0x2007033", - "mask": "0xfe00707f" - }, - "remuw": { - "encoding": "0000001----------111-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_m"], - "match": "0x200703b", - "mask": "0xfe00707f" - }, - "remw": { - "encoding": "0000001----------110-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_m"], - "match": "0x200603b", - "mask": "0xfe00707f" - }, - "rev8": { - "encoding": "011010111000-----101-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_b", "rv64_zbb", "rv64_zbkb"], - "match": "0x6b805013", - "mask": "0xfff0707f" - }, - "rol": { - "encoding": "0110000----------001-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbb", "rv_zbkb", "rv_zk", "rv_zkn", "rv_zks"], - "match": "0x60001033", - "mask": "0xfe00707f" - }, - "rolw": { - "encoding": "0110000----------001-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": [ - "rv64_b", - "rv64_zbb", - "rv64_zbkb", - "rv64_zk", - "rv64_zkn", - "rv64_zks" - ], - "match": "0x6000103b", - "mask": "0xfe00707f" - }, - "ror": { - "encoding": "0110000----------101-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbb", "rv_zbkb", "rv_zk", "rv_zkn", "rv_zks"], - "match": "0x60005033", - "mask": "0xfe00707f" - }, - "rori": { - "encoding": "011000-----------101-----0010011", - "variable_fields": ["rd", "rs1", "shamtd"], - "extension": [ - "rv64_b", - "rv64_zbb", - "rv64_zbkb", - "rv64_zk", - "rv64_zkn", - "rv64_zks" - ], - "match": "0x60005013", - "mask": "0xfc00707f" - }, - "roriw": { - "encoding": "0110000----------101-----0011011", - "variable_fields": ["rd", "rs1", "shamtw"], - "extension": [ - "rv64_b", - "rv64_zbb", - "rv64_zbkb", - "rv64_zk", - "rv64_zkn", - "rv64_zks" - ], - "match": "0x6000501b", - "mask": "0xfe00707f" - }, - "rorw": { - "encoding": "0110000----------101-----0111011", - "variable_fields": ["rd", "rs1"], - "extension": [ - "rv64_b", - "rv64_zbb", - "rv64_zbkb", - "rv64_zk", - "rv64_zkn", - "rv64_zks" - ], - "match": "0x6000503b", - "mask": "0xfe00707f" - }, - "sb": { - "encoding": "-----------------000-----0100011", - "variable_fields": ["rs1", "rs2", "imm12hi", "imm12lo"], - "extension": ["rv_i"], - "match": "0x23", - "mask": "0x707f" - }, - "sb_rl": { - "encoding": "00111-1----------000000000101111", - "variable_fields": ["rs1", "rs2", "aq"], - "extension": ["rv_zalasr"], - "match": "0x3a00002f", - "mask": "0xfa007fff" - }, - "sc_d": { - "encoding": "00011------------011-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv64_a", "rv64_zalrsc"], - "match": "0x1800302f", - "mask": "0xf800707f" - }, - "sc_w": { - "encoding": "00011------------010-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_a", "rv_zalrsc"], - "match": "0x1800202f", - "mask": "0xf800707f" - }, - "sctrclr": { - "encoding": "00010000010000000000000001110011", - "variable_fields": [], - "extension": ["rv_smdbltrp"], - "match": "0x10400073", - "mask": "0xffffffff" - }, - "sd": { - "encoding": "-----------------011-----0100011", - "variable_fields": ["rs2", "rs1", "imm12hi", "imm12lo"], - "extension": ["rv64_i"], - "match": "0x3023", - "mask": "0x707f" - }, - "sd_rl": { - "encoding": "00111-1----------011000000101111", - "variable_fields": ["rs1", "rs2", "aq"], - "extension": ["rv_zalasr"], - "match": "0x3a00302f", - "mask": "0xfa007fff" - }, - "sext_b": { - "encoding": "011000000100-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_b", "rv_zbb"], - "match": "0x60401013", - "mask": "0xfff0707f" - }, - "sext_h": { - "encoding": "011000000101-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_b", "rv_zbb"], - "match": "0x60501013", - "mask": "0xfff0707f" - }, - "sfence_inval_ir": { - "encoding": "00011000000100000000000001110011", - "variable_fields": [], - "extension": ["rv_svinval"], - "match": "0x18100073", - "mask": "0xffffffff" - }, - "sfence_vma": { - "encoding": "0001001----------000000001110011", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv_s"], - "match": "0x12000073", - "mask": "0xfe007fff" - }, - "sfence_w_inval": { - "encoding": "00011000000000000000000001110011", - "variable_fields": [], - "extension": ["rv_svinval"], - "match": "0x18000073", - "mask": "0xffffffff" - }, - "sh": { - "encoding": "-----------------001-----0100011", - "variable_fields": ["rs1", "rs2", "imm12hi", "imm12lo"], - "extension": ["rv_i"], - "match": "0x1023", - "mask": "0x707f" - }, - "sh1add": { - "encoding": "0010000----------010-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zba"], - "match": "0x20002033", - "mask": "0xfe00707f" - }, - "sh1add_uw": { - "encoding": "0010000----------010-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_b", "rv64_zba"], - "match": "0x2000203b", - "mask": "0xfe00707f" - }, - "sh2add": { - "encoding": "0010000----------100-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zba"], - "match": "0x20004033", - "mask": "0xfe00707f" - }, - "sh2add_uw": { - "encoding": "0010000----------100-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_b", "rv64_zba"], - "match": "0x2000403b", - "mask": "0xfe00707f" - }, - "sh3add": { - "encoding": "0010000----------110-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zba"], - "match": "0x20006033", - "mask": "0xfe00707f" - }, - "sh3add_uw": { - "encoding": "0010000----------110-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_b", "rv64_zba"], - "match": "0x2000603b", - "mask": "0xfe00707f" - }, - "sh_rl": { - "encoding": "00111-1----------001000000101111", - "variable_fields": ["rs1", "rs2", "aq"], - "extension": ["rv_zalasr"], - "match": "0x3a00102f", - "mask": "0xfa007fff" - }, - "sha256sig0": { - "encoding": "000100000010-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_zk", "rv_zkn", "rv_zknh"], - "match": "0x10201013", - "mask": "0xfff0707f" - }, - "sha256sig1": { - "encoding": "000100000011-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_zk", "rv_zkn", "rv_zknh"], - "match": "0x10301013", - "mask": "0xfff0707f" - }, - "sha256sum0": { - "encoding": "000100000000-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_zk", "rv_zkn", "rv_zknh"], - "match": "0x10001013", - "mask": "0xfff0707f" - }, - "sha256sum1": { - "encoding": "000100000001-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_zk", "rv_zkn", "rv_zknh"], - "match": "0x10101013", - "mask": "0xfff0707f" - }, - "sha512sig0": { - "encoding": "000100000110-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_zk", "rv64_zkn", "rv64_zknh"], - "match": "0x10601013", - "mask": "0xfff0707f" - }, - "sha512sig0h": { - "encoding": "0101110----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv32_zk", "rv32_zkn", "rv32_zknh"], - "match": "0x5c000033", - "mask": "0xfe00707f" - }, - "sha512sig0l": { - "encoding": "0101010----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv32_zk", "rv32_zkn", "rv32_zknh"], - "match": "0x54000033", - "mask": "0xfe00707f" - }, - "sha512sig1": { - "encoding": "000100000111-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_zk", "rv64_zkn", "rv64_zknh"], - "match": "0x10701013", - "mask": "0xfff0707f" - }, - "sha512sig1h": { - "encoding": "0101111----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv32_zk", "rv32_zkn", "rv32_zknh"], - "match": "0x5e000033", - "mask": "0xfe00707f" - }, - "sha512sig1l": { - "encoding": "0101011----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv32_zk", "rv32_zkn", "rv32_zknh"], - "match": "0x56000033", - "mask": "0xfe00707f" - }, - "sha512sum0": { - "encoding": "000100000100-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_zk", "rv64_zkn", "rv64_zknh"], - "match": "0x10401013", - "mask": "0xfff0707f" - }, - "sha512sum0r": { - "encoding": "0101000----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv32_zk", "rv32_zkn", "rv32_zknh"], - "match": "0x50000033", - "mask": "0xfe00707f" - }, - "sha512sum1": { - "encoding": "000100000101-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_zk", "rv64_zkn", "rv64_zknh"], - "match": "0x10501013", - "mask": "0xfff0707f" - }, - "sha512sum1r": { - "encoding": "0101001----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv32_zk", "rv32_zkn", "rv32_zknh"], - "match": "0x52000033", - "mask": "0xfe00707f" - }, - "sinval_vma": { - "encoding": "0001011----------000000001110011", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv_svinval"], - "match": "0x16000073", - "mask": "0xfe007fff" - }, - "sll": { - "encoding": "0000000----------001-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_i"], - "match": "0x1033", - "mask": "0xfe00707f" - }, - "slli": { - "encoding": "000000-----------001-----0010011", - "variable_fields": ["rd", "rs1", "shamtd"], - "extension": ["rv64_i"], - "match": "0x1013", - "mask": "0xfc00707f" - }, - "slli_uw": { - "encoding": "000010-----------001-----0011011", - "variable_fields": ["rd", "rs1", "shamtd"], - "extension": ["rv64_b", "rv64_zba"], - "match": "0x800101b", - "mask": "0xfc00707f" - }, - "slliw": { - "encoding": "0000000----------001-----0011011", - "variable_fields": ["rd", "rs1", "shamtw"], - "extension": ["rv64_i"], - "match": "0x101b", - "mask": "0xfe00707f" - }, - "sllw": { - "encoding": "0000000----------001-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_i"], - "match": "0x103b", - "mask": "0xfe00707f" - }, - "slt": { - "encoding": "0000000----------010-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_i"], - "match": "0x2033", - "mask": "0xfe00707f" - }, - "slti": { - "encoding": "-----------------010-----0010011", - "variable_fields": ["rd", "rs1", "imm12"], - "extension": ["rv_i"], - "match": "0x2013", - "mask": "0x707f" - }, - "sltiu": { - "encoding": "-----------------011-----0010011", - "variable_fields": ["rd", "rs1", "imm12"], - "extension": ["rv_i"], - "match": "0x3013", - "mask": "0x707f" - }, - "sltu": { - "encoding": "0000000----------011-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_i"], - "match": "0x3033", - "mask": "0xfe00707f" - }, - "sm3p0": { - "encoding": "000100001000-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_zks", "rv_zksh"], - "match": "0x10801013", - "mask": "0xfff0707f" - }, - "sm3p1": { - "encoding": "000100001001-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_zks", "rv_zksh"], - "match": "0x10901013", - "mask": "0xfff0707f" - }, - "sm4ed": { - "encoding": "--11000----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2", "bs"], - "extension": ["rv_zks", "rv_zksed"], - "match": "0x30000033", - "mask": "0x3e00707f" - }, - "sm4ks": { - "encoding": "--11010----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2", "bs"], - "extension": ["rv_zks", "rv_zksed"], - "match": "0x34000033", - "mask": "0x3e00707f" - }, - "sra": { - "encoding": "0100000----------101-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_i"], - "match": "0x40005033", - "mask": "0xfe00707f" - }, - "srai": { - "encoding": "010000-----------101-----0010011", - "variable_fields": ["rd", "rs1", "shamtd"], - "extension": ["rv64_i"], - "match": "0x40005013", - "mask": "0xfc00707f" - }, - "sraiw": { - "encoding": "0100000----------101-----0011011", - "variable_fields": ["rd", "rs1", "shamtw"], - "extension": ["rv64_i"], - "match": "0x4000501b", - "mask": "0xfe00707f" - }, - "sraw": { - "encoding": "0100000----------101-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_i"], - "match": "0x4000503b", - "mask": "0xfe00707f" - }, - "sret": { - "encoding": "00010000001000000000000001110011", - "variable_fields": [], - "extension": ["rv_s"], - "match": "0x10200073", - "mask": "0xffffffff" - }, - "srl": { - "encoding": "0000000----------101-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_i"], - "match": "0x5033", - "mask": "0xfe00707f" - }, - "srli": { - "encoding": "000000-----------101-----0010011", - "variable_fields": ["rd", "rs1", "shamtd"], - "extension": ["rv64_i"], - "match": "0x5013", - "mask": "0xfc00707f" - }, - "srliw": { - "encoding": "0000000----------101-----0011011", - "variable_fields": ["rd", "rs1", "shamtw"], - "extension": ["rv64_i"], - "match": "0x501b", - "mask": "0xfe00707f" - }, - "srlw": { - "encoding": "0000000----------101-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_i"], - "match": "0x503b", - "mask": "0xfe00707f" - }, - "ssamoswap_d": { - "encoding": "01001------------011-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zicfiss"], - "match": "0x4800302f", - "mask": "0xf800707f" - }, - "ssamoswap_w": { - "encoding": "01001------------010-----0101111", - "variable_fields": ["rd", "rs1", "rs2", "rl", "aq"], - "extension": ["rv_zicfiss"], - "match": "0x4800202f", - "mask": "0xf800707f" - }, - "sspopchk_x1": { - "encoding": "11001101110000001100000001110011", - "variable_fields": [], - "extension": ["rv_zicfiss"], - "match": "0xcdc0c073", - "mask": "0xffffffff" - }, - "sspopchk_x5": { - "encoding": "11001101110000101100000001110011", - "variable_fields": [], - "extension": ["rv_zicfiss"], - "match": "0xcdc2c073", - "mask": "0xffffffff" - }, - "sspush_x1": { - "encoding": "11001110000100000100000001110011", - "variable_fields": [], - "extension": ["rv_zicfiss"], - "match": "0xce104073", - "mask": "0xffffffff" - }, - "sspush_x5": { - "encoding": "11001110010100000100000001110011", - "variable_fields": [], - "extension": ["rv_zicfiss"], - "match": "0xce504073", - "mask": "0xffffffff" - }, - "ssrdp": { - "encoding": "11001101110000000100-----1110011", - "variable_fields": ["rd"], - "extension": ["rv_zicfiss"], - "match": "0xcdc04073", - "mask": "0xfffff07f" - }, - "sub": { - "encoding": "0100000----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_i"], - "match": "0x40000033", - "mask": "0xfe00707f" - }, - "subw": { - "encoding": "0100000----------000-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_i"], - "match": "0x4000003b", - "mask": "0xfe00707f" - }, - "sw": { - "encoding": "-----------------010-----0100011", - "variable_fields": ["rs1", "rs2", "imm12hi", "imm12lo"], - "extension": ["rv_i"], - "match": "0x2023", - "mask": "0x707f" - }, - "sw_rl": { - "encoding": "00111-1----------010000000101111", - "variable_fields": ["rs1", "rs2", "aq"], - "extension": ["rv_zalasr"], - "match": "0x3a00202f", - "mask": "0xfa007fff" - }, - "unzip": { - "encoding": "000010001111-----101-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv32_zbkb"], - "match": "0x8f05013", - "mask": "0xfff0707f" - }, - "vaadd_vv": { - "encoding": "001001-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x24002057", - "mask": "0xfc00707f" - }, - "vaadd_vx": { - "encoding": "001001-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x24006057", - "mask": "0xfc00707f" - }, - "vaaddu_vv": { - "encoding": "001000-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x20002057", - "mask": "0xfc00707f" - }, - "vaaddu_vx": { - "encoding": "001000-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x20006057", - "mask": "0xfc00707f" - }, - "vadc_vim": { - "encoding": "0100000----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2"], - "extension": ["rv_v"], - "match": "0x40003057", - "mask": "0xfe00707f" - }, - "vadc_vvm": { - "encoding": "0100000----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x40000057", - "mask": "0xfe00707f" - }, - "vadc_vxm": { - "encoding": "0100000----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2"], - "extension": ["rv_v"], - "match": "0x40004057", - "mask": "0xfe00707f" - }, - "vadd_vi": { - "encoding": "000000-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x3057", - "mask": "0xfc00707f" - }, - "vadd_vv": { - "encoding": "000000-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x57", - "mask": "0xfc00707f" - }, - "vadd_vx": { - "encoding": "000000-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4057", - "mask": "0xfc00707f" - }, - "vaesdf_vs": { - "encoding": "1010011-----00001010-----1110111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_zvkn", "rv_zvkned"], - "match": "0xa600a077", - "mask": "0xfe0ff07f" - }, - "vaesdf_vv": { - "encoding": "1010001-----00001010-----1110111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_zvkn", "rv_zvkned"], - "match": "0xa200a077", - "mask": "0xfe0ff07f" - }, - "vaesdm_vs": { - "encoding": "1010011-----00000010-----1110111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_zvkn", "rv_zvkned"], - "match": "0xa6002077", - "mask": "0xfe0ff07f" - }, - "vaesdm_vv": { - "encoding": "1010001-----00000010-----1110111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_zvkn", "rv_zvkned"], - "match": "0xa2002077", - "mask": "0xfe0ff07f" - }, - "vaesef_vs": { - "encoding": "1010011-----00011010-----1110111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_zvkn", "rv_zvkned"], - "match": "0xa601a077", - "mask": "0xfe0ff07f" - }, - "vaesef_vv": { - "encoding": "1010001-----00011010-----1110111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_zvkn", "rv_zvkned"], - "match": "0xa201a077", - "mask": "0xfe0ff07f" - }, - "vaesem_vs": { - "encoding": "1010011-----00010010-----1110111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_zvkn", "rv_zvkned"], - "match": "0xa6012077", - "mask": "0xfe0ff07f" - }, - "vaesem_vv": { - "encoding": "1010001-----00010010-----1110111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_zvkn", "rv_zvkned"], - "match": "0xa2012077", - "mask": "0xfe0ff07f" - }, - "vaeskf1_vi": { - "encoding": "1000101----------010-----1110111", - "variable_fields": ["vd", "zimm5", "vs2"], - "extension": ["rv_zvkn", "rv_zvkned"], - "match": "0x8a002077", - "mask": "0xfe00707f" - }, - "vaeskf2_vi": { - "encoding": "1010101----------010-----1110111", - "variable_fields": ["vd", "zimm5", "vs2"], - "extension": ["rv_zvkn", "rv_zvkned"], - "match": "0xaa002077", - "mask": "0xfe00707f" - }, - "vaesz_vs": { - "encoding": "1010011-----00111010-----1110111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_zvkn", "rv_zvkned"], - "match": "0xa603a077", - "mask": "0xfe0ff07f" - }, - "vand_vi": { - "encoding": "001001-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x24003057", - "mask": "0xfc00707f" - }, - "vand_vv": { - "encoding": "001001-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x24000057", - "mask": "0xfc00707f" - }, - "vand_vx": { - "encoding": "001001-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x24004057", - "mask": "0xfc00707f" - }, - "vandn_vv": { - "encoding": "000001-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0x4000057", - "mask": "0xfc00707f" - }, - "vandn_vx": { - "encoding": "000001-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0x4004057", - "mask": "0xfc00707f" - }, - "vasub_vv": { - "encoding": "001011-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x2c002057", - "mask": "0xfc00707f" - }, - "vasub_vx": { - "encoding": "001011-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x2c006057", - "mask": "0xfc00707f" - }, - "vasubu_vv": { - "encoding": "001010-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x28002057", - "mask": "0xfc00707f" - }, - "vasubu_vx": { - "encoding": "001010-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x28006057", - "mask": "0xfc00707f" - }, - "vbrev8_v": { - "encoding": "010010------01000010-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0x48042057", - "mask": "0xfc0ff07f" - }, - "vbrev_v": { - "encoding": "010010------01010010-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0x48052057", - "mask": "0xfc0ff07f" - }, - "vclmul_vv": { - "encoding": "001100-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_zvbc", "rv_zvkn", "rv_zvks"], - "match": "0x30002057", - "mask": "0xfc00707f" - }, - "vclmul_vx": { - "encoding": "001100-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_zvbc", "rv_zvkn", "rv_zvks"], - "match": "0x30006057", - "mask": "0xfc00707f" - }, - "vclmulh_vv": { - "encoding": "001101-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_zvbc", "rv_zvkn", "rv_zvks"], - "match": "0x34002057", - "mask": "0xfc00707f" - }, - "vclmulh_vx": { - "encoding": "001101-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_zvbc", "rv_zvkn", "rv_zvks"], - "match": "0x34006057", - "mask": "0xfc00707f" - }, - "vclz_v": { - "encoding": "010010------01100010-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0x48062057", - "mask": "0xfc0ff07f" - }, - "vcompress_vm": { - "encoding": "0101111----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x5e002057", - "mask": "0xfe00707f" - }, - "vcpop_m": { - "encoding": "010000------10000010-----1010111", - "variable_fields": ["rd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x40082057", - "mask": "0xfc0ff07f" - }, - "vcpop_v": { - "encoding": "010010------01110010-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0x48072057", - "mask": "0xfc0ff07f" - }, - "vctz_v": { - "encoding": "010010------01101010-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0x4806a057", - "mask": "0xfc0ff07f" - }, - "vdiv_vv": { - "encoding": "100001-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x84002057", - "mask": "0xfc00707f" - }, - "vdiv_vx": { - "encoding": "100001-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x84006057", - "mask": "0xfc00707f" - }, - "vdivu_vv": { - "encoding": "100000-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x80002057", - "mask": "0xfc00707f" - }, - "vdivu_vx": { - "encoding": "100000-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x80006057", - "mask": "0xfc00707f" - }, - "vfadd_vf": { - "encoding": "000000-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x5057", - "mask": "0xfc00707f" - }, - "vfadd_vv": { - "encoding": "000000-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x1057", - "mask": "0xfc00707f" - }, - "vfclass_v": { - "encoding": "010011------10000001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4c081057", - "mask": "0xfc0ff07f" - }, - "vfcvt_f_x_v": { - "encoding": "010010------00011001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x48019057", - "mask": "0xfc0ff07f" - }, - "vfcvt_f_xu_v": { - "encoding": "010010------00010001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x48011057", - "mask": "0xfc0ff07f" - }, - "vfcvt_rtz_x_f_v": { - "encoding": "010010------00111001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x48039057", - "mask": "0xfc0ff07f" - }, - "vfcvt_rtz_xu_f_v": { - "encoding": "010010------00110001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x48031057", - "mask": "0xfc0ff07f" - }, - "vfcvt_x_f_v": { - "encoding": "010010------00001001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x48009057", - "mask": "0xfc0ff07f" - }, - "vfcvt_xu_f_v": { - "encoding": "010010------00000001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x48001057", - "mask": "0xfc0ff07f" - }, - "vfdiv_vf": { - "encoding": "100000-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x80005057", - "mask": "0xfc00707f" - }, - "vfdiv_vv": { - "encoding": "100000-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x80001057", - "mask": "0xfc00707f" - }, - "vfirst_m": { - "encoding": "010000------10001010-----1010111", - "variable_fields": ["rd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4008a057", - "mask": "0xfc0ff07f" - }, - "vfmacc_vf": { - "encoding": "101100-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xb0005057", - "mask": "0xfc00707f" - }, - "vfmacc_vv": { - "encoding": "101100-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xb0001057", - "mask": "0xfc00707f" - }, - "vfmadd_vf": { - "encoding": "101000-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa0005057", - "mask": "0xfc00707f" - }, - "vfmadd_vv": { - "encoding": "101000-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa0001057", - "mask": "0xfc00707f" - }, - "vfmax_vf": { - "encoding": "000110-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x18005057", - "mask": "0xfc00707f" - }, - "vfmax_vv": { - "encoding": "000110-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x18001057", - "mask": "0xfc00707f" - }, - "vfmerge_vfm": { - "encoding": "0101110----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2"], - "extension": ["rv_v"], - "match": "0x5c005057", - "mask": "0xfe00707f" - }, - "vfmin_vf": { - "encoding": "000100-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x10005057", - "mask": "0xfc00707f" - }, - "vfmin_vv": { - "encoding": "000100-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x10001057", - "mask": "0xfc00707f" - }, - "vfmsac_vf": { - "encoding": "101110-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xb8005057", - "mask": "0xfc00707f" - }, - "vfmsac_vv": { - "encoding": "101110-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xb8001057", - "mask": "0xfc00707f" - }, - "vfmsub_vf": { - "encoding": "101010-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa8005057", - "mask": "0xfc00707f" - }, - "vfmsub_vv": { - "encoding": "101010-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa8001057", - "mask": "0xfc00707f" - }, - "vfmul_vf": { - "encoding": "100100-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x90005057", - "mask": "0xfc00707f" - }, - "vfmul_vv": { - "encoding": "100100-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x90001057", - "mask": "0xfc00707f" - }, - "vfmv_f_s": { - "encoding": "0100001-----00000001-----1010111", - "variable_fields": ["rd", "vs2"], - "extension": ["rv_v"], - "match": "0x42001057", - "mask": "0xfe0ff07f" - }, - "vfmv_s_f": { - "encoding": "010000100000-----101-----1010111", - "variable_fields": ["vd", "rs1"], - "extension": ["rv_v"], - "match": "0x42005057", - "mask": "0xfff0707f" - }, - "vfmv_v_f": { - "encoding": "010111100000-----101-----1010111", - "variable_fields": ["vd", "rs1"], - "extension": ["rv_v"], - "match": "0x5e005057", - "mask": "0xfff0707f" - }, - "vfncvt_f_f_w": { - "encoding": "010010------10100001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x480a1057", - "mask": "0xfc0ff07f" - }, - "vfncvt_f_x_w": { - "encoding": "010010------10011001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x48099057", - "mask": "0xfc0ff07f" - }, - "vfncvt_f_xu_w": { - "encoding": "010010------10010001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x48091057", - "mask": "0xfc0ff07f" - }, - "vfncvt_rod_f_f_w": { - "encoding": "010010------10101001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x480a9057", - "mask": "0xfc0ff07f" - }, - "vfncvt_rtz_x_f_w": { - "encoding": "010010------10111001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x480b9057", - "mask": "0xfc0ff07f" - }, - "vfncvt_rtz_xu_f_w": { - "encoding": "010010------10110001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x480b1057", - "mask": "0xfc0ff07f" - }, - "vfncvt_x_f_w": { - "encoding": "010010------10001001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x48089057", - "mask": "0xfc0ff07f" - }, - "vfncvt_xu_f_w": { - "encoding": "010010------10000001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x48081057", - "mask": "0xfc0ff07f" - }, - "vfncvtbf16_f_f_w": { - "encoding": "010010------11101001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_zvfbfmin"], - "match": "0x480e9057", - "mask": "0xfc0ff07f" - }, - "vfnmacc_vf": { - "encoding": "101101-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xb4005057", - "mask": "0xfc00707f" - }, - "vfnmacc_vv": { - "encoding": "101101-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xb4001057", - "mask": "0xfc00707f" - }, - "vfnmadd_vf": { - "encoding": "101001-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa4005057", - "mask": "0xfc00707f" - }, - "vfnmadd_vv": { - "encoding": "101001-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa4001057", - "mask": "0xfc00707f" - }, - "vfnmsac_vf": { - "encoding": "101111-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xbc005057", - "mask": "0xfc00707f" - }, - "vfnmsac_vv": { - "encoding": "101111-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xbc001057", - "mask": "0xfc00707f" - }, - "vfnmsub_vf": { - "encoding": "101011-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xac005057", - "mask": "0xfc00707f" - }, - "vfnmsub_vv": { - "encoding": "101011-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xac001057", - "mask": "0xfc00707f" - }, - "vfrdiv_vf": { - "encoding": "100001-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x84005057", - "mask": "0xfc00707f" - }, - "vfrec7_v": { - "encoding": "010011------00101001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4c029057", - "mask": "0xfc0ff07f" - }, - "vfredmax_vs": { - "encoding": "000111-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x1c001057", - "mask": "0xfc00707f" - }, - "vfredmin_vs": { - "encoding": "000101-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x14001057", - "mask": "0xfc00707f" - }, - "vfredosum_vs": { - "encoding": "000011-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc001057", - "mask": "0xfc00707f" - }, - "vfredusum_vs": { - "encoding": "000001-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4001057", - "mask": "0xfc00707f" - }, - "vfrsqrt7_v": { - "encoding": "010011------00100001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4c021057", - "mask": "0xfc0ff07f" - }, - "vfrsub_vf": { - "encoding": "100111-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x9c005057", - "mask": "0xfc00707f" - }, - "vfsgnj_vf": { - "encoding": "001000-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x20005057", - "mask": "0xfc00707f" - }, - "vfsgnj_vv": { - "encoding": "001000-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x20001057", - "mask": "0xfc00707f" - }, - "vfsgnjn_vf": { - "encoding": "001001-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x24005057", - "mask": "0xfc00707f" - }, - "vfsgnjn_vv": { - "encoding": "001001-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x24001057", - "mask": "0xfc00707f" - }, - "vfsgnjx_vf": { - "encoding": "001010-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x28005057", - "mask": "0xfc00707f" - }, - "vfsgnjx_vv": { - "encoding": "001010-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x28001057", - "mask": "0xfc00707f" - }, - "vfslide1down_vf": { - "encoding": "001111-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x3c005057", - "mask": "0xfc00707f" - }, - "vfslide1up_vf": { - "encoding": "001110-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x38005057", - "mask": "0xfc00707f" - }, - "vfsqrt_v": { - "encoding": "010011------00000001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4c001057", - "mask": "0xfc0ff07f" - }, - "vfsub_vf": { - "encoding": "000010-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x8005057", - "mask": "0xfc00707f" - }, - "vfsub_vv": { - "encoding": "000010-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x8001057", - "mask": "0xfc00707f" - }, - "vfwadd_vf": { - "encoding": "110000-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc0005057", - "mask": "0xfc00707f" - }, - "vfwadd_vv": { - "encoding": "110000-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc0001057", - "mask": "0xfc00707f" - }, - "vfwadd_wf": { - "encoding": "110100-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xd0005057", - "mask": "0xfc00707f" - }, - "vfwadd_wv": { - "encoding": "110100-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xd0001057", - "mask": "0xfc00707f" - }, - "vfwcvt_f_f_v": { - "encoding": "010010------01100001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x48061057", - "mask": "0xfc0ff07f" - }, - "vfwcvt_f_x_v": { - "encoding": "010010------01011001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x48059057", - "mask": "0xfc0ff07f" - }, - "vfwcvt_f_xu_v": { - "encoding": "010010------01010001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x48051057", - "mask": "0xfc0ff07f" - }, - "vfwcvt_rtz_x_f_v": { - "encoding": "010010------01111001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x48079057", - "mask": "0xfc0ff07f" - }, - "vfwcvt_rtz_xu_f_v": { - "encoding": "010010------01110001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x48071057", - "mask": "0xfc0ff07f" - }, - "vfwcvt_x_f_v": { - "encoding": "010010------01001001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x48049057", - "mask": "0xfc0ff07f" - }, - "vfwcvt_xu_f_v": { - "encoding": "010010------01000001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x48041057", - "mask": "0xfc0ff07f" - }, - "vfwcvtbf16_f_f_v": { - "encoding": "010010------01101001-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_zvfbfmin"], - "match": "0x48069057", - "mask": "0xfc0ff07f" - }, - "vfwmacc_vf": { - "encoding": "111100-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xf0005057", - "mask": "0xfc00707f" - }, - "vfwmacc_vv": { - "encoding": "111100-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xf0001057", - "mask": "0xfc00707f" - }, - "vfwmaccbf16_vf": { - "encoding": "111011-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_zvfbfwma"], - "match": "0xec005057", - "mask": "0xfc00707f" - }, - "vfwmaccbf16_vv": { - "encoding": "111011-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_zvfbfwma"], - "match": "0xec001057", - "mask": "0xfc00707f" - }, - "vfwmsac_vf": { - "encoding": "111110-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xf8005057", - "mask": "0xfc00707f" - }, - "vfwmsac_vv": { - "encoding": "111110-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xf8001057", - "mask": "0xfc00707f" - }, - "vfwmul_vf": { - "encoding": "111000-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xe0005057", - "mask": "0xfc00707f" - }, - "vfwmul_vv": { - "encoding": "111000-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xe0001057", - "mask": "0xfc00707f" - }, - "vfwnmacc_vf": { - "encoding": "111101-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xf4005057", - "mask": "0xfc00707f" - }, - "vfwnmacc_vv": { - "encoding": "111101-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xf4001057", - "mask": "0xfc00707f" - }, - "vfwnmsac_vf": { - "encoding": "111111-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xfc005057", - "mask": "0xfc00707f" - }, - "vfwnmsac_vv": { - "encoding": "111111-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xfc001057", - "mask": "0xfc00707f" - }, - "vfwredosum_vs": { - "encoding": "110011-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xcc001057", - "mask": "0xfc00707f" - }, - "vfwredusum_vs": { - "encoding": "110001-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc4001057", - "mask": "0xfc00707f" - }, - "vfwsub_vf": { - "encoding": "110010-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc8005057", - "mask": "0xfc00707f" - }, - "vfwsub_vv": { - "encoding": "110010-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc8001057", - "mask": "0xfc00707f" - }, - "vfwsub_wf": { - "encoding": "110110-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xd8005057", - "mask": "0xfc00707f" - }, - "vfwsub_wv": { - "encoding": "110110-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xd8001057", - "mask": "0xfc00707f" - }, - "vghsh_vv": { - "encoding": "1011001----------010-----1110111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_zvkg"], - "match": "0xb2002077", - "mask": "0xfe00707f" - }, - "vgmul_vv": { - "encoding": "1010001-----10001010-----1110111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_zvkg"], - "match": "0xa208a077", - "mask": "0xfe0ff07f" - }, - "vid_v": { - "encoding": "010100-0000010001010-----1010111", - "variable_fields": ["vd", "vm"], - "extension": ["rv_v"], - "match": "0x5008a057", - "mask": "0xfdfff07f" - }, - "viota_m": { - "encoding": "010100------10000010-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x50082057", - "mask": "0xfc0ff07f" - }, - "vl1re16_v": { - "encoding": "000000101000-----101-----0000111", - "variable_fields": ["vd", "rs1"], - "extension": ["rv_v"], - "match": "0x2805007", - "mask": "0xfff0707f" - }, - "vl1re32_v": { - "encoding": "000000101000-----110-----0000111", - "variable_fields": ["vd", "rs1"], - "extension": ["rv_v"], - "match": "0x2806007", - "mask": "0xfff0707f" - }, - "vl1re64_v": { - "encoding": "000000101000-----111-----0000111", - "variable_fields": ["vd", "rs1"], - "extension": ["rv_v"], - "match": "0x2807007", - "mask": "0xfff0707f" - }, - "vl1re8_v": { - "encoding": "000000101000-----000-----0000111", - "variable_fields": ["vd", "rs1"], - "extension": ["rv_v"], - "match": "0x2800007", - "mask": "0xfff0707f" - }, - "vl2re16_v": { - "encoding": "001000101000-----101-----0000111", - "variable_fields": ["vd", "rs1"], - "extension": ["rv_v"], - "match": "0x22805007", - "mask": "0xfff0707f" - }, - "vl2re32_v": { - "encoding": "001000101000-----110-----0000111", - "variable_fields": ["vd", "rs1"], - "extension": ["rv_v"], - "match": "0x22806007", - "mask": "0xfff0707f" - }, - "vl2re64_v": { - "encoding": "001000101000-----111-----0000111", - "variable_fields": ["vd", "rs1"], - "extension": ["rv_v"], - "match": "0x22807007", - "mask": "0xfff0707f" - }, - "vl2re8_v": { - "encoding": "001000101000-----000-----0000111", - "variable_fields": ["vd", "rs1"], - "extension": ["rv_v"], - "match": "0x22800007", - "mask": "0xfff0707f" - }, - "vl4re16_v": { - "encoding": "011000101000-----101-----0000111", - "variable_fields": ["vd", "rs1"], - "extension": ["rv_v"], - "match": "0x62805007", - "mask": "0xfff0707f" - }, - "vl4re32_v": { - "encoding": "011000101000-----110-----0000111", - "variable_fields": ["vd", "rs1"], - "extension": ["rv_v"], - "match": "0x62806007", - "mask": "0xfff0707f" - }, - "vl4re64_v": { - "encoding": "011000101000-----111-----0000111", - "variable_fields": ["vd", "rs1"], - "extension": ["rv_v"], - "match": "0x62807007", - "mask": "0xfff0707f" - }, - "vl4re8_v": { - "encoding": "011000101000-----000-----0000111", - "variable_fields": ["vd", "rs1"], - "extension": ["rv_v"], - "match": "0x62800007", - "mask": "0xfff0707f" - }, - "vl8re16_v": { - "encoding": "111000101000-----101-----0000111", - "variable_fields": ["vd", "rs1"], - "extension": ["rv_v"], - "match": "0xe2805007", - "mask": "0xfff0707f" - }, - "vl8re32_v": { - "encoding": "111000101000-----110-----0000111", - "variable_fields": ["vd", "rs1"], - "extension": ["rv_v"], - "match": "0xe2806007", - "mask": "0xfff0707f" - }, - "vl8re64_v": { - "encoding": "111000101000-----111-----0000111", - "variable_fields": ["vd", "rs1"], - "extension": ["rv_v"], - "match": "0xe2807007", - "mask": "0xfff0707f" - }, - "vl8re8_v": { - "encoding": "111000101000-----000-----0000111", - "variable_fields": ["vd", "rs1"], - "extension": ["rv_v"], - "match": "0xe2800007", - "mask": "0xfff0707f" - }, - "vle16_v": { - "encoding": "000000-00000-----101-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x5007", - "mask": "0xfdf0707f" - }, - "vle16ff_v": { - "encoding": "000000-10000-----101-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x1005007", - "mask": "0xfdf0707f" - }, - "vle32_v": { - "encoding": "000000-00000-----110-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x6007", - "mask": "0xfdf0707f" - }, - "vle32ff_v": { - "encoding": "000000-10000-----110-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x1006007", - "mask": "0xfdf0707f" - }, - "vle64_v": { - "encoding": "000000-00000-----111-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x7007", - "mask": "0xfdf0707f" - }, - "vle64ff_v": { - "encoding": "000000-10000-----111-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x1007007", - "mask": "0xfdf0707f" - }, - "vle8_v": { - "encoding": "000000-00000-----000-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x7", - "mask": "0xfdf0707f" - }, - "vle8ff_v": { - "encoding": "000000-10000-----000-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x1000007", - "mask": "0xfdf0707f" - }, - "vlm_v": { - "encoding": "000000101011-----000-----0000111", - "variable_fields": ["vd", "rs1"], - "extension": ["rv_v"], - "match": "0x2b00007", - "mask": "0xfff0707f" - }, - "vloxei16_v": { - "encoding": "000011-----------101-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc005007", - "mask": "0xfc00707f" - }, - "vloxei32_v": { - "encoding": "000011-----------110-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc006007", - "mask": "0xfc00707f" - }, - "vloxei64_v": { - "encoding": "000011-----------111-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc007007", - "mask": "0xfc00707f" - }, - "vloxei8_v": { - "encoding": "000011-----------000-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc000007", - "mask": "0xfc00707f" - }, - "vloxseg2ei16_v": { - "encoding": "001011-----------101-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x2c005007", - "mask": "0xfc00707f" - }, - "vloxseg2ei32_v": { - "encoding": "001011-----------110-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x2c006007", - "mask": "0xfc00707f" - }, - "vloxseg2ei64_v": { - "encoding": "001011-----------111-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x2c007007", - "mask": "0xfc00707f" - }, - "vloxseg2ei8_v": { - "encoding": "001011-----------000-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x2c000007", - "mask": "0xfc00707f" - }, - "vloxseg3ei16_v": { - "encoding": "010011-----------101-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4c005007", - "mask": "0xfc00707f" - }, - "vloxseg3ei32_v": { - "encoding": "010011-----------110-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4c006007", - "mask": "0xfc00707f" - }, - "vloxseg3ei64_v": { - "encoding": "010011-----------111-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4c007007", - "mask": "0xfc00707f" - }, - "vloxseg3ei8_v": { - "encoding": "010011-----------000-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4c000007", - "mask": "0xfc00707f" - }, - "vloxseg4ei16_v": { - "encoding": "011011-----------101-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x6c005007", - "mask": "0xfc00707f" - }, - "vloxseg4ei32_v": { - "encoding": "011011-----------110-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x6c006007", - "mask": "0xfc00707f" - }, - "vloxseg4ei64_v": { - "encoding": "011011-----------111-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x6c007007", - "mask": "0xfc00707f" - }, - "vloxseg4ei8_v": { - "encoding": "011011-----------000-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x6c000007", - "mask": "0xfc00707f" - }, - "vloxseg5ei16_v": { - "encoding": "100011-----------101-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x8c005007", - "mask": "0xfc00707f" - }, - "vloxseg5ei32_v": { - "encoding": "100011-----------110-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x8c006007", - "mask": "0xfc00707f" - }, - "vloxseg5ei64_v": { - "encoding": "100011-----------111-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x8c007007", - "mask": "0xfc00707f" - }, - "vloxseg5ei8_v": { - "encoding": "100011-----------000-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x8c000007", - "mask": "0xfc00707f" - }, - "vloxseg6ei16_v": { - "encoding": "101011-----------101-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xac005007", - "mask": "0xfc00707f" - }, - "vloxseg6ei32_v": { - "encoding": "101011-----------110-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xac006007", - "mask": "0xfc00707f" - }, - "vloxseg6ei64_v": { - "encoding": "101011-----------111-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xac007007", - "mask": "0xfc00707f" - }, - "vloxseg6ei8_v": { - "encoding": "101011-----------000-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xac000007", - "mask": "0xfc00707f" - }, - "vloxseg7ei16_v": { - "encoding": "110011-----------101-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xcc005007", - "mask": "0xfc00707f" - }, - "vloxseg7ei32_v": { - "encoding": "110011-----------110-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xcc006007", - "mask": "0xfc00707f" - }, - "vloxseg7ei64_v": { - "encoding": "110011-----------111-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xcc007007", - "mask": "0xfc00707f" - }, - "vloxseg7ei8_v": { - "encoding": "110011-----------000-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xcc000007", - "mask": "0xfc00707f" - }, - "vloxseg8ei16_v": { - "encoding": "111011-----------101-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xec005007", - "mask": "0xfc00707f" - }, - "vloxseg8ei32_v": { - "encoding": "111011-----------110-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xec006007", - "mask": "0xfc00707f" - }, - "vloxseg8ei64_v": { - "encoding": "111011-----------111-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xec007007", - "mask": "0xfc00707f" - }, - "vloxseg8ei8_v": { - "encoding": "111011-----------000-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xec000007", - "mask": "0xfc00707f" - }, - "vlse16_v": { - "encoding": "000010-----------101-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x8005007", - "mask": "0xfc00707f" - }, - "vlse32_v": { - "encoding": "000010-----------110-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x8006007", - "mask": "0xfc00707f" - }, - "vlse64_v": { - "encoding": "000010-----------111-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x8007007", - "mask": "0xfc00707f" - }, - "vlse8_v": { - "encoding": "000010-----------000-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x8000007", - "mask": "0xfc00707f" - }, - "vlseg2e16_v": { - "encoding": "001000-00000-----101-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x20005007", - "mask": "0xfdf0707f" - }, - "vlseg2e16ff_v": { - "encoding": "001000-10000-----101-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x21005007", - "mask": "0xfdf0707f" - }, - "vlseg2e32_v": { - "encoding": "001000-00000-----110-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x20006007", - "mask": "0xfdf0707f" - }, - "vlseg2e32ff_v": { - "encoding": "001000-10000-----110-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x21006007", - "mask": "0xfdf0707f" - }, - "vlseg2e64_v": { - "encoding": "001000-00000-----111-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x20007007", - "mask": "0xfdf0707f" - }, - "vlseg2e64ff_v": { - "encoding": "001000-10000-----111-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x21007007", - "mask": "0xfdf0707f" - }, - "vlseg2e8_v": { - "encoding": "001000-00000-----000-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x20000007", - "mask": "0xfdf0707f" - }, - "vlseg2e8ff_v": { - "encoding": "001000-10000-----000-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x21000007", - "mask": "0xfdf0707f" - }, - "vlseg3e16_v": { - "encoding": "010000-00000-----101-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x40005007", - "mask": "0xfdf0707f" - }, - "vlseg3e16ff_v": { - "encoding": "010000-10000-----101-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x41005007", - "mask": "0xfdf0707f" - }, - "vlseg3e32_v": { - "encoding": "010000-00000-----110-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x40006007", - "mask": "0xfdf0707f" - }, - "vlseg3e32ff_v": { - "encoding": "010000-10000-----110-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x41006007", - "mask": "0xfdf0707f" - }, - "vlseg3e64_v": { - "encoding": "010000-00000-----111-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x40007007", - "mask": "0xfdf0707f" - }, - "vlseg3e64ff_v": { - "encoding": "010000-10000-----111-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x41007007", - "mask": "0xfdf0707f" - }, - "vlseg3e8_v": { - "encoding": "010000-00000-----000-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x40000007", - "mask": "0xfdf0707f" - }, - "vlseg3e8ff_v": { - "encoding": "010000-10000-----000-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x41000007", - "mask": "0xfdf0707f" - }, - "vlseg4e16_v": { - "encoding": "011000-00000-----101-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x60005007", - "mask": "0xfdf0707f" - }, - "vlseg4e16ff_v": { - "encoding": "011000-10000-----101-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x61005007", - "mask": "0xfdf0707f" - }, - "vlseg4e32_v": { - "encoding": "011000-00000-----110-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x60006007", - "mask": "0xfdf0707f" - }, - "vlseg4e32ff_v": { - "encoding": "011000-10000-----110-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x61006007", - "mask": "0xfdf0707f" - }, - "vlseg4e64_v": { - "encoding": "011000-00000-----111-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x60007007", - "mask": "0xfdf0707f" - }, - "vlseg4e64ff_v": { - "encoding": "011000-10000-----111-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x61007007", - "mask": "0xfdf0707f" - }, - "vlseg4e8_v": { - "encoding": "011000-00000-----000-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x60000007", - "mask": "0xfdf0707f" - }, - "vlseg4e8ff_v": { - "encoding": "011000-10000-----000-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x61000007", - "mask": "0xfdf0707f" - }, - "vlseg5e16_v": { - "encoding": "100000-00000-----101-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x80005007", - "mask": "0xfdf0707f" - }, - "vlseg5e16ff_v": { - "encoding": "100000-10000-----101-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x81005007", - "mask": "0xfdf0707f" - }, - "vlseg5e32_v": { - "encoding": "100000-00000-----110-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x80006007", - "mask": "0xfdf0707f" - }, - "vlseg5e32ff_v": { - "encoding": "100000-10000-----110-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x81006007", - "mask": "0xfdf0707f" - }, - "vlseg5e64_v": { - "encoding": "100000-00000-----111-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x80007007", - "mask": "0xfdf0707f" - }, - "vlseg5e64ff_v": { - "encoding": "100000-10000-----111-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x81007007", - "mask": "0xfdf0707f" - }, - "vlseg5e8_v": { - "encoding": "100000-00000-----000-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x80000007", - "mask": "0xfdf0707f" - }, - "vlseg5e8ff_v": { - "encoding": "100000-10000-----000-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x81000007", - "mask": "0xfdf0707f" - }, - "vlseg6e16_v": { - "encoding": "101000-00000-----101-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xa0005007", - "mask": "0xfdf0707f" - }, - "vlseg6e16ff_v": { - "encoding": "101000-10000-----101-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xa1005007", - "mask": "0xfdf0707f" - }, - "vlseg6e32_v": { - "encoding": "101000-00000-----110-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xa0006007", - "mask": "0xfdf0707f" - }, - "vlseg6e32ff_v": { - "encoding": "101000-10000-----110-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xa1006007", - "mask": "0xfdf0707f" - }, - "vlseg6e64_v": { - "encoding": "101000-00000-----111-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xa0007007", - "mask": "0xfdf0707f" - }, - "vlseg6e64ff_v": { - "encoding": "101000-10000-----111-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xa1007007", - "mask": "0xfdf0707f" - }, - "vlseg6e8_v": { - "encoding": "101000-00000-----000-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xa0000007", - "mask": "0xfdf0707f" - }, - "vlseg6e8ff_v": { - "encoding": "101000-10000-----000-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xa1000007", - "mask": "0xfdf0707f" - }, - "vlseg7e16_v": { - "encoding": "110000-00000-----101-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xc0005007", - "mask": "0xfdf0707f" - }, - "vlseg7e16ff_v": { - "encoding": "110000-10000-----101-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xc1005007", - "mask": "0xfdf0707f" - }, - "vlseg7e32_v": { - "encoding": "110000-00000-----110-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xc0006007", - "mask": "0xfdf0707f" - }, - "vlseg7e32ff_v": { - "encoding": "110000-10000-----110-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xc1006007", - "mask": "0xfdf0707f" - }, - "vlseg7e64_v": { - "encoding": "110000-00000-----111-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xc0007007", - "mask": "0xfdf0707f" - }, - "vlseg7e64ff_v": { - "encoding": "110000-10000-----111-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xc1007007", - "mask": "0xfdf0707f" - }, - "vlseg7e8_v": { - "encoding": "110000-00000-----000-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xc0000007", - "mask": "0xfdf0707f" - }, - "vlseg7e8ff_v": { - "encoding": "110000-10000-----000-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xc1000007", - "mask": "0xfdf0707f" - }, - "vlseg8e16_v": { - "encoding": "111000-00000-----101-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xe0005007", - "mask": "0xfdf0707f" - }, - "vlseg8e16ff_v": { - "encoding": "111000-10000-----101-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xe1005007", - "mask": "0xfdf0707f" - }, - "vlseg8e32_v": { - "encoding": "111000-00000-----110-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xe0006007", - "mask": "0xfdf0707f" - }, - "vlseg8e32ff_v": { - "encoding": "111000-10000-----110-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xe1006007", - "mask": "0xfdf0707f" - }, - "vlseg8e64_v": { - "encoding": "111000-00000-----111-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xe0007007", - "mask": "0xfdf0707f" - }, - "vlseg8e64ff_v": { - "encoding": "111000-10000-----111-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xe1007007", - "mask": "0xfdf0707f" - }, - "vlseg8e8_v": { - "encoding": "111000-00000-----000-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xe0000007", - "mask": "0xfdf0707f" - }, - "vlseg8e8ff_v": { - "encoding": "111000-10000-----000-----0000111", - "variable_fields": ["vd", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xe1000007", - "mask": "0xfdf0707f" - }, - "vlsseg2e16_v": { - "encoding": "001010-----------101-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x28005007", - "mask": "0xfc00707f" - }, - "vlsseg2e32_v": { - "encoding": "001010-----------110-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x28006007", - "mask": "0xfc00707f" - }, - "vlsseg2e64_v": { - "encoding": "001010-----------111-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x28007007", - "mask": "0xfc00707f" - }, - "vlsseg2e8_v": { - "encoding": "001010-----------000-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x28000007", - "mask": "0xfc00707f" - }, - "vlsseg3e16_v": { - "encoding": "010010-----------101-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x48005007", - "mask": "0xfc00707f" - }, - "vlsseg3e32_v": { - "encoding": "010010-----------110-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x48006007", - "mask": "0xfc00707f" - }, - "vlsseg3e64_v": { - "encoding": "010010-----------111-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x48007007", - "mask": "0xfc00707f" - }, - "vlsseg3e8_v": { - "encoding": "010010-----------000-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x48000007", - "mask": "0xfc00707f" - }, - "vlsseg4e16_v": { - "encoding": "011010-----------101-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x68005007", - "mask": "0xfc00707f" - }, - "vlsseg4e32_v": { - "encoding": "011010-----------110-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x68006007", - "mask": "0xfc00707f" - }, - "vlsseg4e64_v": { - "encoding": "011010-----------111-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x68007007", - "mask": "0xfc00707f" - }, - "vlsseg4e8_v": { - "encoding": "011010-----------000-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x68000007", - "mask": "0xfc00707f" - }, - "vlsseg5e16_v": { - "encoding": "100010-----------101-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x88005007", - "mask": "0xfc00707f" - }, - "vlsseg5e32_v": { - "encoding": "100010-----------110-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x88006007", - "mask": "0xfc00707f" - }, - "vlsseg5e64_v": { - "encoding": "100010-----------111-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x88007007", - "mask": "0xfc00707f" - }, - "vlsseg5e8_v": { - "encoding": "100010-----------000-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x88000007", - "mask": "0xfc00707f" - }, - "vlsseg6e16_v": { - "encoding": "101010-----------101-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xa8005007", - "mask": "0xfc00707f" - }, - "vlsseg6e32_v": { - "encoding": "101010-----------110-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xa8006007", - "mask": "0xfc00707f" - }, - "vlsseg6e64_v": { - "encoding": "101010-----------111-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xa8007007", - "mask": "0xfc00707f" - }, - "vlsseg6e8_v": { - "encoding": "101010-----------000-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xa8000007", - "mask": "0xfc00707f" - }, - "vlsseg7e16_v": { - "encoding": "110010-----------101-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xc8005007", - "mask": "0xfc00707f" - }, - "vlsseg7e32_v": { - "encoding": "110010-----------110-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xc8006007", - "mask": "0xfc00707f" - }, - "vlsseg7e64_v": { - "encoding": "110010-----------111-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xc8007007", - "mask": "0xfc00707f" - }, - "vlsseg7e8_v": { - "encoding": "110010-----------000-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xc8000007", - "mask": "0xfc00707f" - }, - "vlsseg8e16_v": { - "encoding": "111010-----------101-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xe8005007", - "mask": "0xfc00707f" - }, - "vlsseg8e32_v": { - "encoding": "111010-----------110-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xe8006007", - "mask": "0xfc00707f" - }, - "vlsseg8e64_v": { - "encoding": "111010-----------111-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xe8007007", - "mask": "0xfc00707f" - }, - "vlsseg8e8_v": { - "encoding": "111010-----------000-----0000111", - "variable_fields": ["vd", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xe8000007", - "mask": "0xfc00707f" - }, - "vluxei16_v": { - "encoding": "000001-----------101-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4005007", - "mask": "0xfc00707f" - }, - "vluxei32_v": { - "encoding": "000001-----------110-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4006007", - "mask": "0xfc00707f" - }, - "vluxei64_v": { - "encoding": "000001-----------111-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4007007", - "mask": "0xfc00707f" - }, - "vluxei8_v": { - "encoding": "000001-----------000-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4000007", - "mask": "0xfc00707f" - }, - "vluxseg2ei16_v": { - "encoding": "001001-----------101-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x24005007", - "mask": "0xfc00707f" - }, - "vluxseg2ei32_v": { - "encoding": "001001-----------110-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x24006007", - "mask": "0xfc00707f" - }, - "vluxseg2ei64_v": { - "encoding": "001001-----------111-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x24007007", - "mask": "0xfc00707f" - }, - "vluxseg2ei8_v": { - "encoding": "001001-----------000-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x24000007", - "mask": "0xfc00707f" - }, - "vluxseg3ei16_v": { - "encoding": "010001-----------101-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x44005007", - "mask": "0xfc00707f" - }, - "vluxseg3ei32_v": { - "encoding": "010001-----------110-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x44006007", - "mask": "0xfc00707f" - }, - "vluxseg3ei64_v": { - "encoding": "010001-----------111-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x44007007", - "mask": "0xfc00707f" - }, - "vluxseg3ei8_v": { - "encoding": "010001-----------000-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x44000007", - "mask": "0xfc00707f" - }, - "vluxseg4ei16_v": { - "encoding": "011001-----------101-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x64005007", - "mask": "0xfc00707f" - }, - "vluxseg4ei32_v": { - "encoding": "011001-----------110-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x64006007", - "mask": "0xfc00707f" - }, - "vluxseg4ei64_v": { - "encoding": "011001-----------111-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x64007007", - "mask": "0xfc00707f" - }, - "vluxseg4ei8_v": { - "encoding": "011001-----------000-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x64000007", - "mask": "0xfc00707f" - }, - "vluxseg5ei16_v": { - "encoding": "100001-----------101-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x84005007", - "mask": "0xfc00707f" - }, - "vluxseg5ei32_v": { - "encoding": "100001-----------110-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x84006007", - "mask": "0xfc00707f" - }, - "vluxseg5ei64_v": { - "encoding": "100001-----------111-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x84007007", - "mask": "0xfc00707f" - }, - "vluxseg5ei8_v": { - "encoding": "100001-----------000-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x84000007", - "mask": "0xfc00707f" - }, - "vluxseg6ei16_v": { - "encoding": "101001-----------101-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa4005007", - "mask": "0xfc00707f" - }, - "vluxseg6ei32_v": { - "encoding": "101001-----------110-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa4006007", - "mask": "0xfc00707f" - }, - "vluxseg6ei64_v": { - "encoding": "101001-----------111-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa4007007", - "mask": "0xfc00707f" - }, - "vluxseg6ei8_v": { - "encoding": "101001-----------000-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa4000007", - "mask": "0xfc00707f" - }, - "vluxseg7ei16_v": { - "encoding": "110001-----------101-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc4005007", - "mask": "0xfc00707f" - }, - "vluxseg7ei32_v": { - "encoding": "110001-----------110-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc4006007", - "mask": "0xfc00707f" - }, - "vluxseg7ei64_v": { - "encoding": "110001-----------111-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc4007007", - "mask": "0xfc00707f" - }, - "vluxseg7ei8_v": { - "encoding": "110001-----------000-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc4000007", - "mask": "0xfc00707f" - }, - "vluxseg8ei16_v": { - "encoding": "111001-----------101-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xe4005007", - "mask": "0xfc00707f" - }, - "vluxseg8ei32_v": { - "encoding": "111001-----------110-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xe4006007", - "mask": "0xfc00707f" - }, - "vluxseg8ei64_v": { - "encoding": "111001-----------111-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xe4007007", - "mask": "0xfc00707f" - }, - "vluxseg8ei8_v": { - "encoding": "111001-----------000-----0000111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xe4000007", - "mask": "0xfc00707f" - }, - "vmacc_vv": { - "encoding": "101101-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xb4002057", - "mask": "0xfc00707f" - }, - "vmacc_vx": { - "encoding": "101101-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xb4006057", - "mask": "0xfc00707f" - }, - "vmadc_vi": { - "encoding": "0100011----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2"], - "extension": ["rv_v"], - "match": "0x46003057", - "mask": "0xfe00707f" - }, - "vmadc_vim": { - "encoding": "0100010----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2"], - "extension": ["rv_v"], - "match": "0x44003057", - "mask": "0xfe00707f" - }, - "vmadc_vv": { - "encoding": "0100011----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x46000057", - "mask": "0xfe00707f" - }, - "vmadc_vvm": { - "encoding": "0100010----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x44000057", - "mask": "0xfe00707f" - }, - "vmadc_vx": { - "encoding": "0100011----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2"], - "extension": ["rv_v"], - "match": "0x46004057", - "mask": "0xfe00707f" - }, - "vmadc_vxm": { - "encoding": "0100010----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2"], - "extension": ["rv_v"], - "match": "0x44004057", - "mask": "0xfe00707f" - }, - "vmadd_vv": { - "encoding": "101001-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa4002057", - "mask": "0xfc00707f" - }, - "vmadd_vx": { - "encoding": "101001-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa4006057", - "mask": "0xfc00707f" - }, - "vmand_mm": { - "encoding": "0110011----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x66002057", - "mask": "0xfe00707f" - }, - "vmandn_mm": { - "encoding": "0110001----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x62002057", - "mask": "0xfe00707f" - }, - "vmax_vv": { - "encoding": "000111-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x1c000057", - "mask": "0xfc00707f" - }, - "vmax_vx": { - "encoding": "000111-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x1c004057", - "mask": "0xfc00707f" - }, - "vmaxu_vv": { - "encoding": "000110-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x18000057", - "mask": "0xfc00707f" - }, - "vmaxu_vx": { - "encoding": "000110-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x18004057", - "mask": "0xfc00707f" - }, - "vmerge_vim": { - "encoding": "0101110----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2"], - "extension": ["rv_v"], - "match": "0x5c003057", - "mask": "0xfe00707f" - }, - "vmerge_vvm": { - "encoding": "0101110----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x5c000057", - "mask": "0xfe00707f" - }, - "vmerge_vxm": { - "encoding": "0101110----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2"], - "extension": ["rv_v"], - "match": "0x5c004057", - "mask": "0xfe00707f" - }, - "vmfeq_vf": { - "encoding": "011000-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x60005057", - "mask": "0xfc00707f" - }, - "vmfeq_vv": { - "encoding": "011000-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x60001057", - "mask": "0xfc00707f" - }, - "vmfge_vf": { - "encoding": "011111-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x7c005057", - "mask": "0xfc00707f" - }, - "vmfgt_vf": { - "encoding": "011101-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x74005057", - "mask": "0xfc00707f" - }, - "vmfle_vf": { - "encoding": "011001-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x64005057", - "mask": "0xfc00707f" - }, - "vmfle_vv": { - "encoding": "011001-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x64001057", - "mask": "0xfc00707f" - }, - "vmflt_vf": { - "encoding": "011011-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x6c005057", - "mask": "0xfc00707f" - }, - "vmflt_vv": { - "encoding": "011011-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x6c001057", - "mask": "0xfc00707f" - }, - "vmfne_vf": { - "encoding": "011100-----------101-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x70005057", - "mask": "0xfc00707f" - }, - "vmfne_vv": { - "encoding": "011100-----------001-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x70001057", - "mask": "0xfc00707f" - }, - "vmin_vv": { - "encoding": "000101-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x14000057", - "mask": "0xfc00707f" - }, - "vmin_vx": { - "encoding": "000101-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x14004057", - "mask": "0xfc00707f" - }, - "vminu_vv": { - "encoding": "000100-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x10000057", - "mask": "0xfc00707f" - }, - "vminu_vx": { - "encoding": "000100-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x10004057", - "mask": "0xfc00707f" - }, - "vmnand_mm": { - "encoding": "0111011----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x76002057", - "mask": "0xfe00707f" - }, - "vmnor_mm": { - "encoding": "0111101----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x7a002057", - "mask": "0xfe00707f" - }, - "vmor_mm": { - "encoding": "0110101----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x6a002057", - "mask": "0xfe00707f" - }, - "vmorn_mm": { - "encoding": "0111001----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x72002057", - "mask": "0xfe00707f" - }, - "vmsbc_vv": { - "encoding": "0100111----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x4e000057", - "mask": "0xfe00707f" - }, - "vmsbc_vvm": { - "encoding": "0100110----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x4c000057", - "mask": "0xfe00707f" - }, - "vmsbc_vx": { - "encoding": "0100111----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2"], - "extension": ["rv_v"], - "match": "0x4e004057", - "mask": "0xfe00707f" - }, - "vmsbc_vxm": { - "encoding": "0100110----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2"], - "extension": ["rv_v"], - "match": "0x4c004057", - "mask": "0xfe00707f" - }, - "vmsbf_m": { - "encoding": "010100------00001010-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x5000a057", - "mask": "0xfc0ff07f" - }, - "vmseq_vi": { - "encoding": "011000-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x60003057", - "mask": "0xfc00707f" - }, - "vmseq_vv": { - "encoding": "011000-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x60000057", - "mask": "0xfc00707f" - }, - "vmseq_vx": { - "encoding": "011000-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x60004057", - "mask": "0xfc00707f" - }, - "vmsgt_vi": { - "encoding": "011111-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x7c003057", - "mask": "0xfc00707f" - }, - "vmsgt_vx": { - "encoding": "011111-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x7c004057", - "mask": "0xfc00707f" - }, - "vmsgtu_vi": { - "encoding": "011110-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x78003057", - "mask": "0xfc00707f" - }, - "vmsgtu_vx": { - "encoding": "011110-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x78004057", - "mask": "0xfc00707f" - }, - "vmsif_m": { - "encoding": "010100------00011010-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x5001a057", - "mask": "0xfc0ff07f" - }, - "vmsle_vi": { - "encoding": "011101-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x74003057", - "mask": "0xfc00707f" - }, - "vmsle_vv": { - "encoding": "011101-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x74000057", - "mask": "0xfc00707f" - }, - "vmsle_vx": { - "encoding": "011101-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x74004057", - "mask": "0xfc00707f" - }, - "vmsleu_vi": { - "encoding": "011100-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x70003057", - "mask": "0xfc00707f" - }, - "vmsleu_vv": { - "encoding": "011100-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x70000057", - "mask": "0xfc00707f" - }, - "vmsleu_vx": { - "encoding": "011100-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x70004057", - "mask": "0xfc00707f" - }, - "vmslt_vv": { - "encoding": "011011-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x6c000057", - "mask": "0xfc00707f" - }, - "vmslt_vx": { - "encoding": "011011-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x6c004057", - "mask": "0xfc00707f" - }, - "vmsltu_vv": { - "encoding": "011010-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x68000057", - "mask": "0xfc00707f" - }, - "vmsltu_vx": { - "encoding": "011010-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x68004057", - "mask": "0xfc00707f" - }, - "vmsne_vi": { - "encoding": "011001-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x64003057", - "mask": "0xfc00707f" - }, - "vmsne_vv": { - "encoding": "011001-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x64000057", - "mask": "0xfc00707f" - }, - "vmsne_vx": { - "encoding": "011001-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x64004057", - "mask": "0xfc00707f" - }, - "vmsof_m": { - "encoding": "010100------00010010-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x50012057", - "mask": "0xfc0ff07f" - }, - "vmul_vv": { - "encoding": "100101-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x94002057", - "mask": "0xfc00707f" - }, - "vmul_vx": { - "encoding": "100101-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x94006057", - "mask": "0xfc00707f" - }, - "vmulh_vv": { - "encoding": "100111-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x9c002057", - "mask": "0xfc00707f" - }, - "vmulh_vx": { - "encoding": "100111-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x9c006057", - "mask": "0xfc00707f" - }, - "vmulhsu_vv": { - "encoding": "100110-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x98002057", - "mask": "0xfc00707f" - }, - "vmulhsu_vx": { - "encoding": "100110-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x98006057", - "mask": "0xfc00707f" - }, - "vmulhu_vv": { - "encoding": "100100-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x90002057", - "mask": "0xfc00707f" - }, - "vmulhu_vx": { - "encoding": "100100-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x90006057", - "mask": "0xfc00707f" - }, - "vmv1r_v": { - "encoding": "1001111-----00000011-----1010111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_v"], - "match": "0x9e003057", - "mask": "0xfe0ff07f" - }, - "vmv2r_v": { - "encoding": "1001111-----00001011-----1010111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_v"], - "match": "0x9e00b057", - "mask": "0xfe0ff07f" - }, - "vmv4r_v": { - "encoding": "1001111-----00011011-----1010111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_v"], - "match": "0x9e01b057", - "mask": "0xfe0ff07f" - }, - "vmv8r_v": { - "encoding": "1001111-----00111011-----1010111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_v"], - "match": "0x9e03b057", - "mask": "0xfe0ff07f" - }, - "vmv_s_x": { - "encoding": "010000100000-----110-----1010111", - "variable_fields": ["vd", "rs1"], - "extension": ["rv_v"], - "match": "0x42006057", - "mask": "0xfff0707f" - }, - "vmv_v_i": { - "encoding": "010111100000-----011-----1010111", - "variable_fields": ["vd", "simm5"], - "extension": ["rv_v"], - "match": "0x5e003057", - "mask": "0xfff0707f" - }, - "vmv_v_v": { - "encoding": "010111100000-----000-----1010111", - "variable_fields": ["vd", "vs1"], - "extension": ["rv_v"], - "match": "0x5e000057", - "mask": "0xfff0707f" - }, - "vmv_v_x": { - "encoding": "010111100000-----100-----1010111", - "variable_fields": ["vd", "rs1"], - "extension": ["rv_v"], - "match": "0x5e004057", - "mask": "0xfff0707f" - }, - "vmv_x_s": { - "encoding": "0100001-----00000010-----1010111", - "variable_fields": ["rd", "vs2"], - "extension": ["rv_v"], - "match": "0x42002057", - "mask": "0xfe0ff07f" - }, - "vmxnor_mm": { - "encoding": "0111111----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x7e002057", - "mask": "0xfe00707f" - }, - "vmxor_mm": { - "encoding": "0110111----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x6e002057", - "mask": "0xfe00707f" - }, - "vnclip_wi": { - "encoding": "101111-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xbc003057", - "mask": "0xfc00707f" - }, - "vnclip_wv": { - "encoding": "101111-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xbc000057", - "mask": "0xfc00707f" - }, - "vnclip_wx": { - "encoding": "101111-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xbc004057", - "mask": "0xfc00707f" - }, - "vnclipu_wi": { - "encoding": "101110-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xb8003057", - "mask": "0xfc00707f" - }, - "vnclipu_wv": { - "encoding": "101110-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xb8000057", - "mask": "0xfc00707f" - }, - "vnclipu_wx": { - "encoding": "101110-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xb8004057", - "mask": "0xfc00707f" - }, - "vnmsac_vv": { - "encoding": "101111-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xbc002057", - "mask": "0xfc00707f" - }, - "vnmsac_vx": { - "encoding": "101111-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xbc006057", - "mask": "0xfc00707f" - }, - "vnmsub_vv": { - "encoding": "101011-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xac002057", - "mask": "0xfc00707f" - }, - "vnmsub_vx": { - "encoding": "101011-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xac006057", - "mask": "0xfc00707f" - }, - "vnsra_wi": { - "encoding": "101101-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xb4003057", - "mask": "0xfc00707f" - }, - "vnsra_wv": { - "encoding": "101101-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xb4000057", - "mask": "0xfc00707f" - }, - "vnsra_wx": { - "encoding": "101101-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xb4004057", - "mask": "0xfc00707f" - }, - "vnsrl_wi": { - "encoding": "101100-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xb0003057", - "mask": "0xfc00707f" - }, - "vnsrl_wv": { - "encoding": "101100-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xb0000057", - "mask": "0xfc00707f" - }, - "vnsrl_wx": { - "encoding": "101100-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xb0004057", - "mask": "0xfc00707f" - }, - "vor_vi": { - "encoding": "001010-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x28003057", - "mask": "0xfc00707f" - }, - "vor_vv": { - "encoding": "001010-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x28000057", - "mask": "0xfc00707f" - }, - "vor_vx": { - "encoding": "001010-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x28004057", - "mask": "0xfc00707f" - }, - "vredand_vs": { - "encoding": "000001-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4002057", - "mask": "0xfc00707f" - }, - "vredmax_vs": { - "encoding": "000111-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x1c002057", - "mask": "0xfc00707f" - }, - "vredmaxu_vs": { - "encoding": "000110-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x18002057", - "mask": "0xfc00707f" - }, - "vredmin_vs": { - "encoding": "000101-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x14002057", - "mask": "0xfc00707f" - }, - "vredminu_vs": { - "encoding": "000100-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x10002057", - "mask": "0xfc00707f" - }, - "vredor_vs": { - "encoding": "000010-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x8002057", - "mask": "0xfc00707f" - }, - "vredsum_vs": { - "encoding": "000000-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x2057", - "mask": "0xfc00707f" - }, - "vredxor_vs": { - "encoding": "000011-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc002057", - "mask": "0xfc00707f" - }, - "vrem_vv": { - "encoding": "100011-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x8c002057", - "mask": "0xfc00707f" - }, - "vrem_vx": { - "encoding": "100011-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x8c006057", - "mask": "0xfc00707f" - }, - "vremu_vv": { - "encoding": "100010-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x88002057", - "mask": "0xfc00707f" - }, - "vremu_vx": { - "encoding": "100010-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x88006057", - "mask": "0xfc00707f" - }, - "vrev8_v": { - "encoding": "010010------01001010-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0x4804a057", - "mask": "0xfc0ff07f" - }, - "vrgather_vi": { - "encoding": "001100-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x30003057", - "mask": "0xfc00707f" - }, - "vrgather_vv": { - "encoding": "001100-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x30000057", - "mask": "0xfc00707f" - }, - "vrgather_vx": { - "encoding": "001100-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x30004057", - "mask": "0xfc00707f" - }, - "vrgatherei16_vv": { - "encoding": "001110-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x38000057", - "mask": "0xfc00707f" - }, - "vrol_vv": { - "encoding": "010101-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0x54000057", - "mask": "0xfc00707f" - }, - "vrol_vx": { - "encoding": "010101-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0x54004057", - "mask": "0xfc00707f" - }, - "vror_vi": { - "encoding": "01010------------011-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0x50003057", - "mask": "0xf800707f" - }, - "vror_vv": { - "encoding": "010100-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0x50000057", - "mask": "0xfc00707f" - }, - "vror_vx": { - "encoding": "010100-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0x50004057", - "mask": "0xfc00707f" - }, - "vrsub_vi": { - "encoding": "000011-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc003057", - "mask": "0xfc00707f" - }, - "vrsub_vx": { - "encoding": "000011-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc004057", - "mask": "0xfc00707f" - }, - "vs1r_v": { - "encoding": "000000101000-----000-----0100111", - "variable_fields": ["vs3", "rs1"], - "extension": ["rv_v"], - "match": "0x2800027", - "mask": "0xfff0707f" - }, - "vs2r_v": { - "encoding": "001000101000-----000-----0100111", - "variable_fields": ["vs3", "rs1"], - "extension": ["rv_v"], - "match": "0x22800027", - "mask": "0xfff0707f" - }, - "vs4r_v": { - "encoding": "011000101000-----000-----0100111", - "variable_fields": ["vs3", "rs1"], - "extension": ["rv_v"], - "match": "0x62800027", - "mask": "0xfff0707f" - }, - "vs8r_v": { - "encoding": "111000101000-----000-----0100111", - "variable_fields": ["vs3", "rs1"], - "extension": ["rv_v"], - "match": "0xe2800027", - "mask": "0xfff0707f" - }, - "vsadd_vi": { - "encoding": "100001-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x84003057", - "mask": "0xfc00707f" - }, - "vsadd_vv": { - "encoding": "100001-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x84000057", - "mask": "0xfc00707f" - }, - "vsadd_vx": { - "encoding": "100001-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x84004057", - "mask": "0xfc00707f" - }, - "vsaddu_vi": { - "encoding": "100000-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x80003057", - "mask": "0xfc00707f" - }, - "vsaddu_vv": { - "encoding": "100000-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x80000057", - "mask": "0xfc00707f" - }, - "vsaddu_vx": { - "encoding": "100000-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x80004057", - "mask": "0xfc00707f" - }, - "vsbc_vvm": { - "encoding": "0100100----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x48000057", - "mask": "0xfe00707f" - }, - "vsbc_vxm": { - "encoding": "0100100----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2"], - "extension": ["rv_v"], - "match": "0x48004057", - "mask": "0xfe00707f" - }, - "vse16_v": { - "encoding": "000000-00000-----101-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x5027", - "mask": "0xfdf0707f" - }, - "vse32_v": { - "encoding": "000000-00000-----110-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x6027", - "mask": "0xfdf0707f" - }, - "vse64_v": { - "encoding": "000000-00000-----111-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x7027", - "mask": "0xfdf0707f" - }, - "vse8_v": { - "encoding": "000000-00000-----000-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x27", - "mask": "0xfdf0707f" - }, - "vsetivli": { - "encoding": "11---------------111-----1010111", - "variable_fields": ["rd", "zimm10"], - "extension": ["rv_v"], - "match": "0xc0007057", - "mask": "0xc000707f" - }, - "vsetvl": { - "encoding": "1000000----------111-----1010111", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_v"], - "match": "0x80007057", - "mask": "0xfe00707f" - }, - "vsetvli": { - "encoding": "0----------------111-----1010111", - "variable_fields": ["rd", "rs1", "zimm11"], - "extension": ["rv_v"], - "match": "0x7057", - "mask": "0x8000707f" - }, - "vsext_vf2": { - "encoding": "010010------00111010-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4803a057", - "mask": "0xfc0ff07f" - }, - "vsext_vf4": { - "encoding": "010010------00101010-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4802a057", - "mask": "0xfc0ff07f" - }, - "vsext_vf8": { - "encoding": "010010------00011010-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4801a057", - "mask": "0xfc0ff07f" - }, - "vsha2ch_vv": { - "encoding": "1011101----------010-----1110111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_zvkn", "rv_zvknha", "rv_zvknhb"], - "match": "0xba002077", - "mask": "0xfe00707f" - }, - "vsha2cl_vv": { - "encoding": "1011111----------010-----1110111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_zvkn", "rv_zvknha", "rv_zvknhb"], - "match": "0xbe002077", - "mask": "0xfe00707f" - }, - "vsha2ms_vv": { - "encoding": "1011011----------010-----1110111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_zvkn", "rv_zvknha", "rv_zvknhb"], - "match": "0xb6002077", - "mask": "0xfe00707f" - }, - "vslide1down_vx": { - "encoding": "001111-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x3c006057", - "mask": "0xfc00707f" - }, - "vslide1up_vx": { - "encoding": "001110-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x38006057", - "mask": "0xfc00707f" - }, - "vslidedown_vi": { - "encoding": "001111-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x3c003057", - "mask": "0xfc00707f" - }, - "vslidedown_vx": { - "encoding": "001111-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x3c004057", - "mask": "0xfc00707f" - }, - "vslideup_vi": { - "encoding": "001110-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x38003057", - "mask": "0xfc00707f" - }, - "vslideup_vx": { - "encoding": "001110-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x38004057", - "mask": "0xfc00707f" - }, - "vsll_vi": { - "encoding": "100101-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x94003057", - "mask": "0xfc00707f" - }, - "vsll_vv": { - "encoding": "100101-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x94000057", - "mask": "0xfc00707f" - }, - "vsll_vx": { - "encoding": "100101-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x94004057", - "mask": "0xfc00707f" - }, - "vsm3c_vi": { - "encoding": "1010111----------010-----1110111", - "variable_fields": ["vd", "zimm5", "vs2"], - "extension": ["rv_zvks", "rv_zvksh"], - "match": "0xae002077", - "mask": "0xfe00707f" - }, - "vsm3me_vv": { - "encoding": "1000001----------010-----1110111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_zvks", "rv_zvksh"], - "match": "0x82002077", - "mask": "0xfe00707f" - }, - "vsm4k_vi": { - "encoding": "1000011----------010-----1110111", - "variable_fields": ["vd", "zimm5", "vs2"], - "extension": ["rv_zvks", "rv_zvksed"], - "match": "0x86002077", - "mask": "0xfe00707f" - }, - "vsm4r_vs": { - "encoding": "1010011-----10000010-----1110111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_zvks", "rv_zvksed"], - "match": "0xa6082077", - "mask": "0xfe0ff07f" - }, - "vsm4r_vv": { - "encoding": "1010001-----10000010-----1110111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_zvks", "rv_zvksed"], - "match": "0xa2082077", - "mask": "0xfe0ff07f" - }, - "vsm_v": { - "encoding": "000000101011-----000-----0100111", - "variable_fields": ["vs3", "rs1"], - "extension": ["rv_v"], - "match": "0x2b00027", - "mask": "0xfff0707f" - }, - "vsmul_vv": { - "encoding": "100111-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x9c000057", - "mask": "0xfc00707f" - }, - "vsmul_vx": { - "encoding": "100111-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x9c004057", - "mask": "0xfc00707f" - }, - "vsoxei16_v": { - "encoding": "000011-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc005027", - "mask": "0xfc00707f" - }, - "vsoxei32_v": { - "encoding": "000011-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc006027", - "mask": "0xfc00707f" - }, - "vsoxei64_v": { - "encoding": "000011-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc007027", - "mask": "0xfc00707f" - }, - "vsoxei8_v": { - "encoding": "000011-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc000027", - "mask": "0xfc00707f" - }, - "vsoxseg2ei16_v": { - "encoding": "001011-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x2c005027", - "mask": "0xfc00707f" - }, - "vsoxseg2ei32_v": { - "encoding": "001011-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x2c006027", - "mask": "0xfc00707f" - }, - "vsoxseg2ei64_v": { - "encoding": "001011-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x2c007027", - "mask": "0xfc00707f" - }, - "vsoxseg2ei8_v": { - "encoding": "001011-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x2c000027", - "mask": "0xfc00707f" - }, - "vsoxseg3ei16_v": { - "encoding": "010011-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4c005027", - "mask": "0xfc00707f" - }, - "vsoxseg3ei32_v": { - "encoding": "010011-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4c006027", - "mask": "0xfc00707f" - }, - "vsoxseg3ei64_v": { - "encoding": "010011-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4c007027", - "mask": "0xfc00707f" - }, - "vsoxseg3ei8_v": { - "encoding": "010011-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4c000027", - "mask": "0xfc00707f" - }, - "vsoxseg4ei16_v": { - "encoding": "011011-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x6c005027", - "mask": "0xfc00707f" - }, - "vsoxseg4ei32_v": { - "encoding": "011011-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x6c006027", - "mask": "0xfc00707f" - }, - "vsoxseg4ei64_v": { - "encoding": "011011-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x6c007027", - "mask": "0xfc00707f" - }, - "vsoxseg4ei8_v": { - "encoding": "011011-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x6c000027", - "mask": "0xfc00707f" - }, - "vsoxseg5ei16_v": { - "encoding": "100011-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x8c005027", - "mask": "0xfc00707f" - }, - "vsoxseg5ei32_v": { - "encoding": "100011-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x8c006027", - "mask": "0xfc00707f" - }, - "vsoxseg5ei64_v": { - "encoding": "100011-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x8c007027", - "mask": "0xfc00707f" - }, - "vsoxseg5ei8_v": { - "encoding": "100011-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x8c000027", - "mask": "0xfc00707f" - }, - "vsoxseg6ei16_v": { - "encoding": "101011-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xac005027", - "mask": "0xfc00707f" - }, - "vsoxseg6ei32_v": { - "encoding": "101011-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xac006027", - "mask": "0xfc00707f" - }, - "vsoxseg6ei64_v": { - "encoding": "101011-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xac007027", - "mask": "0xfc00707f" - }, - "vsoxseg6ei8_v": { - "encoding": "101011-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xac000027", - "mask": "0xfc00707f" - }, - "vsoxseg7ei16_v": { - "encoding": "110011-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xcc005027", - "mask": "0xfc00707f" - }, - "vsoxseg7ei32_v": { - "encoding": "110011-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xcc006027", - "mask": "0xfc00707f" - }, - "vsoxseg7ei64_v": { - "encoding": "110011-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xcc007027", - "mask": "0xfc00707f" - }, - "vsoxseg7ei8_v": { - "encoding": "110011-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xcc000027", - "mask": "0xfc00707f" - }, - "vsoxseg8ei16_v": { - "encoding": "111011-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xec005027", - "mask": "0xfc00707f" - }, - "vsoxseg8ei32_v": { - "encoding": "111011-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xec006027", - "mask": "0xfc00707f" - }, - "vsoxseg8ei64_v": { - "encoding": "111011-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xec007027", - "mask": "0xfc00707f" - }, - "vsoxseg8ei8_v": { - "encoding": "111011-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xec000027", - "mask": "0xfc00707f" - }, - "vsra_vi": { - "encoding": "101001-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa4003057", - "mask": "0xfc00707f" - }, - "vsra_vv": { - "encoding": "101001-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa4000057", - "mask": "0xfc00707f" - }, - "vsra_vx": { - "encoding": "101001-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa4004057", - "mask": "0xfc00707f" - }, - "vsrl_vi": { - "encoding": "101000-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa0003057", - "mask": "0xfc00707f" - }, - "vsrl_vv": { - "encoding": "101000-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa0000057", - "mask": "0xfc00707f" - }, - "vsrl_vx": { - "encoding": "101000-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa0004057", - "mask": "0xfc00707f" - }, - "vsse16_v": { - "encoding": "000010-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x8005027", - "mask": "0xfc00707f" - }, - "vsse32_v": { - "encoding": "000010-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x8006027", - "mask": "0xfc00707f" - }, - "vsse64_v": { - "encoding": "000010-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x8007027", - "mask": "0xfc00707f" - }, - "vsse8_v": { - "encoding": "000010-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x8000027", - "mask": "0xfc00707f" - }, - "vsseg2e16_v": { - "encoding": "001000-00000-----101-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x20005027", - "mask": "0xfdf0707f" - }, - "vsseg2e32_v": { - "encoding": "001000-00000-----110-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x20006027", - "mask": "0xfdf0707f" - }, - "vsseg2e64_v": { - "encoding": "001000-00000-----111-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x20007027", - "mask": "0xfdf0707f" - }, - "vsseg2e8_v": { - "encoding": "001000-00000-----000-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x20000027", - "mask": "0xfdf0707f" - }, - "vsseg3e16_v": { - "encoding": "010000-00000-----101-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x40005027", - "mask": "0xfdf0707f" - }, - "vsseg3e32_v": { - "encoding": "010000-00000-----110-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x40006027", - "mask": "0xfdf0707f" - }, - "vsseg3e64_v": { - "encoding": "010000-00000-----111-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x40007027", - "mask": "0xfdf0707f" - }, - "vsseg3e8_v": { - "encoding": "010000-00000-----000-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x40000027", - "mask": "0xfdf0707f" - }, - "vsseg4e16_v": { - "encoding": "011000-00000-----101-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x60005027", - "mask": "0xfdf0707f" - }, - "vsseg4e32_v": { - "encoding": "011000-00000-----110-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x60006027", - "mask": "0xfdf0707f" - }, - "vsseg4e64_v": { - "encoding": "011000-00000-----111-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x60007027", - "mask": "0xfdf0707f" - }, - "vsseg4e8_v": { - "encoding": "011000-00000-----000-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x60000027", - "mask": "0xfdf0707f" - }, - "vsseg5e16_v": { - "encoding": "100000-00000-----101-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x80005027", - "mask": "0xfdf0707f" - }, - "vsseg5e32_v": { - "encoding": "100000-00000-----110-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x80006027", - "mask": "0xfdf0707f" - }, - "vsseg5e64_v": { - "encoding": "100000-00000-----111-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x80007027", - "mask": "0xfdf0707f" - }, - "vsseg5e8_v": { - "encoding": "100000-00000-----000-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0x80000027", - "mask": "0xfdf0707f" - }, - "vsseg6e16_v": { - "encoding": "101000-00000-----101-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xa0005027", - "mask": "0xfdf0707f" - }, - "vsseg6e32_v": { - "encoding": "101000-00000-----110-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xa0006027", - "mask": "0xfdf0707f" - }, - "vsseg6e64_v": { - "encoding": "101000-00000-----111-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xa0007027", - "mask": "0xfdf0707f" - }, - "vsseg6e8_v": { - "encoding": "101000-00000-----000-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xa0000027", - "mask": "0xfdf0707f" - }, - "vsseg7e16_v": { - "encoding": "110000-00000-----101-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xc0005027", - "mask": "0xfdf0707f" - }, - "vsseg7e32_v": { - "encoding": "110000-00000-----110-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xc0006027", - "mask": "0xfdf0707f" - }, - "vsseg7e64_v": { - "encoding": "110000-00000-----111-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xc0007027", - "mask": "0xfdf0707f" - }, - "vsseg7e8_v": { - "encoding": "110000-00000-----000-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xc0000027", - "mask": "0xfdf0707f" - }, - "vsseg8e16_v": { - "encoding": "111000-00000-----101-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xe0005027", - "mask": "0xfdf0707f" - }, - "vsseg8e32_v": { - "encoding": "111000-00000-----110-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xe0006027", - "mask": "0xfdf0707f" - }, - "vsseg8e64_v": { - "encoding": "111000-00000-----111-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xe0007027", - "mask": "0xfdf0707f" - }, - "vsseg8e8_v": { - "encoding": "111000-00000-----000-----0100111", - "variable_fields": ["vs3", "rs1", "vm"], - "extension": ["rv_v"], - "match": "0xe0000027", - "mask": "0xfdf0707f" - }, - "vssra_vi": { - "encoding": "101011-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xac003057", - "mask": "0xfc00707f" - }, - "vssra_vv": { - "encoding": "101011-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xac000057", - "mask": "0xfc00707f" - }, - "vssra_vx": { - "encoding": "101011-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xac004057", - "mask": "0xfc00707f" - }, - "vssrl_vi": { - "encoding": "101010-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa8003057", - "mask": "0xfc00707f" - }, - "vssrl_vv": { - "encoding": "101010-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa8000057", - "mask": "0xfc00707f" - }, - "vssrl_vx": { - "encoding": "101010-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa8004057", - "mask": "0xfc00707f" - }, - "vssseg2e16_v": { - "encoding": "001010-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x28005027", - "mask": "0xfc00707f" - }, - "vssseg2e32_v": { - "encoding": "001010-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x28006027", - "mask": "0xfc00707f" - }, - "vssseg2e64_v": { - "encoding": "001010-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x28007027", - "mask": "0xfc00707f" - }, - "vssseg2e8_v": { - "encoding": "001010-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x28000027", - "mask": "0xfc00707f" - }, - "vssseg3e16_v": { - "encoding": "010010-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x48005027", - "mask": "0xfc00707f" - }, - "vssseg3e32_v": { - "encoding": "010010-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x48006027", - "mask": "0xfc00707f" - }, - "vssseg3e64_v": { - "encoding": "010010-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x48007027", - "mask": "0xfc00707f" - }, - "vssseg3e8_v": { - "encoding": "010010-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x48000027", - "mask": "0xfc00707f" - }, - "vssseg4e16_v": { - "encoding": "011010-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x68005027", - "mask": "0xfc00707f" - }, - "vssseg4e32_v": { - "encoding": "011010-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x68006027", - "mask": "0xfc00707f" - }, - "vssseg4e64_v": { - "encoding": "011010-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x68007027", - "mask": "0xfc00707f" - }, - "vssseg4e8_v": { - "encoding": "011010-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x68000027", - "mask": "0xfc00707f" - }, - "vssseg5e16_v": { - "encoding": "100010-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x88005027", - "mask": "0xfc00707f" - }, - "vssseg5e32_v": { - "encoding": "100010-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x88006027", - "mask": "0xfc00707f" - }, - "vssseg5e64_v": { - "encoding": "100010-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x88007027", - "mask": "0xfc00707f" - }, - "vssseg5e8_v": { - "encoding": "100010-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0x88000027", - "mask": "0xfc00707f" - }, - "vssseg6e16_v": { - "encoding": "101010-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xa8005027", - "mask": "0xfc00707f" - }, - "vssseg6e32_v": { - "encoding": "101010-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xa8006027", - "mask": "0xfc00707f" - }, - "vssseg6e64_v": { - "encoding": "101010-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xa8007027", - "mask": "0xfc00707f" - }, - "vssseg6e8_v": { - "encoding": "101010-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xa8000027", - "mask": "0xfc00707f" - }, - "vssseg7e16_v": { - "encoding": "110010-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xc8005027", - "mask": "0xfc00707f" - }, - "vssseg7e32_v": { - "encoding": "110010-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xc8006027", - "mask": "0xfc00707f" - }, - "vssseg7e64_v": { - "encoding": "110010-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xc8007027", - "mask": "0xfc00707f" - }, - "vssseg7e8_v": { - "encoding": "110010-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xc8000027", - "mask": "0xfc00707f" - }, - "vssseg8e16_v": { - "encoding": "111010-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xe8005027", - "mask": "0xfc00707f" - }, - "vssseg8e32_v": { - "encoding": "111010-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xe8006027", - "mask": "0xfc00707f" - }, - "vssseg8e64_v": { - "encoding": "111010-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xe8007027", - "mask": "0xfc00707f" - }, - "vssseg8e8_v": { - "encoding": "111010-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "rs2", "vm"], - "extension": ["rv_v"], - "match": "0xe8000027", - "mask": "0xfc00707f" - }, - "vssub_vv": { - "encoding": "100011-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x8c000057", - "mask": "0xfc00707f" - }, - "vssub_vx": { - "encoding": "100011-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x8c004057", - "mask": "0xfc00707f" - }, - "vssubu_vv": { - "encoding": "100010-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x88000057", - "mask": "0xfc00707f" - }, - "vssubu_vx": { - "encoding": "100010-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x88004057", - "mask": "0xfc00707f" - }, - "vsub_vv": { - "encoding": "000010-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x8000057", - "mask": "0xfc00707f" - }, - "vsub_vx": { - "encoding": "000010-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x8004057", - "mask": "0xfc00707f" - }, - "vsuxei16_v": { - "encoding": "000001-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4005027", - "mask": "0xfc00707f" - }, - "vsuxei32_v": { - "encoding": "000001-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4006027", - "mask": "0xfc00707f" - }, - "vsuxei64_v": { - "encoding": "000001-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4007027", - "mask": "0xfc00707f" - }, - "vsuxei8_v": { - "encoding": "000001-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x4000027", - "mask": "0xfc00707f" - }, - "vsuxseg2ei16_v": { - "encoding": "001001-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x24005027", - "mask": "0xfc00707f" - }, - "vsuxseg2ei32_v": { - "encoding": "001001-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x24006027", - "mask": "0xfc00707f" - }, - "vsuxseg2ei64_v": { - "encoding": "001001-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x24007027", - "mask": "0xfc00707f" - }, - "vsuxseg2ei8_v": { - "encoding": "001001-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x24000027", - "mask": "0xfc00707f" - }, - "vsuxseg3ei16_v": { - "encoding": "010001-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x44005027", - "mask": "0xfc00707f" - }, - "vsuxseg3ei32_v": { - "encoding": "010001-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x44006027", - "mask": "0xfc00707f" - }, - "vsuxseg3ei64_v": { - "encoding": "010001-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x44007027", - "mask": "0xfc00707f" - }, - "vsuxseg3ei8_v": { - "encoding": "010001-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x44000027", - "mask": "0xfc00707f" - }, - "vsuxseg4ei16_v": { - "encoding": "011001-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x64005027", - "mask": "0xfc00707f" - }, - "vsuxseg4ei32_v": { - "encoding": "011001-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x64006027", - "mask": "0xfc00707f" - }, - "vsuxseg4ei64_v": { - "encoding": "011001-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x64007027", - "mask": "0xfc00707f" - }, - "vsuxseg4ei8_v": { - "encoding": "011001-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x64000027", - "mask": "0xfc00707f" - }, - "vsuxseg5ei16_v": { - "encoding": "100001-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x84005027", - "mask": "0xfc00707f" - }, - "vsuxseg5ei32_v": { - "encoding": "100001-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x84006027", - "mask": "0xfc00707f" - }, - "vsuxseg5ei64_v": { - "encoding": "100001-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x84007027", - "mask": "0xfc00707f" - }, - "vsuxseg5ei8_v": { - "encoding": "100001-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x84000027", - "mask": "0xfc00707f" - }, - "vsuxseg6ei16_v": { - "encoding": "101001-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa4005027", - "mask": "0xfc00707f" - }, - "vsuxseg6ei32_v": { - "encoding": "101001-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa4006027", - "mask": "0xfc00707f" - }, - "vsuxseg6ei64_v": { - "encoding": "101001-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa4007027", - "mask": "0xfc00707f" - }, - "vsuxseg6ei8_v": { - "encoding": "101001-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xa4000027", - "mask": "0xfc00707f" - }, - "vsuxseg7ei16_v": { - "encoding": "110001-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc4005027", - "mask": "0xfc00707f" - }, - "vsuxseg7ei32_v": { - "encoding": "110001-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc4006027", - "mask": "0xfc00707f" - }, - "vsuxseg7ei64_v": { - "encoding": "110001-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc4007027", - "mask": "0xfc00707f" - }, - "vsuxseg7ei8_v": { - "encoding": "110001-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc4000027", - "mask": "0xfc00707f" - }, - "vsuxseg8ei16_v": { - "encoding": "111001-----------101-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xe4005027", - "mask": "0xfc00707f" - }, - "vsuxseg8ei32_v": { - "encoding": "111001-----------110-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xe4006027", - "mask": "0xfc00707f" - }, - "vsuxseg8ei64_v": { - "encoding": "111001-----------111-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xe4007027", - "mask": "0xfc00707f" - }, - "vsuxseg8ei8_v": { - "encoding": "111001-----------000-----0100111", - "variable_fields": ["vs3", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xe4000027", - "mask": "0xfc00707f" - }, - "vwadd_vv": { - "encoding": "110001-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc4002057", - "mask": "0xfc00707f" - }, - "vwadd_vx": { - "encoding": "110001-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc4006057", - "mask": "0xfc00707f" - }, - "vwadd_wv": { - "encoding": "110101-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xd4002057", - "mask": "0xfc00707f" - }, - "vwadd_wx": { - "encoding": "110101-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xd4006057", - "mask": "0xfc00707f" - }, - "vwaddu_vv": { - "encoding": "110000-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc0002057", - "mask": "0xfc00707f" - }, - "vwaddu_vx": { - "encoding": "110000-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc0006057", - "mask": "0xfc00707f" - }, - "vwaddu_wv": { - "encoding": "110100-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xd0002057", - "mask": "0xfc00707f" - }, - "vwaddu_wx": { - "encoding": "110100-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xd0006057", - "mask": "0xfc00707f" - }, - "vwmacc_vv": { - "encoding": "111101-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xf4002057", - "mask": "0xfc00707f" - }, - "vwmacc_vx": { - "encoding": "111101-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xf4006057", - "mask": "0xfc00707f" - }, - "vwmaccsu_vv": { - "encoding": "111111-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xfc002057", - "mask": "0xfc00707f" - }, - "vwmaccsu_vx": { - "encoding": "111111-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xfc006057", - "mask": "0xfc00707f" - }, - "vwmaccu_vv": { - "encoding": "111100-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xf0002057", - "mask": "0xfc00707f" - }, - "vwmaccu_vx": { - "encoding": "111100-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xf0006057", - "mask": "0xfc00707f" - }, - "vwmaccus_vx": { - "encoding": "111110-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xf8006057", - "mask": "0xfc00707f" - }, - "vwmul_vv": { - "encoding": "111011-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xec002057", - "mask": "0xfc00707f" - }, - "vwmul_vx": { - "encoding": "111011-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xec006057", - "mask": "0xfc00707f" - }, - "vwmulsu_vv": { - "encoding": "111010-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xe8002057", - "mask": "0xfc00707f" - }, - "vwmulsu_vx": { - "encoding": "111010-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xe8006057", - "mask": "0xfc00707f" - }, - "vwmulu_vv": { - "encoding": "111000-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xe0002057", - "mask": "0xfc00707f" - }, - "vwmulu_vx": { - "encoding": "111000-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xe0006057", - "mask": "0xfc00707f" - }, - "vwredsum_vs": { - "encoding": "110001-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc4000057", - "mask": "0xfc00707f" - }, - "vwredsumu_vs": { - "encoding": "110000-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc0000057", - "mask": "0xfc00707f" - }, - "vwsll_vi": { - "encoding": "110101-----------011-----1010111", - "variable_fields": ["vd", "zimm5", "vs2", "vm"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0xd4003057", - "mask": "0xfc00707f" - }, - "vwsll_vv": { - "encoding": "110101-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0xd4000057", - "mask": "0xfc00707f" - }, - "vwsll_vx": { - "encoding": "110101-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0xd4004057", - "mask": "0xfc00707f" - }, - "vwsub_vv": { - "encoding": "110011-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xcc002057", - "mask": "0xfc00707f" - }, - "vwsub_vx": { - "encoding": "110011-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xcc006057", - "mask": "0xfc00707f" - }, - "vwsub_wv": { - "encoding": "110111-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xdc002057", - "mask": "0xfc00707f" - }, - "vwsub_wx": { - "encoding": "110111-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xdc006057", - "mask": "0xfc00707f" - }, - "vwsubu_vv": { - "encoding": "110010-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc8002057", - "mask": "0xfc00707f" - }, - "vwsubu_vx": { - "encoding": "110010-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xc8006057", - "mask": "0xfc00707f" - }, - "vwsubu_wv": { - "encoding": "110110-----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xd8002057", - "mask": "0xfc00707f" - }, - "vwsubu_wx": { - "encoding": "110110-----------110-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0xd8006057", - "mask": "0xfc00707f" - }, - "vxor_vi": { - "encoding": "001011-----------011-----1010111", - "variable_fields": ["vd", "simm5", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x2c003057", - "mask": "0xfc00707f" - }, - "vxor_vv": { - "encoding": "001011-----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x2c000057", - "mask": "0xfc00707f" - }, - "vxor_vx": { - "encoding": "001011-----------100-----1010111", - "variable_fields": ["vd", "rs1", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x2c004057", - "mask": "0xfc00707f" - }, - "vzext_vf2": { - "encoding": "010010------00110010-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x48032057", - "mask": "0xfc0ff07f" - }, - "vzext_vf4": { - "encoding": "010010------00100010-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x48022057", - "mask": "0xfc0ff07f" - }, - "vzext_vf8": { - "encoding": "010010------00010010-----1010111", - "variable_fields": ["vd", "vs2", "vm"], - "extension": ["rv_v"], - "match": "0x48012057", - "mask": "0xfc0ff07f" - }, - "wfi": { - "encoding": "00010000010100000000000001110011", - "variable_fields": [], - "extension": ["rv_sm"], - "match": "0x10500073", - "mask": "0xffffffff" - }, - "wrs_nto": { - "encoding": "00000000110100000000000001110011", - "variable_fields": [], - "extension": ["rv_zawrs"], - "match": "0xd00073", - "mask": "0xffffffff" - }, - "wrs_sto": { - "encoding": "00000001110100000000000001110011", - "variable_fields": [], - "extension": ["rv_zawrs"], - "match": "0x1d00073", - "mask": "0xffffffff" - }, - "xnor": { - "encoding": "0100000----------100-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbb", "rv_zbkb", "rv_zk", "rv_zkn", "rv_zks"], - "match": "0x40004033", - "mask": "0xfe00707f" - }, - "xor": { - "encoding": "0000000----------100-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_i"], - "match": "0x4033", - "mask": "0xfe00707f" - }, - "xori": { - "encoding": "-----------------100-----0010011", - "variable_fields": ["rd", "rs1", "imm12"], - "extension": ["rv_i"], - "match": "0x4013", - "mask": "0x707f" - }, - "xperm4": { - "encoding": "0010100----------010-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zbkx"], - "match": "0x28002033", - "mask": "0xfe00707f" - }, - "xperm8": { - "encoding": "0010100----------100-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zbkx"], - "match": "0x28004033", - "mask": "0xfe00707f" - }, - "zext_h": { - "encoding": "000010000000-----100-----0111011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_b", "rv64_zbb"], - "match": "0x800403b", - "mask": "0xfff0707f" - }, - "zip": { - "encoding": "000010001111-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv32_zbkb"], - "match": "0x8f01013", - "mask": "0xfff0707f" - } -} diff --git a/backends/opcodes_maker/sorted_instr_dict.json b/backends/opcodes_maker/sorted_instr_dict.json deleted file mode 100644 index dfd4e5b91..000000000 --- a/backends/opcodes_maker/sorted_instr_dict.json +++ /dev/null @@ -1,8044 +0,0 @@ -{ - "add": { - "encoding": "0000000----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_i"], - "match": "0x33", - "mask": "0xfe00707f" - }, - "add_uw": { - "encoding": "0000100----------000-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_b", "rv64_zba"], - "match": "0x800003b", - "mask": "0xfe00707f" - }, - "addi": { - "encoding": "-----------------000-----0010011", - "variable_fields": ["imm12", "rd", "rs1"], - "extension": ["rv_i"], - "match": "0x13", - "mask": "0x707f" - }, - "addiw": { - "encoding": "-----------------000-----0011011", - "variable_fields": ["imm12", "rd", "rs1"], - "extension": ["rv64_i"], - "match": "0x1b", - "mask": "0x707f" - }, - "addw": { - "encoding": "0000000----------000-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_i"], - "match": "0x3b", - "mask": "0xfe00707f" - }, - "aes32dsi": { - "encoding": "--10101----------000-----0110011", - "variable_fields": ["bs", "rd", "rs1", "rs2"], - "extension": ["rv32_zk", "rv32_zkn", "rv32_zknd"], - "match": "0x2a000033", - "mask": "0x3e00707f" - }, - "aes32dsmi": { - "encoding": "--10111----------000-----0110011", - "variable_fields": ["bs", "rd", "rs1", "rs2"], - "extension": ["rv32_zk", "rv32_zkn", "rv32_zknd"], - "match": "0x2e000033", - "mask": "0x3e00707f" - }, - "aes32esi": { - "encoding": "--10001----------000-----0110011", - "variable_fields": ["bs", "rd", "rs1", "rs2"], - "extension": ["rv32_zk", "rv32_zkn", "rv32_zkne"], - "match": "0x22000033", - "mask": "0x3e00707f" - }, - "aes32esmi": { - "encoding": "--10011----------000-----0110011", - "variable_fields": ["bs", "rd", "rs1", "rs2"], - "extension": ["rv32_zk", "rv32_zkn", "rv32_zkne"], - "match": "0x26000033", - "mask": "0x3e00707f" - }, - "aes64ds": { - "encoding": "0011101----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_zk", "rv64_zkn", "rv64_zknd"], - "match": "0x3a000033", - "mask": "0xfe00707f" - }, - "aes64dsm": { - "encoding": "0011111----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_zk", "rv64_zkn", "rv64_zknd"], - "match": "0x3e000033", - "mask": "0xfe00707f" - }, - "aes64es": { - "encoding": "0011001----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_zk", "rv64_zkn", "rv64_zkne"], - "match": "0x32000033", - "mask": "0xfe00707f" - }, - "aes64esm": { - "encoding": "0011011----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_zk", "rv64_zkn", "rv64_zkne"], - "match": "0x36000033", - "mask": "0xfe00707f" - }, - "aes64im": { - "encoding": "001100000000-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_zk", "rv64_zkn", "rv64_zknd"], - "match": "0x30001013", - "mask": "0xfff0707f" - }, - "aes64ks1i": { - "encoding": "00110001---------001-----0010011", - "variable_fields": ["rd", "rnum", "rs1"], - "extension": ["rv64_zk", "rv64_zkn", "rv64_zknd", "rv64_zkne"], - "match": "0x31001013", - "mask": "0xff00707f" - }, - "aes64ks2": { - "encoding": "0111111----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_zk", "rv64_zkn", "rv64_zknd", "rv64_zkne"], - "match": "0x7e000033", - "mask": "0xfe00707f" - }, - "amoadd_b": { - "encoding": "00000------------000-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv_zabha"], - "match": "0x2f", - "mask": "0xf800707f" - }, - "amoadd_d": { - "encoding": "00000------------011-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv64_a", "rv64_zaamo"], - "match": "0x302f", - "mask": "0xf800707f" - }, - "amoadd_h": { - "encoding": "00000------------001-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv_zabha"], - "match": "0x102f", - "mask": "0xf800707f" - }, - "amoadd_w": { - "encoding": "00000------------010-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv_a", "rv_zaamo"], - "match": "0x202f", - "mask": "0xf800707f" - }, - "amoand_b": { - "encoding": "01100------------000-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv_zabha"], - "match": "0x6000002f", - "mask": "0xf800707f" - }, - "amoand_d": { - "encoding": "01100------------011-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv64_a", "rv64_zaamo"], - "match": "0x6000302f", - "mask": "0xf800707f" - }, - "amoand_h": { - "encoding": "01100------------001-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv_zabha"], - "match": "0x6000102f", - "mask": "0xf800707f" - }, - "amoand_w": { - "encoding": "01100------------010-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv_a", "rv_zaamo"], - "match": "0x6000202f", - "mask": "0xf800707f" - }, - "amocas_b": { - "encoding": "00101------------000-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv_zabha"], - "match": "0x2800002f", - "mask": "0xf800707f" - }, - "amocas_d": { - "encoding": "00101------------011-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv_zacas"], - "match": "0x2800302f", - "mask": "0xf800707f" - }, - "amocas_h": { - "encoding": "00101------------001-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv_zabha"], - "match": "0x2800102f", - "mask": "0xf800707f" - }, - "amocas_q": { - "encoding": "00101------------100-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv64_zacas"], - "match": "0x2800402f", - "mask": "0xf800707f" - }, - "amocas_w": { - "encoding": "00101------------010-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv_zacas"], - "match": "0x2800202f", - "mask": "0xf800707f" - }, - "amomax_b": { - "encoding": "10100------------000-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv_zabha"], - "match": "0xa000002f", - "mask": "0xf800707f" - }, - "amomax_d": { - "encoding": "10100------------011-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv64_a", "rv64_zaamo"], - "match": "0xa000302f", - "mask": "0xf800707f" - }, - "amomax_h": { - "encoding": "10100------------001-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv_zabha"], - "match": "0xa000102f", - "mask": "0xf800707f" - }, - "amomax_w": { - "encoding": "10100------------010-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv_a", "rv_zaamo"], - "match": "0xa000202f", - "mask": "0xf800707f" - }, - "amomaxu_b": { - "encoding": "11100------------000-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv_zabha"], - "match": "0xe000002f", - "mask": "0xf800707f" - }, - "amomaxu_d": { - "encoding": "11100------------011-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv64_a", "rv64_zaamo"], - "match": "0xe000302f", - "mask": "0xf800707f" - }, - "amomaxu_h": { - "encoding": "11100------------001-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv_zabha"], - "match": "0xe000102f", - "mask": "0xf800707f" - }, - "amomaxu_w": { - "encoding": "11100------------010-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv_a", "rv_zaamo"], - "match": "0xe000202f", - "mask": "0xf800707f" - }, - "amomin_b": { - "encoding": "10000------------000-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv_zabha"], - "match": "0x8000002f", - "mask": "0xf800707f" - }, - "amomin_d": { - "encoding": "10000------------011-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv64_a", "rv64_zaamo"], - "match": "0x8000302f", - "mask": "0xf800707f" - }, - "amomin_h": { - "encoding": "10000------------001-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv_zabha"], - "match": "0x8000102f", - "mask": "0xf800707f" - }, - "amomin_w": { - "encoding": "10000------------010-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv_a", "rv_zaamo"], - "match": "0x8000202f", - "mask": "0xf800707f" - }, - "amominu_b": { - "encoding": "11000------------000-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv_zabha"], - "match": "0xc000002f", - "mask": "0xf800707f" - }, - "amominu_d": { - "encoding": "11000------------011-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv64_a", "rv64_zaamo"], - "match": "0xc000302f", - "mask": "0xf800707f" - }, - "amominu_h": { - "encoding": "11000------------001-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv_zabha"], - "match": "0xc000102f", - "mask": "0xf800707f" - }, - "amominu_w": { - "encoding": "11000------------010-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv_a", "rv_zaamo"], - "match": "0xc000202f", - "mask": "0xf800707f" - }, - "amoor_b": { - "encoding": "01000------------000-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv_zabha"], - "match": "0x4000002f", - "mask": "0xf800707f" - }, - "amoor_d": { - "encoding": "01000------------011-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv64_a", "rv64_zaamo"], - "match": "0x4000302f", - "mask": "0xf800707f" - }, - "amoor_h": { - "encoding": "01000------------001-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv_zabha"], - "match": "0x4000102f", - "mask": "0xf800707f" - }, - "amoor_w": { - "encoding": "01000------------010-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv_a", "rv_zaamo"], - "match": "0x4000202f", - "mask": "0xf800707f" - }, - "amoswap_b": { - "encoding": "00001------------000-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv_zabha"], - "match": "0x800002f", - "mask": "0xf800707f" - }, - "amoswap_d": { - "encoding": "00001------------011-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv64_a", "rv64_zaamo"], - "match": "0x800302f", - "mask": "0xf800707f" - }, - "amoswap_h": { - "encoding": "00001------------001-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv_zabha"], - "match": "0x800102f", - "mask": "0xf800707f" - }, - "amoswap_w": { - "encoding": "00001------------010-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv_a", "rv_zaamo"], - "match": "0x800202f", - "mask": "0xf800707f" - }, - "amoxor_b": { - "encoding": "00100------------000-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv_zabha"], - "match": "0x2000002f", - "mask": "0xf800707f" - }, - "amoxor_d": { - "encoding": "00100------------011-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv64_a", "rv64_zaamo"], - "match": "0x2000302f", - "mask": "0xf800707f" - }, - "amoxor_h": { - "encoding": "00100------------001-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv_zabha"], - "match": "0x2000102f", - "mask": "0xf800707f" - }, - "amoxor_w": { - "encoding": "00100------------010-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv_a", "rv_zaamo"], - "match": "0x2000202f", - "mask": "0xf800707f" - }, - "and": { - "encoding": "0000000----------111-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_i"], - "match": "0x7033", - "mask": "0xfe00707f" - }, - "andi": { - "encoding": "-----------------111-----0010011", - "variable_fields": ["imm12", "rd", "rs1"], - "extension": ["rv_i"], - "match": "0x7013", - "mask": "0x707f" - }, - "andn": { - "encoding": "0100000----------111-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbb", "rv_zbkb", "rv_zk", "rv_zkn", "rv_zks"], - "match": "0x40007033", - "mask": "0xfe00707f" - }, - "auipc": { - "encoding": "-------------------------0010111", - "variable_fields": ["imm20", "rd"], - "extension": ["rv_i"], - "match": "0x17", - "mask": "0x7f" - }, - "bclr": { - "encoding": "0100100----------001-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbs"], - "match": "0x48001033", - "mask": "0xfe00707f" - }, - "bclri": { - "encoding": "010010-----------001-----0010011", - "variable_fields": ["rd", "rs1", "shamtd"], - "extension": ["rv64_b", "rv64_zbs"], - "match": "0x48001013", - "mask": "0xfc00707f" - }, - "beq": { - "encoding": "-----------------000-----1100011", - "variable_fields": ["bimm12hi", "bimm12lo", "rs1", "rs2"], - "extension": ["rv_i"], - "match": "0x63", - "mask": "0x707f" - }, - "bext": { - "encoding": "0100100----------101-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbs"], - "match": "0x48005033", - "mask": "0xfe00707f" - }, - "bexti": { - "encoding": "010010-----------101-----0010011", - "variable_fields": ["rd", "rs1", "shamtd"], - "extension": ["rv64_b", "rv64_zbs"], - "match": "0x48005013", - "mask": "0xfc00707f" - }, - "bge": { - "encoding": "-----------------101-----1100011", - "variable_fields": ["bimm12hi", "bimm12lo", "rs1", "rs2"], - "extension": ["rv_i"], - "match": "0x5063", - "mask": "0x707f" - }, - "bgeu": { - "encoding": "-----------------111-----1100011", - "variable_fields": ["bimm12hi", "bimm12lo", "rs1", "rs2"], - "extension": ["rv_i"], - "match": "0x7063", - "mask": "0x707f" - }, - "binv": { - "encoding": "0110100----------001-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbs"], - "match": "0x68001033", - "mask": "0xfe00707f" - }, - "binvi": { - "encoding": "011010-----------001-----0010011", - "variable_fields": ["rd", "rs1", "shamtd"], - "extension": ["rv64_b", "rv64_zbs"], - "match": "0x68001013", - "mask": "0xfc00707f" - }, - "blt": { - "encoding": "-----------------100-----1100011", - "variable_fields": ["bimm12hi", "bimm12lo", "rs1", "rs2"], - "extension": ["rv_i"], - "match": "0x4063", - "mask": "0x707f" - }, - "bltu": { - "encoding": "-----------------110-----1100011", - "variable_fields": ["bimm12hi", "bimm12lo", "rs1", "rs2"], - "extension": ["rv_i"], - "match": "0x6063", - "mask": "0x707f" - }, - "bne": { - "encoding": "-----------------001-----1100011", - "variable_fields": ["bimm12hi", "bimm12lo", "rs1", "rs2"], - "extension": ["rv_i"], - "match": "0x1063", - "mask": "0x707f" - }, - "brev8": { - "encoding": "011010000111-----101-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_zbkb"], - "match": "0x68705013", - "mask": "0xfff0707f" - }, - "bset": { - "encoding": "0010100----------001-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbs"], - "match": "0x28001033", - "mask": "0xfe00707f" - }, - "bseti": { - "encoding": "001010-----------001-----0010011", - "variable_fields": ["rd", "rs1", "shamtd"], - "extension": ["rv64_b", "rv64_zbs"], - "match": "0x28001013", - "mask": "0xfc00707f" - }, - "c_add": { - "encoding": "----------------1001----------10", - "variable_fields": ["rd", "rs2"], - "extension": ["rv_c", "rv_zca"], - "match": "0x9002", - "mask": "0xf003" - }, - "c_addi": { - "encoding": "----------------000-----------01", - "variable_fields": ["rd"], - "extension": ["rv_c", "rv_zca"], - "match": "0x1", - "mask": "0xe003" - }, - "c_addi16sp": { - "encoding": "----------------011-00010-----01", - "variable_fields": [], - "extension": ["rv_c", "rv_zca"], - "match": "0x6101", - "mask": "0xef83" - }, - "c_addi4spn": { - "encoding": "----------------000-----------00", - "variable_fields": ["rd"], - "extension": ["rv_c", "rv_zca"], - "match": "0x0", - "mask": "0xe003" - }, - "c_addiw": { - "encoding": "----------------001-----------01", - "variable_fields": ["rd"], - "extension": ["rv64_c", "rv64_zca"], - "match": "0x2001", - "mask": "0xe003" - }, - "c_addw": { - "encoding": "----------------100111---01---01", - "variable_fields": ["rd", "rs2"], - "extension": ["rv64_c", "rv64_zca"], - "match": "0x9c21", - "mask": "0xfc63" - }, - "c_and": { - "encoding": "----------------100011---11---01", - "variable_fields": ["rd", "rs2"], - "extension": ["rv_c", "rv_zca"], - "match": "0x8c61", - "mask": "0xfc63" - }, - "c_andi": { - "encoding": "----------------100-10--------01", - "variable_fields": ["rd"], - "extension": ["rv_c", "rv_zca"], - "match": "0x8801", - "mask": "0xec03" - }, - "c_beqz": { - "encoding": "----------------110-----------01", - "variable_fields": ["rs1"], - "extension": ["rv_c", "rv_zca"], - "match": "0xc001", - "mask": "0xe003" - }, - "c_bnez": { - "encoding": "----------------111-----------01", - "variable_fields": ["rs1"], - "extension": ["rv_c", "rv_zca"], - "match": "0xe001", - "mask": "0xe003" - }, - "c_ebreak": { - "encoding": "----------------1001000000000010", - "variable_fields": [], - "extension": ["rv_c", "rv_zca"], - "match": "0x9002", - "mask": "0xffff" - }, - "c_fld": { - "encoding": "----------------001-----------00", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_c", "rv_d"], - "match": "0x2000", - "mask": "0xe003" - }, - "c_fldsp": { - "encoding": "----------------001-----------10", - "variable_fields": ["rd"], - "extension": ["rv_c", "rv_d"], - "match": "0x2002", - "mask": "0xe003" - }, - "c_flw": { - "encoding": "----------------011-----------00", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_c", "rv_f"], - "match": "0x6000", - "mask": "0xe003" - }, - "c_flwsp": { - "encoding": "----------------011-----------10", - "variable_fields": ["rd"], - "extension": ["rv_c", "rv_f"], - "match": "0x6002", - "mask": "0xe003" - }, - "c_fsd": { - "encoding": "----------------101-----------00", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv_c", "rv_d"], - "match": "0xa000", - "mask": "0xe003" - }, - "c_fsdsp": { - "encoding": "----------------101-----------10", - "variable_fields": ["rs2"], - "extension": ["rv_c", "rv_d"], - "match": "0xa002", - "mask": "0xe003" - }, - "c_fsw": { - "encoding": "----------------111-----------00", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv_c", "rv_f"], - "match": "0xe000", - "mask": "0xe003" - }, - "c_fswsp": { - "encoding": "----------------111-----------10", - "variable_fields": ["rs2"], - "extension": ["rv_c", "rv_f"], - "match": "0xe002", - "mask": "0xe003" - }, - "c_j": { - "encoding": "----------------101-----------01", - "variable_fields": [], - "extension": ["rv_c", "rv_zca"], - "match": "0xa001", - "mask": "0xe003" - }, - "c_jal": { - "encoding": "----------------001-----------01", - "variable_fields": [], - "extension": ["rv32_c", "rv32_zca"], - "match": "0x2001", - "mask": "0xe003" - }, - "c_jalr": { - "encoding": "----------------1001-----0000010", - "variable_fields": ["rs1"], - "extension": ["rv_c", "rv_zca"], - "match": "0x9002", - "mask": "0xf07f" - }, - "c_jr": { - "encoding": "----------------1000-----0000010", - "variable_fields": ["rs1"], - "extension": ["rv_c", "rv_zca"], - "match": "0x8002", - "mask": "0xf07f" - }, - "c_lbu": { - "encoding": "----------------100000--------00", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_zcb", "rv_zce"], - "match": "0x8000", - "mask": "0xfc03" - }, - "c_ld": { - "encoding": "----------------011-----------00", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_c", "rv64_zca"], - "match": "0x6000", - "mask": "0xe003" - }, - "c_ldsp": { - "encoding": "----------------011-----------10", - "variable_fields": ["rd"], - "extension": ["rv64_c", "rv64_zca"], - "match": "0x6002", - "mask": "0xe003" - }, - "c_li": { - "encoding": "----------------010-----------01", - "variable_fields": ["rd"], - "extension": ["rv_c", "rv_zca"], - "match": "0x4001", - "mask": "0xe003" - }, - "c_lui": { - "encoding": "----------------011-----------01", - "variable_fields": ["rd"], - "extension": ["rv_c", "rv_zca"], - "match": "0x6001", - "mask": "0xe003" - }, - "c_lw": { - "encoding": "----------------010-----------00", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_c", "rv_zca"], - "match": "0x4000", - "mask": "0xe003" - }, - "c_lwsp": { - "encoding": "----------------010-----------10", - "variable_fields": ["rd"], - "extension": ["rv_c", "rv_zca"], - "match": "0x4002", - "mask": "0xe003" - }, - "c_mul": { - "encoding": "----------------100111---10---01", - "variable_fields": ["rd", "rs2"], - "extension": ["rv_zcb", "rv_zmmul"], - "match": "0x9c41", - "mask": "0xfc63" - }, - "c_mv": { - "encoding": "----------------1000----------10", - "variable_fields": ["rd", "rs2"], - "extension": ["rv_c", "rv_zca"], - "match": "0x8002", - "mask": "0xf003" - }, - "c_nop": { - "encoding": "----------------000-00000-----01", - "variable_fields": [], - "extension": ["rv_c", "rv_zca"], - "match": "0x1", - "mask": "0xef83" - }, - "c_not": { - "encoding": "----------------100111---1110101", - "variable_fields": ["rd"], - "extension": ["rv_zcb", "rv_zce"], - "match": "0x9c75", - "mask": "0xfc7f" - }, - "c_or": { - "encoding": "----------------100011---10---01", - "variable_fields": ["rd", "rs2"], - "extension": ["rv_c", "rv_zca"], - "match": "0x8c41", - "mask": "0xfc63" - }, - "c_sb": { - "encoding": "----------------100010--------00", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv_zcb", "rv_zce"], - "match": "0x8800", - "mask": "0xfc03" - }, - "c_sd": { - "encoding": "----------------111-----------00", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv64_c", "rv64_zca"], - "match": "0xe000", - "mask": "0xe003" - }, - "c_sdsp": { - "encoding": "----------------111-----------10", - "variable_fields": ["rs2"], - "extension": ["rv64_c", "rv64_zca"], - "match": "0xe002", - "mask": "0xe003" - }, - "c_sext_b": { - "encoding": "----------------100111---1100101", - "variable_fields": ["rd"], - "extension": ["rv_zbb", "rv_zcb"], - "match": "0x9c65", - "mask": "0xfc7f" - }, - "c_sext_h": { - "encoding": "----------------100111---1101101", - "variable_fields": ["rd"], - "extension": ["rv_zbb", "rv_zcb"], - "match": "0x9c6d", - "mask": "0xfc7f" - }, - "c_slli": { - "encoding": "----------------000-----------10", - "variable_fields": ["rd", "shamt"], - "extension": ["rv64_c", "rv64_zca"], - "match": "0x2", - "mask": "0xe003" - }, - "c_srai": { - "encoding": "----------------100-01--------01", - "variable_fields": ["rd", "shamt"], - "extension": ["rv64_c", "rv64_zca"], - "match": "0x8401", - "mask": "0xec03" - }, - "c_srli": { - "encoding": "----------------100-00--------01", - "variable_fields": ["rd", "shamt"], - "extension": ["rv64_c", "rv64_zca"], - "match": "0x8001", - "mask": "0xec03" - }, - "c_sub": { - "encoding": "----------------100011---00---01", - "variable_fields": ["rd", "rs2"], - "extension": ["rv_c", "rv_zca"], - "match": "0x8c01", - "mask": "0xfc63" - }, - "c_subw": { - "encoding": "----------------100111---00---01", - "variable_fields": ["rd", "rs2"], - "extension": ["rv64_c", "rv64_zca"], - "match": "0x9c01", - "mask": "0xfc63" - }, - "c_sw": { - "encoding": "----------------110-----------00", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv_c", "rv_zca"], - "match": "0xc000", - "mask": "0xe003" - }, - "c_swsp": { - "encoding": "----------------110-----------10", - "variable_fields": ["rs2"], - "extension": ["rv_c", "rv_zca"], - "match": "0xc002", - "mask": "0xe003" - }, - "c_xor": { - "encoding": "----------------100011---01---01", - "variable_fields": ["rd", "rs2"], - "extension": ["rv_c", "rv_zca"], - "match": "0x8c21", - "mask": "0xfc63" - }, - "c_zext_b": { - "encoding": "----------------100111---1100001", - "variable_fields": ["rd"], - "extension": ["rv_zbb", "rv_zcb"], - "match": "0x9c61", - "mask": "0xfc7f" - }, - "c_zext_h": { - "encoding": "----------------100111---1101001", - "variable_fields": ["rd"], - "extension": ["rv_zbb", "rv_zcb"], - "match": "0x9c69", - "mask": "0xfc7f" - }, - "c_zext_w": { - "encoding": "----------------100111---1110001", - "variable_fields": ["rd"], - "extension": ["rv64_zbb", "rv64_zcb"], - "match": "0x9c71", - "mask": "0xfc7f" - }, - "cbo_clean": { - "encoding": "000000000001-----010000000001111", - "variable_fields": ["rs1"], - "extension": ["rv_zicbom"], - "match": "0x10200f", - "mask": "0xfff07fff" - }, - "cbo_flush": { - "encoding": "000000000010-----010000000001111", - "variable_fields": ["rs1"], - "extension": ["rv_zicbom"], - "match": "0x20200f", - "mask": "0xfff07fff" - }, - "cbo_inval": { - "encoding": "000000000000-----010000000001111", - "variable_fields": ["rs1"], - "extension": ["rv_zicbom"], - "match": "0x200f", - "mask": "0xfff07fff" - }, - "cbo_zero": { - "encoding": "000000000100-----010000000001111", - "variable_fields": ["rs1"], - "extension": ["rv_zicboz"], - "match": "0x40200f", - "mask": "0xfff07fff" - }, - "clmul": { - "encoding": "0000101----------001-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbc", "rv_zbkc", "rv_zk", "rv_zkn", "rv_zks"], - "match": "0xa001033", - "mask": "0xfe00707f" - }, - "clmulh": { - "encoding": "0000101----------011-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbc", "rv_zbkc", "rv_zk", "rv_zkn", "rv_zks"], - "match": "0xa003033", - "mask": "0xfe00707f" - }, - "clmulr": { - "encoding": "0000101----------010-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbc"], - "match": "0xa002033", - "mask": "0xfe00707f" - }, - "clz": { - "encoding": "011000000000-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_b", "rv_zbb"], - "match": "0x60001013", - "mask": "0xfff0707f" - }, - "clzw": { - "encoding": "011000000000-----001-----0011011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_b", "rv64_zbb"], - "match": "0x6000101b", - "mask": "0xfff0707f" - }, - "cm_mva01s": { - "encoding": "----------------101011---11---10", - "variable_fields": [], - "extension": ["rv_zcmp"], - "match": "0xac62", - "mask": "0xfc63" - }, - "cm_mvsa01": { - "encoding": "----------------101011---01---10", - "variable_fields": [], - "extension": ["rv_zcmp"], - "match": "0xac22", - "mask": "0xfc63" - }, - "cm_pop": { - "encoding": "----------------10111010------10", - "variable_fields": [], - "extension": ["rv_zcmp"], - "match": "0xba02", - "mask": "0xff03" - }, - "cm_popret": { - "encoding": "----------------10111110------10", - "variable_fields": [], - "extension": ["rv_zcmp"], - "match": "0xbe02", - "mask": "0xff03" - }, - "cm_popretz": { - "encoding": "----------------10111100------10", - "variable_fields": [], - "extension": ["rv_zcmp"], - "match": "0xbc02", - "mask": "0xff03" - }, - "cm_push": { - "encoding": "----------------10111000------10", - "variable_fields": [], - "extension": ["rv_zcmp"], - "match": "0xb802", - "mask": "0xff03" - }, - "cpop": { - "encoding": "011000000010-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_b", "rv_zbb"], - "match": "0x60201013", - "mask": "0xfff0707f" - }, - "cpopw": { - "encoding": "011000000010-----001-----0011011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_b", "rv64_zbb"], - "match": "0x6020101b", - "mask": "0xfff0707f" - }, - "csrrc": { - "encoding": "-----------------011-----1110011", - "variable_fields": ["csr", "rd", "rs1"], - "extension": ["rv_zicsr"], - "match": "0x3073", - "mask": "0x707f" - }, - "csrrci": { - "encoding": "-----------------111-----1110011", - "variable_fields": ["csr", "rd"], - "extension": ["rv_zicsr"], - "match": "0x7073", - "mask": "0x707f" - }, - "csrrs": { - "encoding": "-----------------010-----1110011", - "variable_fields": ["csr", "rd", "rs1"], - "extension": ["rv_zicsr"], - "match": "0x2073", - "mask": "0x707f" - }, - "csrrsi": { - "encoding": "-----------------110-----1110011", - "variable_fields": ["csr", "rd"], - "extension": ["rv_zicsr"], - "match": "0x6073", - "mask": "0x707f" - }, - "csrrw": { - "encoding": "-----------------001-----1110011", - "variable_fields": ["csr", "rd", "rs1"], - "extension": ["rv_zicsr"], - "match": "0x1073", - "mask": "0x707f" - }, - "csrrwi": { - "encoding": "-----------------101-----1110011", - "variable_fields": ["csr", "rd", "zimm"], - "extension": ["rv_zicsr"], - "match": "0x5073", - "mask": "0x707f" - }, - "ctz": { - "encoding": "011000000001-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_b", "rv_zbb"], - "match": "0x60101013", - "mask": "0xfff0707f" - }, - "ctzw": { - "encoding": "011000000001-----001-----0011011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_b", "rv64_zbb"], - "match": "0x6010101b", - "mask": "0xfff0707f" - }, - "czero_eqz": { - "encoding": "0000111----------101-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zicond"], - "match": "0xe005033", - "mask": "0xfe00707f" - }, - "czero_nez": { - "encoding": "0000111----------111-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zicond"], - "match": "0xe007033", - "mask": "0xfe00707f" - }, - "div": { - "encoding": "0000001----------100-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_m"], - "match": "0x2004033", - "mask": "0xfe00707f" - }, - "divu": { - "encoding": "0000001----------101-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_m"], - "match": "0x2005033", - "mask": "0xfe00707f" - }, - "divuw": { - "encoding": "0000001----------101-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_m"], - "match": "0x200503b", - "mask": "0xfe00707f" - }, - "divw": { - "encoding": "0000001----------100-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_m"], - "match": "0x200403b", - "mask": "0xfe00707f" - }, - "dret": { - "encoding": "01111011001000000000000001110011", - "variable_fields": [], - "extension": ["rv_sdext"], - "match": "0x7b200073", - "mask": "0xffffffff" - }, - "ebreak": { - "encoding": "00000000000100000000000001110011", - "variable_fields": [], - "extension": ["rv_i"], - "match": "0x100073", - "mask": "0xffffffff" - }, - "ecall": { - "encoding": "00000000000000000000000001110011", - "variable_fields": [], - "extension": ["rv_i"], - "match": "0x73", - "mask": "0xffffffff" - }, - "fadd_d": { - "encoding": "0000001------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_d"], - "match": "0x2000053", - "mask": "0xfe00007f" - }, - "fadd_h": { - "encoding": "0000010------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_zfh"], - "match": "0x4000053", - "mask": "0xfe00007f" - }, - "fadd_q": { - "encoding": "0000011------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_q"], - "match": "0x6000053", - "mask": "0xfe00007f" - }, - "fadd_s": { - "encoding": "0000000------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_f"], - "match": "0x53", - "mask": "0xfe00007f" - }, - "fclass_d": { - "encoding": "111000100000-----001-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_d"], - "match": "0xe2001053", - "mask": "0xfff0707f" - }, - "fclass_h": { - "encoding": "111001000000-----001-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_zfh"], - "match": "0xe4001053", - "mask": "0xfff0707f" - }, - "fclass_q": { - "encoding": "111001100000-----001-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_q"], - "match": "0xe6001053", - "mask": "0xfff0707f" - }, - "fclass_s": { - "encoding": "111000000000-----001-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_f"], - "match": "0xe0001053", - "mask": "0xfff0707f" - }, - "fcvt_bf16_s": { - "encoding": "010001001000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_zfbfmin"], - "match": "0x44800053", - "mask": "0xfff0007f" - }, - "fcvt_d_h": { - "encoding": "010000100010-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_d", "rv_zfh"], - "match": "0x42200053", - "mask": "0xfff0007f" - }, - "fcvt_d_l": { - "encoding": "110100100010-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_d"], - "match": "0xd2200053", - "mask": "0xfff0007f" - }, - "fcvt_d_lu": { - "encoding": "110100100011-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_d"], - "match": "0xd2300053", - "mask": "0xfff0007f" - }, - "fcvt_d_q": { - "encoding": "010000100011-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_q"], - "match": "0x42300053", - "mask": "0xfff0007f" - }, - "fcvt_d_s": { - "encoding": "010000100000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_d"], - "match": "0x42000053", - "mask": "0xfff0007f" - }, - "fcvt_d_w": { - "encoding": "110100100000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_d"], - "match": "0xd2000053", - "mask": "0xfff0007f" - }, - "fcvt_d_wu": { - "encoding": "110100100001-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_d"], - "match": "0xd2100053", - "mask": "0xfff0007f" - }, - "fcvt_h_d": { - "encoding": "010001000001-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_d", "rv_zfh"], - "match": "0x44100053", - "mask": "0xfff0007f" - }, - "fcvt_h_l": { - "encoding": "110101000010-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_zfh"], - "match": "0xd4200053", - "mask": "0xfff0007f" - }, - "fcvt_h_lu": { - "encoding": "110101000011-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_zfh"], - "match": "0xd4300053", - "mask": "0xfff0007f" - }, - "fcvt_h_q": { - "encoding": "010001000011-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_q", "rv_zfh"], - "match": "0x44300053", - "mask": "0xfff0007f" - }, - "fcvt_h_s": { - "encoding": "010001000000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_zfh", "rv_zfhmin"], - "match": "0x44000053", - "mask": "0xfff0007f" - }, - "fcvt_h_w": { - "encoding": "110101000000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_zfh"], - "match": "0xd4000053", - "mask": "0xfff0007f" - }, - "fcvt_h_wu": { - "encoding": "110101000001-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_zfh"], - "match": "0xd4100053", - "mask": "0xfff0007f" - }, - "fcvt_l_d": { - "encoding": "110000100010-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_d"], - "match": "0xc2200053", - "mask": "0xfff0007f" - }, - "fcvt_l_h": { - "encoding": "110001000010-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_zfh"], - "match": "0xc4200053", - "mask": "0xfff0007f" - }, - "fcvt_l_q": { - "encoding": "110001100010-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_q"], - "match": "0xc6200053", - "mask": "0xfff0007f" - }, - "fcvt_l_s": { - "encoding": "110000000010-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_f"], - "match": "0xc0200053", - "mask": "0xfff0007f" - }, - "fcvt_lu_d": { - "encoding": "110000100011-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_d"], - "match": "0xc2300053", - "mask": "0xfff0007f" - }, - "fcvt_lu_h": { - "encoding": "110001000011-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_zfh"], - "match": "0xc4300053", - "mask": "0xfff0007f" - }, - "fcvt_lu_q": { - "encoding": "110001100011-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_q"], - "match": "0xc6300053", - "mask": "0xfff0007f" - }, - "fcvt_lu_s": { - "encoding": "110000000011-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_f"], - "match": "0xc0300053", - "mask": "0xfff0007f" - }, - "fcvt_q_d": { - "encoding": "010001100001-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_q"], - "match": "0x46100053", - "mask": "0xfff0007f" - }, - "fcvt_q_h": { - "encoding": "010001100010-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_q", "rv_zfh"], - "match": "0x46200053", - "mask": "0xfff0007f" - }, - "fcvt_q_l": { - "encoding": "110101100010-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_q"], - "match": "0xd6200053", - "mask": "0xfff0007f" - }, - "fcvt_q_lu": { - "encoding": "110101100011-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_q"], - "match": "0xd6300053", - "mask": "0xfff0007f" - }, - "fcvt_q_s": { - "encoding": "010001100000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_q"], - "match": "0x46000053", - "mask": "0xfff0007f" - }, - "fcvt_q_w": { - "encoding": "110101100000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_q"], - "match": "0xd6000053", - "mask": "0xfff0007f" - }, - "fcvt_q_wu": { - "encoding": "110101100001-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_q"], - "match": "0xd6100053", - "mask": "0xfff0007f" - }, - "fcvt_s_bf16": { - "encoding": "010000000110-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_zfbfmin"], - "match": "0x40600053", - "mask": "0xfff0007f" - }, - "fcvt_s_d": { - "encoding": "010000000001-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_d"], - "match": "0x40100053", - "mask": "0xfff0007f" - }, - "fcvt_s_h": { - "encoding": "010000000010-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_zfh", "rv_zfhmin"], - "match": "0x40200053", - "mask": "0xfff0007f" - }, - "fcvt_s_l": { - "encoding": "110100000010-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_f"], - "match": "0xd0200053", - "mask": "0xfff0007f" - }, - "fcvt_s_lu": { - "encoding": "110100000011-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv64_f"], - "match": "0xd0300053", - "mask": "0xfff0007f" - }, - "fcvt_s_q": { - "encoding": "010000000011-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_q"], - "match": "0x40300053", - "mask": "0xfff0007f" - }, - "fcvt_s_w": { - "encoding": "110100000000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_f"], - "match": "0xd0000053", - "mask": "0xfff0007f" - }, - "fcvt_s_wu": { - "encoding": "110100000001-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_f"], - "match": "0xd0100053", - "mask": "0xfff0007f" - }, - "fcvt_w_d": { - "encoding": "110000100000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_d"], - "match": "0xc2000053", - "mask": "0xfff0007f" - }, - "fcvt_w_h": { - "encoding": "110001000000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_zfh"], - "match": "0xc4000053", - "mask": "0xfff0007f" - }, - "fcvt_w_q": { - "encoding": "110001100000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_q"], - "match": "0xc6000053", - "mask": "0xfff0007f" - }, - "fcvt_w_s": { - "encoding": "110000000000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_f"], - "match": "0xc0000053", - "mask": "0xfff0007f" - }, - "fcvt_wu_d": { - "encoding": "110000100001-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_d"], - "match": "0xc2100053", - "mask": "0xfff0007f" - }, - "fcvt_wu_h": { - "encoding": "110001000001-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_zfh"], - "match": "0xc4100053", - "mask": "0xfff0007f" - }, - "fcvt_wu_q": { - "encoding": "110001100001-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_q"], - "match": "0xc6100053", - "mask": "0xfff0007f" - }, - "fcvt_wu_s": { - "encoding": "110000000001-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_f"], - "match": "0xc0100053", - "mask": "0xfff0007f" - }, - "fcvtmod_w_d": { - "encoding": "110000101000-----001-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_d", "rv_zfa"], - "match": "0xc2801053", - "mask": "0xfff0707f" - }, - "fdiv_d": { - "encoding": "0001101------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_d"], - "match": "0x1a000053", - "mask": "0xfe00007f" - }, - "fdiv_h": { - "encoding": "0001110------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_zfh"], - "match": "0x1c000053", - "mask": "0xfe00007f" - }, - "fdiv_q": { - "encoding": "0001111------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_q"], - "match": "0x1e000053", - "mask": "0xfe00007f" - }, - "fdiv_s": { - "encoding": "0001100------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_f"], - "match": "0x18000053", - "mask": "0xfe00007f" - }, - "fence": { - "encoding": "-----------------000-----0001111", - "variable_fields": ["pred", "rd", "rm", "rs1", "succ"], - "extension": ["rv_i"], - "match": "0xf", - "mask": "0x707f" - }, - "fence_i": { - "encoding": "-----------------001-----0001111", - "variable_fields": ["imm12", "rd", "rs1"], - "extension": ["rv_zifencei"], - "match": "0x100f", - "mask": "0x707f" - }, - "feq_d": { - "encoding": "1010001----------010-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_d"], - "match": "0xa2002053", - "mask": "0xfe00707f" - }, - "feq_h": { - "encoding": "1010010----------010-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfh"], - "match": "0xa4002053", - "mask": "0xfe00707f" - }, - "feq_q": { - "encoding": "1010011----------010-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_q"], - "match": "0xa6002053", - "mask": "0xfe00707f" - }, - "feq_s": { - "encoding": "1010000----------010-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_f"], - "match": "0xa0002053", - "mask": "0xfe00707f" - }, - "fld": { - "encoding": "-----------------011-----0000111", - "variable_fields": ["imm12", "rd", "rs1"], - "extension": ["rv_d"], - "match": "0x3007", - "mask": "0x707f" - }, - "fle_d": { - "encoding": "1010001----------000-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_d"], - "match": "0xa2000053", - "mask": "0xfe00707f" - }, - "fle_h": { - "encoding": "1010010----------000-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfh"], - "match": "0xa4000053", - "mask": "0xfe00707f" - }, - "fle_q": { - "encoding": "1010011----------000-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_q"], - "match": "0xa6000053", - "mask": "0xfe00707f" - }, - "fle_s": { - "encoding": "1010000----------000-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_f"], - "match": "0xa0000053", - "mask": "0xfe00707f" - }, - "fleq_d": { - "encoding": "1010001----------100-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_d", "rv_zfa"], - "match": "0xa2004053", - "mask": "0xfe00707f" - }, - "fleq_h": { - "encoding": "1010010----------100-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfa", "rv_zfh"], - "match": "0xa4004053", - "mask": "0xfe00707f" - }, - "fleq_q": { - "encoding": "1010011----------100-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_q", "rv_zfa"], - "match": "0xa6004053", - "mask": "0xfe00707f" - }, - "fleq_s": { - "encoding": "1010000----------100-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfa"], - "match": "0xa0004053", - "mask": "0xfe00707f" - }, - "flh": { - "encoding": "-----------------001-----0000111", - "variable_fields": ["imm12", "rd", "rs1"], - "extension": ["rv_zfh", "rv_zfhmin", "rv_zhinx"], - "match": "0x1007", - "mask": "0x707f" - }, - "fli_d": { - "encoding": "111100100001-----000-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_d", "rv_zfa"], - "match": "0xf2100053", - "mask": "0xfff0707f" - }, - "fli_h": { - "encoding": "111101000001-----000-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_zfa", "rv_zfh"], - "match": "0xf4100053", - "mask": "0xfff0707f" - }, - "fli_q": { - "encoding": "111101100001-----000-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_q", "rv_zfa"], - "match": "0xf6100053", - "mask": "0xfff0707f" - }, - "fli_s": { - "encoding": "111100000001-----000-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_zfa"], - "match": "0xf0100053", - "mask": "0xfff0707f" - }, - "flq": { - "encoding": "-----------------100-----0000111", - "variable_fields": ["imm12", "rd", "rs1"], - "extension": ["rv_q"], - "match": "0x4007", - "mask": "0x707f" - }, - "flt_d": { - "encoding": "1010001----------001-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_d"], - "match": "0xa2001053", - "mask": "0xfe00707f" - }, - "flt_h": { - "encoding": "1010010----------001-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfh"], - "match": "0xa4001053", - "mask": "0xfe00707f" - }, - "flt_q": { - "encoding": "1010011----------001-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_q"], - "match": "0xa6001053", - "mask": "0xfe00707f" - }, - "flt_s": { - "encoding": "1010000----------001-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_f"], - "match": "0xa0001053", - "mask": "0xfe00707f" - }, - "fltq_d": { - "encoding": "1010001----------101-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_d", "rv_zfa"], - "match": "0xa2005053", - "mask": "0xfe00707f" - }, - "fltq_h": { - "encoding": "1010010----------101-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfa", "rv_zfh"], - "match": "0xa4005053", - "mask": "0xfe00707f" - }, - "fltq_q": { - "encoding": "1010011----------101-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_q", "rv_zfa"], - "match": "0xa6005053", - "mask": "0xfe00707f" - }, - "fltq_s": { - "encoding": "1010000----------101-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfa"], - "match": "0xa0005053", - "mask": "0xfe00707f" - }, - "flw": { - "encoding": "-----------------010-----0000111", - "variable_fields": ["imm12", "rd", "rs1"], - "extension": ["rv_f"], - "match": "0x2007", - "mask": "0x707f" - }, - "fmadd_d": { - "encoding": "-----01------------------1000011", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_d"], - "match": "0x2000043", - "mask": "0x600007f" - }, - "fmadd_h": { - "encoding": "-----10------------------1000011", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_zfh"], - "match": "0x4000043", - "mask": "0x600007f" - }, - "fmadd_q": { - "encoding": "-----11------------------1000011", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_q"], - "match": "0x6000043", - "mask": "0x600007f" - }, - "fmadd_s": { - "encoding": "-----00------------------1000011", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_f"], - "match": "0x43", - "mask": "0x600007f" - }, - "fmax_d": { - "encoding": "0010101----------001-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_d"], - "match": "0x2a001053", - "mask": "0xfe00707f" - }, - "fmax_h": { - "encoding": "0010110----------001-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfh"], - "match": "0x2c001053", - "mask": "0xfe00707f" - }, - "fmax_q": { - "encoding": "0010111----------001-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_q"], - "match": "0x2e001053", - "mask": "0xfe00707f" - }, - "fmax_s": { - "encoding": "0010100----------001-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_f"], - "match": "0x28001053", - "mask": "0xfe00707f" - }, - "fmaxm_d": { - "encoding": "0010101----------011-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_d", "rv_zfa"], - "match": "0x2a003053", - "mask": "0xfe00707f" - }, - "fmaxm_h": { - "encoding": "0010110----------011-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfa", "rv_zfh"], - "match": "0x2c003053", - "mask": "0xfe00707f" - }, - "fmaxm_q": { - "encoding": "0010111----------011-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_q", "rv_zfa"], - "match": "0x2e003053", - "mask": "0xfe00707f" - }, - "fmaxm_s": { - "encoding": "0010100----------011-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfa"], - "match": "0x28003053", - "mask": "0xfe00707f" - }, - "fmin_d": { - "encoding": "0010101----------000-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_d"], - "match": "0x2a000053", - "mask": "0xfe00707f" - }, - "fmin_h": { - "encoding": "0010110----------000-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfh"], - "match": "0x2c000053", - "mask": "0xfe00707f" - }, - "fmin_q": { - "encoding": "0010111----------000-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_q"], - "match": "0x2e000053", - "mask": "0xfe00707f" - }, - "fmin_s": { - "encoding": "0010100----------000-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_f"], - "match": "0x28000053", - "mask": "0xfe00707f" - }, - "fminm_d": { - "encoding": "0010101----------010-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_d", "rv_zfa"], - "match": "0x2a002053", - "mask": "0xfe00707f" - }, - "fminm_h": { - "encoding": "0010110----------010-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfa", "rv_zfh"], - "match": "0x2c002053", - "mask": "0xfe00707f" - }, - "fminm_q": { - "encoding": "0010111----------010-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_q", "rv_zfa"], - "match": "0x2e002053", - "mask": "0xfe00707f" - }, - "fminm_s": { - "encoding": "0010100----------010-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfa"], - "match": "0x28002053", - "mask": "0xfe00707f" - }, - "fmsub_d": { - "encoding": "-----01------------------1000111", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_d"], - "match": "0x2000047", - "mask": "0x600007f" - }, - "fmsub_h": { - "encoding": "-----10------------------1000111", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_zfh"], - "match": "0x4000047", - "mask": "0x600007f" - }, - "fmsub_q": { - "encoding": "-----11------------------1000111", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_q"], - "match": "0x6000047", - "mask": "0x600007f" - }, - "fmsub_s": { - "encoding": "-----00------------------1000111", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_f"], - "match": "0x47", - "mask": "0x600007f" - }, - "fmul_d": { - "encoding": "0001001------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_d"], - "match": "0x12000053", - "mask": "0xfe00007f" - }, - "fmul_h": { - "encoding": "0001010------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_zfh"], - "match": "0x14000053", - "mask": "0xfe00007f" - }, - "fmul_q": { - "encoding": "0001011------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_q"], - "match": "0x16000053", - "mask": "0xfe00007f" - }, - "fmul_s": { - "encoding": "0001000------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_f"], - "match": "0x10000053", - "mask": "0xfe00007f" - }, - "fmv_d_x": { - "encoding": "111100100000-----000-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_d"], - "match": "0xf2000053", - "mask": "0xfff0707f" - }, - "fmv_h_x": { - "encoding": "111101000000-----000-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_f"], - "match": "0xf4000053", - "mask": "0xfff0707f" - }, - "fmv_w_x": { - "encoding": "111100000000-----000-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_f"], - "match": "0xf0000053", - "mask": "0xfff0707f" - }, - "fmv_x_d": { - "encoding": "111000100000-----000-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_d"], - "match": "0xe2000053", - "mask": "0xfff0707f" - }, - "fmv_x_h": { - "encoding": "111001000000-----000-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_zfh", "rv_zfhmin", "rv_zhinx"], - "match": "0xe4000053", - "mask": "0xfff0707f" - }, - "fmv_x_w": { - "encoding": "111000000000-----000-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_f"], - "match": "0xe0000053", - "mask": "0xfff0707f" - }, - "fmvh_x_d": { - "encoding": "111000100001-----000-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv32_d", "rv32_zfa"], - "match": "0xe2100053", - "mask": "0xfff0707f" - }, - "fmvh_x_q": { - "encoding": "111001100001-----000-----1010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_q", "rv64_zfa"], - "match": "0xe6100053", - "mask": "0xfff0707f" - }, - "fmvp_d_x": { - "encoding": "1011001----------000-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv32_d", "rv32_zfa"], - "match": "0xb2000053", - "mask": "0xfe00707f" - }, - "fmvp_q_x": { - "encoding": "1011011----------000-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_q", "rv64_zfa"], - "match": "0xb6000053", - "mask": "0xfe00707f" - }, - "fnmadd_d": { - "encoding": "-----01------------------1001111", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_d"], - "match": "0x200004f", - "mask": "0x600007f" - }, - "fnmadd_h": { - "encoding": "-----10------------------1001111", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_zfh"], - "match": "0x400004f", - "mask": "0x600007f" - }, - "fnmadd_q": { - "encoding": "-----11------------------1001111", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_q"], - "match": "0x600004f", - "mask": "0x600007f" - }, - "fnmadd_s": { - "encoding": "-----00------------------1001111", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_f"], - "match": "0x4f", - "mask": "0x600007f" - }, - "fnmsub_d": { - "encoding": "-----01------------------1001011", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_d"], - "match": "0x200004b", - "mask": "0x600007f" - }, - "fnmsub_h": { - "encoding": "-----10------------------1001011", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_zfh"], - "match": "0x400004b", - "mask": "0x600007f" - }, - "fnmsub_q": { - "encoding": "-----11------------------1001011", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_q"], - "match": "0x600004b", - "mask": "0x600007f" - }, - "fnmsub_s": { - "encoding": "-----00------------------1001011", - "variable_fields": ["rd", "rm", "rs1", "rs2", "rs3"], - "extension": ["rv_f"], - "match": "0x4b", - "mask": "0x600007f" - }, - "fround_d": { - "encoding": "010000100100-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_d", "rv_zfa"], - "match": "0x42400053", - "mask": "0xfff0007f" - }, - "fround_h": { - "encoding": "010001000100-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_zfa", "rv_zfh"], - "match": "0x44400053", - "mask": "0xfff0007f" - }, - "fround_q": { - "encoding": "010001100100-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_q", "rv_zfa"], - "match": "0x46400053", - "mask": "0xfff0007f" - }, - "fround_s": { - "encoding": "010000000100-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_zfa"], - "match": "0x40400053", - "mask": "0xfff0007f" - }, - "froundnx_d": { - "encoding": "010000100101-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_d", "rv_zfa"], - "match": "0x42500053", - "mask": "0xfff0007f" - }, - "froundnx_h": { - "encoding": "010001000101-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_zfa", "rv_zfh"], - "match": "0x44500053", - "mask": "0xfff0007f" - }, - "froundnx_q": { - "encoding": "010001100101-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_q", "rv_zfa"], - "match": "0x46500053", - "mask": "0xfff0007f" - }, - "froundnx_s": { - "encoding": "010000000101-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_zfa"], - "match": "0x40500053", - "mask": "0xfff0007f" - }, - "fsd": { - "encoding": "-----------------011-----0100111", - "variable_fields": ["imm12hi", "imm12lo", "rs1", "rs2"], - "extension": ["rv_d"], - "match": "0x3027", - "mask": "0x707f" - }, - "fsgnj_d": { - "encoding": "0010001----------000-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_d"], - "match": "0x22000053", - "mask": "0xfe00707f" - }, - "fsgnj_h": { - "encoding": "0010010----------000-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfh"], - "match": "0x24000053", - "mask": "0xfe00707f" - }, - "fsgnj_q": { - "encoding": "0010011----------000-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_q"], - "match": "0x26000053", - "mask": "0xfe00707f" - }, - "fsgnj_s": { - "encoding": "0010000----------000-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_f"], - "match": "0x20000053", - "mask": "0xfe00707f" - }, - "fsgnjn_d": { - "encoding": "0010001----------001-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_d"], - "match": "0x22001053", - "mask": "0xfe00707f" - }, - "fsgnjn_h": { - "encoding": "0010010----------001-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfh"], - "match": "0x24001053", - "mask": "0xfe00707f" - }, - "fsgnjn_q": { - "encoding": "0010011----------001-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_q"], - "match": "0x26001053", - "mask": "0xfe00707f" - }, - "fsgnjn_s": { - "encoding": "0010000----------001-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_f"], - "match": "0x20001053", - "mask": "0xfe00707f" - }, - "fsgnjx_d": { - "encoding": "0010001----------010-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_d"], - "match": "0x22002053", - "mask": "0xfe00707f" - }, - "fsgnjx_h": { - "encoding": "0010010----------010-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zfh"], - "match": "0x24002053", - "mask": "0xfe00707f" - }, - "fsgnjx_q": { - "encoding": "0010011----------010-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_q"], - "match": "0x26002053", - "mask": "0xfe00707f" - }, - "fsgnjx_s": { - "encoding": "0010000----------010-----1010011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_f"], - "match": "0x20002053", - "mask": "0xfe00707f" - }, - "fsh": { - "encoding": "-----------------001-----0100111", - "variable_fields": ["imm12hi", "imm12lo", "rs1", "rs2"], - "extension": ["rv_zfh", "rv_zfhmin", "rv_zhinx"], - "match": "0x1027", - "mask": "0x707f" - }, - "fsq": { - "encoding": "-----------------100-----0100111", - "variable_fields": ["imm12hi", "imm12lo", "rs1", "rs2"], - "extension": ["rv_q"], - "match": "0x4027", - "mask": "0x707f" - }, - "fsqrt_d": { - "encoding": "010110100000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_d"], - "match": "0x5a000053", - "mask": "0xfff0007f" - }, - "fsqrt_h": { - "encoding": "010111000000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_zfh"], - "match": "0x5c000053", - "mask": "0xfff0007f" - }, - "fsqrt_q": { - "encoding": "010111100000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_q"], - "match": "0x5e000053", - "mask": "0xfff0007f" - }, - "fsqrt_s": { - "encoding": "010110000000-------------1010011", - "variable_fields": ["rd", "rm", "rs1"], - "extension": ["rv_f"], - "match": "0x58000053", - "mask": "0xfff0007f" - }, - "fsub_d": { - "encoding": "0000101------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_d"], - "match": "0xa000053", - "mask": "0xfe00007f" - }, - "fsub_h": { - "encoding": "0000110------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_zfh"], - "match": "0xc000053", - "mask": "0xfe00007f" - }, - "fsub_q": { - "encoding": "0000111------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_q"], - "match": "0xe000053", - "mask": "0xfe00007f" - }, - "fsub_s": { - "encoding": "0000100------------------1010011", - "variable_fields": ["rd", "rm", "rs1", "rs2"], - "extension": ["rv_f"], - "match": "0x8000053", - "mask": "0xfe00007f" - }, - "fsw": { - "encoding": "-----------------010-----0100111", - "variable_fields": ["imm12hi", "imm12lo", "rs1", "rs2"], - "extension": ["rv_f"], - "match": "0x2027", - "mask": "0x707f" - }, - "hfence_gvma": { - "encoding": "0110001----------000000001110011", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv_h"], - "match": "0x62000073", - "mask": "0xfe007fff" - }, - "hfence_vvma": { - "encoding": "0010001----------000000001110011", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv_h"], - "match": "0x22000073", - "mask": "0xfe007fff" - }, - "hinval_gvma": { - "encoding": "0110011----------000000001110011", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv_h", "rv_svinval"], - "match": "0x66000073", - "mask": "0xfe007fff" - }, - "hinval_vvma": { - "encoding": "0010011----------000000001110011", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv_h", "rv_svinval"], - "match": "0x26000073", - "mask": "0xfe007fff" - }, - "hlv_b": { - "encoding": "011000000000-----100-----1110011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_h"], - "match": "0x60004073", - "mask": "0xfff0707f" - }, - "hlv_bu": { - "encoding": "011000000001-----100-----1110011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_h"], - "match": "0x60104073", - "mask": "0xfff0707f" - }, - "hlv_d": { - "encoding": "011011000000-----100-----1110011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_h"], - "match": "0x6c004073", - "mask": "0xfff0707f" - }, - "hlv_h": { - "encoding": "011001000000-----100-----1110011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_h"], - "match": "0x64004073", - "mask": "0xfff0707f" - }, - "hlv_hu": { - "encoding": "011001000001-----100-----1110011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_h"], - "match": "0x64104073", - "mask": "0xfff0707f" - }, - "hlv_w": { - "encoding": "011010000000-----100-----1110011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_h"], - "match": "0x68004073", - "mask": "0xfff0707f" - }, - "hlv_wu": { - "encoding": "011010000001-----100-----1110011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_h"], - "match": "0x68104073", - "mask": "0xfff0707f" - }, - "hlvx_hu": { - "encoding": "011001000011-----100-----1110011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_h"], - "match": "0x64304073", - "mask": "0xfff0707f" - }, - "hlvx_wu": { - "encoding": "011010000011-----100-----1110011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_h"], - "match": "0x68304073", - "mask": "0xfff0707f" - }, - "hsv_b": { - "encoding": "0110001----------100000001110011", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv_h"], - "match": "0x62004073", - "mask": "0xfe007fff" - }, - "hsv_d": { - "encoding": "0110111----------100000001110011", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv64_h"], - "match": "0x6e004073", - "mask": "0xfe007fff" - }, - "hsv_h": { - "encoding": "0110011----------100000001110011", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv_h"], - "match": "0x66004073", - "mask": "0xfe007fff" - }, - "hsv_w": { - "encoding": "0110101----------100000001110011", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv_h"], - "match": "0x6a004073", - "mask": "0xfe007fff" - }, - "jal": { - "encoding": "-------------------------1101111", - "variable_fields": ["rd"], - "extension": ["rv_i"], - "match": "0x6f", - "mask": "0x7f" - }, - "jalr": { - "encoding": "-----------------000-----1100111", - "variable_fields": ["imm12", "rd", "rs1"], - "extension": ["rv_i"], - "match": "0x67", - "mask": "0x707f" - }, - "lb": { - "encoding": "-----------------000-----0000011", - "variable_fields": ["imm12", "rd", "rs1"], - "extension": ["rv_i"], - "match": "0x3", - "mask": "0x707f" - }, - "lb_aq": { - "encoding": "001101-00000-----000-----0101111", - "variable_fields": ["rd", "rl", "rs1"], - "extension": ["rv_zalasr"], - "match": "0x3400002f", - "mask": "0xfdf0707f" - }, - "lbu": { - "encoding": "-----------------100-----0000011", - "variable_fields": ["imm12", "rd", "rs1"], - "extension": ["rv_i"], - "match": "0x4003", - "mask": "0x707f" - }, - "ld": { - "encoding": "-----------------011-----0000011", - "variable_fields": ["imm12", "rd", "rs1"], - "extension": ["rv64_i"], - "match": "0x3003", - "mask": "0x707f" - }, - "ld_aq": { - "encoding": "001101-00000-----011-----0101111", - "variable_fields": ["rd", "rl", "rs1"], - "extension": ["rv_zalasr"], - "match": "0x3400302f", - "mask": "0xfdf0707f" - }, - "lh": { - "encoding": "-----------------001-----0000011", - "variable_fields": ["imm12", "rd", "rs1"], - "extension": ["rv_i"], - "match": "0x1003", - "mask": "0x707f" - }, - "lh_aq": { - "encoding": "001101-00000-----001-----0101111", - "variable_fields": ["rd", "rl", "rs1"], - "extension": ["rv_zalasr"], - "match": "0x3400102f", - "mask": "0xfdf0707f" - }, - "lhu": { - "encoding": "-----------------101-----0000011", - "variable_fields": ["imm12", "rd", "rs1"], - "extension": ["rv_i"], - "match": "0x5003", - "mask": "0x707f" - }, - "lpad": { - "encoding": "--------------------000000010111", - "variable_fields": ["imm20"], - "extension": ["rv_zicfilp"], - "match": "0x17", - "mask": "0xfff" - }, - "lr_d": { - "encoding": "00010--00000-----011-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1"], - "extension": ["rv64_a", "rv64_zalrsc"], - "match": "0x1000302f", - "mask": "0xf9f0707f" - }, - "lr_w": { - "encoding": "00010--00000-----010-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1"], - "extension": ["rv_a", "rv_zalrsc"], - "match": "0x1000202f", - "mask": "0xf9f0707f" - }, - "lui": { - "encoding": "-------------------------0110111", - "variable_fields": ["imm20", "rd"], - "extension": ["rv_i"], - "match": "0x37", - "mask": "0x7f" - }, - "lw": { - "encoding": "-----------------010-----0000011", - "variable_fields": ["imm12", "rd", "rs1"], - "extension": ["rv_i"], - "match": "0x2003", - "mask": "0x707f" - }, - "lw_aq": { - "encoding": "001101-00000-----010-----0101111", - "variable_fields": ["rd", "rl", "rs1"], - "extension": ["rv_zalasr"], - "match": "0x3400202f", - "mask": "0xfdf0707f" - }, - "lwu": { - "encoding": "-----------------110-----0000011", - "variable_fields": ["imm12", "rd", "rs1"], - "extension": ["rv64_i"], - "match": "0x6003", - "mask": "0x707f" - }, - "max": { - "encoding": "0000101----------110-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbb"], - "match": "0xa006033", - "mask": "0xfe00707f" - }, - "maxu": { - "encoding": "0000101----------111-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbb"], - "match": "0xa007033", - "mask": "0xfe00707f" - }, - "min": { - "encoding": "0000101----------100-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbb"], - "match": "0xa004033", - "mask": "0xfe00707f" - }, - "minu": { - "encoding": "0000101----------101-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbb"], - "match": "0xa005033", - "mask": "0xfe00707f" - }, - "mnret": { - "encoding": "01110000001000000000000001110011", - "variable_fields": [], - "extension": ["rv_smrnmi"], - "match": "0x70200073", - "mask": "0xffffffff" - }, - "mop_r_n": { - "encoding": "1-00--0111-------100-----1110011", - "variable_fields": [ - "mop_r_t_21_20", - "mop_r_t_27_26", - "mop_r_t_30", - "rd", - "rs1" - ], - "extension": ["rv_zimop"], - "match": "0x81c04073", - "mask": "0xb3c0707f" - }, - "mop_rr_n": { - "encoding": "1-00--1----------100-----1110011", - "variable_fields": ["mop_rr_t_27_26", "mop_rr_t_30", "rd", "rs1", "rs2"], - "extension": ["rv_zimop"], - "match": "0x82004073", - "mask": "0xb200707f" - }, - "mret": { - "encoding": "00110000001000000000000001110011", - "variable_fields": [], - "extension": ["rv_sm"], - "match": "0x30200073", - "mask": "0xffffffff" - }, - "mul": { - "encoding": "0000001----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_m", "rv_zmmul"], - "match": "0x2000033", - "mask": "0xfe00707f" - }, - "mulh": { - "encoding": "0000001----------001-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_m", "rv_zmmul"], - "match": "0x2001033", - "mask": "0xfe00707f" - }, - "mulhsu": { - "encoding": "0000001----------010-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_m", "rv_zmmul"], - "match": "0x2002033", - "mask": "0xfe00707f" - }, - "mulhu": { - "encoding": "0000001----------011-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_m", "rv_zmmul"], - "match": "0x2003033", - "mask": "0xfe00707f" - }, - "mulw": { - "encoding": "0000001----------000-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_m", "rv64_zmmul"], - "match": "0x200003b", - "mask": "0xfe00707f" - }, - "or": { - "encoding": "0000000----------110-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_i"], - "match": "0x6033", - "mask": "0xfe00707f" - }, - "orc_b": { - "encoding": "001010000111-----101-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_b", "rv_zbb"], - "match": "0x28705013", - "mask": "0xfff0707f" - }, - "ori": { - "encoding": "-----------------110-----0010011", - "variable_fields": ["imm12", "rd", "rs1"], - "extension": ["rv_i"], - "match": "0x6013", - "mask": "0x707f" - }, - "orn": { - "encoding": "0100000----------110-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbb", "rv_zbkb", "rv_zk", "rv_zkn", "rv_zks"], - "match": "0x40006033", - "mask": "0xfe00707f" - }, - "pack": { - "encoding": "0000100----------100-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zbkb", "rv_zk", "rv_zkn", "rv_zks"], - "match": "0x8004033", - "mask": "0xfe00707f" - }, - "packh": { - "encoding": "0000100----------111-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zbkb", "rv_zk", "rv_zkn", "rv_zks"], - "match": "0x8007033", - "mask": "0xfe00707f" - }, - "packw": { - "encoding": "0000100----------100-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_zbkb", "rv64_zk", "rv64_zkn", "rv64_zks"], - "match": "0x800403b", - "mask": "0xfe00707f" - }, - "rem": { - "encoding": "0000001----------110-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_m"], - "match": "0x2006033", - "mask": "0xfe00707f" - }, - "remu": { - "encoding": "0000001----------111-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_m"], - "match": "0x2007033", - "mask": "0xfe00707f" - }, - "remuw": { - "encoding": "0000001----------111-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_m"], - "match": "0x200703b", - "mask": "0xfe00707f" - }, - "remw": { - "encoding": "0000001----------110-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_m"], - "match": "0x200603b", - "mask": "0xfe00707f" - }, - "rev8": { - "encoding": "011010111000-----101-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_b", "rv64_zbb", "rv64_zbkb"], - "match": "0x6b805013", - "mask": "0xfff0707f" - }, - "rol": { - "encoding": "0110000----------001-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbb", "rv_zbkb", "rv_zk", "rv_zkn", "rv_zks"], - "match": "0x60001033", - "mask": "0xfe00707f" - }, - "rolw": { - "encoding": "0110000----------001-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": [ - "rv64_b", - "rv64_zbb", - "rv64_zbkb", - "rv64_zk", - "rv64_zkn", - "rv64_zks" - ], - "match": "0x6000103b", - "mask": "0xfe00707f" - }, - "ror": { - "encoding": "0110000----------101-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbb", "rv_zbkb", "rv_zk", "rv_zkn", "rv_zks"], - "match": "0x60005033", - "mask": "0xfe00707f" - }, - "rori": { - "encoding": "011000-----------101-----0010011", - "variable_fields": ["rd", "rs1", "shamtd"], - "extension": [ - "rv64_b", - "rv64_zbb", - "rv64_zbkb", - "rv64_zk", - "rv64_zkn", - "rv64_zks" - ], - "match": "0x60005013", - "mask": "0xfc00707f" - }, - "roriw": { - "encoding": "0110000----------101-----0011011", - "variable_fields": ["rd", "rs1", "shamtw"], - "extension": [ - "rv64_b", - "rv64_zbb", - "rv64_zbkb", - "rv64_zk", - "rv64_zkn", - "rv64_zks" - ], - "match": "0x6000501b", - "mask": "0xfe00707f" - }, - "rorw": { - "encoding": "0110000----------101-----0111011", - "variable_fields": ["rd", "rs1"], - "extension": [ - "rv64_b", - "rv64_zbb", - "rv64_zbkb", - "rv64_zk", - "rv64_zkn", - "rv64_zks" - ], - "match": "0x6000503b", - "mask": "0xfe00707f" - }, - "sb": { - "encoding": "-----------------000-----0100011", - "variable_fields": ["imm12hi", "imm12lo", "rs1", "rs2"], - "extension": ["rv_i"], - "match": "0x23", - "mask": "0x707f" - }, - "sb_rl": { - "encoding": "00111-1----------000000000101111", - "variable_fields": ["aq", "rs1", "rs2"], - "extension": ["rv_zalasr"], - "match": "0x3a00002f", - "mask": "0xfa007fff" - }, - "sc_d": { - "encoding": "00011------------011-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv64_a", "rv64_zalrsc"], - "match": "0x1800302f", - "mask": "0xf800707f" - }, - "sc_w": { - "encoding": "00011------------010-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv_a", "rv_zalrsc"], - "match": "0x1800202f", - "mask": "0xf800707f" - }, - "sctrclr": { - "encoding": "00010000010000000000000001110011", - "variable_fields": [], - "extension": ["rv_smdbltrp"], - "match": "0x10400073", - "mask": "0xffffffff" - }, - "sd": { - "encoding": "-----------------011-----0100011", - "variable_fields": ["imm12hi", "imm12lo", "rs1", "rs2"], - "extension": ["rv64_i"], - "match": "0x3023", - "mask": "0x707f" - }, - "sd_rl": { - "encoding": "00111-1----------011000000101111", - "variable_fields": ["aq", "rs1", "rs2"], - "extension": ["rv_zalasr"], - "match": "0x3a00302f", - "mask": "0xfa007fff" - }, - "sext_b": { - "encoding": "011000000100-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_b", "rv_zbb"], - "match": "0x60401013", - "mask": "0xfff0707f" - }, - "sext_h": { - "encoding": "011000000101-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_b", "rv_zbb"], - "match": "0x60501013", - "mask": "0xfff0707f" - }, - "sfence_inval_ir": { - "encoding": "00011000000100000000000001110011", - "variable_fields": [], - "extension": ["rv_svinval"], - "match": "0x18100073", - "mask": "0xffffffff" - }, - "sfence_vma": { - "encoding": "0001001----------000000001110011", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv_s"], - "match": "0x12000073", - "mask": "0xfe007fff" - }, - "sfence_w_inval": { - "encoding": "00011000000000000000000001110011", - "variable_fields": [], - "extension": ["rv_svinval"], - "match": "0x18000073", - "mask": "0xffffffff" - }, - "sh": { - "encoding": "-----------------001-----0100011", - "variable_fields": ["imm12hi", "imm12lo", "rs1", "rs2"], - "extension": ["rv_i"], - "match": "0x1023", - "mask": "0x707f" - }, - "sh1add": { - "encoding": "0010000----------010-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zba"], - "match": "0x20002033", - "mask": "0xfe00707f" - }, - "sh1add_uw": { - "encoding": "0010000----------010-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_b", "rv64_zba"], - "match": "0x2000203b", - "mask": "0xfe00707f" - }, - "sh2add": { - "encoding": "0010000----------100-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zba"], - "match": "0x20004033", - "mask": "0xfe00707f" - }, - "sh2add_uw": { - "encoding": "0010000----------100-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_b", "rv64_zba"], - "match": "0x2000403b", - "mask": "0xfe00707f" - }, - "sh3add": { - "encoding": "0010000----------110-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zba"], - "match": "0x20006033", - "mask": "0xfe00707f" - }, - "sh3add_uw": { - "encoding": "0010000----------110-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_b", "rv64_zba"], - "match": "0x2000603b", - "mask": "0xfe00707f" - }, - "sh_rl": { - "encoding": "00111-1----------001000000101111", - "variable_fields": ["aq", "rs1", "rs2"], - "extension": ["rv_zalasr"], - "match": "0x3a00102f", - "mask": "0xfa007fff" - }, - "sha256sig0": { - "encoding": "000100000010-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_zk", "rv_zkn", "rv_zknh"], - "match": "0x10201013", - "mask": "0xfff0707f" - }, - "sha256sig1": { - "encoding": "000100000011-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_zk", "rv_zkn", "rv_zknh"], - "match": "0x10301013", - "mask": "0xfff0707f" - }, - "sha256sum0": { - "encoding": "000100000000-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_zk", "rv_zkn", "rv_zknh"], - "match": "0x10001013", - "mask": "0xfff0707f" - }, - "sha256sum1": { - "encoding": "000100000001-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_zk", "rv_zkn", "rv_zknh"], - "match": "0x10101013", - "mask": "0xfff0707f" - }, - "sha512sig0": { - "encoding": "000100000110-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_zk", "rv64_zkn", "rv64_zknh"], - "match": "0x10601013", - "mask": "0xfff0707f" - }, - "sha512sig0h": { - "encoding": "0101110----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv32_zk", "rv32_zkn", "rv32_zknh"], - "match": "0x5c000033", - "mask": "0xfe00707f" - }, - "sha512sig0l": { - "encoding": "0101010----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv32_zk", "rv32_zkn", "rv32_zknh"], - "match": "0x54000033", - "mask": "0xfe00707f" - }, - "sha512sig1": { - "encoding": "000100000111-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_zk", "rv64_zkn", "rv64_zknh"], - "match": "0x10701013", - "mask": "0xfff0707f" - }, - "sha512sig1h": { - "encoding": "0101111----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv32_zk", "rv32_zkn", "rv32_zknh"], - "match": "0x5e000033", - "mask": "0xfe00707f" - }, - "sha512sig1l": { - "encoding": "0101011----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv32_zk", "rv32_zkn", "rv32_zknh"], - "match": "0x56000033", - "mask": "0xfe00707f" - }, - "sha512sum0": { - "encoding": "000100000100-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_zk", "rv64_zkn", "rv64_zknh"], - "match": "0x10401013", - "mask": "0xfff0707f" - }, - "sha512sum0r": { - "encoding": "0101000----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv32_zk", "rv32_zkn", "rv32_zknh"], - "match": "0x50000033", - "mask": "0xfe00707f" - }, - "sha512sum1": { - "encoding": "000100000101-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_zk", "rv64_zkn", "rv64_zknh"], - "match": "0x10501013", - "mask": "0xfff0707f" - }, - "sha512sum1r": { - "encoding": "0101001----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv32_zk", "rv32_zkn", "rv32_zknh"], - "match": "0x52000033", - "mask": "0xfe00707f" - }, - "sinval_vma": { - "encoding": "0001011----------000000001110011", - "variable_fields": ["rs1", "rs2"], - "extension": ["rv_svinval"], - "match": "0x16000073", - "mask": "0xfe007fff" - }, - "sll": { - "encoding": "0000000----------001-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_i"], - "match": "0x1033", - "mask": "0xfe00707f" - }, - "slli": { - "encoding": "000000-----------001-----0010011", - "variable_fields": ["rd", "rs1", "shamtd"], - "extension": ["rv64_i"], - "match": "0x1013", - "mask": "0xfc00707f" - }, - "slli_uw": { - "encoding": "000010-----------001-----0011011", - "variable_fields": ["rd", "rs1", "shamtd"], - "extension": ["rv64_b", "rv64_zba"], - "match": "0x800101b", - "mask": "0xfc00707f" - }, - "slliw": { - "encoding": "0000000----------001-----0011011", - "variable_fields": ["rd", "rs1", "shamtw"], - "extension": ["rv64_i"], - "match": "0x101b", - "mask": "0xfe00707f" - }, - "sllw": { - "encoding": "0000000----------001-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_i"], - "match": "0x103b", - "mask": "0xfe00707f" - }, - "slt": { - "encoding": "0000000----------010-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_i"], - "match": "0x2033", - "mask": "0xfe00707f" - }, - "slti": { - "encoding": "-----------------010-----0010011", - "variable_fields": ["imm12", "rd", "rs1"], - "extension": ["rv_i"], - "match": "0x2013", - "mask": "0x707f" - }, - "sltiu": { - "encoding": "-----------------011-----0010011", - "variable_fields": ["imm12", "rd", "rs1"], - "extension": ["rv_i"], - "match": "0x3013", - "mask": "0x707f" - }, - "sltu": { - "encoding": "0000000----------011-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_i"], - "match": "0x3033", - "mask": "0xfe00707f" - }, - "sm3p0": { - "encoding": "000100001000-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_zks", "rv_zksh"], - "match": "0x10801013", - "mask": "0xfff0707f" - }, - "sm3p1": { - "encoding": "000100001001-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv_zks", "rv_zksh"], - "match": "0x10901013", - "mask": "0xfff0707f" - }, - "sm4ed": { - "encoding": "--11000----------000-----0110011", - "variable_fields": ["bs", "rd", "rs1", "rs2"], - "extension": ["rv_zks", "rv_zksed"], - "match": "0x30000033", - "mask": "0x3e00707f" - }, - "sm4ks": { - "encoding": "--11010----------000-----0110011", - "variable_fields": ["bs", "rd", "rs1", "rs2"], - "extension": ["rv_zks", "rv_zksed"], - "match": "0x34000033", - "mask": "0x3e00707f" - }, - "sra": { - "encoding": "0100000----------101-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_i"], - "match": "0x40005033", - "mask": "0xfe00707f" - }, - "srai": { - "encoding": "010000-----------101-----0010011", - "variable_fields": ["rd", "rs1", "shamtd"], - "extension": ["rv64_i"], - "match": "0x40005013", - "mask": "0xfc00707f" - }, - "sraiw": { - "encoding": "0100000----------101-----0011011", - "variable_fields": ["rd", "rs1", "shamtw"], - "extension": ["rv64_i"], - "match": "0x4000501b", - "mask": "0xfe00707f" - }, - "sraw": { - "encoding": "0100000----------101-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_i"], - "match": "0x4000503b", - "mask": "0xfe00707f" - }, - "sret": { - "encoding": "00010000001000000000000001110011", - "variable_fields": [], - "extension": ["rv_s"], - "match": "0x10200073", - "mask": "0xffffffff" - }, - "srl": { - "encoding": "0000000----------101-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_i"], - "match": "0x5033", - "mask": "0xfe00707f" - }, - "srli": { - "encoding": "000000-----------101-----0010011", - "variable_fields": ["rd", "rs1", "shamtd"], - "extension": ["rv64_i"], - "match": "0x5013", - "mask": "0xfc00707f" - }, - "srliw": { - "encoding": "0000000----------101-----0011011", - "variable_fields": ["rd", "rs1", "shamtw"], - "extension": ["rv64_i"], - "match": "0x501b", - "mask": "0xfe00707f" - }, - "srlw": { - "encoding": "0000000----------101-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_i"], - "match": "0x503b", - "mask": "0xfe00707f" - }, - "ssamoswap_d": { - "encoding": "01001------------011-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv_zicfiss"], - "match": "0x4800302f", - "mask": "0xf800707f" - }, - "ssamoswap_w": { - "encoding": "01001------------010-----0101111", - "variable_fields": ["aq", "rd", "rl", "rs1", "rs2"], - "extension": ["rv_zicfiss"], - "match": "0x4800202f", - "mask": "0xf800707f" - }, - "sspopchk_x1": { - "encoding": "11001101110000001100000001110011", - "variable_fields": [], - "extension": ["rv_zicfiss"], - "match": "0xcdc0c073", - "mask": "0xffffffff" - }, - "sspopchk_x5": { - "encoding": "11001101110000101100000001110011", - "variable_fields": [], - "extension": ["rv_zicfiss"], - "match": "0xcdc2c073", - "mask": "0xffffffff" - }, - "sspush_x1": { - "encoding": "11001110000100000100000001110011", - "variable_fields": [], - "extension": ["rv_zicfiss"], - "match": "0xce104073", - "mask": "0xffffffff" - }, - "sspush_x5": { - "encoding": "11001110010100000100000001110011", - "variable_fields": [], - "extension": ["rv_zicfiss"], - "match": "0xce504073", - "mask": "0xffffffff" - }, - "ssrdp": { - "encoding": "11001101110000000100-----1110011", - "variable_fields": ["rd"], - "extension": ["rv_zicfiss"], - "match": "0xcdc04073", - "mask": "0xfffff07f" - }, - "sub": { - "encoding": "0100000----------000-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_i"], - "match": "0x40000033", - "mask": "0xfe00707f" - }, - "subw": { - "encoding": "0100000----------000-----0111011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv64_i"], - "match": "0x4000003b", - "mask": "0xfe00707f" - }, - "sw": { - "encoding": "-----------------010-----0100011", - "variable_fields": ["imm12hi", "imm12lo", "rs1", "rs2"], - "extension": ["rv_i"], - "match": "0x2023", - "mask": "0x707f" - }, - "sw_rl": { - "encoding": "00111-1----------010000000101111", - "variable_fields": ["aq", "rs1", "rs2"], - "extension": ["rv_zalasr"], - "match": "0x3a00202f", - "mask": "0xfa007fff" - }, - "unzip": { - "encoding": "000010001111-----101-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv32_zbkb"], - "match": "0x8f05013", - "mask": "0xfff0707f" - }, - "vaadd_vv": { - "encoding": "001001-----------010-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x24002057", - "mask": "0xfc00707f" - }, - "vaadd_vx": { - "encoding": "001001-----------110-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x24006057", - "mask": "0xfc00707f" - }, - "vaaddu_vv": { - "encoding": "001000-----------010-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x20002057", - "mask": "0xfc00707f" - }, - "vaaddu_vx": { - "encoding": "001000-----------110-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x20006057", - "mask": "0xfc00707f" - }, - "vadc_vim": { - "encoding": "0100000----------011-----1010111", - "variable_fields": ["simm5", "vd", "vs2"], - "extension": ["rv_v"], - "match": "0x40003057", - "mask": "0xfe00707f" - }, - "vadc_vvm": { - "encoding": "0100000----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x40000057", - "mask": "0xfe00707f" - }, - "vadc_vxm": { - "encoding": "0100000----------100-----1010111", - "variable_fields": ["rs1", "vd", "vs2"], - "extension": ["rv_v"], - "match": "0x40004057", - "mask": "0xfe00707f" - }, - "vadd_vi": { - "encoding": "000000-----------011-----1010111", - "variable_fields": ["simm5", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x3057", - "mask": "0xfc00707f" - }, - "vadd_vv": { - "encoding": "000000-----------000-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x57", - "mask": "0xfc00707f" - }, - "vadd_vx": { - "encoding": "000000-----------100-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x4057", - "mask": "0xfc00707f" - }, - "vaesdf_vs": { - "encoding": "1010011-----00001010-----1110111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_zvkn", "rv_zvkned"], - "match": "0xa600a077", - "mask": "0xfe0ff07f" - }, - "vaesdf_vv": { - "encoding": "1010001-----00001010-----1110111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_zvkn", "rv_zvkned"], - "match": "0xa200a077", - "mask": "0xfe0ff07f" - }, - "vaesdm_vs": { - "encoding": "1010011-----00000010-----1110111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_zvkn", "rv_zvkned"], - "match": "0xa6002077", - "mask": "0xfe0ff07f" - }, - "vaesdm_vv": { - "encoding": "1010001-----00000010-----1110111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_zvkn", "rv_zvkned"], - "match": "0xa2002077", - "mask": "0xfe0ff07f" - }, - "vaesef_vs": { - "encoding": "1010011-----00011010-----1110111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_zvkn", "rv_zvkned"], - "match": "0xa601a077", - "mask": "0xfe0ff07f" - }, - "vaesef_vv": { - "encoding": "1010001-----00011010-----1110111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_zvkn", "rv_zvkned"], - "match": "0xa201a077", - "mask": "0xfe0ff07f" - }, - "vaesem_vs": { - "encoding": "1010011-----00010010-----1110111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_zvkn", "rv_zvkned"], - "match": "0xa6012077", - "mask": "0xfe0ff07f" - }, - "vaesem_vv": { - "encoding": "1010001-----00010010-----1110111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_zvkn", "rv_zvkned"], - "match": "0xa2012077", - "mask": "0xfe0ff07f" - }, - "vaeskf1_vi": { - "encoding": "1000101----------010-----1110111", - "variable_fields": ["vd", "vs2", "zimm5"], - "extension": ["rv_zvkn", "rv_zvkned"], - "match": "0x8a002077", - "mask": "0xfe00707f" - }, - "vaeskf2_vi": { - "encoding": "1010101----------010-----1110111", - "variable_fields": ["vd", "vs2", "zimm5"], - "extension": ["rv_zvkn", "rv_zvkned"], - "match": "0xaa002077", - "mask": "0xfe00707f" - }, - "vaesz_vs": { - "encoding": "1010011-----00111010-----1110111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_zvkn", "rv_zvkned"], - "match": "0xa603a077", - "mask": "0xfe0ff07f" - }, - "vand_vi": { - "encoding": "001001-----------011-----1010111", - "variable_fields": ["simm5", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x24003057", - "mask": "0xfc00707f" - }, - "vand_vv": { - "encoding": "001001-----------000-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x24000057", - "mask": "0xfc00707f" - }, - "vand_vx": { - "encoding": "001001-----------100-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x24004057", - "mask": "0xfc00707f" - }, - "vandn_vv": { - "encoding": "000001-----------000-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0x4000057", - "mask": "0xfc00707f" - }, - "vandn_vx": { - "encoding": "000001-----------100-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0x4004057", - "mask": "0xfc00707f" - }, - "vasub_vv": { - "encoding": "001011-----------010-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x2c002057", - "mask": "0xfc00707f" - }, - "vasub_vx": { - "encoding": "001011-----------110-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x2c006057", - "mask": "0xfc00707f" - }, - "vasubu_vv": { - "encoding": "001010-----------010-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x28002057", - "mask": "0xfc00707f" - }, - "vasubu_vx": { - "encoding": "001010-----------110-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x28006057", - "mask": "0xfc00707f" - }, - "vbrev8_v": { - "encoding": "010010------01000010-----1010111", - "variable_fields": ["vd", "vm", "vs2"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0x48042057", - "mask": "0xfc0ff07f" - }, - "vbrev_v": { - "encoding": "010010------01010010-----1010111", - "variable_fields": ["vd", "vm", "vs2"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0x48052057", - "mask": "0xfc0ff07f" - }, - "vclmul_vv": { - "encoding": "001100-----------010-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_zvbc", "rv_zvkn", "rv_zvks"], - "match": "0x30002057", - "mask": "0xfc00707f" - }, - "vclmul_vx": { - "encoding": "001100-----------110-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_zvbc", "rv_zvkn", "rv_zvks"], - "match": "0x30006057", - "mask": "0xfc00707f" - }, - "vclmulh_vv": { - "encoding": "001101-----------010-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_zvbc", "rv_zvkn", "rv_zvks"], - "match": "0x34002057", - "mask": "0xfc00707f" - }, - "vclmulh_vx": { - "encoding": "001101-----------110-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_zvbc", "rv_zvkn", "rv_zvks"], - "match": "0x34006057", - "mask": "0xfc00707f" - }, - "vclz_v": { - "encoding": "010010------01100010-----1010111", - "variable_fields": ["vd", "vm", "vs2"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0x48062057", - "mask": "0xfc0ff07f" - }, - "vcompress_vm": { - "encoding": "0101111----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x5e002057", - "mask": "0xfe00707f" - }, - "vcpop_m": { - "encoding": "010000------10000010-----1010111", - "variable_fields": ["rd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x40082057", - "mask": "0xfc0ff07f" - }, - "vcpop_v": { - "encoding": "010010------01110010-----1010111", - "variable_fields": ["vd", "vm", "vs2"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0x48072057", - "mask": "0xfc0ff07f" - }, - "vctz_v": { - "encoding": "010010------01101010-----1010111", - "variable_fields": ["vd", "vm", "vs2"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0x4806a057", - "mask": "0xfc0ff07f" - }, - "vdiv_vv": { - "encoding": "100001-----------010-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x84002057", - "mask": "0xfc00707f" - }, - "vdiv_vx": { - "encoding": "100001-----------110-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x84006057", - "mask": "0xfc00707f" - }, - "vdivu_vv": { - "encoding": "100000-----------010-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x80002057", - "mask": "0xfc00707f" - }, - "vdivu_vx": { - "encoding": "100000-----------110-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x80006057", - "mask": "0xfc00707f" - }, - "vfadd_vf": { - "encoding": "000000-----------101-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x5057", - "mask": "0xfc00707f" - }, - "vfadd_vv": { - "encoding": "000000-----------001-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x1057", - "mask": "0xfc00707f" - }, - "vfclass_v": { - "encoding": "010011------10000001-----1010111", - "variable_fields": ["vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x4c081057", - "mask": "0xfc0ff07f" - }, - "vfcvt_f_x_v": { - "encoding": "010010------00011001-----1010111", - "variable_fields": ["vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x48019057", - "mask": "0xfc0ff07f" - }, - "vfcvt_f_xu_v": { - "encoding": "010010------00010001-----1010111", - "variable_fields": ["vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x48011057", - "mask": "0xfc0ff07f" - }, - "vfcvt_rtz_x_f_v": { - "encoding": "010010------00111001-----1010111", - "variable_fields": ["vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x48039057", - "mask": "0xfc0ff07f" - }, - "vfcvt_rtz_xu_f_v": { - "encoding": "010010------00110001-----1010111", - "variable_fields": ["vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x48031057", - "mask": "0xfc0ff07f" - }, - "vfcvt_x_f_v": { - "encoding": "010010------00001001-----1010111", - "variable_fields": ["vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x48009057", - "mask": "0xfc0ff07f" - }, - "vfcvt_xu_f_v": { - "encoding": "010010------00000001-----1010111", - "variable_fields": ["vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x48001057", - "mask": "0xfc0ff07f" - }, - "vfdiv_vf": { - "encoding": "100000-----------101-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x80005057", - "mask": "0xfc00707f" - }, - "vfdiv_vv": { - "encoding": "100000-----------001-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x80001057", - "mask": "0xfc00707f" - }, - "vfirst_m": { - "encoding": "010000------10001010-----1010111", - "variable_fields": ["rd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x4008a057", - "mask": "0xfc0ff07f" - }, - "vfmacc_vf": { - "encoding": "101100-----------101-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xb0005057", - "mask": "0xfc00707f" - }, - "vfmacc_vv": { - "encoding": "101100-----------001-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xb0001057", - "mask": "0xfc00707f" - }, - "vfmadd_vf": { - "encoding": "101000-----------101-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xa0005057", - "mask": "0xfc00707f" - }, - "vfmadd_vv": { - "encoding": "101000-----------001-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xa0001057", - "mask": "0xfc00707f" - }, - "vfmax_vf": { - "encoding": "000110-----------101-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x18005057", - "mask": "0xfc00707f" - }, - "vfmax_vv": { - "encoding": "000110-----------001-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x18001057", - "mask": "0xfc00707f" - }, - "vfmerge_vfm": { - "encoding": "0101110----------101-----1010111", - "variable_fields": ["rs1", "vd", "vs2"], - "extension": ["rv_v"], - "match": "0x5c005057", - "mask": "0xfe00707f" - }, - "vfmin_vf": { - "encoding": "000100-----------101-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x10005057", - "mask": "0xfc00707f" - }, - "vfmin_vv": { - "encoding": "000100-----------001-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x10001057", - "mask": "0xfc00707f" - }, - "vfmsac_vf": { - "encoding": "101110-----------101-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xb8005057", - "mask": "0xfc00707f" - }, - "vfmsac_vv": { - "encoding": "101110-----------001-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xb8001057", - "mask": "0xfc00707f" - }, - "vfmsub_vf": { - "encoding": "101010-----------101-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xa8005057", - "mask": "0xfc00707f" - }, - "vfmsub_vv": { - "encoding": "101010-----------001-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xa8001057", - "mask": "0xfc00707f" - }, - "vfmul_vf": { - "encoding": "100100-----------101-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x90005057", - "mask": "0xfc00707f" - }, - "vfmul_vv": { - "encoding": "100100-----------001-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x90001057", - "mask": "0xfc00707f" - }, - "vfmv_f_s": { - "encoding": "0100001-----00000001-----1010111", - "variable_fields": ["rd", "vs2"], - "extension": ["rv_v"], - "match": "0x42001057", - "mask": "0xfe0ff07f" - }, - "vfmv_s_f": { - "encoding": "010000100000-----101-----1010111", - "variable_fields": ["rs1", "vd"], - "extension": ["rv_v"], - "match": "0x42005057", - "mask": "0xfff0707f" - }, - "vfmv_v_f": { - "encoding": "010111100000-----101-----1010111", - "variable_fields": ["rs1", "vd"], - "extension": ["rv_v"], - "match": "0x5e005057", - "mask": "0xfff0707f" - }, - "vfncvt_f_f_w": { - "encoding": "010010------10100001-----1010111", - "variable_fields": ["vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x480a1057", - "mask": "0xfc0ff07f" - }, - "vfncvt_f_x_w": { - "encoding": "010010------10011001-----1010111", - "variable_fields": ["vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x48099057", - "mask": "0xfc0ff07f" - }, - "vfncvt_f_xu_w": { - "encoding": "010010------10010001-----1010111", - "variable_fields": ["vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x48091057", - "mask": "0xfc0ff07f" - }, - "vfncvt_rod_f_f_w": { - "encoding": "010010------10101001-----1010111", - "variable_fields": ["vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x480a9057", - "mask": "0xfc0ff07f" - }, - "vfncvt_rtz_x_f_w": { - "encoding": "010010------10111001-----1010111", - "variable_fields": ["vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x480b9057", - "mask": "0xfc0ff07f" - }, - "vfncvt_rtz_xu_f_w": { - "encoding": "010010------10110001-----1010111", - "variable_fields": ["vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x480b1057", - "mask": "0xfc0ff07f" - }, - "vfncvt_x_f_w": { - "encoding": "010010------10001001-----1010111", - "variable_fields": ["vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x48089057", - "mask": "0xfc0ff07f" - }, - "vfncvt_xu_f_w": { - "encoding": "010010------10000001-----1010111", - "variable_fields": ["vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x48081057", - "mask": "0xfc0ff07f" - }, - "vfncvtbf16_f_f_w": { - "encoding": "010010------11101001-----1010111", - "variable_fields": ["vd", "vm", "vs2"], - "extension": ["rv_zvfbfmin"], - "match": "0x480e9057", - "mask": "0xfc0ff07f" - }, - "vfnmacc_vf": { - "encoding": "101101-----------101-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xb4005057", - "mask": "0xfc00707f" - }, - "vfnmacc_vv": { - "encoding": "101101-----------001-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xb4001057", - "mask": "0xfc00707f" - }, - "vfnmadd_vf": { - "encoding": "101001-----------101-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xa4005057", - "mask": "0xfc00707f" - }, - "vfnmadd_vv": { - "encoding": "101001-----------001-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xa4001057", - "mask": "0xfc00707f" - }, - "vfnmsac_vf": { - "encoding": "101111-----------101-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xbc005057", - "mask": "0xfc00707f" - }, - "vfnmsac_vv": { - "encoding": "101111-----------001-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xbc001057", - "mask": "0xfc00707f" - }, - "vfnmsub_vf": { - "encoding": "101011-----------101-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xac005057", - "mask": "0xfc00707f" - }, - "vfnmsub_vv": { - "encoding": "101011-----------001-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xac001057", - "mask": "0xfc00707f" - }, - "vfrdiv_vf": { - "encoding": "100001-----------101-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x84005057", - "mask": "0xfc00707f" - }, - "vfrec7_v": { - "encoding": "010011------00101001-----1010111", - "variable_fields": ["vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x4c029057", - "mask": "0xfc0ff07f" - }, - "vfredmax_vs": { - "encoding": "000111-----------001-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x1c001057", - "mask": "0xfc00707f" - }, - "vfredmin_vs": { - "encoding": "000101-----------001-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x14001057", - "mask": "0xfc00707f" - }, - "vfredosum_vs": { - "encoding": "000011-----------001-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xc001057", - "mask": "0xfc00707f" - }, - "vfredusum_vs": { - "encoding": "000001-----------001-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x4001057", - "mask": "0xfc00707f" - }, - "vfrsqrt7_v": { - "encoding": "010011------00100001-----1010111", - "variable_fields": ["vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x4c021057", - "mask": "0xfc0ff07f" - }, - "vfrsub_vf": { - "encoding": "100111-----------101-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x9c005057", - "mask": "0xfc00707f" - }, - "vfsgnj_vf": { - "encoding": "001000-----------101-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x20005057", - "mask": "0xfc00707f" - }, - "vfsgnj_vv": { - "encoding": "001000-----------001-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x20001057", - "mask": "0xfc00707f" - }, - "vfsgnjn_vf": { - "encoding": "001001-----------101-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x24005057", - "mask": "0xfc00707f" - }, - "vfsgnjn_vv": { - "encoding": "001001-----------001-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x24001057", - "mask": "0xfc00707f" - }, - "vfsgnjx_vf": { - "encoding": "001010-----------101-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x28005057", - "mask": "0xfc00707f" - }, - "vfsgnjx_vv": { - "encoding": "001010-----------001-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x28001057", - "mask": "0xfc00707f" - }, - "vfslide1down_vf": { - "encoding": "001111-----------101-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x3c005057", - "mask": "0xfc00707f" - }, - "vfslide1up_vf": { - "encoding": "001110-----------101-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x38005057", - "mask": "0xfc00707f" - }, - "vfsqrt_v": { - "encoding": "010011------00000001-----1010111", - "variable_fields": ["vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x4c001057", - "mask": "0xfc0ff07f" - }, - "vfsub_vf": { - "encoding": "000010-----------101-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x8005057", - "mask": "0xfc00707f" - }, - "vfsub_vv": { - "encoding": "000010-----------001-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x8001057", - "mask": "0xfc00707f" - }, - "vfwadd_vf": { - "encoding": "110000-----------101-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xc0005057", - "mask": "0xfc00707f" - }, - "vfwadd_vv": { - "encoding": "110000-----------001-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xc0001057", - "mask": "0xfc00707f" - }, - "vfwadd_wf": { - "encoding": "110100-----------101-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xd0005057", - "mask": "0xfc00707f" - }, - "vfwadd_wv": { - "encoding": "110100-----------001-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xd0001057", - "mask": "0xfc00707f" - }, - "vfwcvt_f_f_v": { - "encoding": "010010------01100001-----1010111", - "variable_fields": ["vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x48061057", - "mask": "0xfc0ff07f" - }, - "vfwcvt_f_x_v": { - "encoding": "010010------01011001-----1010111", - "variable_fields": ["vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x48059057", - "mask": "0xfc0ff07f" - }, - "vfwcvt_f_xu_v": { - "encoding": "010010------01010001-----1010111", - "variable_fields": ["vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x48051057", - "mask": "0xfc0ff07f" - }, - "vfwcvt_rtz_x_f_v": { - "encoding": "010010------01111001-----1010111", - "variable_fields": ["vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x48079057", - "mask": "0xfc0ff07f" - }, - "vfwcvt_rtz_xu_f_v": { - "encoding": "010010------01110001-----1010111", - "variable_fields": ["vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x48071057", - "mask": "0xfc0ff07f" - }, - "vfwcvt_x_f_v": { - "encoding": "010010------01001001-----1010111", - "variable_fields": ["vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x48049057", - "mask": "0xfc0ff07f" - }, - "vfwcvt_xu_f_v": { - "encoding": "010010------01000001-----1010111", - "variable_fields": ["vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x48041057", - "mask": "0xfc0ff07f" - }, - "vfwcvtbf16_f_f_v": { - "encoding": "010010------01101001-----1010111", - "variable_fields": ["vd", "vm", "vs2"], - "extension": ["rv_zvfbfmin"], - "match": "0x48069057", - "mask": "0xfc0ff07f" - }, - "vfwmacc_vf": { - "encoding": "111100-----------101-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xf0005057", - "mask": "0xfc00707f" - }, - "vfwmacc_vv": { - "encoding": "111100-----------001-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xf0001057", - "mask": "0xfc00707f" - }, - "vfwmaccbf16_vf": { - "encoding": "111011-----------101-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_zvfbfwma"], - "match": "0xec005057", - "mask": "0xfc00707f" - }, - "vfwmaccbf16_vv": { - "encoding": "111011-----------001-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_zvfbfwma"], - "match": "0xec001057", - "mask": "0xfc00707f" - }, - "vfwmsac_vf": { - "encoding": "111110-----------101-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xf8005057", - "mask": "0xfc00707f" - }, - "vfwmsac_vv": { - "encoding": "111110-----------001-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xf8001057", - "mask": "0xfc00707f" - }, - "vfwmul_vf": { - "encoding": "111000-----------101-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xe0005057", - "mask": "0xfc00707f" - }, - "vfwmul_vv": { - "encoding": "111000-----------001-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xe0001057", - "mask": "0xfc00707f" - }, - "vfwnmacc_vf": { - "encoding": "111101-----------101-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xf4005057", - "mask": "0xfc00707f" - }, - "vfwnmacc_vv": { - "encoding": "111101-----------001-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xf4001057", - "mask": "0xfc00707f" - }, - "vfwnmsac_vf": { - "encoding": "111111-----------101-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xfc005057", - "mask": "0xfc00707f" - }, - "vfwnmsac_vv": { - "encoding": "111111-----------001-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xfc001057", - "mask": "0xfc00707f" - }, - "vfwredosum_vs": { - "encoding": "110011-----------001-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xcc001057", - "mask": "0xfc00707f" - }, - "vfwredusum_vs": { - "encoding": "110001-----------001-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xc4001057", - "mask": "0xfc00707f" - }, - "vfwsub_vf": { - "encoding": "110010-----------101-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xc8005057", - "mask": "0xfc00707f" - }, - "vfwsub_vv": { - "encoding": "110010-----------001-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xc8001057", - "mask": "0xfc00707f" - }, - "vfwsub_wf": { - "encoding": "110110-----------101-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xd8005057", - "mask": "0xfc00707f" - }, - "vfwsub_wv": { - "encoding": "110110-----------001-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xd8001057", - "mask": "0xfc00707f" - }, - "vghsh_vv": { - "encoding": "1011001----------010-----1110111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_zvkg"], - "match": "0xb2002077", - "mask": "0xfe00707f" - }, - "vgmul_vv": { - "encoding": "1010001-----10001010-----1110111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_zvkg"], - "match": "0xa208a077", - "mask": "0xfe0ff07f" - }, - "vid_v": { - "encoding": "010100-0000010001010-----1010111", - "variable_fields": ["vd", "vm"], - "extension": ["rv_v"], - "match": "0x5008a057", - "mask": "0xfdfff07f" - }, - "viota_m": { - "encoding": "010100------10000010-----1010111", - "variable_fields": ["vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x50082057", - "mask": "0xfc0ff07f" - }, - "vl1re16_v": { - "encoding": "000000101000-----101-----0000111", - "variable_fields": ["rs1", "vd"], - "extension": ["rv_v"], - "match": "0x2805007", - "mask": "0xfff0707f" - }, - "vl1re32_v": { - "encoding": "000000101000-----110-----0000111", - "variable_fields": ["rs1", "vd"], - "extension": ["rv_v"], - "match": "0x2806007", - "mask": "0xfff0707f" - }, - "vl1re64_v": { - "encoding": "000000101000-----111-----0000111", - "variable_fields": ["rs1", "vd"], - "extension": ["rv_v"], - "match": "0x2807007", - "mask": "0xfff0707f" - }, - "vl1re8_v": { - "encoding": "000000101000-----000-----0000111", - "variable_fields": ["rs1", "vd"], - "extension": ["rv_v"], - "match": "0x2800007", - "mask": "0xfff0707f" - }, - "vl2re16_v": { - "encoding": "001000101000-----101-----0000111", - "variable_fields": ["rs1", "vd"], - "extension": ["rv_v"], - "match": "0x22805007", - "mask": "0xfff0707f" - }, - "vl2re32_v": { - "encoding": "001000101000-----110-----0000111", - "variable_fields": ["rs1", "vd"], - "extension": ["rv_v"], - "match": "0x22806007", - "mask": "0xfff0707f" - }, - "vl2re64_v": { - "encoding": "001000101000-----111-----0000111", - "variable_fields": ["rs1", "vd"], - "extension": ["rv_v"], - "match": "0x22807007", - "mask": "0xfff0707f" - }, - "vl2re8_v": { - "encoding": "001000101000-----000-----0000111", - "variable_fields": ["rs1", "vd"], - "extension": ["rv_v"], - "match": "0x22800007", - "mask": "0xfff0707f" - }, - "vl4re16_v": { - "encoding": "011000101000-----101-----0000111", - "variable_fields": ["rs1", "vd"], - "extension": ["rv_v"], - "match": "0x62805007", - "mask": "0xfff0707f" - }, - "vl4re32_v": { - "encoding": "011000101000-----110-----0000111", - "variable_fields": ["rs1", "vd"], - "extension": ["rv_v"], - "match": "0x62806007", - "mask": "0xfff0707f" - }, - "vl4re64_v": { - "encoding": "011000101000-----111-----0000111", - "variable_fields": ["rs1", "vd"], - "extension": ["rv_v"], - "match": "0x62807007", - "mask": "0xfff0707f" - }, - "vl4re8_v": { - "encoding": "011000101000-----000-----0000111", - "variable_fields": ["rs1", "vd"], - "extension": ["rv_v"], - "match": "0x62800007", - "mask": "0xfff0707f" - }, - "vl8re16_v": { - "encoding": "111000101000-----101-----0000111", - "variable_fields": ["rs1", "vd"], - "extension": ["rv_v"], - "match": "0xe2805007", - "mask": "0xfff0707f" - }, - "vl8re32_v": { - "encoding": "111000101000-----110-----0000111", - "variable_fields": ["rs1", "vd"], - "extension": ["rv_v"], - "match": "0xe2806007", - "mask": "0xfff0707f" - }, - "vl8re64_v": { - "encoding": "111000101000-----111-----0000111", - "variable_fields": ["rs1", "vd"], - "extension": ["rv_v"], - "match": "0xe2807007", - "mask": "0xfff0707f" - }, - "vl8re8_v": { - "encoding": "111000101000-----000-----0000111", - "variable_fields": ["rs1", "vd"], - "extension": ["rv_v"], - "match": "0xe2800007", - "mask": "0xfff0707f" - }, - "vle16_v": { - "encoding": "000000-00000-----101-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x5007", - "mask": "0xfdf0707f" - }, - "vle16ff_v": { - "encoding": "000000-10000-----101-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x1005007", - "mask": "0xfdf0707f" - }, - "vle32_v": { - "encoding": "000000-00000-----110-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x6007", - "mask": "0xfdf0707f" - }, - "vle32ff_v": { - "encoding": "000000-10000-----110-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x1006007", - "mask": "0xfdf0707f" - }, - "vle64_v": { - "encoding": "000000-00000-----111-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x7007", - "mask": "0xfdf0707f" - }, - "vle64ff_v": { - "encoding": "000000-10000-----111-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x1007007", - "mask": "0xfdf0707f" - }, - "vle8_v": { - "encoding": "000000-00000-----000-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x7", - "mask": "0xfdf0707f" - }, - "vle8ff_v": { - "encoding": "000000-10000-----000-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x1000007", - "mask": "0xfdf0707f" - }, - "vlm_v": { - "encoding": "000000101011-----000-----0000111", - "variable_fields": ["rs1", "vd"], - "extension": ["rv_v"], - "match": "0x2b00007", - "mask": "0xfff0707f" - }, - "vloxei16_v": { - "encoding": "000011-----------101-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xc005007", - "mask": "0xfc00707f" - }, - "vloxei32_v": { - "encoding": "000011-----------110-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xc006007", - "mask": "0xfc00707f" - }, - "vloxei64_v": { - "encoding": "000011-----------111-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xc007007", - "mask": "0xfc00707f" - }, - "vloxei8_v": { - "encoding": "000011-----------000-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xc000007", - "mask": "0xfc00707f" - }, - "vloxseg2ei16_v": { - "encoding": "001011-----------101-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x2c005007", - "mask": "0xfc00707f" - }, - "vloxseg2ei32_v": { - "encoding": "001011-----------110-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x2c006007", - "mask": "0xfc00707f" - }, - "vloxseg2ei64_v": { - "encoding": "001011-----------111-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x2c007007", - "mask": "0xfc00707f" - }, - "vloxseg2ei8_v": { - "encoding": "001011-----------000-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x2c000007", - "mask": "0xfc00707f" - }, - "vloxseg3ei16_v": { - "encoding": "010011-----------101-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x4c005007", - "mask": "0xfc00707f" - }, - "vloxseg3ei32_v": { - "encoding": "010011-----------110-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x4c006007", - "mask": "0xfc00707f" - }, - "vloxseg3ei64_v": { - "encoding": "010011-----------111-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x4c007007", - "mask": "0xfc00707f" - }, - "vloxseg3ei8_v": { - "encoding": "010011-----------000-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x4c000007", - "mask": "0xfc00707f" - }, - "vloxseg4ei16_v": { - "encoding": "011011-----------101-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x6c005007", - "mask": "0xfc00707f" - }, - "vloxseg4ei32_v": { - "encoding": "011011-----------110-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x6c006007", - "mask": "0xfc00707f" - }, - "vloxseg4ei64_v": { - "encoding": "011011-----------111-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x6c007007", - "mask": "0xfc00707f" - }, - "vloxseg4ei8_v": { - "encoding": "011011-----------000-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x6c000007", - "mask": "0xfc00707f" - }, - "vloxseg5ei16_v": { - "encoding": "100011-----------101-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x8c005007", - "mask": "0xfc00707f" - }, - "vloxseg5ei32_v": { - "encoding": "100011-----------110-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x8c006007", - "mask": "0xfc00707f" - }, - "vloxseg5ei64_v": { - "encoding": "100011-----------111-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x8c007007", - "mask": "0xfc00707f" - }, - "vloxseg5ei8_v": { - "encoding": "100011-----------000-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x8c000007", - "mask": "0xfc00707f" - }, - "vloxseg6ei16_v": { - "encoding": "101011-----------101-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xac005007", - "mask": "0xfc00707f" - }, - "vloxseg6ei32_v": { - "encoding": "101011-----------110-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xac006007", - "mask": "0xfc00707f" - }, - "vloxseg6ei64_v": { - "encoding": "101011-----------111-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xac007007", - "mask": "0xfc00707f" - }, - "vloxseg6ei8_v": { - "encoding": "101011-----------000-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xac000007", - "mask": "0xfc00707f" - }, - "vloxseg7ei16_v": { - "encoding": "110011-----------101-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xcc005007", - "mask": "0xfc00707f" - }, - "vloxseg7ei32_v": { - "encoding": "110011-----------110-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xcc006007", - "mask": "0xfc00707f" - }, - "vloxseg7ei64_v": { - "encoding": "110011-----------111-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xcc007007", - "mask": "0xfc00707f" - }, - "vloxseg7ei8_v": { - "encoding": "110011-----------000-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xcc000007", - "mask": "0xfc00707f" - }, - "vloxseg8ei16_v": { - "encoding": "111011-----------101-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xec005007", - "mask": "0xfc00707f" - }, - "vloxseg8ei32_v": { - "encoding": "111011-----------110-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xec006007", - "mask": "0xfc00707f" - }, - "vloxseg8ei64_v": { - "encoding": "111011-----------111-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xec007007", - "mask": "0xfc00707f" - }, - "vloxseg8ei8_v": { - "encoding": "111011-----------000-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xec000007", - "mask": "0xfc00707f" - }, - "vlse16_v": { - "encoding": "000010-----------101-----0000111", - "variable_fields": ["rs1", "rs2", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x8005007", - "mask": "0xfc00707f" - }, - "vlse32_v": { - "encoding": "000010-----------110-----0000111", - "variable_fields": ["rs1", "rs2", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x8006007", - "mask": "0xfc00707f" - }, - "vlse64_v": { - "encoding": "000010-----------111-----0000111", - "variable_fields": ["rs1", "rs2", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x8007007", - "mask": "0xfc00707f" - }, - "vlse8_v": { - "encoding": "000010-----------000-----0000111", - "variable_fields": ["rs1", "rs2", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x8000007", - "mask": "0xfc00707f" - }, - "vlseg2e16_v": { - "encoding": "001000-00000-----101-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x20005007", - "mask": "0xfdf0707f" - }, - "vlseg2e16ff_v": { - "encoding": "001000-10000-----101-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x21005007", - "mask": "0xfdf0707f" - }, - "vlseg2e32_v": { - "encoding": "001000-00000-----110-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x20006007", - "mask": "0xfdf0707f" - }, - "vlseg2e32ff_v": { - "encoding": "001000-10000-----110-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x21006007", - "mask": "0xfdf0707f" - }, - "vlseg2e64_v": { - "encoding": "001000-00000-----111-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x20007007", - "mask": "0xfdf0707f" - }, - "vlseg2e64ff_v": { - "encoding": "001000-10000-----111-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x21007007", - "mask": "0xfdf0707f" - }, - "vlseg2e8_v": { - "encoding": "001000-00000-----000-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x20000007", - "mask": "0xfdf0707f" - }, - "vlseg2e8ff_v": { - "encoding": "001000-10000-----000-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x21000007", - "mask": "0xfdf0707f" - }, - "vlseg3e16_v": { - "encoding": "010000-00000-----101-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x40005007", - "mask": "0xfdf0707f" - }, - "vlseg3e16ff_v": { - "encoding": "010000-10000-----101-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x41005007", - "mask": "0xfdf0707f" - }, - "vlseg3e32_v": { - "encoding": "010000-00000-----110-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x40006007", - "mask": "0xfdf0707f" - }, - "vlseg3e32ff_v": { - "encoding": "010000-10000-----110-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x41006007", - "mask": "0xfdf0707f" - }, - "vlseg3e64_v": { - "encoding": "010000-00000-----111-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x40007007", - "mask": "0xfdf0707f" - }, - "vlseg3e64ff_v": { - "encoding": "010000-10000-----111-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x41007007", - "mask": "0xfdf0707f" - }, - "vlseg3e8_v": { - "encoding": "010000-00000-----000-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x40000007", - "mask": "0xfdf0707f" - }, - "vlseg3e8ff_v": { - "encoding": "010000-10000-----000-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x41000007", - "mask": "0xfdf0707f" - }, - "vlseg4e16_v": { - "encoding": "011000-00000-----101-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x60005007", - "mask": "0xfdf0707f" - }, - "vlseg4e16ff_v": { - "encoding": "011000-10000-----101-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x61005007", - "mask": "0xfdf0707f" - }, - "vlseg4e32_v": { - "encoding": "011000-00000-----110-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x60006007", - "mask": "0xfdf0707f" - }, - "vlseg4e32ff_v": { - "encoding": "011000-10000-----110-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x61006007", - "mask": "0xfdf0707f" - }, - "vlseg4e64_v": { - "encoding": "011000-00000-----111-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x60007007", - "mask": "0xfdf0707f" - }, - "vlseg4e64ff_v": { - "encoding": "011000-10000-----111-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x61007007", - "mask": "0xfdf0707f" - }, - "vlseg4e8_v": { - "encoding": "011000-00000-----000-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x60000007", - "mask": "0xfdf0707f" - }, - "vlseg4e8ff_v": { - "encoding": "011000-10000-----000-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x61000007", - "mask": "0xfdf0707f" - }, - "vlseg5e16_v": { - "encoding": "100000-00000-----101-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x80005007", - "mask": "0xfdf0707f" - }, - "vlseg5e16ff_v": { - "encoding": "100000-10000-----101-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x81005007", - "mask": "0xfdf0707f" - }, - "vlseg5e32_v": { - "encoding": "100000-00000-----110-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x80006007", - "mask": "0xfdf0707f" - }, - "vlseg5e32ff_v": { - "encoding": "100000-10000-----110-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x81006007", - "mask": "0xfdf0707f" - }, - "vlseg5e64_v": { - "encoding": "100000-00000-----111-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x80007007", - "mask": "0xfdf0707f" - }, - "vlseg5e64ff_v": { - "encoding": "100000-10000-----111-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x81007007", - "mask": "0xfdf0707f" - }, - "vlseg5e8_v": { - "encoding": "100000-00000-----000-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x80000007", - "mask": "0xfdf0707f" - }, - "vlseg5e8ff_v": { - "encoding": "100000-10000-----000-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x81000007", - "mask": "0xfdf0707f" - }, - "vlseg6e16_v": { - "encoding": "101000-00000-----101-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0xa0005007", - "mask": "0xfdf0707f" - }, - "vlseg6e16ff_v": { - "encoding": "101000-10000-----101-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0xa1005007", - "mask": "0xfdf0707f" - }, - "vlseg6e32_v": { - "encoding": "101000-00000-----110-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0xa0006007", - "mask": "0xfdf0707f" - }, - "vlseg6e32ff_v": { - "encoding": "101000-10000-----110-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0xa1006007", - "mask": "0xfdf0707f" - }, - "vlseg6e64_v": { - "encoding": "101000-00000-----111-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0xa0007007", - "mask": "0xfdf0707f" - }, - "vlseg6e64ff_v": { - "encoding": "101000-10000-----111-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0xa1007007", - "mask": "0xfdf0707f" - }, - "vlseg6e8_v": { - "encoding": "101000-00000-----000-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0xa0000007", - "mask": "0xfdf0707f" - }, - "vlseg6e8ff_v": { - "encoding": "101000-10000-----000-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0xa1000007", - "mask": "0xfdf0707f" - }, - "vlseg7e16_v": { - "encoding": "110000-00000-----101-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0xc0005007", - "mask": "0xfdf0707f" - }, - "vlseg7e16ff_v": { - "encoding": "110000-10000-----101-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0xc1005007", - "mask": "0xfdf0707f" - }, - "vlseg7e32_v": { - "encoding": "110000-00000-----110-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0xc0006007", - "mask": "0xfdf0707f" - }, - "vlseg7e32ff_v": { - "encoding": "110000-10000-----110-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0xc1006007", - "mask": "0xfdf0707f" - }, - "vlseg7e64_v": { - "encoding": "110000-00000-----111-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0xc0007007", - "mask": "0xfdf0707f" - }, - "vlseg7e64ff_v": { - "encoding": "110000-10000-----111-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0xc1007007", - "mask": "0xfdf0707f" - }, - "vlseg7e8_v": { - "encoding": "110000-00000-----000-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0xc0000007", - "mask": "0xfdf0707f" - }, - "vlseg7e8ff_v": { - "encoding": "110000-10000-----000-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0xc1000007", - "mask": "0xfdf0707f" - }, - "vlseg8e16_v": { - "encoding": "111000-00000-----101-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0xe0005007", - "mask": "0xfdf0707f" - }, - "vlseg8e16ff_v": { - "encoding": "111000-10000-----101-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0xe1005007", - "mask": "0xfdf0707f" - }, - "vlseg8e32_v": { - "encoding": "111000-00000-----110-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0xe0006007", - "mask": "0xfdf0707f" - }, - "vlseg8e32ff_v": { - "encoding": "111000-10000-----110-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0xe1006007", - "mask": "0xfdf0707f" - }, - "vlseg8e64_v": { - "encoding": "111000-00000-----111-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0xe0007007", - "mask": "0xfdf0707f" - }, - "vlseg8e64ff_v": { - "encoding": "111000-10000-----111-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0xe1007007", - "mask": "0xfdf0707f" - }, - "vlseg8e8_v": { - "encoding": "111000-00000-----000-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0xe0000007", - "mask": "0xfdf0707f" - }, - "vlseg8e8ff_v": { - "encoding": "111000-10000-----000-----0000111", - "variable_fields": ["rs1", "vd", "vm"], - "extension": ["rv_v"], - "match": "0xe1000007", - "mask": "0xfdf0707f" - }, - "vlsseg2e16_v": { - "encoding": "001010-----------101-----0000111", - "variable_fields": ["rs1", "rs2", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x28005007", - "mask": "0xfc00707f" - }, - "vlsseg2e32_v": { - "encoding": "001010-----------110-----0000111", - "variable_fields": ["rs1", "rs2", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x28006007", - "mask": "0xfc00707f" - }, - "vlsseg2e64_v": { - "encoding": "001010-----------111-----0000111", - "variable_fields": ["rs1", "rs2", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x28007007", - "mask": "0xfc00707f" - }, - "vlsseg2e8_v": { - "encoding": "001010-----------000-----0000111", - "variable_fields": ["rs1", "rs2", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x28000007", - "mask": "0xfc00707f" - }, - "vlsseg3e16_v": { - "encoding": "010010-----------101-----0000111", - "variable_fields": ["rs1", "rs2", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x48005007", - "mask": "0xfc00707f" - }, - "vlsseg3e32_v": { - "encoding": "010010-----------110-----0000111", - "variable_fields": ["rs1", "rs2", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x48006007", - "mask": "0xfc00707f" - }, - "vlsseg3e64_v": { - "encoding": "010010-----------111-----0000111", - "variable_fields": ["rs1", "rs2", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x48007007", - "mask": "0xfc00707f" - }, - "vlsseg3e8_v": { - "encoding": "010010-----------000-----0000111", - "variable_fields": ["rs1", "rs2", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x48000007", - "mask": "0xfc00707f" - }, - "vlsseg4e16_v": { - "encoding": "011010-----------101-----0000111", - "variable_fields": ["rs1", "rs2", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x68005007", - "mask": "0xfc00707f" - }, - "vlsseg4e32_v": { - "encoding": "011010-----------110-----0000111", - "variable_fields": ["rs1", "rs2", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x68006007", - "mask": "0xfc00707f" - }, - "vlsseg4e64_v": { - "encoding": "011010-----------111-----0000111", - "variable_fields": ["rs1", "rs2", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x68007007", - "mask": "0xfc00707f" - }, - "vlsseg4e8_v": { - "encoding": "011010-----------000-----0000111", - "variable_fields": ["rs1", "rs2", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x68000007", - "mask": "0xfc00707f" - }, - "vlsseg5e16_v": { - "encoding": "100010-----------101-----0000111", - "variable_fields": ["rs1", "rs2", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x88005007", - "mask": "0xfc00707f" - }, - "vlsseg5e32_v": { - "encoding": "100010-----------110-----0000111", - "variable_fields": ["rs1", "rs2", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x88006007", - "mask": "0xfc00707f" - }, - "vlsseg5e64_v": { - "encoding": "100010-----------111-----0000111", - "variable_fields": ["rs1", "rs2", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x88007007", - "mask": "0xfc00707f" - }, - "vlsseg5e8_v": { - "encoding": "100010-----------000-----0000111", - "variable_fields": ["rs1", "rs2", "vd", "vm"], - "extension": ["rv_v"], - "match": "0x88000007", - "mask": "0xfc00707f" - }, - "vlsseg6e16_v": { - "encoding": "101010-----------101-----0000111", - "variable_fields": ["rs1", "rs2", "vd", "vm"], - "extension": ["rv_v"], - "match": "0xa8005007", - "mask": "0xfc00707f" - }, - "vlsseg6e32_v": { - "encoding": "101010-----------110-----0000111", - "variable_fields": ["rs1", "rs2", "vd", "vm"], - "extension": ["rv_v"], - "match": "0xa8006007", - "mask": "0xfc00707f" - }, - "vlsseg6e64_v": { - "encoding": "101010-----------111-----0000111", - "variable_fields": ["rs1", "rs2", "vd", "vm"], - "extension": ["rv_v"], - "match": "0xa8007007", - "mask": "0xfc00707f" - }, - "vlsseg6e8_v": { - "encoding": "101010-----------000-----0000111", - "variable_fields": ["rs1", "rs2", "vd", "vm"], - "extension": ["rv_v"], - "match": "0xa8000007", - "mask": "0xfc00707f" - }, - "vlsseg7e16_v": { - "encoding": "110010-----------101-----0000111", - "variable_fields": ["rs1", "rs2", "vd", "vm"], - "extension": ["rv_v"], - "match": "0xc8005007", - "mask": "0xfc00707f" - }, - "vlsseg7e32_v": { - "encoding": "110010-----------110-----0000111", - "variable_fields": ["rs1", "rs2", "vd", "vm"], - "extension": ["rv_v"], - "match": "0xc8006007", - "mask": "0xfc00707f" - }, - "vlsseg7e64_v": { - "encoding": "110010-----------111-----0000111", - "variable_fields": ["rs1", "rs2", "vd", "vm"], - "extension": ["rv_v"], - "match": "0xc8007007", - "mask": "0xfc00707f" - }, - "vlsseg7e8_v": { - "encoding": "110010-----------000-----0000111", - "variable_fields": ["rs1", "rs2", "vd", "vm"], - "extension": ["rv_v"], - "match": "0xc8000007", - "mask": "0xfc00707f" - }, - "vlsseg8e16_v": { - "encoding": "111010-----------101-----0000111", - "variable_fields": ["rs1", "rs2", "vd", "vm"], - "extension": ["rv_v"], - "match": "0xe8005007", - "mask": "0xfc00707f" - }, - "vlsseg8e32_v": { - "encoding": "111010-----------110-----0000111", - "variable_fields": ["rs1", "rs2", "vd", "vm"], - "extension": ["rv_v"], - "match": "0xe8006007", - "mask": "0xfc00707f" - }, - "vlsseg8e64_v": { - "encoding": "111010-----------111-----0000111", - "variable_fields": ["rs1", "rs2", "vd", "vm"], - "extension": ["rv_v"], - "match": "0xe8007007", - "mask": "0xfc00707f" - }, - "vlsseg8e8_v": { - "encoding": "111010-----------000-----0000111", - "variable_fields": ["rs1", "rs2", "vd", "vm"], - "extension": ["rv_v"], - "match": "0xe8000007", - "mask": "0xfc00707f" - }, - "vluxei16_v": { - "encoding": "000001-----------101-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x4005007", - "mask": "0xfc00707f" - }, - "vluxei32_v": { - "encoding": "000001-----------110-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x4006007", - "mask": "0xfc00707f" - }, - "vluxei64_v": { - "encoding": "000001-----------111-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x4007007", - "mask": "0xfc00707f" - }, - "vluxei8_v": { - "encoding": "000001-----------000-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x4000007", - "mask": "0xfc00707f" - }, - "vluxseg2ei16_v": { - "encoding": "001001-----------101-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x24005007", - "mask": "0xfc00707f" - }, - "vluxseg2ei32_v": { - "encoding": "001001-----------110-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x24006007", - "mask": "0xfc00707f" - }, - "vluxseg2ei64_v": { - "encoding": "001001-----------111-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x24007007", - "mask": "0xfc00707f" - }, - "vluxseg2ei8_v": { - "encoding": "001001-----------000-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x24000007", - "mask": "0xfc00707f" - }, - "vluxseg3ei16_v": { - "encoding": "010001-----------101-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x44005007", - "mask": "0xfc00707f" - }, - "vluxseg3ei32_v": { - "encoding": "010001-----------110-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x44006007", - "mask": "0xfc00707f" - }, - "vluxseg3ei64_v": { - "encoding": "010001-----------111-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x44007007", - "mask": "0xfc00707f" - }, - "vluxseg3ei8_v": { - "encoding": "010001-----------000-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x44000007", - "mask": "0xfc00707f" - }, - "vluxseg4ei16_v": { - "encoding": "011001-----------101-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x64005007", - "mask": "0xfc00707f" - }, - "vluxseg4ei32_v": { - "encoding": "011001-----------110-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x64006007", - "mask": "0xfc00707f" - }, - "vluxseg4ei64_v": { - "encoding": "011001-----------111-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x64007007", - "mask": "0xfc00707f" - }, - "vluxseg4ei8_v": { - "encoding": "011001-----------000-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x64000007", - "mask": "0xfc00707f" - }, - "vluxseg5ei16_v": { - "encoding": "100001-----------101-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x84005007", - "mask": "0xfc00707f" - }, - "vluxseg5ei32_v": { - "encoding": "100001-----------110-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x84006007", - "mask": "0xfc00707f" - }, - "vluxseg5ei64_v": { - "encoding": "100001-----------111-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x84007007", - "mask": "0xfc00707f" - }, - "vluxseg5ei8_v": { - "encoding": "100001-----------000-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x84000007", - "mask": "0xfc00707f" - }, - "vluxseg6ei16_v": { - "encoding": "101001-----------101-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xa4005007", - "mask": "0xfc00707f" - }, - "vluxseg6ei32_v": { - "encoding": "101001-----------110-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xa4006007", - "mask": "0xfc00707f" - }, - "vluxseg6ei64_v": { - "encoding": "101001-----------111-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xa4007007", - "mask": "0xfc00707f" - }, - "vluxseg6ei8_v": { - "encoding": "101001-----------000-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xa4000007", - "mask": "0xfc00707f" - }, - "vluxseg7ei16_v": { - "encoding": "110001-----------101-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xc4005007", - "mask": "0xfc00707f" - }, - "vluxseg7ei32_v": { - "encoding": "110001-----------110-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xc4006007", - "mask": "0xfc00707f" - }, - "vluxseg7ei64_v": { - "encoding": "110001-----------111-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xc4007007", - "mask": "0xfc00707f" - }, - "vluxseg7ei8_v": { - "encoding": "110001-----------000-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xc4000007", - "mask": "0xfc00707f" - }, - "vluxseg8ei16_v": { - "encoding": "111001-----------101-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xe4005007", - "mask": "0xfc00707f" - }, - "vluxseg8ei32_v": { - "encoding": "111001-----------110-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xe4006007", - "mask": "0xfc00707f" - }, - "vluxseg8ei64_v": { - "encoding": "111001-----------111-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xe4007007", - "mask": "0xfc00707f" - }, - "vluxseg8ei8_v": { - "encoding": "111001-----------000-----0000111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xe4000007", - "mask": "0xfc00707f" - }, - "vmacc_vv": { - "encoding": "101101-----------010-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xb4002057", - "mask": "0xfc00707f" - }, - "vmacc_vx": { - "encoding": "101101-----------110-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xb4006057", - "mask": "0xfc00707f" - }, - "vmadc_vi": { - "encoding": "0100011----------011-----1010111", - "variable_fields": ["simm5", "vd", "vs2"], - "extension": ["rv_v"], - "match": "0x46003057", - "mask": "0xfe00707f" - }, - "vmadc_vim": { - "encoding": "0100010----------011-----1010111", - "variable_fields": ["simm5", "vd", "vs2"], - "extension": ["rv_v"], - "match": "0x44003057", - "mask": "0xfe00707f" - }, - "vmadc_vv": { - "encoding": "0100011----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x46000057", - "mask": "0xfe00707f" - }, - "vmadc_vvm": { - "encoding": "0100010----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x44000057", - "mask": "0xfe00707f" - }, - "vmadc_vx": { - "encoding": "0100011----------100-----1010111", - "variable_fields": ["rs1", "vd", "vs2"], - "extension": ["rv_v"], - "match": "0x46004057", - "mask": "0xfe00707f" - }, - "vmadc_vxm": { - "encoding": "0100010----------100-----1010111", - "variable_fields": ["rs1", "vd", "vs2"], - "extension": ["rv_v"], - "match": "0x44004057", - "mask": "0xfe00707f" - }, - "vmadd_vv": { - "encoding": "101001-----------010-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xa4002057", - "mask": "0xfc00707f" - }, - "vmadd_vx": { - "encoding": "101001-----------110-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xa4006057", - "mask": "0xfc00707f" - }, - "vmand_mm": { - "encoding": "0110011----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x66002057", - "mask": "0xfe00707f" - }, - "vmandn_mm": { - "encoding": "0110001----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x62002057", - "mask": "0xfe00707f" - }, - "vmax_vv": { - "encoding": "000111-----------000-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x1c000057", - "mask": "0xfc00707f" - }, - "vmax_vx": { - "encoding": "000111-----------100-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x1c004057", - "mask": "0xfc00707f" - }, - "vmaxu_vv": { - "encoding": "000110-----------000-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x18000057", - "mask": "0xfc00707f" - }, - "vmaxu_vx": { - "encoding": "000110-----------100-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x18004057", - "mask": "0xfc00707f" - }, - "vmerge_vim": { - "encoding": "0101110----------011-----1010111", - "variable_fields": ["simm5", "vd", "vs2"], - "extension": ["rv_v"], - "match": "0x5c003057", - "mask": "0xfe00707f" - }, - "vmerge_vvm": { - "encoding": "0101110----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x5c000057", - "mask": "0xfe00707f" - }, - "vmerge_vxm": { - "encoding": "0101110----------100-----1010111", - "variable_fields": ["rs1", "vd", "vs2"], - "extension": ["rv_v"], - "match": "0x5c004057", - "mask": "0xfe00707f" - }, - "vmfeq_vf": { - "encoding": "011000-----------101-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x60005057", - "mask": "0xfc00707f" - }, - "vmfeq_vv": { - "encoding": "011000-----------001-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x60001057", - "mask": "0xfc00707f" - }, - "vmfge_vf": { - "encoding": "011111-----------101-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x7c005057", - "mask": "0xfc00707f" - }, - "vmfgt_vf": { - "encoding": "011101-----------101-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x74005057", - "mask": "0xfc00707f" - }, - "vmfle_vf": { - "encoding": "011001-----------101-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x64005057", - "mask": "0xfc00707f" - }, - "vmfle_vv": { - "encoding": "011001-----------001-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x64001057", - "mask": "0xfc00707f" - }, - "vmflt_vf": { - "encoding": "011011-----------101-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x6c005057", - "mask": "0xfc00707f" - }, - "vmflt_vv": { - "encoding": "011011-----------001-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x6c001057", - "mask": "0xfc00707f" - }, - "vmfne_vf": { - "encoding": "011100-----------101-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x70005057", - "mask": "0xfc00707f" - }, - "vmfne_vv": { - "encoding": "011100-----------001-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x70001057", - "mask": "0xfc00707f" - }, - "vmin_vv": { - "encoding": "000101-----------000-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x14000057", - "mask": "0xfc00707f" - }, - "vmin_vx": { - "encoding": "000101-----------100-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x14004057", - "mask": "0xfc00707f" - }, - "vminu_vv": { - "encoding": "000100-----------000-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x10000057", - "mask": "0xfc00707f" - }, - "vminu_vx": { - "encoding": "000100-----------100-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x10004057", - "mask": "0xfc00707f" - }, - "vmnand_mm": { - "encoding": "0111011----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x76002057", - "mask": "0xfe00707f" - }, - "vmnor_mm": { - "encoding": "0111101----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x7a002057", - "mask": "0xfe00707f" - }, - "vmor_mm": { - "encoding": "0110101----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x6a002057", - "mask": "0xfe00707f" - }, - "vmorn_mm": { - "encoding": "0111001----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x72002057", - "mask": "0xfe00707f" - }, - "vmsbc_vv": { - "encoding": "0100111----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x4e000057", - "mask": "0xfe00707f" - }, - "vmsbc_vvm": { - "encoding": "0100110----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x4c000057", - "mask": "0xfe00707f" - }, - "vmsbc_vx": { - "encoding": "0100111----------100-----1010111", - "variable_fields": ["rs1", "vd", "vs2"], - "extension": ["rv_v"], - "match": "0x4e004057", - "mask": "0xfe00707f" - }, - "vmsbc_vxm": { - "encoding": "0100110----------100-----1010111", - "variable_fields": ["rs1", "vd", "vs2"], - "extension": ["rv_v"], - "match": "0x4c004057", - "mask": "0xfe00707f" - }, - "vmsbf_m": { - "encoding": "010100------00001010-----1010111", - "variable_fields": ["vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x5000a057", - "mask": "0xfc0ff07f" - }, - "vmseq_vi": { - "encoding": "011000-----------011-----1010111", - "variable_fields": ["simm5", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x60003057", - "mask": "0xfc00707f" - }, - "vmseq_vv": { - "encoding": "011000-----------000-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x60000057", - "mask": "0xfc00707f" - }, - "vmseq_vx": { - "encoding": "011000-----------100-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x60004057", - "mask": "0xfc00707f" - }, - "vmsgt_vi": { - "encoding": "011111-----------011-----1010111", - "variable_fields": ["simm5", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x7c003057", - "mask": "0xfc00707f" - }, - "vmsgt_vx": { - "encoding": "011111-----------100-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x7c004057", - "mask": "0xfc00707f" - }, - "vmsgtu_vi": { - "encoding": "011110-----------011-----1010111", - "variable_fields": ["simm5", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x78003057", - "mask": "0xfc00707f" - }, - "vmsgtu_vx": { - "encoding": "011110-----------100-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x78004057", - "mask": "0xfc00707f" - }, - "vmsif_m": { - "encoding": "010100------00011010-----1010111", - "variable_fields": ["vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x5001a057", - "mask": "0xfc0ff07f" - }, - "vmsle_vi": { - "encoding": "011101-----------011-----1010111", - "variable_fields": ["simm5", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x74003057", - "mask": "0xfc00707f" - }, - "vmsle_vv": { - "encoding": "011101-----------000-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x74000057", - "mask": "0xfc00707f" - }, - "vmsle_vx": { - "encoding": "011101-----------100-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x74004057", - "mask": "0xfc00707f" - }, - "vmsleu_vi": { - "encoding": "011100-----------011-----1010111", - "variable_fields": ["simm5", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x70003057", - "mask": "0xfc00707f" - }, - "vmsleu_vv": { - "encoding": "011100-----------000-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x70000057", - "mask": "0xfc00707f" - }, - "vmsleu_vx": { - "encoding": "011100-----------100-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x70004057", - "mask": "0xfc00707f" - }, - "vmslt_vv": { - "encoding": "011011-----------000-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x6c000057", - "mask": "0xfc00707f" - }, - "vmslt_vx": { - "encoding": "011011-----------100-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x6c004057", - "mask": "0xfc00707f" - }, - "vmsltu_vv": { - "encoding": "011010-----------000-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x68000057", - "mask": "0xfc00707f" - }, - "vmsltu_vx": { - "encoding": "011010-----------100-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x68004057", - "mask": "0xfc00707f" - }, - "vmsne_vi": { - "encoding": "011001-----------011-----1010111", - "variable_fields": ["simm5", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x64003057", - "mask": "0xfc00707f" - }, - "vmsne_vv": { - "encoding": "011001-----------000-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x64000057", - "mask": "0xfc00707f" - }, - "vmsne_vx": { - "encoding": "011001-----------100-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x64004057", - "mask": "0xfc00707f" - }, - "vmsof_m": { - "encoding": "010100------00010010-----1010111", - "variable_fields": ["vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x50012057", - "mask": "0xfc0ff07f" - }, - "vmul_vv": { - "encoding": "100101-----------010-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x94002057", - "mask": "0xfc00707f" - }, - "vmul_vx": { - "encoding": "100101-----------110-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x94006057", - "mask": "0xfc00707f" - }, - "vmulh_vv": { - "encoding": "100111-----------010-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x9c002057", - "mask": "0xfc00707f" - }, - "vmulh_vx": { - "encoding": "100111-----------110-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x9c006057", - "mask": "0xfc00707f" - }, - "vmulhsu_vv": { - "encoding": "100110-----------010-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x98002057", - "mask": "0xfc00707f" - }, - "vmulhsu_vx": { - "encoding": "100110-----------110-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x98006057", - "mask": "0xfc00707f" - }, - "vmulhu_vv": { - "encoding": "100100-----------010-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x90002057", - "mask": "0xfc00707f" - }, - "vmulhu_vx": { - "encoding": "100100-----------110-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x90006057", - "mask": "0xfc00707f" - }, - "vmv1r_v": { - "encoding": "1001111-----00000011-----1010111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_v"], - "match": "0x9e003057", - "mask": "0xfe0ff07f" - }, - "vmv2r_v": { - "encoding": "1001111-----00001011-----1010111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_v"], - "match": "0x9e00b057", - "mask": "0xfe0ff07f" - }, - "vmv4r_v": { - "encoding": "1001111-----00011011-----1010111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_v"], - "match": "0x9e01b057", - "mask": "0xfe0ff07f" - }, - "vmv8r_v": { - "encoding": "1001111-----00111011-----1010111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_v"], - "match": "0x9e03b057", - "mask": "0xfe0ff07f" - }, - "vmv_s_x": { - "encoding": "010000100000-----110-----1010111", - "variable_fields": ["rs1", "vd"], - "extension": ["rv_v"], - "match": "0x42006057", - "mask": "0xfff0707f" - }, - "vmv_v_i": { - "encoding": "010111100000-----011-----1010111", - "variable_fields": ["simm5", "vd"], - "extension": ["rv_v"], - "match": "0x5e003057", - "mask": "0xfff0707f" - }, - "vmv_v_v": { - "encoding": "010111100000-----000-----1010111", - "variable_fields": ["vd", "vs1"], - "extension": ["rv_v"], - "match": "0x5e000057", - "mask": "0xfff0707f" - }, - "vmv_v_x": { - "encoding": "010111100000-----100-----1010111", - "variable_fields": ["rs1", "vd"], - "extension": ["rv_v"], - "match": "0x5e004057", - "mask": "0xfff0707f" - }, - "vmv_x_s": { - "encoding": "0100001-----00000010-----1010111", - "variable_fields": ["rd", "vs2"], - "extension": ["rv_v"], - "match": "0x42002057", - "mask": "0xfe0ff07f" - }, - "vmxnor_mm": { - "encoding": "0111111----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x7e002057", - "mask": "0xfe00707f" - }, - "vmxor_mm": { - "encoding": "0110111----------010-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x6e002057", - "mask": "0xfe00707f" - }, - "vnclip_wi": { - "encoding": "101111-----------011-----1010111", - "variable_fields": ["simm5", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xbc003057", - "mask": "0xfc00707f" - }, - "vnclip_wv": { - "encoding": "101111-----------000-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xbc000057", - "mask": "0xfc00707f" - }, - "vnclip_wx": { - "encoding": "101111-----------100-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xbc004057", - "mask": "0xfc00707f" - }, - "vnclipu_wi": { - "encoding": "101110-----------011-----1010111", - "variable_fields": ["simm5", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xb8003057", - "mask": "0xfc00707f" - }, - "vnclipu_wv": { - "encoding": "101110-----------000-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xb8000057", - "mask": "0xfc00707f" - }, - "vnclipu_wx": { - "encoding": "101110-----------100-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xb8004057", - "mask": "0xfc00707f" - }, - "vnmsac_vv": { - "encoding": "101111-----------010-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xbc002057", - "mask": "0xfc00707f" - }, - "vnmsac_vx": { - "encoding": "101111-----------110-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xbc006057", - "mask": "0xfc00707f" - }, - "vnmsub_vv": { - "encoding": "101011-----------010-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xac002057", - "mask": "0xfc00707f" - }, - "vnmsub_vx": { - "encoding": "101011-----------110-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xac006057", - "mask": "0xfc00707f" - }, - "vnsra_wi": { - "encoding": "101101-----------011-----1010111", - "variable_fields": ["simm5", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xb4003057", - "mask": "0xfc00707f" - }, - "vnsra_wv": { - "encoding": "101101-----------000-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xb4000057", - "mask": "0xfc00707f" - }, - "vnsra_wx": { - "encoding": "101101-----------100-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xb4004057", - "mask": "0xfc00707f" - }, - "vnsrl_wi": { - "encoding": "101100-----------011-----1010111", - "variable_fields": ["simm5", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xb0003057", - "mask": "0xfc00707f" - }, - "vnsrl_wv": { - "encoding": "101100-----------000-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xb0000057", - "mask": "0xfc00707f" - }, - "vnsrl_wx": { - "encoding": "101100-----------100-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xb0004057", - "mask": "0xfc00707f" - }, - "vor_vi": { - "encoding": "001010-----------011-----1010111", - "variable_fields": ["simm5", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x28003057", - "mask": "0xfc00707f" - }, - "vor_vv": { - "encoding": "001010-----------000-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x28000057", - "mask": "0xfc00707f" - }, - "vor_vx": { - "encoding": "001010-----------100-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x28004057", - "mask": "0xfc00707f" - }, - "vredand_vs": { - "encoding": "000001-----------010-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x4002057", - "mask": "0xfc00707f" - }, - "vredmax_vs": { - "encoding": "000111-----------010-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x1c002057", - "mask": "0xfc00707f" - }, - "vredmaxu_vs": { - "encoding": "000110-----------010-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x18002057", - "mask": "0xfc00707f" - }, - "vredmin_vs": { - "encoding": "000101-----------010-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x14002057", - "mask": "0xfc00707f" - }, - "vredminu_vs": { - "encoding": "000100-----------010-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x10002057", - "mask": "0xfc00707f" - }, - "vredor_vs": { - "encoding": "000010-----------010-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x8002057", - "mask": "0xfc00707f" - }, - "vredsum_vs": { - "encoding": "000000-----------010-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x2057", - "mask": "0xfc00707f" - }, - "vredxor_vs": { - "encoding": "000011-----------010-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xc002057", - "mask": "0xfc00707f" - }, - "vrem_vv": { - "encoding": "100011-----------010-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x8c002057", - "mask": "0xfc00707f" - }, - "vrem_vx": { - "encoding": "100011-----------110-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x8c006057", - "mask": "0xfc00707f" - }, - "vremu_vv": { - "encoding": "100010-----------010-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x88002057", - "mask": "0xfc00707f" - }, - "vremu_vx": { - "encoding": "100010-----------110-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x88006057", - "mask": "0xfc00707f" - }, - "vrev8_v": { - "encoding": "010010------01001010-----1010111", - "variable_fields": ["vd", "vm", "vs2"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0x4804a057", - "mask": "0xfc0ff07f" - }, - "vrgather_vi": { - "encoding": "001100-----------011-----1010111", - "variable_fields": ["simm5", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x30003057", - "mask": "0xfc00707f" - }, - "vrgather_vv": { - "encoding": "001100-----------000-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x30000057", - "mask": "0xfc00707f" - }, - "vrgather_vx": { - "encoding": "001100-----------100-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x30004057", - "mask": "0xfc00707f" - }, - "vrgatherei16_vv": { - "encoding": "001110-----------000-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x38000057", - "mask": "0xfc00707f" - }, - "vrol_vv": { - "encoding": "010101-----------000-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0x54000057", - "mask": "0xfc00707f" - }, - "vrol_vx": { - "encoding": "010101-----------100-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0x54004057", - "mask": "0xfc00707f" - }, - "vror_vi": { - "encoding": "01010------------011-----1010111", - "variable_fields": ["vd", "vm", "vs2"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0x50003057", - "mask": "0xf800707f" - }, - "vror_vv": { - "encoding": "010100-----------000-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0x50000057", - "mask": "0xfc00707f" - }, - "vror_vx": { - "encoding": "010100-----------100-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0x50004057", - "mask": "0xfc00707f" - }, - "vrsub_vi": { - "encoding": "000011-----------011-----1010111", - "variable_fields": ["simm5", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xc003057", - "mask": "0xfc00707f" - }, - "vrsub_vx": { - "encoding": "000011-----------100-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xc004057", - "mask": "0xfc00707f" - }, - "vs1r_v": { - "encoding": "000000101000-----000-----0100111", - "variable_fields": ["rs1", "vs3"], - "extension": ["rv_v"], - "match": "0x2800027", - "mask": "0xfff0707f" - }, - "vs2r_v": { - "encoding": "001000101000-----000-----0100111", - "variable_fields": ["rs1", "vs3"], - "extension": ["rv_v"], - "match": "0x22800027", - "mask": "0xfff0707f" - }, - "vs4r_v": { - "encoding": "011000101000-----000-----0100111", - "variable_fields": ["rs1", "vs3"], - "extension": ["rv_v"], - "match": "0x62800027", - "mask": "0xfff0707f" - }, - "vs8r_v": { - "encoding": "111000101000-----000-----0100111", - "variable_fields": ["rs1", "vs3"], - "extension": ["rv_v"], - "match": "0xe2800027", - "mask": "0xfff0707f" - }, - "vsadd_vi": { - "encoding": "100001-----------011-----1010111", - "variable_fields": ["simm5", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x84003057", - "mask": "0xfc00707f" - }, - "vsadd_vv": { - "encoding": "100001-----------000-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x84000057", - "mask": "0xfc00707f" - }, - "vsadd_vx": { - "encoding": "100001-----------100-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x84004057", - "mask": "0xfc00707f" - }, - "vsaddu_vi": { - "encoding": "100000-----------011-----1010111", - "variable_fields": ["simm5", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x80003057", - "mask": "0xfc00707f" - }, - "vsaddu_vv": { - "encoding": "100000-----------000-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x80000057", - "mask": "0xfc00707f" - }, - "vsaddu_vx": { - "encoding": "100000-----------100-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x80004057", - "mask": "0xfc00707f" - }, - "vsbc_vvm": { - "encoding": "0100100----------000-----1010111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x48000057", - "mask": "0xfe00707f" - }, - "vsbc_vxm": { - "encoding": "0100100----------100-----1010111", - "variable_fields": ["rs1", "vd", "vs2"], - "extension": ["rv_v"], - "match": "0x48004057", - "mask": "0xfe00707f" - }, - "vse16_v": { - "encoding": "000000-00000-----101-----0100111", - "variable_fields": ["rs1", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0x5027", - "mask": "0xfdf0707f" - }, - "vse32_v": { - "encoding": "000000-00000-----110-----0100111", - "variable_fields": ["rs1", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0x6027", - "mask": "0xfdf0707f" - }, - "vse64_v": { - "encoding": "000000-00000-----111-----0100111", - "variable_fields": ["rs1", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0x7027", - "mask": "0xfdf0707f" - }, - "vse8_v": { - "encoding": "000000-00000-----000-----0100111", - "variable_fields": ["rs1", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0x27", - "mask": "0xfdf0707f" - }, - "vsetivli": { - "encoding": "11---------------111-----1010111", - "variable_fields": ["rd", "zimm10"], - "extension": ["rv_v"], - "match": "0xc0007057", - "mask": "0xc000707f" - }, - "vsetvl": { - "encoding": "1000000----------111-----1010111", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_v"], - "match": "0x80007057", - "mask": "0xfe00707f" - }, - "vsetvli": { - "encoding": "0----------------111-----1010111", - "variable_fields": ["rd", "rs1", "zimm11"], - "extension": ["rv_v"], - "match": "0x7057", - "mask": "0x8000707f" - }, - "vsext_vf2": { - "encoding": "010010------00111010-----1010111", - "variable_fields": ["vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x4803a057", - "mask": "0xfc0ff07f" - }, - "vsext_vf4": { - "encoding": "010010------00101010-----1010111", - "variable_fields": ["vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x4802a057", - "mask": "0xfc0ff07f" - }, - "vsext_vf8": { - "encoding": "010010------00011010-----1010111", - "variable_fields": ["vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x4801a057", - "mask": "0xfc0ff07f" - }, - "vsha2ch_vv": { - "encoding": "1011101----------010-----1110111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_zvkn", "rv_zvknha", "rv_zvknhb"], - "match": "0xba002077", - "mask": "0xfe00707f" - }, - "vsha2cl_vv": { - "encoding": "1011111----------010-----1110111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_zvkn", "rv_zvknha", "rv_zvknhb"], - "match": "0xbe002077", - "mask": "0xfe00707f" - }, - "vsha2ms_vv": { - "encoding": "1011011----------010-----1110111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_zvkn", "rv_zvknha", "rv_zvknhb"], - "match": "0xb6002077", - "mask": "0xfe00707f" - }, - "vslide1down_vx": { - "encoding": "001111-----------110-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x3c006057", - "mask": "0xfc00707f" - }, - "vslide1up_vx": { - "encoding": "001110-----------110-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x38006057", - "mask": "0xfc00707f" - }, - "vslidedown_vi": { - "encoding": "001111-----------011-----1010111", - "variable_fields": ["simm5", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x3c003057", - "mask": "0xfc00707f" - }, - "vslidedown_vx": { - "encoding": "001111-----------100-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x3c004057", - "mask": "0xfc00707f" - }, - "vslideup_vi": { - "encoding": "001110-----------011-----1010111", - "variable_fields": ["simm5", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x38003057", - "mask": "0xfc00707f" - }, - "vslideup_vx": { - "encoding": "001110-----------100-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x38004057", - "mask": "0xfc00707f" - }, - "vsll_vi": { - "encoding": "100101-----------011-----1010111", - "variable_fields": ["simm5", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x94003057", - "mask": "0xfc00707f" - }, - "vsll_vv": { - "encoding": "100101-----------000-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x94000057", - "mask": "0xfc00707f" - }, - "vsll_vx": { - "encoding": "100101-----------100-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x94004057", - "mask": "0xfc00707f" - }, - "vsm3c_vi": { - "encoding": "1010111----------010-----1110111", - "variable_fields": ["vd", "vs2", "zimm5"], - "extension": ["rv_zvks", "rv_zvksh"], - "match": "0xae002077", - "mask": "0xfe00707f" - }, - "vsm3me_vv": { - "encoding": "1000001----------010-----1110111", - "variable_fields": ["vd", "vs1", "vs2"], - "extension": ["rv_zvks", "rv_zvksh"], - "match": "0x82002077", - "mask": "0xfe00707f" - }, - "vsm4k_vi": { - "encoding": "1000011----------010-----1110111", - "variable_fields": ["vd", "vs2", "zimm5"], - "extension": ["rv_zvks", "rv_zvksed"], - "match": "0x86002077", - "mask": "0xfe00707f" - }, - "vsm4r_vs": { - "encoding": "1010011-----10000010-----1110111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_zvks", "rv_zvksed"], - "match": "0xa6082077", - "mask": "0xfe0ff07f" - }, - "vsm4r_vv": { - "encoding": "1010001-----10000010-----1110111", - "variable_fields": ["vd", "vs2"], - "extension": ["rv_zvks", "rv_zvksed"], - "match": "0xa2082077", - "mask": "0xfe0ff07f" - }, - "vsm_v": { - "encoding": "000000101011-----000-----0100111", - "variable_fields": ["rs1", "vs3"], - "extension": ["rv_v"], - "match": "0x2b00027", - "mask": "0xfff0707f" - }, - "vsmul_vv": { - "encoding": "100111-----------000-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x9c000057", - "mask": "0xfc00707f" - }, - "vsmul_vx": { - "encoding": "100111-----------100-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x9c004057", - "mask": "0xfc00707f" - }, - "vsoxei16_v": { - "encoding": "000011-----------101-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0xc005027", - "mask": "0xfc00707f" - }, - "vsoxei32_v": { - "encoding": "000011-----------110-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0xc006027", - "mask": "0xfc00707f" - }, - "vsoxei64_v": { - "encoding": "000011-----------111-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0xc007027", - "mask": "0xfc00707f" - }, - "vsoxei8_v": { - "encoding": "000011-----------000-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0xc000027", - "mask": "0xfc00707f" - }, - "vsoxseg2ei16_v": { - "encoding": "001011-----------101-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0x2c005027", - "mask": "0xfc00707f" - }, - "vsoxseg2ei32_v": { - "encoding": "001011-----------110-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0x2c006027", - "mask": "0xfc00707f" - }, - "vsoxseg2ei64_v": { - "encoding": "001011-----------111-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0x2c007027", - "mask": "0xfc00707f" - }, - "vsoxseg2ei8_v": { - "encoding": "001011-----------000-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0x2c000027", - "mask": "0xfc00707f" - }, - "vsoxseg3ei16_v": { - "encoding": "010011-----------101-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0x4c005027", - "mask": "0xfc00707f" - }, - "vsoxseg3ei32_v": { - "encoding": "010011-----------110-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0x4c006027", - "mask": "0xfc00707f" - }, - "vsoxseg3ei64_v": { - "encoding": "010011-----------111-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0x4c007027", - "mask": "0xfc00707f" - }, - "vsoxseg3ei8_v": { - "encoding": "010011-----------000-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0x4c000027", - "mask": "0xfc00707f" - }, - "vsoxseg4ei16_v": { - "encoding": "011011-----------101-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0x6c005027", - "mask": "0xfc00707f" - }, - "vsoxseg4ei32_v": { - "encoding": "011011-----------110-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0x6c006027", - "mask": "0xfc00707f" - }, - "vsoxseg4ei64_v": { - "encoding": "011011-----------111-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0x6c007027", - "mask": "0xfc00707f" - }, - "vsoxseg4ei8_v": { - "encoding": "011011-----------000-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0x6c000027", - "mask": "0xfc00707f" - }, - "vsoxseg5ei16_v": { - "encoding": "100011-----------101-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0x8c005027", - "mask": "0xfc00707f" - }, - "vsoxseg5ei32_v": { - "encoding": "100011-----------110-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0x8c006027", - "mask": "0xfc00707f" - }, - "vsoxseg5ei64_v": { - "encoding": "100011-----------111-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0x8c007027", - "mask": "0xfc00707f" - }, - "vsoxseg5ei8_v": { - "encoding": "100011-----------000-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0x8c000027", - "mask": "0xfc00707f" - }, - "vsoxseg6ei16_v": { - "encoding": "101011-----------101-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0xac005027", - "mask": "0xfc00707f" - }, - "vsoxseg6ei32_v": { - "encoding": "101011-----------110-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0xac006027", - "mask": "0xfc00707f" - }, - "vsoxseg6ei64_v": { - "encoding": "101011-----------111-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0xac007027", - "mask": "0xfc00707f" - }, - "vsoxseg6ei8_v": { - "encoding": "101011-----------000-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0xac000027", - "mask": "0xfc00707f" - }, - "vsoxseg7ei16_v": { - "encoding": "110011-----------101-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0xcc005027", - "mask": "0xfc00707f" - }, - "vsoxseg7ei32_v": { - "encoding": "110011-----------110-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0xcc006027", - "mask": "0xfc00707f" - }, - "vsoxseg7ei64_v": { - "encoding": "110011-----------111-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0xcc007027", - "mask": "0xfc00707f" - }, - "vsoxseg7ei8_v": { - "encoding": "110011-----------000-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0xcc000027", - "mask": "0xfc00707f" - }, - "vsoxseg8ei16_v": { - "encoding": "111011-----------101-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0xec005027", - "mask": "0xfc00707f" - }, - "vsoxseg8ei32_v": { - "encoding": "111011-----------110-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0xec006027", - "mask": "0xfc00707f" - }, - "vsoxseg8ei64_v": { - "encoding": "111011-----------111-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0xec007027", - "mask": "0xfc00707f" - }, - "vsoxseg8ei8_v": { - "encoding": "111011-----------000-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0xec000027", - "mask": "0xfc00707f" - }, - "vsra_vi": { - "encoding": "101001-----------011-----1010111", - "variable_fields": ["simm5", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xa4003057", - "mask": "0xfc00707f" - }, - "vsra_vv": { - "encoding": "101001-----------000-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xa4000057", - "mask": "0xfc00707f" - }, - "vsra_vx": { - "encoding": "101001-----------100-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xa4004057", - "mask": "0xfc00707f" - }, - "vsrl_vi": { - "encoding": "101000-----------011-----1010111", - "variable_fields": ["simm5", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xa0003057", - "mask": "0xfc00707f" - }, - "vsrl_vv": { - "encoding": "101000-----------000-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xa0000057", - "mask": "0xfc00707f" - }, - "vsrl_vx": { - "encoding": "101000-----------100-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xa0004057", - "mask": "0xfc00707f" - }, - "vsse16_v": { - "encoding": "000010-----------101-----0100111", - "variable_fields": ["rs1", "rs2", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0x8005027", - "mask": "0xfc00707f" - }, - "vsse32_v": { - "encoding": "000010-----------110-----0100111", - "variable_fields": ["rs1", "rs2", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0x8006027", - "mask": "0xfc00707f" - }, - "vsse64_v": { - "encoding": "000010-----------111-----0100111", - "variable_fields": ["rs1", "rs2", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0x8007027", - "mask": "0xfc00707f" - }, - "vsse8_v": { - "encoding": "000010-----------000-----0100111", - "variable_fields": ["rs1", "rs2", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0x8000027", - "mask": "0xfc00707f" - }, - "vsseg2e16_v": { - "encoding": "001000-00000-----101-----0100111", - "variable_fields": ["rs1", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0x20005027", - "mask": "0xfdf0707f" - }, - "vsseg2e32_v": { - "encoding": "001000-00000-----110-----0100111", - "variable_fields": ["rs1", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0x20006027", - "mask": "0xfdf0707f" - }, - "vsseg2e64_v": { - "encoding": "001000-00000-----111-----0100111", - "variable_fields": ["rs1", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0x20007027", - "mask": "0xfdf0707f" - }, - "vsseg2e8_v": { - "encoding": "001000-00000-----000-----0100111", - "variable_fields": ["rs1", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0x20000027", - "mask": "0xfdf0707f" - }, - "vsseg3e16_v": { - "encoding": "010000-00000-----101-----0100111", - "variable_fields": ["rs1", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0x40005027", - "mask": "0xfdf0707f" - }, - "vsseg3e32_v": { - "encoding": "010000-00000-----110-----0100111", - "variable_fields": ["rs1", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0x40006027", - "mask": "0xfdf0707f" - }, - "vsseg3e64_v": { - "encoding": "010000-00000-----111-----0100111", - "variable_fields": ["rs1", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0x40007027", - "mask": "0xfdf0707f" - }, - "vsseg3e8_v": { - "encoding": "010000-00000-----000-----0100111", - "variable_fields": ["rs1", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0x40000027", - "mask": "0xfdf0707f" - }, - "vsseg4e16_v": { - "encoding": "011000-00000-----101-----0100111", - "variable_fields": ["rs1", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0x60005027", - "mask": "0xfdf0707f" - }, - "vsseg4e32_v": { - "encoding": "011000-00000-----110-----0100111", - "variable_fields": ["rs1", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0x60006027", - "mask": "0xfdf0707f" - }, - "vsseg4e64_v": { - "encoding": "011000-00000-----111-----0100111", - "variable_fields": ["rs1", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0x60007027", - "mask": "0xfdf0707f" - }, - "vsseg4e8_v": { - "encoding": "011000-00000-----000-----0100111", - "variable_fields": ["rs1", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0x60000027", - "mask": "0xfdf0707f" - }, - "vsseg5e16_v": { - "encoding": "100000-00000-----101-----0100111", - "variable_fields": ["rs1", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0x80005027", - "mask": "0xfdf0707f" - }, - "vsseg5e32_v": { - "encoding": "100000-00000-----110-----0100111", - "variable_fields": ["rs1", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0x80006027", - "mask": "0xfdf0707f" - }, - "vsseg5e64_v": { - "encoding": "100000-00000-----111-----0100111", - "variable_fields": ["rs1", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0x80007027", - "mask": "0xfdf0707f" - }, - "vsseg5e8_v": { - "encoding": "100000-00000-----000-----0100111", - "variable_fields": ["rs1", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0x80000027", - "mask": "0xfdf0707f" - }, - "vsseg6e16_v": { - "encoding": "101000-00000-----101-----0100111", - "variable_fields": ["rs1", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0xa0005027", - "mask": "0xfdf0707f" - }, - "vsseg6e32_v": { - "encoding": "101000-00000-----110-----0100111", - "variable_fields": ["rs1", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0xa0006027", - "mask": "0xfdf0707f" - }, - "vsseg6e64_v": { - "encoding": "101000-00000-----111-----0100111", - "variable_fields": ["rs1", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0xa0007027", - "mask": "0xfdf0707f" - }, - "vsseg6e8_v": { - "encoding": "101000-00000-----000-----0100111", - "variable_fields": ["rs1", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0xa0000027", - "mask": "0xfdf0707f" - }, - "vsseg7e16_v": { - "encoding": "110000-00000-----101-----0100111", - "variable_fields": ["rs1", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0xc0005027", - "mask": "0xfdf0707f" - }, - "vsseg7e32_v": { - "encoding": "110000-00000-----110-----0100111", - "variable_fields": ["rs1", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0xc0006027", - "mask": "0xfdf0707f" - }, - "vsseg7e64_v": { - "encoding": "110000-00000-----111-----0100111", - "variable_fields": ["rs1", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0xc0007027", - "mask": "0xfdf0707f" - }, - "vsseg7e8_v": { - "encoding": "110000-00000-----000-----0100111", - "variable_fields": ["rs1", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0xc0000027", - "mask": "0xfdf0707f" - }, - "vsseg8e16_v": { - "encoding": "111000-00000-----101-----0100111", - "variable_fields": ["rs1", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0xe0005027", - "mask": "0xfdf0707f" - }, - "vsseg8e32_v": { - "encoding": "111000-00000-----110-----0100111", - "variable_fields": ["rs1", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0xe0006027", - "mask": "0xfdf0707f" - }, - "vsseg8e64_v": { - "encoding": "111000-00000-----111-----0100111", - "variable_fields": ["rs1", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0xe0007027", - "mask": "0xfdf0707f" - }, - "vsseg8e8_v": { - "encoding": "111000-00000-----000-----0100111", - "variable_fields": ["rs1", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0xe0000027", - "mask": "0xfdf0707f" - }, - "vssra_vi": { - "encoding": "101011-----------011-----1010111", - "variable_fields": ["simm5", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xac003057", - "mask": "0xfc00707f" - }, - "vssra_vv": { - "encoding": "101011-----------000-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xac000057", - "mask": "0xfc00707f" - }, - "vssra_vx": { - "encoding": "101011-----------100-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xac004057", - "mask": "0xfc00707f" - }, - "vssrl_vi": { - "encoding": "101010-----------011-----1010111", - "variable_fields": ["simm5", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xa8003057", - "mask": "0xfc00707f" - }, - "vssrl_vv": { - "encoding": "101010-----------000-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xa8000057", - "mask": "0xfc00707f" - }, - "vssrl_vx": { - "encoding": "101010-----------100-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xa8004057", - "mask": "0xfc00707f" - }, - "vssseg2e16_v": { - "encoding": "001010-----------101-----0100111", - "variable_fields": ["rs1", "rs2", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0x28005027", - "mask": "0xfc00707f" - }, - "vssseg2e32_v": { - "encoding": "001010-----------110-----0100111", - "variable_fields": ["rs1", "rs2", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0x28006027", - "mask": "0xfc00707f" - }, - "vssseg2e64_v": { - "encoding": "001010-----------111-----0100111", - "variable_fields": ["rs1", "rs2", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0x28007027", - "mask": "0xfc00707f" - }, - "vssseg2e8_v": { - "encoding": "001010-----------000-----0100111", - "variable_fields": ["rs1", "rs2", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0x28000027", - "mask": "0xfc00707f" - }, - "vssseg3e16_v": { - "encoding": "010010-----------101-----0100111", - "variable_fields": ["rs1", "rs2", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0x48005027", - "mask": "0xfc00707f" - }, - "vssseg3e32_v": { - "encoding": "010010-----------110-----0100111", - "variable_fields": ["rs1", "rs2", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0x48006027", - "mask": "0xfc00707f" - }, - "vssseg3e64_v": { - "encoding": "010010-----------111-----0100111", - "variable_fields": ["rs1", "rs2", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0x48007027", - "mask": "0xfc00707f" - }, - "vssseg3e8_v": { - "encoding": "010010-----------000-----0100111", - "variable_fields": ["rs1", "rs2", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0x48000027", - "mask": "0xfc00707f" - }, - "vssseg4e16_v": { - "encoding": "011010-----------101-----0100111", - "variable_fields": ["rs1", "rs2", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0x68005027", - "mask": "0xfc00707f" - }, - "vssseg4e32_v": { - "encoding": "011010-----------110-----0100111", - "variable_fields": ["rs1", "rs2", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0x68006027", - "mask": "0xfc00707f" - }, - "vssseg4e64_v": { - "encoding": "011010-----------111-----0100111", - "variable_fields": ["rs1", "rs2", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0x68007027", - "mask": "0xfc00707f" - }, - "vssseg4e8_v": { - "encoding": "011010-----------000-----0100111", - "variable_fields": ["rs1", "rs2", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0x68000027", - "mask": "0xfc00707f" - }, - "vssseg5e16_v": { - "encoding": "100010-----------101-----0100111", - "variable_fields": ["rs1", "rs2", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0x88005027", - "mask": "0xfc00707f" - }, - "vssseg5e32_v": { - "encoding": "100010-----------110-----0100111", - "variable_fields": ["rs1", "rs2", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0x88006027", - "mask": "0xfc00707f" - }, - "vssseg5e64_v": { - "encoding": "100010-----------111-----0100111", - "variable_fields": ["rs1", "rs2", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0x88007027", - "mask": "0xfc00707f" - }, - "vssseg5e8_v": { - "encoding": "100010-----------000-----0100111", - "variable_fields": ["rs1", "rs2", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0x88000027", - "mask": "0xfc00707f" - }, - "vssseg6e16_v": { - "encoding": "101010-----------101-----0100111", - "variable_fields": ["rs1", "rs2", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0xa8005027", - "mask": "0xfc00707f" - }, - "vssseg6e32_v": { - "encoding": "101010-----------110-----0100111", - "variable_fields": ["rs1", "rs2", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0xa8006027", - "mask": "0xfc00707f" - }, - "vssseg6e64_v": { - "encoding": "101010-----------111-----0100111", - "variable_fields": ["rs1", "rs2", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0xa8007027", - "mask": "0xfc00707f" - }, - "vssseg6e8_v": { - "encoding": "101010-----------000-----0100111", - "variable_fields": ["rs1", "rs2", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0xa8000027", - "mask": "0xfc00707f" - }, - "vssseg7e16_v": { - "encoding": "110010-----------101-----0100111", - "variable_fields": ["rs1", "rs2", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0xc8005027", - "mask": "0xfc00707f" - }, - "vssseg7e32_v": { - "encoding": "110010-----------110-----0100111", - "variable_fields": ["rs1", "rs2", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0xc8006027", - "mask": "0xfc00707f" - }, - "vssseg7e64_v": { - "encoding": "110010-----------111-----0100111", - "variable_fields": ["rs1", "rs2", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0xc8007027", - "mask": "0xfc00707f" - }, - "vssseg7e8_v": { - "encoding": "110010-----------000-----0100111", - "variable_fields": ["rs1", "rs2", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0xc8000027", - "mask": "0xfc00707f" - }, - "vssseg8e16_v": { - "encoding": "111010-----------101-----0100111", - "variable_fields": ["rs1", "rs2", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0xe8005027", - "mask": "0xfc00707f" - }, - "vssseg8e32_v": { - "encoding": "111010-----------110-----0100111", - "variable_fields": ["rs1", "rs2", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0xe8006027", - "mask": "0xfc00707f" - }, - "vssseg8e64_v": { - "encoding": "111010-----------111-----0100111", - "variable_fields": ["rs1", "rs2", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0xe8007027", - "mask": "0xfc00707f" - }, - "vssseg8e8_v": { - "encoding": "111010-----------000-----0100111", - "variable_fields": ["rs1", "rs2", "vm", "vs3"], - "extension": ["rv_v"], - "match": "0xe8000027", - "mask": "0xfc00707f" - }, - "vssub_vv": { - "encoding": "100011-----------000-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x8c000057", - "mask": "0xfc00707f" - }, - "vssub_vx": { - "encoding": "100011-----------100-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x8c004057", - "mask": "0xfc00707f" - }, - "vssubu_vv": { - "encoding": "100010-----------000-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x88000057", - "mask": "0xfc00707f" - }, - "vssubu_vx": { - "encoding": "100010-----------100-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x88004057", - "mask": "0xfc00707f" - }, - "vsub_vv": { - "encoding": "000010-----------000-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x8000057", - "mask": "0xfc00707f" - }, - "vsub_vx": { - "encoding": "000010-----------100-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x8004057", - "mask": "0xfc00707f" - }, - "vsuxei16_v": { - "encoding": "000001-----------101-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0x4005027", - "mask": "0xfc00707f" - }, - "vsuxei32_v": { - "encoding": "000001-----------110-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0x4006027", - "mask": "0xfc00707f" - }, - "vsuxei64_v": { - "encoding": "000001-----------111-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0x4007027", - "mask": "0xfc00707f" - }, - "vsuxei8_v": { - "encoding": "000001-----------000-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0x4000027", - "mask": "0xfc00707f" - }, - "vsuxseg2ei16_v": { - "encoding": "001001-----------101-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0x24005027", - "mask": "0xfc00707f" - }, - "vsuxseg2ei32_v": { - "encoding": "001001-----------110-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0x24006027", - "mask": "0xfc00707f" - }, - "vsuxseg2ei64_v": { - "encoding": "001001-----------111-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0x24007027", - "mask": "0xfc00707f" - }, - "vsuxseg2ei8_v": { - "encoding": "001001-----------000-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0x24000027", - "mask": "0xfc00707f" - }, - "vsuxseg3ei16_v": { - "encoding": "010001-----------101-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0x44005027", - "mask": "0xfc00707f" - }, - "vsuxseg3ei32_v": { - "encoding": "010001-----------110-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0x44006027", - "mask": "0xfc00707f" - }, - "vsuxseg3ei64_v": { - "encoding": "010001-----------111-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0x44007027", - "mask": "0xfc00707f" - }, - "vsuxseg3ei8_v": { - "encoding": "010001-----------000-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0x44000027", - "mask": "0xfc00707f" - }, - "vsuxseg4ei16_v": { - "encoding": "011001-----------101-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0x64005027", - "mask": "0xfc00707f" - }, - "vsuxseg4ei32_v": { - "encoding": "011001-----------110-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0x64006027", - "mask": "0xfc00707f" - }, - "vsuxseg4ei64_v": { - "encoding": "011001-----------111-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0x64007027", - "mask": "0xfc00707f" - }, - "vsuxseg4ei8_v": { - "encoding": "011001-----------000-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0x64000027", - "mask": "0xfc00707f" - }, - "vsuxseg5ei16_v": { - "encoding": "100001-----------101-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0x84005027", - "mask": "0xfc00707f" - }, - "vsuxseg5ei32_v": { - "encoding": "100001-----------110-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0x84006027", - "mask": "0xfc00707f" - }, - "vsuxseg5ei64_v": { - "encoding": "100001-----------111-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0x84007027", - "mask": "0xfc00707f" - }, - "vsuxseg5ei8_v": { - "encoding": "100001-----------000-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0x84000027", - "mask": "0xfc00707f" - }, - "vsuxseg6ei16_v": { - "encoding": "101001-----------101-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0xa4005027", - "mask": "0xfc00707f" - }, - "vsuxseg6ei32_v": { - "encoding": "101001-----------110-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0xa4006027", - "mask": "0xfc00707f" - }, - "vsuxseg6ei64_v": { - "encoding": "101001-----------111-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0xa4007027", - "mask": "0xfc00707f" - }, - "vsuxseg6ei8_v": { - "encoding": "101001-----------000-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0xa4000027", - "mask": "0xfc00707f" - }, - "vsuxseg7ei16_v": { - "encoding": "110001-----------101-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0xc4005027", - "mask": "0xfc00707f" - }, - "vsuxseg7ei32_v": { - "encoding": "110001-----------110-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0xc4006027", - "mask": "0xfc00707f" - }, - "vsuxseg7ei64_v": { - "encoding": "110001-----------111-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0xc4007027", - "mask": "0xfc00707f" - }, - "vsuxseg7ei8_v": { - "encoding": "110001-----------000-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0xc4000027", - "mask": "0xfc00707f" - }, - "vsuxseg8ei16_v": { - "encoding": "111001-----------101-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0xe4005027", - "mask": "0xfc00707f" - }, - "vsuxseg8ei32_v": { - "encoding": "111001-----------110-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0xe4006027", - "mask": "0xfc00707f" - }, - "vsuxseg8ei64_v": { - "encoding": "111001-----------111-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0xe4007027", - "mask": "0xfc00707f" - }, - "vsuxseg8ei8_v": { - "encoding": "111001-----------000-----0100111", - "variable_fields": ["rs1", "vm", "vs2", "vs3"], - "extension": ["rv_v"], - "match": "0xe4000027", - "mask": "0xfc00707f" - }, - "vwadd_vv": { - "encoding": "110001-----------010-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xc4002057", - "mask": "0xfc00707f" - }, - "vwadd_vx": { - "encoding": "110001-----------110-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xc4006057", - "mask": "0xfc00707f" - }, - "vwadd_wv": { - "encoding": "110101-----------010-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xd4002057", - "mask": "0xfc00707f" - }, - "vwadd_wx": { - "encoding": "110101-----------110-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xd4006057", - "mask": "0xfc00707f" - }, - "vwaddu_vv": { - "encoding": "110000-----------010-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xc0002057", - "mask": "0xfc00707f" - }, - "vwaddu_vx": { - "encoding": "110000-----------110-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xc0006057", - "mask": "0xfc00707f" - }, - "vwaddu_wv": { - "encoding": "110100-----------010-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xd0002057", - "mask": "0xfc00707f" - }, - "vwaddu_wx": { - "encoding": "110100-----------110-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xd0006057", - "mask": "0xfc00707f" - }, - "vwmacc_vv": { - "encoding": "111101-----------010-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xf4002057", - "mask": "0xfc00707f" - }, - "vwmacc_vx": { - "encoding": "111101-----------110-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xf4006057", - "mask": "0xfc00707f" - }, - "vwmaccsu_vv": { - "encoding": "111111-----------010-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xfc002057", - "mask": "0xfc00707f" - }, - "vwmaccsu_vx": { - "encoding": "111111-----------110-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xfc006057", - "mask": "0xfc00707f" - }, - "vwmaccu_vv": { - "encoding": "111100-----------010-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xf0002057", - "mask": "0xfc00707f" - }, - "vwmaccu_vx": { - "encoding": "111100-----------110-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xf0006057", - "mask": "0xfc00707f" - }, - "vwmaccus_vx": { - "encoding": "111110-----------110-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xf8006057", - "mask": "0xfc00707f" - }, - "vwmul_vv": { - "encoding": "111011-----------010-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xec002057", - "mask": "0xfc00707f" - }, - "vwmul_vx": { - "encoding": "111011-----------110-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xec006057", - "mask": "0xfc00707f" - }, - "vwmulsu_vv": { - "encoding": "111010-----------010-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xe8002057", - "mask": "0xfc00707f" - }, - "vwmulsu_vx": { - "encoding": "111010-----------110-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xe8006057", - "mask": "0xfc00707f" - }, - "vwmulu_vv": { - "encoding": "111000-----------010-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xe0002057", - "mask": "0xfc00707f" - }, - "vwmulu_vx": { - "encoding": "111000-----------110-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xe0006057", - "mask": "0xfc00707f" - }, - "vwredsum_vs": { - "encoding": "110001-----------000-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xc4000057", - "mask": "0xfc00707f" - }, - "vwredsumu_vs": { - "encoding": "110000-----------000-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xc0000057", - "mask": "0xfc00707f" - }, - "vwsll_vi": { - "encoding": "110101-----------011-----1010111", - "variable_fields": ["vd", "vm", "vs2", "zimm5"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0xd4003057", - "mask": "0xfc00707f" - }, - "vwsll_vv": { - "encoding": "110101-----------000-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0xd4000057", - "mask": "0xfc00707f" - }, - "vwsll_vx": { - "encoding": "110101-----------100-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_zvbb", "rv_zvkn", "rv_zvks"], - "match": "0xd4004057", - "mask": "0xfc00707f" - }, - "vwsub_vv": { - "encoding": "110011-----------010-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xcc002057", - "mask": "0xfc00707f" - }, - "vwsub_vx": { - "encoding": "110011-----------110-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xcc006057", - "mask": "0xfc00707f" - }, - "vwsub_wv": { - "encoding": "110111-----------010-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xdc002057", - "mask": "0xfc00707f" - }, - "vwsub_wx": { - "encoding": "110111-----------110-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xdc006057", - "mask": "0xfc00707f" - }, - "vwsubu_vv": { - "encoding": "110010-----------010-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xc8002057", - "mask": "0xfc00707f" - }, - "vwsubu_vx": { - "encoding": "110010-----------110-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xc8006057", - "mask": "0xfc00707f" - }, - "vwsubu_wv": { - "encoding": "110110-----------010-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0xd8002057", - "mask": "0xfc00707f" - }, - "vwsubu_wx": { - "encoding": "110110-----------110-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0xd8006057", - "mask": "0xfc00707f" - }, - "vxor_vi": { - "encoding": "001011-----------011-----1010111", - "variable_fields": ["simm5", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x2c003057", - "mask": "0xfc00707f" - }, - "vxor_vv": { - "encoding": "001011-----------000-----1010111", - "variable_fields": ["vd", "vm", "vs1", "vs2"], - "extension": ["rv_v"], - "match": "0x2c000057", - "mask": "0xfc00707f" - }, - "vxor_vx": { - "encoding": "001011-----------100-----1010111", - "variable_fields": ["rs1", "vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x2c004057", - "mask": "0xfc00707f" - }, - "vzext_vf2": { - "encoding": "010010------00110010-----1010111", - "variable_fields": ["vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x48032057", - "mask": "0xfc0ff07f" - }, - "vzext_vf4": { - "encoding": "010010------00100010-----1010111", - "variable_fields": ["vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x48022057", - "mask": "0xfc0ff07f" - }, - "vzext_vf8": { - "encoding": "010010------00010010-----1010111", - "variable_fields": ["vd", "vm", "vs2"], - "extension": ["rv_v"], - "match": "0x48012057", - "mask": "0xfc0ff07f" - }, - "wfi": { - "encoding": "00010000010100000000000001110011", - "variable_fields": [], - "extension": ["rv_sm"], - "match": "0x10500073", - "mask": "0xffffffff" - }, - "wrs_nto": { - "encoding": "00000000110100000000000001110011", - "variable_fields": [], - "extension": ["rv_zawrs"], - "match": "0xd00073", - "mask": "0xffffffff" - }, - "wrs_sto": { - "encoding": "00000001110100000000000001110011", - "variable_fields": [], - "extension": ["rv_zawrs"], - "match": "0x1d00073", - "mask": "0xffffffff" - }, - "xnor": { - "encoding": "0100000----------100-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_b", "rv_zbb", "rv_zbkb", "rv_zk", "rv_zkn", "rv_zks"], - "match": "0x40004033", - "mask": "0xfe00707f" - }, - "xor": { - "encoding": "0000000----------100-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_i"], - "match": "0x4033", - "mask": "0xfe00707f" - }, - "xori": { - "encoding": "-----------------100-----0010011", - "variable_fields": ["imm12", "rd", "rs1"], - "extension": ["rv_i"], - "match": "0x4013", - "mask": "0x707f" - }, - "xperm4": { - "encoding": "0010100----------010-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zbkx"], - "match": "0x28002033", - "mask": "0xfe00707f" - }, - "xperm8": { - "encoding": "0010100----------100-----0110011", - "variable_fields": ["rd", "rs1", "rs2"], - "extension": ["rv_zbkx"], - "match": "0x28004033", - "mask": "0xfe00707f" - }, - "zext_h": { - "encoding": "000010000000-----100-----0111011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv64_b", "rv64_zbb"], - "match": "0x800403b", - "mask": "0xfff0707f" - }, - "zip": { - "encoding": "000010001111-----001-----0010011", - "variable_fields": ["rd", "rs1"], - "extension": ["rv32_zbkb"], - "match": "0x8f01013", - "mask": "0xfff0707f" - } -} From 7213ad0ebb30ce60020c18957a49026836e9d50d Mon Sep 17 00:00:00 2001 From: Afonso Oliveira Date: Wed, 19 Mar 2025 14:52:49 +0000 Subject: [PATCH 31/33] Bump RISC-V opcodes to latest head. I did a couple changes that impact comparison of outputs. Signed-off-by: Afonso Oliveira --- ext/riscv-opcodes | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ext/riscv-opcodes b/ext/riscv-opcodes index 9f70bcd37..9bd0acd77 160000 --- a/ext/riscv-opcodes +++ b/ext/riscv-opcodes @@ -1 +1 @@ -Subproject commit 9f70bcd37db27fddd34b4aa0524b8f19d31e9bb8 +Subproject commit 9bd0acd77198aa70186ed3e8cc2931bceff97899 From a844ac0dc064463ed44d7bd9eae16ca62ebecd12 Mon Sep 17 00:00:00 2001 From: Afonso Oliveira Date: Wed, 19 Mar 2025 18:03:37 +0000 Subject: [PATCH 32/33] Substitute immediate names from zimm to zimm5, due to update in riscv-opcodes. Signed-off-by: Afonso Oliveira --- backends/opcodes_maker/yaml_to_json.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/backends/opcodes_maker/yaml_to_json.py b/backends/opcodes_maker/yaml_to_json.py index 63442d044..d2754e3f3 100755 --- a/backends/opcodes_maker/yaml_to_json.py +++ b/backends/opcodes_maker/yaml_to_json.py @@ -111,7 +111,7 @@ def lookup_immediate_by_range( for key, field in fieldo.items(): if field.get("msb") == high and field.get("lsb") == low: # Handle standard immediates - if var_base == "imm": + if var_base == "imm" or var_base == "uimm": if "imm" in key and not key.startswith("c_") and key != "csr": candidates.append(key) # Handle compressed immediates @@ -146,7 +146,7 @@ def lookup_immediate_by_range( # Prefer "zimm" for imm fields if var_base == "imm" and "zimm" in candidates: - return "zimm" + return "zimm5" # Instruction-specific preferences lower_instr = instr_name.lower() @@ -509,7 +509,9 @@ def GetVariables(vars: List[Dict[str, str]], instr_name: str = "") -> List[str]: continue # Handle immediate fields - if var_name in ("imm", "simm", "zimm", "jimm") or var_name.startswith("c_"): + if var_name in ("imm", "simm", "zimm", "jimm", "uimm") or var_name.startswith( + "c_" + ): left_shift_flag = var.get("left_shift", 0) == 1 not_val = var.get("not", None) canon_names = canonical_immediate_names( From 72c7a7f5d018265f9e09ab28cb6f12b2055d7743 Mon Sep 17 00:00:00 2001 From: Afonso Oliveira Date: Wed, 19 Mar 2025 18:04:29 +0000 Subject: [PATCH 33/33] Enhance testing method to split differences. Added warnings instead of errors when UDB has more info than riscv-opcodes. Signed-off-by: Afonso Oliveira --- backends/opcodes_maker/compareOpcodes.py | 48 ++++++++++++++++++------ 1 file changed, 37 insertions(+), 11 deletions(-) diff --git a/backends/opcodes_maker/compareOpcodes.py b/backends/opcodes_maker/compareOpcodes.py index 09be073e6..99eb4f69f 100644 --- a/backends/opcodes_maker/compareOpcodes.py +++ b/backends/opcodes_maker/compareOpcodes.py @@ -1,5 +1,6 @@ import json import pytest +import warnings def load_json_file(filename): @@ -11,8 +12,12 @@ def load_json_file(filename): JSON1 = load_json_file("sorted_instr_dict.json") JSON2 = load_json_file("../../ext/riscv-opcodes/instr_dict.json") +# Create lowercase versions of the keys for comparison +JSON1_LOWER = {k.lower(): v for k, v in JSON1.items()} +JSON2_LOWER = {k.lower(): v for k, v in JSON2.items()} + # Compute the common instructions for parametrization. -COMMON_INSTRUCTIONS = sorted(list(set(JSON1.keys()) & set(JSON2.keys()))) +COMMON_INSTRUCTIONS = sorted(list(set(JSON1_LOWER.keys()) & set(JSON2_LOWER.keys()))) @pytest.fixture @@ -25,33 +30,54 @@ def json2(): return JSON2 -def test_instructions_presence(json1, json2): +@pytest.fixture +def json1_lower(): + return JSON1_LOWER + + +@pytest.fixture +def json2_lower(): + return JSON2_LOWER + + +def test_instructions_missing_in_riscv_opcodes(json1_lower, json2_lower): """ - Ensure that both JSON files contain the same instructions. + Check for instructions in sorted_instr_dict.json but missing in riscv-opcodes. + This will issue a warning instead of failing. """ - instructions1 = set(json1.keys()) - instructions2 = set(json2.keys()) + instructions1 = set(json1_lower.keys()) + instructions2 = set(json2_lower.keys()) missing_in_file2 = instructions1 - instructions2 + + if missing_in_file2: + warnings.warn(f"Instructions missing in riscv-opcodes: {missing_in_file2}") + + +def test_instructions_missing_in_sorted_dict(json1_lower, json2_lower): + """ + Check for instructions in riscv-opcodes but missing in sorted_instr_dict.json. + This will fail the test if any are found. + """ + instructions1 = set(json1_lower.keys()) + instructions2 = set(json2_lower.keys()) + missing_in_file1 = instructions2 - instructions1 - assert ( - missing_in_file2 == set() - ), f"Instructions missing in '../../ext/riscv-opcodes/instr_dict.json': {missing_in_file2}" assert ( missing_in_file1 == set() ), f"Instructions missing in 'sorted_instr_dict.json': {missing_in_file1}" @pytest.mark.parametrize("instr", COMMON_INSTRUCTIONS) -def test_variable_fields_exact(instr, json1, json2): +def test_variable_fields_exact(instr, json1_lower, json2_lower): """ For each common instruction, verify that both JSON files: - Have the key 'variable_fields' - Contain an identical set of variable_fields (order does not matter) """ - entry1 = json1[instr] - entry2 = json2[instr] + entry1 = json1_lower[instr] + entry2 = json2_lower[instr] assert ( "variable_fields" in entry1