rtlanal.c (reg_referenced_p): A CLOBBER of a MEM uses any REGs inside the MEM.
authorGeoff Keating <geoffk@cygnus.com>
Wed, 19 Jan 2000 20:21:08 +0000 (20:21 +0000)
committerGeoffrey Keating <geoffk@gcc.gnu.org>
Wed, 19 Jan 2000 20:21:08 +0000 (20:21 +0000)
* rtlanal.c (reg_referenced_p): A CLOBBER of a MEM uses any REGs
inside the MEM.

From-SVN: r31509

gcc/ChangeLog
gcc/rtlanal.c

index fff7083ba9540175aa52a2e675c43add08e86aa1..389ce07df6800a6afee9c624e6646d7c1871a66b 100644 (file)
@@ -1,3 +1,8 @@
+2000-01-19  Geoff Keating  <geoffk@cygnus.com>
+
+       * rtlanal.c (reg_referenced_p): A CLOBBER of a MEM uses any REGs
+       inside the MEM.
+
 2000-01-20  Michael Hayes  <m.hayes@elec.canterbury.ac.nz>
 
        * loop.c (loop_optimize): Allocate loop_info structure for each loop
index 3739bdee8ac5a5bb10da5f3173bf758d5a74938d..24ca8d1b53021ee503a0160dd4d03f8a9d4f994d 100644 (file)
@@ -422,6 +422,12 @@ reg_referenced_p (x, body)
          return 1;
       return 0;
       
+    case CLOBBER:
+      if (GET_CODE (XEXP (body, 0)) == MEM)
+       if (reg_overlap_mentioned_p (x, XEXP (XEXP (body, 0), 0)))
+         return 1;
+      return 0;
+
     default:
       return 0;
     }