diff options
author | commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> | 2014-02-25 18:14:08 +0000 |
---|---|---|
committer | commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> | 2014-02-25 18:14:08 +0000 |
commit | 88a954335acc3e4737e7e08c86233a6b246299f3 (patch) | |
tree | 8cbff0dd4b31e4551e97b5492f6288aea9066d10 /include/core/SkPreConfig.h | |
parent | b4c5f06c037c2151f873cb3d7aa9b33034e38cdd (diff) |
Enable the SSSE3 files to be built for Android when SSSE3 is not present.
Committed: http://code.google.com/p/skia/source/detail?r=13547
R=reed@google.com, mtklein@google.com
Author: djsollen@google.com
Review URL: https://codereview.chromium.org/169753004
git-svn-id: http://skia.googlecode.com/svn/trunk@13583 2bbb7eff-a529-9590-31e7-b0007b416f81
Diffstat (limited to 'include/core/SkPreConfig.h')
-rw-r--r-- | include/core/SkPreConfig.h | 32 |
1 files changed, 11 insertions, 21 deletions
diff --git a/include/core/SkPreConfig.h b/include/core/SkPreConfig.h index 1c2e24fba6..406a159d89 100644 --- a/include/core/SkPreConfig.h +++ b/include/core/SkPreConfig.h @@ -116,40 +116,30 @@ // Are we in GCC? #ifndef SK_CPU_SSE_LEVEL - #if defined(__SSE2__) - #define SK_CPU_SSE_LEVEL SK_CPU_SSE_LEVEL_SSE2 + // These checks must be done in descending order to ensure we set the highest + // available SSE level. + #if defined(__SSSE3__) + #define SK_CPU_SSE_LEVEL SK_CPU_SSE_LEVEL_SSSE3 #elif defined(__SSE3__) #define SK_CPU_SSE_LEVEL SK_CPU_SSE_LEVEL_SSE3 - #elif defined(__SSSE3__) - #define SK_CPU_SSE_LEVEL SK_CPU_SSE_LEVEL_SSSE3 + #elif defined(__SSE2__) + #define SK_CPU_SSE_LEVEL SK_CPU_SSE_LEVEL_SSE2 #endif #endif // Are we in VisualStudio? #ifndef SK_CPU_SSE_LEVEL + // These checks must be done in descending order to ensure we set the highest + // available SSE level. #if defined (_M_IX86_FP) - #if _M_IX86_FP == 1 - #define SK_CPU_SSE_LEVEL SK_CPU_SSE_LEVEL_SSE1 - #elif _M_IX86_FP >= 2 + #if _M_IX86_FP >= 2 #define SK_CPU_SSE_LEVEL SK_CPU_SSE_LEVEL_SSE2 + #elif _M_IX86_FP == 1 + #define SK_CPU_SSE_LEVEL SK_CPU_SSE_LEVEL_SSE1 #endif #endif #endif -// 64bit intel guarantees at least SSE2 -#if defined(__x86_64__) || defined(_WIN64) - #if !defined(SK_CPU_SSE_LEVEL) || (SK_CPU_SSE_LEVEL < SK_CPU_SSE_LEVEL_SSE2) - #undef SK_CPU_SSE_LEVEL - #define SK_CPU_SSE_LEVEL SK_CPU_SSE_LEVEL_SSE2 - #endif -#endif - -// Android x86 NDK ABI requires SSE3 support -#if defined(SK_BUILD_FOR_ANDROID) - #undef SK_CPU_SSE_LEVEL - #define SK_CPU_SSE_LEVEL SK_CPU_SSE_LEVEL_SSE3 -#endif - ////////////////////////////////////////////////////////////////////// // ARM defines |