summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHeinrich Schuchardt2018-03-27 19:07:38 +0200
committerMichael Brown2018-03-28 18:55:58 +0200
commit8c17ee115d140ceb509f97158b581cd7a19ee586 (patch)
treee0faa7dfea86f738d2cf220a2b9ca8afc41d4bd4
parent[efi] Do not raise TPL within EFI_DRIVER_BINDING_PROTOCOL.Supported() (diff)
downloadipxe-8c17ee115d140ceb509f97158b581cd7a19ee586.tar.gz
ipxe-8c17ee115d140ceb509f97158b581cd7a19ee586.tar.xz
ipxe-8c17ee115d140ceb509f97158b581cd7a19ee586.zip
[efi] Add support for R_ARM_REL32 relocations
The relocation type R_ARM_REL32 is generated when building bin-arm32-efi/snp.efi using gcc 6.3 and ld 2.28. R_ARM_REL32 is a program counter (PC) relative 32 bit relocation so we can ignore it like all other PC relative relocations. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Signed-off-by: Michael Brown <mcb30@ipxe.org>
-rw-r--r--src/util/elf2efi.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/util/elf2efi.c b/src/util/elf2efi.c
index e8e6c523..6718df77 100644
--- a/src/util/elf2efi.c
+++ b/src/util/elf2efi.c
@@ -631,6 +631,7 @@ static void process_reloc ( struct elf_file *elf, const Elf_Shdr *shdr,
break;
case ELF_MREL ( EM_386, R_386_PC32 ) :
case ELF_MREL ( EM_ARM, R_ARM_CALL ) :
+ case ELF_MREL ( EM_ARM, R_ARM_REL32 ) :
case ELF_MREL ( EM_ARM, R_ARM_THM_PC22 ) :
case ELF_MREL ( EM_ARM, R_ARM_THM_JUMP24 ) :
case ELF_MREL ( EM_ARM, R_ARM_V4BX ):