]> git.alrj.org Git - bold.git/commitdiff
Add support for R_X86_64_32S relocation type.
authorAmand Tihon <amand.tihon@alrj.org>
Sun, 9 Aug 2009 17:58:00 +0000 (19:58 +0200)
committerAmand Tihon <amand.tihon@alrj.org>
Sun, 9 Aug 2009 17:58:00 +0000 (19:58 +0200)
Bold/elf.py

index 3cf831959370fd36ae1765bb7d174e091b67dc80..1d73ec7175c5db71dc12f2fbcb8b9f7932818787 100644 (file)
@@ -152,6 +152,9 @@ class Elf64(object):
         elif reloc.r_type == R_X86_64_32:
           format = "<I" # Direct 32 bit zero extended
           target_value = sym_address + reloc.r_addend
+        elif reloc.r_type == R_X86_64_32S:
+          format = "<i" # Direct 32 bit sign extended
+          target_value = sym_address + reloc.r_addend
         elif reloc.r_type == R_X86_64_PC16:
           format = "<h" # 16 bit sign extended pc relative
           target_value = sym_address + reloc.r_addend - pc_address