[cfe-dev] Clang and SSE4 error: “SSE4A instruction set not enabled”

Kim soldoutseashell at gmail.com
Fri Jun 21 20:59:18 PDT 2013


I'm attempting to compile some code using VC11 built Clang but I get the 
result below. Preferably I would like to enable SSE4 (though I really 
just want my code to compile at all without errors) but none of the 
arguments I've tried have changed the error result. The code is nothing 
special, just an exported function and includes for map and vector. 
Thanks a lot in advance for any assistance.

|C:\ProgramFiles  (x86)\LLVM\vs11\bin\Debug>clang++  -march=corei7-mavx-mpclmul-msse4-std=c++11  -c-fms-compatibility-fms-extensions-v-o simple.o simple.cpp
clang version3.4  (trunk)
Target:  i686-pc-win32
Thread  model:  posix
  "C:/Program Files (x86)/LLVM/vs11/bin/Debug/clang++.exe"  -cc1-triple i686-pc-win32-emit-obj-mrelax-all-disable-free-main-file-name simple.cpp-mrelocation-modelstatic  -mdisable-fp-elim-fmath-errno-masm-verbose-mconstructor-aliases-target-cpu corei7-target-feature+avx-target-feature+pclmul-target-feature+sse4-v-coverage-file simple.o-resource-dir"C:/Program Files (x86)/LLVM/vs11/bin/Debug\\..\\lib\\clang\\3.4"  -internal-isystem"C:/Program Files (x86)/LLVM/vs11/bin/Debug/../lib/clang/3.4/include"  -internal-isystem"C:\\Program Files (x86)\\Microsoft Visual Studio 11.0\\VC\\include"  -internal-isystem"C:\\Program Files (x86)\\Windows Kits\\8.0\\\\include"  -std=c++11  -fdeprecated-macro-ferror-limit19  -fmessage-length150  -mstackrealign-fms-extensions-fms-compatibility-fmsc-version=1300  -fdelayed-template-parsing-fobjc-runtime=gcc-fobjc-default-synthesize-properties-fcxx-exceptions-fexceptions-fdiagnostics-show-option-fcolor-diagnostics-backend-option-vectorize-loops-o simple.o-x c++  simple.cpp
clang-cc1 version3.4  based upon LLVM3.4svn  default  target i686-pc-win32
#include  "..."  search starts here:
#include  <...>  search starts here:
  C:/Program  Files  (x86)/LLVM/vs11/bin/Debug/../lib/clang/3.4/include
  C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include
  C:\ProgramFiles  (x86)\WindowsKits\8.0\\include
End  of searchlist.
In  file included from simple.cpp:2:
In  file included from C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\vector:6:
In  file included from C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\xmemory:6:
In  file included from C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\xmemory0:942:
In  file included from C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:27:
C:/Program  Files  (x86)/LLVM/vs11/bin/Debug/../lib/clang/3.4/include\ammintrin.h:28:2:  error:  "SSE4A instruction set not enabled"
#error  "SSE4A instruction set not enabled"
  ^
In  file included from simple.cpp:2:
In  file included from C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\vector:6:
In  file included from C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\xmemory:6:
In  file included from C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\xmemory0:942:
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:527:20:  error:  expected unqualified-id
__MACHINEX86(__m64 _m_pshufw(__m64,  int))
                    ^
C:/Program  Files  (x86)/LLVM/vs11/bin/Debug/../lib/clang/3.4/include\xmmintrin.h:986:19:  note:  expanded from macro'_m_pshufw'
#define  _m_pshufw _mm_shuffle_pi16
                   ^
C:/Program  Files  (x86)/LLVM/vs11/bin/Debug/../lib/clang/3.4/include\xmmintrin.h:749:32:  note:  expanded from macro'_mm_shuffle_pi16'
#define  _mm_shuffle_pi16(a,  n)  __extension__({  \
                                ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:68:29:  note:  expanded from macro'__MACHINE'
#define  __MACHINE(X)         X;
                             ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:582:26:  error:  expected unqualified-id
__MACHINEX86_X64(__m128i _mm_alignr_epi8(__m128i,  __m128i,  int))
                          ^
C:/Program  Files  (x86)/LLVM/vs11/bin/Debug/../lib/clang/3.4/include\tmmintrin.h:69:34:  note:  expanded from macro'_mm_alignr_epi8'
#define  _mm_alignr_epi8(a,  b,  n)  __extension__({  \
                                  ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:68:29:  note:  expanded from macro'__MACHINE'
#define  __MACHINE(X)         X;
                             ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:583:24:  error:  expected unqualified-id
__MACHINEX86_X64(__m64 _mm_alignr_pi8(__m64,  __m64,  int))
                        ^
C:/Program  Files  (x86)/LLVM/vs11/bin/Debug/../lib/clang/3.4/include\tmmintrin.h:74:33:  note:  expanded from macro'_mm_alignr_pi8'
#define  _mm_alignr_pi8(a,  b,  n)  __extension__({  \
                                 ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:68:29:  note:  expanded from macro'__MACHINE'
#define  __MACHINE(X)         X;
                             ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:592:26:  error:  expected unqualified-id
__MACHINEX86_X64(__m128i _mm_blend_epi16(__m128i,  __m128i,  int))
                          ^
C:/Program  Files  (x86)/LLVM/vs11/bin/Debug/../lib/clang/3.4/include\smmintrin.h:110:36:  note:  expanded from macro'_mm_blend_epi16'
#define  _mm_blend_epi16(V1,  V2,  M)  __extension__({  \
                                    ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:68:29:  note:  expanded from macro'__MACHINE'
#define  __MACHINE(X)         X;
                             ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:593:26:  error:  expected unqualified-id
__MACHINEX86_X64(__m128d _mm_blend_pd(__m128d,  __m128d,  int))
                          ^
C:/Program  Files  (x86)/LLVM/vs11/bin/Debug/../lib/clang/3.4/include\smmintrin.h:79:33:  note:  expanded from macro'_mm_blend_pd'
#define  _mm_blend_pd(V1,  V2,  M)  __extension__({  \
                                 ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:68:29:  note:  expanded from macro'__MACHINE'
#define  __MACHINE(X)         X;
                             ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:594:25:  error:  expected unqualified-id
__MACHINEX86_X64(__m128 _mm_blend_ps(__m128,  __m128,  int))
                         ^
C:/Program  Files  (x86)/LLVM/vs11/bin/Debug/../lib/clang/3.4/include\smmintrin.h:84:33:  note:  expanded from macro'_mm_blend_ps'
#define  _mm_blend_ps(V1,  V2,  M)  __extension__({  \
                                 ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:68:29:  note:  expanded from macro'__MACHINE'
#define  __MACHINE(X)         X;
                             ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:607:22:  error:  redefinition of'__builtin_ia32_pcmpestria128'  as different
       kind of symbol
__MACHINEX86_X64(int  _mm_cmpestra(__m128i,  int,  __m128i,  int,  int))
                      ^
C:/Program  Files  (x86)/LLVM/vs11/bin/Debug/../lib/clang/3.4/include\smmintrin.h:416:6:  note:  expanded from macro'_mm_cmpestra'
      __builtin_ia32_pcmpestria128((A),  (LA),  (B),  (LB),  (M))
      ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:68:29:  note:  expanded from macro'__MACHINE'
#define  __MACHINE(X)         X;
                             ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:607:22:  note:  previous definition is here
C:/Program  Files  (x86)/LLVM/vs11/bin/Debug/../lib/clang/3.4/include\smmintrin.h:416:6:  note:  expanded from macro'_mm_cmpestra'
      __builtin_ia32_pcmpestria128((A),  (LA),  (B),  (LB),  (M))
      ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:68:29:  note:  expanded from macro'__MACHINE'
#define  __MACHINE(X)         X;
                             ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:607:22:  error:  expected expression
__MACHINEX86_X64(int  _mm_cmpestra(__m128i,  int,  __m128i,  int,  int))
                      ^
C:/Program  Files  (x86)/LLVM/vs11/bin/Debug/../lib/clang/3.4/include\smmintrin.h:416:38:  note:  expanded from macro'_mm_cmpestra'
      __builtin_ia32_pcmpestria128((A),  (LA),  (B),  (LB),  (M))
                                      ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:68:29:  note:  expanded from macro'__MACHINE'
#define  __MACHINE(X)         X;
                             ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:608:22:  error:  redefinition of'__builtin_ia32_pcmpestric128'  as different
       kind of symbol
__MACHINEX86_X64(int  _mm_cmpestrc(__m128i,  int,  __m128i,  int,  int))
                      ^
C:/Program  Files  (x86)/LLVM/vs11/bin/Debug/../lib/clang/3.4/include\smmintrin.h:418:6:  note:  expanded from macro'_mm_cmpestrc'
      __builtin_ia32_pcmpestric128((A),  (LA),  (B),  (LB),  (M))
      ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:68:29:  note:  expanded from macro'__MACHINE'
#define  __MACHINE(X)         X;
                             ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:608:22:  note:  previous definition is here
C:/Program  Files  (x86)/LLVM/vs11/bin/Debug/../lib/clang/3.4/include\smmintrin.h:418:6:  note:  expanded from macro'_mm_cmpestrc'
      __builtin_ia32_pcmpestric128((A),  (LA),  (B),  (LB),  (M))
      ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:68:29:  note:  expanded from macro'__MACHINE'
#define  __MACHINE(X)         X;
                             ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:608:22:  error:  expected expression
__MACHINEX86_X64(int  _mm_cmpestrc(__m128i,  int,  __m128i,  int,  int))
                      ^
C:/Program  Files  (x86)/LLVM/vs11/bin/Debug/../lib/clang/3.4/include\smmintrin.h:418:38:  note:  expanded from macro'_mm_cmpestrc'
      __builtin_ia32_pcmpestric128((A),  (LA),  (B),  (LB),  (M))
                                      ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:68:29:  note:  expanded from macro'__MACHINE'
#define  __MACHINE(X)         X;
                             ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:609:22:  error:  redefinition of'__builtin_ia32_pcmpestri128'  as different kind
       of symbol
__MACHINEX86_X64(int  _mm_cmpestri(__m128i,  int,  __m128i,  int,  int))
                      ^
C:/Program  Files  (x86)/LLVM/vs11/bin/Debug/../lib/clang/3.4/include\smmintrin.h:401:6:  note:  expanded from macro'_mm_cmpestri'
      __builtin_ia32_pcmpestri128((A),  (LA),  (B),  (LB),  (M))
      ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:68:29:  note:  expanded from macro'__MACHINE'
#define  __MACHINE(X)         X;
                             ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:609:22:  note:  previous definition is here
C:/Program  Files  (x86)/LLVM/vs11/bin/Debug/../lib/clang/3.4/include\smmintrin.h:401:6:  note:  expanded from macro'_mm_cmpestri'
      __builtin_ia32_pcmpestri128((A),  (LA),  (B),  (LB),  (M))
      ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:68:29:  note:  expanded from macro'__MACHINE'
#define  __MACHINE(X)         X;
                             ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:609:22:  error:  expected expression
__MACHINEX86_X64(int  _mm_cmpestri(__m128i,  int,  __m128i,  int,  int))
                      ^
C:/Program  Files  (x86)/LLVM/vs11/bin/Debug/../lib/clang/3.4/include\smmintrin.h:401:37:  note:  expanded from macro'_mm_cmpestri'
      __builtin_ia32_pcmpestri128((A),  (LA),  (B),  (LB),  (M))
                                     ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:68:29:  note:  expanded from macro'__MACHINE'
#define  __MACHINE(X)         X;
                             ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:610:26:  error:  redefinition of'__builtin_ia32_pcmpestrm128'  as different kind
       of symbol
__MACHINEX86_X64(__m128i _mm_cmpestrm(__m128i,  int,  __m128i,  int,  int))
                          ^
C:/Program  Files  (x86)/LLVM/vs11/bin/Debug/../lib/clang/3.4/include\smmintrin.h:399:6:  note:  expanded from macro'_mm_cmpestrm'
      __builtin_ia32_pcmpestrm128((A),  (LA),  (B),  (LB),  (M))
      ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:68:29:  note:  expanded from macro'__MACHINE'
#define  __MACHINE(X)         X;
                             ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:610:26:  note:  previous definition is here
C:/Program  Files  (x86)/LLVM/vs11/bin/Debug/../lib/clang/3.4/include\smmintrin.h:399:6:  note:  expanded from macro'_mm_cmpestrm'
      __builtin_ia32_pcmpestrm128((A),  (LA),  (B),  (LB),  (M))
      ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:68:29:  note:  expanded from macro'__MACHINE'
#define  __MACHINE(X)         X;
                             ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:610:26:  error:  expected expression
__MACHINEX86_X64(__m128i _mm_cmpestrm(__m128i,  int,  __m128i,  int,  int))
                          ^
C:/Program  Files  (x86)/LLVM/vs11/bin/Debug/../lib/clang/3.4/include\smmintrin.h:399:37:  note:  expanded from macro'_mm_cmpestrm'
      __builtin_ia32_pcmpestrm128((A),  (LA),  (B),  (LB),  (M))
                                     ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:68:29:  note:  expanded from macro'__MACHINE'
#define  __MACHINE(X)         X;
                             ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:611:22:  error:  redefinition of'__builtin_ia32_pcmpestrio128'  as different
       kind of symbol
__MACHINEX86_X64(int  _mm_cmpestro(__m128i,  int,  __m128i,  int,  int))
                      ^
C:/Program  Files  (x86)/LLVM/vs11/bin/Debug/../lib/clang/3.4/include\smmintrin.h:420:6:  note:  expanded from macro'_mm_cmpestro'
      __builtin_ia32_pcmpestrio128((A),  (LA),  (B),  (LB),  (M))
      ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:68:29:  note:  expanded from macro'__MACHINE'
#define  __MACHINE(X)         X;
                             ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:611:22:  note:  previous definition is here
C:/Program  Files  (x86)/LLVM/vs11/bin/Debug/../lib/clang/3.4/include\smmintrin.h:420:6:  note:  expanded from macro'_mm_cmpestro'
      __builtin_ia32_pcmpestrio128((A),  (LA),  (B),  (LB),  (M))
      ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:68:29:  note:  expanded from macro'__MACHINE'
#define  __MACHINE(X)         X;
                             ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:611:22:  error:  expected expression
__MACHINEX86_X64(int  _mm_cmpestro(__m128i,  int,  __m128i,  int,  int))
                      ^
C:/Program  Files  (x86)/LLVM/vs11/bin/Debug/../lib/clang/3.4/include\smmintrin.h:420:38:  note:  expanded from macro'_mm_cmpestro'
      __builtin_ia32_pcmpestrio128((A),  (LA),  (B),  (LB),  (M))
                                      ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:68:29:  note:  expanded from macro'__MACHINE'
#define  __MACHINE(X)         X;
                             ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:612:22:  error:  redefinition of'__builtin_ia32_pcmpestris128'  as different
       kind of symbol
__MACHINEX86_X64(int  _mm_cmpestrs(__m128i,  int,  __m128i,  int,  int))
                      ^
C:/Program  Files  (x86)/LLVM/vs11/bin/Debug/../lib/clang/3.4/include\smmintrin.h:422:6:  note:  expanded from macro'_mm_cmpestrs'
      __builtin_ia32_pcmpestris128((A),  (LA),  (B),  (LB),  (M))
      ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:68:29:  note:  expanded from macro'__MACHINE'
#define  __MACHINE(X)         X;
                             ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:612:22:  note:  previous definition is here
C:/Program  Files  (x86)/LLVM/vs11/bin/Debug/../lib/clang/3.4/include\smmintrin.h:422:6:  note:  expanded from macro'_mm_cmpestrs'
      __builtin_ia32_pcmpestris128((A),  (LA),  (B),  (LB),  (M))
      ^
C:\ProgramFiles  (x86)\MicrosoftVisual  Studio  11.0\VC\include\intrin.h:68:29:  note:  expanded from macro'__MACHINE'
#define  __MACHINE(X)         X;
                             ^|


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20130622/9a2e39af/attachment.html>


More information about the cfe-dev mailing list