+2003-10-16 Jan Hubicka <jh@suse.cz>
+
+ PR optimization/12630
+ * pa.md (movstrsi, movstrsi_internal): Use match_scratch in clobbers
+ for operands 7 and 8.
+
2003-10-16 Kelley Cook <kcook@gcc.gnu.org>
* objc/Make-lang.in (objc-parse.o): Honor $(parsedir) for objc-parse.c.
(define_expand "movstrsi"
[(parallel [(set (match_operand:BLK 0 "" "")
(match_operand:BLK 1 "" ""))
- (clobber (match_dup 7))
- (clobber (match_dup 8))
+ (clobber (match_scratch:SI 7 ""))
+ (clobber (match_scratch:SI 8 ""))
(clobber (match_dup 4))
(clobber (match_dup 5))
(clobber (match_dup 6))
;; therefore it is forced to operand 2. If the count is compile-time
;; determined, we need two scratch registers for the unrolled code.
(define_insn "movstrsi_internal"
- [(set (mem:BLK (match_operand:SI 0 "register_operand" "+r,r"))
- (mem:BLK (match_operand:SI 1 "register_operand" "+r,r")))
- (clobber (match_dup 0))
- (clobber (match_dup 1))
+ [(set (mem:BLK (match_operand:SI 0 "register_operand" "r,r"))
+ (mem:BLK (match_operand:SI 1 "register_operand" "r,r")))
+ (clobber (match_scratch:SI 7 "=0,0"))
+ (clobber (match_scratch:SI 8 "=1,1"))
(clobber (match_operand:SI 2 "register_operand" "=r,r")) ;loop cnt/tmp
(clobber (match_operand:SI 3 "register_operand" "=&r,&r")) ;item tmp
(clobber (match_operand:SI 6 "register_operand" "=&r,&r")) ;item tmp2