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
This commit is contained in:
Mark Mitchell 1999-05-06 23:29:23 +00:00 committed by Mark Mitchell
parent e51f4db632
commit a504535255
2 changed files with 11 additions and 5 deletions

View 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> Thu May 6 20:02:33 1999 Fred Fish <fnf@be.com>
* rs6000/xm-beos.h (HAVE_VPRINTF): Don't redefine if already defined. * rs6000/xm-beos.h (HAVE_VPRINTF): Don't redefine if already defined.

View File

@ -221,7 +221,7 @@ mark_referenced_resources (x, res, include_delayed_effects)
res->unch_memory = 1; res->unch_memory = 1;
else else
res->memory = 1; res->memory = 1;
res->volatil = MEM_VOLATILE_P (x); res->volatil |= MEM_VOLATILE_P (x);
/* Mark registers used to access memory. */ /* Mark registers used to access memory. */
mark_referenced_resources (XEXP (x, 0), res, 0); mark_referenced_resources (XEXP (x, 0), res, 0);
@ -242,7 +242,7 @@ mark_referenced_resources (x, res, include_delayed_effects)
break; break;
case ASM_OPERANDS: 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. /* 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 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) if (in_dest)
{ {
res->memory = 1; res->memory = 1;
res->unch_memory = RTX_UNCHANGING_P (x); res->unch_memory |= RTX_UNCHANGING_P (x);
res->volatil = MEM_VOLATILE_P (x); res->volatil |= MEM_VOLATILE_P (x);
} }
mark_set_resources (XEXP (x, 0), res, 0, 0); mark_set_resources (XEXP (x, 0), res, 0, 0);
@ -750,7 +750,7 @@ mark_set_resources (x, res, in_dest, include_delayed_effects)
break; break;
case ASM_OPERANDS: 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. /* 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 We can not just fall through here since then we would be confused