aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/jumper/SkJumper.h
diff options
context:
space:
mode:
authorGravatar Mike Klein <mtklein@chromium.org>2017-08-28 17:53:34 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2017-08-29 18:27:51 +0000
commitb561b764d894260b77d3c44f8fa182802897f2e1 (patch)
tree3d3e22e7f0c76bbb7775dba0e566aee28d3322a2 /src/jumper/SkJumper.h
parentfe75930ce0b8d9451d29162942badfd568a1ec47 (diff)
use NEON 8-bit stages on ARMv7 too
We don't really use anything very ARMv8 specific in the 8-bit NEON stages, so we can just naturally extend what we're doing to ARMv7 too. Note that unlike the float stages, we're not requiring VFPv4 either, just NEON. VFPv4 is for FMA and F16<->F32 conversion, both of which are unnecessary for the integer pipeline. GMs and perf improvement are similar to the previous ARMv8 change. Change-Id: Id618801ea1920564c1deee144a640a4133c4505f Reviewed-on: https://skia-review.googlesource.com/39840 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Mike Klein <mtklein@chromium.org> Reviewed-by: Herb Derby <herb@google.com>
Diffstat (limited to 'src/jumper/SkJumper.h')
-rw-r--r--src/jumper/SkJumper.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/jumper/SkJumper.h b/src/jumper/SkJumper.h
index 20b8d32aba..4bb851f939 100644
--- a/src/jumper/SkJumper.h
+++ b/src/jumper/SkJumper.h
@@ -50,6 +50,15 @@
#include <stdint.h>
#endif
+// When compiled with Clang on ARM, we'll have 8-bit NEON stages.
+#if defined(__clang__)
+ #if defined(__aarch64__)
+ #define JUMPER_HAS_NEON_8BIT
+ #elif defined(__arm__) && defined(__ARM_NEON__)
+ #define JUMPER_HAS_NEON_8BIT
+ #endif
+#endif
+
static const int SkJumper_kMaxStride = 8;
struct SkJumper_constants {