90ecea9ee863281f3275813b797890d4a055262a |
|
16-May-2014 |
Valerii Hiora <valerii.hiora@gmail.com> |
Support for iOS compilation
/external/jemalloc/configure.ac
|
401e5435319e2555047a1932097a3e7604b0254f |
|
03-Jun-2014 |
Mike Hommey <mh@glandium.org> |
Use JEMALLOC_INTERNAL_FFSL in STATIC_PAGE_SHIFT test
/external/jemalloc/configure.ac
|
e62662574e79a44c0b3611a0233d8bab142113f8 |
|
03-Jun-2014 |
Mike Hommey <mh@glandium.org> |
Check for __builtin_ffsl before ffsl. When building with -O0, GCC doesn't use builtins for ffs and ffsl calls, and uses library function calls instead. But the Android NDK doesn't have those functions exported from any library, leading to build failure. However, using __builtin_ffs* uses the builtin inlines.
/external/jemalloc/configure.ac
|
3c95843a29457b90081423fb2a59f237ad086915 |
|
03-Jun-2014 |
Richard Diamond <wichard@vitalitystudios.com> |
Add check for madvise(2) to configure.ac. Some platforms, such as Google's Portable Native Client, use Newlib and thus lack access to madvise(2). In those instances, pages_purge() is transformed into a no-op.
/external/jemalloc/configure.ac
|
2aa7fed9c983d8dcde7c0cacf1b024c966758b88 |
|
29-May-2014 |
Richard Diamond <wichard@vitalitystudios.com> |
Try to use __builtin_ffsl if ffsl is unavailable. Some platforms (like those using Newlib) don't have ffs/ffsl. This commit adds a check to configure.ac for __builtin_ffsl if ffsl isn't found. __builtin_ffsl performs the same function as ffsl, and has the added benefit of being available on any platform utilizing Gcc-compatible compiler. This change does not address the used of ffs in the MALLOCX_ARENA() macro.
/external/jemalloc/configure.ac
|
8ba88b75a8f2c9e06ad6a22f5285fa6444f52ac0 |
|
29-May-2014 |
Mike Hommey <mh@glandium.org> |
Make in-tree MSVC builds work
/external/jemalloc/configure.ac
|
dc22ae5c11437c3b6cf8c4ed8b8f5efa0d3bc832 |
|
29-May-2014 |
Mike Hommey <mh@glandium.org> |
Add -FS flag to support parallel builds with MSVC 2013
/external/jemalloc/configure.ac
|
c2bc2a423846855e80ac313c23ef4b9c7a66c426 |
|
29-May-2014 |
Mike Hommey <mh@glandium.org> |
Don't use msvc_compat's C99 headers with MSVC versions that have (some) C99 support
/external/jemalloc/configure.ac
|
8d8f9aeeaa77514d5732db5bd0111232af21fcfd |
|
29-May-2014 |
Jason Evans <je@fb.com> |
Add size class computation capability. Add size class computation capability, currently used only as validation of the size class lookup tables. Generalize the size class spacing used for bins, for eventual use throughout the full range of allocation sizes.
/external/jemalloc/configure.ac
|
3fafd78aef36b3d72415faeb8a1a6046397cb275 |
|
07-May-2014 |
Daniel Micay <danielmicay@gmail.com> |
STATIC_PAGE_SHIFT for cross-compiling jemalloc Sets `STATIC_PAGE_SHIFT` for cross-compiling jemalloc to 12. A shift of 12 represents a page size of 4k for practically all platforms.
/external/jemalloc/configure.ac
|
5fb06569c0ad4438d61e9720a6dd97497e84177d |
|
28-May-2014 |
Mike Hommey <mh@glandium.org> |
Use a configure test to detect the form of malloc_usable_size in malloc.h
/external/jemalloc/configure.ac
|
12141150fdbda57651a53ae2fe0edaea4891d814 |
|
16-May-2014 |
Jason Evans <je@fb.com> |
Refactor huge allocation to be managed by arenas. Refactor huge allocation to be managed by arenas (though the global red-black tree of huge allocations remains for lookup during deallocation). This is the logical conclusion of recent changes that 1) made per arena dss precedence apply to huge allocation, and 2) made it possible to replace the per arena chunk allocation/deallocation functions. Remove the top level huge stats, and replace them with per arena huge stats. Normalize function names and types to *dalloc* (some were *dealloc*). Remove the --enable-mremap option. As jemalloc currently operates, this is a performace regression for some applications, but planned work to logarithmically space huge size classes should provide similar amortized performance. The motivation for this change was that mremap-based huge reallocation forced leaky abstractions that prevented refactoring.
/external/jemalloc/configure.ac
|
835cc0ae27acdc087408dd3f607210c658c28aab |
|
23-Apr-2014 |
Jason Evans <jasone@canonware.com> |
Update libunwind configuration check to look for unw_backtrace(). Update libunwind configuration check to look for unw_backtrace(), which is a newer API not available in older versions of libunwind.
/external/jemalloc/configure.ac
|
4d434adb146375ad17f0d5e994ed5728d2942e3f |
|
15-Apr-2014 |
Jason Evans <je@fb.com> |
Make dss non-optional, and fix an "arena.<i>.dss" mallctl bug. Make dss non-optional on all platforms which support sbrk(2). Fix the "arena.<i>.dss" mallctl to return an error if "primary" or "secondary" precedence is specified, but sbrk(2) is not supported.
/external/jemalloc/configure.ac
|
644d414bc9ab52efbbf7ebeb350170106ec1f937 |
|
15-Apr-2014 |
Jason Evans <jasone@canonware.com> |
Reverse the cc-silence default. Replace --enable-cc-silence with --disable-cc-silence, so that by default people won't see spurious warnings when building jemalloc.
/external/jemalloc/configure.ac
|
9790b9667fd975b1f9a4f108f9d0a20ab265c6b6 |
|
15-Apr-2014 |
Jason Evans <jasone@canonware.com> |
Remove the *allocm() API, which is superceded by the *allocx() API.
/external/jemalloc/configure.ac
|
82abf6fe6913a0f8bccc5ad8aeab081a8d9a5ed8 |
|
31-Mar-2014 |
Jason Evans <jasone@canonware.com> |
Allow libgcc-based backtracing on x86. Remove autoconf code that explicitly disabled libgcc-based backtracing on i[3456]86. There is no mention of which platforms/compilers exhibited problems when this code was added, and chances are good that any gcc toolchain issues have long since been fixed.
/external/jemalloc/configure.ac
|
e181f5aa76d3a9d59a4e0ce46867349334f286d1 |
|
31-Mar-2014 |
Jason Evans <jasone@canonware.com> |
Keep frame pointers if using gcc frame intrinsics. Specify -fno-omit-frame-pointer when using __builtin_frame_address() and __builtin_return_address() for backtracing. This fixes backtracing failures on e.g. i686 for optimized builds.
/external/jemalloc/configure.ac
|
df3f27024f193b7baeedcd9f3799b4774dd20bbf |
|
31-Mar-2014 |
Jason Evans <jasone@canonware.com> |
Adapt hash tests to big-endian systems. The hash code, which has MurmurHash3 at its core, generates different output depending on system endianness, so adapt the expected output on big-endian systems. MurmurHash3 code also makes the assumption that unaligned access is okay (not true on all systems), but jemalloc only hashes data structures that have sufficient alignment to dodge this limitation.
/external/jemalloc/configure.ac
|
cb657e3170349a27e753cdf6316513f56550205e |
|
25-Feb-2014 |
Jason Evans <jasone@canonware.com> |
Add configure test to verify SSE2 code compiles. Make sure that emmintrin.h can be #include'd without causing a compilation error, rather than blindly defining HAVE_SSE2 based on architecture. Attempts to force SSE2 compilation on a 32-bit Ubuntu 13.10 system running as a VMware guest resulted in a no-win choice without any obvious explanation besides toolchain misconfiguration/bug: - Suffer compilation failure due to __MMX__, __SSE__, and __SSE2__ not being defined, even if -mmmx, -msse, and -msse2 are manually specified (note that they appear to be enabled by default). - Manually define __MMX__, __SSE__, and __SSE2__, and suffer compiler warnings that they are already automatically defined. This results in successful compilation and execution, but the noise is intolerable.
/external/jemalloc/configure.ac
|
99b0fbbe6975bf2af1387f75d961ad84fb108276 |
|
25-Feb-2014 |
Jason Evans <jasone@canonware.com> |
Add workaround for missing 'restrict' keyword. Add a cpp #define that removes 'restrict' keyword usage unless the compiler definitely supports C99. As written, 'restrict' is only enabled if the compiler supports the -std=gnu99 option (e.g. gcc and llvm). Reported by Tobias Hieta.
/external/jemalloc/configure.ac
|
ddd6bd4e99e62feb3e377624b93e8cf88080fca4 |
|
13-Feb-2014 |
George Kola <georgekola@gmail.com> |
Using MADV_FREE on Solaris/Illumos
/external/jemalloc/configure.ac
|
f234dc51b9740242d8ba69307db7c5a1312f5a03 |
|
17-Jan-2014 |
Jason Evans <je@fb.com> |
Fix name mangling for stress tests. Fix stress tests such that testlib code uses the jet_ allocator, but test code uses libjemalloc. Generate jemalloc_{rename,mangle}.h, the former because it's needed for the stress test name mangling fix, and the latter for consistency. As an artifact of this change, some (but not all) definitions related to the experimental API are absent from the headers unless the feature is enabled at configure time.
/external/jemalloc/configure.ac
|
d82a5e6a34f20698ab9368bb2b4953b81d175552 |
|
13-Dec-2013 |
Jason Evans <jasone@canonware.com> |
Implement the *allocx() API. Implement the *allocx() API, which is a successor to the *allocm() API. The *allocx() functions are slightly simpler to use because they have fewer parameters, they directly return the results of primary interest, and mallocx()/rallocx() avoid the strict aliasing pitfall that allocm()/rallocx() share with posix_memalign(). The following code violates strict aliasing rules: foo_t *foo; allocm((void **)&foo, NULL, 42, 0); whereas the following is safe: foo_t *foo; void *p; allocm(&p, NULL, 42, 0); foo = (foo_t *)p; mallocx() does not have this problem: foo_t *foo = (foo_t *)mallocx(42, 0);
/external/jemalloc/configure.ac
|
80061b6df0a8bef0cedbd947d74932ff1c2511e8 |
|
09-Dec-2013 |
Jason Evans <jasone@canonware.com> |
Integrate SFMT 1.3.3 into test infrastructure. Integrate the SIMD-oriented Fast Mersenne Twister (SFMT) 1.3.3 into the test infrastructure. The sfmt_t state encapsulation modification comes from Crux (http://www.canonware.com/Crux/) and enables multiple concurrent PRNGs. test/unit/SFMT.c is an adaptation of SFMT's test.c that performs all the same validation, both for 32- and 64-bit generation.
/external/jemalloc/configure.ac
|
a4f124f59fa5f702231432a7e5fa45140ba81e2a |
|
09-Dec-2013 |
Jason Evans <jasone@canonware.com> |
Normalize #define whitespace. Consistently use a tab rather than a space following #define.
/external/jemalloc/configure.ac
|
748dfac7788e3cbc2fc6d36196a81d3f002669f6 |
|
07-Dec-2013 |
Jason Evans <jasone@canonware.com> |
Add test code coverage analysis. Add test code coverage analysis based on gcov.
/external/jemalloc/configure.ac
|
d37d5adee4e4570cfda83e5f1b948a25b9226224 |
|
06-Dec-2013 |
Jason Evans <jasone@canonware.com> |
Disable floating point code/linking when possible. Unless heap profiling is enabled, disable floating point code and don't link with libm. This, in combination with e.g. EXTRA_CFLAGS=-mno-sse on x64 systems, makes it possible to completely disable floating point register use. Some versions of glibc neglect to save/restore caller-saved floating point registers during dynamic lazy symbol loading, and the symbol loading code uses whatever malloc the application happens to have linked/loaded with, the result being potential floating point register corruption.
/external/jemalloc/configure.ac
|
dc1bed62272045651e4bbf2cd85f6fccaf7b1331 |
|
06-Dec-2013 |
Jason Evans <je@fb.com> |
Fix more test refactoring issues.
/external/jemalloc/configure.ac
|
86abd0dcd8e478759fe409d338d11558c4cec427 |
|
01-Dec-2013 |
Jason Evans <jasone@canonware.com> |
Refactor to support more varied testing. Refactor the test harness to support three types of tests: - unit: White box unit tests. These tests have full access to all internal jemalloc library symbols. Though in actuality all symbols are prefixed by jet_, macro-based name mangling abstracts this away from test code. - integration: Black box integration tests. These tests link with the installable shared jemalloc library, and with the exception of some utility code and configure-generated macro definitions, they have no access to jemalloc internals. - stress: Black box stress tests. These tests link with the installable shared jemalloc library, as well as with an internal allocator with symbols prefixed by jet_ (same as for unit tests) that can be used to allocate data structures that are internal to the test code. Move existing tests into test/{unit,integration}/ as appropriate. Split out internal parts of jemalloc_defs.h.in and put them in jemalloc_internal_defs.h.in. This reduces internals exposure to applications that #include <jemalloc/jemalloc.h>. Refactor jemalloc.h header generation so that a single header file results, and the prototypes can be used to generate jet_ prototypes for tests. Split jemalloc.h.in into multiple parts (jemalloc_defs.h.in, jemalloc_macros.h.in, jemalloc_protos.h.in, jemalloc_mangle.h.in) and use a shell script to generate a unified jemalloc.h at configure time. Change the default private namespace prefix from "" to "je_". Add missing private namespace mangling. Remove hard-coded private_namespace.h. Instead generate it and private_unnamespace.h from private_symbols.txt. Use similar logic for public symbols, which aids in name mangling for jet_ symbols. Add test_warn() and test_fail(). Replace existing exit(1) calls with test_fail() calls.
/external/jemalloc/configure.ac
|
66688535969c6dcb234448e590f27df38b4eebdf |
|
04-Dec-2013 |
Jason Evans <jasone@canonware.com> |
Avoid deprecated sbrk(2) on OS X. Avoid referencing sbrk(2) on OS X, because it is deprecated as of OS X 10.9 (Mavericks), and the compiler warns against using it.
/external/jemalloc/configure.ac
|
80ddf498eb166cad45c8592973eb4f949f176688 |
|
20-Aug-2013 |
Jason Evans <je@fb.com> |
Fix build break for MSVC. Introduce AROUT to control whether there is space between ARFLAGS and $@. This regression was introduced by ad505e0ec622883fbb0650763ea8b54f64a770c9. Reported by Mike Hommey.
/external/jemalloc/configure.ac
|
ad505e0ec622883fbb0650763ea8b54f64a770c9 |
|
11-Aug-2013 |
Jory A. Pratt <anarchy@gentoo.org> |
Allow toolchain to determine ar
/external/jemalloc/configure.ac
|
2625c8968e88de435d6452e6f202c8dbdeb1775b |
|
23-Jan-2013 |
Jason Evans <je@fb.com> |
Fix quoting bug in --without-export implementation.
/external/jemalloc/configure.ac
|
7329a4f038ed096f3cfa11cb60433f44009fbe16 |
|
22-Jan-2013 |
Jason Evans <jasone@canonware.com> |
Fix AC_PATH_PROG() calls to specify default. Fix AC_PATH_PROG() calls to specify 'false' as the default, so that if the configure script fails to find a program, the false program is instead called, and an error occurs. Prior to this fix, if xsltproc could not be found, make would not report an error due to the leading -o in the xsltproc invocation. Reported by David Reiss.
/external/jemalloc/configure.ac
|
13e4e24c42d17492f85cdd550c1e13d6f929307e |
|
03-Dec-2012 |
Garrett Cooper <yanegomi@gmail.com> |
Fix build break on *BSD Linux uses alloca.h; many other operating systems define alloca(3) in stdlib.h. Signed-off-by: Garrett Cooper <yanegomi@gmail.com>
/external/jemalloc/configure.ac
|
72c1e59fd249f99dcf5d3992cbdd570a381a67ce |
|
03-Dec-2012 |
Garrett Cooper <yanegomi@gmail.com> |
Improve configure tests for ffsl In particular: - ffsl always returns int, not long, on FreeBSD, Linux, and OSX. - Mute compiler warnings about rv being unused (and the potential for compilers optimizing out the call completely) by dumping the value with printf(3). Signed-off-by: Garrett Cooper <yanegomi@gmail.com>
/external/jemalloc/configure.ac
|
5135e34062584f67ae2d12b1f3940a9fad32ca9f |
|
06-Dec-2012 |
Mike Hommey <mh@glandium.org> |
Allow to enable ivsalloc independently
/external/jemalloc/configure.ac
|
d0357f7a09a6fcbf1df461b07851f61a7f0bdc2d |
|
26-Nov-2012 |
Mike Hommey <mh@glandium.org> |
Allow to disable the zone allocator on Darwin
/external/jemalloc/configure.ac
|
9906660eb7365abb54e4495407ffddb1069ef654 |
|
19-Nov-2012 |
Mike Hommey <mh@glandium.org> |
Allow to build without exporting symbols When statically linking jemalloc, it may be beneficial not to export its symbols if it makes sense, which allows the compiler and the linker to do some further optimizations.
/external/jemalloc/configure.ac
|
247d1248478561c669a85d831e9758089f93a076 |
|
10-Oct-2012 |
Jason Evans <je@fb.com> |
Drop const from malloc_usable_size() argument on Linux. Drop const from malloc_usable_size() argument on Linux, in order to match the prototype in Linux's malloc.h.
/external/jemalloc/configure.ac
|
a6770a70493bc25495d17bc8b4a0246b3877918b |
|
03-May-2012 |
Mike Hommey <mh@glandium.org> |
Remove -fno-common compiler flag for OS X. It doesn't allow the je_malloc_message and je_malloc_conf symbols to be overridden when linking statically.
/external/jemalloc/configure.ac
|
2e671ffbadc02fc7de8cbafdd1031e3b0ad73c5b |
|
10-May-2012 |
Jason Evans <je@fb.com> |
Add the --enable-mremap option. Add the --enable-mremap option, and disable the use of mremap(2) by default, for the same reason that freeing chunks via munmap(2) is disabled by default on Linux: semi-permanent VM map fragmentation.
/external/jemalloc/configure.ac
|
79c4bca7d10e967ff524f17a6990e5c630116198 |
|
02-May-2012 |
Mike Hommey <mh@glandium.org> |
Use "hardcoded" dependencies when compiler doesn't support -MM
/external/jemalloc/configure.ac
|
7bfecf412dab69e771c9bbbaa01160bb69af8ec0 |
|
30-Apr-2012 |
Mike Hommey <mh@glandium.org> |
Check for VALGRIND_RESIZEINPLACE_BLOCK support VALGRIND_RESIZEINPLACE_BLOCK was added in valgrind 3.7. Unfortunately, the __VALGRIND_MINOR__ macro still says 6 in 3.7 :(
/external/jemalloc/configure.ac
|
fd97b1dfc76647c3f90f28dc63cc987041fe20df |
|
30-Apr-2012 |
Mike Hommey <mh@glandium.org> |
Add support for MSVC Tested with MSVC 8 32 and 64 bits.
/external/jemalloc/configure.ac
|
7cdea3973cab8640d1f44c7638ed5e30ed18be24 |
|
30-Apr-2012 |
Mike Hommey <mh@glandium.org> |
Few configure.ac adjustments - Use the extensions autoconf finds for object and executable files. - Remove the sorev variable, and replace SOREV definition with sorev's. - Default to je_ prefix on win32.
/external/jemalloc/configure.ac
|
6716aa83526b3f866d73a033970cc920bc61c13f |
|
23-Apr-2012 |
Jason Evans <je@fb.com> |
Force use of TLS if heap profiling is enabled.
/external/jemalloc/configure.ac
|
a4936ce4d635ef129be201f53cdc0786315ac3b6 |
|
23-Apr-2012 |
Jason Evans <je@fb.com> |
Fix jemalloc.sh code generation. Fix jemalloc.sh code generation by adding @sorev@ and using it instead of @SOREV@ (which contains Makefile-specific variables).
/external/jemalloc/configure.ac
|
14103d3598e7b828e79a81f2978dc08348677b02 |
|
20-Apr-2012 |
Mike Hommey <mh@glandium.org> |
Fix intmax_t configure error message
/external/jemalloc/configure.ac
|
a19e87fbad020e8dd3d26682032929e8e5ae71c1 |
|
22-Apr-2012 |
Mike Hommey <mh@glandium.org> |
Add support for Mingw
/external/jemalloc/configure.ac
|
188da7c3f5bcc2a1b19f8f7a7d326dcb8702c762 |
|
18-Apr-2012 |
Mike Hommey <mh@glandium.org> |
Refactor object and library build, and only build PIC libraries when PIC_CFLAGS is defined
/external/jemalloc/configure.ac
|
85221d5d75be26ce8941cc08a798e69ecdd0a57c |
|
18-Apr-2012 |
Mike Hommey <mh@glandium.org> |
Make versioned shared library suffix configurable This allows for different patterns for file names: - lib.so.version for e.g. Linux - lib.version.dylib for OSX (which is much more common than lib.dylib.version) - lib.dll for Windows (no version at all).
/external/jemalloc/configure.ac
|
b57d3ec571c6551231be62b7bf92c084a8c8291c |
|
17-Apr-2012 |
Jason Evans <jasone@canonware.com> |
Add atomic(9) implementations of atomic operations. Add atomic(9) implementations of atomic operations. These are used on FreeBSD for non-x86 architectures.
/external/jemalloc/configure.ac
|
fa08da752bf91c146f77fff59b4ed09b42633260 |
|
16-Apr-2012 |
Mike Hommey <mh@glandium.org> |
Limit the number of flags directly given to the linker, and refactor rpath This will make things easier for MSVC support.
/external/jemalloc/configure.ac
|
5bee66d3edec3bfd83bfb7c0e978e8d0c9e4888a |
|
16-Apr-2012 |
Mike Hommey <mh@glandium.org> |
Add variables for library prefix, and static library, object and executable suffixes This makes hacking on Makefile easier.
/external/jemalloc/configure.ac
|
59ae2766af88bad07ac721c4ee427b171e897bcb |
|
17-Apr-2012 |
Jason Evans <je@fb.com> |
Add the --disable-munmap option. Add the --disable-munmap option, remove the configure test that attempted to detect the VM allocation quirk known to exist on Linux x86[_64], and make --disable-munmap implicit on Linux.
/external/jemalloc/configure.ac
|
a398a6b46e53035a4ef660b4c7a1c406f3abe645 |
|
16-Apr-2012 |
Jason Evans <je@fb.com> |
Remove configure test cruft.
/external/jemalloc/configure.ac
|
7ca0fdfb85b2a9fc7a112e158892c098e004385b |
|
13-Apr-2012 |
Jason Evans <je@fb.com> |
Disable munmap() if it causes VM map holes. Add a configure test to determine whether common mmap()/munmap() patterns cause VM map holes, and only use munmap() to discard unused chunks if the problem does not exist. Unify the chunk caching for mmap and dss. Fix options processing to limit lg_chunk to be large enough that redzones will always fit.
/external/jemalloc/configure.ac
|
83c324acd8bd5f32e0ce9b4d3df2f1a0ae46f487 |
|
12-Apr-2012 |
Mike Hommey <mh@glandium.org> |
Use a stub replacement and disable dss when sbrk is not supported
/external/jemalloc/configure.ac
|
122449b073bcbaa504c4f592ea2d733503c272d2 |
|
06-Apr-2012 |
Jason Evans <je@fb.com> |
Implement Valgrind support, redzones, and quarantine. Implement Valgrind support, as well as the redzone and quarantine features, which help Valgrind detect memory errors. Redzones are only implemented for small objects because the changes necessary to support redzones around large and huge objects are complicated by in-place reallocation, to the point that it isn't clear that the maintenance burden is worth the incremental improvement to Valgrind support. Merge arena_salloc() and arena_salloc_demote(). Refactor i[v]salloc() to expose the 'demote' option.
/external/jemalloc/configure.ac
|
b147611b5253921a873191bb0589d3b18f613946 |
|
05-Apr-2012 |
Jason Evans <jasone@canonware.com> |
Add utrace(2)-based tracing (--enable-utrace).
/external/jemalloc/configure.ac
|
02b231205e802a7c4f33899a569adcb1312a85d5 |
|
05-Apr-2012 |
Jason Evans <je@fb.com> |
Fix threaded initialization and enable it on Linux. Reported by Mike Hommey.
/external/jemalloc/configure.ac
|
382132eeacd9311a7a25d5b8f126d82ef453d60d |
|
05-Apr-2012 |
Jason Evans <je@fb.com> |
Add missing include for ffsl() test.
/external/jemalloc/configure.ac
|
3cc1f1aa6981d6647aa01cec725fb2c134c1b0e9 |
|
04-Apr-2012 |
Jason Evans <jasone@canonware.com> |
Add tls_model configuration. The tls_model attribute isn't supporte by clang (yet?), so add a configure test that defines JEMALLOC_TLS_MODEL appropriately.
/external/jemalloc/configure.ac
|
2cfe6d67ef6a622eeb47ba48b431bdafc0c45b35 |
|
27-Mar-2012 |
Mike Hommey <mh@glandium.org> |
Change AC_COMPILE_IFELSE into AC_LINK_IFELSE for the __sync_{add, sub}_and_fetch() test With the Android NDK, __sync_{add,sub}_and_fetch() compile fine for uint64_t, but the corresponding libgcc function aren't there.
/external/jemalloc/configure.ac
|
fd4fcefa004e04ea8672b11e280a6ced16c38dd2 |
|
24-Mar-2012 |
Jason Evans <jasone@canonware.com> |
Force the lazy-lock feature on FreeBSD. Force the lazy-lock feature on FreeBSD in order to avoid pthread_self(), because it causes allocation. (This change was mistakenly omitted from 41b6afb834b1f5250223678c52bd4f013d4234f6.)
/external/jemalloc/configure.ac
|
c1e567bda042d94159026b96e7a77683606037fa |
|
26-Mar-2012 |
Mike Hommey <mh@glandium.org> |
Use __sync_add_and_fetch and __sync_sub_and_fetch when they are available These functions may be available as inlines or as libgcc functions. In the former case, a __GCC_HAVE_SYNC_COMPARE_AND_SWAP_n macro is defined. But we still want to use these functions in the latter case, when we don't have our own implementation.
/external/jemalloc/configure.ac
|
41b6afb834b1f5250223678c52bd4f013d4234f6 |
|
03-Feb-2012 |
Jason Evans <jasone@canonware.com> |
Port to FreeBSD. Use FreeBSD-specific functions (_pthread_mutex_init_calloc_cb(), _malloc_{pre,post}fork()) to avoid bootstrapping issues due to allocation in libc and libthr. Add malloc_strtoumax() and use it instead of strtoul(). Disable validation code in malloc_vsnprintf() and malloc_strtoumax() until jemalloc is initialized. This is necessary because locale initialization causes allocation for both vsnprintf() and strtoumax(). Force the lazy-lock feature on in order to avoid pthread_self(), because it causes allocation. Use syscall(SYS_write, ...) rather than write(...), because libthr wraps write() and causes allocation. Without this workaround, it would not be possible to print error messages in malloc_conf_init() without substantially reworking bootstrapping. Fix choose_arena_hard() to look at how many threads are assigned to the candidate choice, rather than checking whether the arena is uninitialized. This bug potentially caused more arenas to be initialized than necessary.
/external/jemalloc/configure.ac
|
b80581d30928e04b3d12b1fec2b989da44a07e2c |
|
24-Mar-2012 |
Jason Evans <jasone@canonware.com> |
Forcibly disable TLS on OS X. Forcibly disable TLS on OS X. gcc and llvm-gcc on OS X do not support TLS, but clang does. Unfortunately, the implementation calls malloc() internally during TLS initialization, which causes an unresolvable bootstrapping issue.
/external/jemalloc/configure.ac
|
9022bf9bfd6ab907e5b019fed09fdc3acdf1c280 |
|
24-Mar-2012 |
Jason Evans <jasone@canonware.com> |
Remove -no-cpp-precomp compiler flag for OS X. Remove the -no-cpp-precomp compiler flag when compiling on OS X. clang does not support the flag, and gcc works fine without it.
/external/jemalloc/configure.ac
|
cd9a1346e96f71bdecdc654ea50fc62d76371e74 |
|
22-Mar-2012 |
Jason Evans <je@fb.com> |
Implement tsd. Implement tsd, which is a TLS/TSD abstraction that uses one or both internally. Modify bootstrapping such that no tsd's are utilized until allocation is safe. Remove malloc_[v]tprintf(), and use malloc_snprintf() instead. Fix %p argument size handling in malloc_vsnprintf(). Fix a long-standing statistics-related bug in the "thread.arena" mallctl that could cause crashes due to linked list corruption.
/external/jemalloc/configure.ac
|
154829d2560a202ef6378b089655747585e44fb5 |
|
20-Mar-2012 |
Mike Hommey <mh@glandium.org> |
Improve zone support for OSX I tested a build from 10.7 run on 10.7 and 10.6, and a build from 10.6 run on 10.6. The AC_COMPILE_IFELSE limbo is to avoid running a program during configure, which presumably makes it work when cross compiling for iOS.
/external/jemalloc/configure.ac
|
650285d5be2aacd9c0e60260563dd0235b729af7 |
|
19-Mar-2012 |
Jason Evans <je@fb.com> |
Generalize dlsym() configuration. Generalize dlsym() configuration to succeed if dlsym() is in libc rather than libdl.
/external/jemalloc/configure.ac
|
e24c7af35d1e9d24d02166ac98cfca7cf807ff13 |
|
19-Mar-2012 |
Jason Evans <je@fb.com> |
Invert NO_TLS to JEMALLOC_TLS.
/external/jemalloc/configure.ac
|
f3e139a1ef17f300ebed0577a0ee7b3714404707 |
|
19-Mar-2012 |
Jason Evans <je@fb.com> |
Use AC_LINK_IFELSE() rather than AC_RUN_IFELSE() in JE_COMPILABLE(). Reported by Mike Hommey.
/external/jemalloc/configure.ac
|
7091b415bb41b9d7098a24cfe0a577299622f5db |
|
19-Mar-2012 |
Jason Evans <je@fb.com> |
Fix various documentation formatting regressions.
/external/jemalloc/configure.ac
|
39006f990771518b1b7d4b8dfdfac72409ef26ca |
|
17-Mar-2012 |
Jason Evans <je@fb.com> |
Look for pthreads functionality in libc. If there is no libpthread, look for pthreads functionality in libc before failing to configure pthreads. This is necessary on at least the Android platform. Reported by Mike Hommey.
/external/jemalloc/configure.ac
|
0a0bbf63e5d9bc60d6854c6d46b437fbeebd1470 |
|
13-Mar-2012 |
Jason Evans <je@fb.com> |
Implement aligned_alloc(). Implement aligned_alloc(), which was added in the C11 standard. The function is weakly specified to the point that a minimally compliant implementation would be painful to use (size must be an integral multiple of alignment!), which in practice makes posix_memalign() a safer choice.
/external/jemalloc/configure.ac
|
4c2faa8a7c42a47a6bea509f5a23234bc5a66d40 |
|
13-Mar-2012 |
Jason Evans <je@fb.com> |
Fix a regression in JE_COMPILABLE(). Revert JE_COMPILABLE() so that it detects link errors. Cross-compiling should still work as long as a valid configure cache is provided. Clean up some comments/whitespace.
/external/jemalloc/configure.ac
|
08fc3b2d5173512a2c1fdbe11cf00c8c70bad503 |
|
12-Mar-2012 |
Jason Evans <je@fb.com> |
Fix --with-mangling/--with-jemalloc-prefix interaction. Fix --with-mangling to remove mangled symbols from the set of functions to apply a prefix to. Prior to this change, the interaction was correct with autoconf 2.59, but incorrect with autoconf 2.65.
/external/jemalloc/configure.ac
|
d81e4bdd5c991bd5642c8b859ef1f752b51cd9be |
|
06-Mar-2012 |
Jason Evans <je@fb.com> |
Implement malloc_vsnprintf(). Implement malloc_vsnprintf() (a subset of vsnprintf(3)) as well as several other printing functions based on it, so that formatted printing can be relied upon without concern for inducing a dependency on floating point runtime support. Replace malloc_write() calls with malloc_*printf() where doing so simplifies the code. Add name mangling for library-private symbols in the data and BSS sections. Adjust CONF_HANDLE_*() macros in malloc_conf_init() to expose all opt_* variable use to cpp so that proper mangling occurs.
/external/jemalloc/configure.ac
|
6684cacfa8fa9d82762983bce11bb953ce62ba8e |
|
05-Mar-2012 |
Jason Evans <je@fb.com> |
Tweak configure.ac to support cross-compiling. Submitted by Andreas Vinsander.
/external/jemalloc/configure.ac
|
7e77eaffffe5c73d44ee64b14ba4b3d7693179d6 |
|
03-Mar-2012 |
Jason Evans <je@fb.com> |
Add the --disable-experimental option.
/external/jemalloc/configure.ac
|
0a5489e37da88a1a50fbf8552e0d3a7f8fd93ffc |
|
02-Mar-2012 |
Jason Evans <je@fb.com> |
Add --with-mangling. Add the --with-mangling configure option, which can be used to specify name mangling on a per public symbol basis that takes precedence over --with-jemalloc-prefix. Expose the memalign() and valloc() overrides even if --with-jemalloc-prefix is specified. This change does no real harm, and simplifies the code.
/external/jemalloc/configure.ac
|
777c191485452251fbecfe6638a4a54c651e25b3 |
|
29-Feb-2012 |
Jason Evans <je@fb.com> |
Enable support for junk/zero filling by default.
/external/jemalloc/configure.ac
|
d073a321091800e71ea56f98701253dc0969d879 |
|
29-Feb-2012 |
Jason Evans <je@fb.com> |
Enable the stats configuration option by default.
/external/jemalloc/configure.ac
|
c90ad71237c05473bcb968beddebb0a487c36e75 |
|
29-Feb-2012 |
Jason Evans <je@fb.com> |
Remove the sysv option.
/external/jemalloc/configure.ac
|
b172610317babc7f365584ddd7fdaf4eb8d9d04c |
|
29-Feb-2012 |
Jason Evans <je@fb.com> |
Simplify small size class infrastructure. Program-generate small size class tables for all valid combinations of LG_TINY_MIN, LG_QUANTUM, and PAGE_SHIFT. Use the appropriate table to generate all relevant data structures, and remove the distinction between tiny/quantum/cacheline/subpage bins. Remove --enable-dynamic-page-shift. This option didn't prove useful in practice, and it prevented optimizations. Add Tilera architecture support.
/external/jemalloc/configure.ac
|
ef8897b4b938111fcc9b54725067f1dbb33a4c20 |
|
13-Feb-2012 |
Jason Evans <je@fb.com> |
Make 8-byte tiny size class non-optional. When tiny size class support was first added, it was intended to support truly tiny size classes (even 2 bytes). However, this wasn't very useful in practice, so the minimum tiny size class has been limited to sizeof(void *) for a long time now. This is too small to be standards compliant, but other commonly used malloc implementations do not even bother using a 16-byte quantum on systems with vector units (SSE2+, AltiVEC, etc.). As such, it is safe in practice to support an 8-byte tiny size class on 64-bit systems that support 16-byte types.
/external/jemalloc/configure.ac
|
0fee70d718b9846cfab04225dc86a4b4216b963f |
|
13-Feb-2012 |
Jason Evans <je@fb.com> |
Do not enable lazy locking by default. Do not enable lazy locking by default, because: - It's fragile (applications can subvert detection of multi-threaded mode). - Thread caching amortizes locking overhead in the default configuration.
/external/jemalloc/configure.ac
|
4162627757889ea999264c2ddbc3c354768774e2 |
|
13-Feb-2012 |
Jason Evans <je@fb.com> |
Remove the swap feature. Remove the swap feature, which enabled per application swap files. In practice this feature has not proven itself useful to users.
/external/jemalloc/configure.ac
|
7372b15a31c63ac5cb9ed8aeabc2a0a3c005e8bf |
|
11-Feb-2012 |
Jason Evans <je@fb.com> |
Reduce cpp conditional logic complexity. Convert configuration-related cpp conditional logic to use static constant variables, e.g.: #ifdef JEMALLOC_DEBUG [...] #endif becomes: if (config_debug) { [...] } The advantage is clearer, more concise code. The main disadvantage is that data structures no longer have conditionally defined fields, so they pay the cost of all fields regardless of whether they are used. In practice, this is only a minor concern; config_stats will go away in an upcoming change, and config_prof is the only other major feature that depends on more than a few special-purpose fields.
/external/jemalloc/configure.ac
|
f576c63f1eb29ce32e930501f65c541ff344e912 |
|
02-Nov-2011 |
Jason Evans <je@fb.com> |
Refactor SO and REV make variables. Refactor the SO and REV such that they are set via autoconf variables, @so@ and @rev@. These variables are both needed by the jemalloc.sh script, so this unifies their definitions.
/external/jemalloc/configure.ac
|
2bd3cbc5c68bb9b097c382108ae1aed793e08062 |
|
13-Oct-2011 |
Antony Dovgal <tony@daylessday.org> |
add autogenerated jemalloc.sh wrapper script
/external/jemalloc/configure.ac
|
746e77a06bf1089d50fbd64e1759b96c1cfbd9f5 |
|
31-Jul-2011 |
Jason Evans <je@fb.com> |
Add the --with-private-namespace option. Add the --with-private-namespace option to make it possible to work around library-private symbols being exposed in static libraries.
/external/jemalloc/configure.ac
|
955851f3849e3fb57541bef37e241caf5aa7692c |
|
01-Apr-2011 |
Jason Evans <jasone@canonware.com> |
Adjust repo path dependencies. Update .gitignore and configure.ac to deal with the recent directory restructuring.
/external/jemalloc/configure.ac
|
7427525c28d58c423a68930160e3b0fe577fe953 |
|
01-Apr-2011 |
Jason Evans <jasone@canonware.com> |
Move repo contents in jemalloc/ to top level.
/external/jemalloc/configure.ac
|