Floating point constants are not deterministic across platforms #25233
Labels
bugzilla
Issues migrated from bugzilla
clang:codegen
IR generation bugs: mangling, exceptions, etc.
floating-point
Floating-point math
Extended Description
If I install exactly the same version of Clang (3.7.0-RELEASE) on Mac OS X, FreeBSD and Linux, all targeting the same platform (x86_64-unknown-cloudabi) and build the same source file at different optimization levels, I get different results. This bug is similar in nature to bug 24734, but the root cause is different. My suspicion is that this is related to FPU rounding modes.
Attached is a tarball that contains a C source file, foo.c, that is a reduced testcase based on libspeex's vbr.c. This testcase has been built on Mac OS X, FreeBSD and Linux, using different optimization modes. As you can see, anything above -O0 yields different results.
The text was updated successfully, but these errors were encountered: