| Index: src/core/SkNx.h
|
| diff --git a/src/core/SkNx.h b/src/core/SkNx.h
|
| index 1e32a2aa265e4ad83b46eced451e9bd83f8d8e26..89ffa4aa0f26d48694cc61e452593d353f89e843 100644
|
| --- a/src/core/SkNx.h
|
| +++ b/src/core/SkNx.h
|
| @@ -31,7 +31,7 @@ class SkNi {
|
| public:
|
| SkNi() {}
|
| SkNi(const SkNi<N/2, T>& lo, const SkNi<N/2, T>& hi) : fLo(lo), fHi(hi) {}
|
| - explicit SkNi(T val) : fLo(val), fHi(val) {}
|
| + SkNi(T val) : fLo(val), fHi(val) {}
|
| static SkNi Load(const T vals[N]) {
|
| return SkNi(SkNi<N/2,T>::Load(vals), SkNi<N/2,T>::Load(vals+N/2));
|
| }
|
| @@ -85,7 +85,7 @@ template <int N>
|
| class SkNf {
|
| public:
|
| SkNf() {}
|
| - explicit SkNf(float val) : fLo(val), fHi(val) {}
|
| + SkNf(float val) : fLo(val), fHi(val) {}
|
| static SkNf Load(const float vals[N]) {
|
| return SkNf(SkNf<N/2>::Load(vals), SkNf<N/2>::Load(vals+N/2));
|
| }
|
| @@ -167,7 +167,7 @@ template <typename T>
|
| class SkNi<1,T> {
|
| public:
|
| SkNi() {}
|
| - explicit SkNi(T val) : fVal(val) {}
|
| + SkNi(T val) : fVal(val) {}
|
| static SkNi Load(const T vals[1]) { return SkNi(vals[0]); }
|
|
|
| void store(T vals[1]) const { vals[0] = fVal; }
|
| @@ -205,7 +205,7 @@ template <>
|
| class SkNf<1> {
|
| public:
|
| SkNf() {}
|
| - explicit SkNf(float val) : fVal(val) {}
|
| + SkNf(float val) : fVal(val) {}
|
| static SkNf Load(const float vals[1]) { return SkNf(vals[0]); }
|
| static SkNf FromBytes(const uint8_t bytes[1]) { return SkNf((float)bytes[0]); }
|
|
|
| @@ -274,7 +274,9 @@ inline SkNx SkNx_dup(const SkNx& src) { return SkNx_shuffle<Ix>(src); }
|
|
|
| // Include platform specific specializations if available.
|
| #ifndef SKNX_NO_SIMD
|
| - #if SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_SSE2
|
| + #if SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_AVX
|
| + #include "../opts/SkNx_avx.h"
|
| + #elif SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_SSE2
|
| #include "../opts/SkNx_sse.h"
|
| #elif defined(SK_ARM_HAS_NEON)
|
| #include "../opts/SkNx_neon.h"
|
| @@ -285,9 +287,10 @@ inline SkNx SkNx_dup(const SkNx& src) { return SkNx_shuffle<Ix>(src); }
|
|
|
| typedef SkNf<2> Sk2f;
|
| typedef SkNf<2> Sk2s;
|
| -
|
| typedef SkNf<4> Sk4f;
|
| typedef SkNf<4> Sk4s;
|
| +typedef SkNf<8> Sk8f;
|
| +typedef SkNf<8> Sk8s;
|
|
|
| typedef SkNi<8, uint16_t> Sk8h;
|
| typedef SkNi<16, uint16_t> Sk16h;
|
|
|