diff options
author | Jason Evans <jasone@canonware.com> | 2013-12-13 06:35:52 (GMT) |
---|---|---|
committer | Jason Evans <jasone@canonware.com> | 2013-12-13 06:35:52 (GMT) |
commit | d82a5e6a34f20698ab9368bb2b4953b81d175552 (patch) | |
tree | 23cbe8892adf46196cc6b2cf977704405c7798b7 /Makefile.in | |
parent | 0ac396a06a10f8a8c1d41c8771367625e7d49d07 (diff) | |
download | jemalloc-d82a5e6a34f20698ab9368bb2b4953b81d175552.zip jemalloc-d82a5e6a34f20698ab9368bb2b4953b81d175552.tar.gz jemalloc-d82a5e6a34f20698ab9368bb2b4953b81d175552.tar.bz2 |
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);
Diffstat (limited to 'Makefile.in')
-rw-r--r-- | Makefile.in | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/Makefile.in b/Makefile.in index cd137fd..af60a21 100644 --- a/Makefile.in +++ b/Makefile.in @@ -112,13 +112,16 @@ TESTS_UNIT := $(srcroot)test/unit/bitmap.c $(srcroot)test/unit/math.c \ $(srcroot)test/unit/SFMT.c $(srcroot)test/unit/tsd.c TESTS_INTEGRATION := $(srcroot)test/integration/aligned_alloc.c \ $(srcroot)test/integration/allocated.c \ - $(srcroot)test/integration/ALLOCM_ARENA.c \ + $(srcroot)test/integration/mallocx.c \ $(srcroot)test/integration/mremap.c \ $(srcroot)test/integration/posix_memalign.c \ + $(srcroot)test/integration/rallocx.c \ $(srcroot)test/integration/thread_arena.c \ - $(srcroot)test/integration/thread_tcache_enabled.c + $(srcroot)test/integration/thread_tcache_enabled.c \ + $(srcroot)test/integration/xallocx.c ifeq ($(enable_experimental), 1) TESTS_INTEGRATION += $(srcroot)test/integration/allocm.c \ + $(srcroot)test/integration/ALLOCM_ARENA.c \ $(srcroot)test/integration/rallocm.c endif TESTS_STRESS := |