This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[rx] fix bitclr output constraints
- From: DJ Delorie <dj at redhat dot com>
- To: gcc-patches at gcc dot gnu dot org
- Cc: nickc at redhat dot com
- Date: Thu, 26 Aug 2010 20:55:58 -0400
- Subject: [rx] fix bitclr output constraints
The bitset patterns had "=r" but these didn't, causing reload
failures. Ok to apply?
* config/rx/rx.md (bitclr): Don't mark the output as early-clobber.
(bitclr_in_memory): Likewise.
Index: gcc/config/rx/rx.md
===================================================================
--- gcc/config/rx/rx.md (revision 163536)
+++ gcc/config/rx/rx.md (working copy)
@@ -1366,23 +1366,23 @@
(ashift:SI (const_int 1)
(match_dup 1))))]
""
)
(define_insn "bitclr"
- [(set:SI (match_operand:SI 0 "register_operand" "+r")
+ [(set:SI (match_operand:SI 0 "register_operand" "=r")
(and:SI (match_operand:SI 1 "register_operand" "0")
(not:SI (ashift:SI (const_int 1)
(match_operand:SI 2 "nonmemory_operand" "ri")))))]
""
"bclr\t%2, %0"
[(set_attr "length" "3")]
)
(define_insn "bitclr_in_memory"
- [(set:QI (match_operand:QI 0 "memory_operand" "+m")
+ [(set:QI (match_operand:QI 0 "memory_operand" "=m")
(and:QI (match_operand:QI 1 "memory_operand" "0")
(not:QI (ashift:QI (const_int 1)
(match_operand:QI 2 "nonmemory_operand" "ri")))))]
""
"bclr\t%2, %0.B"
[(set_attr "length" "3")