diff options
author | bungeman <bungeman@google.com> | 2014-07-16 09:10:41 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2014-07-16 09:10:41 -0700 |
commit | c7af812b4213105264af514d13ddbe631a89d171 (patch) | |
tree | 464123c0c764c1dd245da489a670633f0abf3426 /src/gpu/gl/GrGLCaps.cpp | |
parent | 33ac9506fba85373135d78212bdfaab597ba7ed7 (diff) |
Revert of Reopened: Caching the result of readPixelsSupported (https://codereview.chromium.org/364193004/)
Reason for revert:
This appears to be causing failures on Android when running tests.
Original issue's description:
> Caching the result of readPixelsSupported
>
> The call was calling GR_GL_GetIntegerv 2 times for each readPixels
> and thus was causing a loss of performance
>
> (resubmit of issue 344793008)
>
> Benchmark url: http://packages.gkny.fr/tst/index.html
>
> BUG=skia:2681
>
> Committed: https://skia.googlesource.com/skia/+/753a2964afe5661ce9b2a8ca77ca9d0aabd3173c
>
> Committed: https://skia.googlesource.com/skia/+/8339371f1ec3c57a0741932fd96bff32c53d4e54
R=junov@chromium.org, reed@chromium.org, bsalomon@chromium.org, mtklein@google.com, bsalomon@google.com, piotaixr@chromium.org
TBR=bsalomon@chromium.org, bsalomon@google.com, junov@chromium.org, mtklein@google.com, piotaixr@chromium.org, reed@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:2681
Author: bungeman@google.com
Review URL: https://codereview.chromium.org/395203002
Diffstat (limited to 'src/gpu/gl/GrGLCaps.cpp')
-rw-r--r-- | src/gpu/gl/GrGLCaps.cpp | 30 |
1 files changed, 4 insertions, 26 deletions
diff --git a/src/gpu/gl/GrGLCaps.cpp b/src/gpu/gl/GrGLCaps.cpp index 89d873bdd8..8f2d4c1297 100644 --- a/src/gpu/gl/GrGLCaps.cpp +++ b/src/gpu/gl/GrGLCaps.cpp @@ -48,8 +48,6 @@ void GrGLCaps::reset() { fIsCoreProfile = false; fFullClearIsFree = false; fDropsTileOnZeroDivide = false; - - fReadPixelsSupportedCache.reset(); } GrGLCaps::GrGLCaps(const GrGLCaps& caps) : GrDrawTargetCaps() { @@ -506,7 +504,7 @@ void GrGLCaps::initConfigTexturableTable(const GrGLContextInfo& ctxInfo, const G // First check version for support if (kGL_GrGLStandard == standard) { hasETC1 = hasCompressTex2D && - (version >= GR_GL_VER(4, 3) || + (version >= GR_GL_VER(4, 3) || ctxInfo.hasExtension("GL_ARB_ES3_compatibility")); } else { hasETC1 = hasCompressTex2D && @@ -562,9 +560,9 @@ void GrGLCaps::initConfigTexturableTable(const GrGLContextInfo& ctxInfo, const G } } -bool GrGLCaps::doReadPixelsSupported(const GrGLInterface* intf, - GrGLenum format, - GrGLenum type) const { +bool GrGLCaps::readPixelsSupported(const GrGLInterface* intf, + GrGLenum format, + GrGLenum type) const { if (GR_GL_RGBA == format && GR_GL_UNSIGNED_BYTE == type) { // ES 2 guarantees this format is supported return true; @@ -591,26 +589,6 @@ bool GrGLCaps::doReadPixelsSupported(const GrGLInterface* intf, return (GrGLenum)otherFormat == format && (GrGLenum)otherType == type; } -bool GrGLCaps::readPixelsSupported(const GrGLInterface* intf, - GrGLenum format, - GrGLenum type, - GrGLenum currFboFormat) const { - - ReadPixelsSupportedFormats::Key key = {format, type, currFboFormat}; - - ReadPixelsSupportedFormats* cachedValue = fReadPixelsSupportedCache.find(key); - - if (NULL == cachedValue) { - bool value = doReadPixelsSupported(intf, format, type); - ReadPixelsSupportedFormats newValue(key, value); - fReadPixelsSupportedCache.add(newValue); - - return newValue.value(); - } - - return cachedValue->value(); -} - void GrGLCaps::initFSAASupport(const GrGLContextInfo& ctxInfo, const GrGLInterface* gli) { fMSFBOType = kNone_MSFBOType; |