LLVM: llvm::LanaiDisassembler Class Reference (original) (raw)
#include "[Target/Lanai/Disassembler/LanaiDisassembler.h](LanaiDisassembler%5F8h%5Fsource.html)"
Inheritance diagram for llvm::LanaiDisassembler:
| Public Member Functions | |
|---|---|
| LanaiDisassembler (const MCSubtargetInfo &STI, MCContext &Ctx) | |
| ~LanaiDisassembler () override=default | |
| MCDisassembler::DecodeStatus | getInstruction (MCInst &Instr, uint64_t &Size, ArrayRef< uint8_t > Bytes, uint64_t Address, raw_ostream &CStream) const override |
| Returns the disassembly of a single instruction. | |
| Public Member Functions inherited from llvm::MCDisassembler | |
| MCDisassembler (const MCSubtargetInfo &STI, MCContext &Ctx) | |
| virtual | ~MCDisassembler () |
| virtual DecodeStatus | getInstructionBundle (MCInst &Instr, uint64_t &Size, ArrayRef< uint8_t > Bytes, uint64_t Address, raw_ostream &CStream) const |
| Returns the disassembly of an instruction bundle for VLIW architectures like Hexagon. | |
| virtual Expected< bool > | onSymbolStart (SymbolInfoTy &Symbol, uint64_t &Size, ArrayRef< uint8_t > Bytes, uint64_t Address) const |
| Used to perform separate target specific disassembly for a particular symbol. | |
| virtual uint64_t | suggestBytesToSkip (ArrayRef< uint8_t > Bytes, uint64_t Address) const |
| Suggest a distance to skip in a buffer of data to find the next place to look for the start of an instruction. | |
| bool | tryAddingSymbolicOperand (MCInst &Inst, int64_t Value, uint64_t Address, bool IsBranch, uint64_t Offset, uint64_t OpSize, uint64_t InstSize) const |
| void | tryAddingPcLoadReferenceComment (int64_t Value, uint64_t Address) const |
| void | setSymbolizer (std::unique_ptr< MCSymbolizer > Symzer) |
| Set Symzer as the current symbolizer. | |
| MCContext & | getContext () const |
| const MCSubtargetInfo & | getSubtargetInfo () const |
| virtual void | setABIVersion (unsigned Version) |
| ELF-specific, set the ABI version from the object header. |
| Additional Inherited Members | |
|---|---|
| Public Types inherited from llvm::MCDisassembler | |
| enum | DecodeStatus { Fail = 0 , SoftFail = 1 , Success = 3 } |
| Ternary decode status. More... | |
| Public Attributes inherited from llvm::MCDisassembler | |
| raw_ostream * | CommentStream = nullptr |
| Protected Attributes inherited from llvm::MCDisassembler | |
| const MCSubtargetInfo & | STI |
| std::unique_ptr< MCSymbolizer > | Symbolizer |
Detailed Description
Definition at line 20 of file LanaiDisassembler.h.
Constructor & Destructor Documentation
◆ ~LanaiDisassembler()
| llvm::LanaiDisassembler::~LanaiDisassembler ( ) | overridedefault |
|---|
Member Function Documentation
◆ getInstruction()
Returns the disassembly of a single instruction.
Parameters
| Instr | - An MCInst to populate with the contents of the instruction. |
|---|---|
| Size | - A value to populate with the size of the instruction, or the number of bytes consumed while attempting to decode an invalid instruction. |
| Address | - The address, in the memory space of region, of the first byte of the instruction. |
| Bytes | - A reference to the actual bytes of the instruction. |
| CStream | - The stream to print comments and annotations on. |
Returns
- MCDisassembler::Success if the instruction is valid, MCDisassembler::SoftFail if the instruction was disassemblable but invalid, MCDisassembler::Fail if the instruction was invalid.
Implements llvm::MCDisassembler.
Definition at line 205 of file LanaiDisassembler.cpp.
References llvm::Address, llvm::MCDisassembler::Fail, PostOperandDecodeAdjust(), readInstruction32(), Size, and llvm::MCDisassembler::STI.
The documentation for this class was generated from the following files:
- lib/Target/Lanai/Disassembler/LanaiDisassembler.h
- lib/Target/Lanai/Disassembler/LanaiDisassembler.cpp