9#ifndef LLDB_SOURCE_PLUGINS_INSTRUCTION_PPC64_EMULATEINSTRUCTIONPPC64_H
10#define LLDB_SOURCE_PLUGINS_INSTRUCTION_PPC64_EMULATEINSTRUCTIONPPC64_H
66 uint32_t reg_num)
override;
An architecture specification class.
bool SetTargetTriple(const ArchSpec &arch) override
llvm::StringRef GetPluginName() override
bool SupportsEmulatingInstructionsOfType(InstructionType inst_type) override
static EmulateInstruction * CreateInstance(const ArchSpec &arch, InstructionType inst_type)
std::optional< RegisterInfo > GetRegisterInfo(lldb::RegisterKind reg_kind, uint32_t reg_num) override
bool ReadInstruction() override
Opcode * GetOpcodeForInstruction(uint32_t opcode)
static llvm::StringRef GetPluginDescriptionStatic()
bool EvaluateInstruction(uint32_t evaluate_options) override
bool EmulateMFSPR(uint32_t opcode)
bool EmulateLD(uint32_t opcode)
bool CreateFunctionEntryUnwind(UnwindPlan &unwind_plan) override
bool TestEmulation(Stream &out_stream, ArchSpec &arch, OptionValueDictionary *test_data) override
bool EmulateADDI(uint32_t opcode)
static llvm::StringRef GetPluginNameStatic()
static bool SupportsEmulatingInstructionsOfTypeStatic(InstructionType inst_type)
bool EmulateOR(uint32_t opcode)
bool EmulateSTD(uint32_t opcode)
"lldb/Core/EmulateInstruction.h" A class that allows emulation of CPU opcodes.
A stream class that can stream formatted output to a file.
#define LLDB_INVALID_REGNUM
A class that represents a running process on the host machine.
InstructionType
Instruction types.
@ eInstructionTypePrologueEpilogue
@ eInstructionTypePCModifying
RegisterKind
Register numbering types.
bool(EmulateInstructionPPC64::* callback)(uint32_t opcode)