package rocket import Chisel._ import Node._ object Instructions { /* Automatically generated by parse-opcodes */ def JAL = Bits("b?????????????????????????1100111") def JALR = Bits("b??????????????????????0001101111") def BEQ = Bits("b??????????????????????0001100011") def BNE = Bits("b??????????????????????0011100011") def BLT = Bits("b??????????????????????1001100011") def BGE = Bits("b??????????????????????1011100011") def BLTU = Bits("b??????????????????????1101100011") def BGEU = Bits("b??????????????????????1111100011") def LUI = Bits("b?????????????????????????0110111") def AUIPC = Bits("b?????????????????????????0010111") def ADDI = Bits("b??????????????????????0000010011") def SLLI = Bits("b??????????00000??????00010010011") def SLTI = Bits("b??????????????????????0100010011") def SLTIU = Bits("b??????????????????????0110010011") def XORI = Bits("b??????????????????????1000010011") def SRLI = Bits("b??????????00000??????01010010011") def SRAI = Bits("b??????????00000??????11010010011") def ORI = Bits("b??????????????????????1100010011") def ANDI = Bits("b??????????????????????1110010011") def ADD = Bits("b???????????????00000000000110011") def SUB = Bits("b???????????????10000000000110011") def SLL = Bits("b???????????????00000000010110011") def SLT = Bits("b???????????????00000000100110011") def SLTU = Bits("b???????????????00000000110110011") def XOR = Bits("b???????????????00000001000110011") def SRL = Bits("b???????????????00000001010110011") def SRA = Bits("b???????????????10000001010110011") def OR = Bits("b???????????????00000001100110011") def AND = Bits("b???????????????00000001110110011") def MUL = Bits("b???????????????00000010000110011") def MULH = Bits("b???????????????00000010010110011") def MULHSU = Bits("b???????????????00000010100110011") def MULHU = Bits("b???????????????00000010110110011") def DIV = Bits("b???????????????00000011000110011") def DIVU = Bits("b???????????????00000011010110011") def REM = Bits("b???????????????00000011100110011") def REMU = Bits("b???????????????00000011110110011") def ADDIW = Bits("b??????????????????????0000011011") def SLLIW = Bits("b??????????000000?????00010011011") def SRLIW = Bits("b??????????000000?????01010011011") def SRAIW = Bits("b??????????000000?????11010011011") def ADDW = Bits("b???????????????00000000000111011") def SUBW = Bits("b???????????????10000000000111011") def SLLW = Bits("b???????????????00000000010111011") def SRLW = Bits("b???????????????00000001010111011") def SRAW = Bits("b???????????????10000001010111011") def MULW = Bits("b???????????????00000010000111011") def DIVW = Bits("b???????????????00000011000111011") def DIVUW = Bits("b???????????????00000011010111011") def REMW = Bits("b???????????????00000011100111011") def REMUW = Bits("b???????????????00000011110111011") def LB = Bits("b??????????????????????0000000011") def LH = Bits("b??????????????????????0010000011") def LW = Bits("b??????????????????????0100000011") def LD = Bits("b??????????????????????0110000011") def LBU = Bits("b??????????????????????1000000011") def LHU = Bits("b??????????????????????1010000011") def LWU = Bits("b??????????????????????1100000011") def SB = Bits("b??????????????????????0000100011") def SH = Bits("b??????????????????????0010100011") def SW = Bits("b??????????????????????0100100011") def SD = Bits("b??????????????????????0110100011") def AMOADD_W = Bits("b?????????????????000000100101011") def AMOXOR_W = Bits("b?????????????????001000100101011") def AMOOR_W = Bits("b?????????????????010000100101011") def AMOAND_W = Bits("b?????????????????011000100101011") def AMOMIN_W = Bits("b?????????????????100000100101011") def AMOMAX_W = Bits("b?????????????????101000100101011") def AMOMINU_W = Bits("b?????????????????110000100101011") def AMOMAXU_W = Bits("b?????????????????111000100101011") def AMOSWAP_W = Bits("b?????????????????000010100101011") def LR_W = Bits("b??????????00000??000100100101011") def SC_W = Bits("b?????????????????000110100101011") def AMOADD_D = Bits("b?????????????????000000110101011") def AMOXOR_D = Bits("b?????????????????001000110101011") def AMOOR_D = Bits("b?????????????????010000110101011") def AMOAND_D = Bits("b?????????????????011000110101011") def AMOMIN_D = Bits("b?????????????????100000110101011") def AMOMAX_D = Bits("b?????????????????101000110101011") def AMOMINU_D = Bits("b?????????????????110000110101011") def AMOMAXU_D = Bits("b?????????????????111000110101011") def AMOSWAP_D = Bits("b?????????????????000010110101011") def LR_D = Bits("b??????????00000??000100110101011") def SC_D = Bits("b?????????????????000110110101011") def FENCE = Bits("b???????????????????????000101111") def FENCE_I = Bits("b???????????????????????010101111") def FENCE_V_L = Bits("b???????????????????????100101111") def FENCE_V_G = Bits("b???????????????????????110101111") def SYSCALL = Bits("b00000000000000000000000001110111") def BREAK = Bits("b00000000000000000000000011110111") def RDCYCLE = Bits("b?????000000000000000001001110111") def RDTIME = Bits("b?????000000000000000011001110111") def RDINSTRET = Bits("b?????000000000000000101001110111") def MTPCR = Bits("b???????????????00000000001110011") def MFPCR = Bits("b??????????0000000000000011110011") def SETPCR = Bits("b??????????????????????0101110011") def CLEARPCR = Bits("b??????????????????????0111110011") def ERET = Bits("b00000000000000000000001001110011") def FADD_S = Bits("b???????????????00000???001010011") def FSUB_S = Bits("b???????????????00001???001010011") def FMUL_S = Bits("b???????????????00010???001010011") def FDIV_S = Bits("b???????????????00011???001010011") def FSQRT_S = Bits("b??????????0000000100???001010011") def FSGNJ_S = Bits("b???????????????00101000001010011") def FSGNJN_S = Bits("b???????????????00110000001010011") def FSGNJX_S = Bits("b???????????????00111000001010011") def FADD_D = Bits("b???????????????00000???011010011") def FSUB_D = Bits("b???????????????00001???011010011") def FMUL_D = Bits("b???????????????00010???011010011") def FDIV_D = Bits("b???????????????00011???011010011") def FSQRT_D = Bits("b??????????0000000100???011010011") def FSGNJ_D = Bits("b???????????????00101000011010011") def FSGNJN_D = Bits("b???????????????00110000011010011") def FSGNJX_D = Bits("b???????????????00111000011010011") def FCVT_L_S = Bits("b??????????0000001000???001010011") def FCVT_LU_S = Bits("b??????????0000001001???001010011") def FCVT_W_S = Bits("b??????????0000001010???001010011") def FCVT_WU_S = Bits("b??????????0000001011???001010011") def FCVT_L_D = Bits("b??????????0000001000???011010011") def FCVT_LU_D = Bits("b??????????0000001001???011010011") def FCVT_W_D = Bits("b??????????0000001010???011010011") def FCVT_WU_D = Bits("b??????????0000001011???011010011") def FCVT_S_L = Bits("b??????????0000001100???001010011") def FCVT_S_LU = Bits("b??????????0000001101???001010011") def FCVT_S_W = Bits("b??????????0000001110???001010011") def FCVT_S_WU = Bits("b??????????0000001111???001010011") def FCVT_D_L = Bits("b??????????0000001100???011010011") def FCVT_D_LU = Bits("b??????????0000001101???011010011") def FCVT_D_W = Bits("b??????????0000001110???011010011") def FCVT_D_WU = Bits("b??????????0000001111???011010011") def FCVT_S_D = Bits("b??????????0000010001???001010011") def FCVT_D_S = Bits("b??????????0000010000???011010011") def FEQ_S = Bits("b???????????????10101000001010011") def FLT_S = Bits("b???????????????10110000001010011") def FLE_S = Bits("b???????????????10111000001010011") def FEQ_D = Bits("b???????????????10101000011010011") def FLT_D = Bits("b???????????????10110000011010011") def FLE_D = Bits("b???????????????10111000011010011") def FMIN_S = Bits("b???????????????11000000001010011") def FMAX_S = Bits("b???????????????11001000001010011") def FMIN_D = Bits("b???????????????11000000011010011") def FMAX_D = Bits("b???????????????11001000011010011") def FMV_X_S = Bits("b??????????0000011100000001010011") def FMV_X_D = Bits("b??????????0000011100000011010011") def FRSR = Bits("b?????000000000011101000001010011") def FMV_S_X = Bits("b??????????0000011110000001010011") def FMV_D_X = Bits("b??????????0000011110000011010011") def FSSR = Bits("b??????????0000011111000001010011") def FLW = Bits("b??????????????????????0100000111") def FLD = Bits("b??????????????????????0110000111") def FSW = Bits("b??????????????????????0100100111") def FSD = Bits("b??????????????????????0110100111") def FMADD_S = Bits("b???????????????????????001000011") def FMSUB_S = Bits("b???????????????????????001000111") def FNMSUB_S = Bits("b???????????????????????001001011") def FNMADD_S = Bits("b???????????????????????001001111") def FMADD_D = Bits("b???????????????????????011000011") def FMSUB_D = Bits("b???????????????????????011000111") def FNMSUB_D = Bits("b???????????????????????011001011") def FNMADD_D = Bits("b???????????????????????011001111") /* Automatically generated by parse-opcodes */ def CUSTOM0 = Bits("b??????????????????????0000001011") def CUSTOM0_RS1 = Bits("b??????????????????????0100001011") def CUSTOM0_RS1_RS2 = Bits("b??????????????????????0110001011") def CUSTOM0_RD = Bits("b??????????????????????1000001011") def CUSTOM0_RD_RS1 = Bits("b??????????????????????1100001011") def CUSTOM0_RD_RS1_RS2 = Bits("b??????????????????????1110001011") def CUSTOM1 = Bits("b??????????????????????0000001111") def CUSTOM1_RS1 = Bits("b??????????????????????0100001111") def CUSTOM1_RS1_RS2 = Bits("b??????????????????????0110001111") def CUSTOM1_RD = Bits("b??????????????????????1000001111") def CUSTOM1_RD_RS1 = Bits("b??????????????????????1100001111") def CUSTOM1_RD_RS1_RS2 = Bits("b??????????????????????1110001111") def CUSTOM2 = Bits("b??????????????????????0001010111") def CUSTOM2_RS1 = Bits("b??????????????????????0101010111") def CUSTOM2_RS1_RS2 = Bits("b??????????????????????0111010111") def CUSTOM2_RD = Bits("b??????????????????????1001010111") def CUSTOM2_RD_RS1 = Bits("b??????????????????????1101010111") def CUSTOM2_RD_RS1_RS2 = Bits("b??????????????????????1111010111") def CUSTOM3 = Bits("b??????????????????????0001111011") def CUSTOM3_RS1 = Bits("b??????????????????????0101111011") def CUSTOM3_RS1_RS2 = Bits("b??????????????????????0111111011") def CUSTOM3_RD = Bits("b??????????????????????1001111011") def CUSTOM3_RD_RS1 = Bits("b??????????????????????1101111011") def CUSTOM3_RD_RS1_RS2 = Bits("b??????????????????????1111111011") }