LLDB mainline
ABISysV_ppc.cpp File Reference
#include "ABISysV_ppc.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/TargetParser/Triple.h"
#include "lldb/Core/Module.h"
#include "lldb/Core/PluginManager.h"
#include "lldb/Core/Value.h"
#include "lldb/Symbol/UnwindPlan.h"
#include "lldb/Target/Process.h"
#include "lldb/Target/RegisterContext.h"
#include "lldb/Target/StackFrame.h"
#include "lldb/Target/Target.h"
#include "lldb/Target/Thread.h"
#include "lldb/Utility/ConstString.h"
#include "lldb/Utility/DataExtractor.h"
#include "lldb/Utility/LLDBLog.h"
#include "lldb/Utility/Log.h"
#include "lldb/Utility/RegisterValue.h"
#include "lldb/Utility/Status.h"
#include "lldb/ValueObject/ValueObjectConstResult.h"
#include "lldb/ValueObject/ValueObjectMemory.h"
#include "lldb/ValueObject/ValueObjectRegister.h"
#include <optional>

Go to the source code of this file.

Macros

#define DEFINE_GPR(reg, alt, kind1, kind2, kind3, kind4)

Enumerations

enum  dwarf_regnums {
  dwarf_r0 = 0 , dwarf_r1 , dwarf_r2 , dwarf_r3 ,
  dwarf_r4 , dwarf_r5 , dwarf_r6 , dwarf_r7 ,
  dwarf_r8 , dwarf_r9 , dwarf_r10 , dwarf_r11 ,
  dwarf_r12 , dwarf_r13 , dwarf_r14 , dwarf_r15 ,
  dwarf_r16 , dwarf_r17 , dwarf_r18 , dwarf_r19 ,
  dwarf_r20 , dwarf_r21 , dwarf_r22 , dwarf_r23 ,
  dwarf_r24 , dwarf_r25 , dwarf_r26 , dwarf_r27 ,
  dwarf_r28 , dwarf_r29 , dwarf_r30 , dwarf_r31 ,
  dwarf_f0 , dwarf_f1 , dwarf_f2 , dwarf_f3 ,
  dwarf_f4 , dwarf_f5 , dwarf_f6 , dwarf_f7 ,
  dwarf_f8 , dwarf_f9 , dwarf_f10 , dwarf_f11 ,
  dwarf_f12 , dwarf_f13 , dwarf_f14 , dwarf_f15 ,
  dwarf_f16 , dwarf_f17 , dwarf_f18 , dwarf_f19 ,
  dwarf_f20 , dwarf_f21 , dwarf_f22 , dwarf_f23 ,
  dwarf_f24 , dwarf_f25 , dwarf_f26 , dwarf_f27 ,
  dwarf_f28 , dwarf_f29 , dwarf_f30 , dwarf_f31 ,
  dwarf_cr , dwarf_fpscr , dwarf_xer = 101 , dwarf_lr = 108 ,
  dwarf_ctr , dwarf_pc , dwarf_cfa
}

Functions

static bool ReadIntegerArgument (Scalar &scalar, unsigned int bit_width, bool is_signed, Thread &thread, uint32_t *argument_register_ids, unsigned int &current_argument_register, addr_t &current_stack_argument)

Variables

static const RegisterInfo g_register_infos []
static const uint32_t k_num_register_infos = std::size(g_register_infos)

Macro Definition Documentation

◆ DEFINE_GPR

#define DEFINE_GPR ( reg,
alt,
kind1,
kind2,
kind3,
kind4 )
Value:
{ \
#reg, alt, 8, 0, eEncodingUint, eFormatHex, {kind1, kind2, kind3, kind4 }, \
nullptr, nullptr, nullptr, \
}

Definition at line 114 of file ABISysV_ppc.cpp.

Enumeration Type Documentation

◆ dwarf_regnums

Enumerator
dwarf_r0 
dwarf_r1 
dwarf_r2 
dwarf_r3 
dwarf_r4 
dwarf_r5 
dwarf_r6 
dwarf_r7 
dwarf_r8 
dwarf_r9 
dwarf_r10 
dwarf_r11 
dwarf_r12 
dwarf_r13 
dwarf_r14 
dwarf_r15 
dwarf_r16 
dwarf_r17 
dwarf_r18 
dwarf_r19 
dwarf_r20 
dwarf_r21 
dwarf_r22 
dwarf_r23 
dwarf_r24 
dwarf_r25 
dwarf_r26 
dwarf_r27 
dwarf_r28 
dwarf_r29 
dwarf_r30 
dwarf_r31 
dwarf_f0 
dwarf_f1 
dwarf_f2 
dwarf_f3 
dwarf_f4 
dwarf_f5 
dwarf_f6 
dwarf_f7 
dwarf_f8 
dwarf_f9 
dwarf_f10 
dwarf_f11 
dwarf_f12 
dwarf_f13 
dwarf_f14 
dwarf_f15 
dwarf_f16 
dwarf_f17 
dwarf_f18 
dwarf_f19 
dwarf_f20 
dwarf_f21 
dwarf_f22 
dwarf_f23 
dwarf_f24 
dwarf_f25 
dwarf_f26 
dwarf_f27 
dwarf_f28 
dwarf_f29 
dwarf_f30 
dwarf_f31 
dwarf_cr 
dwarf_fpscr 
dwarf_xer 
dwarf_lr 
dwarf_ctr 
dwarf_pc 
dwarf_cfa 

Definition at line 39 of file ABISysV_ppc.cpp.

Function Documentation

◆ ReadIntegerArgument()

bool ReadIntegerArgument ( Scalar & scalar,
unsigned int bit_width,
bool is_signed,
Thread & thread,
uint32_t * argument_register_ids,
unsigned int & current_argument_register,
addr_t & current_stack_argument )
static

Variable Documentation

◆ g_register_infos

const RegisterInfo g_register_infos[]
static

Definition at line 120 of file ABISysV_ppc.cpp.

◆ k_num_register_infos

const uint32_t k_num_register_infos = std::size(g_register_infos)
static

Definition at line 209 of file ABISysV_ppc.cpp.