diff options
author | jasone <jasone@FreeBSD.org> | 2015-08-18 00:21:25 +0000 |
---|---|---|
committer | jasone <jasone@FreeBSD.org> | 2015-08-18 00:21:25 +0000 |
commit | cbb776d46e1d7066efdee506c6096c75fb20f96e (patch) | |
tree | ec1bf01436900198985847d5fded5190c930cf79 /include | |
parent | c22443062b314e6f18aa5797d1b9dd3fb82e1157 (diff) | |
download | FreeBSD-src-cbb776d46e1d7066efdee506c6096c75fb20f96e.zip FreeBSD-src-cbb776d46e1d7066efdee506c6096c75fb20f96e.tar.gz |
Update jemalloc to version 4.0.0.
Diffstat (limited to 'include')
-rw-r--r-- | include/malloc_np.h | 57 |
1 files changed, 29 insertions, 28 deletions
diff --git a/include/malloc_np.h b/include/malloc_np.h index 193307b..5f9d813 100644 --- a/include/malloc_np.h +++ b/include/malloc_np.h @@ -36,6 +36,23 @@ #include <strings.h> __BEGIN_DECLS +typedef void *(chunk_alloc_t)(void *, size_t, size_t, bool *, bool *, unsigned); +typedef bool (chunk_dalloc_t)(void *, size_t, bool, unsigned); +typedef bool (chunk_commit_t)(void *, size_t, size_t, size_t, unsigned); +typedef bool (chunk_decommit_t)(void *, size_t, size_t, size_t, unsigned); +typedef bool (chunk_purge_t)(void *, size_t, size_t, size_t, unsigned); +typedef bool (chunk_split_t)(void *, size_t, size_t, size_t, bool, unsigned); +typedef bool (chunk_merge_t)(void *, size_t, void *, size_t, bool, unsigned); +typedef struct { + chunk_alloc_t *alloc; + chunk_dalloc_t *dalloc; + chunk_commit_t *commit; + chunk_decommit_t *decommit; + chunk_purge_t *purge; + chunk_split_t *split; + chunk_merge_t *merge; +} chunk_hooks_t; + size_t malloc_usable_size(const void *ptr); void malloc_stats_print(void (*write_cb)(void *, const char *), @@ -49,48 +66,32 @@ int mallctlbymib(const size_t *mib, size_t miblen, void *oldp, #define MALLOCX_LG_ALIGN(la) (la) #define MALLOCX_ALIGN(a) (ffsl(a)-1) #define MALLOCX_ZERO ((int)0x40) -#define MALLOCX_ARENA(a) ((int)(((a)+1) << 8)) +#define MALLOCX_TCACHE(tc) ((int)(((tc)+2) << 8)) +#define MALLOCX_TCACHE_NONE MALLOCX_TCACHE(-1) +#define MALLOCX_ARENA(a) ((int)(((a)+1) << 20)) void *mallocx(size_t size, int flags); void *rallocx(void *ptr, size_t size, int flags); size_t xallocx(void *ptr, size_t size, size_t extra, int flags); size_t sallocx(const void *ptr, int flags); void dallocx(void *ptr, int flags); +void sdallocx(void *ptr, size_t size, int flags); size_t nallocx(size_t size, int flags); -#define ALLOCM_LG_ALIGN(la) (la) -#define ALLOCM_ALIGN(a) (ffsl(a)-1) -#define ALLOCM_ZERO ((int)0x40) -#define ALLOCM_NO_MOVE ((int)0x80) - -#define ALLOCM_SUCCESS 0 -#define ALLOCM_ERR_OOM 1 -#define ALLOCM_ERR_NOT_MOVED 2 - -int allocm(void **ptr, size_t *rsize, size_t size, int flags) __nonnull(1); -int rallocm(void **ptr, size_t *rsize, size_t size, size_t extra, - int flags) __nonnull(1); -int sallocm(const void *ptr, size_t *rsize, int flags) __nonnull(1); -int dallocm(void *ptr, int flags) __nonnull(1); -int nallocm(size_t *rsize, size_t size, int flags); - -void * __calloc(size_t, size_t) __malloc_like; -void * __malloc(size_t) __malloc_like; -void * __realloc(void *, size_t); -void __free(void *); -int __posix_memalign(void **, size_t, size_t); -size_t __malloc_usable_size(const void *); +void * __calloc(size_t number, size_t size) __malloc_like; +void * __malloc(size_t size) __malloc_like; +void * __realloc(void *ptr, size_t size); +void __free(void *ptr); +int __posix_memalign(void **ptr, size_t alignment, size_t size); +void *__aligned_alloc(size_t alignment, size_t size); +size_t __malloc_usable_size(const void *ptr); void *__mallocx(size_t size, int flags); void *__rallocx(void *ptr, size_t size, int flags); size_t __xallocx(void *ptr, size_t size, size_t extra, int flags); size_t __sallocx(const void *ptr, int flags); void __dallocx(void *ptr, int flags); +void __sdallocx(void *ptr, size_t size, int flags); size_t __nallocx(size_t size, int flags); -int __allocm(void **, size_t *, size_t, int) __nonnull(1); -int __rallocm(void **, size_t *, size_t, size_t, int) __nonnull(1); -int __sallocm(const void *, size_t *, int) __nonnull(1); -int __dallocm(void *, int) __nonnull(1); -int __nallocm(size_t *, size_t, int); __END_DECLS #endif /* _MALLOC_NP_H_ */ |