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>
This commit is contained in:
Mike Klein 2016-10-15 01:18:45 -04:00
parent 511ea17b96
commit 5ec5590bf7

View File

@ -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); }