detect SSE level in visual studio
authorreed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81>
Mon, 2 Jul 2012 19:00:27 +0000 (19:00 +0000)
committerreed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81>
Mon, 2 Jul 2012 19:00:27 +0000 (19:00 +0000)
git-svn-id: http://skia.googlecode.com/svn/trunk@4424 2bbb7eff-a529-9590-31e7-b0007b416f81

include/core/SkPreConfig.h

index 812e446..f4446c1 100644 (file)
 //////////////////////////////////////////////////////////////////////
 
 /**
+ *  SK_CPU_SSE_LEVEL
+ *
  *  If defined, SK_CPU_SSE_LEVEL should be set to the highest supported level.
  *  On non-intel CPU this should be undefined.
  */
+
 #define SK_CPU_LEVEL_SSE2_VALUE     20
 #define SK_CPU_LEVEL_SSE3_VALUE     30
 #define SK_CPU_LEVEL_SSSE3_VALUE    31
 
+// Are we in GCC?
 #ifndef SK_CPU_SSE_LEVEL
     #if defined(__SSSE3__)
         #define SK_CPU_SSE_LEVEL    SK_CPU_LEVEL_SSSE3_VALUE
     #endif
 #endif
 
+// Are we in VisualStudio?
+#ifndef SK_CPU_SSE_LEVEL
+    #if _M_IX86_FP == 2
+        #define SK_CPU_SSE_LEVEL    SK_CPU_LEVEL_SSE2_VALUE
+    #endif
+#endif
+
 //////////////////////////////////////////////////////////////////////
 
 #if (defined(__arm__) && !defined(__thumb__)) || defined(SK_BUILD_FOR_WINCE) || (defined(SK_BUILD_FOR_SYMBIAN) && !defined(__MARM_THUMB__))