On Fri, 12 Dec 2014, Marek Polacek wrote:

> On ARM we ICE on fixed-point-exec.c testcase because TYPE_OVERFLOW_WRAPS
> was missing the ANY_INTEGRAL_TYPE_P check.
> 
> Bootstrapped/regtested on x86_64-linux and ppc64-linux, ok for trunk?

Ok.

THanks,
Richard.

> 2014-12-12  Marek Polacek  <pola...@redhat.com>
> 
>       PR middle-end/64274
>       * fold-const.c (fold_binary_loc): Add ANY_INTEGRAL_TYPE_P check.
> 
> diff --git gcc/fold-const.c gcc/fold-const.c
> index ec5ad98..d71fa94 100644
> --- gcc/fold-const.c
> +++ gcc/fold-const.c
> @@ -10082,7 +10082,8 @@ fold_binary_loc (location_t loc,
>         /* Reassociate (plus (plus (mult) (foo)) (mult)) as
>            (plus (plus (mult) (mult)) (foo)) so that we can
>            take advantage of the factoring cases below.  */
> -       if (TYPE_OVERFLOW_WRAPS (type)
> +       if (ANY_INTEGRAL_TYPE_P (type)
> +           && TYPE_OVERFLOW_WRAPS (type)
>             && (((TREE_CODE (arg0) == PLUS_EXPR
>                   || TREE_CODE (arg0) == MINUS_EXPR)
>                  && TREE_CODE (arg1) == MULT_EXPR)
> 
>       Marek
> 
> 

-- 
Richard Biener <rguent...@suse.de>
SUSE LINUX GmbH, GF: Felix Imendoerffer, Jane Smithard, Jennifer Guild,
Dilip Upmanyu, Graham Norton HRB 21284 (AG Nuernberg)

Reply via email to