aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu/GrGpu.cpp
Commit message (Collapse)AuthorAge
* Style Change: NULL->nullptrGravatar halcanary2015-08-27
| | | | | | DOCS_PREVIEW= https://skia.org/?cl=1316233002 Review URL: https://codereview.chromium.org/1316233002
* Fix for copy surface not handling dirty contextGravatar joshualitt2015-08-21
| | | | | | BUG=521943 Review URL: https://codereview.chromium.org/1304263003
* Defer flushes if kPreferNoIO is specifiedGravatar robertphillips2015-08-13
| | | | | | 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
* Check for xfer barriers in GrBatch, auto-issue barriers in GrGpuGravatar bsalomon2015-08-12
| | | | Review URL: https://codereview.chromium.org/1287973003
* Move some work from backend onClear to base class clearGravatar egdaniel2015-08-06
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1275543005
* Move some parts of onReadPixels up to GrGpu readPixels.Gravatar egdaniel2015-07-30
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1270583003
* Make GrGpu read/write pixels take GrSurfaceGravatar bsalomon2015-07-30
| | | | Review URL: https://codereview.chromium.org/1262473004
* Move draw on upload decision in GrGpuGravatar bsalomon2015-07-28
| | | | | | | | BUG=skia: Committed: https://skia.googlesource.com/skia/+/0341b4427e5f037e3b501ed6e57dfdb7b40f150e Review URL: https://codereview.chromium.org/1257073003
* Revert of Move draw on upload decision in GrGpu (patchset #4 id:50001 of ↵Gravatar bsalomon2015-07-28
| | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/1257073003/) Reason for revert: breaking write pixels test on bots Original issue's description: > Move draw on upload decision in GrGpu > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/0341b4427e5f037e3b501ed6e57dfdb7b40f150e TBR=robertphillips@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/1260293004
* Move draw on upload decision in GrGpuGravatar bsalomon2015-07-28
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1257073003
* Refactor GrBufferAllocPools to use resource cacheGravatar robertphillips2015-06-24
| | | | | | Committed: https://skia.googlesource.com/skia/+/e935f1a0e2351373c33600b8388492ce1218014a Review URL: https://codereview.chromium.org/1139753002
* Revert of Refactor GrBufferAllocPools to use resource cache (patchset #15 ↵Gravatar robertphillips2015-06-23
| | | | | | | | | | | | | | | | | | | id:280001 of https://codereview.chromium.org/1139753002/) Reason for revert: Will reland after Chromium branch Original issue's description: > Refactor GrBufferAllocPools to use resource cache > > Committed: https://skia.googlesource.com/skia/+/e935f1a0e2351373c33600b8388492ce1218014a TBR=bsalomon@google.com,joshualitt@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1204773003
* Refactor GrBufferAllocPools to use resource cacheGravatar robertphillips2015-06-23
| | | | Review URL: https://codereview.chromium.org/1139753002
* Add support for creating texture backed images where Skia will delete the ↵Gravatar bsalomon2015-06-18
| | | | | | texture. Review URL: https://codereview.chromium.org/1187523005
* Implement support for mixed sampled render targetsGravatar vbuzinov2015-06-12
| | | | | | | | | | | | | | | | | | 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
* Refactor GrGpu path rendering functions to GrPathRenderingGravatar kkinnunen2015-06-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | GrGpu, GrGLGpu, GrPathRendering, GrGLPathRendering all duplicated each others' path rendering related member functions. Make GrPathRending the logical extension of GrGpu by removing the methods from GrGpu. Similarly to the GL variants. Changes includes and forward declarations due to removing GrDrawTarget.h include from GrGpu.h. This was necessary due to GrDrawTarget.h including GrPathRendering.h, and now GrPathRendering.h includes GrGpu.h. (Also GrGpu.h does not need GrDrawTarget.h anymore). Very slight runtime improvement on x86_64: desk_fontwipe.skp_1 836us -> 841us 1.01x desk_silkfinance.skp_1 2.01ms -> 2.01ms 1x desk_forecastio.skp_1 7.03ms -> 7.05ms 1x desk_weather.skp_1 3.74ms -> 3.74ms 1x desk_twitter.skp_1 8.02ms -> 8.01ms 1x desk_mapsvg.skp_1 5.24ms -> 5.23ms 1x desk_pokemonwiki.skp_1 7.06ms -> 7.03ms 1x desk_sfgate.skp_1 3.19ms -> 3.17ms 1x tabl_cuteoverload.skp_1 2.66ms -> 2.64ms 0.99x ... tabl_transformice.skp_1 3.06ms -> 2.98ms 0.98x tabl_googlecalendar.skp_1 11.3ms -> 11ms 0.97x tabl_gamedeksiam.skp_1 12.8ms -> 12.4ms 0.97x desk_samoasvg.skp_1 10.6ms -> 10.3ms 0.97x tabl_worldjournal.skp_1 4.44ms -> 4.3ms 0.97x Review URL: https://codereview.chromium.org/1157683006
* rename GrDrawTargetCaps.h to GrCaps.h and move to includeGravatar bsalomon2015-05-22
| | | | Review URL: https://codereview.chromium.org/1135113005
* Add check in GrGpu createTexture to make sure we don't create multisampled ↵Gravatar egdaniel2015-05-12
| | | | | | | | textures. BUG=skia: Review URL: https://codereview.chromium.org/1138223003
* Iterate over instanced draws in GrGpu rather than above GrBatchTargetGravatar bsalomon2015-05-07
| | | | Review URL: https://codereview.chromium.org/1127273007
* Isolate GrBufferAllocPools inside GrBatchTargetGravatar robertphillips2015-05-07
| | | | | | This CL refactors the location of the GrBufferAllocPools so they reside entirely inside the GrBatchTarget. This is in preparation for making them use scratch resources. Review URL: https://codereview.chromium.org/1131553002
* Move DrawInfo out from GrDrawTarget and rename to GrVertices.Gravatar bsalomon2015-05-05
| | | | Review URL: https://codereview.chromium.org/1124733004
* Move instanced index buffer creation to flush timeGravatar bsalomon2015-05-04
| | | | | | Committed: https://skia.googlesource.com/skia/+/ab622c7b8cc8c39f0a594e4392b9e31b7e1ddb26 Review URL: https://codereview.chromium.org/1116943004
* Revert of Move instanced index buffer creation to flush time (patchset #6 ↵Gravatar bsalomon2015-05-04
| | | | | | | | | | | | | | | | | | | id:100001 of https://codereview.chromium.org/1116943004/) Reason for revert: messed up caching, recreating index buffers all the time. Original issue's description: > Move instanced index buffer creation to flush time > > Committed: https://skia.googlesource.com/skia/+/ab622c7b8cc8c39f0a594e4392b9e31b7e1ddb26 TBR=joshualitt@google.com,robertphillips@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1126613003
* Move instanced index buffer creation to flush timeGravatar bsalomon2015-05-04
| | | | Review URL: https://codereview.chromium.org/1116943004
* Move function to be static instead of anonymous namespaceGravatar egdaniel2015-04-22
| | | | | | | | TBR=bsalomon@google.com, jvanverth@google.com BUG=skia: Review URL: https://codereview.chromium.org/1057363004
* Refactor createTexture and onCreateTextureGravatar egdaniel2015-04-22
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1102663002
* Rename GrStencilBuffer to GrStencilAttachmentGravatar egdaniel2015-04-16
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1083133002
* Disable sharing of stencil buffers across differently sized rendertargetsGravatar robertphillips2015-03-20
| | | | | | Due to revertapalooza, stencil buffers shared across differently sized rendertargets aren't getting cleared correctly. This CL disables the sharing until the clearing issues can be remedied. Note that stencil buffers should still be shared between identically sized render targets and should still be lazily allocated. Review URL: https://codereview.chromium.org/1020203002
* Remove recent changes to use temp fbo to do stencil clears.Gravatar egdaniel2015-03-18
| | | | | | | | | | | | | In order to implement these stencil clears we had to use a work around where we would bind a color buffer renderbuffer to the fbo before clearing the stencil buffer. However this workaround seems to cause the win 7 hd2000 machines to all crash on some memory access issue. For now we will comment on the change and go back to the old world BUG=skia: Review URL: https://codereview.chromium.org/1015223002
* Fix uninitialized variable in GrGpuGravatar hendrikw2015-03-04
| | | | | | Stumbled on this while running a trace. Review URL: https://codereview.chromium.org/975993002
* clear stencil buffer using special purpose FBOGravatar bsalomon2015-02-23
| | | | Review URL: https://codereview.chromium.org/941383003
* Dynamically create stencil buffer when needed.Gravatar bsalomon2015-02-23
| | | | Review URL: https://codereview.chromium.org/938383004
* Round stencil buffers dims up to next pow2 when allowedGravatar bsalomon2015-02-20
| | | | Review URL: https://codereview.chromium.org/937303002
* Recycle stencil buffers across render targets.Gravatar bsalomon2015-02-19
| | | | Review URL: https://codereview.chromium.org/939093002
* Split out methods in GrGpuResource::CacheAccess that can be called outside ↵Gravatar bsalomon2015-02-13
| | | | | | of the cache. Review URL: https://codereview.chromium.org/923143002
* Rename GrResourceCache2->GrResourceCacheGravatar bsalomon2015-02-11
| | | | | | TBR=robertphillips@google.com Review URL: https://codereview.chromium.org/921453002
* Add texture create/upload stats and make nanobench have explicit gpu stats flagGravatar bsalomon2015-02-02
| | | | Review URL: https://codereview.chromium.org/891973002
* Make stencil buffers uncached for uncached render target texturesGravatar kkinnunen2015-01-27
| | | | | | | | | | | | | | | Make new stencil buffers of uncached render target textures not affect the cache budgets. This is consistent with render buffer storage of uncached render target textures. Affects only newly created stencil buffers. An uncached render target might still receive a cached stencil buffer if such is available from cache. BUG=skia:3119 BUG=skia:3301 Review URL: https://codereview.chromium.org/859013002
* Zap the scratch key on non-RT textures when scratch textures are disabled.Gravatar bsalomon2015-01-23
| | | | Review URL: https://codereview.chromium.org/870103002
* BUG=skia:Gravatar joshualitt2015-01-20
| | | | Review URL: https://codereview.chromium.org/815643005
* Make uncached textures uncached from the get go.Gravatar bsalomon2015-01-14
| | | | | | | | 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
* Add a simpler key type for scratch resource keys.Gravatar bsalomon2014-12-30
| | | | | | BUG=skia:2889 Review URL: https://codereview.chromium.org/815833004
* Stop creating GrODS for stencilPath commands.Gravatar bsalomon2014-12-17
| | | | Review URL: https://codereview.chromium.org/816513003
* Remove GrGpu::flushGraphicsStateGravatar bsalomon2014-12-16
| | | | Review URL: https://codereview.chromium.org/809843002
* move program descriptor generation to flushGravatar joshualitt2014-12-04
| | | | | | | | BUG=skia: Committed: https://skia.googlesource.com/skia/+/829e1b80b1020b17f2078020c990e079b70c077c Review URL: https://codereview.chromium.org/777673003
* Revert of move program descriptor generation to flush (patchset #7 id:120001 ↵Gravatar joshualitt2014-12-04
| | | | | | | | | | | | | | | | | | | | | of https://codereview.chromium.org/777673003/) Reason for revert: breaking linux build Original issue's description: > move program descriptor generation to flush > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/829e1b80b1020b17f2078020c990e079b70c077c TBR=egdaniel@google.com,bsalomon@google.com,joshualitt@chromium.org NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/776243005
* move program descriptor generation to flushGravatar joshualitt2014-12-03
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/777673003
* some cleanup around GrGpu/GrDrawTarget copySurfaceGravatar bsalomon2014-11-26
| | | | | | Committed: https://skia.googlesource.com/skia/+/e9aa5dc4d5906788eaf691d7c69f1494928f401d Review URL: https://codereview.chromium.org/749903003
* Revert of some cleanup around GrGpu/GrDrawTarget copySurface (patchset #3 ↵Gravatar bsalomon2014-11-26
| | | | | | | | | | | | | | | | | | id:40001 of https://codereview.chromium.org/749903003/) Reason for revert: likely causing es rendering errors. Original issue's description: > some cleanup around GrGpu/GrDrawTarget copySurface > > Committed: https://skia.googlesource.com/skia/+/e9aa5dc4d5906788eaf691d7c69f1494928f401d TBR=joshualitt@google.com NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/763593002
* some cleanup around GrGpu/GrDrawTarget copySurfaceGravatar bsalomon2014-11-26
| | | | Review URL: https://codereview.chromium.org/749903003