rs6000.md (sCC pattern): Remove clobber and use result as temporary value.
authorDavid Edelsohn <edelsohn@gnu.org>
Fri, 26 Apr 2002 15:23:26 +0000 (15:23 +0000)
committerDavid Edelsohn <dje@gcc.gnu.org>
Fri, 26 Apr 2002 15:23:26 +0000 (11:23 -0400)
        * config/rs6000/rs6000.md (sCC pattern): Remove clobber and use
        result as temporary value.

Co-Authored-By: Richard Henderson <rth@redhat.com>
From-SVN: r52793

gcc/ChangeLog
gcc/config/rs6000/rs6000.md

index 667ec4f77d8f409e887812419e5a5b21dab014ae..cb84073fbaed22378957cd46e74ecb064e6c7548 100644 (file)
@@ -1,3 +1,9 @@
+2002-04-26  David Edelsohn  <edelsohn@gnu.org>
+           Richard Henderson  <rth@redhat.com>
+
+       * config/rs6000/rs6000.md (sCC pattern): Remove clobber and use
+       result as temporary value.
+
 2002-04-26  Richard Henderson  <rth@redhat.com>
 
        PR c/3581
index a1800ae1133ca150455c87390c2a7f1396812668..cb5d164248ae7a4619601fa4bf611a384bb275fe 100644 (file)
                               (match_dup 4)))])
 
 (define_insn ""
-  [(set (match_operand:SI 0 "gpc_reg_operand" "=r,r,r,r,r")
+  [(set (match_operand:SI 0 "gpc_reg_operand" "=&r,&r,&r,&r,&r")
        (plus:SI (eq:SI (match_operand:SI 1 "gpc_reg_operand" "%r,r,r,r,r")
                        (match_operand:SI 2 "reg_or_cint_operand" "r,O,K,L,I"))
-                (match_operand:SI 3 "gpc_reg_operand" "r,r,r,r,r")))
-   (clobber (match_scratch:SI 4 "=&r,&r,&r,&r,&r"))]
+                (match_operand:SI 3 "gpc_reg_operand" "r,r,r,r,r")))]
   "! TARGET_POWERPC64"
   "@
-   xor %4,%1,%2\;{sfi|subfic} %4,%4,0\;{aze|addze} %0,%3
-   {sfi|subfic} %4,%1,0\;{aze|addze} %0,%3
-   {xoril|xori} %4,%1,%b2\;{sfi|subfic} %4,%4,0\;{aze|addze} %0,%3
-   {xoriu|xoris} %4,%1,%u2\;{sfi|subfic} %4,%4,0\;{aze|addze} %0,%3
-   {sfi|subfic} %4,%1,%2\;{sfi|subfic} %4,%4,0\;{aze|addze} %0,%3"
+   xor %0,%1,%2\;{sfi|subfic} %0,%0,0\;{aze|addze} %0,%3
+   {sfi|subfic} %0,%1,0\;{aze|addze} %0,%3
+   {xoril|xori} %0,%1,%b2\;{sfi|subfic} %0,%0,0\;{aze|addze} %0,%3
+   {xoriu|xoris} %0,%1,%u2\;{sfi|subfic} %0,%0,0\;{aze|addze} %0,%3
+   {sfi|subfic} %0,%1,%2\;{sfi|subfic} %0,%0,0\;{aze|addze} %0,%3"
   [(set_attr "length" "12,8,12,12,12")])
 
 (define_insn ""