aboutsummaryrefslogtreecommitdiff
path: root/ld/testsuite
diff options
context:
space:
mode:
authorCupertino Miranda <cmiranda@synopsys.com>2016-07-21 15:32:35 +0200
committerCupertino Miranda <cmiranda@synopsys.com>2016-08-26 12:09:17 +0200
commit980aa3e6dfeb0f018915f65be4b2987667f31fe9 (patch)
tree148ba0cdbe9f1296b8d6dec12fb9eac8ab4edb86 /ld/testsuite
parent65b94e90977efe3235381708f5a3e0d541026d88 (diff)
downloadgdb-980aa3e6dfeb0f018915f65be4b2987667f31fe9.zip
gdb-980aa3e6dfeb0f018915f65be4b2987667f31fe9.tar.gz
gdb-980aa3e6dfeb0f018915f65be4b2987667f31fe9.tar.bz2
Dynamic TLS GOT entries would not be relocated.
Forgot to set should_relocate to TRUE in case of GOT and TLS relocations of undefined symbols for shared libraries. In dynamic libraries if symbol is not known the instruction relocation would not be resolved to point to the respective .got entry. A test was created to detect similar future mistakes. bfd/ChangeLog: Cupertino Miranda <cmiranda@synopsys.com> * elf32-arc.c (elf_arc_relocate_section): Changed. Set should_relocate to TRUE for GOT and TLS relocs. ld/ChangeLog: Cupertino Miranda <cmiranda@synopsys.com> * ld/testsuite/ld-arc/tls_gd-01.s: Added a testcase for this patch. * ld/testsuite/ld-arc/tls_gd-01.d: Likewise.
Diffstat (limited to 'ld/testsuite')
-rw-r--r--ld/testsuite/ld-arc/tls_gd-01.d13
-rw-r--r--ld/testsuite/ld-arc/tls_gd-01.s7
2 files changed, 20 insertions, 0 deletions
diff --git a/ld/testsuite/ld-arc/tls_gd-01.d b/ld/testsuite/ld-arc/tls_gd-01.d
new file mode 100644
index 0000000..f7027af
--- /dev/null
+++ b/ld/testsuite/ld-arc/tls_gd-01.d
@@ -0,0 +1,13 @@
+#source: tls_gd-01.s
+#as: -mcpu=arc700
+#ld: -shared
+#objdump: -d
+
+[^:]+: file format elf32-littlearc
+
+
+Disassembly of section \.text:
+
+[0-9a-f]+ <__start>:
+ [0-9a-f]+: 2700 7f80 0000 2080 add r0,pcl,0x2080
+ [0-9a-f]+: 2700 7f80 0000 2080 add r0,pcl,0x2080
diff --git a/ld/testsuite/ld-arc/tls_gd-01.s b/ld/testsuite/ld-arc/tls_gd-01.s
new file mode 100644
index 0000000..5fbfc54
--- /dev/null
+++ b/ld/testsuite/ld-arc/tls_gd-01.s
@@ -0,0 +1,7 @@
+ .text
+ .align 4
+
+ .global __start
+__start:
+ add r0, pcl, @baz@tlsgd
+ add r0, pcl, @bar@tlsgd