aboutsummaryrefslogtreecommitdiff
path: root/ld/testsuite
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2014-01-22 11:24:12 -0800
committerH.J. Lu <hjl.tools@gmail.com>2014-01-24 08:56:07 -0800
commitd85e71fec0aa4d9d8ca0d8c2401cd8ab69fe2edc (patch)
treec2f6433e306e4666c6c801c25cea4c9725df2146 /ld/testsuite
parent6b6aa828818fa4a5754fb8520751077146d9d16c (diff)
downloadgdb-d85e71fec0aa4d9d8ca0d8c2401cd8ab69fe2edc.zip
gdb-d85e71fec0aa4d9d8ca0d8c2401cd8ab69fe2edc.tar.gz
gdb-d85e71fec0aa4d9d8ca0d8c2401cd8ab69fe2edc.tar.bz2
Improve orphaned TLS section handling
ld/ PR ld/16498 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Improve orphaned TLS section handling. ld/testsuite/ PR ld/16498 * ld-elf/pr16498a.d: New file. * ld-elf/pr16498a.s: Likewise. * ld-elf/pr16498a.t: Likewise.
Diffstat (limited to 'ld/testsuite')
-rw-r--r--ld/testsuite/ChangeLog7
-rw-r--r--ld/testsuite/ld-elf/pr16498a.d9
-rw-r--r--ld/testsuite/ld-elf/pr16498a.s23
-rw-r--r--ld/testsuite/ld-elf/pr16498a.t6
4 files changed, 45 insertions, 0 deletions
diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog
index a269b07..4f0a75b 100644
--- a/ld/testsuite/ChangeLog
+++ b/ld/testsuite/ChangeLog
@@ -1,3 +1,10 @@
+2014-01-24 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/16498
+ * ld-elf/pr16498a.d: New file.
+ * ld-elf/pr16498a.s: Likewise.
+ * ld-elf/pr16498a.t: Likewise.
+
2014-01-22 Alan Modra <amodra@gmail.com>
* ld-scripts/pr14962-2.d: Correct target triple.
diff --git a/ld/testsuite/ld-elf/pr16498a.d b/ld/testsuite/ld-elf/pr16498a.d
new file mode 100644
index 0000000..436bf97
--- /dev/null
+++ b/ld/testsuite/ld-elf/pr16498a.d
@@ -0,0 +1,9 @@
+#ld: -shared -T pr16498a.t
+#readelf: -l --wide
+#target: *-*-linux* *-*-gnu* *-*-nacl*
+
+#...
+ TLS .*
+#...
+[ ]+[0-9]+[ ]+.tdata .tbss[ ]*
+#pass
diff --git a/ld/testsuite/ld-elf/pr16498a.s b/ld/testsuite/ld-elf/pr16498a.s
new file mode 100644
index 0000000..77f80e6
--- /dev/null
+++ b/ld/testsuite/ld-elf/pr16498a.s
@@ -0,0 +1,23 @@
+ .globl data
+ .data
+ .align 32
+ .type data, %object
+ .size data, 120
+data:
+ .long 1
+ .zero 116
+ .globl foo
+ .section .tbss,"awT",%nobits
+ .align 4
+ .type foo, %object
+ .size foo, 4
+foo:
+ .zero 4
+ .globl bar
+ .section .tdata,"awT",%progbits
+ .align 16
+ .type bar, %object
+ .size bar, 80
+bar:
+ .long 1
+ .zero 76
diff --git a/ld/testsuite/ld-elf/pr16498a.t b/ld/testsuite/ld-elf/pr16498a.t
new file mode 100644
index 0000000..928724f
--- /dev/null
+++ b/ld/testsuite/ld-elf/pr16498a.t
@@ -0,0 +1,6 @@
+SECTIONS
+{
+ .tdata : { *(.tdata) }
+ .data : { *(.data)
+ }
+}