LLDB  mainline
Public Types | Public Member Functions | List of all members
lldb_private::UnwindPlan::Row::RegisterLocation Class Reference

#include <UnwindPlan.h>

Collaboration diagram for lldb_private::UnwindPlan::Row::RegisterLocation:
Collaboration graph
[legend]

Public Types

enum  RestoreType {
  unspecified, undefined, same, atCFAPlusOffset,
  isCFAPlusOffset, atAFAPlusOffset, isAFAPlusOffset, inOtherRegister,
  atDWARFExpression, isDWARFExpression
}
 

Public Member Functions

 RegisterLocation ()
 
bool operator== (const RegisterLocation &rhs) const
 
bool operator!= (const RegisterLocation &rhs) const
 
void SetUnspecified ()
 
void SetUndefined ()
 
void SetSame ()
 
bool IsSame () const
 
bool IsUnspecified () const
 
bool IsUndefined () const
 
bool IsCFAPlusOffset () const
 
bool IsAtCFAPlusOffset () const
 
bool IsAFAPlusOffset () const
 
bool IsAtAFAPlusOffset () const
 
bool IsInOtherRegister () const
 
bool IsAtDWARFExpression () const
 
bool IsDWARFExpression () const
 
void SetAtCFAPlusOffset (int32_t offset)
 
void SetIsCFAPlusOffset (int32_t offset)
 
void SetAtAFAPlusOffset (int32_t offset)
 
void SetIsAFAPlusOffset (int32_t offset)
 
void SetInRegister (uint32_t reg_num)
 
uint32_t GetRegisterNumber () const
 
RestoreType GetLocationType () const
 
int32_t GetOffset () const
 
void GetDWARFExpr (const uint8_t **opcodes, uint16_t &len) const
 
void SetAtDWARFExpression (const uint8_t *opcodes, uint32_t len)
 
void SetIsDWARFExpression (const uint8_t *opcodes, uint32_t len)
 
const uint8_t * GetDWARFExpressionBytes ()
 
int GetDWARFExpressionLength ()
 
void Dump (Stream &s, const UnwindPlan *unwind_plan, const UnwindPlan::Row *row, Thread *thread, bool verbose) const
 

Detailed Description

Definition at line 57 of file UnwindPlan.h.

Member Enumeration Documentation

◆ RestoreType

Enumerator
unspecified 
undefined 
same 
atCFAPlusOffset 
isCFAPlusOffset 
atAFAPlusOffset 
isAFAPlusOffset 
inOtherRegister 
atDWARFExpression 
isDWARFExpression 

Definition at line 59 of file UnwindPlan.h.

Constructor & Destructor Documentation

◆ RegisterLocation()

lldb_private::UnwindPlan::Row::RegisterLocation::RegisterLocation ( )
inline

Definition at line 74 of file UnwindPlan.h.

References operator==().

Member Function Documentation

◆ Dump()

void UnwindPlan::Row::RegisterLocation::Dump ( Stream s,
const UnwindPlan unwind_plan,
const UnwindPlan::Row row,
Thread thread,
bool  verbose 
) const

◆ GetDWARFExpr()

void lldb_private::UnwindPlan::Row::RegisterLocation::GetDWARFExpr ( const uint8_t **  opcodes,
uint16_t len 
) const
inline

◆ GetDWARFExpressionBytes()

const uint8_t* lldb_private::UnwindPlan::Row::RegisterLocation::GetDWARFExpressionBytes ( )
inline

◆ GetDWARFExpressionLength()

int lldb_private::UnwindPlan::Row::RegisterLocation::GetDWARFExpressionLength ( )
inline

◆ GetLocationType()

RestoreType lldb_private::UnwindPlan::Row::RegisterLocation::GetLocationType ( ) const
inline

Definition at line 139 of file UnwindPlan.h.

◆ GetOffset()

int32_t lldb_private::UnwindPlan::Row::RegisterLocation::GetOffset ( ) const
inline

◆ GetRegisterNumber()

uint32_t lldb_private::UnwindPlan::Row::RegisterLocation::GetRegisterNumber ( ) const
inline

◆ IsAFAPlusOffset()

bool lldb_private::UnwindPlan::Row::RegisterLocation::IsAFAPlusOffset ( ) const
inline

Definition at line 98 of file UnwindPlan.h.

References isAFAPlusOffset.

Referenced by lldb_private::RegisterContextLLDB::IsTrapHandlerFrame().

◆ IsAtAFAPlusOffset()

bool lldb_private::UnwindPlan::Row::RegisterLocation::IsAtAFAPlusOffset ( ) const
inline

Definition at line 100 of file UnwindPlan.h.

References atAFAPlusOffset.

Referenced by lldb_private::RegisterContextLLDB::IsTrapHandlerFrame().

◆ IsAtCFAPlusOffset()

bool lldb_private::UnwindPlan::Row::RegisterLocation::IsAtCFAPlusOffset ( ) const
inline

◆ IsAtDWARFExpression()

bool lldb_private::UnwindPlan::Row::RegisterLocation::IsAtDWARFExpression ( ) const
inline

Definition at line 104 of file UnwindPlan.h.

References atDWARFExpression.

Referenced by lldb_private::RegisterContextLLDB::IsTrapHandlerFrame().

◆ IsCFAPlusOffset()

bool lldb_private::UnwindPlan::Row::RegisterLocation::IsCFAPlusOffset ( ) const
inline

Definition at line 94 of file UnwindPlan.h.

References isCFAPlusOffset.

Referenced by lldb_private::RegisterContextLLDB::IsTrapHandlerFrame().

◆ IsDWARFExpression()

bool lldb_private::UnwindPlan::Row::RegisterLocation::IsDWARFExpression ( ) const
inline

Definition at line 106 of file UnwindPlan.h.

References isDWARFExpression.

Referenced by lldb_private::RegisterContextLLDB::IsTrapHandlerFrame().

◆ IsInOtherRegister()

bool lldb_private::UnwindPlan::Row::RegisterLocation::IsInOtherRegister ( ) const
inline

Definition at line 102 of file UnwindPlan.h.

References inOtherRegister.

Referenced by lldb_private::RegisterContextLLDB::IsTrapHandlerFrame().

◆ IsSame()

bool lldb_private::UnwindPlan::Row::RegisterLocation::IsSame ( ) const
inline

Definition at line 88 of file UnwindPlan.h.

References same.

Referenced by lldb_private::RegisterContextLLDB::IsTrapHandlerFrame().

◆ IsUndefined()

bool lldb_private::UnwindPlan::Row::RegisterLocation::IsUndefined ( ) const
inline

Definition at line 92 of file UnwindPlan.h.

References undefined.

Referenced by lldb_private::RegisterContextLLDB::IsTrapHandlerFrame().

◆ IsUnspecified()

bool lldb_private::UnwindPlan::Row::RegisterLocation::IsUnspecified ( ) const
inline

Definition at line 90 of file UnwindPlan.h.

References unspecified.

Referenced by lldb_private::RegisterContextLLDB::IsTrapHandlerFrame().

◆ operator!=()

bool lldb_private::UnwindPlan::Row::RegisterLocation::operator!= ( const RegisterLocation rhs) const
inline

Definition at line 78 of file UnwindPlan.h.

◆ operator==()

bool UnwindPlan::Row::RegisterLocation::operator== ( const RegisterLocation rhs) const

Definition at line 23 of file UnwindPlan.cpp.

References expr, offset, and reg_num.

Referenced by lldb_private::UnwindPlan::Row::FAValue::FAValue(), and RegisterLocation().

◆ SetAtAFAPlusOffset()

void lldb_private::UnwindPlan::Row::RegisterLocation::SetAtAFAPlusOffset ( int32_t  offset)
inline

◆ SetAtCFAPlusOffset()

void lldb_private::UnwindPlan::Row::RegisterLocation::SetAtCFAPlusOffset ( int32_t  offset)
inline

◆ SetAtDWARFExpression()

void UnwindPlan::Row::RegisterLocation::SetAtDWARFExpression ( const uint8_t *  opcodes,
uint32_t  len 
)

◆ SetInRegister()

void lldb_private::UnwindPlan::Row::RegisterLocation::SetInRegister ( uint32_t  reg_num)
inline

◆ SetIsAFAPlusOffset()

void lldb_private::UnwindPlan::Row::RegisterLocation::SetIsAFAPlusOffset ( int32_t  offset)
inline

Definition at line 123 of file UnwindPlan.h.

References isAFAPlusOffset, and offset.

◆ SetIsCFAPlusOffset()

void lldb_private::UnwindPlan::Row::RegisterLocation::SetIsCFAPlusOffset ( int32_t  offset)
inline

◆ SetIsDWARFExpression()

void UnwindPlan::Row::RegisterLocation::SetIsDWARFExpression ( const uint8_t *  opcodes,
uint32_t  len 
)

◆ SetSame()

void lldb_private::UnwindPlan::Row::RegisterLocation::SetSame ( )
inline

◆ SetUndefined()

void lldb_private::UnwindPlan::Row::RegisterLocation::SetUndefined ( )
inline

◆ SetUnspecified()

void lldb_private::UnwindPlan::Row::RegisterLocation::SetUnspecified ( )
inline

Definition at line 82 of file UnwindPlan.h.

References unspecified.

Referenced by lldb_private::UnwindPlan::Row::SetRegisterLocationToUnspecified().

Member Data Documentation

◆ expr

struct { ... } lldb_private::UnwindPlan::Row::RegisterLocation::expr

Referenced by operator==().

◆ length

uint16_t lldb_private::UnwindPlan::Row::RegisterLocation::length

Definition at line 193 of file UnwindPlan.h.

◆ offset

int32_t lldb_private::UnwindPlan::Row::RegisterLocation::offset

◆ opcodes

const uint8_t* lldb_private::UnwindPlan::Row::RegisterLocation::opcodes

◆ reg_num

uint32_t lldb_private::UnwindPlan::Row::RegisterLocation::reg_num

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