From efe315c21d9a38ca2677c051d853b5e1f742be34 Mon Sep 17 00:00:00 2001 From: pca006132 Date: Thu, 30 Dec 2021 00:05:47 +0800 Subject: [PATCH] libdyld: accepts R_ARM_ABS32 Somehow this relocation type is emitted by nac3. According to table 4-9 of ARM ELF ABI and discussion in ld bugzilla (https://sourceware.org/bugzilla/show_bug.cgi?id=16163), this behaves the same as R_ARM_GLOB_DAT and R_ARM_JUMP_SLOT. --- src/libdyld/src/reloc.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/libdyld/src/reloc.rs b/src/libdyld/src/reloc.rs index 056e04c..dc5655f 100644 --- a/src/libdyld/src/reloc.rs +++ b/src/libdyld/src/reloc.rs @@ -77,7 +77,7 @@ impl RelType { R_OR1K_32 | R_OR1K_GLOB_DAT | R_OR1K_JMP_SLOT if arch == Arch::OpenRisc => Some(RelType::Lookup), - R_ARM_GLOB_DAT | R_ARM_JUMP_SLOT + R_ARM_GLOB_DAT | R_ARM_JUMP_SLOT | R_ARM_ABS32 if arch == Arch::Arm => Some(RelType::Lookup), _ =>