History log of /external/skia/src/gpu/gl/GrGLRenderTarget.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
67914ebddfc81b5f564dfa119eca3c8bad33db74 29-Mar-2018 Derek Sollenberger <djsollen@google.com> Dump additional details about the gpu resources.

GpuResources now dump optional string values that describe the type and
category of the resource. The type provides a description of the kind
of resource it is (e.g. texture, buffer object, stencil, etc.) and the
category describes what the resource is currently tasked to do (e.g.
path masks, images, scratch, etc.)

This CL also refactors the dump logic in an attempt to consolidate
duplicated code into GrGpuResources.cpp.

Bug: b/74435803
Change-Id: I83cae825f41e6450a21398ab3ecea349c7c61c15
Reviewed-on: https://skia-review.googlesource.com/115989
Commit-Queue: Derek Sollenberger <djsollen@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>

(cherry picked from commit cf6da8c0f29877249a55949efd8b952b5b9bc01d)

No-Tree-Checks: true
No-Try: true
No-Presubmit: true
Change-Id: I3ec7ae7e36fe7224b8b052f1eabc31383b29b43a
Reviewed-on: https://skia-review.googlesource.com/117260
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Derek Sollenberger <djsollen@google.com>
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
6ab4e8f2e499169071bd4168082e8b6cdcb4a107 19-Mar-2018 Eric Karl <ericrk@chromium.org> Allow SkTraceMemoryDump to exclude wrapped objects

Allow SkTraceMemoryDump to exclude wrapped objects from dumps. This
helps avoid duplicate dumping when Skia is wrapping an external object
which is already dumped externally.

Bug: 795358
Change-Id: Icbda96b564c81b958d40f74693280ac7d5ba7332
Reviewed-on: https://skia-review.googlesource.com/114681
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Eric Karl <ericrk@chromium.org>
(cherry picked from commit af7700265b74123d8ad3de6dde0c21545453140b)
Reviewed-on: https://skia-review.googlesource.com/117020
Reviewed-by: Robert Phillips <robertphillips@google.com>
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
bdecacfbe47bc7211336bb847bb33c00ef85ea3e 03-Feb-2018 Brian Salomon <bsalomon@google.com> Revert "Revert "Revert "Revert "Revert "Revert "Redefine the meaning of sample counts in GPU backend.""""""

This reverts commit 3a2cc2c2ec124de36d2544b2a523ef1dd317ca32.

Fix code with samplecnt=0 that slipped in between trybots/CQ and landing of previous version

Change-Id: Iab19f2e8d1e9901601c8c76244d7a88c5d707fab
Reviewed-on: https://skia-review.googlesource.com/103181
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
3a2cc2c2ec124de36d2544b2a523ef1dd317ca32 03-Feb-2018 Brian Salomon <bsalomon@google.com> Revert "Revert "Revert "Revert "Revert "Redefine the meaning of sample counts in GPU backend."""""

This reverts commit 5bb82cbecd740d21b92e8d2944280ab6eb6af7a6.

Reason for revert: <INSERT REASONING HERE>

Original change's description:
> Revert "Revert "Revert "Revert "Redefine the meaning of sample counts in GPU backend.""""
>
> This reverts commit 18c52a7b52211de5d0dcd86dc048adef758c6c75.
>
> Also relands "More sample count cleanup:" and "Add new GrContext queries for imagability, surfacability, and max sample count of color types"
>
>
> Bug: skia:
> Change-Id: I4028105a3a1f16ce3944e134619eb6245af6b947
> Reviewed-on: https://skia-review.googlesource.com/102940
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Brian Salomon <bsalomon@google.com>

TBR=egdaniel@google.com,bsalomon@google.com

Change-Id: Idee23be2f1719f0bdc9305043e95a2d589bee8d1
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/103220
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
5bb82cbecd740d21b92e8d2944280ab6eb6af7a6 02-Feb-2018 Brian Salomon <bsalomon@google.com> Revert "Revert "Revert "Revert "Redefine the meaning of sample counts in GPU backend.""""

This reverts commit 18c52a7b52211de5d0dcd86dc048adef758c6c75.

Also relands "More sample count cleanup:" and "Add new GrContext queries for imagability, surfacability, and max sample count of color types"


Bug: skia:
Change-Id: I4028105a3a1f16ce3944e134619eb6245af6b947
Reviewed-on: https://skia-review.googlesource.com/102940
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
18c52a7b52211de5d0dcd86dc048adef758c6c75 02-Feb-2018 Brian Salomon <bsalomon@google.com> Revert "Revert "Revert "Redefine the meaning of sample counts in GPU backend."""

This reverts commit d0d7270fcc32546005b8e847df516cb11592cd30.

Revert "More sample count cleanup:"

This reverts commit d653cac70ed17983125ceed053138c09f1401846.

Revert "Add new GrContext queries for imagability, surfacability, and max sample count of color types"

This reverts commit 85ae7159c9c8a9186a4c7e74304eabb35bca9a79.


Need to understand NVPR perf changes before relanding

Change-Id: I0db075fb42438ef2a1f9885df184dce52892ac4b
Reviewed-on: https://skia-review.googlesource.com/102780
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
d0d7270fcc32546005b8e847df516cb11592cd30 01-Feb-2018 Brian Salomon <bsalomon@google.com> Revert "Revert "Redefine the meaning of sample counts in GPU backend.""

Fixes gpu config default samples to be 1 and updates config parsing test accordingly.

This reverts commit c1ce2f7966babaae0deb150f93f1227ee5af9285.

Bug: skia:
Change-Id: I456973b1f52ced85a2011ea10fc49449bfc5846f
Reviewed-on: https://skia-review.googlesource.com/102147
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
c1ce2f7966babaae0deb150f93f1227ee5af9285 01-Feb-2018 Brian Salomon <bsalomon@google.com> Revert "Redefine the meaning of sample counts in GPU backend."

This reverts commit 48825b11ad25c98b9a4884d5cc0edd4e290c4409.

Reason for revert: nanobench

Original change's description:
> Redefine the meaning of sample counts in GPU backend.
>
> Old: 0 -> nonMSAA
> 1+ -> MSAA
>
> New:
> 0 -> error/unsupported
> 1 -> nonMSAA
> 2+ -> MSAA
>
> We still allow 0 to mean nonMSAA in three sets of public APIs for backwards compatibility:
>
> 1) SkSurface factories
> 2) GrBackendRenderTarget constructors
> 3) GrCaps::getSampleCnt()'s requestedCount parameter
>
> However, we immediately clamp to 1 and treat 0 as invalid/non-renderable internally.
>
> This also changes the behavior when using a large sample count. We now fail in that case rather than using the largest sample available sample count. GrCaps::getSampleCount() will return 0 in this case.
>
>
> Bug: skia:
> Change-Id: Ida22c6b22c1365e563c9046b611e88bf5eb3ff33
> Reviewed-on: https://skia-review.googlesource.com/101560
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Commit-Queue: Brian Salomon <bsalomon@google.com>

TBR=egdaniel@google.com,bsalomon@google.com

Change-Id: Ic257619a8a5ee9ac15419ecf10259e42daed7f82
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/102662
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
48825b11ad25c98b9a4884d5cc0edd4e290c4409 01-Feb-2018 Brian Salomon <bsalomon@google.com> Redefine the meaning of sample counts in GPU backend.

Old: 0 -> nonMSAA
1+ -> MSAA

New:
0 -> error/unsupported
1 -> nonMSAA
2+ -> MSAA

We still allow 0 to mean nonMSAA in three sets of public APIs for backwards compatibility:

1) SkSurface factories
2) GrBackendRenderTarget constructors
3) GrCaps::getSampleCnt()'s requestedCount parameter

However, we immediately clamp to 1 and treat 0 as invalid/non-renderable internally.

This also changes the behavior when using a large sample count. We now fail in that case rather than using the largest sample available sample count. GrCaps::getSampleCount() will return 0 in this case.


Bug: skia:
Change-Id: Ida22c6b22c1365e563c9046b611e88bf5eb3ff33
Reviewed-on: https://skia-review.googlesource.com/101560
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
faa095e9842b924c20de84dce1bcc1adad7fe2e4 19-Dec-2017 Greg Daniel <egdaniel@google.com> Update SkSurface MakeFromBackend* factories to take an SkColorType.

Bug: skia:
Change-Id: Ib1b03b1181ec937843eac2e8d8cb03ebe53e32c1
Reviewed-on: https://skia-review.googlesource.com/86760
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
6a40abc8c7e158e6be34c836f6ea1bbf7b498146 02-Nov-2017 Jim Van Verth <jvanverth@google.com> Revert "Implement window rectangles in vulkan"

This reverts commit 94c0468b2b4255e3beed81efdcfbf6d9d39e11e4.

Reason for revert: <INSERT REASONING HERE>

Original change's description:
> Implement window rectangles in vulkan
>
> Bug: skia:
> Change-Id: I32c079b90a5503c797dfc073a093f940cd8c550a
> Reviewed-on: https://skia-review.googlesource.com/65423
> Commit-Queue: Chris Dalton <csmartdalton@google.com>
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Reviewed-by: Brian Salomon <bsalomon@google.com>

TBR=egdaniel@google.com,bsalomon@google.com,csmartdalton@google.com

Change-Id: I5a90cb57fb5d4bcf8c7e76a5f71a7f16edbaf6be
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/67060
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
94c0468b2b4255e3beed81efdcfbf6d9d39e11e4 02-Nov-2017 Chris Dalton <csmartdalton@google.com> Implement window rectangles in vulkan

Bug: skia:
Change-Id: I32c079b90a5503c797dfc073a093f940cd8c550a
Reviewed-on: https://skia-review.googlesource.com/65423
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
e252f08982b0c747cd4d34c00ce413ab1005e99a 23-Oct-2017 Greg Daniel <egdaniel@google.com> Add hint to SkSurface::MakeRenderTarget that we will use mips

Additionally this changed triggered a cascade of plumbing GrMipMapped
down throughout Ganesh.

Bug: skia:
Change-Id: I4181f44d9046d66139bb491c7abf86703305aaeb
Reviewed-on: https://skia-review.googlesource.com/63000
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
cb2e235e6fb5d9230c41ccf58b865c90ff928f67 30-Aug-2017 Robert Phillips <robertphillips@google.com> Reduce stencil buffer clearing

TBR=bsalomon@google.com
Bug: skia:6953
Change-Id: I079f90711297ee290f2d4011cfcb18b764554deb
Reviewed-on: https://skia-review.googlesource.com/40691
Reviewed-by: Robert Phillips <robertphillips@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
c4f0a8245ccf0d14f6a6dffc73ff56b563012b69 13-Jun-2017 Robert Phillips <robertphillips@google.com> Move Flags from GrRenderTarget to GrTypesPriv.h & rename

The motivation for this is to prevent GrRenderTarget.h appearing in GrRenderTargetProxy.h

Change-Id: I4ef126972c0780cbacb35fa2aa6290777c66eddf
Reviewed-on: https://skia-review.googlesource.com/19521
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
d34edf3dc902532f88842f35375c474f94f82d83 19-May-2017 Brian Salomon <bsalomon@google.com> Revert "Revert "Remove GrSurfaceDesc member from GrSurface.""

This reverts commit 4b30a96a3e96b7f051e25025f4f17f3c54e04153.

Bug: skia:
Change-Id: I14d5b402c87df8fffbc29f16686fcfa18474fc48
Reviewed-on: https://skia-review.googlesource.com/17408
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
4b30a96a3e96b7f051e25025f4f17f3c54e04153 18-May-2017 Greg Daniel <egdaniel@google.com> Revert "Remove GrSurfaceDesc member from GrSurface."

This reverts commit 84911546b9535a2fff6c5e07f588f175d5a04f45.

Reason for revert: Breaking bots possibly?

Original change's description:
> Remove GrSurfaceDesc member from GrSurface.
>
> Change-Id: I0fe979994e1e3fc457b952dfb5e0090c45fad771
> Reviewed-on: https://skia-review.googlesource.com/17273
> Commit-Queue: Brian Salomon <bsalomon@google.com>
> Reviewed-by: Robert Phillips <robertphillips@google.com>
>

TBR=bsalomon@google.com,robertphillips@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I404e509fcd3e3d5527b3bc6e286b7d436c12e879
Reviewed-on: https://skia-review.googlesource.com/17364
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
84911546b9535a2fff6c5e07f588f175d5a04f45 18-May-2017 Brian Salomon <bsalomon@google.com> Remove GrSurfaceDesc member from GrSurface.

Change-Id: I0fe979994e1e3fc457b952dfb5e0090c45fad771
Reviewed-on: https://skia-review.googlesource.com/17273
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
bb5711a5e4b9c83f0fc49f2d4ee19ca1e4592e14 17-May-2017 Brian Salomon <bsalomon@google.com> Remove GrSurfaceDesc member from GrSurfaceProxy.

Stores the config, origin, and dimensions in GrSurfaceProxy, sample count in GrRenderTargetProxy, and "was constructed with mip maps" in GrTextureProxy.

Change-Id: Iee058674dce49107a991cca9d083cd33e3572809
Reviewed-on: https://skia-review.googlesource.com/17209
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
5c77975e4c00e18e644c72b56f369858acd11b15 08-May-2017 Eric Karl <ericrk@chromium.org> Add flag to avoid stencil buffers in Skia

Certain systems experience a leak in the GL driver associated with
stencil buffers. Attempts to avoid the leak (while still using stencil
buffers) dind't succeed. This patch adds a GrContextOption
fAvoidStencilBuffers. This disables certain path rendering modes, as
well as stencil based masking/clipping.

Bug: 713854
Change-Id: Ifa6c0f2bd5ee395547bda9165d6c79d197ae8b8b
Reviewed-on: https://skia-review.googlesource.com/15253
Commit-Queue: Eric Karl <ericrk@chromium.org>
Reviewed-by: Eric Karl <ericrk@chromium.org>
Reviewed-by: Brian Salomon <bsalomon@google.com>
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
294870ff119b89fc902773643b054f14e5d1f554 11-Nov-2016 Robert Phillips <robertphillips@google.com> Add explicit UniqueID classes for GrGpuResource & GrSurfaceProxy

This sets the stage for using the Proxy's/RenderTargetContext's ID above the flush and the RenderTarget's/GrGpuResource's below the flush.

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

Change-Id: I9f1e6b00c02a0691d90b58c49e1d8c60684884c1
Reviewed-on: https://skia-review.googlesource.com/4650
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
d6214d4f4664ce47861dc690b0ddbea3b7a07855 07-Nov-2016 Robert Phillips <robertphillips@google.com> Further centralize computation of GrSurface VRAM consumption - take 2

This is the same as https://skia-review.googlesource.com/c/4383/ (Further centralize computation of GrSurface VRAM consumption) but with a suppression for Vulkan in the new test and removal of an assert Chromium was triggering.

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

Change-Id: Ie87d32fd5f0d35c21326b066a0c733cb6f8a5bea
Reviewed-on: https://skia-review.googlesource.com/4450
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
9c46b68d5340efc91368cef1cc5775f13c97cab8 06-Nov-2016 Ben Wagner <benjaminwagner@google.com> Revert "Further centralize computation of GrSurface VRAM consumption"

This reverts commit ccd3c8937fce4bb28df19533ed043cad209e277d.

Reason for revert: Blocking Chromium roll: https://codereview.chromium.org/2482643002/

Original change's description:
> Further centralize computation of GrSurface VRAM consumption
>
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4383
>
> Change-Id: I054b74f2cd15f904f8e05af0fda58d6e8a523eb9
> Reviewed-on: https://skia-review.googlesource.com/4383
> Commit-Queue: Robert Phillips <robertphillips@google.com>
> Reviewed-by: Brian Salomon <bsalomon@google.com>
>

TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=662630

Change-Id: I186db2a41eb2bd789e6f681b3547e32d9ca374cf
Reviewed-on: https://skia-review.googlesource.com/4443
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
ccd3c8937fce4bb28df19533ed043cad209e277d 04-Nov-2016 Robert Phillips <robertphillips@google.com> Further centralize computation of GrSurface VRAM consumption

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

Change-Id: I054b74f2cd15f904f8e05af0fda58d6e8a523eb9
Reviewed-on: https://skia-review.googlesource.com/4383
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
29e52f13f632c701bd33d802701f5ff29a567eea 03-Nov-2016 Robert Phillips <robertphillips@google.com> Centralize computation of GrRenderTarget & GrTexture VRAM consumption

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

Change-Id: I676749ecf1e489f825799b619a15a45fc7dcd219
Reviewed-on: https://skia-review.googlesource.com/4310
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
6bd5284415bd983b0628c4941dff5def40018f5a 27-Oct-2016 bungeman <bungeman@google.com> Remove SkAutoTUnref and SkAutoTDelete from public includes.

This also makes the required changed to src, tests, and tools. The few
public APIs modified by this change appear to be unused outside of Skia.

Removing these from the public API makes it easier to ensure users are
no longer using them.

This also updates GrGpu::wrapBackendXXX and the
::onWrapBackendXXX methods to clarify ownership.

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

Review-Url: https://codereview.chromium.org/2448593002
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
8abb370aca280516f4861c6c942ec453aad018fa 31-Aug-2016 robertphillips <robertphillips@google.com> Have GrSurfaceProxys and GrGpuResources draw from the same pool of unique ids

The idea here is that, for wrapped Proxy objects, we want the uniqueID to reflect that of the wrapped object. For this to work the IDs for the non-wrapped versions can't conflict with GrGpuResource's pool of IDs.

Split off of: https://codereview.chromium.org/2215323003/ (Start using RenderTargetProxy (omnibus))

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

Review-Url: https://codereview.chromium.org/2301523003
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
f1c6cd7603bd8c3f55b5070c8faa666652e98cc2 18-Aug-2016 robertphillips <robertphillips@google.com> Rename WorseCaseSize to WorstCasSize
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2259863002

Review-Url: https://codereview.chromium.org/2259863002
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
f9635999a4aa8810d04e8ef04594a9fbcc061e3d 10-Aug-2016 csmartdalton <csmartdalton@google.com> Add flag for window rectangles to GrRenderTarget

Adds a flag to GrRenderTarget that indicates whether it can be used
with window rectangles. Also attempts to clean up some of the mixed
samples API.

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

Review-Url: https://codereview.chromium.org/2225303002
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
c4025189d31efcb0d54bf14b7712b38725f86c13 04-May-2016 ericrk <ericrk@chromium.org> Allow stencils to be attached to render targets created via SkSurface::MakeFromBackendTextureAsRenderTarget

This is a regression from "Refactor to separate backend object lifecycle
and GpuResource budget decision".

GrGLRenderer::canAttemptStencilAttachment was incorrectly returning false
for all wrapped render targets. This function should return false only if
the FBO is wrapped (unowned). If the FBO is owned by Skia, we can attach
stencils.

BUG=608238

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1924183003

Review-Url: https://codereview.chromium.org/1941353003
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
31f25a037d7e3ee9de8f26e8cdd5c1f88da0f765 04-May-2016 jvanverth <jvanverth@google.com> Revert of Allow stencils to be attached to render targets created via SkSurface::MakeFromBackendTextureAsRend… (patchset #1 id:60001 of https://codereview.chromium.org/1941353003/ )

Reason for revert:
Breaking the ANGLE bots. Message is:

Caught exception 3221225477 EXCEPTION_ACCESS_VIOLATION

8.59m elapsed, 1 active, 82 queued, 315MB RAM, 1442MB peak
unit test SurfaceAttachStencil_Gpu
step returned non-zero exit code: -1073741819

Original issue's description:
> Allow stencils to be attached to render targets created via SkSurface::MakeFromBackendTextureAsRenderTarget
>
> This is a regression from "Refactor to separate backend object lifecycle
> and GpuResource budget decision".
>
> GrGLRenderer::canAttemptStencilAttachment was incorrectly returning false
> for all wrapped render targets. This function should return false only if
> the FBO is wrapped (unowned). If the FBO is owned by Skia, we can attach
> stencils.
>
> BUG=608238
>
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1924183003
>
> Committed: https://skia.googlesource.com/skia/+/0736f3386820f19c0fe90b5dda2094e253780071

TBR=bsalomon@google.com,kkinnunen@nvidia.com,ericrk@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=608238

Review-Url: https://codereview.chromium.org/1947143002
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
0736f3386820f19c0fe90b5dda2094e253780071 04-May-2016 ericrk <ericrk@chromium.org> Allow stencils to be attached to render targets created via SkSurface::MakeFromBackendTextureAsRenderTarget

This is a regression from "Refactor to separate backend object lifecycle
and GpuResource budget decision".

GrGLRenderer::canAttemptStencilAttachment was incorrectly returning false
for all wrapped render targets. This function should return false only if
the FBO is wrapped (unowned). If the FBO is owned by Skia, we can attach
stencils.

BUG=608238

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1924183003

Review-Url: https://codereview.chromium.org/1941353003
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
2e6055b3ea14a04fcde1ac1974a70bf00b1e295b 22-Apr-2016 kkinnunen <kkinnunen@nvidia.com> Refactor to separate backend object lifecycle and GpuResource budget decision

Refactor GrGpuResource to contain two different pieces of state:
a) instance is budgeted or not budgeted
b) instance references wrapped backend objects or not

The "object lifecycle" was also attached to backend object
handles (ids), which made the code a bit unclear. Backend objects
would be associated with GrGpuResource::LifeCycle, even though
GrGpuResource::LifeCycle refers to the GpuResource, and individual
backend objects in one GpuResource might be governed with different
"lifecycle".

Mark the budgeted/not budgeted with SkBudgeted::kYes, SkBudgeted::kNo.
This was previously GrGpuResource::kCached_LifeCycle,
GrGpuResource::kUncached_LifeCycle.

Mark the "references wrapped object" with boolean. This was previously
GrGpuResource::kBorrowed_LifeCycle,
GrGpuResource::kAdopted_LifeCycle for GrGpuResource.

Associate the backend object ownership status with
GrBackendObjectOwnership for the backend object handles.

The resource type leaf constuctors, such has GrGLTexture or
GrGLTextureRenderTarget take "budgeted" parameter. This parameter
is passed to GrGpuResource::registerWithCache().

The resource type intermediary constructors, such as GrGLTexture
constructors for class GrGLTextureRenderTarget do not take "budgeted"
parameters, intermediary construtors do not call registerWithCache.

Removes the need for tagging GrGpuResource -derived subclass
constructors with "Derived" parameter.

Makes instances that wrap backend objects be registered with
a new function GrGpuResource::registerWithCacheWrapped().

Removes "budgeted" parameter from classes such as StencilAttahment, as
they are always cached and never wrap any external backend objects.

Removes the use of concept "external" from the member function names.
The API refers to the objects as "wrapped", so make all related
functions use the term consistently.

No change in functionality. Resources referencing wrapped objects are
always inserted to the cache with budget decision kNo.

BUG=594928
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1862043002

Review URL: https://codereview.chromium.org/1862043002
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
fa7ff470a83183ba0d22a8b83a022e2e3122e851 21-Apr-2016 robertphillips <robertphillips@google.com> Guard against FramebufferStatus checks in GrGLRenderTarget

BUG=skia:5200

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1905063002

Review URL: https://codereview.chromium.org/1905063002
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
d472792a72c0c433a205d42a73e0b77d65f8d76f 10-Nov-2015 cdalton <cdalton@nvidia.com> Revert of Fix mixed samples stencil clip (patchset #5 id:80001 of https://codereview.chromium.org/1431593006/ )

Reason for revert:
Co-centered sample locations are not needed to do stencil clip with mixed samples.

Original issue's description:
> Fix mixed samples stencil clip
>
> Fixes rendering bugs and nondeterminism in gm.
>
> Before, mixed samples stencil clip would try to infer whether the draw
> wanted co-centered sample locations from within GrGLGpu, which caused
> various errors. This change reworks it so the draw itself can request
> the co-centered sample locations when it knows it will need them.
>
> Also reduces framebuffer binds by moving the code that enables
> GL_FRAMEBUFFER_PROGRAMMABLE_SAMPLE_LOCATIONS into flushRenderTarget.
>
> Committed: https://skia.googlesource.com/skia/+/14184d5567b58085b6d8a6375796d405056f7f73

TBR=bsalomon@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/1407063011
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
14184d5567b58085b6d8a6375796d405056f7f73 10-Nov-2015 cdalton <cdalton@nvidia.com> Fix mixed samples stencil clip

Fixes rendering bugs and nondeterminism in gm.

Before, mixed samples stencil clip would try to infer whether the draw
wanted co-centered sample locations from within GrGLGpu, which caused
various errors. This change reworks it so the draw itself can request
the co-centered sample locations when it knows it will need them.

Also reduces framebuffer binds by moving the code that enables
GL_FRAMEBUFFER_PROGRAMMABLE_SAMPLE_LOCATIONS into flushRenderTarget.

Review URL: https://codereview.chromium.org/1431593006
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
0a5fa484fd58d27088f8696bdc11c8cc8f2b4866 15-Sep-2015 ericrk <ericrk@chromium.org> Add onMemoryDump to GrContext

Adds an entry point to GrContext to allow enumeration and tracing of GPU resources
via the newly added SkTraceMemoryDump.

Plan is for Chrome to call this on each of its GrContexts.

Dumps both the total size of GPU resources, as well as the total purgeable size.

BUG=526261

Review URL: https://codereview.chromium.org/1313743002
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
79bd2aee8ca328b688c8d421973f96bcd13fd12d 15-Sep-2015 egdaniel <egdaniel@google.com> Minor fix to attaching stencils

BUG=skia:

Review URL: https://codereview.chromium.org/1344033002
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
ec00d94199fad7723b5987b86c1abef8ddafe2d8 14-Sep-2015 egdaniel <egdaniel@google.com> Move some of the adding stencil attachment logic of Gpu and into Render Target.

The new flow of calls for attaching a Stencil looks like:

Client
rt->attachStencilAttachment()
gpu->getStencilAttachment()
glgpu->createStencilAttachment()
glrt->completeStencilAttachment() //actually attaches

BUG=skia:

Review URL: https://codereview.chromium.org/1333383002
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
fe495f0bae96c732730a7d6b2667662c4d67bfa1 27-Aug-2015 chinmaygarde <chinmaygarde@google.com> Fix assertion about GPU memory size when the target is not FBO 0

Review URL: https://codereview.chromium.org/1313783007
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
6e83ac778f8f90939abe3aee3ea865428dff592f 13-Aug-2015 robertphillips <robertphillips@google.com> Defer flushes if kPreferNoIO is specified

Prior to this patch clients who were solely uploading to textures (e.g., SW Mask Mgr) would cause extra flushes b.c., even though kPreferNoIO was being specified, resources with pending IO would still be returned even though there was plenty of space in the resource cache.

Review URL: https://codereview.chromium.org/1286203002
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
6dc6f5f4a153d33ed91565cb3cd397a310a937d0 18-Jun-2015 bsalomon <bsalomon@google.com> Add support for creating texture backed images where Skia will delete the texture.

Review URL: https://codereview.chromium.org/1187523005
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
dded69693dd3779f081326cde24c3954505b129d 12-Jun-2015 vbuzinov <vbuzinov@nvidia.com> Implement support for mixed sampled render targets

Adds a new FBO type kStencil_MSFBOType that is selected whenever
NV_framebuffer_mixed_samples extension is available. In this new
FBO type a non-msaa color buffer is created with a multisampled
stencil buffer attachment.

Replaces numSamples() with separate numColorSamples and numStencilSamples
methods in RenderTarget.

In mixed samples mode non-MSAA codepaths are used to draw simple shapes,
while NVPR-rendered paths and text are rendered with a multisampled
stencil.

BUG=skia:3177

Review URL: https://codereview.chromium.org/1001503002
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
d298121f5d753b21c62709ae33ac08ddb053c719 30-Apr-2015 senorblanco <senorblanco@chromium.org> Fix gpu memory accounting for auto-resolving MSAA.

BUG=skia:

Review URL: https://codereview.chromium.org/1115233002
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
d803f2731f778317b46da64bce6e7a8a221ffccd 18-Mar-2015 egdaniel <egdaniel@google.com> Revert of Improve tracking of bound FBOs in GrGLGpu. (patchset #17 id:320001 of https://codereview.chromium.org/949263002/)

Reason for revert:
Perf regression on win8 hd7700 gpu skps

Original issue's description:
> Improve tracking of bound FBOs in GrGLGpu.
>
> Committed: https://skia.googlesource.com/skia/+/d2ad8eb5801e2c8c0fa544a6a776bb46eedde2a0
>
> Committed: https://skia.googlesource.com/skia/+/b2af2d8b83ca4774c3b3bb1e49bc72605faa9589
>
> Committed: https://skia.googlesource.com/skia/+/0b70b86a7e9fda52ee7ebc1b9897eeaa09b9abef
>
> Committed: https://skia.googlesource.com/skia/+/6ba6fa15261be591f33cf0e5df7134e4fc6432ac
>
> Committed: https://skia.googlesource.com/skia/+/dc963b9264908f53650c40a97cff414101dd3e88
>
> Committed: https://skia.googlesource.com/skia/+/160f24ce0e8d6dd7ca80b78871e063d4f4609cfb

TBR=bsalomon@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/1009563003
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
160f24ce0e8d6dd7ca80b78871e063d4f4609cfb 17-Mar-2015 bsalomon <bsalomon@google.com> Improve tracking of bound FBOs in GrGLGpu.

Committed: https://skia.googlesource.com/skia/+/d2ad8eb5801e2c8c0fa544a6a776bb46eedde2a0

Committed: https://skia.googlesource.com/skia/+/b2af2d8b83ca4774c3b3bb1e49bc72605faa9589

Committed: https://skia.googlesource.com/skia/+/0b70b86a7e9fda52ee7ebc1b9897eeaa09b9abef

Committed: https://skia.googlesource.com/skia/+/6ba6fa15261be591f33cf0e5df7134e4fc6432ac

Committed: https://skia.googlesource.com/skia/+/dc963b9264908f53650c40a97cff414101dd3e88

Review URL: https://codereview.chromium.org/949263002
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
5cd020f27b79ab6efc411b08883d4108868d81e9 17-Mar-2015 bsalomon <bsalomon@google.com> Revert of Improve tracking of bound FBOs in GrGLGpu. (patchset #16 id:300001 of https://codereview.chromium.org/949263002/)

Reason for revert:
locally hit assert.

Original issue's description:
> Improve tracking of bound FBOs in GrGLGpu.
>
> Committed: https://skia.googlesource.com/skia/+/d2ad8eb5801e2c8c0fa544a6a776bb46eedde2a0
>
> Committed: https://skia.googlesource.com/skia/+/b2af2d8b83ca4774c3b3bb1e49bc72605faa9589
>
> Committed: https://skia.googlesource.com/skia/+/0b70b86a7e9fda52ee7ebc1b9897eeaa09b9abef
>
> Committed: https://skia.googlesource.com/skia/+/6ba6fa15261be591f33cf0e5df7134e4fc6432ac
>
> Committed: https://skia.googlesource.com/skia/+/dc963b9264908f53650c40a97cff414101dd3e88

TBR=egdaniel@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/1017803002
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
dc963b9264908f53650c40a97cff414101dd3e88 17-Mar-2015 bsalomon <bsalomon@google.com> Improve tracking of bound FBOs in GrGLGpu.

Committed: https://skia.googlesource.com/skia/+/d2ad8eb5801e2c8c0fa544a6a776bb46eedde2a0

Committed: https://skia.googlesource.com/skia/+/b2af2d8b83ca4774c3b3bb1e49bc72605faa9589

Committed: https://skia.googlesource.com/skia/+/0b70b86a7e9fda52ee7ebc1b9897eeaa09b9abef

Committed: https://skia.googlesource.com/skia/+/6ba6fa15261be591f33cf0e5df7134e4fc6432ac

Review URL: https://codereview.chromium.org/949263002
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
1e0bf7e113f994a512a351cc2b25ddb1e742b7d4 14-Mar-2015 bsalomon <bsalomon@google.com> Revert of Improve tracking of bound FBOs in GrGLGpu. (patchset #12 id:220001 of https://codereview.chromium.org/949263002/)

Reason for revert:
That one needs to be reverted to fix black boxes with GPU
raster, and GPU bot failures.

BUG=466690

Original issue's description:
> Improve tracking of bound FBOs in GrGLGpu.
>
> Committed: https://skia.googlesource.com/skia/+/d2ad8eb5801e2c8c0fa544a6a776bb46eedde2a0
>
> Committed: https://skia.googlesource.com/skia/+/b2af2d8b83ca4774c3b3bb1e49bc72605faa9589
>
> Committed: https://skia.googlesource.com/skia/+/0b70b86a7e9fda52ee7ebc1b9897eeaa09b9abef
>
> Committed: https://skia.googlesource.com/skia/+/6ba6fa15261be591f33cf0e5df7134e4fc6432ac

TBR=egdaniel@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/1011493002
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
6ba6fa15261be591f33cf0e5df7134e4fc6432ac 04-Mar-2015 bsalomon <bsalomon@google.com> Improve tracking of bound FBOs in GrGLGpu.

Committed: https://skia.googlesource.com/skia/+/d2ad8eb5801e2c8c0fa544a6a776bb46eedde2a0

Committed: https://skia.googlesource.com/skia/+/b2af2d8b83ca4774c3b3bb1e49bc72605faa9589

Committed: https://skia.googlesource.com/skia/+/0b70b86a7e9fda52ee7ebc1b9897eeaa09b9abef

Review URL: https://codereview.chromium.org/949263002
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
73165bd417d6cd4b4513df54b58e23e33f151a3f 01-Mar-2015 robertphillips <robertphillips@google.com> Revert of Improve tracking of bound FBOs in GrGLGpu. (patchset #10 id:180001 of https://codereview.chromium.org/949263002/)

Reason for revert:
Experimentally reverting to see if this is the cause of the mac_chromium_rel_ng roll-blocking failures.

Original issue's description:
> Improve tracking of bound FBOs in GrGLGpu.
>
> Committed: https://skia.googlesource.com/skia/+/d2ad8eb5801e2c8c0fa544a6a776bb46eedde2a0
>
> Committed: https://skia.googlesource.com/skia/+/b2af2d8b83ca4774c3b3bb1e49bc72605faa9589
>
> Committed: https://skia.googlesource.com/skia/+/0b70b86a7e9fda52ee7ebc1b9897eeaa09b9abef

TBR=egdaniel@google.com,bsalomon@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/970613003
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
0b70b86a7e9fda52ee7ebc1b9897eeaa09b9abef 28-Feb-2015 bsalomon <bsalomon@google.com> Improve tracking of bound FBOs in GrGLGpu.

Committed: https://skia.googlesource.com/skia/+/d2ad8eb5801e2c8c0fa544a6a776bb46eedde2a0

Committed: https://skia.googlesource.com/skia/+/b2af2d8b83ca4774c3b3bb1e49bc72605faa9589

Review URL: https://codereview.chromium.org/949263002
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
bb8bca36b7eb8015f40e6ce2cfa229b673b19a34 28-Feb-2015 bsalomon <bsalomon@google.com> Revert of Improve tracking of bound FBOs in GrGLGpu. (patchset #8 id:140001 of https://codereview.chromium.org/949263002/)

Reason for revert:
breaking things

Original issue's description:
> Improve tracking of bound FBOs in GrGLGpu.
>
> Committed: https://skia.googlesource.com/skia/+/d2ad8eb5801e2c8c0fa544a6a776bb46eedde2a0
>
> Committed: https://skia.googlesource.com/skia/+/b2af2d8b83ca4774c3b3bb1e49bc72605faa9589

TBR=egdaniel@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/963973002
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
b2af2d8b83ca4774c3b3bb1e49bc72605faa9589 28-Feb-2015 bsalomon <bsalomon@google.com> Improve tracking of bound FBOs in GrGLGpu.

Committed: https://skia.googlesource.com/skia/+/d2ad8eb5801e2c8c0fa544a6a776bb46eedde2a0

Review URL: https://codereview.chromium.org/949263002
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
ed0069a4c789eb65d41917f4a255b363e8d18f44 26-Feb-2015 bsalomon <bsalomon@google.com> Revert of Improve tracking of bound FBOs in GrGLGpu. (patchset #6 id:100001 of https://codereview.chromium.org/949263002/)

Reason for revert:
breaking hd2000 windows bots

Original issue's description:
> Improve tracking of bound FBOs in GrGLGpu.
>
> Committed: https://skia.googlesource.com/skia/+/d2ad8eb5801e2c8c0fa544a6a776bb46eedde2a0

TBR=egdaniel@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/964543002
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
d2ad8eb5801e2c8c0fa544a6a776bb46eedde2a0 26-Feb-2015 bsalomon <bsalomon@google.com> Improve tracking of bound FBOs in GrGLGpu.

Review URL: https://codereview.chromium.org/949263002
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
5236cf480daf82b2f36e42795abdbbc915533a59 14-Jan-2015 bsalomon <bsalomon@google.com> Make uncached textures uncached from the get go.

This avoids the problem of a newly created uncached texture causing a purge of cached resources.

BUG=chromium:445885

Review URL: https://codereview.chromium.org/846303002
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
39edf7664f50b6c890b933b5bbed67a8735b349b 22-Dec-2014 jvanverth <jvanverth@google.com> Rename GrGpuGL -> GrGLGpu

Review URL: https://codereview.chromium.org/824753002
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
861e1037017bbb7ac52ec5ebecab3a636a82a3e8 16-Dec-2014 bsalomon <bsalomon@google.com> Rename GrGpuGL to GrGLGpu for consistency

Review URL: https://codereview.chromium.org/808593003
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
9a0c7abfd7ce8694136840fa224e99579b8329f6 09-Dec-2014 hendrikw <hendrikw@chromium.org> Skia: Track the fIsWrapped separately so that we delete correctly

GrGlTextureRenderTarget inherits virtually from both GrGlRenderTarget and
GrGLTexture, which both have a 'wrap' flag. The passed in wrap setting could
be different for the two base classes, but since it's virtually inherited,
they share the same flag, so they're either both on, or both off.

As a result, we fail to delete the frambuffer.

To fix this, we now keep a separate isWrapped flag for GrGlRenderTarget.

BUG=437998

Review URL: https://codereview.chromium.org/791493003
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
69ed47f42d4877c178fdc0031cb01af2966ae235 12-Nov-2014 bsalomon <bsalomon@google.com> Make GrGpuResource::gpuMemorySize non-virtual w/ onGpuMemorySize virtual impl

BUG=skia:2889

Review URL: https://codereview.chromium.org/702413003
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
37dd331b20a92ce79cc26556e065dec98a66cb0b 03-Nov-2014 bsalomon <bsalomon@google.com> Add class GrGLTextureRenderTarget for GL texture/rendertarget objects

BUG=skia:2889

Review URL: https://codereview.chromium.org/695813003
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
b15b4c1ce006319acf764a25ee4a6b73283654f8 29-Oct-2014 bsalomon <bsalomon@google.com> Separate out GrSurfaceConfig's fields from other structs used to create GrGL* subclasses of GrSurface.

BUG=skia:2889

Review URL: https://codereview.chromium.org/691523002
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
f2703d83da3ab2ae18b45231fd4f11e16cce3184 28-Oct-2014 bsalomon <bsalomon@google.com> rename GrTextureDesc->GrSurfaceDesc, GrTextureFlags->GrSurfaceFlags

Review URL: https://codereview.chromium.org/682223002
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
49f085dddff10473b6ebf832a974288300224e60 05-Sep-2014 bsalomon <bsalomon@google.com> "NULL !=" = NULL

R=reed@google.com

Author: bsalomon@google.com

Review URL: https://codereview.chromium.org/544233002
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
169612621f00b3fe9f71014079991287d311751a 26-Aug-2014 bsalomon <bsalomon@google.com> Make GrGpuResources register with GrResourceCache2 after fully constructed.

Committed: https://skia.googlesource.com/skia/+/d68b3e491bb765beb7ca5e4ac8e0c80dedf5a83b

R=robertphillips@google.com

Author: bsalomon@google.com

Review URL: https://codereview.chromium.org/504313002
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
a2b0af82f02a74749b0ae8c315202a810a89bcb8 26-Aug-2014 bsalomon <bsalomon@google.com> Revert of Make GrGpuResources register with GrResourceCache2 after fully constructed. (patchset #3 of https://codereview.chromium.org/504313002/)

Reason for revert:
Breaking the bots

Original issue's description:
> Make GrGpuResources register with GrResourceCache2 after fully constructed.
>
> Committed: https://skia.googlesource.com/skia/+/d68b3e491bb765beb7ca5e4ac8e0c80dedf5a83b

R=robertphillips@google.com
TBR=robertphillips@google.com
NOTREECHECKS=true
NOTRY=true

Author: bsalomon@google.com

Review URL: https://codereview.chromium.org/488463004
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
d68b3e491bb765beb7ca5e4ac8e0c80dedf5a83b 26-Aug-2014 bsalomon <bsalomon@google.com> Make GrGpuResources register with GrResourceCache2 after fully constructed.

R=robertphillips@google.com

Author: bsalomon@google.com

Review URL: https://codereview.chromium.org/504313002
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
1c63bf6e90f160c9a0d7484dedfaf87c0aa341e9 22-Jul-2014 bsalomon <bsalomon@google.com> Revert "Revert of Use the GrCacheable ID to eliminate the need for notifications to GrGpuGL when textures and RTs are… (https://codereview.chromium.org/376703009/)"

This reverts commit 249171e7d29b5559f3eefe9dbd437030bfad3fda.

Uses 32 bit id instead of 64. Renamed instanceID to uniqueID to match existing code.

R=robertphillips@google.com

Author: bsalomon@google.com

Review URL: https://codereview.chromium.org/414493002
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
249171e7d29b5559f3eefe9dbd437030bfad3fda 20-Jul-2014 robertphillips <robertphillips@google.com> Revert of Use the GrCacheable ID to eliminate the need for notifications to GrGpuGL when textures and RTs are… (https://codereview.chromium.org/376703009/)

Reason for revert:
Trying to unblock roll wedged on 64 bit intrinsic call on XP

Original issue's description:
> Use the GrCacheable ID to eliminate the need for notifications to GrGpuGL when textures and RTs are deleted.
>
> Also, rename GrCacheable::getGenerationID() to getInstanceID() since it doesn't behave like other "generation" IDs.
>
> Committed: https://skia.googlesource.com/skia/+/91bdbcdbbdf5cdf0fdb4518a0d30206c964cfdf6

R=jvanverth@google.com, bsalomon@google.com
TBR=bsalomon@google.com, jvanverth@google.com
NOTREECHECKS=true
NOTRY=true

Author: robertphillips@google.com

Review URL: https://codereview.chromium.org/405023003
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
91bdbcdbbdf5cdf0fdb4518a0d30206c964cfdf6 17-Jul-2014 bsalomon <bsalomon@google.com> Use the GrCacheable ID to eliminate the need for notifications to GrGpuGL when textures and RTs are deleted.

Also, rename GrCacheable::getGenerationID() to getInstanceID() since it doesn't behave like other "generation" IDs.

R=jvanverth@google.com

Author: bsalomon@google.com

Review URL: https://codereview.chromium.org/376703009
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
f6de475e5cbd143f348ff7738919e397b7fe7f57 17-Aug-2013 tfarina@chromium.org <tfarina@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Replace uses of GrAssert by SkASSERT.

R=bsalomon@google.com

Review URL: https://codereview.chromium.org/22850006

git-svn-id: http://skia.googlecode.com/svn/trunk@10789 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
59e16e4e1d30eee3ce564e0b513d952579065cb3 17-Jul-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix leak of GrGLTexID when its owning GrGLTexture has been abandoned.

BUG=260708
R=robertphillips@google.com

Author: bsalomon@google.com

Review URL: https://chromiumcodereview.appspot.com/19580003

git-svn-id: http://skia.googlecode.com/svn/trunk@10132 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
3cb406bb88f5aa09cf9f5a9554b4b1314cf1a2ee 05-Feb-2013 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Implement support for origin-TopLeft render targets. Note that the default behaviour remains the same: textures default to origin-TopLeft, render targets default to origin-BottomLeft, and backend textures default to origin-BottomLeft. However, the caller can override the default by setting fOrigin in GrTextureDesc, GrBackendTextureDesc or GrBackendRenderTargetDesc.

Review URL: https://codereview.appspot.com/7230049

git-svn-id: http://skia.googlecode.com/svn/trunk@7594 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
cf9faf6ce9e3351b4d4030753eb43c8cd2010e0c 05-Feb-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Reverting r7545 (render target origin change) due to layout test issues (see https://codereview.chromium.org/12210002/)



git-svn-id: http://skia.googlecode.com/svn/trunk@7571 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
ed8659b51d9f2bad3f004df6033d72cc32d71c0d 04-Feb-2013 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Implement support for origin-TopLeft render targets in GL backend.

Review URL: https://codereview.appspot.com/7230049

git-svn-id: http://skia.googlecode.com/svn/trunk@7545 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
ef5dbe1cd90fe586f165e54cb6f7608942610793 28-Jan-2013 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add an origin flag for backend (external) textures. Some textures in WebKit have a topdown orientation, and skia needs to be notified of this, so that they are not drawn upside-down.

Review URL: https://codereview.appspot.com/7200048

git-svn-id: http://skia.googlecode.com/svn/trunk@7414 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
728302281920727b96e6cec0bfc7575900f34a8b 23-Jan-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Make GrResource know whether 3D objects' lifetimes are managed by Skia or not.
Review URL: https://codereview.appspot.com/7201046

git-svn-id: http://skia.googlecode.com/svn/trunk@7348 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
2d0baded0f45dfde9dc8c25313ff14ea18c0c915 26-Oct-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Make the orientation of a texture accessible from and known by GrSurface.

R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6801044

git-svn-id: http://skia.googlecode.com/svn/branches/gpu_dev@6148 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
d6bbbf8a831cc982cda9b91e84c5600c631af5b2 05-Sep-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Simplified stencil buffer caching

https://codereview.appspot.com/6503073/



git-svn-id: http://skia.googlecode.com/svn/trunk@5400 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
9c2ea846351a29208cb4a36301ee611e7fb384ea 13-Aug-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Split cache-specific fields out of GrTextureDesc

http://codereview.appspot.com/6448143/



git-svn-id: http://skia.googlecode.com/svn/trunk@5065 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
7d501ab502e861f2b2367b10a701b8449241558e 21-Jun-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add GrSurface parent class above GrTexture & GrRenderTarget

http://codereview.appspot.com/6297092/



git-svn-id: http://skia.googlecode.com/svn/trunk@4292 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
d8f856c32b679d9f5a9926feac005e2c0186f83f 10-May-2012 tomhudson@google.com <tomhudson@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Move convolution from code in GrGLProgram to new GrConvolutionEffect
class. This is the first test of the new Ganesh shader pipeline.

Also includes some cleanup of the gpu.gyp file: added src/gpu, allowing
us to remove ../ from many #include directives.

http://codereview.appspot.com/6199053/



git-svn-id: http://skia.googlecode.com/svn/trunk@3887 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp
dd182cbca60a7f0003330c01dfc64f69f56aea90 10-Feb-2012 tomhudson@google.com <tomhudson@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Move GL-specific source code to make room for D3D back end.



git-svn-id: http://skia.googlecode.com/svn/trunk@3165 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/gpu/gl/GrGLRenderTarget.cpp