From c7df3df443db7b1840735c86a38e00243a2902f7 Mon Sep 17 00:00:00 2001 From: Alan Modra Date: Wed, 11 Jul 2018 13:53:20 +0930 Subject: [PATCH] Revise "ld testsuite use of notarget" git commit 624940689a wrongly changed fill.d and fill16.d notarget entries to xfail, so revert that change and instead replace notarget with skip. The two tests are complementary. This patch also modifies the pr20022 test to use .data, avoiding xfails on targets that complain about dynamic relocations in .text. This shows a bug in metag which discards section _foo in pr2022.so. * testsuite/ld-elf/hash.d: Comment on mips xfail. * testsuite/ld-gc/pr20022b.s: Use .data not .text. * testsuite/ld-gc/pr20022.d: Remove xfails. * testsuite/ld-scripts/fill.d: Revert most of last patch, but use skip rather than notarget. * testsuite/ld-scripts/fill16.d: Likewise. --- ld/ChangeLog | 9 +++++++++ ld/testsuite/ld-elf/hash.d | 2 ++ ld/testsuite/ld-gc/pr20022.d | 2 -- ld/testsuite/ld-gc/pr20022b.s | 2 +- ld/testsuite/ld-scripts/fill.d | 12 ++++++------ ld/testsuite/ld-scripts/fill16.d | 7 ++++--- 6 files changed, 22 insertions(+), 12 deletions(-) diff --git a/ld/ChangeLog b/ld/ChangeLog index 01e9465a227..f2c1103e741 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,12 @@ +2018-07-11 Alan Modra + + * testsuite/ld-elf/hash.d: Comment on mips xfail. + * testsuite/ld-gc/pr20022b.s: Use .data not .text. + * testsuite/ld-gc/pr20022.d: Remove xfails. + * testsuite/ld-scripts/fill.d: Revert most of last patch, but use + skip rather than notarget. + * testsuite/ld-scripts/fill16.d: Likewise. + 2018-07-10 Maciej W. Rozycki * testsuite/ld-mips-elf/mips-elf.exp: Limit export class call diff --git a/ld/testsuite/ld-elf/hash.d b/ld/testsuite/ld-elf/hash.d index 593d48739b2..fb079124e5b 100644 --- a/ld/testsuite/ld-elf/hash.d +++ b/ld/testsuite/ld-elf/hash.d @@ -3,6 +3,8 @@ #ld: -shared --hash-style=gnu #target: *-*-linux* *-*-gnu* arm*-*-uclinuxfdpiceabi #xfail: mips*-*-* +# GNU hash is not supported for MIPS targets due to psABI restrictions +# on dynsym table ordering. #... +0x[0-9a-z]+ +\(GNU_HASH\) +0x[0-9a-z]+ diff --git a/ld/testsuite/ld-gc/pr20022.d b/ld/testsuite/ld-gc/pr20022.d index 681c68c48bd..7623041c410 100644 --- a/ld/testsuite/ld-gc/pr20022.d +++ b/ld/testsuite/ld-gc/pr20022.d @@ -2,8 +2,6 @@ #ld: --gc-sections -e _start tmpdir/pr20022.so #readelf: -SsW #target: *-*-linux* *-*-gnu* arm*-*-uclinuxfdpiceabi -#xfail: frv-*-* metag-*-* mips*-*-* -# Skip on targets without dynamic relocations in .text section. #... \[[ 0-9]+\] _foo[ \t]+PROGBITS[ \t]+[0-9a-f]+ +[0-9a-f]+ +[0-9a-f]+[ \t]+.* diff --git a/ld/testsuite/ld-gc/pr20022b.s b/ld/testsuite/ld-gc/pr20022b.s index 2306c59d765..029956e8912 100644 --- a/ld/testsuite/ld-gc/pr20022b.s +++ b/ld/testsuite/ld-gc/pr20022b.s @@ -1,4 +1,4 @@ - .text + .data .globl _start _start: .dc.a __start__foo diff --git a/ld/testsuite/ld-scripts/fill.d b/ld/testsuite/ld-scripts/fill.d index 07dca0b6491..4a263497a8b 100644 --- a/ld/testsuite/ld-scripts/fill.d +++ b/ld/testsuite/ld-scripts/fill.d @@ -3,13 +3,13 @@ #source: fill_2.s #ld: -T fill.t #objdump: -s -j .text -#xfail: alpha*-*-*ecoff ia64-*-* m32c-*-* mips*-*-freebsd* mips*-*-gnu* -#xfail: mips*-*-irix* mips*-*-kfreebsd* mips*-*-linux* mips*-*-netbsd* -#xfail: mips*-*-openbsd* mips*-*-sysv4* sh-*-pe sparc*-*-coff -#xfail: tic30-*-coff tic4x-*-* tic54x-*-* tilegx*-*-* tilepro-*-* -#xfail: x86_64-*-cygwin x86_64-*-mingw* x86_64-*-pe* z8k-*-* +#skip: ia64-*-* mips*-*-freebsd* mips*-*-gnu* mips*-*-irix* mips*-*-kfreebsd* +#skip: mips*-*-linux* mips*-*-netbsd* mips*-*-openbsd* mips*-*-sysv4* +#skip: tilegx*-*-* tilepro-*-* x86_64-*-cygwin x86_64-*-mingw* x86_64-*-pe* +#xfail: alpha*-*-*ecoff m32c-*-* sh-*-pe sparc*-*-coff +#xfail: tic30-*-coff tic4x-*-* tic54x-*-* z8k-*-* # -# See also fill16.d. We use `notarget' for configurations unsupported +# See also fill16.d. We use `skip' for configurations unsupported # here that are covered there, and `xfail' for configurations that work # in neither place. See below for details as to why individual # configurations are listed above. diff --git a/ld/testsuite/ld-scripts/fill16.d b/ld/testsuite/ld-scripts/fill16.d index 371f38e785c..693b80c5f1c 100644 --- a/ld/testsuite/ld-scripts/fill16.d +++ b/ld/testsuite/ld-scripts/fill16.d @@ -3,10 +3,11 @@ #source: fill16_2.s #ld: -T fill.t #objdump: -s -j .text -#xfail: alpha*-*-*ecoff arm-*-coff i[3-7]86-*-coff m32c-*-* sh-*-pe -#xfail: sparc*-*-coff tic30-*-coff tic4x-*-* tic54x-*-* z8k-*-* +#skip: arm-*-coff i[3-7]86-*-coff +#xfail: alpha*-*-*ecoff m32c-*-* sh-*-pe sparc*-*-coff +#xfail: tic30-*-coff tic4x-*-* tic54x-*-* z8k-*-* # -# See also fill.d. We use `notarget' for configurations unsupported +# See also fill.d. We use `skip' for configurations unsupported # here that are covered there, and `xfail' for configurations that work # with neither place. See below for details as to why individual # configurations are listed above. -- 2.30.2