From: H.J. Lu Date: Wed, 29 Nov 2017 12:20:48 +0000 (-0800) Subject: ld: Add a testcase for PR ld/22471 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=08f650e6b657e59959d7db8af100720721bd10a2;p=binutils-gdb.git ld: Add a testcase for PR ld/22471 PR ld/22471 * testsuite/ld-elf/pr22471.t: New file. * testsuite/ld-elf/pr22471a.s: Likewise. * testsuite/ld-elf/pr22471b.s: Likewise. * testsuite/ld-elf/shared.exp (ASFLAGS): Define UNDERSCORE for underscore targets. Run PR ld/22471 tests. --- diff --git a/ld/ChangeLog b/ld/ChangeLog index 9bf3c3edf54..a6de996293e 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,13 @@ +2017-11-29 H.J. Lu + + PR ld/22471 + * testsuite/ld-elf/pr22471.t: New file. + * testsuite/ld-elf/pr22471a.s: Likewise. + * testsuite/ld-elf/pr22471b.s: Likewise. + * testsuite/ld-elf/shared.exp (ASFLAGS): Define UNDERSCORE for + underscore targets. + Run PR ld/22471 tests. + 2017-11-29 Stefan Stroe * po/Make-in (datadir): Define as @datadir@. diff --git a/ld/testsuite/ld-elf/pr22471.t b/ld/testsuite/ld-elf/pr22471.t new file mode 100644 index 00000000000..8862dc291df --- /dev/null +++ b/ld/testsuite/ld-elf/pr22471.t @@ -0,0 +1 @@ +{ local: *; }; diff --git a/ld/testsuite/ld-elf/pr22471a.s b/ld/testsuite/ld-elf/pr22471a.s new file mode 100644 index 00000000000..3bb6a92bdbd --- /dev/null +++ b/ld/testsuite/ld-elf/pr22471a.s @@ -0,0 +1 @@ +# Empty input. diff --git a/ld/testsuite/ld-elf/pr22471b.s b/ld/testsuite/ld-elf/pr22471b.s new file mode 100644 index 00000000000..f4edad04648 --- /dev/null +++ b/ld/testsuite/ld-elf/pr22471b.s @@ -0,0 +1,17 @@ + .type start,"function" + .global start +start: + .type _start,"function" + .global _start +_start: + .type __start,"function" + .global __start +__start: + .type main,"function" + .global main +main: + .ifdef UNDERSCORE + .dc.a ___bss_start + .else + .dc.a __bss_start + .endif diff --git a/ld/testsuite/ld-elf/shared.exp b/ld/testsuite/ld-elf/shared.exp index a40f8e0f59d..7514eb116bb 100644 --- a/ld/testsuite/ld-elf/shared.exp +++ b/ld/testsuite/ld-elf/shared.exp @@ -47,6 +47,40 @@ if [istarget "tic6x-*-*"] { append LFLAGS " -melf32_tic6x_le" } +if [is_underscore_target] { + set ASFLAGS "$ASFLAGS --defsym UNDERSCORE=1" +} + +run_ld_link_tests [list \ + [list \ + "Build pr22471a.so" \ + "$LFLAGS -shared" \ + "" \ + "$AFLAGS_PIC" \ + {pr22471a.s} \ + {} \ + "pr22471a.so" \ + ] \ + [list \ + "Build pr22471b.so" \ + "$LFLAGS -shared --version-script pr22471.t" \ + "tmpdir/pr22471a.so" \ + "$AFLAGS_PIC" \ + {pr22471a.s} \ + {} \ + "pr22471b.so" \ + ] \ + [list \ + "Build pr22471" \ + "$LFLAGS -rpath-link ." \ + "tmpdir/pr22471b.so" \ + "" \ + {pr22471b.s} \ + {} \ + "pr22471" \ + ] \ +] + # PR ld/20828 check for correct dynamic symbol table entries where: # - symbols have been defined with a linker script, # - the same symbols have been seen in shared library used in the link,