Fix 61441 [3/5] Remove flag_errno_math check for RINT

Richard Biener richard.guenther@gmail.com
Thu Nov 26 09:41:00 GMT 2015


On Thu, Nov 26, 2015 at 9:31 AM, Saraswati, Sujoy (OSTL)
<sujoy.saraswati@hpe.com> wrote:
> Hi,
>  This patch removes flag_errno_math check for RINT, treating it similar to nearbyint.
> Regards,
> Sujoy

Ok.

Richard.

>   2015-11-26  Sujoy Saraswati <sujoy.saraswati@hpe.com>
>
>             PR tree-optimization/61441
>             * match.pd (f(x) -> x): Removed flag_errno_math check for RINT.
>
> Index: gcc/match.pd
> ===================================================================
> --- gcc/match.pd        (revision 230851)
> +++ gcc/match.pd        (working copy)
> @@ -2565,16 +2565,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



More information about the Gcc-patches mailing list