LLVM 22.0.0git
|
RuntimeFunction - An entry in the table of procedure data (.pdata) More...
#include "llvm/Support/ARMWinEH.h"
Public Member Functions | |
RuntimeFunction (const support::ulittle32_t *Data) | |
RuntimeFunction (const support::ulittle32_t BeginAddress, const support::ulittle32_t UnwindData) | |
RuntimeFunctionFlag | Flag () const |
uint32_t | ExceptionInformationRVA () const |
uint32_t | PackedUnwindData () const |
uint32_t | FunctionLength () const |
ReturnType | Ret () const |
bool | H () const |
uint8_t | Reg () const |
bool | R () const |
bool | L () const |
bool | C () const |
uint16_t | StackAdjust () const |
Public Attributes | |
const support::ulittle32_t | BeginAddress |
const support::ulittle32_t | UnwindData |
RuntimeFunction - An entry in the table of procedure data (.pdata)
This is ARM specific, but the Function Start RVA, Flag and ExceptionInformationRVA fields work identically for ARM64.
3 3 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 +------------------------------------------------------------—+ | Function Start RVA | +----------------—+-+-+-+--—+-+—+------------------—+—+ | Stack Adjust |C|L|R| Reg |H|Ret| Function Length |Flg| +----------------—+-+-+-+--—+-+—+------------------—+—+
Flag : 2-bit field with the following meanings:
RESTRICTIONS:
Definition at line 104 of file ARMWinEH.h.
|
inline |
Definition at line 109 of file ARMWinEH.h.
References BeginAddress, llvm::Data, and UnwindData.
|
inline |
Definition at line 112 of file ARMWinEH.h.
References BeginAddress, and UnwindData.
|
inline |
Definition at line 169 of file ARMWinEH.h.
References assert(), Flag(), L(), R(), Reg(), llvm::ARM::WinEH::RFF_Packed, llvm::ARM::WinEH::RFF_PackedFragment, and UnwindData.
Referenced by llvm::ARM::WinEH::SavedRegisterMask().
|
inline |
Definition at line 120 of file ARMWinEH.h.
References assert(), Flag(), llvm::ARM::WinEH::RFF_Unpacked, and UnwindData.
|
inline |
Definition at line 116 of file ARMWinEH.h.
References UnwindData.
Referenced by C(), ExceptionInformationRVA(), FunctionLength(), H(), L(), PackedUnwindData(), R(), Reg(), Ret(), and StackAdjust().
|
inline |
Definition at line 132 of file ARMWinEH.h.
References assert(), Flag(), llvm::ARM::WinEH::RFF_Packed, llvm::ARM::WinEH::RFF_PackedFragment, and UnwindData.
|
inline |
Definition at line 145 of file ARMWinEH.h.
References assert(), Flag(), llvm::ARM::WinEH::RFF_Packed, llvm::ARM::WinEH::RFF_PackedFragment, and UnwindData.
Referenced by llvm::ARM::WinEH::SavedRegisterMask().
|
inline |
Definition at line 163 of file ARMWinEH.h.
References assert(), Flag(), llvm::ARM::WinEH::RFF_Packed, llvm::ARM::WinEH::RFF_PackedFragment, and UnwindData.
Referenced by C(), Ret(), and llvm::ARM::WinEH::SavedRegisterMask().
|
inline |
Definition at line 126 of file ARMWinEH.h.
References assert(), Flag(), llvm::ARM::WinEH::RFF_Packed, llvm::ARM::WinEH::RFF_PackedFragment, and UnwindData.
|
inline |
Definition at line 157 of file ARMWinEH.h.
References assert(), Flag(), llvm::ARM::WinEH::RFF_Packed, llvm::ARM::WinEH::RFF_PackedFragment, and UnwindData.
Referenced by C(), and llvm::ARM::WinEH::SavedRegisterMask().
|
inline |
Definition at line 151 of file ARMWinEH.h.
References assert(), Flag(), llvm::ARM::WinEH::RFF_Packed, llvm::ARM::WinEH::RFF_PackedFragment, and UnwindData.
Referenced by C(), and llvm::ARM::WinEH::SavedRegisterMask().
|
inline |
Definition at line 138 of file ARMWinEH.h.
References assert(), Flag(), L(), llvm::ARM::WinEH::RFF_Packed, llvm::ARM::WinEH::RFF_PackedFragment, and UnwindData.
Referenced by llvm::ARM::WinEH::SavedRegisterMask().
|
inline |
Definition at line 179 of file ARMWinEH.h.
References assert(), Flag(), llvm::ARM::WinEH::RFF_Packed, llvm::ARM::WinEH::RFF_PackedFragment, and UnwindData.
Referenced by llvm::ARM::WinEH::EpilogueFolding(), llvm::ARM::WinEH::PrologueFolding(), llvm::ARM::WinEH::SavedRegisterMask(), and llvm::ARM::WinEH::StackAdjustment().
const support::ulittle32_t llvm::ARM::WinEH::RuntimeFunction::BeginAddress |
Definition at line 106 of file ARMWinEH.h.
Referenced by RuntimeFunction(), and RuntimeFunction().
const support::ulittle32_t llvm::ARM::WinEH::RuntimeFunction::UnwindData |
Definition at line 107 of file ARMWinEH.h.
Referenced by C(), ExceptionInformationRVA(), Flag(), FunctionLength(), H(), L(), PackedUnwindData(), R(), Reg(), Ret(), RuntimeFunction(), RuntimeFunction(), and StackAdjust().