aboutsummaryrefslogtreecommitdiffhomepage
path: root/bench
diff options
context:
space:
mode:
authorGravatar Mike Klein <mtklein@chromium.org>2018-06-19 16:00:40 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2018-06-19 21:15:18 +0000
commit0e4041f5c962dd16c4a69cbd9ff35685e9519ff3 (patch)
tree09b89a6f52f52082ee74d2f596f42750027678e8 /bench
parentc069a57301a468dbc45f3f3775b623e5532f9398 (diff)
update software DM/nanobench configs for color testing
- Rename 'srgbnl' to just 'srgb'. - Add 'narrow' and 'enarrow' for testing a gamut narrower than sRGB. Tested by running xfermodes2 in DM... all look different, what a mess. I also ran a few nanobenches and they seemed somewhat sane. Change-Id: Iacdc391dc0eef4153a76f5b4f78d72c57a4371ee Reviewed-on: https://skia-review.googlesource.com/135871 Commit-Queue: Mike Klein <mtklein@chromium.org> Auto-Submit: Mike Klein <mtklein@chromium.org> Reviewed-by: Brian Osman <brianosman@google.com>
Diffstat (limited to 'bench')
-rw-r--r--bench/nanobench.cpp27
1 files changed, 18 insertions, 9 deletions
diff --git a/bench/nanobench.cpp b/bench/nanobench.cpp
index f77299fece..68923d1c3e 100644
--- a/bench/nanobench.cpp
+++ b/bench/nanobench.cpp
@@ -27,6 +27,7 @@
#include "SkBitmapRegionDecoder.h"
#include "SkCanvas.h"
#include "SkCodec.h"
+#include "SkColorSpacePriv.h"
#include "SkCommonFlags.h"
#include "SkCommonFlagsConfig.h"
#include "SkCommonFlagsGpu.h"
@@ -472,15 +473,23 @@ static void create_config(const SkCommandLineConfig* config, SkTArray<Config>* c
CPU_CONFIG(nonrendering, kNonRendering_Backend,
kUnknown_SkColorType, kUnpremul_SkAlphaType, nullptr)
- CPU_CONFIG(a8, kRaster_Backend,
- kAlpha_8_SkColorType, kPremul_SkAlphaType, nullptr)
- CPU_CONFIG(8888, kRaster_Backend,
- kN32_SkColorType, kPremul_SkAlphaType, nullptr)
- CPU_CONFIG(565, kRaster_Backend,
- kRGB_565_SkColorType, kOpaque_SkAlphaType, nullptr)
- auto srgbLinearColorSpace = SkColorSpace::MakeSRGBLinear();
- CPU_CONFIG(f16, kRaster_Backend,
- kRGBA_F16_SkColorType, kPremul_SkAlphaType, srgbLinearColorSpace)
+ CPU_CONFIG(a8, kRaster_Backend, kAlpha_8_SkColorType, kPremul_SkAlphaType, nullptr)
+ CPU_CONFIG(8888, kRaster_Backend, kN32_SkColorType, kPremul_SkAlphaType, nullptr)
+ CPU_CONFIG(565, kRaster_Backend, kRGB_565_SkColorType, kOpaque_SkAlphaType, nullptr)
+
+ // 'narrow' has a gamut narrower than sRGB, and different transfer function.
+ SkMatrix44 narrow_gamut(SkMatrix44::kUninitialized_Constructor);
+ narrow_gamut.set3x3RowMajorf(gNarrow_toXYZD50);
+
+ auto narrow = SkColorSpace::MakeRGB(k2Dot2Curve_SkGammaNamed, narrow_gamut),
+ srgb = SkColorSpace::MakeSRGB(),
+ srgbLinear = SkColorSpace::MakeSRGBLinear();
+
+ CPU_CONFIG( f16, kRaster_Backend, kRGBA_F16_SkColorType, kPremul_SkAlphaType, srgbLinear)
+ CPU_CONFIG( srgb, kRaster_Backend, kRGBA_8888_SkColorType, kPremul_SkAlphaType, srgb )
+ CPU_CONFIG( esrgb, kRaster_Backend, kRGBA_F16_SkColorType, kPremul_SkAlphaType, srgb )
+ CPU_CONFIG( narrow, kRaster_Backend, kRGBA_8888_SkColorType, kPremul_SkAlphaType, narrow )
+ CPU_CONFIG(enarrow, kRaster_Backend, kRGBA_F16_SkColorType, kPremul_SkAlphaType, narrow )
#undef CPU_CONFIG