Optimize CMYK->RGBA (BGRA) transform for jpeg decodes
Swizzle Bench Runtime
Nexus 6P 0.14x
Dell Venue 8 0.12x
CMYK Jpeg Decode Runtime
Nexus 6P 0.81x
Dell Venue 8 0.85x
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1676773003
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot
Review URL: https://codereview.chromium.org/1676773003
diff --git a/src/core/SkOpts.h b/src/core/SkOpts.h
index 69da362..2e8778e 100644
--- a/src/core/SkOpts.h
+++ b/src/core/SkOpts.h
@@ -57,14 +57,16 @@
// Swizzle input into some sort of 8888 pixel, {premul,unpremul} x {rgba,bgra}.
typedef void (*Swizzle_8888)(uint32_t*, const void*, int);
- extern Swizzle_8888 RGBA_to_BGRA, // i.e. just swap RB
- RGBA_to_rgbA, // i.e. just premultiply
- RGBA_to_bgrA, // i.e. swap RB and premultiply
- RGB_to_RGB1, // i.e. insert an opaque alpha
- RGB_to_BGR1, // i.e. swap RB and insert an opaque alpha
- gray_to_RGB1, // i.e. expand to color channels + an opaque alpha
- grayA_to_RGBA, // i.e. expand to color channels
- grayA_to_rgbA; // i.e. expand to color channels and premultiply
+ extern Swizzle_8888 RGBA_to_BGRA, // i.e. just swap RB
+ RGBA_to_rgbA, // i.e. just premultiply
+ RGBA_to_bgrA, // i.e. swap RB and premultiply
+ RGB_to_RGB1, // i.e. insert an opaque alpha
+ RGB_to_BGR1, // i.e. swap RB and insert an opaque alpha
+ gray_to_RGB1, // i.e. expand to color channels + an opaque alpha
+ grayA_to_RGBA, // i.e. expand to color channels
+ grayA_to_rgbA, // i.e. expand to color channels and premultiply
+ inverted_CMYK_to_RGB1, // i.e. convert color space
+ inverted_CMYK_to_BGR1; // i.e. convert color space
}
#endif//SkOpts_DEFINED