deal with bogus relocation generated by bogus linkers
authorMathieu Lacage <mathieu.lacage@sophia.inria.fr>
Thu, 29 Jul 2010 09:18:53 +0200
changeset 602 20700696b179
parent 601 8d31ed03b61d
child 603 cc56c5b3855d
deal with bogus relocation generated by bogus linkers
x86_64/machine.c
--- a/x86_64/machine.c	Fri Jul 23 12:08:37 2010 +0200
+++ b/x86_64/machine.c	Thu Jul 29 09:18:53 2010 +0200
@@ -27,6 +27,11 @@
 {
   switch (reloc_type)
     {
+    case R_X86_64_NONE:
+      // this is a relocation against a discarded section which the linker
+      // left here. It should have also discarded the relocation entry but
+      // some versions of the gnu linker leave them here.
+      break;
     case R_X86_64_RELATIVE:
       *reloc_addr = file->load_base + reloc_addend;
       break;