Revert of 565 support for SIMD xfermodes (patchset #3 id:40001 of https://codereview...
authormtklein <mtklein@google.com>
Tue, 21 Jul 2015 12:02:40 +0000 (05:02 -0700)
committerCommit bot <commit-bot@chromium.org>
Tue, 21 Jul 2015 12:02:40 +0000 (05:02 -0700)
commite942bee8f9bc9b224aecc376083082c1ac33818d
tree96a8973b717f588aa4671440316a7aa1ed94b5f9
parent134003902de13ade7795c5145a59b1e77770f2de
Revert of 565 support for SIMD xfermodes (patchset #3 id:40001 of https://codereview.chromium.org/1245673002/)

Reason for revert:
942930d (included in this roll) introduced a 140 kB sizes regression in
libskia.so. Please investigate and reland if this regression is necessary.

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

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

Review URL: https://codereview.chromium.org/1242973004
src/core/Sk4px.h
src/core/Sk4pxXfermode.h