Index: contrib/jemalloc/include/jemalloc/jemalloc_FreeBSD.h =================================================================== --- contrib/jemalloc/include/jemalloc/jemalloc_FreeBSD.h (revision 246162) +++ contrib/jemalloc/include/jemalloc/jemalloc_FreeBSD.h (working copy) @@ -68,9 +68,26 @@ extern int __isthreaded; #define isthreaded ((bool)__isthreaded) /* Mangle. */ +#undef je_malloc +#undef je_realloc +#undef je_free +#define je_malloc __malloc +#define je_realloc __realloc +#define je_free __free #define open _open #define read _read #define write _write #define close _close #define pthread_mutex_lock _pthread_mutex_lock #define pthread_mutex_unlock _pthread_mutex_unlock + +#ifdef JEMALLOC_C_ +/* + * Define 'weak' symbols so that an application is can have its own versions + * of malloc, realloc, and free routines. + */ +__weak_reference(__malloc, malloc); +__weak_reference(__realloc, realloc); +__weak_reference(__free, free); +#endif + Index: lib/libc/stdlib/jemalloc/Symbol.map =================================================================== --- lib/libc/stdlib/jemalloc/Symbol.map (revision 246162) +++ lib/libc/stdlib/jemalloc/Symbol.map (working copy) @@ -5,6 +5,9 @@ FBSD_1.0 { _malloc_options; _malloc_message; + __malloc; + __realloc; + __free; malloc; posix_memalign; calloc;