LLVM: lib/Target/XCore/Disassembler/XCoreDisassembler.cpp File Reference (original) (raw)

This file is part of the XCore Disassembler. More...

Go to the source code of this file.

Macros
#define DEBUG_TYPE "xcore-disassembler"
Functions
static bool readInstruction16 (ArrayRef< uint8_t > Bytes, uint64_t Address, uint64_t &Size, uint16_t &Insn)
static bool readInstruction32 (ArrayRef< uint8_t > Bytes, uint64_t Address, uint64_t &Size, uint32_t &Insn)
static MCRegister getReg (const MCDisassembler *D, unsigned RC, unsigned RegNo)
static DecodeStatus DecodeGRRegsRegisterClass (MCInst &Inst, unsigned RegNo, uint64_t Address, const MCDisassembler *Decoder)
static DecodeStatus DecodeRRegsRegisterClass (MCInst &Inst, unsigned RegNo, uint64_t Address, const MCDisassembler *Decoder)
static DecodeStatus DecodeBitpOperand (MCInst &Inst, unsigned Val, uint64_t Address, const MCDisassembler *Decoder)
static DecodeStatus DecodeNegImmOperand (MCInst &Inst, unsigned Val, uint64_t Address, const MCDisassembler *Decoder)
static DecodeStatus Decode2OpInstruction (unsigned Insn, unsigned &Op1, unsigned &Op2)
static DecodeStatus Decode3OpInstruction (unsigned Insn, unsigned &Op1, unsigned &Op2, unsigned &Op3)
static DecodeStatus Decode3RInstruction (MCInst &Inst, unsigned Insn, uint64_t Address, const MCDisassembler *Decoder)
static DecodeStatus Decode3RImmInstruction (MCInst &Inst, unsigned Insn, uint64_t Address, const MCDisassembler *Decoder)
static DecodeStatus Decode2RUSInstruction (MCInst &Inst, unsigned Insn, uint64_t Address, const MCDisassembler *Decoder)
static DecodeStatus Decode2RUSBitpInstruction (MCInst &Inst, unsigned Insn, uint64_t Address, const MCDisassembler *Decoder)
static DecodeStatus DecodeL3RInstruction (MCInst &Inst, unsigned Insn, uint64_t Address, const MCDisassembler *Decoder)
static DecodeStatus DecodeL3RSrcDstInstruction (MCInst &Inst, unsigned Insn, uint64_t Address, const MCDisassembler *Decoder)
static DecodeStatus DecodeL2RUSInstruction (MCInst &Inst, unsigned Insn, uint64_t Address, const MCDisassembler *Decoder)
static DecodeStatus DecodeL2RUSBitpInstruction (MCInst &Inst, unsigned Insn, uint64_t Address, const MCDisassembler *Decoder)
static DecodeStatus Decode2OpInstructionFail (MCInst &Inst, unsigned Insn, uint64_t Address, const MCDisassembler *Decoder)
static DecodeStatus Decode2RInstruction (MCInst &Inst, unsigned Insn, uint64_t Address, const MCDisassembler *Decoder)
static DecodeStatus Decode2RImmInstruction (MCInst &Inst, unsigned Insn, uint64_t Address, const MCDisassembler *Decoder)
static DecodeStatus DecodeR2RInstruction (MCInst &Inst, unsigned Insn, uint64_t Address, const MCDisassembler *Decoder)
static DecodeStatus Decode2RSrcDstInstruction (MCInst &Inst, unsigned Insn, uint64_t Address, const MCDisassembler *Decoder)
static DecodeStatus DecodeRUSInstruction (MCInst &Inst, unsigned Insn, uint64_t Address, const MCDisassembler *Decoder)
static DecodeStatus DecodeRUSBitpInstruction (MCInst &Inst, unsigned Insn, uint64_t Address, const MCDisassembler *Decoder)
static DecodeStatus DecodeRUSSrcDstBitpInstruction (MCInst &Inst, unsigned Insn, uint64_t Address, const MCDisassembler *Decoder)
static DecodeStatus DecodeL2OpInstructionFail (MCInst &Inst, unsigned Insn, uint64_t Address, const MCDisassembler *Decoder)
static DecodeStatus DecodeL2RInstruction (MCInst &Inst, unsigned Insn, uint64_t Address, const MCDisassembler *Decoder)
static DecodeStatus DecodeLR2RInstruction (MCInst &Inst, unsigned Insn, uint64_t Address, const MCDisassembler *Decoder)
static DecodeStatus DecodeL6RInstruction (MCInst &Inst, unsigned Insn, uint64_t Address, const MCDisassembler *Decoder)
static DecodeStatus DecodeL5RInstructionFail (MCInst &Inst, unsigned Insn, uint64_t Address, const MCDisassembler *Decoder)
static DecodeStatus DecodeL5RInstruction (MCInst &Inst, unsigned Insn, uint64_t Address, const MCDisassembler *Decoder)
static DecodeStatus DecodeL4RSrcDstInstruction (MCInst &Inst, unsigned Insn, uint64_t Address, const MCDisassembler *Decoder)
static DecodeStatus DecodeL4RSrcDstSrcDstInstruction (MCInst &Inst, unsigned Insn, uint64_t Address, const MCDisassembler *Decoder)
static MCDisassembler * createXCoreDisassembler (const Target &T, const MCSubtargetInfo &STI, MCContext &Ctx)
LLVM_ABI LLVM_EXTERNAL_VISIBILITY void LLVMInitializeXCoreDisassembler ()

This file is part of the XCore Disassembler.

Definition in file XCoreDisassembler.cpp.

DEBUG_TYPE

#define DEBUG_TYPE "xcore-disassembler"

createXCoreDisassembler()

Decode2OpInstruction()

Definition at line 117 of file XCoreDisassembler.cpp.

References llvm::MCDisassembler::Fail, llvm::MCD::fieldFromInstruction(), and llvm::MCDisassembler::Success.

Referenced by Decode2RImmInstruction(), Decode2RInstruction(), Decode2RSrcDstInstruction(), DecodeL2RInstruction(), DecodeL5RInstruction(), DecodeLR2RInstruction(), DecodeR2RInstruction(), DecodeRUSBitpInstruction(), DecodeRUSInstruction(), and DecodeRUSSrcDstBitpInstruction().

Decode2OpInstructionFail()

Definition at line 260 of file XCoreDisassembler.cpp.

References Decode2RUSBitpInstruction(), Decode2RUSInstruction(), Decode3RImmInstruction(), Decode3RInstruction(), llvm::MCDisassembler::Fail, llvm::MCD::fieldFromInstruction(), and llvm::MCInst::setOpcode().

Referenced by Decode2RImmInstruction(), Decode2RInstruction(), Decode2RSrcDstInstruction(), DecodeR2RInstruction(), DecodeRUSBitpInstruction(), DecodeRUSInstruction(), and DecodeRUSSrcDstBitpInstruction().

Decode2RImmInstruction()

Decode2RInstruction()

Decode2RSrcDstInstruction()

Decode2RUSBitpInstruction()

Decode2RUSInstruction()

Decode3OpInstruction()

Definition at line 135 of file XCoreDisassembler.cpp.

References llvm::MCDisassembler::Fail, llvm::MCD::fieldFromInstruction(), and llvm::MCDisassembler::Success.

Referenced by Decode2RUSBitpInstruction(), Decode2RUSInstruction(), Decode3RImmInstruction(), Decode3RInstruction(), DecodeL2RUSBitpInstruction(), DecodeL2RUSInstruction(), DecodeL3RInstruction(), DecodeL3RSrcDstInstruction(), DecodeL4RSrcDstInstruction(), DecodeL4RSrcDstSrcDstInstruction(), DecodeL5RInstruction(), and DecodeL6RInstruction().

Decode3RImmInstruction()

Decode3RInstruction()

DecodeBitpOperand()

DecodeGRRegsRegisterClass()

Definition at line 77 of file XCoreDisassembler.cpp.

References llvm::MCInst::addOperand(), llvm::MCOperand::createReg(), llvm::MCDisassembler::Fail, getReg(), Reg, and llvm::MCDisassembler::Success.

Referenced by Decode2RImmInstruction(), Decode2RInstruction(), Decode2RSrcDstInstruction(), Decode2RUSBitpInstruction(), Decode2RUSInstruction(), Decode3RImmInstruction(), Decode3RInstruction(), DecodeL2RInstruction(), DecodeL2RUSBitpInstruction(), DecodeL2RUSInstruction(), DecodeL3RInstruction(), DecodeL3RSrcDstInstruction(), DecodeL4RSrcDstInstruction(), DecodeL4RSrcDstSrcDstInstruction(), DecodeL5RInstruction(), DecodeL6RInstruction(), DecodeLR2RInstruction(), DecodeR2RInstruction(), DecodeRUSBitpInstruction(), DecodeRUSInstruction(), and DecodeRUSSrcDstBitpInstruction().

DecodeL2OpInstructionFail()

DecodeL2RInstruction()

DecodeL2RUSBitpInstruction()

DecodeL2RUSInstruction()

DecodeL3RInstruction()

DecodeL3RSrcDstInstruction()

DecodeL4RSrcDstInstruction()

DecodeL4RSrcDstSrcDstInstruction()

DecodeL5RInstruction()

DecodeL5RInstructionFail()

DecodeL6RInstruction()

DecodeLR2RInstruction()

DecodeNegImmOperand()

DecodeR2RInstruction()

DecodeRRegsRegisterClass()

DecodeRUSBitpInstruction()

DecodeRUSInstruction()

DecodeRUSSrcDstBitpInstruction()

getReg()

LLVMInitializeXCoreDisassembler()

readInstruction16()

readInstruction32()