LIEF: Library to Instrument Executable Formats Version 0.17.0
|
Loading...
Searching...
No Matches
Go to the documentation of this file.
16#ifndef LIEF_PE_RUNTIME_FUNCTION_AARCH64_H
17#define LIEF_PE_RUNTIME_FUNCTION_AARCH64_H
40 enum class PACKED_FLAGS {
47 static std::unique_ptr<RuntimeFunctionAArch64>
48 parse(Parser& ctx, BinaryStream& strm);
51 ExceptionInfo(ARCH::ARM64, RVA),
57 RuntimeFunctionAArch64&
operator=(
const RuntimeFunctionAArch64&) =
default;
60 RuntimeFunctionAArch64&
operator=(RuntimeFunctionAArch64&&) =
default;
62 std::unique_ptr<ExceptionInfo>
clone()
const override {
63 return std::unique_ptr<RuntimeFunctionAArch64>(
new RuntimeFunctionAArch64(*
this));
70 PACKED_FLAGS
flag()
const {
78 return rva_start() + length();
83 static bool classof(
const ExceptionInfo* info) {
84 return info->arch() == ExceptionInfo::ARCH::ARM64;
91 PACKED_FLAGS flag_ = PACKED_FLAGS::RESERVED;
Class that is used to a read stream of data from different sources.
Definition BinaryStream.hpp:33
This class is the base class for any exception or runtime function entry.
Definition ExceptionInfo.hpp:33
Main interface to parse PE binaries. In particular the static functions: Parser::parse should be used...
Definition PE/Parser.hpp:52
This class represents an entry in the exception table (.pdata section) for the AArch64 architecture.
Definition RuntimeFunctionAArch64.hpp:38
RuntimeFunctionAArch64(const RuntimeFunctionAArch64 &)=default
static bool classof(const ExceptionInfo *info)
Definition RuntimeFunctionAArch64.hpp:83
RuntimeFunctionAArch64 & operator=(RuntimeFunctionAArch64 &&)=default
uint32_t length() const
Length of the function in bytes.
Definition RuntimeFunctionAArch64.hpp:67
RuntimeFunctionAArch64 & operator=(const RuntimeFunctionAArch64 &)=default
std::string to_string() const override
static std::unique_ptr< RuntimeFunctionAArch64 > parse(Parser &ctx, BinaryStream &strm)
PACKED_FLAGS flag() const
Flag describing the format the unwind data.
Definition RuntimeFunctionAArch64.hpp:72
~RuntimeFunctionAArch64()=default
RuntimeFunctionAArch64(uint64_t RVA, uint32_t length, PACKED_FLAGS flag)
Definition RuntimeFunctionAArch64.hpp:50
uint32_t rva_end() const
Function end address.
Definition RuntimeFunctionAArch64.hpp:77
RuntimeFunctionAArch64(RuntimeFunctionAArch64 &&)=default
std::unique_ptr< ExceptionInfo > clone() const override
Definition RuntimeFunctionAArch64.hpp:62
Namespace related to the LIEF's PE module.
Definition Abstract/Header.hpp:32
LIEF namespace.
Definition Abstract/Binary.hpp:36
#define LIEF_API
Definition visibility.h:41