LLDB mainline
|
Public Member Functions | |
~MCDisasmInstance ()=default | |
bool | GetMCInst (const uint8_t *opcode_data, size_t opcode_data_len, lldb::addr_t pc, llvm::MCInst &mc_inst, uint64_t &size) const |
void | PrintMCInst (llvm::MCInst &mc_inst, lldb::addr_t pc, std::string &inst_string, std::string &comments_string) |
void | SetStyle (bool use_hex_immed, HexImmediateStyle hex_style) |
void | SetUseColor (bool use_color) |
bool | GetUseColor () const |
bool | CanBranch (llvm::MCInst &mc_inst) const |
bool | HasDelaySlot (llvm::MCInst &mc_inst) const |
bool | IsCall (llvm::MCInst &mc_inst) const |
bool | IsLoad (llvm::MCInst &mc_inst) const |
bool | IsAuthenticated (llvm::MCInst &mc_inst) const |
Static Public Member Functions | |
static std::unique_ptr< MCDisasmInstance > | Create (const char *triple, const char *cpu, const char *features_str, unsigned flavor, DisassemblerLLVMC &owner) |
Private Member Functions | |
MCDisasmInstance (std::unique_ptr< llvm::MCInstrInfo > &&instr_info_up, std::unique_ptr< llvm::MCRegisterInfo > &®_info_up, std::unique_ptr< llvm::MCSubtargetInfo > &&subtarget_info_up, std::unique_ptr< llvm::MCAsmInfo > &&asm_info_up, std::unique_ptr< llvm::MCContext > &&context_up, std::unique_ptr< llvm::MCDisassembler > &&disasm_up, std::unique_ptr< llvm::MCInstPrinter > &&instr_printer_up, std::unique_ptr< llvm::MCInstrAnalysis > &&instr_analysis_up) |
Private Attributes | |
std::unique_ptr< llvm::MCInstrInfo > | m_instr_info_up |
std::unique_ptr< llvm::MCRegisterInfo > | m_reg_info_up |
std::unique_ptr< llvm::MCSubtargetInfo > | m_subtarget_info_up |
std::unique_ptr< llvm::MCAsmInfo > | m_asm_info_up |
std::unique_ptr< llvm::MCContext > | m_context_up |
std::unique_ptr< llvm::MCDisassembler > | m_disasm_up |
std::unique_ptr< llvm::MCInstPrinter > | m_instr_printer_up |
std::unique_ptr< llvm::MCInstrAnalysis > | m_instr_analysis_up |
Definition at line 54 of file DisassemblerLLVMC.cpp.
|
default |
References CanBranch(), GetMCInst(), GetUseColor(), HasDelaySlot(), IsAuthenticated(), IsCall(), IsLoad(), MCDisasmInstance(), pc, PrintMCInst(), SetStyle(), and SetUseColor().
|
private |
Definition at line 1333 of file DisassemblerLLVMC.cpp.
References m_asm_info_up, m_context_up, m_disasm_up, m_instr_analysis_up, m_instr_info_up, m_instr_printer_up, m_reg_info_up, and m_subtarget_info_up.
Referenced by Create(), and ~MCDisasmInstance().
bool DisassemblerLLVMC::MCDisasmInstance::CanBranch | ( | llvm::MCInst & | mc_inst | ) | const |
Definition at line 1412 of file DisassemblerLLVMC.cpp.
References m_instr_analysis_up, m_instr_info_up, and m_reg_info_up.
Referenced by InstructionLLVMC::VisitInstruction(), and ~MCDisasmInstance().
|
static |
Definition at line 1252 of file DisassemblerLLVMC.cpp.
References DisassemblerLLVMC::DisassemblerLLVMC(), MCDisasmInstance(), and DisassemblerLLVMC::SymbolLookupCallback().
bool DisassemblerLLVMC::MCDisasmInstance::GetMCInst | ( | const uint8_t * | opcode_data, |
size_t | opcode_data_len, | ||
lldb::addr_t | pc, | ||
llvm::MCInst & | mc_inst, | ||
uint64_t & | size ) const |
Definition at line 1353 of file DisassemblerLLVMC.cpp.
References m_disasm_up, and pc.
Referenced by InstructionLLVMC::CalculateMnemonicOperandsAndComment(), InstructionLLVMC::Decode(), InstructionLLVMC::VisitInstruction(), and ~MCDisasmInstance().
bool DisassemblerLLVMC::MCDisasmInstance::GetUseColor | ( | ) | const |
Definition at line 1408 of file DisassemblerLLVMC.cpp.
References m_instr_printer_up.
Referenced by InstructionLLVMC::CalculateMnemonicOperandsAndComment(), and ~MCDisasmInstance().
bool DisassemblerLLVMC::MCDisasmInstance::HasDelaySlot | ( | llvm::MCInst & | mc_inst | ) | const |
Definition at line 1420 of file DisassemblerLLVMC.cpp.
References m_instr_info_up.
Referenced by InstructionLLVMC::VisitInstruction(), and ~MCDisasmInstance().
bool DisassemblerLLVMC::MCDisasmInstance::IsAuthenticated | ( | llvm::MCInst & | mc_inst | ) | const |
Definition at line 1435 of file DisassemblerLLVMC.cpp.
References m_instr_info_up.
Referenced by InstructionLLVMC::VisitInstruction(), and ~MCDisasmInstance().
bool DisassemblerLLVMC::MCDisasmInstance::IsCall | ( | llvm::MCInst & | mc_inst | ) | const |
Definition at line 1425 of file DisassemblerLLVMC.cpp.
References m_instr_analysis_up, and m_instr_info_up.
Referenced by InstructionLLVMC::VisitInstruction(), and ~MCDisasmInstance().
bool DisassemblerLLVMC::MCDisasmInstance::IsLoad | ( | llvm::MCInst & | mc_inst | ) | const |
Definition at line 1431 of file DisassemblerLLVMC.cpp.
References m_instr_info_up.
Referenced by InstructionLLVMC::VisitInstruction(), and ~MCDisasmInstance().
void DisassemblerLLVMC::MCDisasmInstance::PrintMCInst | ( | llvm::MCInst & | mc_inst, |
lldb::addr_t | pc, | ||
std::string & | inst_string, | ||
std::string & | comments_string ) |
Definition at line 1368 of file DisassemblerLLVMC.cpp.
References m_instr_printer_up, m_subtarget_info_up, and pc.
Referenced by InstructionLLVMC::CalculateMnemonicOperandsAndComment(), and ~MCDisasmInstance().
void DisassemblerLLVMC::MCDisasmInstance::SetStyle | ( | bool | use_hex_immed, |
HexImmediateStyle | hex_style ) |
Definition at line 1391 of file DisassemblerLLVMC.cpp.
References lldb_private::Disassembler::eHexStyleAsm, lldb_private::Disassembler::eHexStyleC, and m_instr_printer_up.
Referenced by InstructionLLVMC::CalculateMnemonicOperandsAndComment(), and ~MCDisasmInstance().
void DisassemblerLLVMC::MCDisasmInstance::SetUseColor | ( | bool | use_color | ) |
Definition at line 1404 of file DisassemblerLLVMC.cpp.
References m_instr_printer_up.
Referenced by InstructionLLVMC::CalculateMnemonicOperandsAndComment(), and ~MCDisasmInstance().
|
private |
Definition at line 88 of file DisassemblerLLVMC.cpp.
Referenced by MCDisasmInstance().
|
private |
Definition at line 89 of file DisassemblerLLVMC.cpp.
Referenced by MCDisasmInstance().
|
private |
Definition at line 90 of file DisassemblerLLVMC.cpp.
Referenced by GetMCInst(), and MCDisasmInstance().
|
private |
Definition at line 92 of file DisassemblerLLVMC.cpp.
Referenced by CanBranch(), IsCall(), and MCDisasmInstance().
|
private |
Definition at line 85 of file DisassemblerLLVMC.cpp.
Referenced by CanBranch(), HasDelaySlot(), IsAuthenticated(), IsCall(), IsLoad(), and MCDisasmInstance().
|
private |
Definition at line 91 of file DisassemblerLLVMC.cpp.
Referenced by GetUseColor(), MCDisasmInstance(), PrintMCInst(), SetStyle(), and SetUseColor().
|
private |
Definition at line 86 of file DisassemblerLLVMC.cpp.
Referenced by CanBranch(), and MCDisasmInstance().
|
private |
Definition at line 87 of file DisassemblerLLVMC.cpp.
Referenced by MCDisasmInstance(), and PrintMCInst().