mirror of
git://git.sv.gnu.org/emacs.git
synced 2025-12-24 14:30:43 -08:00
This change will be integrated but ignored (-ay) to the gg-epcore/union sources, so that they retain HopeNames. Copied from Perforce Change: 24911 ServerID: perforce.ravenbrook.com
57 lines
1.1 KiB
C
57 lines
1.1 KiB
C
/* impl.h.dbgpool: POOL DEBUG MIXIN
|
|
*
|
|
* $Id$
|
|
* Copyright (c) 2001 Ravenbrook Limited.
|
|
*/
|
|
|
|
#ifndef dbgpool_h
|
|
#define dbgpool_h
|
|
|
|
#include "splay.h"
|
|
#include "mpmtypes.h"
|
|
#include <stdarg.h>
|
|
|
|
|
|
/* tag init methods: copying the user-supplied data into the tag */
|
|
|
|
typedef void (*TagInitMethod)(void* tag, va_list args);
|
|
|
|
|
|
/* PoolDebugOptions -- option structure for debug pool init
|
|
*
|
|
* This must be kept in sync with impl.h.mps.mps_pool_debug_option_s.
|
|
*/
|
|
|
|
typedef struct PoolDebugOptionsStruct {
|
|
void* fenceTemplate;
|
|
Size fenceSize;
|
|
/* TagInitMethod tagInit; */
|
|
/* Size tagSize; */
|
|
} PoolDebugOptionsStruct;
|
|
|
|
typedef PoolDebugOptionsStruct *PoolDebugOptions;
|
|
|
|
|
|
/* PoolDebugMixinStruct -- internal structure for debug mixins */
|
|
|
|
#define PoolDebugMixinSig ((Sig)0x519B0DB9) /* SIGnature POol DeBuG */
|
|
|
|
typedef struct PoolDebugMixinStruct {
|
|
Sig sig;
|
|
Addr fenceTemplate;
|
|
Size fenceSize;
|
|
TagInitMethod tagInit;
|
|
Size tagSize;
|
|
Pool tagPool;
|
|
Count missingTags;
|
|
SplayTreeStruct index;
|
|
} PoolDebugMixinStruct;
|
|
|
|
|
|
extern Bool PoolDebugMixinCheck(PoolDebugMixin dbg);
|
|
|
|
|
|
extern void PoolClassMixInDebug(PoolClass class);
|
|
|
|
|
|
#endif /* dbgpool_h */
|