@@ -28,7 +28,11 @@ endif()
2828
2929# ISPC
3030if (OIDN_ARCH STREQUAL "X64" )
31- set (OIDN_ISPC_TARGET_LIST sse4.1-i32x8 avx2-i32x8 avx512skx-x16 avx512gnr-x16)
31+ if (APPLE )
32+ set (OIDN_ISPC_TARGET_LIST sse4.1-i32x8 avx2-i32x8 avx512skx-x16)
33+ else ()
34+ set (OIDN_ISPC_TARGET_LIST sse4.1-i32x8 avx2-i32x8 avx512skx-x16 avx512gnr-x16)
35+ endif ()
3236elseif (OIDN_ARCH STREQUAL "ARM64" )
3337 set (OIDN_ISPC_TARGET_LIST neon-i32x8)
3438endif ()
@@ -97,7 +101,7 @@ else()
97101 cpu_conv.cpp
98102 )
99103
100- if (OIDN_ARCH STREQUAL "X64" )
104+ if (OIDN_ARCH STREQUAL "X64" AND NOT APPLE )
101105 list (APPEND OIDN_CPU_SOURCES
102106 cpu_conv_amx.h
103107 cpu_conv_amx.cpp
@@ -138,7 +142,7 @@ ispc_target_add_sources(OpenImageDenoise_device_cpu
138142 TARGET_LIST ${OIDN_ISPC_TARGET_LIST}
139143)
140144
141- if (OIDN_ARCH STREQUAL "X64" )
145+ if (OIDN_ARCH STREQUAL "X64" AND NOT APPLE )
142146 ispc_target_add_sources(OpenImageDenoise_device_cpu
143147 cpu_input_process_f16.ispc
144148 cpu_output_process_f16.ispc
@@ -168,6 +172,18 @@ elseif(OIDN_ARCH STREQUAL "ARM64")
168172 cpu_upsample_f16.ispc
169173 TARGET_LIST neon-i16x16
170174 )
175+ else ()
176+ ispc_target_add_sources(OpenImageDenoise_device_cpu
177+ cpu_input_process_f16.ispc
178+ cpu_output_process_f16.ispc
179+ TARGET_LIST avx512skx-x16
180+ )
181+
182+ ispc_target_add_sources(OpenImageDenoise_device_cpu
183+ cpu_pool_f16.ispc
184+ cpu_upsample_f16.ispc
185+ TARGET_LIST avx512skx-x32
186+ )
171187endif ()
172188
173189target_link_libraries (OpenImageDenoise_device_cpu PRIVATE OpenImageDenoise_core ${CMAKE_THREAD_LIBS_INIT} TBB::tbb)
0 commit comments