On Fri, May 8, 2015 at 9:38 AM, Segher Boessenkool
<seg...@kernel.crashing.org> wrote:
> This peephole transforms
>
>   lis a,HI ; ori a,a,LO
>   cmpw c,a,b ; beq c,...
>
> to
>
>   xoris a,b,HI1
>   cmpwi c,a,LO1 ; beq c,...
>
> when a and c are dead after this.  But it forgets to check that a and b
> are not the same reg, generating non-sensical code.  This patch fixes that.
>
> Tested etc.; is this okay for trunk?
>
> (This peephole caused some FAILs in the testsuite after an unrelated change;
> gone after this patch).
>
>
> Segher
>
>
> 2015-05-08  Segher Boessenkool  <seg...@kernel.crashing.org>
>
>         * config/rs6000/rs6000.md: Require operand inequality in one
>         of the peepholes.

Okay.

Is there an artificial testcase?

Thanks, David

Reply via email to