Add Sk4f::ToBytes(uint8_t[16], Sk4f, Sk4f, Sk4f, Sk4f)
authormtklein <mtklein@chromium.org>
Tue, 1 Dec 2015 15:10:21 +0000 (07:10 -0800)
committerCommit bot <commit-bot@chromium.org>
Tue, 1 Dec 2015 15:10:21 +0000 (07:10 -0800)
commit9db43ac4ee1a83a4f7b332fe6c00f592b6237349
treece3b9eedc76bf142d31325d041295097774fee5c
parenteeebdb538d476c1bfc8b63a946094ca1b505ecd1
Add Sk4f::ToBytes(uint8_t[16], Sk4f, Sk4f, Sk4f, Sk4f)

This is a big speedup for float -> byte.  E.g. gradient_linear_clamp_3color:
 x86-64 147µs -> 103µs  (Broadwell MBP)
 arm64 2.03ms -> 648µs  (Galaxy S6)
 armv7 1.12ms -> 489µs  (Galaxy S6, same device!)

BUG=skia:
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot;client.skia.android:Test-Android-GCC-Nexus9-CPU-Denver-Arm64-Debug-Trybot

Review URL: https://codereview.chromium.org/1483953002
bench/Sk4fBench.cpp
src/core/SkNx.h
src/effects/gradients/SkLinearGradient.cpp
src/opts/SkNx_neon.h
src/opts/SkNx_sse.h