aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorMark Mitchell <mark@codesourcery.com>1999-05-06 23:29:23 +0000
committerMark Mitchell <mmitchel@gcc.gnu.org>1999-05-06 23:29:23 +0000
commita504535255b3863d0bda072ac8b3b08b710df536 (patch)
treef9a5fbe19179810162606833bc10e506f1a242c1 /gcc
parente51f4db6322e7d9f9e6e47157e460d5a92577512 (diff)
downloadgcc-a504535255b3863d0bda072ac8b3b08b710df536.zip
gcc-a504535255b3863d0bda072ac8b3b08b710df536.tar.gz
gcc-a504535255b3863d0bda072ac8b3b08b710df536.tar.bz2
resource.c (mark_referenced_resources): Make volatil monotonically increasing.
* resource.c (mark_referenced_resources): Make volatil monotonically increasing. (mark_set_resources): Likewise. From-SVN: r26811
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/resource.c10
2 files changed, 11 insertions, 5 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index d528a79..0316406 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -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.
diff --git a/gcc/resource.c b/gcc/resource.c
index bc214a3..ddf7df5 100644
--- a/gcc/resource.c
+++ b/gcc/resource.c
@@ -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