unknown relocation

This commit is contained in:
Nikita Smith
2025-06-25 10:53:22 -07:00
committed by Ryan Fleury
parent 73fe9d223a
commit ad069cb854
2 changed files with 24 additions and 30 deletions
+6 -13
View File
@@ -229,19 +229,12 @@ coff_pick_reloc_value_x64(COFF_Reloc_X64 type,
reloc_value_size = 4; reloc_value_size = 4;
reloc_value = symbol_section_offset; reloc_value = symbol_section_offset;
} break; } break;
case COFF_Reloc_X64_SecRel7: { case COFF_Reloc_X64_SecRel7:
NotImplemented; case COFF_Reloc_X64_Token:
} break; case COFF_Reloc_X64_SRel32:
case COFF_Reloc_X64_Token: { case COFF_Reloc_X64_Pair:
NotImplemented; case COFF_Reloc_X64_SSpan32:
} break; case COFF_Reloc_X64_Unknown_11: {
case COFF_Reloc_X64_SRel32: {
NotImplemented;
} break;
case COFF_Reloc_X64_Pair: {
NotImplemented;
} break;
case COFF_Reloc_X64_SSpan32: {
NotImplemented; NotImplemented;
} break; } break;
} }
+18 -17
View File
@@ -367,23 +367,24 @@ typedef U16 COFF_RelocType;
typedef COFF_RelocType COFF_Reloc_X64; typedef COFF_RelocType COFF_Reloc_X64;
enum enum
{ {
COFF_Reloc_X64_Abs = 0x0, COFF_Reloc_X64_Abs = 0x0,
COFF_Reloc_X64_Addr64 = 0x1, COFF_Reloc_X64_Addr64 = 0x1,
COFF_Reloc_X64_Addr32 = 0x2, COFF_Reloc_X64_Addr32 = 0x2,
COFF_Reloc_X64_Addr32Nb = 0x3, // NB => No Base COFF_Reloc_X64_Addr32Nb = 0x3, // NB => No Base
COFF_Reloc_X64_Rel32 = 0x4, COFF_Reloc_X64_Rel32 = 0x4,
COFF_Reloc_X64_Rel32_1 = 0x5, COFF_Reloc_X64_Rel32_1 = 0x5,
COFF_Reloc_X64_Rel32_2 = 0x6, COFF_Reloc_X64_Rel32_2 = 0x6,
COFF_Reloc_X64_Rel32_3 = 0x7, COFF_Reloc_X64_Rel32_3 = 0x7,
COFF_Reloc_X64_Rel32_4 = 0x8, COFF_Reloc_X64_Rel32_4 = 0x8,
COFF_Reloc_X64_Rel32_5 = 0x9, COFF_Reloc_X64_Rel32_5 = 0x9,
COFF_Reloc_X64_Section = 0xA, COFF_Reloc_X64_Section = 0xA,
COFF_Reloc_X64_SecRel = 0xB, COFF_Reloc_X64_SecRel = 0xB,
COFF_Reloc_X64_SecRel7 = 0xC, // TODO(nick): MSDN doesn't specify size for CLR token COFF_Reloc_X64_SecRel7 = 0xC, // TODO(nick): MSDN doesn't specify size for CLR token
COFF_Reloc_X64_Token = 0xD, COFF_Reloc_X64_Token = 0xD,
COFF_Reloc_X64_SRel32 = 0xE, // TODO(nick): MSDN doesn't specify size for PAIR COFF_Reloc_X64_SRel32 = 0xE, // TODO(nick): MSDN doesn't specify size for PAIR
COFF_Reloc_X64_Pair = 0xF, COFF_Reloc_X64_Pair = 0xF,
COFF_Reloc_X64_SSpan32 = 0x10 COFF_Reloc_X64_SSpan32 = 0x10,
COFF_Reloc_X64_Unknown_11 = 0x11,
}; };
typedef COFF_RelocType COFF_Reloc_X86; typedef COFF_RelocType COFF_Reloc_X86;