Add a testcase for PR ld/24008

Message ID 20190129140843.29617-1-hjl.tools@gmail.com
State New
Headers show
Series
  • Add a testcase for PR ld/24008
Related show

Commit Message

H.J. Lu Jan. 29, 2019, 2:08 p.m.
PR ld/24008
	* testsuite/ld-scripts/defined.exp: Run pr24008.
	* testsuite/ld-scripts/pr24008.d: New file.
	* testsuite/ld-scripts/pr24008.map: Likewise.
	* testsuite/ld-scripts/pr24008.s: Likewise.
	* testsuite/ld-scripts/pr24008.t: Likewise.
---
 ld/ChangeLog                        | 9 +++++++++
 ld/testsuite/ld-scripts/defined.exp | 1 +
 ld/testsuite/ld-scripts/pr24008.d   | 8 ++++++++
 ld/testsuite/ld-scripts/pr24008.map | 7 +++++++
 ld/testsuite/ld-scripts/pr24008.s   | 2 ++
 ld/testsuite/ld-scripts/pr24008.t   | 8 ++++++++
 6 files changed, 35 insertions(+)
 create mode 100644 ld/testsuite/ld-scripts/pr24008.d
 create mode 100644 ld/testsuite/ld-scripts/pr24008.map
 create mode 100644 ld/testsuite/ld-scripts/pr24008.s
 create mode 100644 ld/testsuite/ld-scripts/pr24008.t

-- 
2.20.1

Patch

diff --git a/ld/ChangeLog b/ld/ChangeLog
index 2e3e7df01d..dc99b16151 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,12 @@ 
+2019-01-29  H.J. Lu  <hongjiu.lu@intel.com>
+
+	PR ld/24008
+	* testsuite/ld-scripts/defined.exp: Run pr24008.
+	* testsuite/ld-scripts/pr24008.d: New file.
+	* testsuite/ld-scripts/pr24008.map: Likewise.
+	* testsuite/ld-scripts/pr24008.s: Likewise.
+	* testsuite/ld-scripts/pr24008.t: Likewise.
+
 2019-01-29  Eric Botcazou  <ebotcazou@adacore.com>
 
 	* testsuite/ld-ifunc/ifunc.exp: Skip pr23169 on SPARC.
diff --git a/ld/testsuite/ld-scripts/defined.exp b/ld/testsuite/ld-scripts/defined.exp
index 21590e2955..d98e30757d 100644
--- a/ld/testsuite/ld-scripts/defined.exp
+++ b/ld/testsuite/ld-scripts/defined.exp
@@ -79,5 +79,6 @@  if ![is_aout_format] {
 if [is_elf_format] {
     run_dump_test "defined6"
 }
+run_dump_test "pr24008"
 set LDFLAGS "$saved_LDFLAGS"
 set ASFLAGS "$saved_ASFLAGS"
diff --git a/ld/testsuite/ld-scripts/pr24008.d b/ld/testsuite/ld-scripts/pr24008.d
new file mode 100644
index 0000000000..3938d4fa39
--- /dev/null
+++ b/ld/testsuite/ld-scripts/pr24008.d
@@ -0,0 +1,8 @@ 
+#ld: -T pr24008.t -Map tmpdir/pr24008.map
+#nm: -B
+#map: pr24008.map
+
+#...
+0+42 A defined
+0+42 A sym1
+0+43 A sym2
diff --git a/ld/testsuite/ld-scripts/pr24008.map b/ld/testsuite/ld-scripts/pr24008.map
new file mode 100644
index 0000000000..c33194085d
--- /dev/null
+++ b/ld/testsuite/ld-scripts/pr24008.map
@@ -0,0 +1,7 @@ 
+#...
+Linker script and memory map
+#...
+                0x0+42 +sym1 = 0x42
+                0x0+43 +sym2 = 0x43
+                0x0+42 +defined = DEFINED \(sym1\)\?sym1:sym2
+#...
diff --git a/ld/testsuite/ld-scripts/pr24008.s b/ld/testsuite/ld-scripts/pr24008.s
new file mode 100644
index 0000000000..328ba7453e
--- /dev/null
+++ b/ld/testsuite/ld-scripts/pr24008.s
@@ -0,0 +1,2 @@ 
+	.text
+	.byte 0
diff --git a/ld/testsuite/ld-scripts/pr24008.t b/ld/testsuite/ld-scripts/pr24008.t
new file mode 100644
index 0000000000..902088e284
--- /dev/null
+++ b/ld/testsuite/ld-scripts/pr24008.t
@@ -0,0 +1,8 @@ 
+SECTIONS {
+	.text : { *(.text) }
+	.data : { *(.data) }
+	.bss : { *(.bss) *(COMMON) }
+}
+sym1 = 0x42;
+sym2 = 0x43;
+defined = DEFINED (sym1) ? sym1 : sym2;