resource.c (mark_referenced_resources): Make volatil monotonically increasing.
authorMark Mitchell <mark@codesourcery.com>
Thu, 6 May 1999 23:29:23 +0000 (23:29 +0000)
committerMark Mitchell <mmitchel@gcc.gnu.org>
Thu, 6 May 1999 23:29:23 +0000 (23:29 +0000)
* resource.c (mark_referenced_resources): Make volatil
monotonically increasing.
(mark_set_resources): Likewise.

From-SVN: r26811

gcc/ChangeLog
gcc/resource.c

index d528a79dd625c0adfb03f08a14a5742e23c2c94d..0316406c4c127852e23f603f63a903a52ad38dbf 100644 (file)
@@ -1,3 +1,9 @@
+Thu May  6 20:34:00 1999  Mark Mitchell  <mark@codesourcery.com>
+
+       * resource.c (mark_referenced_resources): Make volatil
+       monotonically increasing.
+       (mark_set_resources): Likewise.
+
 Thu May  6 20:02:33 1999  Fred Fish  <fnf@be.com>
 
        * rs6000/xm-beos.h (HAVE_VPRINTF): Don't redefine if already defined.
index bc214a3dc231649ca102f204b74cd5c7865ba104..ddf7df5d7072553a81a2d7d896537391bfe6dd9a 100644 (file)
@@ -221,7 +221,7 @@ mark_referenced_resources (x, res, include_delayed_effects)
        res->unch_memory = 1;
       else
        res->memory = 1;
-      res->volatil = MEM_VOLATILE_P (x);
+      res->volatil |= MEM_VOLATILE_P (x);
 
       /* Mark registers used to access memory.  */
       mark_referenced_resources (XEXP (x, 0), res, 0);
@@ -242,7 +242,7 @@ mark_referenced_resources (x, res, include_delayed_effects)
       break;
 
     case ASM_OPERANDS:
-      res->volatil = MEM_VOLATILE_P (x);
+      res->volatil |= MEM_VOLATILE_P (x);
 
       /* For all ASM_OPERANDS, we must traverse the vector of input operands.
         We can not just fall through here since then we would be confused
@@ -710,8 +710,8 @@ mark_set_resources (x, res, in_dest, include_delayed_effects)
       if (in_dest)
        {
          res->memory = 1;
-         res->unch_memory = RTX_UNCHANGING_P (x);
-         res->volatil = MEM_VOLATILE_P (x);
+         res->unch_memory |= RTX_UNCHANGING_P (x);
+         res->volatil |= MEM_VOLATILE_P (x);
        }
 
       mark_set_resources (XEXP (x, 0), res, 0, 0);
@@ -750,7 +750,7 @@ mark_set_resources (x, res, in_dest, include_delayed_effects)
       break;
 
     case ASM_OPERANDS:
-      res->volatil = MEM_VOLATILE_P (x);
+      res->volatil |= MEM_VOLATILE_P (x);
 
       /* For all ASM_OPERANDS, we must traverse the vector of input operands.
         We can not just fall through here since then we would be confused