| Index: src/core/SkOpts.cpp
|
| diff --git a/src/core/SkOpts.cpp b/src/core/SkOpts.cpp
|
| index 95781a39778fcb065cd82b2cc77b6cd05d5f5d4d..879eefcde1343e00d05f2b47149b41c27c6ee93b 100644
|
| --- a/src/core/SkOpts.cpp
|
| +++ b/src/core/SkOpts.cpp
|
| @@ -11,13 +11,27 @@
|
| #include "SkOpts.h"
|
|
|
| #if defined(SK_ARM_HAS_NEON)
|
| - #define SK_OPTS_NS neon
|
| + #if defined(__ARM_FEATURE_CRC32)
|
| + #define SK_OPTS_NS neon_and_crc32
|
| + #else
|
| + #define SK_OPTS_NS neon
|
| + #endif
|
| +#elif SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_AVX2
|
| + #define SK_OPTS_NS avx2
|
| +#elif SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_AVX
|
| + #define SK_OPTS_NS avx
|
| +#elif SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_SSE42
|
| + #define SK_OPTS_NS sse42
|
| +#elif SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_SSE41
|
| + #define SK_OPTS_NS sse41
|
| #elif SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_SSSE3
|
| #define SK_OPTS_NS ssse3
|
| #elif SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_SSE3
|
| #define SK_OPTS_NS sse3
|
| #elif SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_SSE2
|
| #define SK_OPTS_NS sse2
|
| +#elif SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_SSE1
|
| + #define SK_OPTS_NS sse
|
| #else
|
| #define SK_OPTS_NS portable
|
| #endif
|
|
|