This series of patches fix PR61441.

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
This commit is contained in:
Sujoy Saraswati 2015-12-20 09:20:57 +00:00 committed by Sujoy Saraswati
parent 683aa9290b
commit afeb246c1b
2 changed files with 6 additions and 7 deletions

View File

@ -1,3 +1,8 @@
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

View File

@ -2566,16 +2566,10 @@ DEFINE_INT_AND_FLOAT_ROUND_FN (RINT)
(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