From bf80a3a11def6ba68d8f248b389ba84e4e32ced3 Mon Sep 17 00:00:00 2001 From: Richard Kistruck Date: Thu, 20 Aug 2009 17:44:16 +0100 Subject: Mps br/padding: new pooltraceendmethod: do end-of-trace work Tracer calls PoolTraceEnd() when the trace is TraceFINISHED. AbstractPoolClass uses PoolTrivTraceEnd -- a NOOP. [mpm.h, mpmst.h, mpmtypes.h, pool.c, poolabs.c] AMC overrides with AMCTraceEnd, to emit diagnostic on how well the trace went! [poolamc.c] Copied from Perforce Change: 168478 ServerID: perforce.ravenbrook.com --- mps/code/poolabs.c | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'mps/code/poolabs.c') diff --git a/mps/code/poolabs.c b/mps/code/poolabs.c index 3e52dc63c14..324975cb7c0 100644 --- a/mps/code/poolabs.c +++ b/mps/code/poolabs.c @@ -136,6 +136,7 @@ DEFINE_CLASS(AbstractPoolClass, class) class->fix = PoolNoFix; class->fixEmergency = PoolNoFix; class->reclaim = PoolNoReclaim; + class->traceEnd = PoolTrivTraceEnd; class->rampBegin = PoolNoRampBegin; class->rampEnd = PoolNoRampEnd; class->framePush = PoolNoFramePush; @@ -529,6 +530,13 @@ void PoolNoReclaim(Pool pool, Trace trace, Seg seg) NOTREACHED; } +void PoolTrivTraceEnd(Pool pool, Trace trace) +{ + AVERT(Pool, pool); + AVERT(Trace, trace); + NOOP; +} + void PoolNoRampBegin(Pool pool, Buffer buf, Bool collectAll) { -- cgit v1.2.1