diff options
author | reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> | 2011-03-09 13:23:57 +0000 |
---|---|---|
committer | reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> | 2011-03-09 13:23:57 +0000 |
commit | ee467ee79d449ebe6ae7f7946e613cc70a479c69 (patch) | |
tree | 50192c7d4723cd2a31fd86087b5adc9152fb828a /src/opts/SkBlitRow_opts_SSE2.cpp | |
parent | 981d4798007b91e2e19c13b171583927a56df63b (diff) |
Correct blitmask procs to recognize that we pass them an SkColor, and if they
want a SkPMColor, they need to call SkPreMultiplyColor()
Add Opaque and Black optimizations for blitmask_d32
git-svn-id: http://skia.googlecode.com/svn/trunk@911 2bbb7eff-a529-9590-31e7-b0007b416f81
Diffstat (limited to 'src/opts/SkBlitRow_opts_SSE2.cpp')
-rw-r--r-- | src/opts/SkBlitRow_opts_SSE2.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/opts/SkBlitRow_opts_SSE2.cpp b/src/opts/SkBlitRow_opts_SSE2.cpp index b5757fc919..4f69fdd60d 100644 --- a/src/opts/SkBlitRow_opts_SSE2.cpp +++ b/src/opts/SkBlitRow_opts_SSE2.cpp @@ -393,9 +393,10 @@ void Color32_SSE2(SkPMColor dst[], const SkPMColor src[], int count, void SkARGB32_BlitMask_SSE2(void* device, size_t dstRB, SkBitmap::Config dstConfig, const uint8_t* mask, - size_t maskRB, SkColor color, + size_t maskRB, SkColor origColor, int width, int height) { + SkPMColor color = SkPreMultiplyColor(origColor); size_t dstOffset = dstRB - (width << 2); size_t maskOffset = maskRB - width; SkPMColor* dst = (SkPMColor *)device; |