aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu/GrShaderCaps.cpp
diff options
context:
space:
mode:
authorGravatar Brian Salomon <bsalomon@google.com>2017-12-01 10:25:08 -0500
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2017-12-01 16:23:59 +0000
commit762d5e7e1ce918ce3dd7652cc7becdcbc69f47d5 (patch)
treeefdfc590644c85a1f9dcb336aefbf964ab813bb2 /src/gpu/GrShaderCaps.cpp
parent028c0e14d092e3ab11ffe79d9c1456bf31c9b3bb (diff)
Revert "Revert "Use a dst size threshold for multitexturing images.""
This reverts commit be85ef25111ac59275b1642350ffb608141c404f. Change-Id: Icc22eb5841fabc53232b360efaac2d6ebf72e358 Reviewed-on: https://skia-review.googlesource.com/79081 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
Diffstat (limited to 'src/gpu/GrShaderCaps.cpp')
-rw-r--r--src/gpu/GrShaderCaps.cpp14
1 files changed, 8 insertions, 6 deletions
diff --git a/src/gpu/GrShaderCaps.cpp b/src/gpu/GrShaderCaps.cpp
index 2d9cd0a39b..65721ee897 100644
--- a/src/gpu/GrShaderCaps.cpp
+++ b/src/gpu/GrShaderCaps.cpp
@@ -68,11 +68,9 @@ GrShaderCaps::GrShaderCaps(const GrContextOptions& options) {
fMaxCombinedSamplers = 0;
fAdvBlendEqInteraction = kNotSupported_AdvBlendEqInteraction;
-#if GR_TEST_UTILS
- fDisableImageMultitexturing = options.fDisableImageMultitexturing;
-#else
- fDisableImageMultitexturing = false;
-#endif
+ // TODO: Default this to 0 and only enable image multitexturing when a "safe" threshold is
+ // known for a GPU class.
+ fDisableImageMultitexturingDstRectAreaThreshold = std::numeric_limits<size_t>::max();
}
void GrShaderCaps::dumpJSON(SkJSONWriter* writer) const {
@@ -130,7 +128,8 @@ void GrShaderCaps::dumpJSON(SkJSONWriter* writer) const {
writer->appendS32("Max Combined Samplers", fMaxFragmentSamplers);
writer->appendString("Advanced blend equation interaction",
kAdvBlendEqInteractionStr[fAdvBlendEqInteraction]);
- writer->appendBool("Disable image multitexturing", fDisableImageMultitexturing);
+ writer->appendU64("Disable image multitexturing dst area threshold",
+ fDisableImageMultitexturingDstRectAreaThreshold);
writer->endObject();
}
@@ -138,5 +137,8 @@ void GrShaderCaps::dumpJSON(SkJSONWriter* writer) const {
void GrShaderCaps::applyOptionsOverrides(const GrContextOptions& options) {
#if GR_TEST_UTILS
fDualSourceBlendingSupport = fDualSourceBlendingSupport && !options.fSuppressDualSourceBlending;
+ if (options.fDisableImageMultitexturing) {
+ fDisableImageMultitexturingDstRectAreaThreshold = 0;
+ }
#endif
}