aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/SkPMFloat.h
diff options
context:
space:
mode:
authorGravatar mtklein <mtklein@chromium.org>2015-03-20 08:32:35 -0700
committerGravatar Commit bot <commit-bot@chromium.org>2015-03-20 08:32:35 -0700
commite57b5cab261a243dcbefa74c91c896c28959bf09 (patch)
treefce6d132eda7a1697bc3950f67365c8d2803dd24 /src/core/SkPMFloat.h
parentb502ee3acea9bca87ab75de808b4a7eda67aadff (diff)
Specialize Sk2d for ARM64
The implementation is nearly identical to Sk2f, with these changes: - float32x2_t -> float64x2_t - vfoo -> vfooq - one extra Newton's method step in sqrt(). Also, generally fix NEON detection to be defined(SK_ARM_HAS_NEON). SK_ARM_HAS_NEON is not being set on ARM64 bots right now (nor does the compiler seem to set __ARM_NEON__), so this CL fixes everything up. BUG=skia: Review URL: https://codereview.chromium.org/1020963002
Diffstat (limited to 'src/core/SkPMFloat.h')
-rw-r--r--src/core/SkPMFloat.h6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/core/SkPMFloat.h b/src/core/SkPMFloat.h
index 04323ad1fc..699f85b2c4 100644
--- a/src/core/SkPMFloat.h
+++ b/src/core/SkPMFloat.h
@@ -8,7 +8,7 @@
#if SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_SSE2
#include <immintrin.h>
-#elif defined(__ARM_NEON__)
+#elif defined(SK_ARM_HAS_NEON)
#include <arm_neon.h>
#endif
@@ -66,7 +66,7 @@ private:
float fColor[4];
#if SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_SSE2
__m128 fColors;
-#elif defined(__ARM_NEON__)
+#elif defined(SK_ARM_HAS_NEON)
float32x4_t fColors;
#endif
};
@@ -76,7 +76,7 @@ private:
#include "../opts/SkPMFloat_SSSE3.h"
#elif SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_SSE2
#include "../opts/SkPMFloat_SSE2.h"
-#elif defined(__ARM_NEON__)
+#elif defined(SK_ARM_HAS_NEON)
#include "../opts/SkPMFloat_neon.h"
#else
#include "../opts/SkPMFloat_none.h"