resource.c (mark_set_resources): Use MARK_SRC_DEST for PRE_MODIFY and POST_MODIFY...
authorMichael Hayes <m.hayes@elec.canterbury.ac.nz>
Thu, 21 Dec 2000 22:15:22 +0000 (22:15 +0000)
committerMichael Hayes <m.hayes@gcc.gnu.org>
Thu, 21 Dec 2000 22:15:22 +0000 (22:15 +0000)
* resource.c (mark_set_resources): Use MARK_SRC_DEST for
PRE_MODIFY and POST_MODIFY cases.

* rtlanal.c (side_effects_p): Handle PRE_MODIFY and POST_MODIFY.

From-SVN: r38429

gcc/ChangeLog
gcc/resource.c
gcc/rtlanal.c

index 30f18bedf66d62b1f00b999bca58146d342ce416..6113012ef7d96b36f550ac702d356de242624e90 100644 (file)
@@ -1,3 +1,10 @@
+2000-12-22  Michael Hayes  <m.hayes@elec.canterbury.ac.nz>
+
+       * resource.c (mark_set_resources): Use MARK_SRC_DEST for
+       PRE_MODIFY and POST_MODIFY cases.
+
+       * rtlanal.c (side_effects_p): Handle PRE_MODIFY and POST_MODIFY.
+
 2000-12-22  Michael Hayes  <m.hayes@elec.canterbury.ac.nz>
 
        * md.texi (Looping Patterns): New node.
index 4faaedf9a81f928bc6b8e084001fa25ef890bb43..979de4d5cc93125741a4f2d89f73172c4b2d6583 100644 (file)
@@ -723,9 +723,9 @@ mark_set_resources (x, res, in_dest, mark_type)
 
     case PRE_MODIFY:
     case POST_MODIFY:
-      mark_set_resources (XEXP (x, 0), res, 1, 0);
-      mark_set_resources (XEXP (XEXP (x, 1), 0), res, 0, 0);
-      mark_set_resources (XEXP (XEXP (x, 1), 1), res, 0, 0);
+      mark_set_resources (XEXP (x, 0), res, 1, MARK_SRC_DEST);
+      mark_set_resources (XEXP (XEXP (x, 1), 0), res, 0, MARK_SRC_DEST);
+      mark_set_resources (XEXP (XEXP (x, 1), 1), res, 0, MARK_SRC_DEST);
       return;
 
     case SIGN_EXTRACT:
index 00aebf47558f3b746f2f0c981a66dcbd2a3ea33c..a19ebeff81e08bf54bb24e11decf73a26a03b0d4 100644 (file)
@@ -1849,6 +1849,8 @@ side_effects_p (x)
     case PRE_DEC:
     case POST_INC:
     case POST_DEC:
+    case PRE_MODIFY:
+    case POST_MODIFY:
     case CALL:
     case UNSPEC_VOLATILE:
  /* case TRAP_IF: This isn't clear yet.  */