From ccfdb76fc416e31d27b5a87002c2703177d2c83d Mon Sep 17 00:00:00 2001 From: John Kirkham Date: Fri, 7 Jul 2017 19:42:26 -0400 Subject: [PATCH] Skip defining _mm_set_epi64x on VS 2015+ --- src/cl/include/private/Random123/features/sse.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/cl/include/private/Random123/features/sse.h b/src/cl/include/private/Random123/features/sse.h index 88efd65..c6a13c5 100644 --- a/src/cl/include/private/Random123/features/sse.h +++ b/src/cl/include/private/Random123/features/sse.h @@ -90,7 +90,7 @@ R123_STATIC_INLINE int haveAESNI(){ // R123_USE_feature tests for each of these in each of the // compilerfeatures.h files we just keep the complexity localized // to here... -#if (defined(__ICC) && __ICC<1210) || (defined(_MSC_VER) && !defined(_WIN64)) +#if (defined(__ICC) && __ICC<1210) || (defined(_MSC_VER) && !defined(_WIN64) && _MSC_VER<1900) /* Is there an intrinsic to assemble an __m128i from two 64-bit words? If not, use the 4x32-bit intrisic instead. N.B. It looks like Intel added _mm_set_epi64x to icc version 12.1 in Jan 2012.