On 28 May 2015 at 13:32, Christophe Lyon <christophe.l...@linaro.org> wrote:
> On 28 May 2015 at 12:22, Alan Lawrence <alan.lawre...@arm.com> wrote:
>> 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.)
>>
>
> Indeed I think you are right. Since we no longer call
> c-torture-execute, we no longer need to call runtest_file_p here.
> Having only one remaining call to runtest_file_p in gcc-dg-runtest is
> parallel-safe. Thanks for the cleanup.
>

So in fact, except for the comment about '-w' it seems you initial
patch was mostly OK, right?

> Christophe.
>
>> Cheers, Alan
>>

Reply via email to