Fixed: Compilation under Mac OS X (malloc is already aligned on 16 bytes and memalign doesn't exist)

This commit is contained in:
kervala 2014-08-27 11:16:30 +02:00
parent 4402e2134c
commit 8d3ea38ffc

View file

@ -364,6 +364,11 @@ typedef unsigned int uint; // at least 32bits (depend of processor)
#include <malloc.h> #include <malloc.h>
inline void *aligned_malloc(size_t size, size_t alignment) { return _aligned_malloc(size, alignment); } inline void *aligned_malloc(size_t size, size_t alignment) { return _aligned_malloc(size, alignment); }
inline void aligned_free(void *ptr) { _aligned_free(ptr); } inline void aligned_free(void *ptr) { _aligned_free(ptr); }
#elif defined(NL_OS_MAC)
#include <malloc/malloc.h>
// under Mac OS X, malloc is already aligned for SSE and Altivec (16 bytes alignment)
inline void *aligned_malloc(size_t size, size_t alignment) { return malloc(size); }
inline void aligned_free(void *ptr) { free(ptr); }
#else #else
#include <malloc.h> #include <malloc.h>
inline void *aligned_malloc(size_t size, size_t alignment) { return memalign(alignment, size); } inline void *aligned_malloc(size_t size, size_t alignment) { return memalign(alignment, size); }