Revert of 565 support for SIMD xfermodes (patchset #4 id:60001 of https://codereview...
authormtklein <mtklein@google.com>
Wed, 22 Jul 2015 01:34:42 +0000 (18:34 -0700)
committerCommit bot <commit-bot@chromium.org>
Wed, 22 Jul 2015 01:34:43 +0000 (18:34 -0700)
commit78f55fc4bf4c1a8f7cb6395e9a30e16e5e4622a8
tree87ba38517e448556b6fab94809c3bcace6f56b41
parent860dcaa2ddfdadc050af4f943a84a9d499315066
Revert of 565 support for SIMD xfermodes (patchset #4 id:60001 of https://codereview.chromium.org/1245673002/)

Reason for revert:
NEON 565 gold images have gone ugly.  This is what I get for writing and testing SSE and just writing NEON.

E.g. colortype_xfermodes, dstreadshuffle, bigbitmaprect, pictures, textbloblooper, aaxfermodes (only Plus)

Original issue's description:
> 565 support for SIMD xfermodes
>
> This uses the most basic approach possible:
>   - to load an Sk4px from 565, convert to SkPMColors on the stack serially then load those SkPMColors.
>   - to store an Sk4px to 565, store to SkPMColors on the stack then convert to 565 serially.
>
> Clearly, we can optimize these loads and stores.  That's a TODO.
>
> The code using SkPMFloat is the same idea but a little more long-term viable, as we're only operating on one pixel at a time anyway.  We could probably write 565 <-> SkPMFloat methods, but I'd rather not until it's really compelling.
>
> The speedups are varied but similar across SSE and NEON: a few uninteresting, many 50% faster, some 2x faster, and SoftLight ~4x faster.
>
> This will cause minor GM diffs, but I don't think any layout test changes.
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/942930dcaa51f66d82cdaf46ae62efebd16c8cd0
>
> Committed: https://skia.googlesource.com/skia/+/860dcaa2ddfdadc050af4f943a84a9d499315066

TBR=msarett@google.com,mtklein@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/1248893004
src/core/Sk4px.h
src/core/Sk4pxXfermode.h
src/opts/Sk4px_NEON.h
src/opts/Sk4px_SSE2.h
src/opts/Sk4px_none.h