aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/opts/SkOpts_hsw.cpp
diff options
context:
space:
mode:
authorGravatar Mike Klein <mtklein@chromium.org>2017-01-26 16:23:26 -0500
committerGravatar Mike Klein <mtklein@chromium.org>2017-01-26 21:47:31 +0000
commit88235bbbbe51cc58af8c89f74ef153b433934dd6 (patch)
tree43c61135e2bce5a2d8f9c0f65e26ea48db37b9f3 /src/opts/SkOpts_hsw.cpp
parent0bda6235fbef3759f3682358155ea865f01b6f9d (diff)
Graceful degredation for SkOpts_hsw.
__AVX2__ will not be defined if you omit -mavx2. Android does this intentionally for x86 builds. (No mobile CPU supports AVX2 AFAIK.) This should fix the Android roll. Change-Id: Ib94c862641abc11fbb46863afc53bcc049f362ad Reviewed-on: https://skia-review.googlesource.com/7633 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Mike Klein <mtklein@chromium.org> Reviewed-by: Matt Sarett <msarett@google.com>
Diffstat (limited to 'src/opts/SkOpts_hsw.cpp')
-rw-r--r--src/opts/SkOpts_hsw.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/opts/SkOpts_hsw.cpp b/src/opts/SkOpts_hsw.cpp
index 843dcb59c6..f14d2a5aea 100644
--- a/src/opts/SkOpts_hsw.cpp
+++ b/src/opts/SkOpts_hsw.cpp
@@ -12,6 +12,8 @@
#include <immintrin.h> // ODR safe
#include <stdint.h> // ODR safe
+#if defined(__AVX2__)
+
namespace hsw {
void convolve_vertically(const int16_t* filter, int filterLen,
@@ -94,3 +96,9 @@ namespace SkOpts {
convolve_vertically = hsw::convolve_vertically;
}
}
+
+#else // defined(__AVX2__) is not true...
+
+namespace SkOpts { void Init_hsw() {} }
+
+#endif