This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

PATCH: Count R_X86_64_RELATIVE64 as reloc_class_relative


Hi,

I checked in this patch to count R_X86_64_RELATIVE64 as
reloc_class_relative.


H.J.
---
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index ee2c264..fa2f5fa 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -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
diff --git a/bfd/elf64-x86-64.c b/bfd/elf64-x86-64.c
index 8eafbf0..a9429b8 100644
--- a/bfd/elf64-x86-64.c
+++ b/bfd/elf64-x86-64.c
@@ -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;
diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog
index 34e8d62..1cd1b4e 100644
--- a/ld/testsuite/ChangeLog
+++ b/ld/testsuite/ChangeLog
@@ -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.
diff --git a/ld/testsuite/ld-x86-64/pr13082-1a.d b/ld/testsuite/ld-x86-64/pr13082-1a.d
index f0e98ff..cb404e0 100644
--- a/ld/testsuite/ld-x86-64/pr13082-1a.d
+++ b/ld/testsuite/ld-x86-64/pr13082-1a.d
@@ -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]+
diff --git a/ld/testsuite/ld-x86-64/pr13082-1b.d b/ld/testsuite/ld-x86-64/pr13082-1b.d
index f10481f..dbe8a0a 100644
--- a/ld/testsuite/ld-x86-64/pr13082-1b.d
+++ b/ld/testsuite/ld-x86-64/pr13082-1b.d
@@ -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]+


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]