64-bit PowerPC code quality regression
Richard Henderson
rth@redhat.com
Fri Sep 7 17:27:00 GMT 2001
On Fri, Sep 07, 2001 at 07:13:09PM -0400, David Edelsohn wrote:
> For 64-bit PowerPC (AIX), it produces:
>
> li 3,-1
> rldicr 3,3,0,47
This splitter matches.
(define_split
[(set (match_operand:DI 0 "gpc_reg_operand" "")
(match_operand:DI 1 "mask64_operand" ""))]
"TARGET_POWERPC64 && num_insns_constant (operands[1], DImode) > 1"
[(set (match_dup 0) (const_int -1))
(set (match_dup 0)
(and:DI (rotate:DI (match_dup 0)
(const_int 0))
(match_dup 1)))]
"")
Since 0xff..ff0000 is mask64_operand, and in num_insns_constant
we have
if (mask64_operand (op, mode))
return 2;
r~
More information about the Gcc
mailing list