LLDB mainline
Classes | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | List of all members
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 ( )

Definition at line 23 of file EmulationStateARM.cpp.

References ClearPseudoRegisters().

◆ ~EmulationStateARM()

EmulationStateARM::~EmulationStateARM ( )
virtualdefault

◆ EmulationStateARM() [2/2]

EmulationStateARM::EmulationStateARM ( const EmulationStateARM )
privatedelete

Member Function Documentation

◆ ClearPseudoMemory()

void EmulationStateARM::ClearPseudoMemory ( )

Definition at line 83 of file EmulationStateARM.cpp.

References m_memory.

◆ ClearPseudoRegisters()

void EmulationStateARM::ClearPseudoRegisters ( )

◆ CompareState()

bool EmulationStateARM::CompareState ( EmulationStateARM other_state,
lldb_private::Stream out_stream 
)

◆ LoadRegistersStateFromDictionary()

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

◆ LoadStateFromDictionary()

bool EmulationStateARM::LoadStateFromDictionary ( lldb_private::OptionValueDictionary test_data)

◆ operator=()

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

◆ 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()

bool EmulationStateARM::ReadPseudoRegister ( lldb_private::EmulateInstruction instruction,
void *  baton,
const lldb_private::RegisterInfo reg_info,
lldb_private::RegisterValue reg_value 
)
static

◆ ReadPseudoRegisterValue()

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

◆ 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()

bool EmulationStateARM::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 
)
static

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

struct EmulationStateARM::_sd_regs EmulationStateARM::m_vfp_regs
private

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