aboutsummaryrefslogtreecommitdiff
path: root/src/malloc/posix_memalign.c (follow)
Commit message (Expand)AuthorAgeFilesLines
* move core memalign code from aligned_alloc to __memalign•••there are two motivations for this change. one is to avoid gratuitously depending on a C11 symbol for implementing a POSIX function. the other pertains to the documented semantics. C11 does not define any behavior for aligned_alloc when the length argument is not a multiple of the alignment argument. posix_memalign on the other hand places no requirements on the length argument. using __memalign as the implementation of both, rather than trying to implement one in terms of the other when their documented contracts differ, eliminates this confusion. Rich Felker2013-07-041-1/+3
* move alignment check from aligned_alloc to posix_memalign•••C11 has no requirement that the alignment be a multiple of sizeof(void*), and in fact seems to require any "valid alignment supported by the implementation" to work. since the alignment of char is 1 and thus a valid alignment, an alignment argument of 1 should be accepted. Rich Felker2013-07-041-0/+1
* implement "low hanging fruit" from C11•••based on Gregor's patch sent to the list. includes: - stdalign.h - removing gets in C11 mode - adding aligned_alloc and adjusting other functions to use it - adding 'x' flag to fopen for exclusive mode Rich Felker2012-08-251-40/+3
* posix_memalign should fail if size is not a multiple of sizeof(void *)Rich Felker2011-06-291-1/+1
* initial check-in, version 0.5.0Rich Felker2011-02-121-0/+47