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 | |