server-skynet-source-3rd-je.../include/jemalloc/jemalloc_protos.h.in
Jason Evans ae93d6bf36 Avoid function prototype incompatibilities.
Add various function attributes to the exported functions to give the
compiler more information to work with during optimization, and also
specify throw() when compiling with C++ on Linux, in order to adequately
match what __THROW does in glibc.

This resolves #237.
2015-07-10 16:09:40 -07:00

59 lines
2.8 KiB
C

/*
* The @je_@ prefix on the following public symbol declarations is an artifact
* of namespace management, and should be omitted in application code unless
* JEMALLOC_NO_DEMANGLE is defined (see jemalloc_mangle@install_suffix@.h).
*/
extern JEMALLOC_EXPORT const char *@je_@malloc_conf;
extern JEMALLOC_EXPORT void (*@je_@malloc_message)(void *cbopaque,
const char *s);
JEMALLOC_EXPORT void *@je_@malloc(size_t size) JEMALLOC_CXX_THROW
JEMALLOC_ATTR(malloc) JEMALLOC_ALLOC_SIZE(1) JEMALLOC_NOTHROW;
JEMALLOC_EXPORT void *@je_@calloc(size_t num, size_t size) JEMALLOC_CXX_THROW
JEMALLOC_ATTR(malloc) JEMALLOC_ALLOC_SIZE2(1, 2) JEMALLOC_NOTHROW;
JEMALLOC_EXPORT int @je_@posix_memalign(void **memptr, size_t alignment,
size_t size) JEMALLOC_CXX_THROW JEMALLOC_ATTR(nonnull(1))
JEMALLOC_ALLOC_SIZE(2) JEMALLOC_NOTHROW;
JEMALLOC_EXPORT void *@je_@aligned_alloc(size_t alignment, size_t size)
JEMALLOC_CXX_THROW JEMALLOC_ATTR(malloc) JEMALLOC_ALLOC_SIZE(2)
JEMALLOC_NOTHROW;
JEMALLOC_EXPORT void *@je_@realloc(void *ptr, size_t size) JEMALLOC_CXX_THROW
JEMALLOC_ALLOC_SIZE(2) JEMALLOC_NOTHROW;
JEMALLOC_EXPORT void @je_@free(void *ptr) JEMALLOC_CXX_THROW
JEMALLOC_NOTHROW;
JEMALLOC_EXPORT void *@je_@mallocx(size_t size, int flags)
JEMALLOC_ATTR(malloc) JEMALLOC_ALLOC_SIZE(1) JEMALLOC_NOTHROW;
JEMALLOC_EXPORT void *@je_@rallocx(void *ptr, size_t size, int flags)
JEMALLOC_ALLOC_SIZE(2) JEMALLOC_NOTHROW;
JEMALLOC_EXPORT size_t @je_@xallocx(void *ptr, size_t size, size_t extra,
int flags) JEMALLOC_ALLOC_SIZE(2) JEMALLOC_NOTHROW;
JEMALLOC_EXPORT size_t @je_@sallocx(const void *ptr, int flags)
JEMALLOC_ATTR(pure) JEMALLOC_NOTHROW;
JEMALLOC_EXPORT void @je_@dallocx(void *ptr, int flags) JEMALLOC_NOTHROW;
JEMALLOC_EXPORT void @je_@sdallocx(void *ptr, size_t size, int flags)
JEMALLOC_NOTHROW;
JEMALLOC_EXPORT size_t @je_@nallocx(size_t size, int flags)
JEMALLOC_ATTR(pure) JEMALLOC_NOTHROW;
JEMALLOC_EXPORT int @je_@mallctl(const char *name, void *oldp,
size_t *oldlenp, void *newp, size_t newlen) JEMALLOC_NOTHROW;
JEMALLOC_EXPORT int @je_@mallctlnametomib(const char *name, size_t *mibp,
size_t *miblenp) JEMALLOC_NOTHROW;
JEMALLOC_EXPORT int @je_@mallctlbymib(const size_t *mib, size_t miblen,
void *oldp, size_t *oldlenp, void *newp, size_t newlen) JEMALLOC_NOTHROW;
JEMALLOC_EXPORT void @je_@malloc_stats_print(void (*write_cb)(void *,
const char *), void *@je_@cbopaque, const char *opts) JEMALLOC_NOTHROW;
JEMALLOC_EXPORT size_t @je_@malloc_usable_size(
JEMALLOC_USABLE_SIZE_CONST void *ptr) JEMALLOC_CXX_THROW JEMALLOC_NOTHROW;
#ifdef JEMALLOC_OVERRIDE_MEMALIGN
JEMALLOC_EXPORT void *@je_@memalign(size_t alignment, size_t size)
JEMALLOC_ATTR(malloc);
#endif
#ifdef JEMALLOC_OVERRIDE_VALLOC
JEMALLOC_EXPORT void *@je_@valloc(size_t size) JEMALLOC_CXX_THROW
JEMALLOC_ATTR(malloc);
#endif