Count R_X86_64_RELATIVE64 as reloc_class_relative
authorH.J. Lu <hjl.tools@gmail.com>
Thu, 10 May 2012 17:15:19 +0000 (17:15 +0000)
committerH.J. Lu <hjl.tools@gmail.com>
Thu, 10 May 2012 17:15:19 +0000 (17:15 +0000)
bfd/

* elf64-x86-64.c (elf_x86_64_reloc_type_class): Handle
R_X86_64_RELATIVE64.

ld/testsuite/

* ld-x86-64/pr13082-1a.d: Check RELACOUNT.
* ld-x86-64/pr13082-1b.d: Likewise.

bfd/ChangeLog
bfd/elf64-x86-64.c
ld/testsuite/ChangeLog
ld/testsuite/ld-x86-64/pr13082-1a.d
ld/testsuite/ld-x86-64/pr13082-1b.d

index ee2c264..fa2f5fa 100644 (file)
@@ -1,3 +1,8 @@
+2012-05-10  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * elf64-x86-64.c (elf_x86_64_reloc_type_class): Handle
+       R_X86_64_RELATIVE64.
+
 2012-05-09  H.J. Lu  <hongjiu.lu@intel.com>
 
        * elf64-x86-64.c (elf_x86_64_relocate_section): Check addend
index 8eafbf0..a9429b8 100644 (file)
@@ -4524,6 +4524,7 @@ elf_x86_64_reloc_type_class (const Elf_Internal_Rela *rela)
   switch ((int) ELF32_R_TYPE (rela->r_info))
     {
     case R_X86_64_RELATIVE:
+    case R_X86_64_RELATIVE64:
       return reloc_class_relative;
     case R_X86_64_JUMP_SLOT:
       return reloc_class_plt;
index 34e8d62..1cd1b4e 100644 (file)
@@ -1,3 +1,8 @@
+2012-05-10  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * ld-x86-64/pr13082-1a.d: Check RELACOUNT.
+       * ld-x86-64/pr13082-1b.d: Likewise.
+
 2012-05-09  H.J. Lu  <hongjiu.lu@intel.com>
 
        * ld-x86-64/ilp32-11.d: New file.
index f0e98ff..cb404e0 100644 (file)
@@ -2,8 +2,12 @@
 #name: PR ld/13082-1 (a)
 #as: --x32
 #ld: -shared -melf32_x86_64
-#readelf: -r --wide
+#readelf: -d -r --wide
 
+Dynamic section at offset 0x[0-9a-f]+ contains [0-9]+ entries:
+#...
+ 0x[0-9a-f]+ +\(RELACOUNT\) +1
+#...
 Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 1 entries:
  Offset     Info    Type                Sym. Value  Symbol's Name \+ Addend
 [0-9a-f]+ +[0-9a-f]+ +R_X86_64_RELATIVE64 +[0-9a-f]+
index f10481f..dbe8a0a 100644 (file)
@@ -2,8 +2,12 @@
 #name: PR ld/13082-1 (b)
 #as: --x32
 #ld: -pie -melf32_x86_64
-#readelf: -r --wide
+#readelf: -d -r --wide
 
+Dynamic section at offset 0x[0-9a-f]+ contains [0-9]+ entries:
+#...
+ 0x[0-9a-f]+ +\(RELACOUNT\) +1
+#...
 Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 1 entries:
  Offset     Info    Type                Sym. Value  Symbol's Name \+ Addend
 [0-9a-f]+ +[0-9a-f]+ +R_X86_64_RELATIVE64 +[0-9a-f]+