[llvm-dev] [test-suite] making polybench/symm succeed with "-Ofast" and "-ffp-contract=on"

Renato Golin via llvm-dev llvm-dev at lists.llvm.org
Wed Oct 12 07:16:39 PDT 2016


On 12 October 2016 at 15:05, Hal Finkel <hfinkel at anl.gov> wrote:
> This is something we need to understand. No, there's not always an error bar. With FMA formation and without non-IEEE-compliant optimizations (i.e. fast-math), the optimized answer should be identical to the non-optimized answer.

What about architectures that this is never respected, like Darwin?

In the general case, indeed, optimisation levels should not change the
IEEE representation and the tests should be deterministic.

But we can't guarantee this will always be the case.


> We still do see cross-system discrepancies sometimes because of differences in denormal handling, but on the same system that should be consistent (aside, perhaps, from compiler-level constant-folding issues).

But the test-suite doesn't run on a single system, nor it has one
reference_output for each system.

cheers,
--renato


More information about the llvm-dev mailing list