Christophe Lyon wrote:
On 26 May 2015 at 18:25, Alan Lawrence <alan.lawre...@arm.com> wrote:
I don't see this symptom - I am able to execute such subsets with either my,
or Sandra's, advsimd-intrinsics.exp.
I didn't try to run with your patch, I thought it was an oversight of yours.
Sorry, indeed I've just checked that gcc-dg-runtest includes the filter.
Is it that you have to check runtest_file_p because you are setting
gcc_parallel_test_enable to 0?
I'm doing more testing now, but I think I can drop my advsimd-intrinsics.exp
changes altogether; I'll post an updated patch series shortly.
In the meantime I'm curious as to why you found the gcc_parallel_test_enable
necessary? (And is it safe to reset it to 1 afterwards, rather than to a
saved value?)
See https://gcc.gnu.org/ml/gcc/2014-10/msg00081.html
So after working through the differences between Sandra's and my patch, I find
the existing advsimd-intrinsics.exp achieves pretty much the same thing, and
preserves the same list of test variants (e.g. the -Og -g from
set-torture-options which I had removed).
However, I've tried testing advsimd-intrinsics.exp (both the whole thing, and
individual tests using RUNTESTFLAGS) with and without this hunk:
@@ -57,20 +57,7 @@ set-torture-options $C_TORTURE_OPTIONS {{}} $LTO_TORTURE_OPTI
set additional_flags [add_options_for_arm_neon ""]
# Main loop.
-foreach src [lsort [glob -nocomplain $srcdir/$subdir/*.c]] {
- # If we're only testing specific files and this isn't one of them, skip it.
- if ![runtest_file_p $runtests $src] then {
- continue
- }
-
- # runtest_file_p is already run above, and the code below can run
- # runtest_file_p again, make sure everything for this test is
- # performed if the above runtest_file_p decided this runtest
- # instance should execute the test
- gcc_parallel_test_enable 0
- gcc-dg-runtest $src "" $additional_flags
- gcc_parallel_test_enable 1
-}
+gcc-dg-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.\[cS\]]] ""
${additional_flags}
and find exactly the same tests are run and pass. My hypothesis is thus that you
only need the explicit loop, manual checking of runtest_file_p, and
gcc_parallel_test_enable, in order to do *both* c-torture-execute *and*
gcc-dg-runtest; since we are now only doing the latter, this is unnecessary.
Does that make sense? (If you agree, I'll propose that as a standalone cleanup
patch.)
Cheers, Alan