1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-26 15:10:50 -08:00

Implementing location dependency

Copied from Perforce
 Change: 15281
 ServerID: perforce.ravenbrook.com
This commit is contained in:
Richard Brooksby 1996-02-20 18:09:23 +00:00
parent 987215198e
commit deb73049b6

View file

@ -1,6 +1,6 @@
/* impl.c.trace: GENERIC TRACER IMPLEMENTATION
*
* $HopeName: MMsrc!trace.c(trunk.11) $
* $HopeName: MMsrc!trace.c(trunk.12) $
*/
#include "std.h"
@ -12,9 +12,10 @@
#include "pool.h"
#include "root.h"
#include "rootst.h"
#include "ld.h"
#include <limits.h>
SRCID("$HopeName: MMsrc!trace.c(trunk.11) $");
SRCID("$HopeName: MMsrc!trace.c(trunk.12) $");
Bool ScanStateIsValid(ScanState ss, ValidationType validParam)
{
@ -71,6 +72,14 @@ Error TraceFlip(Space space, TraceId ti, RefSet condemned)
AVER(trace->condemned == RefSetEmpty);
trace->condemned = condemned;
/* Update location dependency structures. condemned is
* a conservative approximation of the refset of refs which
* may move during this collection.
* @@@@ It is too conservative. Not everything condemned will
* necessarily move.
*/
LDAge(space, condemned);
/* Grey all the roots and pools. */
deque = SpacePoolDeque(space);