From 9c6878be376f11c823b4f6a126b2ebdb29bf65cb Mon Sep 17 00:00:00 2001 From: halcanary Date: Mon, 14 Jul 2014 08:32:18 -0700 Subject: [PATCH] Revert of Enable the SSSE3 compile time check on all platforms. (https://codereview.chromium.org/391693004/) 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 | 5 ----- src/opts/SkBitmapProcState_opts_SSSE3.cpp | 11 ++++++----- src/opts/SkBlurImage_opts_SSE4.cpp | 11 ++++++----- 3 files changed, 12 insertions(+), 15 deletions(-) diff --git a/gyp/common_conditions.gypi b/gyp/common_conditions.gypi index 7228fad7f0..d03dfb00a6 100644 --- a/gyp/common_conditions.gypi +++ b/gyp/common_conditions.gypi @@ -654,11 +654,6 @@ '-fuse-ld=gold', ], 'conditions': [ - [ 'skia_arch_type == "x86"', { - 'cflags': [ - '-mssse3', - ], - }], [ 'skia_android_framework', { 'libraries!': [ '-lstdc++', diff --git a/src/opts/SkBitmapProcState_opts_SSSE3.cpp b/src/opts/SkBitmapProcState_opts_SSSE3.cpp index 165f1f5ce0..5b97215cc0 100644 --- a/src/opts/SkBitmapProcState_opts_SSSE3.cpp +++ b/src/opts/SkBitmapProcState_opts_SSSE3.cpp @@ -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 // SSSE3 @@ -731,7 +732,7 @@ void S32_alpha_D32_filter_DXDY_SSSE3(const SkBitmapProcState& s, S32_generic_D32_filter_DXDY_SSSE3(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, diff --git a/src/opts/SkBlurImage_opts_SSE4.cpp b/src/opts/SkBlurImage_opts_SSE4.cpp index 81748af7b2..1b990387c2 100644 --- a/src/opts/SkBlurImage_opts_SSE4.cpp +++ b/src/opts/SkBlurImage_opts_SSE4.cpp @@ -10,11 +10,12 @@ #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 @@ -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,