Go to the documentation of this file.
9 #ifndef LLDB_SOURCE_PLUGINS_DISASSEMBLER_LLVMC_DISASSEMBLERLLVMC_H
10 #define LLDB_SOURCE_PLUGINS_DISASSEMBLER_LLVMC_DISASSEMBLERLLVMC_H
19 #include "llvm/ADT/Optional.h"
43 bool append,
bool data_from_file)
override;
52 const char *flavor)
override;
56 int OpInfo(uint64_t PC, uint64_t Offset, uint64_t Size,
int TagType,
59 const char *
SymbolLookup(uint64_t ReferenceValue, uint64_t *ReferenceType,
60 uint64_t ReferencePC,
const char **ReferenceName);
62 static int OpInfoCallback(
void *DisInfo, uint64_t PC, uint64_t Offset,
63 uint64_t Size,
int TagType,
void *TagBug);
66 uint64_t ReferenceValue,
67 uint64_t *ReferenceType,
69 const char **ReferenceName);
90 #endif // LLDB_SOURCE_PLUGINS_DISASSEMBLER_LLVMC_DISASSEMBLERLLVMC_H
InstructionLLVMC * m_inst
std::unique_ptr< MCDisasmInstance > m_disasm_up
int OpInfo(uint64_t PC, uint64_t Offset, uint64_t Size, int TagType, void *TagBug)
const char * SymbolLookup(uint64_t ReferenceValue, uint64_t *ReferenceType, uint64_t ReferencePC, const char **ReferenceName)
DisassemblerLLVMC(const lldb_private::ArchSpec &arch, const char *flavor)
~DisassemblerLLVMC() override
lldb::addr_t m_adrp_address
bool FlavorValidForArchSpec(const lldb_private::ArchSpec &arch, const char *flavor) override
static llvm::StringRef GetPluginNameStatic()
size_t DecodeInstructions(const lldb_private::Address &base_addr, const lldb_private::DataExtractor &data, lldb::offset_t data_offset, size_t num_instructions, bool append, bool data_from_file) override
std::unique_ptr< MCDisasmInstance > m_alternate_disasm_up
llvm::Optional< uint32_t > m_adrp_insn
llvm::StringRef GetPluginName() override
static lldb_private::Disassembler * CreateInstance(const lldb_private::ArchSpec &arch, const char *flavor)
static const char * SymbolLookupCallback(void *DisInfo, uint64_t ReferenceValue, uint64_t *ReferenceType, uint64_t ReferencePC, const char **ReferenceName)
static int OpInfoCallback(void *DisInfo, uint64_t PC, uint64_t Offset, uint64_t Size, int TagType, void *TagBug)
const lldb_private::ExecutionContext * m_exe_ctx