LLDB
mainline
|
#include <Disassembler.h>
Public Member Functions | |
PseudoInstruction () | |
~PseudoInstruction () override | |
bool | DoesBranch () override |
bool | HasDelaySlot () override |
bool | IsLoad () override |
bool | IsAuthenticated () override |
void | CalculateMnemonicOperandsAndComment (const ExecutionContext *exe_ctx) override |
size_t | Decode (const Disassembler &disassembler, const DataExtractor &data, lldb::offset_t data_offset) override |
void | SetOpcode (size_t opcode_size, void *opcode_data) |
void | SetDescription (llvm::StringRef description) override |
![]() | |
Instruction (const Address &address, AddressClass addr_class=AddressClass::eInvalid) | |
virtual | ~Instruction () |
const Address & | GetAddress () const |
const char * | GetMnemonic (const ExecutionContext *exe_ctx) |
const char * | GetOperands (const ExecutionContext *exe_ctx) |
const char * | GetComment (const ExecutionContext *exe_ctx) |
virtual lldb::InstructionControlFlowKind | GetControlFlowKind (const ExecutionContext *exe_ctx) |
AddressClass | GetAddressClass () |
void | SetAddress (const Address &addr) |
virtual void | Dump (Stream *s, uint32_t max_opcode_byte_size, bool show_address, bool show_bytes, bool show_control_flow_kind, const ExecutionContext *exe_ctx, const SymbolContext *sym_ctx, const SymbolContext *prev_sym_ctx, const FormatEntity::Entry *disassembly_addr_format, size_t max_address_text_size) |
Dump the text representation of this Instruction to a Stream. More... | |
bool | CanSetBreakpoint () |
lldb::OptionValueSP | ReadArray (FILE *in_file, Stream *out_stream, OptionValue::Type data_type) |
lldb::OptionValueSP | ReadDictionary (FILE *in_file, Stream *out_stream) |
bool | DumpEmulation (const ArchSpec &arch) |
virtual bool | TestEmulation (Stream *stream, const char *test_file_name) |
bool | Emulate (const ArchSpec &arch, uint32_t evaluate_options, void *baton, EmulateInstruction::ReadMemoryCallback read_mem_callback, EmulateInstruction::WriteMemoryCallback write_mem_calback, EmulateInstruction::ReadRegisterCallback read_reg_callback, EmulateInstruction::WriteRegisterCallback write_reg_callback) |
const Opcode & | GetOpcode () const |
uint32_t | GetData (DataExtractor &data) |
virtual bool | ParseOperands (llvm::SmallVectorImpl< Operand > &operands) |
virtual bool | IsCall () |
Protected Member Functions | |
PseudoInstruction (const PseudoInstruction &)=delete | |
const PseudoInstruction & | operator= (const PseudoInstruction &)=delete |
![]() | |
void | CalculateMnemonicOperandsAndCommentIfNeeded (const ExecutionContext *exe_ctx) |
Protected Attributes | |
std::string | m_description |
![]() | |
Address | m_address |
Opcode | m_opcode |
std::string | m_opcode_name |
std::string | m_mnemonics |
std::string | m_comment |
bool | m_calculated_strings |
Additional Inherited Members | |
![]() | |
static const char * | GetNameForInstructionControlFlowKind (lldb::InstructionControlFlowKind instruction_control_flow_kind) |
Definition at line 349 of file Disassembler.h.
PseudoInstruction::PseudoInstruction | ( | ) |
Definition at line 1148 of file Disassembler.cpp.
References lldb_private::eUnknown.
|
overridedefault |
|
protecteddelete |
|
inlineoverridevirtual |
Implements lldb_private::Instruction.
Definition at line 363 of file Disassembler.h.
|
overridevirtual |
Implements lldb_private::Instruction.
Definition at line 1167 of file Disassembler.cpp.
References lldb_private::Opcode::GetByteSize(), and lldb_private::Instruction::m_opcode.
|
overridevirtual |
Implements lldb_private::Instruction.
Definition at line 1153 of file Disassembler.cpp.
|
overridevirtual |
Reimplemented from lldb_private::Instruction.
Definition at line 1158 of file Disassembler.cpp.
|
overridevirtual |
Implements lldb_private::Instruction.
Definition at line 1165 of file Disassembler.cpp.
|
overridevirtual |
Implements lldb_private::Instruction.
Definition at line 1163 of file Disassembler.cpp.
|
protecteddelete |
|
overridevirtual |
Reimplemented from lldb_private::Instruction.
Definition at line 1203 of file Disassembler.cpp.
References m_description, and string().
void PseudoInstruction::SetOpcode | ( | size_t | opcode_size, |
void * | opcode_data | ||
) |
Definition at line 1173 of file Disassembler.cpp.
References lldb::eByteOrderInvalid, lldb_private::Instruction::m_opcode, lldb_private::Opcode::SetOpcode16(), lldb_private::Opcode::SetOpcode32(), lldb_private::Opcode::SetOpcode64(), and lldb_private::Opcode::SetOpcode8().
|
protected |
Definition at line 378 of file Disassembler.h.
Referenced by SetDescription().