aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/opts/SkUtils_opts_arm.cpp
diff options
context:
space:
mode:
authorGravatar mtklein <mtklein@chromium.org>2015-04-20 10:52:26 -0700
committerGravatar Commit bot <commit-bot@chromium.org>2015-04-20 10:52:26 -0700
commit61221e7f87a99765b0e034020e06bb018e2a08c2 (patch)
treedeca5e11fdb2ffa348e39ee8eb1f5b60d961c437 /src/opts/SkUtils_opts_arm.cpp
parent49124378913f3467eb67e653b3b48f80899a3f37 (diff)
Convert Color32 code to perfect blend.
Before we commit to blend_256_round_alt, let's make sure blend_perfect is really slower in practice (i.e. regresses on perf.skia.org). blend_perfect is really the most desirable algorithm if we can afford it. Not only is it correct, but it's easy to think about and break into correct pieces: for instance, its div255() doesn't require any coordination with the multiply. This looks like a 30% hit according to microbenches. That said, microbenches said my previous change would be a 20-25% perf improvement, but it didn't end up showing a significant effect at a high level. As for correctness, I see a bunch of off-by-1 compared to blend_256_round_alt (exactly what we'd expect), and one off-by-3 in a GM that looks like it has a bunch of overdraw. BUG=skia: Review URL: https://codereview.chromium.org/1098913002
Diffstat (limited to 'src/opts/SkUtils_opts_arm.cpp')
0 files changed, 0 insertions, 0 deletions