aboutsummaryrefslogtreecommitdiff
path: root/ld
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2017-05-02 13:54:22 -0700
committerH.J. Lu <hjl.tools@gmail.com>2017-05-02 13:54:22 -0700
commit640226f048b67d79da85742728e40114c9ee5da0 (patch)
tree77ce57cce5420fc959017c0862c1855b857dbc32 /ld
parent2ecf0cc317d065cfeb960c61688897351521bce0 (diff)
downloadgdb-640226f048b67d79da85742728e40114c9ee5da0.zip
gdb-640226f048b67d79da85742728e40114c9ee5da0.tar.gz
gdb-640226f048b67d79da85742728e40114c9ee5da0.tar.bz2
Add a test for PR ld/21384
PR ld/21384 * testsuite/ld-elf/pr21384.d: New file. * testsuite/ld-elf/pr21384.dl: Likewise. * testsuite/ld-elf/pr21384.ld: Likewise. * testsuite/ld-elf/pr21384.s: Likewise.
Diffstat (limited to 'ld')
-rw-r--r--ld/ChangeLog8
-rw-r--r--ld/testsuite/ld-elf/pr21384.d11
-rw-r--r--ld/testsuite/ld-elf/pr21384.dl4
-rw-r--r--ld/testsuite/ld-elf/pr21384.ld22
-rw-r--r--ld/testsuite/ld-elf/pr21384.s2
5 files changed, 47 insertions, 0 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog
index 238404d..4fc4e1d 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,11 @@
+2017-05-02 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/21384
+ * testsuite/ld-elf/pr21384.d: New file.
+ * testsuite/ld-elf/pr21384.dl: Likewise.
+ * testsuite/ld-elf/pr21384.ld: Likewise.
+ * testsuite/ld-elf/pr21384.s: Likewise.
+
2017-05-01 H.J. Lu <hongjiu.lu@intel.com>
* testsuite/ld-i386/tls.exp: Run GNU2 TLS tests only if there
diff --git a/ld/testsuite/ld-elf/pr21384.d b/ld/testsuite/ld-elf/pr21384.d
new file mode 100644
index 0000000..5a3aedc
--- /dev/null
+++ b/ld/testsuite/ld-elf/pr21384.d
@@ -0,0 +1,11 @@
+#ld: -T pr21384.ld --dynamic-list $srcdir/$subdir/pr21384.dl --no-dynamic-linker
+#readelf : --dyn-syms --wide
+#target: *-*-linux* *-*-gnu* *-*-solaris*
+
+Symbol table '\.dynsym' contains [0-9]+ entries:
+ +Num: +Value +Size Type +Bind +Vis +Ndx Name
+ +0: 0+ +0 +NOTYPE +LOCAL +DEFAULT +UND +
+#...
+ +[0-9]+: +[a-f0-9]+ +0 +NOTYPE +GLOBAL +DEFAULT +[0-9]+ +edata
+ +[0-9]+: +[a-f0-9]+ +0 +NOTYPE +GLOBAL +DEFAULT +[0-9]+ +fdata
+#pass
diff --git a/ld/testsuite/ld-elf/pr21384.dl b/ld/testsuite/ld-elf/pr21384.dl
new file mode 100644
index 0000000..b164dc0
--- /dev/null
+++ b/ld/testsuite/ld-elf/pr21384.dl
@@ -0,0 +1,4 @@
+{
+ fdata;
+ edata;
+};
diff --git a/ld/testsuite/ld-elf/pr21384.ld b/ld/testsuite/ld-elf/pr21384.ld
new file mode 100644
index 0000000..034887d
--- /dev/null
+++ b/ld/testsuite/ld-elf/pr21384.ld
@@ -0,0 +1,22 @@
+SECTIONS
+{
+ .data :
+ {
+ fdata = .;
+ *(.data)
+ edata = .;
+ }
+ .dynamic : { *(.dynamic) }
+ .hash : { *(.hash) }
+ .dynsym : { *(.dynsym) }
+ .dynstr : { *(.dynstr) }
+ .gnu.version : { *(.gnu.version) }
+ .gnu.version_d : { *(.gnu.version_d) }
+ .shstrtab : { *(.shstrtab) }
+ .symtab : { *(.symtab) }
+ .strtab : { *(.strtab) }
+ .plt : { *(.plt) }
+ .got.plt : { *(.got.plt) }
+ .got : { *(.got) }
+ /DISCARD/ : { *(*) }
+}
diff --git a/ld/testsuite/ld-elf/pr21384.s b/ld/testsuite/ld-elf/pr21384.s
new file mode 100644
index 0000000..ece49d5
--- /dev/null
+++ b/ld/testsuite/ld-elf/pr21384.s
@@ -0,0 +1,2 @@
+ .data
+ .byte 0