LLDB mainline
EmulationStateARM Class Reference

#include <EmulationStateARM.h>

Classes

struct  _sd_regs

Public Member Functions

 EmulationStateARM ()
virtual ~EmulationStateARM ()
bool StorePseudoRegisterValue (uint32_t reg_num, uint64_t value)
uint64_t ReadPseudoRegisterValue (uint32_t reg_num, bool &success)
bool StoreToPseudoAddress (lldb::addr_t p_address, uint32_t value)
uint32_t ReadFromPseudoAddress (lldb::addr_t p_address, bool &success)
void ClearPseudoRegisters ()
void ClearPseudoMemory ()
bool LoadStateFromDictionary (lldb_private::OptionValueDictionary *test_data)
bool CompareState (EmulationStateARM &other_state, lldb_private::Stream &out_stream)

Static Public Member Functions

static size_t ReadPseudoMemory (lldb_private::EmulateInstruction *instruction, void *baton, const lldb_private::EmulateInstruction::Context &context, lldb::addr_t addr, void *dst, size_t length)
static size_t WritePseudoMemory (lldb_private::EmulateInstruction *instruction, void *baton, const lldb_private::EmulateInstruction::Context &context, lldb::addr_t addr, const void *dst, size_t length)
static bool ReadPseudoRegister (lldb_private::EmulateInstruction *instruction, void *baton, const lldb_private::RegisterInfo *reg_info, lldb_private::RegisterValue &reg_value)
static bool WritePseudoRegister (lldb_private::EmulateInstruction *instruction, void *baton, const lldb_private::EmulateInstruction::Context &context, const lldb_private::RegisterInfo *reg_info, const lldb_private::RegisterValue &reg_value)

Private Member Functions

bool LoadRegistersStateFromDictionary (lldb_private::OptionValueDictionary *reg_dict, char kind, int first_reg, int num)
 EmulationStateARM (const EmulationStateARM &)=delete
const EmulationStateARMoperator= (const EmulationStateARM &)=delete

Private Attributes

uint32_t m_gpr [17] = {0}
struct EmulationStateARM::_sd_regs m_vfp_regs
std::map< lldb::addr_t, uint32_t > m_memory

Detailed Description

Definition at line 17 of file EmulationStateARM.h.

Constructor & Destructor Documentation

◆ EmulationStateARM() [1/2]

◆ ~EmulationStateARM()

EmulationStateARM::~EmulationStateARM ( )
virtualdefault

References EmulationStateARM().

◆ EmulationStateARM() [2/2]

EmulationStateARM::EmulationStateARM ( const EmulationStateARM & )
privatedelete

References EmulationStateARM().

Member Function Documentation

◆ ClearPseudoMemory()

void EmulationStateARM::ClearPseudoMemory ( )

Definition at line 83 of file EmulationStateARM.cpp.

References m_memory.

◆ ClearPseudoRegisters()

void EmulationStateARM::ClearPseudoRegisters ( )

Definition at line 72 of file EmulationStateARM.cpp.

References m_gpr, and m_vfp_regs.

Referenced by EmulationStateARM().

◆ CompareState()

◆ LoadRegistersStateFromDictionary()

bool EmulationStateARM::LoadRegistersStateFromDictionary ( lldb_private::OptionValueDictionary * reg_dict,
char kind,
int first_reg,
int num )
private

◆ LoadStateFromDictionary()

◆ operator=()

const EmulationStateARM & EmulationStateARM::operator= ( const EmulationStateARM & )
privatedelete

References EmulationStateARM().

◆ ReadFromPseudoAddress()

uint32_t EmulationStateARM::ReadFromPseudoAddress ( lldb::addr_t p_address,
bool & success )

Definition at line 91 of file EmulationStateARM.cpp.

References m_memory.

Referenced by ReadPseudoMemory().

◆ ReadPseudoMemory()

size_t EmulationStateARM::ReadPseudoMemory ( lldb_private::EmulateInstruction * instruction,
void * baton,
const lldb_private::EmulateInstruction::Context & context,
lldb::addr_t addr,
void * dst,
size_t length )
static

◆ ReadPseudoRegister()

◆ ReadPseudoRegisterValue()

uint64_t EmulationStateARM::ReadPseudoRegisterValue ( uint32_t reg_num,
bool & success )

Definition at line 49 of file EmulationStateARM.cpp.

References dwarf_cpsr, dwarf_d0, dwarf_d31, dwarf_r0, dwarf_s0, dwarf_s31, m_gpr, and m_vfp_regs.

Referenced by ReadPseudoRegister().

◆ StorePseudoRegisterValue()

bool EmulationStateARM::StorePseudoRegisterValue ( uint32_t reg_num,
uint64_t value )

◆ StoreToPseudoAddress()

bool EmulationStateARM::StoreToPseudoAddress ( lldb::addr_t p_address,
uint32_t value )

Definition at line 85 of file EmulationStateARM.cpp.

References m_memory.

Referenced by LoadStateFromDictionary(), and WritePseudoMemory().

◆ WritePseudoMemory()

size_t EmulationStateARM::WritePseudoMemory ( lldb_private::EmulateInstruction * instruction,
void * baton,
const lldb_private::EmulateInstruction::Context & context,
lldb::addr_t addr,
const void * dst,
size_t length )
static

◆ WritePseudoRegister()

Member Data Documentation

◆ m_gpr

uint32_t EmulationStateARM::m_gpr[17] = {0}
private

◆ m_memory

std::map<lldb::addr_t, uint32_t> EmulationStateARM::m_memory
private

◆ m_vfp_regs


The documentation for this class was generated from the following files: