aboutsummaryrefslogtreecommitdiffhomepage
path: root/include
diff options
context:
space:
mode:
authorGravatar Chris Dalton <csmartdalton@google.com>2017-12-11 15:42:09 -0700
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2017-12-12 15:21:09 +0000
commit344e9037e1befdee76691a1239a47829e6af4ea5 (patch)
tree16d7902f9ee8fc261bc17f465bb9488dccd56532 /include
parent6e64f308910493b4327f7b8aadd7f4aabf3a9601 (diff)
Prefer fullscreen clears on Qualcomm/GL
Adds Qualcomm to the set of GL devices on which we prefer fullscreen clears. Renames fullscreenClearIsFree in GrCaps to preferFullscreenClears. Replaces 'bool canIgnoreClip' on GrRenderTargetContext::clear with an enum. Bug: skia: Change-Id: I5b30298c4d0b092c398b9fea6060f3e2bea91e46 Reviewed-on: https://skia-review.googlesource.com/83060 Reviewed-by: Brian Salomon <bsalomon@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
Diffstat (limited to 'include')
-rw-r--r--include/gpu/GrCaps.h8
1 files changed, 5 insertions, 3 deletions
diff --git a/include/gpu/GrCaps.h b/include/gpu/GrCaps.h
index 9acb33e554..6cdc0e3ff6 100644
--- a/include/gpu/GrCaps.h
+++ b/include/gpu/GrCaps.h
@@ -55,6 +55,10 @@ public:
bool usesMixedSamples() const { return fUsesMixedSamples; }
bool preferClientSideDynamicBuffers() const { return fPreferClientSideDynamicBuffers; }
+ // On tilers, an initial fullscreen clear is an OPTIMIZATION. It allows the hardware to
+ // initialize each tile with a constant value rather than loading each pixel from memory.
+ bool preferFullscreenClears() const { return fPreferFullscreenClears; }
+
bool preferVRAMUseOverFlushes() const { return fPreferVRAMUseOverFlushes; }
bool blacklistCoverageCounting() const { return fBlacklistCoverageCounting; }
@@ -144,8 +148,6 @@ public:
return fBufferMapThreshold;
}
- bool fullClearIsFree() const { return fFullClearIsFree; }
-
/** True in environments that will issue errors if memory uploaded to buffers
is not initialized (even if not read by draw calls). */
bool mustClearUploadedBufferData() const { return fMustClearUploadedBufferData; }
@@ -192,7 +194,7 @@ protected:
bool fInstanceAttribSupport : 1;
bool fUsesMixedSamples : 1;
bool fPreferClientSideDynamicBuffers : 1;
- bool fFullClearIsFree : 1;
+ bool fPreferFullscreenClears : 1;
bool fMustClearUploadedBufferData : 1;
// Driver workaround