[llvm-dev] [test-suite] Fix for CFLAGS="-ffp-contract=on"

Sebastian Pop via llvm-dev llvm-dev at lists.llvm.org
Mon Oct 31 13:20:11 PDT 2016


Renato,

I see that you were not on CC to the following email thread.
I would appreciate if you could provide some guidance on how to fix
the test-suite.

On Mon, Oct 24, 2016 at 3:08 PM, Sebastian Pop <sebpop at gmail.com> wrote:
> On Thu, Oct 20, 2016 at 5:59 PM, Renato Golin <renato.golin at linaro.org> wrote:
>> So, let's separate the FP_CONTRACT from the FAST_MATH problems, and solve them separately, in separate patches.
>
> Agreed.
>
>>
>> We may want to avoid some tests with -Ofast or -ffast-math, but we don't want to avoid them with -ffp-contract, at least not as a first attempt.
>
> Agreed.
>
>> So, remove any trace of fp-contract from this patch and let's look at it from a fast-math perspective. Then we'll look at the fp problem in a separate patch, which should not be similar to this one as a first attempt, but something similar to what Sebastian did on his Polybench patch.
>>
>
> Out of the failing tests reported by the bot on aarch64 with the FP
> Contract patch,
> the Polybench should be fixed now, and there are 5 more tests failing:
>
> - MultiSource/Applications/oggenc: 48326 LoC
> I think this one we should avoid touching: it is way too large at 50K
> lines of code...
> Renato, do you agree to add "-ffp-contract=off" to the CFLAGS for oggenc?
>
> The other 4 seem to be "fixable" the way we fixed Polybench:
> - MultiSource/Benchmarks/MiBench/telecomm-FFT 288 LoC
> - MultiSource/Benchmarks/VersaBench/beamformer 279 LoC
> - SingleSource/Benchmarks/Linpack 586 LoC
> - SingleSource/Benchmarks/Misc-C++/Large/sphereflake.cpp 224 LoC
>
> I will submit separate patches for each of these 4.
> Renato, do you agree that this is a reasonable way to fix the
> test-suite when compiled with -ffp-contract=on?
>
> Thanks,
> Sebastian

On Mon, Oct 24, 2016 at 3:08 PM, Sebastian Pop <sebpop at gmail.com> wrote:
> - MultiSource/Benchmarks/MiBench/telecomm-FFT 288 LoC
https://reviews.llvm.org/D25924

> - MultiSource/Benchmarks/VersaBench/beamformer 279 LoC
https://reviews.llvm.org/D25923

> - SingleSource/Benchmarks/Linpack 586 LoC
> - SingleSource/Benchmarks/Misc-C++/Large/sphereflake.cpp 224 LoC
These two are harder.


More information about the llvm-dev mailing list