diff options
author | Mike Klein <mtklein@chromium.org> | 2017-08-28 17:53:34 -0400 |
---|---|---|
committer | Skia Commit-Bot <skia-commit-bot@chromium.org> | 2017-08-29 18:27:51 +0000 |
commit | b561b764d894260b77d3c44f8fa182802897f2e1 (patch) | |
tree | 3d3e22e7f0c76bbb7775dba0e566aee28d3322a2 /src/jumper/SkJumper.h | |
parent | fe75930ce0b8d9451d29162942badfd568a1ec47 (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.h | 9 |
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 { |