From 0cf795fd1135babe0ee0b3585f3ad49a02fe1387 Mon Sep 17 00:00:00 2001 From: mtklein Date: Wed, 17 Feb 2016 07:23:36 -0800 Subject: fast sk4f <-> sk4i SSE methods BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1707673002 CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot Review URL: https://codereview.chromium.org/1707673002 --- src/opts/SkNx_sse.h | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'src/opts/SkNx_sse.h') diff --git a/src/opts/SkNx_sse.h b/src/opts/SkNx_sse.h index 7d00ddf9ba..be521a1a31 100644 --- a/src/opts/SkNx_sse.h +++ b/src/opts/SkNx_sse.h @@ -294,6 +294,13 @@ public: __m128i fVec; }; +template<> /*static*/ inline Sk4f SkNx_cast(const Sk4i& src) { + return _mm_cvtepi32_ps(src.fVec); +} + +template <> /*static*/ inline Sk4i SkNx_cast(const Sk4f& src) { + return _mm_cvttps_epi32(src.fVec); +} template<> /*static*/ inline Sk4h SkNx_cast(const Sk4f& src) { auto _32 = _mm_cvttps_epi32(src.fVec); -- cgit v1.2.3