aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorGravatar Mike Klein <mtklein@chromium.org>2016-10-15 01:18:45 -0400
committerGravatar Mike Klein <mtklein@chromium.org>2016-10-15 05:39:27 +0000
commit5ec5590bf796ef9d966f7348b3ce81a6e3fe3848 (patch)
treee0b61a5359d9a0b906ec3535db04e207d120a63f /src
parent511ea17b967914ae8342d7861c6695ec8d492bcc (diff)
Unbreak -Fast bot.
CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot,Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-Fast-Trybot GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3423 Change-Id: I1875c86b785da4483038c10715af7827b7d71f0b Reviewed-on: https://skia-review.googlesource.com/3423 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
Diffstat (limited to 'src')
-rw-r--r--src/opts/SkNx_sse.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/opts/SkNx_sse.h b/src/opts/SkNx_sse.h
index 25fb0b7a8d..b79fe9a884 100644
--- a/src/opts/SkNx_sse.h
+++ b/src/opts/SkNx_sse.h
@@ -16,6 +16,9 @@
#define SKNX_IS_FAST
template <> struct SkNx_abi<4,float> { __m128 vec; };
+#if SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_AVX2
+ template <> struct SkNx_abi<8,float> { __m256 vec; };
+#endif
namespace {
@@ -558,6 +561,9 @@ public:
I SkNx(float a, float b, float c, float d,
float e, float f, float g, float h) : fVec(_mm256_setr_ps(a,b,c,d,e,f,g,h)) {}
+ SkNx(const SkNx_abi<8,float>& a) : fVec(a.vec) {}
+ operator SkNx_abi<8,float>() const { return { fVec }; }
+
I static SkNx Load(const void* ptr) { return _mm256_loadu_ps((const float*)ptr); }
I void store(void* ptr) const { _mm256_storeu_ps((float*)ptr, fVec); }