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.

Reply via email to