Add ability to pick a different gamut in GPU f16 or sRGB configs

For now, the only options are sRGB or WideGamutRGB

Basically, the color option to the gpu config is now of
the form: 8888|srgb[_gamut]|f16[_gamut]

color=8888 still implies legacy behavior
srgb implies 8-bit gamma-correct rendering (via sRGB format)
f16 implies 16-bit gamma-correct rendering (via F16 format)

Either of the last two options can then optionally include
a gamut specifier, either _srgb or _wide.
_srgb selects the (default) sRGB gamut
_wide selects the Adobe Wide Gamut RGB gamut, which is nice
for testing, in that it's significantly wider than sRGB,
so rendering differences are obvious.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2350003003

Review-Url: https://codereview.chromium.org/2350003003
diff --git a/tests/TestConfigParsing.cpp b/tests/TestConfigParsing.cpp
index 1804423..d816da4 100644
--- a/tests/TestConfigParsing.cpp
+++ b/tests/TestConfigParsing.cpp
@@ -79,7 +79,7 @@
         "nonrendering", "null", "nullgpu", "nvpr16", "nvpr4", "nvprdit16", "nvprdit4", "pdf", "skp",
         "svg", "xps", "angle", "angle-gl", "commandbuffer", "mesa", "hwui", "gpuf16", "gpusrgb",
         "gl", "glnvpr4", "glnvprdit4", "glsrgb", "glmsaa4", "vk", "glinst", "glinst4", "glinstdit4",
-        "glinst16", "glinstdit16", "esinst", "esinst4", "esinstdit4"
+        "glinst16", "glinstdit16", "esinst", "esinst4", "esinstdit4", "glwide"
     });
 
     SkCommandLineConfigArray configs;
@@ -129,6 +129,11 @@
                               srgbColorSpace->toXYZD50());
     REPORTER_ASSERT(reporter, configs[26]->asConfigGpu()->getColorType() == kN32_SkColorType);
     REPORTER_ASSERT(reporter, configs[26]->asConfigGpu()->getColorSpace() == srgbColorSpace.get());
+    REPORTER_ASSERT(reporter, configs[41]->asConfigGpu()->getColorType() == kRGBA_F16_SkColorType);
+    REPORTER_ASSERT(reporter, configs[41]->asConfigGpu()->getColorSpace());
+    REPORTER_ASSERT(reporter, configs[41]->asConfigGpu()->getColorSpace()->gammaIsLinear());
+    REPORTER_ASSERT(reporter, configs[41]->asConfigGpu()->getColorSpace()->toXYZD50() !=
+                              srgbColorSpace->toXYZD50());
     REPORTER_ASSERT(reporter, configs[33]->asConfigGpu()->getContextType() ==
                               GrContextFactory::kGL_ContextType);
     REPORTER_ASSERT(reporter, configs[33]->asConfigGpu()->getUseInstanced());