[PATCH, LD, AArch64] Fix ifunc testisms
authorAndre Simoes Dias Vieira <andre.simoesdiasvieira@arm.com>
Thu, 19 Jul 2018 15:18:28 +0000 (16:18 +0100)
committerAndre Simoes Dias Vieira <andre.simoesdiasvieira@arm.com>
Fri, 20 Jul 2018 15:35:37 +0000 (16:35 +0100)
This patch fixes some ifunc testisms after H.J. Lu's patch to enable the
use of IFUNC pointers in position dependent code for binutils. See PR
LD/23169 in binutils bugzilla.

The aarch64 ifunc error message test was changed to no longer expect
this error message as this is now an accepted combination. This patch
also disables the executable tests added by H.J. Lu for aarch64, just as
Alan Modra did with his patch, as these tests only seem to work on some
architectures.

ld/ChangeLog:
2018-07-19  Andre Vieira  <andre.simoesdiasvieira@arm.com>

* testsuite/ld-aarch64/ifunc-9.d: Remove no longer expected error.
* testsuite/ld-ifunc/ifunc.exp: Disable tests for aarch64.

ld/testsuite/ld-aarch64/ifunc-9.d
ld/testsuite/ld-ifunc/ifunc.exp

index 3b4e995..e921591 100644 (file)
@@ -1,3 +1,4 @@
 #ld: --export-dynamic
-#error: .*dynamic STT_GNU_IFUNC symbol `foo' with pointer equality in `.*.o' can not be used when making an executable; recompile with -fPIE and relink with -pie
+#objdump: -dr
 #target: aarch64*-*-*
+#...
index 612d914..86892b9 100644 (file)
@@ -713,7 +713,7 @@ run_ld_link_exec_tests [list \
 # That does not happen for the pr23169 testcase where the resolver is
 # in the executable (which is relocated last by ld.so).
 if { [isnative]
-     && ![istarget "powerpc-*-*"] } {
+     && !([istarget "powerpc-*-*"] || [istarget "aarch64*-*-*"]) } {
 run_ld_link_exec_tests [list \
     [list \
        "Run pr23169a" \