(invalidate_skipped_set): Ignore CLOBBER after calling
authorRichard Kenner <kenner@gcc.gnu.org>
Mon, 15 Apr 1996 12:49:02 +0000 (08:49 -0400)
committerRichard Kenner <kenner@gcc.gnu.org>
Mon, 15 Apr 1996 12:49:02 +0000 (08:49 -0400)
note_mem_written, not before.

From-SVN: r11786

gcc/cse.c

index e1c6bcaa801cba5fe6710733232ce3eaff8017a9..80e69c0bd1d315bbf2151ce104166f4173673f41 100644 (file)
--- a/gcc/cse.c
+++ b/gcc/cse.c
@@ -7820,13 +7820,6 @@ invalidate_skipped_set (dest, set)
      rtx set;
      rtx dest;
 {
-  if (GET_CODE (set) == CLOBBER
-#ifdef HAVE_cc0
-      || dest == cc0_rtx
-#endif
-      || dest == pc_rtx)
-    return;
-
   if (GET_CODE (dest) == MEM)
     note_mem_written (dest, &skipped_writes_memory);
 
@@ -7836,6 +7829,13 @@ invalidate_skipped_set (dest, set)
   if (skipped_writes_memory.nonscalar)
     skipped_writes_memory.all = 1;
 
+  if (GET_CODE (set) == CLOBBER
+#ifdef HAVE_cc0
+      || dest == cc0_rtx
+#endif
+      || dest == pc_rtx)
+    return;
+
   if (GET_CODE (dest) == REG || GET_CODE (dest) == SUBREG
       || (! skipped_writes_memory.all && ! cse_rtx_addr_varies_p (dest)))
     invalidate (dest, VOIDmode);