diff options
author | 2016-11-04 13:20:07 -0700 | |
---|---|---|
committer | 2016-11-04 13:20:07 -0700 | |
commit | a4a4488a4c3f16758f7e2b050168fe8d2f3b2a4d (patch) | |
tree | 207759030d7ac86a60c6cfba1d4a95de15cec5c0 /src/opts/SkOpts_hsw.cpp | |
parent | d8db392be9dd1887df04b10b5670991d6b098c17 (diff) |
skrpb: evaluate color filters for constant shaders once.
The simplest thing to do here is just run shader+color filter pipeline at
construction time to create a new constant color shader (replacing the paint
color).
This reduces a pipeline like:
- constant_color (paint color)
- matrix_4x5
- clamp_a
- load_d_foo, xfermode, lerp, store_foo
to
- constant_color (paint color -> matrix_4x5 -> clamp_a)
- load_d_foo, xfermode, lerp, store_foo
To implement this all, we add a new store_f32 stage that writes SkPM4f, and
finally get around to implementing Sk8f::Store4() (store while reinterlacing).
Sk4f::Store4() already exists for both SSE and NEON.
Next step: reduce simple constant_color -> store pipelines (src mode, full
coverage) into non-pipeline memsets.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2480823002
Review-Url: https://codereview.chromium.org/2480823002
Diffstat (limited to 'src/opts/SkOpts_hsw.cpp')
0 files changed, 0 insertions, 0 deletions