[PATCH] PR binutils/16496: Display symbol version when dumping dynrelocs

H.J. Lu hjl.tools@gmail.com
Thu Nov 27 14:45:00 GMT 2014


On Thu, Nov 27, 2014 at 12:33 AM, Alan Modra <amodra@gmail.com> wrote:
> On Tue, Nov 25, 2014 at 09:37:51AM -0800, H.J. Lu wrote:
>> I checked in this patch to add get_symbol_version_string to
>> BFD_JUMP_TABLE_SYMBOLS so that we can use
>> bfd_get_symbol_version_string in objdump for non-ELF targets.
>
> This caused
> mips-linux  +FAIL: MIPS reloc estimation 1
> mips-linux  +FAIL: Shared library with TLS and versioning
> mips-linux  +FAIL: Dynamic executable with TLS and versioning
> mips-linux  +FAIL: Dynamic executable with TLS and versioning (order 2)
> mips-linux  +FAIL: Dynamic executable with TLS and versioning (order 3)
> mips-linux  +FAIL: GOT and versioning 1
> and similarly for other mips targets.
>

This is what I checked in.

Thanks.

-- 
H.J.
--
diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog
index 9b87101..c87cc57 100644
--- a/ld/testsuite/ChangeLog
+++ b/ld/testsuite/ChangeLog
@@ -1,3 +1,13 @@
+2014-11-27  H.J. Lu  <hongjiu.lu@intel.com>
+
+ * ld-mips-elf/got-vers-1.rd: Add symbol version string to
+ versioned symbol names in dynamic relocation.
+ * ld-mips-elf/reloc-estimate-1.d: Likewise.
+ * ld-mips-elf/tlsdyn-o32-1.got: Likewise.
+ * ld-mips-elf/tlsdyn-o32-2.got: Likewise.
+ * ld-mips-elf/tlsdyn-o32-3.got: Likewise.
+ * ld-mips-elf/tlslib-o32-ver.got: Likewise.
+
 2014-11-25  H.J. Lu  <hongjiu.lu@intel.com>

  * ld-alpha/tlsbin.dd: Updated for secureplt.
diff --git a/ld/testsuite/ld-mips-elf/got-vers-1.rd
b/ld/testsuite/ld-mips-elf/got-vers-1.rd
index 48dcc64..f1d5a2c 100644
--- a/ld/testsuite/ld-mips-elf/got-vers-1.rd
+++ b/ld/testsuite/ld-mips-elf/got-vers-1.rd
@@ -3,4 +3,4 @@ Relocation section '\.rel\.dyn' at offset .* contains 2 entries:
  *Offset * Info * Type * Sym\.Value * Sym\. Name
 00000000 * 00000000 * R_MIPS_NONE *
 # This index must be the same as DT_MIPS_GOTSYM.
-[^ ]+ * 00000303 * R_MIPS_REL32 * [^ ]+ * foo
+[^ ]+ * 00000303 * R_MIPS_REL32 * [^ ]+ * foo@@V2
diff --git a/ld/testsuite/ld-mips-elf/reloc-estimate-1.d
b/ld/testsuite/ld-mips-elf/reloc-estimate-1.d
index 0d49b05..1269cb1 100644
--- a/ld/testsuite/ld-mips-elf/reloc-estimate-1.d
+++ b/ld/testsuite/ld-mips-elf/reloc-estimate-1.d
@@ -9,7 +9,7 @@
 DYNAMIC RELOCATION RECORDS
 OFFSET   TYPE              VALUE
 00000000 R_MIPS_NONE       \*ABS\*
-00010000 R_MIPS_REL32      foo
+00010000 R_MIPS_REL32      foo@@V2


 # The address must be 0x810.  We should only ever allocate one dynamic
diff --git a/ld/testsuite/ld-mips-elf/tlsdyn-o32-1.got
b/ld/testsuite/ld-mips-elf/tlsdyn-o32-1.got
index d70fdd0..163aeb5 100644
--- a/ld/testsuite/ld-mips-elf/tlsdyn-o32-1.got
+++ b/ld/testsuite/ld-mips-elf/tlsdyn-o32-1.got
@@ -4,12 +4,12 @@
 DYNAMIC RELOCATION RECORDS
 OFFSET   TYPE              VALUE
 00000000 R_MIPS_NONE       \*ABS\*
-10000038 R_MIPS_TLS_DTPMOD32  tlsbin_gd
-1000003c R_MIPS_TLS_DTPREL32  tlsbin_gd
-1000002c R_MIPS_TLS_DTPMOD32  tlsvar_gd
-10000030 R_MIPS_TLS_DTPREL32  tlsvar_gd
-10000040 R_MIPS_TLS_TPREL32  tlsvar_ie
-10000034 R_MIPS_TLS_TPREL32  tlsbin_ie
+10000038 R_MIPS_TLS_DTPMOD32  tlsbin_gd@@Base
+1000003c R_MIPS_TLS_DTPREL32  tlsbin_gd@@Base
+1000002c R_MIPS_TLS_DTPMOD32  tlsvar_gd@VER_1
+10000030 R_MIPS_TLS_DTPREL32  tlsvar_gd@VER_1
+10000040 R_MIPS_TLS_TPREL32  tlsvar_ie@VER_1
+10000034 R_MIPS_TLS_TPREL32  tlsbin_ie@@Base


 Contents of section .got:
diff --git a/ld/testsuite/ld-mips-elf/tlsdyn-o32-2.got
b/ld/testsuite/ld-mips-elf/tlsdyn-o32-2.got
index 6b00157..80e9148 100644
--- a/ld/testsuite/ld-mips-elf/tlsdyn-o32-2.got
+++ b/ld/testsuite/ld-mips-elf/tlsdyn-o32-2.got
@@ -4,12 +4,12 @@
 DYNAMIC RELOCATION RECORDS
 OFFSET   TYPE              VALUE
 00000000 R_MIPS_NONE       \*ABS\*
-10000038 R_MIPS_TLS_DTPMOD32  tlsbin_gd
-1000003c R_MIPS_TLS_DTPREL32  tlsbin_gd
-1000002c R_MIPS_TLS_DTPMOD32  tlsvar_gd
-10000030 R_MIPS_TLS_DTPREL32  tlsvar_gd
-10000040 R_MIPS_TLS_TPREL32  tlsvar_ie
-10000034 R_MIPS_TLS_TPREL32  tlsbin_ie
+10000038 R_MIPS_TLS_DTPMOD32  tlsbin_gd@@Base
+1000003c R_MIPS_TLS_DTPREL32  tlsbin_gd@@Base
+1000002c R_MIPS_TLS_DTPMOD32  tlsvar_gd@VER_1
+10000030 R_MIPS_TLS_DTPREL32  tlsvar_gd@VER_1
+10000040 R_MIPS_TLS_TPREL32  tlsvar_ie@VER_1
+10000034 R_MIPS_TLS_TPREL32  tlsbin_ie@@Base


 Contents of section .got:
diff --git a/ld/testsuite/ld-mips-elf/tlsdyn-o32-3.got
b/ld/testsuite/ld-mips-elf/tlsdyn-o32-3.got
index 01eb44f..a1191e7 100644
--- a/ld/testsuite/ld-mips-elf/tlsdyn-o32-3.got
+++ b/ld/testsuite/ld-mips-elf/tlsdyn-o32-3.got
@@ -4,12 +4,12 @@
 DYNAMIC RELOCATION RECORDS
 OFFSET   TYPE              VALUE
 00000000 R_MIPS_NONE       \*ABS\*
-10000038 R_MIPS_TLS_DTPMOD32  tlsbin_gd
-1000003c R_MIPS_TLS_DTPREL32  tlsbin_gd
-1000002c R_MIPS_TLS_DTPMOD32  tlsvar_gd
-10000030 R_MIPS_TLS_DTPREL32  tlsvar_gd
-10000040 R_MIPS_TLS_TPREL32  tlsvar_ie
-10000034 R_MIPS_TLS_TPREL32  tlsbin_ie
+10000038 R_MIPS_TLS_DTPMOD32  tlsbin_gd@@Base
+1000003c R_MIPS_TLS_DTPREL32  tlsbin_gd@@Base
+1000002c R_MIPS_TLS_DTPMOD32  tlsvar_gd@VER_1
+10000030 R_MIPS_TLS_DTPREL32  tlsvar_gd@VER_1
+10000040 R_MIPS_TLS_TPREL32  tlsvar_ie@VER_1
+10000034 R_MIPS_TLS_TPREL32  tlsbin_ie@@Base


 Contents of section .got:
diff --git a/ld/testsuite/ld-mips-elf/tlslib-o32-ver.got
b/ld/testsuite/ld-mips-elf/tlslib-o32-ver.got
index a5b0801..e675f9f 100644
--- a/ld/testsuite/ld-mips-elf/tlslib-o32-ver.got
+++ b/ld/testsuite/ld-mips-elf/tlslib-o32-ver.got
@@ -5,9 +5,9 @@ DYNAMIC RELOCATION RECORDS
 OFFSET   TYPE              VALUE
 00000000 R_MIPS_NONE       \*ABS\*
 000404d8 R_MIPS_TLS_DTPMOD32  \*ABS\*
-000404d0 R_MIPS_TLS_DTPMOD32  tlsvar_gd
-000404d4 R_MIPS_TLS_DTPREL32  tlsvar_gd
-000404cc R_MIPS_TLS_TPREL32  tlsvar_ie
+000404d0 R_MIPS_TLS_DTPMOD32  tlsvar_gd@@VER_1
+000404d4 R_MIPS_TLS_DTPREL32  tlsvar_gd@@VER_1
+000404cc R_MIPS_TLS_TPREL32  tlsvar_ie@@VER_1


 Contents of section .got:



More information about the Binutils mailing list