1 1.1 christos /* 2 1.1 christos * The je_ prefix on the following public symbol declarations is an artifact 3 1.1 christos * of namespace management, and should be omitted in application code unless 4 1.1 christos * JEMALLOC_NO_DEMANGLE is defined (see jemalloc_mangle.h). 5 1.1 christos */ 6 1.1 christos extern JEMALLOC_EXPORT const char *je_malloc_conf; 7 1.1 christos extern JEMALLOC_EXPORT void (*je_malloc_message)(void *cbopaque, 8 1.1 christos const char *s); 9 1.1 christos 10 1.1 christos JEMALLOC_EXPORT JEMALLOC_ALLOCATOR JEMALLOC_RESTRICT_RETURN 11 1.1 christos void JEMALLOC_NOTHROW *je_malloc(size_t size) 12 1.1 christos JEMALLOC_CXX_THROW JEMALLOC_ATTR(malloc) JEMALLOC_ALLOC_SIZE(1); 13 1.1 christos JEMALLOC_EXPORT JEMALLOC_ALLOCATOR JEMALLOC_RESTRICT_RETURN 14 1.1 christos void JEMALLOC_NOTHROW *je_calloc(size_t num, size_t size) 15 1.1 christos JEMALLOC_CXX_THROW JEMALLOC_ATTR(malloc) JEMALLOC_ALLOC_SIZE2(1, 2); 16 1.1 christos JEMALLOC_EXPORT int JEMALLOC_NOTHROW je_posix_memalign(void **memptr, 17 1.1 christos size_t alignment, size_t size) JEMALLOC_CXX_THROW JEMALLOC_ATTR(nonnull(1)); 18 1.1 christos JEMALLOC_EXPORT JEMALLOC_ALLOCATOR JEMALLOC_RESTRICT_RETURN 19 1.1 christos void JEMALLOC_NOTHROW *je_aligned_alloc(size_t alignment, 20 1.1 christos size_t size) JEMALLOC_CXX_THROW JEMALLOC_ATTR(malloc) 21 1.1 christos JEMALLOC_ALLOC_SIZE(2); 22 1.1 christos JEMALLOC_EXPORT JEMALLOC_ALLOCATOR JEMALLOC_RESTRICT_RETURN 23 1.1 christos void JEMALLOC_NOTHROW *je_realloc(void *ptr, size_t size) 24 1.1 christos JEMALLOC_CXX_THROW JEMALLOC_ALLOC_SIZE(2); 25 1.1 christos JEMALLOC_EXPORT void JEMALLOC_NOTHROW je_free(void *ptr) 26 1.1 christos JEMALLOC_CXX_THROW; 27 1.1 christos 28 1.1 christos JEMALLOC_EXPORT JEMALLOC_ALLOCATOR JEMALLOC_RESTRICT_RETURN 29 1.1 christos void JEMALLOC_NOTHROW *je_mallocx(size_t size, int flags) 30 1.1 christos JEMALLOC_ATTR(malloc) JEMALLOC_ALLOC_SIZE(1); 31 1.1 christos JEMALLOC_EXPORT JEMALLOC_ALLOCATOR JEMALLOC_RESTRICT_RETURN 32 1.1 christos void JEMALLOC_NOTHROW *je_rallocx(void *ptr, size_t size, 33 1.1 christos int flags) JEMALLOC_ALLOC_SIZE(2); 34 1.1 christos JEMALLOC_EXPORT size_t JEMALLOC_NOTHROW je_xallocx(void *ptr, size_t size, 35 1.1 christos size_t extra, int flags); 36 1.1 christos JEMALLOC_EXPORT size_t JEMALLOC_NOTHROW je_sallocx(const void *ptr, 37 1.1 christos int flags) JEMALLOC_ATTR(pure); 38 1.1 christos JEMALLOC_EXPORT void JEMALLOC_NOTHROW je_dallocx(void *ptr, int flags); 39 1.1 christos JEMALLOC_EXPORT void JEMALLOC_NOTHROW je_sdallocx(void *ptr, size_t size, 40 1.1 christos int flags); 41 1.1 christos JEMALLOC_EXPORT size_t JEMALLOC_NOTHROW je_nallocx(size_t size, int flags) 42 1.1 christos JEMALLOC_ATTR(pure); 43 1.1 christos 44 1.1 christos JEMALLOC_EXPORT int JEMALLOC_NOTHROW je_mallctl(const char *name, 45 1.1 christos void *oldp, size_t *oldlenp, void *newp, size_t newlen); 46 1.1 christos JEMALLOC_EXPORT int JEMALLOC_NOTHROW je_mallctlnametomib(const char *name, 47 1.1 christos size_t *mibp, size_t *miblenp); 48 1.1 christos JEMALLOC_EXPORT int JEMALLOC_NOTHROW je_mallctlbymib(const size_t *mib, 49 1.1 christos size_t miblen, void *oldp, size_t *oldlenp, void *newp, size_t newlen); 50 1.1 christos JEMALLOC_EXPORT void JEMALLOC_NOTHROW je_malloc_stats_print( 51 1.1 christos void (*write_cb)(void *, const char *), void *je_cbopaque, 52 1.1 christos const char *opts); 53 1.1 christos JEMALLOC_EXPORT size_t JEMALLOC_NOTHROW je_malloc_usable_size( 54 1.1 christos JEMALLOC_USABLE_SIZE_CONST void *ptr) JEMALLOC_CXX_THROW; 55 1.1 christos 56 1.1 christos #ifdef JEMALLOC_OVERRIDE_MEMALIGN 57 1.1 christos JEMALLOC_EXPORT JEMALLOC_ALLOCATOR JEMALLOC_RESTRICT_RETURN 58 1.1 christos void JEMALLOC_NOTHROW *je_memalign(size_t alignment, size_t size) 59 1.1 christos JEMALLOC_CXX_THROW JEMALLOC_ATTR(malloc); 60 1.1 christos #endif 61 1.1 christos 62 1.1 christos #ifdef JEMALLOC_OVERRIDE_VALLOC 63 1.1 christos JEMALLOC_EXPORT JEMALLOC_ALLOCATOR JEMALLOC_RESTRICT_RETURN 64 1.1 christos void JEMALLOC_NOTHROW *je_valloc(size_t size) JEMALLOC_CXX_THROW 65 1.1 christos JEMALLOC_ATTR(malloc); 66 1.1 christos #endif 67