LLDB mainline
Macros | Enumerations | Variables
RegisterContextDarwin_arm.cpp File Reference
#include "RegisterContextDarwin_arm.h"
#include "RegisterContextDarwinConstants.h"
#include "lldb/Utility/DataBufferHeap.h"
#include "lldb/Utility/DataExtractor.h"
#include "lldb/Utility/Endian.h"
#include "lldb/Utility/Log.h"
#include "lldb/Utility/RegisterValue.h"
#include "lldb/Utility/Scalar.h"
#include "llvm/Support/Compiler.h"
#include "Plugins/Process/Utility/InstructionUtils.h"
#include <memory>
#include "Utility/ARM_DWARF_Registers.h"
#include "Utility/ARM_ehframe_Registers.h"
#include "llvm/ADT/STLExtras.h"

Go to the source code of this file.

Macros

#define GPR_OFFSET(idx)   ((idx)*4)
 
#define FPU_OFFSET(idx)   ((idx)*4 + sizeof(RegisterContextDarwin_arm::GPR))
 
#define EXC_OFFSET(idx)
 
#define DBG_OFFSET(reg)
 
#define DEFINE_DBG(reg, i)
 
#define REG_CONTEXT_SIZE
 

Enumerations

enum  {
  gpr_r0 = 0 , gpr_r1 , gpr_r2 , gpr_r3 ,
  gpr_r4 , gpr_r5 , gpr_r6 , gpr_r7 ,
  gpr_r8 , gpr_r9 , gpr_r10 , gpr_r11 ,
  gpr_r12 , gpr_r13 , gpr_sp = gpr_r13 , gpr_r14 ,
  gpr_lr = gpr_r14 , gpr_r15 , gpr_pc = gpr_r15 , gpr_cpsr ,
  fpu_s0 , fpu_s1 , fpu_s2 , fpu_s3 ,
  fpu_s4 , fpu_s5 , fpu_s6 , fpu_s7 ,
  fpu_s8 , fpu_s9 , fpu_s10 , fpu_s11 ,
  fpu_s12 , fpu_s13 , fpu_s14 , fpu_s15 ,
  fpu_s16 , fpu_s17 , fpu_s18 , fpu_s19 ,
  fpu_s20 , fpu_s21 , fpu_s22 , fpu_s23 ,
  fpu_s24 , fpu_s25 , fpu_s26 , fpu_s27 ,
  fpu_s28 , fpu_s29 , fpu_s30 , fpu_s31 ,
  fpu_fpscr , exc_exception , exc_fsr , exc_far ,
  dbg_bvr0 , dbg_bvr1 , dbg_bvr2 , dbg_bvr3 ,
  dbg_bvr4 , dbg_bvr5 , dbg_bvr6 , dbg_bvr7 ,
  dbg_bvr8 , dbg_bvr9 , dbg_bvr10 , dbg_bvr11 ,
  dbg_bvr12 , dbg_bvr13 , dbg_bvr14 , dbg_bvr15 ,
  dbg_bcr0 , dbg_bcr1 , dbg_bcr2 , dbg_bcr3 ,
  dbg_bcr4 , dbg_bcr5 , dbg_bcr6 , dbg_bcr7 ,
  dbg_bcr8 , dbg_bcr9 , dbg_bcr10 , dbg_bcr11 ,
  dbg_bcr12 , dbg_bcr13 , dbg_bcr14 , dbg_bcr15 ,
  dbg_wvr0 , dbg_wvr1 , dbg_wvr2 , dbg_wvr3 ,
  dbg_wvr4 , dbg_wvr5 , dbg_wvr6 , dbg_wvr7 ,
  dbg_wvr8 , dbg_wvr9 , dbg_wvr10 , dbg_wvr11 ,
  dbg_wvr12 , dbg_wvr13 , dbg_wvr14 , dbg_wvr15 ,
  dbg_wcr0 , dbg_wcr1 , dbg_wcr2 , dbg_wcr3 ,
  dbg_wcr4 , dbg_wcr5 , dbg_wcr6 , dbg_wcr7 ,
  dbg_wcr8 , dbg_wcr9 , dbg_wcr10 , dbg_wcr11 ,
  dbg_wcr12 , dbg_wcr13 , dbg_wcr14 , dbg_wcr15 ,
  k_num_registers
}
 

Variables

static RegisterInfo g_register_infos []
 
static uint32_t g_gpr_regnums []
 
static uint32_t g_fpu_regnums []
 
static uint32_t g_exc_regnums []
 
static size_t k_num_register_infos = std::size(g_register_infos)
 
const size_t k_num_gpr_registers = std::size(g_gpr_regnums)
 
const size_t k_num_fpu_registers = std::size(g_fpu_regnums)
 
const size_t k_num_exc_registers = std::size(g_exc_regnums)
 
static const RegisterSet g_reg_sets []
 
const size_t k_num_regsets = std::size(g_reg_sets)
 

Macro Definition Documentation

◆ DBG_OFFSET

#define DBG_OFFSET (   reg)

◆ DEFINE_DBG

#define DEFINE_DBG (   reg,
 
)
Value:
#reg, NULL, sizeof(((RegisterContextDarwin_arm::DBG *) NULL)->reg[i]), \
DBG_OFFSET(reg[i]), eEncodingUint, eFormatHex, \
{LLDB_INVALID_REGNUM, LLDB_INVALID_REGNUM, \
LLDB_INVALID_REGNUM, LLDB_INVALID_REGNUM, \
LLDB_INVALID_REGNUM }, \
nullptr, nullptr, nullptr,

Definition at line 174 of file RegisterContextDarwin_arm.cpp.

◆ EXC_OFFSET

#define EXC_OFFSET (   idx)
Value:

Definition at line 165 of file RegisterContextDarwin_arm.cpp.

◆ FPU_OFFSET

#define FPU_OFFSET (   idx)    ((idx)*4 + sizeof(RegisterContextDarwin_arm::GPR))

Definition at line 164 of file RegisterContextDarwin_arm.cpp.

◆ GPR_OFFSET

#define GPR_OFFSET (   idx)    ((idx)*4)

Definition at line 163 of file RegisterContextDarwin_arm.cpp.

◆ REG_CONTEXT_SIZE

#define REG_CONTEXT_SIZE

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
gpr_r0 
gpr_r1 
gpr_r2 
gpr_r3 
gpr_r4 
gpr_r5 
gpr_r6 
gpr_r7 
gpr_r8 
gpr_r9 
gpr_r10 
gpr_r11 
gpr_r12 
gpr_r13 
gpr_sp 
gpr_r14 
gpr_lr 
gpr_r15 
gpr_pc 
gpr_cpsr 
fpu_s0 
fpu_s1 
fpu_s2 
fpu_s3 
fpu_s4 
fpu_s5 
fpu_s6 
fpu_s7 
fpu_s8 
fpu_s9 
fpu_s10 
fpu_s11 
fpu_s12 
fpu_s13 
fpu_s14 
fpu_s15 
fpu_s16 
fpu_s17 
fpu_s18 
fpu_s19 
fpu_s20 
fpu_s21 
fpu_s22 
fpu_s23 
fpu_s24 
fpu_s25 
fpu_s26 
fpu_s27 
fpu_s28 
fpu_s29 
fpu_s30 
fpu_s31 
fpu_fpscr 
exc_exception 
exc_fsr 
exc_far 
dbg_bvr0 
dbg_bvr1 
dbg_bvr2 
dbg_bvr3 
dbg_bvr4 
dbg_bvr5 
dbg_bvr6 
dbg_bvr7 
dbg_bvr8 
dbg_bvr9 
dbg_bvr10 
dbg_bvr11 
dbg_bvr12 
dbg_bvr13 
dbg_bvr14 
dbg_bvr15 
dbg_bcr0 
dbg_bcr1 
dbg_bcr2 
dbg_bcr3 
dbg_bcr4 
dbg_bcr5 
dbg_bcr6 
dbg_bcr7 
dbg_bcr8 
dbg_bcr9 
dbg_bcr10 
dbg_bcr11 
dbg_bcr12 
dbg_bcr13 
dbg_bcr14 
dbg_bcr15 
dbg_wvr0 
dbg_wvr1 
dbg_wvr2 
dbg_wvr3 
dbg_wvr4 
dbg_wvr5 
dbg_wvr6 
dbg_wvr7 
dbg_wvr8 
dbg_wvr9 
dbg_wvr10 
dbg_wvr11 
dbg_wvr12 
dbg_wvr13 
dbg_wvr14 
dbg_wvr15 
dbg_wcr0 
dbg_wcr1 
dbg_wcr2 
dbg_wcr3 
dbg_wcr4 
dbg_wcr5 
dbg_wcr6 
dbg_wcr7 
dbg_wcr8 
dbg_wcr9 
dbg_wcr10 
dbg_wcr11 
dbg_wcr12 
dbg_wcr13 
dbg_wcr14 
dbg_wcr15 
k_num_registers 

Definition at line 32 of file RegisterContextDarwin_arm.cpp.

Variable Documentation

◆ g_exc_regnums

uint32_t g_exc_regnums[]
static
Initial value:

Definition at line 908 of file RegisterContextDarwin_arm.cpp.

◆ g_fpu_regnums

uint32_t g_fpu_regnums[]
static
Initial value:
= {
}

Definition at line 898 of file RegisterContextDarwin_arm.cpp.

◆ g_gpr_regnums

uint32_t g_gpr_regnums[]
static

◆ g_reg_sets

const RegisterSet g_reg_sets[]
static
Initial value:
= {
{
"General Purpose Registers", "gpr", k_num_gpr_registers, g_gpr_regnums,
},
{"Floating Point Registers", "fpu", k_num_fpu_registers, g_fpu_regnums},
{"Exception State Registers", "exc", k_num_exc_registers, g_exc_regnums}}
static uint32_t g_fpu_regnums[]
static uint32_t g_gpr_regnums[]
static uint32_t g_exc_regnums[]
const size_t k_num_gpr_registers
const size_t k_num_fpu_registers
const size_t k_num_exc_registers

Definition at line 960 of file RegisterContextDarwin_arm.cpp.

◆ g_register_infos

RegisterInfo g_register_infos[]
static

Definition at line 186 of file RegisterContextDarwin_arm.cpp.

◆ k_num_exc_registers

const size_t k_num_exc_registers = std::size(g_exc_regnums)

Definition at line 955 of file RegisterContextDarwin_arm.cpp.

◆ k_num_fpu_registers

const size_t k_num_fpu_registers = std::size(g_fpu_regnums)

Definition at line 954 of file RegisterContextDarwin_arm.cpp.

◆ k_num_gpr_registers

const size_t k_num_gpr_registers = std::size(g_gpr_regnums)

Definition at line 953 of file RegisterContextDarwin_arm.cpp.

Referenced by RegisterContextDarwin_i386::LogGPR().

◆ k_num_register_infos

size_t k_num_register_infos = std::size(g_register_infos)
static

Definition at line 912 of file RegisterContextDarwin_arm.cpp.

◆ k_num_regsets

const size_t k_num_regsets = std::size(g_reg_sets)