mirror of
git://git.sv.gnu.org/emacs.git
synced 2026-03-27 09:11:48 -07:00
Move fields to globals
Copied from Perforce Change: 21872 ServerID: perforce.ravenbrook.com
This commit is contained in:
parent
bc0c1b72ec
commit
b5e0218031
3 changed files with 20 additions and 21 deletions
|
|
@ -1,6 +1,6 @@
|
|||
/* impl.c.buffer: ALLOCATION BUFFER IMPLEMENTATION
|
||||
*
|
||||
* $HopeName: MMsrc!buffer.c(trunk.61) $
|
||||
* $HopeName: MMsrc!buffer.c(trunk.62) $
|
||||
* Copyright (C) 2000 Harlequin Limited. All rights reserved.
|
||||
*
|
||||
* .purpose: This is (part of) the implementation of allocation buffers.
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
|
||||
#include "mpm.h"
|
||||
|
||||
SRCID(buffer, "$HopeName: MMsrc!buffer.c(trunk.61) $");
|
||||
SRCID(buffer, "$HopeName: MMsrc!buffer.c(trunk.62) $");
|
||||
|
||||
|
||||
/* forward declarations */
|
||||
|
|
@ -334,12 +334,12 @@ void BufferDetach(Buffer buffer, Pool pool)
|
|||
buffer->emptySize += spare;
|
||||
if (buffer->isMutator) {
|
||||
buffer->pool->emptyMutatorSize += spare;
|
||||
buffer->arena->emptyMutatorSize += spare;
|
||||
buffer->arena->allocMutatorSize +=
|
||||
ArenaGlobals(buffer->arena)->emptyMutatorSize += spare;
|
||||
ArenaGlobals(buffer->arena)->allocMutatorSize +=
|
||||
AddrOffset(buffer->base, init);
|
||||
} else {
|
||||
buffer->pool->emptyInternalSize += spare;
|
||||
buffer->arena->emptyInternalSize += spare;
|
||||
ArenaGlobals(buffer->arena)->emptyInternalSize += spare;
|
||||
}
|
||||
|
||||
/* Reset the buffer. */
|
||||
|
|
@ -661,13 +661,13 @@ void BufferAttach(Buffer buffer, Addr base, Addr limit,
|
|||
if (buffer->isMutator) {
|
||||
if (base != init) { /* see design.mps.buffer.count.alloc.how */
|
||||
Size prealloc = AddrOffset(base, init);
|
||||
buffer->arena->allocMutatorSize -= prealloc;
|
||||
ArenaGlobals(buffer->arena)->allocMutatorSize -= prealloc;
|
||||
}
|
||||
buffer->pool->fillMutatorSize += filled;
|
||||
buffer->arena->fillMutatorSize += filled;
|
||||
ArenaGlobals(buffer->arena)->fillMutatorSize += filled;
|
||||
} else {
|
||||
buffer->pool->fillInternalSize += filled;
|
||||
buffer->arena->fillInternalSize += filled;
|
||||
ArenaGlobals(buffer->arena)->fillInternalSize += filled;
|
||||
}
|
||||
|
||||
/* run any class-specific attachment method */
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
/* impl.c.pool: POOL IMPLEMENTATION
|
||||
*
|
||||
* $HopeName: MMsrc!pool.c(trunk.74) $
|
||||
* $HopeName: MMsrc!pool.c(trunk.75) $
|
||||
* Copyright (C) 2001 Harlequin Limited. All rights reserved.
|
||||
*
|
||||
* DESIGN
|
||||
|
|
@ -31,7 +31,7 @@
|
|||
|
||||
#include "mpm.h"
|
||||
|
||||
SRCID(pool, "$HopeName: MMsrc!pool.c(trunk.74) $");
|
||||
SRCID(pool, "$HopeName: MMsrc!pool.c(trunk.75) $");
|
||||
|
||||
|
||||
/* PoolClassCheck -- check a pool class */
|
||||
|
|
@ -300,7 +300,7 @@ Res PoolAlloc(Addr *pReturn, Pool pool, Size size,
|
|||
/* All PoolAllocs should advance the allocation clock, so we count */
|
||||
/* it all in the fillMutatorSize field. */
|
||||
pool->fillMutatorSize += size;
|
||||
PoolArena(pool)->fillMutatorSize += size;
|
||||
ArenaGlobals(PoolArena(pool))->fillMutatorSize += size;
|
||||
|
||||
EVENT_PAW(PoolAlloc, pool, *pReturn, size);
|
||||
|
||||
|
|
@ -540,6 +540,12 @@ Bool PoolFormat(Format *formatReturn, Pool pool)
|
|||
}
|
||||
|
||||
|
||||
/* PoolOfAddr -- return the pool containing the given address
|
||||
*
|
||||
* If the address points to a page assigned to a pool, this returns TRUE
|
||||
* and sets *poolReturn to that pool. Otherwise, it returns FALSE, and
|
||||
* *poolReturn is unchanged. */
|
||||
|
||||
Bool PoolOfAddr(Pool *poolReturn, Arena arena, Addr addr)
|
||||
{
|
||||
Tract tract;
|
||||
|
|
@ -568,10 +574,3 @@ Bool PoolHasAddr(Pool pool, Addr addr)
|
|||
managed = PoolOfAddr(&addrPool, arena, addr);
|
||||
return (managed && addrPool == pool);
|
||||
}
|
||||
|
||||
|
||||
double PoolMutatorAllocSize(Pool pool)
|
||||
{
|
||||
AVERT(Pool, pool);
|
||||
return pool->fillMutatorSize - pool->emptyMutatorSize;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,13 +1,13 @@
|
|||
/* impl.c.walk: OBJECT WALKER
|
||||
*
|
||||
* $HopeName: MMsrc!walk.c(trunk.5) $
|
||||
* $HopeName: MMsrc!walk.c(trunk.6) $
|
||||
* Copyright (C) 2001 Harlequin Limited. All rights reserved.
|
||||
*/
|
||||
|
||||
#include "mpm.h"
|
||||
#include "mps.h"
|
||||
|
||||
SRCID(walk, "$HopeName: MMsrc!walk.c(trunk.5) $");
|
||||
SRCID(walk, "$HopeName: MMsrc!walk.c(trunk.6) $");
|
||||
|
||||
|
||||
/* Heap Walking
|
||||
|
|
@ -354,7 +354,7 @@ void mps_arena_roots_walk(mps_arena_t mps_arena, mps_roots_stepper_t f,
|
|||
AVER(FUNCHECK(f));
|
||||
/* p and s are arbitrary closures, hence can't be checked */
|
||||
|
||||
AVER(arena->clamped); /* .assume.parked */
|
||||
AVER(ArenaGlobals(arena)->clamped); /* .assume.parked */
|
||||
AVER(arena->busyTraces == TraceSetEMPTY); /* .assume.parked */
|
||||
|
||||
res = ArenaRootsWalk(ArenaGlobals(arena), f, p, s);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue