On Mon, May 7, 2012 at 4:35 PM, Steven Bosscher <stevenb....@gmail.com> wrote:
> Hello,
>
> This patch fixes PR53245.
> Bootstrapped&tested on powerpc64-unknown-linux-gnu. OK for trunk?

Ok.

Thanks,
Richard.

> Ciao!
> Steven
>
>
>        PR middle-end/53245
>        * gimplify.c (preprocess_case_label_vec_for_gimple): If low or high
>        is folded to a type boundary value, verify that the resulting case
>        label is still a care range.
>
> Index: gimplify.c
> ===================================================================
> --- gimplify.c  (revision 187219)
> +++ gimplify.c  (working copy)
> @@ -1658,6 +1658,10 @@ preprocess_case_label_vec_for_gimple (VEC(tree,hea
>                      && tree_int_cst_compare (high, max_value) > 0)
>                    high = max_value;
>                  high = fold_convert (index_type, high);
> +
> +                 /* We may have folded a case range to a one-value case.  */
> +                 if (tree_int_cst_equal (low, high))
> +                   high = NULL_TREE;
>                }
>            }

Reply via email to