http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53192
Bug #: 53192 Summary: Incorrect arguments to AVX2's gather intrinsics Classification: Unclassified Product: gcc Version: 4.8.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target AssignedTo: unassig...@gcc.gnu.org ReportedBy: kirill.yuk...@intel.com Hello, Seems Intel's latest Spec contains a bug, which was reproduced in avx2intrin.h _mm_i32gather_epi64 (long long int const *base, __m128i index, const int scale) This has led to an incompatibility between Intel and Gnu compilers. The Intel version of immintrin.h specifies the type as __int64 const *. The type __int64 is a non-standard MS invention, which apparently is compatible with the standard type int64_t (inttypes.h). The GCC version of avx2intrin.h specifies the same parameter as long long int const *. Unfortunately, these two types are incompatible under 64-bit Linux.