OSDN Git Service

* config/rs6000/rs6000.md (ne0+4): Add extra CLOBBER.
authorgeoffk <geoffk@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 9 Mar 2002 21:02:13 +0000 (21:02 +0000)
committergeoffk <geoffk@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 9 Mar 2002 21:02:13 +0000 (21:02 +0000)
(ne0+5): Use new clobber to generate proper shift pattern.
Patch by Michael Matz <matz@kde.org>.

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

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

index f88b44d..56d2cf6 100644 (file)
@@ -1,3 +1,9 @@
+2002-03-09  Geoffrey Keating  <geoffk@redhat.com>
+
+       * config/rs6000/rs6000.md (ne0+4): Add extra CLOBBER.
+       (ne0+5): Use new clobber to generate proper shift pattern.
+       Patch by Michael Matz <matz@kde.org>.
+
 2002-03-09  Andreas Schwab  <schwab@suse.de>
 
        * gcc.c (validate_all_switches): Also handle `%W{...}'.
index cf16276..b1ec3f4 100644 (file)
                   (const_int 31))
                  (match_operand:SI 2 "gpc_reg_operand" "r,r"))
         (const_int 0)))
-   (clobber (match_scratch:SI 3 "=&r,&r"))]
+   (clobber (match_scratch:SI 3 "=&r,&r"))
+   (clobber (match_scratch:SI 4 "=X,&r"))]
   "! TARGET_POWERPC64"
   "@
    {ai|addic} %3,%1,-1\;{aze.|addze.} %3,%2
                   (const_int 31))
                  (match_operand:SI 2 "gpc_reg_operand" ""))
         (const_int 0)))
-   (clobber (match_scratch:SI 3 ""))]
+   (clobber (match_scratch:SI 3 ""))
+   (clobber (match_scratch:SI 4 ""))]
   "! TARGET_POWERPC64 && reload_completed"
-  [(set (match_dup 3)
-       (plus:SI (lshiftrt:SI (neg:SI (abs:SI (match_dup 1)))
-                  (const_int 31))
-                 (match_dup 2)))
+  [(parallel [(set (match_dup 3)
+                  (plus:SI (lshiftrt:SI (neg:SI (abs:SI (match_dup 1)))
+                                        (const_int 31))
+                           (match_dup 2)))
+              (clobber (match_dup 4))])
    (set (match_dup 0)
        (compare:CC (match_dup 3)
                    (const_int 0)))]