andis. %0,%1,%u2")
(define_insn "*anddi3_internal2"
- [(set (match_operand:CC 0 "cc_reg_operand" "=x,x,x,x,?y,??y,??y,?y")
+ [(set (match_operand:CC 0 "cc_reg_operand" "=x,x,x,x,?y,?y,??y,??y")
(compare:CC (and:DI (match_operand:DI 1 "gpc_reg_operand" "%r,r,r,r,r,r,r,")
- (match_operand:DI 2 "and64_operand" "r,K,J,S,r,K,J,S"))
+ (match_operand:DI 2 "and64_operand" "r,S,K,J,r,S,K,J"))
(const_int 0)))
(clobber (match_scratch:DI 3 "=r,r,r,r,r,r,r,r"))
- (clobber (match_scratch:CC 4 "=X,X,X,X,X,x,x,X"))]
+ (clobber (match_scratch:CC 4 "=X,X,X,X,X,X,x,x"))]
"TARGET_POWERPC64"
"@
and. %3,%1,%2
+ rldic%B2. %3,%1,0,%S2
andi. %3,%1,%b2
andis. %3,%1,%u2
- rldic%B2. %3,%1,0,%S2
#
#
#
#"
- [(set_attr "type" "compare,compare,compare,delayed_compare,compare,compare,compare,delayed_compare")
+ [(set_attr "type" "compare,delayed_compare,compare,compare,compare,delayed_compare,compare,compare")
(set_attr "length" "4,4,4,4,8,8,8,8")])
(define_split
"")
(define_insn "*anddi3_internal3"
- [(set (match_operand:CC 3 "cc_reg_operand" "=x,x,x,x,?y,??y,??y,?y")
+ [(set (match_operand:CC 3 "cc_reg_operand" "=x,x,x,x,?y,?y,??y,??y")
(compare:CC (and:DI (match_operand:DI 1 "gpc_reg_operand" "%r,r,r,r,r,r,r,r")
- (match_operand:DI 2 "and64_operand" "r,K,J,S,r,K,J,S"))
+ (match_operand:DI 2 "and64_operand" "r,S,K,J,r,S,K,J"))
(const_int 0)))
(set (match_operand:DI 0 "gpc_reg_operand" "=r,r,r,r,r,r,r,r")
(and:DI (match_dup 1) (match_dup 2)))
- (clobber (match_scratch:CC 4 "=X,X,X,X,X,x,x,X"))]
+ (clobber (match_scratch:CC 4 "=X,X,X,X,X,X,x,x"))]
"TARGET_POWERPC64"
"@
and. %0,%1,%2
+ rldic%B2. %0,%1,0,%S2
andi. %0,%1,%b2
andis. %0,%1,%u2
- rldic%B2. %0,%1,0,%S2
#
#
#
#"
- [(set_attr "type" "compare,compare,compare,delayed_compare,compare,compare,compare,delayed_compare")
+ [(set_attr "type" "compare,delayed_compare,compare,compare,compare,delayed_compare,compare,compare")
(set_attr "length" "4,4,4,4,8,8,8,8")])
(define_split
(define_insn ""
[(set (match_operand:CCEQ 0 "cc_reg_operand" "=y")
- (compare:CCEQ (match_operator:SI 2
+ (compare:CCEQ (match_operator:SI 1
"branch_positive_comparison_operator"
- [(match_operand 1
+ [(match_operand 2
"cc_reg_operand" "y")
(const_int 0)])
(const_int 0)))]