summaryrefslogtreecommitdiffstats
path: root/test/unit/mq.c
Commit message (Collapse)AuthorAgeFilesLines
* Don't fetch tsd in a0{d,}alloc().Jason Evans2014-10-111-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 Evans2014-04-151-1/+1
|
* Fix name mangling issues.Jason Evans2013-12-131-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 Evans2013-12-131-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 Evans2013-12-121-2/+4
|
* Add mq (message queue) to test infrastructure.Jason Evans2013-12-121-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.