Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Don't fetch tsd in a0{d,}alloc(). | Jason Evans | 2014-10-11 | 1 | -0/+1 |
| | | | | | Don't fetch tsd in a0{d,}alloc(), because doing so can cause infinite recursion on systems that require an allocated tsd wrapper. | ||||
* | Remove the *allocm() API, which is superceded by the *allocx() API. | Jason Evans | 2014-04-15 | 1 | -1/+1 |
| | |||||
* | Fix name mangling issues. | Jason Evans | 2013-12-13 | 1 | -2/+2 |
| | | | | | | | | | Move je_* definitions from jemalloc_macros.h.in to jemalloc_defs.h.in, because only the latter is an autoconf header (#undef substitution occurs). Fix unit tests to use automatic mangling, so that e.g. mallocx is macro-substituted to becom jet_mallocx. | ||||
* | Implement the *allocx() API. | Jason Evans | 2013-12-13 | 1 | -4/+3 |
| | | | | | | | | | | | | | | | | | | | | | | | 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); | ||||
* | Fix a strict aliasing violation. | Jason Evans | 2013-12-12 | 1 | -2/+4 |
| | |||||
* | Add mq (message queue) to test infrastructure. | Jason Evans | 2013-12-12 | 1 | -0/+91 |
Add mtx (mutex) to test infrastructure, in order to avoid bootstrapping complications that would result from directly using malloc_mutex. Rename test infrastructure's thread abstraction from je_thread to thd. Fix some header ordering issues. |