This is the mail archive of the mailing list for the GCC project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Is it Okay for GCC to do the following simplifications with "-ffast-math" flag

On 05/05/15 22:47, Jeff Law wrote:
On 05/05/2015 07:27 AM, Renlin Li wrote:
Hi all,

For the following illustrative code,

double f1(int x) { return (double)(float)x; } --> return (double)x;
int f2(double x) { return (int)(float)x; } --> return (int)x;

Is it Okay for the compiler to do the simplifications shown above with
fast-match enabled?
Standard practice these days for this kind of stuff is to have separate
flags for the various kinds of transformations.  -ffast-math can then
turn on those which are usually OK.

It certainly helps if the proposed transformation is safe across
industry standard benchmarks.    It also helps if you can show real
world cases where it helps and the domains where the transformations
result in unexpected results.

Thank you, Jeff!

I will do more investigations and check benchmarks about this.

Renlin Li

Ultimately it's a judgment call based on those kind of factors.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]