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 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.
if [is_elf_format] {
run_dump_test "defined6"
}
+run_dump_test "pr24008"
set LDFLAGS "$saved_LDFLAGS"
set ASFLAGS "$saved_ASFLAGS"
--- /dev/null
+#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
--- /dev/null
+#...
+Linker script and memory map
+#...
+ 0x0+42 +sym1 = 0x42
+ 0x0+43 +sym2 = 0x43
+ 0x0+42 +defined = DEFINED \(sym1\)\?sym1:sym2
+#...
--- /dev/null
+ .text
+ .byte 0
--- /dev/null
+SECTIONS {
+ .text : { *(.text) }
+ .data : { *(.data) }
+ .bss : { *(.bss) *(COMMON) }
+}
+sym1 = 0x42;
+sym2 = 0x43;
+defined = DEFINED (sym1) ? sym1 : sym2;