diff --git a/SystemInformation.cxx b/SystemInformation.cxx
index 1d8723cbaa58f9f2969e2a0e4e8e1d2d67d7d8ca..512d5fbc7d71faa0b51e7fb55c9e6d27f3a11b95 100644
--- a/SystemInformation.cxx
+++ b/SystemInformation.cxx
@@ -200,13 +200,13 @@ typedef struct rlimit ResourceLimitType;
 # endif
 #endif
 
-#if defined(_MSC_VER) && (_MSC_VER >= 1300) && !defined(_WIN64)
+#if defined(_MSC_VER) && (_MSC_VER >= 1300) && !defined(_WIN64) && !defined(__clang__)
 #define USE_ASM_INSTRUCTIONS 1
 #else
 #define USE_ASM_INSTRUCTIONS 0
 #endif
 
-#if defined(_MSC_VER) && (_MSC_VER >= 1400)
+#if defined(_MSC_VER) && (_MSC_VER >= 1400) && !defined(__clang__)
 #include <intrin.h>
 #define USE_CPUID_INTRINSICS 1
 #else