This series of patches fix PR61441. This patch removes flag_errno_math check
for RINT, treating it similar to nearbyint.
Bootstrapped & regression-tested on x86_64-linux-gnu.
gcc/
* match.pd (f(x) -> x): Removed flag_errno_math check for RINT.
From-SVN: r231858
+2015-12-20 Sujoy Saraswati <sujoy.saraswati@hpe.com>
+
+ PR tree-optimization/61441
+ * match.pd (f(x) -> x): Removed flag_errno_math check for RINT.
+
2015-12-20 Sujoy Saraswati <sujoy.saraswati@hpe.com>
PR tree-optimization/61441
(fns (fns @0))
(fns @0)))
/* f(x) -> x if x is integer valued and f does nothing for such values. */
-(for fns (TRUNC FLOOR CEIL ROUND NEARBYINT)
+(for fns (TRUNC FLOOR CEIL ROUND NEARBYINT RINT)
(simplify
(fns integer_valued_real_p@0)
@0))
-/* Same for rint. We have to check flag_errno_math because
- integer_valued_real_p accepts +Inf, -Inf and NaNs as integers. */
-(if (!flag_errno_math)
- (simplify
- (RINT integer_valued_real_p@0)
- @0))
/* hypot(x,0) and hypot(0,x) -> abs(x). */
(simplify