On Wed, May 6, 2015 at 9:36 AM, Segher Boessenkool
<seg...@kernel.crashing.org> wrote:
> This patch makes cstore expand all comparisons against a constant
> (that aren't already handled by a subfc;subfe sequence) as an
> addi ; [n]{and,or}[c] ; sr[wd]i  sequence.  It expands all the
> possible inversions separately (as well as add to zero); combine
> and friends will take care of all that.
>
> The two new expanders take a const_int_operand; this is more than
> they can handle, but much less than its only caller (cstore) will
> give it.  cstore should handle more than just short operands as
> it does now, but this patch doesn't touch that.
>
> Bootstrapped and tested on powerpc64-linux, with the usual set of flags
> (-m32,-m32/-mpowerpc64,-m64,-m64/-mlra); no regressions.  This code is
> used thousands of times in the compiler itself, so no testcases.
>
> Okay for trunk?
>
>
> Segher
>
>
> 2015-05-06  Segher Boessenkool  <seg...@kernel.crashing.org>
>
>         * config/rs6000/rs6000.md (cstore<mode>4_signed_imm): New expander.
>         (cstore<mode>4_unsigned_imm): New expander.
>         (cstore<mode>4): Remove empty constraint strings.  Use the new
>         expanders.

Okay.

Thanks, David

Reply via email to