OBJCOPYFLAGS, READELF, READELFFLAGS, LD, LDFLAGS): Provide
default.
* lib/ld-lib.exp (run_dump_test): Import from gas testsuite. Add
new options "ld", "source", "xfail", "target", "notarget" and
"error". Support the runtest_file_p "*.exp=testname" feature.
(slurp_options, regexp_diff, file_contents, verbose_eval): Import
from gas testsuite.
* ld-bootstrap/bootstrap.exp: Rebuild tmpdir/ld2 with tmpdir/ld3
on Linux/mips.
* ld-elfvers/vers.exp: Also run on istarget Linux/mips.
* ld-elfvsb/elfvsb.exp: Likewise.
* ld-shared/shared.exp: Likewise.
* ld-selective/selective.exp: Mark selective2, selective3,
selective4 and selective5 xfail on Linux/mips.
* ld-shared/main.c: Skip invalid -Bsymbolic tests on Linux/mips.
* symbolic.dat: Remove invalid -Bsymbolic tests on Linux/mips.
* ld-srec/srec.exp: Add Linux/mips to xfail.
* ld-elfvers/vers.exp: Revert the last change.
* ld-elfvers/vers2.ver: Put back "tmpdir/" the version
references.
* ld-elfvers/vers3.ver: Likewise.
* ld-elfvers/vers6.ver: Likewise.
* ld-elfvers/vers18.ver: Likewise.
* ld-undefined/undefined.exp: XFAIL on FreeBSD/i386 for the usual (even
though it doesn't use DWARF2 yet (but its output is identical).
Approved by: Alan Modra <alan@linuxcare.com.au>
<Pine.LNX.4.21.0104021511350.487-100000@front.linuxcare.com.au>
* ld-selective/selective.exp: Use -O with gcc rather than -O2.
This optimization level is buggy on some platforms, and this test
is not intended to test compiler optimizations.
Approved by: Alan Modra <alan@linuxcare.com.au>
<Pine.LNX.4.21.0104021510450.487-100000@front.linuxcare.com.au>
* testsuite/ld-scripts/crossref.exp: Initialize flags to
[big_or_little_endian].
* testsuite/ld-undefined/undefined.exp: Ditto, and include $flags
in ld invocations.
* testsuite/lib/ld-lib.exp (big_or_little_endian): Recognize -EB,
-eb, EL and el.
(is_endian_output_format): New function.
(default_ld_link): Set flags to [big_or_little_endian] only if ld
is being invoked such that the output format being used is of
known endianness.
(default_ld_simple_link): Ditto.
* ld-bootstrap/bootstrap.exp: Rebuild tmpdir/ld2 with tmpdir/ld3
for -static on ia64.
* ld-checks/checks.exp: Don't run on ia64-*-elf* nor
ia64-*-linux*.
* ld-elfvers/vers.exp: Also run ia64-*-elf* and ia64-*-linux*.
* ld-elfvsb/elfvsb.exp: Use i?86-*-*. Also run on ia64-*-linux*.
Set up expected failures for ia64-*-linux*.
* ld-shared/shared.exp: Likewise.
* ld-elfvsb/elfvsb.exp (support_protected): New variable. Check
and set to "yes" if the protected visibility is expected to
pass.
(visibility_run): Set expected to fail for the "protected"
and "protected_undef_def" tests only if $support_protected is
"no".
* ld-elfvsb/main.c (PROTECTED_CHECK): Check for the protected
visibility support if defined.
* ld-elfvsb/elfvsb.exp (visibility_run): Set expected failure
for "protected_undef_def".
* ld-elfvsb/main.c: Don't define HIDDEN_UNDEF_TEST when
PROTECTED_WEAK_TEST is defined.
Don't define PROTECTED_UNDEF_TEST when PROTECTED_WEAK_TEST is
defined.
Define PROTECTED_TEST when PROTECTED_UNDEF_TEST is defined.
* ld-elfvsb/sh1.c (visibility): Mark protected only if
PROTECTED_TEST, PROTECTED_UNDEF_TEST or PROTECTED_WEAK_TEST
is defined.
(visibility_var): Likewise.