Go to the documentation of this file.
16#ifndef LIEF_PE_LOAD_CONFIGURATION_DYNAMIC_FIXUP_ARM64X_H
17#define LIEF_PE_LOAD_CONFIGURATION_DYNAMIC_FIXUP_ARM64X_H
29 enum class FIXUP_TYPE {
35 struct reloc_entry_t { uint32_t rva = 0;
38 FIXUP_TYPE type = FIXUP_TYPE::ZEROFILL;
44 std::vector<uint8_t> bytes;
55 std::ostream&
operator<<(std::ostream& os,
const reloc_entry_t& entry)
62 using reloc_entries_t = std::vector<reloc_entry_t>;
63 using it_relocations = ref_iterator<reloc_entries_t&>;
64 using it_const_relocations = const_ref_iterator<const reloc_entries_t&>;
67 DynamicFixup(KIND::ARM64X)
71 DynamicFixupARM64X&
operator=(
const DynamicFixupARM64X&) =
default;
74 DynamicFixupARM64X&
operator=(DynamicFixupARM64X&&) =
default;
76 std::unique_ptr<DynamicFixup>
clone()
const override {
77 return std::unique_ptr<DynamicFixupARM64X>(
new DynamicFixupARM64X(*
this));
91 static bool classof(
const DynamicFixup* fixup) {
92 return fixup->
kind() == KIND::ARM64X;
99 std::unique_ptr<DynamicFixupARM64X> parse(Parser& ctx, SpanStream& strm);
102 reloc_entries_t entries_;
This class represents IMAGE_DYNAMIC_RELOCATION_ARM64X
Definition DynamicFixupARM64X.hpp:27
DynamicFixupARM64X(DynamicFixupARM64X &&)=default
DynamicFixupARM64X()
Definition DynamicFixupARM64X.hpp:66
static bool classof(const DynamicFixup *fixup)
Definition DynamicFixupARM64X.hpp:91
DynamicFixupARM64X & operator=(const DynamicFixupARM64X &)=default
it_const_relocations relocations() const
Definition DynamicFixupARM64X.hpp:87
std::unique_ptr< DynamicFixup > clone() const override
Definition DynamicFixupARM64X.hpp:76
~DynamicFixupARM64X() override=default
DynamicFixupARM64X(const DynamicFixupARM64X &)=default
DynamicFixupARM64X & operator=(DynamicFixupARM64X &&)=default
std::string to_string() const override
it_relocations relocations()
Iterator over the different fixup entries.
Definition DynamicFixupARM64X.hpp:83
This is the base class for any fixups located in DynamicRelocation.
Definition DynamicFixup.hpp:34
KIND kind() const
Encoding of the fixups.
Definition DynamicFixup.hpp:73
Namespace related to the LIEF's PE module.
Definition Abstract/Header.hpp:32
LIEF namespace.
Definition Abstract/Binary.hpp:36
std::string to_string() const
friend std::ostream & operator<<(std::ostream &os, const reloc_entry_t &entry)
Definition DynamicFixupARM64X.hpp:55
#define LIEF_API
Definition visibility.h:41
#define LIEF_LOCAL
Definition visibility.h:42