Objective c 运行时的SIMD支持

Objective c 运行时的SIMD支持,objective-c,xcode,macos,Objective C,Xcode,Macos,我正在制作一个XCode obj-c应用程序,我决定通过XCode的EnableVector Extensions选项打开AVX2 我启动了我的应用程序,但它崩溃了 几个小时后,我发现问题在于我的Mac实际上不支持AVX2(第三代i7) 问题是,我仍然希望它能工作,因为我已经注释掉了所有使用AVX2指令的代码行 这意味着即使在我的应用程序中也没有avx2代码,我只是在上有avx2支持。我假设AVX2在我实际调用函数之前不会被使用 我的问题是: 如何获取使用AVX2指令集编译但在运行时有条件检查机

我正在制作一个XCode obj-c应用程序,我决定通过XCode的EnableVector Extensions选项打开AVX2

我启动了我的应用程序,但它崩溃了

几个小时后,我发现问题在于我的Mac实际上不支持AVX2(第三代i7)

问题是,我仍然希望它能工作,因为我已经注释掉了所有使用AVX2指令的代码行

这意味着即使在我的应用程序中也没有avx2代码,我只是在上有avx2支持。我假设AVX2在我实际调用函数之前不会被使用

我的问题是:

如何获取使用AVX2指令集编译但在运行时有条件检查机器是否支持AVX2的应用程序,如果不支持,则不会激活AVX2指令?