On Wed, Dec 10, 2014 at 07:57:46AM +0100, Marek Polacek wrote:
> I don't really know this code, but this typo looks obvious enough.
> Using if (p->high != NULL_TREE) ... else if (p->high != NULL_TREE)
> couldn't be possibly desired, so use Q in the else branch, as in
> the code slightly above.
> 
> Bootstrapped/regtested on x86_64-linux and ppc64-linux, ok for trunk?
> 
> 2014-12-10  Marek Polacek  <pola...@redhat.com>
> 
>       PR tree-optimization/61686
>       * tree-ssa-reassoc.c (range_entry_cmp): Use q->high instead of
>       p->high.

Ok for trunk/4.9/4.8.  Shouldn't we have a FE warning for this kind of thing?
I mean
  if (conditionX)
    {
    }
  else if (conditionY)
    ...
when the two conditions don't have side-effects and are operand_equal_p?

> diff --git gcc/tree-ssa-reassoc.c gcc/tree-ssa-reassoc.c
> index 68a67b6..00bca8b 100644
> --- gcc/tree-ssa-reassoc.c
> +++ gcc/tree-ssa-reassoc.c
> @@ -2069,7 +2069,7 @@ range_entry_cmp (const void *a, const void *b)
>             else
>               return -1;
>           }
> -       else if (p->high != NULL_TREE)
> +       else if (q->high != NULL_TREE)
>           return 1;
>         /* If both ranges are the same, sort below by ascending idx.  */
>       }

        Jakub

Reply via email to