Rearrange prefetch code
[stockfish] / src / misc.cpp
index 1e1b220cb533da6cbee0319dcf6f56c66c327c3e..608d772501fc54c70967d16e55ed80ba9cccb573 100644 (file)
@@ -227,21 +227,17 @@ void prefetch(char*) {}
 
 #else
 
-#  if defined(__INTEL_COMPILER) || defined(__ICL) || defined(_MSC_VER)
-#   include <xmmintrin.h>
-#  endif
-
 void prefetch(char* addr) {
 
-#  if defined(__INTEL_COMPILER) || defined(__ICL)
+#  if defined(__INTEL_COMPILER)
    // This hack prevents prefetches to be optimized away by
    // Intel compiler. Both MSVC and gcc seems not affected.
    __asm__ ("");
 #  endif
 
-#  if defined(__INTEL_COMPILER) || defined(__ICL) || defined(_MSC_VER)
-  _mm_prefetch(addr, _MM_HINT_T2);
-  _mm_prefetch(addr+64, _MM_HINT_T2); // 64 bytes ahead
+#  if defined(__INTEL_COMPILER) || defined(_MSC_VER)
+  _mm_prefetch(addr, _MM_HINT_T0);
+  _mm_prefetch(addr+64, _MM_HINT_T0); // 64 bytes ahead
 #  else
   __builtin_prefetch(addr);
   __builtin_prefetch(addr+64);