diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 19c73a15af0..ada2358476a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +Tue Nov 24 09:33:49 1998 Nick Clifton + + * config/m32r/m32r.md (movstrsi_internal): Describe changes made + to source and destination registers. + Mon Nov 23 20:28:02 1998 Mike Stump * libgcc2.c (top_elt): Remove top_elt, it isn't thread safe. diff --git a/gcc/config/m32r/m32r.md b/gcc/config/m32r/m32r.md index e1638903ad6..53742c9791b 100644 --- a/gcc/config/m32r/m32r.md +++ b/gcc/config/m32r/m32r.md @@ -1787,10 +1787,10 @@ [(set (mem:BLK (match_operand:SI 0 "register_operand" "r")) ;; destination (mem:BLK (match_operand:SI 1 "register_operand" "r"))) ;; source (use (match_operand:SI 2 "m32r_block_immediate_operand" "J"));; # bytes to move + (set (match_dup 0) (plus:SI (match_dup 0) (minus:SI (match_dup 2) (const_int 4)))) + (set (match_dup 1) (plus:SI (match_dup 1) (match_dup 2))) (clobber (match_scratch:SI 3 "=&r")) ;; temp 1 - (clobber (match_scratch:SI 4 "=&r")) ;; temp 2 - (clobber (match_dup 0)) - (clobber (match_dup 1))] + (clobber (match_scratch:SI 4 "=&r"))] ;; temp 2 "" "* return m32r_output_block_move (insn, operands);" [(set_attr "type" "store8")