Skip to content

Commit c031250

Browse files
kohnakagawarthomas
authored andcommitted
add missing RELOCATIONS_BASE_TYPES
1 parent 798950d commit c031250

File tree

2 files changed

+27
-13
lines changed

2 files changed

+27
-13
lines changed

include/LIEF/PE/enums.inc

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -133,8 +133,15 @@ enum _LIEF_EN(RELOCATIONS_BASE_TYPES) {
133133
_LIEF_EI(IMAGE_REL_BASED_HIGHLOW) = 3,
134134
_LIEF_EI(IMAGE_REL_BASED_HIGHADJ) = 4,
135135
_LIEF_EI(IMAGE_REL_BASED_MIPS_JMPADDR) = 5,
136+
_LIEF_EI(IMAGE_REL_BASED_ARM_MOV32A) = 5,
137+
_LIEF_EI(IMAGE_REL_BASED_ARM_MOV32) = 5,
138+
_LIEF_EI(IMAGE_REL_BASED_RISCV_HI20) = 5,
136139
_LIEF_EI(IMAGE_REL_BASED_SECTION) = 6,
137140
_LIEF_EI(IMAGE_REL_BASED_REL) = 7,
141+
_LIEF_EI(IMAGE_REL_BASED_ARM_MOV32T) = 7,
142+
_LIEF_EI(IMAGE_REL_BASED_THUMB_MOV32) = 7,
143+
_LIEF_EI(IMAGE_REL_BASED_RISCV_LOW12I) = 7,
144+
_LIEF_EI(IMAGE_REL_BASED_RISCV_LOW12S) = 8,
138145
_LIEF_EI(IMAGE_REL_BASED_MIPS_JMPADDR16) = 9,
139146
_LIEF_EI(IMAGE_REL_BASED_IA64_IMM64) = 9,
140147
_LIEF_EI(IMAGE_REL_BASED_DIR64) = 10,

src/PE/EnumToString.cpp

Lines changed: 20 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -364,26 +364,33 @@ const char* to_string(RELOCATIONS_ARM e) {
364364

365365

366366
const char* to_string(RELOCATIONS_BASE_TYPES e) {
367-
CONST_MAP(RELOCATIONS_BASE_TYPES, const char*, 11) enumStrings {
368-
{ RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_ABSOLUTE, "ABSOLUTE" },
369-
{ RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_HIGH, "HIGH" },
370-
{ RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_LOW, "LOW" },
371-
{ RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_HIGHLOW, "HIGHLOW" },
372-
{ RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_HIGHADJ, "HIGHADJ" },
373-
{ RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_MIPS_JMPADDR, "JMPADDR" },
374-
{ RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_SECTION, "SECTION" },
375-
{ RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_REL, "REL" },
376-
{ RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_IA64_IMM64, "IMM64" },
377-
{ RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_DIR64, "DIR64" },
378-
{ RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_HIGH3ADJ, "HIGH3ADJ" }
367+
CONST_MAP(RELOCATIONS_BASE_TYPES, const char*, 19) enumStrings {
368+
{ RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_ABSOLUTE, "ABSOLUTE" },
369+
{ RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_HIGH, "HIGH" },
370+
{ RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_LOW, "LOW" },
371+
{ RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_HIGHLOW, "HIGHLOW" },
372+
{ RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_HIGHADJ, "HIGHADJ" },
373+
{ RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_MIPS_JMPADDR, "MIPS_JMPADDR | ARM_MOV32A | ARM_MOV32 | RISCV_HI20" },
374+
{ RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_ARM_MOV32A, "MIPS_JMPADDR | ARM_MOV32A | ARM_MOV32 | RISCV_HI20" },
375+
{ RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_ARM_MOV32, "MIPS_JMPADDR | ARM_MOV32A | ARM_MOV32 | RISCV_HI20" },
376+
{ RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_RISCV_HI20, "MIPS_JMPADDR | ARM_MOV32A | ARM_MOV32 | RISCV_HI20" },
377+
{ RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_SECTION, "SECTION" },
378+
{ RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_REL, "REL | ARM_MOV32T | THUMB_MOV32 | RISCV_LOW12I" },
379+
{ RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_ARM_MOV32T, "REL | ARM_MOV32T | THUMB_MOV32 | RISCV_LOW12I" },
380+
{ RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_THUMB_MOV32, "REL | ARM_MOV32T | THUMB_MOV32 | RISCV_LOW12I" },
381+
{ RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_RISCV_LOW12I, "REL | ARM_MOV32T | THUMB_MOV32 | RISCV_LOW12I" },
382+
{ RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_RISCV_LOW12S, "RISCV_LOW12S" },
383+
{ RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_MIPS_JMPADDR16, "MIPS_JMPADDR16 | IA64_DIR64" },
384+
{ RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_IA64_IMM64, "MIPS_JMPADDR16 | IA64_DIR64" },
385+
{ RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_DIR64, "DIR64" },
386+
{ RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_HIGH3ADJ, "HIGH3ADJ" },
379387
};
380388

381389
auto it = enumStrings.find(e);
382390
return it == enumStrings.end() ? "Out of range" : it->second;
383391
}
384392

385393

386-
387394
const char* to_string(DEBUG_TYPES e) {
388395
CONST_MAP(DEBUG_TYPES, const char*, 17) enumStrings {
389396
{ DEBUG_TYPES::IMAGE_DEBUG_TYPE_UNKNOWN, "UNKNOWN" },

0 commit comments

Comments
 (0)