Wed Feb 10 10:09:41 1999 Jeffrey A Law (law@cygnus.com)
+ * mn10200.md (bset, bclr): Operand 0 is a read/write operand.
+
* reload1.c (reload_combine_note_store): Second argument is no
longer unused/ignored. Handle multi-register hard regs.
(move2add_note_store): Simplify.
;; These clears a constant set of bits in memory or in a register.
;; We must support register destinations to make reload happy.
(define_insn ""
- [(set (match_operand:QI 0 "general_operand" "R,d")
+ [(set (match_operand:QI 0 "general_operand" "+R,d")
(subreg:QI
(and:HI (subreg:HI (match_dup 0) 0)
(match_operand 1 "const_int_operand" "")) 0))
;; This clears a variable set of bits in memory or in a register.
(define_insn ""
- [(set (match_operand:QI 0 "general_operand" "R,d")
+ [(set (match_operand:QI 0 "general_operand" "+R,d")
(subreg:QI
(and:HI (subreg:HI (match_dup 0) 0)
(not:HI (match_operand:HI 1 "general_operand" "d,d"))) 0))
[(set_attr "cc" "clobber")])
(define_insn ""
- [(set (match_operand:QI 0 "general_operand" "R,d")
+ [(set (match_operand:QI 0 "general_operand" "+R,d")
(subreg:QI
(and:HI (not:HI (match_operand:HI 1 "general_operand" "d,d"))
(subreg:HI (match_dup 0) 0)) 0))
;; These set bits in memory.
(define_insn ""
- [(set (match_operand:QI 0 "general_operand" "R,d")
+ [(set (match_operand:QI 0 "general_operand" "+R,d")
(subreg:QI
(ior:HI (subreg:HI (match_dup 0) 0)
(match_operand:HI 1 "general_operand" "d,d")) 0))]
[(set_attr "cc" "clobber")])
(define_insn ""
- [(set (match_operand:QI 0 "general_operand" "R,d")
+ [(set (match_operand:QI 0 "general_operand" "+R,d")
(subreg:QI
(ior:HI (match_operand:HI 1 "general_operand" "d,d")
(subreg:HI (match_dup 0) 0)) 0))]
- ""
+ "0"
"@
bset %1,%0
or %1,%0"