This class represents a packed AArch64 exception entry.
More...
#include <PackedFunction.hpp>
This class represents a packed AArch64 exception entry.
An excepted entry can be packed if the unwind data fit in 30 bits
Reference: https://learn.microsoft.com/en-us/cpp/build/arm64-exception-handling?view=msvc-170#packed-unwind-data
◆ PackedFunction() [1/2]
LIEF::PE::unwind_aarch64::PackedFunction::PackedFunction |
( |
const PackedFunction & | | ) |
|
|
default |
◆ PackedFunction() [2/2]
LIEF::PE::unwind_aarch64::PackedFunction::PackedFunction |
( |
PackedFunction && | | ) |
|
|
default |
◆ ~PackedFunction()
LIEF::PE::unwind_aarch64::PackedFunction::~PackedFunction |
( |
| ) |
|
|
overridedefault |
◆ classof()
static bool LIEF::PE::unwind_aarch64::PackedFunction::classof |
( |
const ExceptionInfo * | info | ) |
|
|
inlinestatic |
◆ clone()
std::unique_ptr< ExceptionInfo > LIEF::PE::unwind_aarch64::PackedFunction::clone |
( |
| ) |
const |
|
inlineoverridevirtual |
◆ CR() [1/2]
uint8_t LIEF::PE::unwind_aarch64::PackedFunction::CR |
( |
| ) |
const |
|
inline |
Flag indicating whether the function includes extra instructions to set up a frame chain and return link.
◆ CR() [2/2]
PackedFunction & LIEF::PE::unwind_aarch64::PackedFunction::CR |
( |
uint8_t | value | ) |
|
|
inline |
◆ frame_size() [1/2]
uint8_t LIEF::PE::unwind_aarch64::PackedFunction::frame_size |
( |
| ) |
const |
|
inline |
Size of the allocated stack.
◆ frame_size() [2/2]
PackedFunction & LIEF::PE::unwind_aarch64::PackedFunction::frame_size |
( |
uint8_t | value | ) |
|
|
inline |
◆ H() [1/2]
uint8_t LIEF::PE::unwind_aarch64::PackedFunction::H |
( |
| ) |
const |
|
inline |
1-bit flag indicating whether the function homes the integer parameter registers (x0-x7) by storing them at the very start of the function. (0 = doesn't home registers, 1 = homes registers).
◆ H() [2/2]
PackedFunction & LIEF::PE::unwind_aarch64::PackedFunction::H |
( |
uint8_t | value | ) |
|
|
inline |
◆ operator=() [1/2]
◆ operator=() [2/2]
◆ parse()
static std::unique_ptr< PackedFunction > LIEF::PE::unwind_aarch64::PackedFunction::parse |
( |
Parser & | ctx, |
|
|
BinaryStream & | strm, |
|
|
uint32_t | rva, |
|
|
uint32_t | unwind_data ) |
|
static |
◆ reg_F() [1/2]
uint8_t LIEF::PE::unwind_aarch64::PackedFunction::reg_F |
( |
| ) |
const |
|
inline |
Number of non-volatile FP registers (d8-d15) saved in the canonical stack location.
◆ reg_F() [2/2]
PackedFunction & LIEF::PE::unwind_aarch64::PackedFunction::reg_F |
( |
uint8_t | value | ) |
|
|
inline |
◆ reg_I() [1/2]
uint8_t LIEF::PE::unwind_aarch64::PackedFunction::reg_I |
( |
| ) |
const |
|
inline |
Number of non-volatile INT registers (x19-x28) saved in the canonical stack location.
◆ reg_I() [2/2]
PackedFunction & LIEF::PE::unwind_aarch64::PackedFunction::reg_I |
( |
uint8_t | value | ) |
|
|
inline |
◆ RuntimeFunctionAArch64() [1/3]
◆ RuntimeFunctionAArch64() [2/3]
◆ RuntimeFunctionAArch64() [3/3]
LIEF::PE::RuntimeFunctionAArch64::RuntimeFunctionAArch64 |
( |
uint64_t | RVA, |
|
|
uint32_t | length, |
|
|
PACKED_FLAGS | flag ) |
|
inline |
◆ to_string()
std::string LIEF::PE::unwind_aarch64::PackedFunction::to_string |
( |
| ) |
const |
|
overridevirtual |
The documentation for this class was generated from the following file: