macOS: Enabled posix_memalign() like on other Unix platforms.

This commit is contained in:
Stefan Werner 2019-09-13 22:49:26 +02:00
parent 57e0e520e8
commit c80564ef9f
3 changed files with 3 additions and 21 deletions

View File

@ -46,13 +46,7 @@ void *util_aligned_malloc(size_t size, int alignment)
return MEM_mallocN_aligned(size, alignment, "Cycles Aligned Alloc");
#elif defined(_WIN32)
return _aligned_malloc(size, alignment);
#elif defined(__APPLE__)
/* On Mac OS X, both the heap and the stack are guaranteed 16-byte aligned so
* they work natively with SSE types with no further work.
*/
assert(alignment == 16);
return malloc(size);
#elif defined(__FreeBSD__) || defined(__NetBSD__)
#elif defined(__FreeBSD__) || defined(__NetBSD__) || defined(__APPLE__)
void *result;
if (posix_memalign(&result, alignment, size)) {
/* Non-zero means allocation error

View File

@ -72,14 +72,7 @@ void *aligned_malloc(size_t size, size_t alignment)
{
#ifdef _WIN32
return _aligned_malloc(size, alignment);
#elif defined(__APPLE__)
/* On Mac OS X, both the heap and the stack are guaranteed 16-byte aligned so
* they work natively with SSE types with no further work.
*/
assert(alignment == 16);
(void)alignment;
return malloc(size);
#elif defined(__FreeBSD__) || defined(__NetBSD__)
#elif defined(__FreeBSD__) || defined(__NetBSD__) || defined (__APPLE__)
void *result;
if (posix_memalign(&result, alignment, size)) {

View File

@ -44,12 +44,7 @@ namespace libmv {
void *aligned_malloc(int size, int alignment) {
#ifdef _WIN32
return _aligned_malloc(size, alignment);
#elif defined(__APPLE__)
// On Mac OS X, both the heap and the stack are guaranteed 16-byte aligned so
// they work natively with SSE types with no further work.
CHECK_EQ(alignment, 16);
return malloc(size);
#elif defined(__FreeBSD__) || defined(__NetBSD__)
#elif defined(__FreeBSD__) || defined(__NetBSD__) || defined(__APPLE__)
void *result;
if (posix_memalign(&result, alignment, size)) {