This is a proposal to introduce an optimization level -Ofast
that can collect (target specific) optimization flags that
can affect runtime behavior such as -funsafe-math-optimizations
or -mrecip.

Currently none of the standard optimization levels have this
kind of affect and we should not change that (people might
argue that -funsafe-math-optimizations can go into -O3).

For floating-point intensive programs people often disregard
the various special (and target dependent) flags and/or do
not know about -ffast-math.  -Ofast on the other hand is
recognized by many compilers and is widely known to affect
program behavior in corner cases.

I would initially propose to make -Ofast be -O3 -ffast-math
and would strongly encourage target maintainers that consider
adding to -Ofast make sure that popular benchmarks for
their target still behave correctly when using -Ofast.

Any comments or objections?

After the discussion has died down I will propose a patch
to gcc-patches.

Thanks,
Richard.

Reply via email to