Fixes for Apple Silicon (cmake / soxr)

This commit is contained in:
Luke Street 2021-01-06 20:29:04 -05:00
parent 6ae9e93d31
commit 6faff77f86
4 changed files with 6302 additions and 2 deletions

View File

@ -212,9 +212,13 @@ elseif(WIN32)
Xinput
)
elseif(APPLE)
set(AudioMatrix_SRC lib/audiodev/AudioMatrix.cpp)
if(${CMAKE_SYSTEM_PROCESSOR} STREQUAL x86_64)
set(AudioMatrix_SRC lib/audiodev/AudioMatrixSSE.cpp)
endif()
target_sources(boo PRIVATE
lib/audiodev/AQS.cpp
lib/audiodev/AudioMatrixSSE.cpp
${AudioMatrix_SRC}
lib/inputdev/HIDListenerIOKit.cpp
lib/inputdev/HIDDeviceIOKit.cpp
lib/mac/ApplicationCocoa.mm

View File

@ -154,7 +154,7 @@ typedef __m128 v4sf;
/*
ARM NEON support macros
*/
#elif !defined(PFFFT_SIMD_DISABLE) && defined(__arm__)
#elif !defined(PFFFT_SIMD_DISABLE) && (defined(__arm__) || defined(__arm64__))
# include <arm_neon.h>
typedef float32x4_t v4sf;
# define SIMD_SZ 4

6292
soxr/src/sse2neon.h Normal file

File diff suppressed because it is too large Load Diff

View File

@ -13,7 +13,11 @@
#endif
#include <string.h>
#include <stdlib.h>
#if __x86_64__
#include <xmmintrin.h>
#else
#include "sse2neon.h"
#endif
#include "internal.h"
#define FIFO_SIZE_T int
#define FIFO_MIN 0x8000