cris.md ("*andsi_movu"): Correct parentheses in predicate.
* config/cris/cris.md ("*andsi_movu"): Correct parentheses in predicate. ("*andsi_clear"): Tweak constraints to not match postincrement. Adjust the predicate to exclude a volatile memory reference. ("*andhi_clear"): Ditto. Rename from "*andhi_clear_signed". ("*andhi_clear_unsigned"): Remove, non-matching pattern. From-SVN: r78147
This commit is contained in:
parent
88e3a2a398
commit
f38a62ffc5
@ -1,3 +1,12 @@
|
||||
2004-02-20 Hans-Peter Nilsson <hp@axis.com>
|
||||
|
||||
* config/cris/cris.md ("*andsi_movu"): Correct parentheses in
|
||||
predicate.
|
||||
("*andsi_clear"): Tweak constraints to not match postincrement.
|
||||
Adjust the predicate to exclude a volatile memory reference.
|
||||
("*andhi_clear"): Ditto. Rename from "*andhi_clear_signed".
|
||||
("*andhi_clear_unsigned"): Remove, non-matching pattern.
|
||||
|
||||
2004-02-19 Matt Kraai <kraai@alumni.cmu.edu>
|
||||
|
||||
* move-if-change: Remove.
|
||||
|
@ -2685,16 +2685,17 @@
|
||||
[(set (match_operand:SI 0 "register_operand" "=r,r,r")
|
||||
(and:SI (match_operand:SI 1 "nonimmediate_operand" "%r,Q,To")
|
||||
(match_operand:SI 2 "const_int_operand" "n,n,n")))]
|
||||
"INTVAL (operands[2]) == 255 || INTVAL (operands[2]) == 65535
|
||||
"(INTVAL (operands[2]) == 255 || INTVAL (operands[2]) == 65535)
|
||||
&& (GET_CODE (operands[1]) != MEM || ! MEM_VOLATILE_P (operands[1]))"
|
||||
"movu.%z2 %1,%0"
|
||||
[(set_attr "slottable" "yes,yes,no")])
|
||||
|
||||
(define_insn "*andsi_clear"
|
||||
[(set (match_operand:SI 0 "nonimmediate_operand" "=r,r,Q>,Q>,m,m")
|
||||
[(set (match_operand:SI 0 "nonimmediate_operand" "=r,r,Q,Q,To,To")
|
||||
(and:SI (match_operand:SI 1 "nonimmediate_operand" "%0,0,0,0,0,0")
|
||||
(match_operand:SI 2 "const_int_operand" "P,n,P,n,P,n")))]
|
||||
"INTVAL (operands[2]) == -65536 || INTVAL (operands[2]) == -256"
|
||||
"(INTVAL (operands[2]) == -65536 || INTVAL (operands[2]) == -256)
|
||||
&& (GET_CODE (operands[0]) != MEM || ! MEM_VOLATILE_P (operands[0]))"
|
||||
"@
|
||||
cLear.b %0
|
||||
cLear.w %0
|
||||
@ -2778,21 +2779,11 @@
|
||||
"mOvu.b %1,%0"
|
||||
[(set_attr "slottable" "yes,yes,no")])
|
||||
|
||||
(define_insn "*andhi_clear_signed"
|
||||
[(set (match_operand:HI 0 "nonimmediate_operand" "=r,Q>,m")
|
||||
(define_insn "*andhi_clear"
|
||||
[(set (match_operand:HI 0 "nonimmediate_operand" "=r,Q,To")
|
||||
(and:HI (match_operand:HI 1 "nonimmediate_operand" "0,0,0")
|
||||
(const_int -256)))]
|
||||
""
|
||||
"cLear.b %0"
|
||||
[(set_attr "slottable" "yes,yes,no")
|
||||
(set_attr "cc" "none")])
|
||||
|
||||
;; FIXME: Either this or the pattern above should be redundant.
|
||||
(define_insn "*andhi_clear_unsigned"
|
||||
[(set (match_operand:HI 0 "nonimmediate_operand" "=r,Q>,m")
|
||||
(and:HI (match_operand:HI 1 "nonimmediate_operand" "0,0,0")
|
||||
(const_int 65280)))]
|
||||
""
|
||||
"GET_CODE (operands[0]) != MEM || ! MEM_VOLATILE_P (operands[0])"
|
||||
"cLear.b %0"
|
||||
[(set_attr "slottable" "yes,yes,no")
|
||||
(set_attr "cc" "none")])
|
||||
|
Loading…
Reference in New Issue
Block a user