41#ifdef MEMORY_CONTEXT_CHECKING
43 if (!sentinel_ok(pointer, chunk->requested_size))
44 elog(
WARNING,
"detected write past chunk end in %s %p",
75 Assert((alignto & (alignto - 1)) == 0);
94#ifdef MEMORY_CONTEXT_CHECKING
96 Assert(old_size >= redirchunk->requested_size);
106 if (
likely(newptr != NULL))
109 memcpy(newptr, pointer,
Min(
size, old_size));
MemoryContext AlignedAllocGetChunkContext(void *pointer)
void * AlignedAllocRealloc(void *pointer, Size size, int flags)
Size AlignedAllocGetChunkSpace(void *pointer)
void AlignedAllocFree(void *pointer)
#define Assert(condition)
void pfree(void *pointer)
Size GetMemoryChunkSpace(void *pointer)
void * MemoryContextAllocAligned(MemoryContext context, Size size, Size alignto, int flags)
MemoryContext GetMemoryChunkContext(void *pointer)
#define VALGRIND_MAKE_MEM_DEFINED(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)
static pg_noinline void Size size