The following two functions should be equalivant with --fast-math: int f(float a, float b) { return a*10 == b*10; } int f1(float a, float b) { return a == b; }
-- Summary: a*C == b*C is not foldded to a == b with --fast- math/floating point Product: gcc Version: 4.3.0 Status: UNCONFIRMED Keywords: missed-optimization Severity: enhancement Priority: P3 Component: middle-end AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: pinskia at gcc dot gnu dot org OtherBugsDependingO 19987 nThis: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31098