This is the mail archive of the
mailing list for the GCC project.
Re: What is acceptable for -ffast-math? (Was: associative law in combine)
On Tue, Jul 31, 2001 at 11:04:14AM +0200, Gabriel Dos Reis wrote:
> Not just because you claim they are silly makes them so.
> More to the point, you don't seem to realize that there are tons of
> problems where your theoretical issues of speed are nothing more than
But for these problems, you're supposed to use -mieee, not
-ffast-math. Or nothing at all. But we're talking about -ffast-math
here, which is already too incorrect for a simulations physicist, but
perfect for somebody doing 3D rendering, speech analysis, picture
In particular, if a/b/c won't overflow but a/(b*c) may you're already
into so tightly controlled conditions that using -ffast-math would be
somewhere between insanity and incompetence.
We're having 3 levels of "correctness" here:
-ffast-math: loose, works perfectly if you stay within reasonable
boundaries and don't try to get the last bit of precision
nothing: stricter, does what you write and don't try to be clever
-mieee: military-level following of the rules, including anything
and everything that happens for rouding, overflowing, etc...
There is a whole world of users there outside of numerical
computations as the physicist understand them. And for them speed is
important, and they know how to keep their values within the bounds
that the compiler and the processor handle efficiently. Don't go and