..., just conditionalize its profiling test (as done elsewhere). The
re-enabled test cases all PASS.
For the record, for example for GCN target, this causes:
Running [...]/gcc/testsuite/gcc.misc-tests/options.exp ...
-PASS: compiler driver --coverage option(s)
PASS: compiler driver -fdump-ipa-all-address option(s)
PASS: compiler driver -fdump-ipa-all-alias option(s)
PASS: compiler driver -fdump-ipa-all-all option(s)
That was:
Running [...]/gcc/testsuite/gcc.misc-tests/options.exp ...
Executing on host: [xgcc] [...] --coverage [...]
[...]
ld: error: undefined symbol: __gcov_exit
>>> referenced by /tmp/ccRGdqjA.o:(_sub_D_00100_1)
>>> referenced by /tmp/ccRGdqjA.o:(_sub_D_00100_1)
collect2: error: ld returned 1 exit status
compiler exited with status 1
output is:
[...]
PASS: compiler driver --coverage option(s)
..., so that's nothing to worry about.
gcc/testsuite/
* gcc.misc-tests/options.exp: Re-enable for nvptx.
load_lib gcc-defs.exp
-# disable for non-profile targets explitly, rather than
-# rely on check-effective target. We're explicitly trying to check
-# profiling works, and if it doesn't check-effective-target will
-# simply skip the tests, rather than have this test shout at us.
-if [ istarget "nvptx-*-*" ] { return 0 }
-
# These tests don't run runtest_file_p consistently if it
# doesn't return the same values, so disable parallelization
# of this *.exp file. The first parallel runtest to reach
pass $test
}
-check_for_all_options c {--coverage} {-fprofile-arcs -ftest-coverage} {} {-lgcov}
+if { [check_profiling_available "-fprofile-arcs"] } {
+ check_for_all_options c {--coverage} {-fprofile-arcs -ftest-coverage} {} {-lgcov}
+}
proc get_dump_flags {} {
set res [list]