This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: 64-bit PowerPC code quality regression
- To: David Edelsohn <dje at watson dot ibm dot com>
- Subject: Re: 64-bit PowerPC code quality regression
- From: Richard Henderson <rth at redhat dot com>
- Date: Fri, 7 Sep 2001 17:27:37 -0700
- Cc: gcc at gcc dot gnu dot org
- References: <200109072313.TAA24352@makai.watson.ibm.com>
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~