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