OSDN Git Service

* config/avr/avr.md ("strlenhi"): Remove clobber of input address.
authordenisc <denisc@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 13 Jan 2001 21:42:07 +0000 (21:42 +0000)
committerdenisc <denisc@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 13 Jan 2001 21:42:07 +0000 (21:42 +0000)
(*strlenhi): Remove clobber (which was buggy) of output address.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@38995 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/config/avr/avr.md

index 663dd6f..cea3dc8 100644 (file)
@@ -1,3 +1,8 @@
+Sun Jan 14 00:23:15 2001  Denis Chertykov  <denisc@overta.ru>
+
+       * config/avr/avr.md ("strlenhi"): Remove clobber of input address.
+       (*strlenhi): Remove clobber (which was buggy) of output address.
+
 2001-01-13  Joseph S. Myers  <jsm28@cam.ac.uk>
 
        * Makefile.in (generated-manpages): Add gcc.1
index b822445..858b39f 100644 (file)
       [(set (match_dup 4)
            (unspec:HI [(match_operand:BLK 1 "memory_operand" "")
                        (match_operand:QI 2 "const_int_operand" "")
-                       (match_operand:HI 3 "immediate_operand" "")] 0))
-       (clobber (match_dup 6))])
+                       (match_operand:HI 3 "immediate_operand" "")] 0))])
      (set (match_dup 4) (plus:HI (match_dup 4)
                                 (const_int -1)))
      (set (match_operand:HI 0 "register_operand" "")
                    (match_dup 5)))]
    ""
    "{
+  rtx addr;
   if (! (GET_CODE (operands[2]) == CONST_INT && INTVAL (operands[2]) == 0))
     FAIL;
-  operands[6] = copy_to_mode_reg (Pmode, XEXP (operands[1],0));
-  operands[1] = gen_rtx (MEM, BLKmode, operands[6]); 
-  operands[5] = operands[6];
+  addr = copy_to_mode_reg (Pmode, XEXP (operands[1],0));
+  operands[1] = gen_rtx (MEM, BLKmode, addr); 
+  operands[5] = addr;
   operands[4] = gen_reg_rtx (HImode);
 }")
 
   [(set (match_operand:HI 0 "register_operand" "=e")
        (unspec:HI [(mem:BLK (match_operand:HI 1 "register_operand" "%0"))
                    (const_int 0)
-                   (match_operand:HI 2 "immediate_operand" "i")] 0))
-   (clobber (match_dup 1))]
+                   (match_operand:HI 2 "immediate_operand" "i")] 0))]
   ""
   "ld __tmp_reg__,%a0+
        tst __tmp_reg__