diff options
author | Adrienne Walker <enne@chromium.org> | 2018-05-15 11:33:47 -0700 |
---|---|---|
committer | Skia Commit-Bot <skia-commit-bot@chromium.org> | 2018-05-15 18:58:23 +0000 |
commit | 0e38394ffc341478b4385b9a85be02098abd0603 (patch) | |
tree | b4b43a5dccfc2397a339e9cb738794319bc0527b | |
parent | 683148419e88eb1e39d543688b0c531814e287ee (diff) |
Reland "Driver bug workaround: disable_discard_framebuffer"
This is a reland of f31fece6581a46b40403fc78c83c7eebe50816ba
Original change's description:
> Driver bug workaround: disable_discard_framebuffer
>
> Bug: chromium: 829614
> Change-Id: I285b39b31a370247518e3a0b56ac4ea54f38c0c0
> Reviewed-on: https://skia-review.googlesource.com/126749
> Commit-Queue: Adrienne Walker <enne@chromium.org>
> Commit-Queue: Brian Salomon <bsalomon@google.com>
> Auto-Submit: Adrienne Walker <enne@chromium.org>
> Reviewed-by: Brian Salomon <bsalomon@google.com>
Bug: chromium: 829614
Change-Id: I6cc2de11a6315ff224c90551e8dd3e1d1dd4139a
Reviewed-on: https://skia-review.googlesource.com/128108
Commit-Queue: Adrienne Walker <enne@chromium.org>
Commit-Queue: Brian Salomon <bsalomon@google.com>
Auto-Submit: Adrienne Walker <enne@chromium.org>
Reviewed-by: Brian Salomon <bsalomon@google.com>
-rw-r--r-- | include/gpu/GrDriverBugWorkaroundsAutogen.h | 6 | ||||
-rw-r--r-- | src/gpu/gl/GrGLCaps.cpp | 3 | ||||
-rw-r--r-- | src/gpu/gpu_workaround_list.txt | 3 |
3 files changed, 5 insertions, 7 deletions
diff --git a/include/gpu/GrDriverBugWorkaroundsAutogen.h b/include/gpu/GrDriverBugWorkaroundsAutogen.h index a41237f675..feda01bfcf 100644 --- a/include/gpu/GrDriverBugWorkaroundsAutogen.h +++ b/include/gpu/GrDriverBugWorkaroundsAutogen.h @@ -6,10 +6,8 @@ // DO NOT EDIT! #define GPU_DRIVER_BUG_WORKAROUNDS(GPU_OP)\ - GPU_OP(AVOID_STENCIL_BUFFERS, \ - avoid_stencil_buffers) \ - GPU_OP(CLEAR_TO_ZERO_OR_ONE_BROKEN, \ - clear_to_zero_or_one_broken) \ GPU_OP(DISABLE_BLEND_EQUATION_ADVANCED, \ disable_blend_equation_advanced) \ + GPU_OP(DISABLE_DISCARD_FRAMEBUFFER, \ + disable_discard_framebuffer) \ // The End diff --git a/src/gpu/gl/GrGLCaps.cpp b/src/gpu/gl/GrGLCaps.cpp index 43f285e941..2acc7ca91f 100644 --- a/src/gpu/gl/GrGLCaps.cpp +++ b/src/gpu/gl/GrGLCaps.cpp @@ -2333,7 +2333,8 @@ void GrGLCaps::applyDriverCorrectnessWorkarounds(const GrGLContextInfo& ctxInfo, GrShaderCaps* shaderCaps) { // A driver but on the nexus 6 causes incorrect dst copies when invalidate is called beforehand. // Thus we are blacklisting this extension for now on Adreno4xx devices. - if (kAdreno4xx_GrGLRenderer == ctxInfo.renderer()) { + if (kAdreno4xx_GrGLRenderer == ctxInfo.renderer() || + fDriverBugWorkarounds.disable_discard_framebuffer) { fDiscardRenderTargetSupport = false; fInvalidateFBType = kNone_InvalidateFBType; } diff --git a/src/gpu/gpu_workaround_list.txt b/src/gpu/gpu_workaround_list.txt index 17b5beb104..dbded3f11c 100644 --- a/src/gpu/gpu_workaround_list.txt +++ b/src/gpu/gpu_workaround_list.txt @@ -1,3 +1,2 @@ -avoid_stencil_buffers disable_blend_equation_advanced -clear_to_zero_or_one_broken +disable_discard_framebuffer |