|
void | c_nop () |
|
void | c_addi (Register rd, int8_t imm6) |
|
void | c_addi16sp (int16_t imm10) |
|
void | c_addi4spn (Register rd, int16_t uimm10) |
|
void | c_li (Register rd, int8_t imm6) |
|
void | c_lui (Register rd, int8_t imm6) |
|
void | c_slli (Register rd, uint8_t shamt6) |
|
void | c_lwsp (Register rd, uint16_t uimm8) |
|
void | c_jr (Register rs1) |
|
void | c_mv (Register rd, Register rs2) |
|
void | c_ebreak () |
|
void | c_jalr (Register rs1) |
|
void | c_j (int16_t imm12) |
|
void | c_add (Register rd, Register rs2) |
|
void | c_sub (Register rd, Register rs2) |
|
void | c_and (Register rd, Register rs2) |
|
void | c_xor (Register rd, Register rs2) |
|
void | c_or (Register rd, Register rs2) |
|
void | c_swsp (Register rs2, uint16_t uimm8) |
|
void | c_lw (Register rd, Register rs1, uint16_t uimm7) |
|
void | c_sw (Register rs2, Register rs1, uint16_t uimm7) |
|
void | c_bnez (Register rs1, int16_t imm9) |
|
void | c_beqz (Register rs1, int16_t imm9) |
|
void | c_srli (Register rs1, int8_t shamt6) |
|
void | c_srai (Register rs1, int8_t shamt6) |
|
void | c_andi (Register rs1, int8_t imm6) |
|
void | c_fld (FPURegister rd, Register rs1, uint16_t uimm8) |
|
void | c_fsd (FPURegister rs2, Register rs1, uint16_t uimm8) |
|
void | c_fldsp (FPURegister rd, uint16_t uimm9) |
|
void | c_fsdsp (FPURegister rs2, uint16_t uimm9) |
|
int | CJumpOffset (Instr instr) |
|
int16_t | cjump_offset (Label *L) |
|
int32_t | cbranch_offset (Label *L) |
|
void | c_j (Label *L) |
|
void | c_bnez (Register rs1, Label *L) |
|
void | c_beqz (Register rs1, Label *L) |
|
|
enum | OffsetSize : int {
kOffset21 = 21
, kOffset12 = 12
, kOffset20 = 20
, kOffset13 = 13
,
kOffset32 = 32
, kOffset11 = 11
, kOffset9 = 9
} |
|
virtual int32_t | branch_offset_helper (Label *L, OffsetSize bits)=0 |
|
virtual void | emit (Instr x)=0 |
|
virtual void | emit (ShortInstr x)=0 |
|
virtual void | emit (uint64_t x)=0 |
|
virtual void | ClearVectorunit ()=0 |
|
void | GenInstrR (uint8_t funct7, uint8_t funct3, BaseOpcode opcode, Register rd, Register rs1, Register rs2) |
|
void | GenInstrR (uint8_t funct7, uint8_t funct3, BaseOpcode opcode, FPURegister rd, FPURegister rs1, FPURegister rs2) |
|
void | GenInstrR (uint8_t funct7, uint8_t funct3, BaseOpcode opcode, Register rd, FPURegister rs1, Register rs2) |
|
void | GenInstrR (uint8_t funct7, uint8_t funct3, BaseOpcode opcode, FPURegister rd, Register rs1, Register rs2) |
|
void | GenInstrR (uint8_t funct7, uint8_t funct3, BaseOpcode opcode, FPURegister rd, FPURegister rs1, Register rs2) |
|
void | GenInstrR (uint8_t funct7, uint8_t funct3, BaseOpcode opcode, Register rd, FPURegister rs1, FPURegister rs2) |
|
void | GenInstrR4 (uint8_t funct2, BaseOpcode opcode, Register rd, Register rs1, Register rs2, Register rs3, FPURoundingMode frm) |
|
void | GenInstrR4 (uint8_t funct2, BaseOpcode opcode, FPURegister rd, FPURegister rs1, FPURegister rs2, FPURegister rs3, FPURoundingMode frm) |
|
void | GenInstrRAtomic (uint8_t funct5, bool aq, bool rl, uint8_t funct3, Register rd, Register rs1, Register rs2) |
|
void | GenInstrRFrm (uint8_t funct7, BaseOpcode opcode, Register rd, Register rs1, Register rs2, FPURoundingMode frm) |
|
void | GenInstrI (uint8_t funct3, BaseOpcode opcode, Register rd, Register rs1, int16_t imm12) |
|
void | GenInstrI (uint8_t funct3, BaseOpcode opcode, FPURegister rd, Register rs1, int16_t imm12) |
|
void | GenInstrIShift (uint8_t funct7, uint8_t funct3, BaseOpcode opcode, Register rd, Register rs1, uint8_t shamt) |
|
void | GenInstrIShiftW (uint8_t funct7, uint8_t funct3, BaseOpcode opcode, Register rd, Register rs1, uint8_t shamt) |
|
void | GenInstrS (uint8_t funct3, BaseOpcode opcode, Register rs1, Register rs2, int16_t imm12) |
|
void | GenInstrS (uint8_t funct3, BaseOpcode opcode, Register rs1, FPURegister rs2, int16_t imm12) |
|
void | GenInstrB (uint8_t funct3, BaseOpcode opcode, Register rs1, Register rs2, int16_t imm12) |
|
void | GenInstrU (BaseOpcode opcode, Register rd, int32_t imm20) |
|
void | GenInstrJ (BaseOpcode opcode, Register rd, int32_t imm20) |
|
void | GenInstrCR (uint8_t funct4, BaseOpcode opcode, Register rd, Register rs2) |
|
void | GenInstrCA (uint8_t funct6, BaseOpcode opcode, Register rd, uint8_t funct, Register rs2) |
|
void | GenInstrCI (uint8_t funct3, BaseOpcode opcode, Register rd, int8_t imm6) |
|
void | GenInstrCIU (uint8_t funct3, BaseOpcode opcode, Register rd, uint8_t uimm6) |
|
void | GenInstrCIU (uint8_t funct3, BaseOpcode opcode, FPURegister rd, uint8_t uimm6) |
|
void | GenInstrCIW (uint8_t funct3, BaseOpcode opcode, Register rd, uint8_t uimm8) |
|
void | GenInstrCSS (uint8_t funct3, BaseOpcode opcode, FPURegister rs2, uint8_t uimm6) |
|
void | GenInstrCSS (uint8_t funct3, BaseOpcode opcode, Register rs2, uint8_t uimm6) |
|
void | GenInstrCL (uint8_t funct3, BaseOpcode opcode, Register rd, Register rs1, uint8_t uimm5) |
|
void | GenInstrCL (uint8_t funct3, BaseOpcode opcode, FPURegister rd, Register rs1, uint8_t uimm5) |
|
void | GenInstrCS (uint8_t funct3, BaseOpcode opcode, Register rs2, Register rs1, uint8_t uimm5) |
|
void | GenInstrCS (uint8_t funct3, BaseOpcode opcode, FPURegister rs2, Register rs1, uint8_t uimm5) |
|
void | GenInstrCJ (uint8_t funct3, BaseOpcode opcode, uint16_t uint11) |
|
void | GenInstrCB (uint8_t funct3, BaseOpcode opcode, Register rs1, uint8_t uimm8) |
|
void | GenInstrCBA (uint8_t funct3, uint8_t funct2, BaseOpcode opcode, Register rs1, int8_t imm6) |
|
void | GenInstrBranchCC_rri (uint8_t funct3, Register rs1, Register rs2, int16_t imm12) |
|
void | GenInstrLoad_ri (uint8_t funct3, Register rd, Register rs1, int16_t imm12) |
|
void | GenInstrStore_rri (uint8_t funct3, Register rs1, Register rs2, int16_t imm12) |
|
void | GenInstrALU_ri (uint8_t funct3, Register rd, Register rs1, int16_t imm12) |
|
void | GenInstrShift_ri (bool arithshift, uint8_t funct3, Register rd, Register rs1, uint8_t shamt) |
|
void | GenInstrALU_rr (uint8_t funct7, uint8_t funct3, Register rd, Register rs1, Register rs2) |
|
void | GenInstrCSR_ir (uint8_t funct3, Register rd, ControlStatusReg csr, Register rs1) |
|
void | GenInstrCSR_ii (uint8_t funct3, Register rd, ControlStatusReg csr, uint8_t rs1) |
|
void | GenInstrShiftW_ri (bool arithshift, uint8_t funct3, Register rd, Register rs1, uint8_t shamt) |
|
void | GenInstrALUW_rr (uint8_t funct7, uint8_t funct3, Register rd, Register rs1, Register rs2) |
|
void | GenInstrPriv (uint8_t funct7, Register rs1, Register rs2) |
|
void | GenInstrLoadFP_ri (uint8_t funct3, FPURegister rd, Register rs1, int16_t imm12) |
|
void | GenInstrStoreFP_rri (uint8_t funct3, Register rs1, FPURegister rs2, int16_t imm12) |
|
void | GenInstrALUFP_rr (uint8_t funct7, uint8_t funct3, FPURegister rd, FPURegister rs1, FPURegister rs2) |
|
void | GenInstrALUFP_rr (uint8_t funct7, uint8_t funct3, FPURegister rd, Register rs1, Register rs2) |
|
void | GenInstrALUFP_rr (uint8_t funct7, uint8_t funct3, FPURegister rd, FPURegister rs1, Register rs2) |
|
void | GenInstrALUFP_rr (uint8_t funct7, uint8_t funct3, Register rd, FPURegister rs1, Register rs2) |
|
void | GenInstrALUFP_rr (uint8_t funct7, uint8_t funct3, Register rd, FPURegister rs1, FPURegister rs2) |
|
virtual void | BlockTrampolinePoolFor (int instructions)=0 |
|