Trilinos Compilation with GCC 4.8 using AVX and AVX2 Fails
Created by: nmhamster
Use of Trilinos in NALU with GCC 4.8 fails when using -mavx
, -mavx2
and -march=core-avx2
flags.
Error produced is:
...
/home/projects/x86-64-haswell/gnu/4.8.4/lib/gcc/x86_64-unknown-linux-gnu/4.8.4/include/mmintrin.h: In function ‘__m64 _mm_xor_si64(__m64, __m64)’:
/home/projects/x86-64-haswell/gnu/4.8.4/lib/gcc/x86_64-unknown-linux-gnu/4.8.4/include/mmintrin.h:761:41: error: cannot convert ‘__m64 {aka int}’ to ‘__vector(2) int’ for argument ‘1’ to ‘__vector(2) int __builtin_ia32_pxor(__vector(2) int, __vector(2) int)’
return __builtin_ia32_pxor (__m1, __m2);
^
/home/projects/x86-64-haswell/gnu/4.8.4/lib/gcc/x86_64-unknown-linux-gnu/4.8.4/include/mmintrin.h: In function ‘__m64 _mm_cmpeq_pi8(__m64, __m64)’:
/home/projects/x86-64-haswell/gnu/4.8.4/lib/gcc/x86_64-unknown-linux-gnu/4.8.4/include/mmintrin.h:775:68: error: cannot convert ‘__v8qi {aka char}’ to ‘__vector(8) char’ for argument ‘1’ to ‘__vector(8) char __builtin_ia32_pcmpeqb(__vector(8) char, __vector(8) char)’
return (__m64) __builtin_ia32_pcmpeqb ((__v8qi)__m1, (__v8qi)__m2);
^
/home/projects/x86-64-haswell/gnu/4.8.4/lib/gcc/x86_64-unknown-linux-gnu/4.8.4/include/mmintrin.h: In function ‘__m64 _mm_cmpgt_pi8(__m64, __m64)’:
/home/projects/x86-64-haswell/gnu/4.8.4/lib/gcc/x86_64-unknown-linux-gnu/4.8.4/include/mmintrin.h:787:68: error: cannot convert ‘__v8qi {aka char}’ to ‘__vector(8) char’ for argument ‘1’ to ‘__vector(8) char __builtin_ia32_pcmpgtb(__vector(8) char, __vector(8) char)’
return (__m64) __builtin_ia32_pcmpgtb ((__v8qi)__m1, (__v8qi)__m2);
^
/home/projects/x86-64-haswell/gnu/4.8.4/lib/gcc/x86_64-unknown-linux-gnu/4.8.4/include/mmintrin.h: In function ‘__m64 _mm_cmpeq_pi16(__m64, __m64)’:
/home/projects/x86-64-haswell/gnu/4.8.4/lib/gcc/x86_64-unknown-linux-gnu/4.8.4/include/mmintrin.h:801:68: error: cannot convert ‘__v4hi {aka short int}’ to ‘__vector(4) short int’ for argument ‘1’ to ‘__vector(4) short int __builtin_ia32_pcmpeqw(__vector(4) short int, __vector(4) short int)’
return (__m64) __builtin_ia32_pcmpeqw ((__v4hi)__m1, (__v4hi)__m2);
...