41#ifdef MEMORY_CONTEXT_CHECKING
43 if (!sentinel_ok(pointer, chunk->requested_size))
44 elog(
WARNING,
"detected write past chunk end in %s %p",
55 (
char *) pointer - (
char *) unaligned);
85 Assert((alignto & (alignto - 1)) == 0);
104#ifdef MEMORY_CONTEXT_CHECKING
106 Assert(old_size >= redirchunk->requested_size);
133 memcpy(newptr, pointer,
Min(size, old_size));
142 (
char *) pointer - (
char *) unaligned);
MemoryContext AlignedAllocGetChunkContext(void *pointer)
void * AlignedAllocRealloc(void *pointer, Size size, int flags)
Size AlignedAllocGetChunkSpace(void *pointer)
void AlignedAllocFree(void *pointer)
Assert(PointerIsAligned(start, uint64))
void pfree(void *pointer)
Size GetMemoryChunkSpace(void *pointer)
void * MemoryContextAllocAligned(MemoryContext context, Size size, Size alignto, int flags)
MemoryContext GetMemoryChunkContext(void *pointer)
void * MemoryContextAllocationFailure(MemoryContext context, Size size, int flags)
#define VALGRIND_MAKE_MEM_DEFINED(addr, size)
#define VALGRIND_MEMPOOL_ALLOC(context, addr, size)
#define VALGRIND_MAKE_MEM_NOACCESS(addr, size)
#define PallocAlignedExtraBytes(alignto)
static Size MemoryChunkGetValue(MemoryChunk *chunk)
static bool MemoryChunkIsExternal(MemoryChunk *chunk)
static void * MemoryChunkGetBlock(MemoryChunk *chunk)
struct MemoryChunk MemoryChunk
#define PointerGetMemoryChunk(p)