From 0901340862b5b4df2b3ab03384a4b4e284ba90cd Mon Sep 17 00:00:00 2001 From: Gareth Rees Date: Mon, 9 Jun 2014 19:53:37 +0100 Subject: [PATCH] Ensure that the macro versions of shieldexpose and shieldcover are used. Copied from Perforce Change: 186464 ServerID: perforce.ravenbrook.com --- mps/code/dbgpool.c | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/mps/code/dbgpool.c b/mps/code/dbgpool.c index 38d04f59492..bf48208eb37 100644 --- a/mps/code/dbgpool.c +++ b/mps/code/dbgpool.c @@ -346,6 +346,16 @@ static void debugPoolSegIterate(Arena arena, Addr base, Addr limit, } } +static void debugPoolShieldExpose(Arena arena, Seg seg) +{ + ShieldExpose(arena, seg); +} + +static void debugPoolShieldCover(Arena arena, Seg seg) +{ + ShieldCover(arena, seg); +} + /* freeSplat -- splat free block with splat pattern */ @@ -358,9 +368,9 @@ static void freeSplat(PoolDebugMixin debug, Pool pool, Addr base, Addr limit) /* If the block is in one or more segments, make sure the segments are exposed so that we can overwrite the block with the pattern. */ arena = PoolArena(pool); - debugPoolSegIterate(arena, base, limit, ShieldExpose); + debugPoolSegIterate(arena, base, limit, debugPoolShieldExpose); patternCopy(debug->freeTemplate, debug->freeSize, base, limit); - debugPoolSegIterate(arena, base, limit, ShieldCover); + debugPoolSegIterate(arena, base, limit, debugPoolShieldCover); } @@ -376,9 +386,9 @@ static Bool freeCheck(PoolDebugMixin debug, Pool pool, Addr base, Addr limit) /* If the block is in one or more segments, make sure the segments are exposed so we can read the pattern. */ arena = PoolArena(pool); - debugPoolSegIterate(arena, base, limit, ShieldExpose); + debugPoolSegIterate(arena, base, limit, debugPoolShieldExpose); res = patternCheck(debug->freeTemplate, debug->freeSize, base, limit); - debugPoolSegIterate(arena, base, limit, ShieldCover); + debugPoolSegIterate(arena, base, limit, debugPoolShieldCover); return res; }