SSE & clang 3.7
ken.cunningham.webuse at gmail.com
Thu Dec 20 08:10:36 UTC 2018
> On Dec 19, 2018, at 11:20 PM, Riccardo Mottola via macports-users <macports-users at lists.macports.org> wrote:
> I am trying quite stubbornly to compile ArcticFox on 10.5.
> When using clang 3.9, which I know works fine on 10.6 and produces good results, I get an "illegal instruction" at a certain point and "don't know from what". I have issues using gcc 6.5 on Mac (works on other platforms.
> Clang 3.4 has the same issue.
> I wanted to try 3.7, but I get this error.
> 5:55.56 Unified_mm_ipc_interpose0.o
> 5:58.08 In file included from /Users/multix/code/Arctic-Fox/obj-i386-apple-darwin9.8.0/dom/plugins/ipc/interpose/Unified_mm_ipc_interpose0.mm:2:
> 5:58.08 In file included from /Users/multix/code/Arctic-Fox/dom/plugins/ipc/interpose/plugin_child_interpose.mm:31:
> 5:58.08 In file included from /Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Headers/Carbon.h:20:
> 5:58.08 In file included from /Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/CoreServices.framework/Headers/CoreServices.h:21:
> 5:58.08 In file included from /Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/CoreServices.framework/Frameworks/AE.framework/Headers/AE.h:20:
> 5:58.08 In file included from /Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/CoreServices.framework/Frameworks/CarbonCore.framework/Headers/CarbonCore.h:125:
> 5:58.09 In file included from /Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/CoreServices.framework/Frameworks/CarbonCore.framework/Headers/DriverServices.h:32:
> 5:58.09 In file included from /Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/CoreServices.framework/Frameworks/CarbonCore.framework/Headers/MachineExceptions.h:29:
> 5:58.09 /opt/local/libexec/llvm-3.7/bin/../lib/clang/3.7.1/include/xmmintrin.h:28:2: error: "SSE instruction set not enabled"
> 5:58.09 #error "SSE instruction set not enabled"
> 5:58.09 ^
> 5:58.09 In file included from /Users/multix/code/Arctic-Fox/obj-i386-apple-darwin9.8.0/dom/plugins/ipc/interpose/Unified_mm_ipc_interpose0.mm:2:
> it is inside clang, I suppose either a bad build of 3.7 or a missing flag? Do you have any suggestions/ideas???
> Since clang 3.4 and 3.9 do not have thi, I suppose it is a 3.7 error.
the header tests for __SSE__:
#error "SSE instruction set not enabled"
clang-3.7 doesn’t enable that define (at least on 10.5, didn’t check other builds), but clang-3.9+ does:
$ clang++-mp-3.7 -E -dM - < /dev/null | grep SSE
$ clang++-mp-3.9 -E -dM - < /dev/null | grep SSE
#define __SSE2_MATH__ 1
#define __SSE2__ 1
#define __SSE3__ 1
#define __SSE_MATH__ 1
#define __SSE__ 1
More information about the macports-users