Revert of Enable the SSSE3 compile time check on all platforms. (https://codereview...
authorhalcanary <halcanary@google.com>
Mon, 14 Jul 2014 15:32:18 +0000 (08:32 -0700)
committerCommit bot <commit-bot@chromium.org>
Mon, 14 Jul 2014 15:32:18 +0000 (08:32 -0700)
Reason for revert:
windows fail

Original issue's description:
> Enable the SSSE3 compile time check on all platforms.
>
> BUG=skia:2746
>
> Committed: https://skia.googlesource.com/skia/+/ee349531446ae2a8336b0903e05d0b2150d2131f

R=mtklein@google.com, djsollen@google.com
TBR=djsollen@google.com, mtklein@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2746

Author: halcanary@google.com

Review URL: https://codereview.chromium.org/390063002

gyp/common_conditions.gypi
src/opts/SkBitmapProcState_opts_SSSE3.cpp
src/opts/SkBlurImage_opts_SSE4.cpp

index 7228fad..d03dfb0 100644 (file)
           '-fuse-ld=gold',
         ],
         'conditions': [
-          [ 'skia_arch_type == "x86"', {
-            'cflags': [
-              '-mssse3',
-            ],
-          }],
           [ 'skia_android_framework', {
             'libraries!': [
               '-lstdc++',
index 165f1f5..5b97215 100644 (file)
@@ -9,11 +9,12 @@
 #include "SkPaint.h"
 #include "SkUtils.h"
 
-/* With the exception of the compilers that don't support it, we always build the
- * SSSE3 functions and enable the caller to determine SSSE3 support.  However for
- * compilers that do not support SSSE3 we provide a stub implementation.
+/* With the exception of the Android framework we always build the SSSE3 functions
+ * and enable the caller to determine SSSE3 support.  However for the Android framework
+ * if the device does not support SSSE3 then the compiler will not supply the required
+ * -mssse3 option needed to build this file, so instead we provide a stub implementation.
  */
-#if SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_SSSE3
+#if !defined(SK_BUILD_FOR_ANDROID_FRAMEWORK) || SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_SSSE3
 
 #include <tmmintrin.h>  // SSSE3
 
@@ -731,7 +732,7 @@ void S32_alpha_D32_filter_DXDY_SSSE3(const SkBitmapProcState& s,
     S32_generic_D32_filter_DXDY_SSSE3<true>(s, xy, count, colors);
 }
 
-#else // SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_SSSE3
+#else // !defined(SK_BUILD_FOR_ANDROID_FRAMEWORK) || SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_SSSE3
 
 void S32_opaque_D32_filter_DX_SSSE3(const SkBitmapProcState& s,
                                     const uint32_t* xy,
index 81748af..1b99038 100644 (file)
 #include "SkColorPriv.h"
 #include "SkRect.h"
 
-/* With the exception of the compilers that don't support it, we always build the
- * SSE4 functions and enable the caller to determine SSE4 support.  However for
- * compilers that do not support SSE4x we provide a stub implementation.
+/* With the exception of the Android framework we always build the SSE4 functions
+ * and enable the caller to determine SSE4 support.  However, for the Android framework,
+ * if the device does not support SSE4x then the compiler will not supply the required
+ * -msse4* option needed to build this file, so instead we provide a stub implementation.
  */
-#if SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_SSE41
+#if !defined(SK_BUILD_FOR_ANDROID_FRAMEWORK) || SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_SSE41
 
 #include <smmintrin.h>
 
@@ -109,7 +110,7 @@ bool SkBoxBlurGetPlatformProcs_SSE4(SkBoxBlurProc* boxBlurX,
     return true;
 }
 
-#else // SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_SSE41
+#else // !defined(SK_BUILD_FOR_ANDROID_FRAMEWORK) || SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_SSE41
 
 bool SkBoxBlurGetPlatformProcs_SSE4(SkBoxBlurProc* boxBlurX,
                                     SkBoxBlurProc* boxBlurY,