aboutsummaryrefslogtreecommitdiffhomepage
path: root/include/gpu
Commit message (Collapse)AuthorAge
* Add onMemoryDump to GrContextGravatar ericrk2015-09-15
| | | | | | | | | | | | | 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
* Add support for blending of LCD for all blend modes.Gravatar egdaniel2015-09-15
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1313623002
* Add helper for creating leaf FPs inside GrFP::TestCreate functionsGravatar bsalomon2015-09-14
| | | | Review URL: https://codereview.chromium.org/1334273003
* Move some of the adding stencil attachment logic of Gpu and into Render Target.Gravatar egdaniel2015-09-14
| | | | | | | | | | | | | | 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
* Test that GrFragmentProcessors work without input colors.Gravatar bsalomon2015-09-14
| | | | | | Committed: https://skia.googlesource.com/skia/+/72c58e7052af2a0855412ce4b249f977069db751 Review URL: https://codereview.chromium.org/1341853002
* Revert of Test that GrFragmentProcessors work without input colors. ↵Gravatar bsalomon2015-09-14
| | | | | | | | | | | | | | | | | | | (patchset #2 id:20001 of https://codereview.chromium.org/1341853002/ ) Reason for revert: Need to fix up more processor subclasses. Original issue's description: > Test that GrFragmentProcessors work without input colors. > > Committed: https://skia.googlesource.com/skia/+/72c58e7052af2a0855412ce4b249f977069db751 TBR=joshualitt@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1338403003
* Test that GrFragmentProcessors work without input colors.Gravatar bsalomon2015-09-14
| | | | Review URL: https://codereview.chromium.org/1341853002
* skia: Add ANGLE with GL backend to nanobench/DMGravatar hendrikw2015-09-11
| | | | | | | This will allow us to test this without hacking it in, might be useful for others too. Review URL: https://codereview.chromium.org/1338003002
* Use SkImageCacherator in SkImagesGravatar reed2015-09-10
| | | | | | | | | | | | Possible follow-up changes to consider 1. Roll SkImage_Raster and _Gpu into _Generator, where the generator (or cacherator) is backed by a pre-existing texture or raster. 2. Evolve SkImageUsageType into a verb requiring stretching, and have the caller (common code) digest the caps() and usage, so that subclasses are just told what to do (stretch or not) 3. Common code/utility to convert an unstretched texture into a stretch one (and cache it) if the generator can only make an unstretched one. BUG=skia: Review URL: https://codereview.chromium.org/1282363002
* Late creation of GrPathProcessorGravatar joshualitt2015-09-10
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1337513002
* Add a mutex to GrContext::readSurfacePixels to protect against multiple CPU ↵Gravatar bsalomon2015-09-10
| | | | | | | | | | | | raster threads accessing the same GrContext to read back GPU input data BUG=chromium:524717 TBR=reed@google.com Committed: https://skia.googlesource.com/skia/+/eb662bc407cec0585a821946fef123102cae64db Review URL: https://codereview.chromium.org/1329313002
* Revert of Add a mutex to GrContext::readSurfacePixels to protect against ↵Gravatar bsalomon2015-09-09
| | | | | | | | | | | | | | | | | | | | | | | | multiple CPU raster threads accessin… (patchset #1 id:1 of https://codereview.chromium.org/1329313002/ ) Reason for revert: breaking the bots Original issue's description: > Add a mutex to GrContext::readSurfacePixels to protect against multiple CPU raster threads accessing the same GrContext to read back GPU input data > > BUG=chromium:524717 > > TBR=reed@google.com > > Committed: https://skia.googlesource.com/skia/+/eb662bc407cec0585a821946fef123102cae64db TBR=reed@google.com,reed@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=chromium:524717 Review URL: https://codereview.chromium.org/1334603002
* Add a mutex to GrContext::readSurfacePixels to protect against multiple CPU ↵Gravatar bsalomon2015-09-09
| | | | | | | | | | raster threads accessing the same GrContext to read back GPU input data BUG=chromium:524717 TBR=reed@google.com Review URL: https://codereview.chromium.org/1329313002
* SK_API on GrWrapTextureInBitmapGravatar bsalomon2015-09-09
| | | | | | | BUG=chromium:524717 TBR=reed@google.com Review URL: https://codereview.chromium.org/1334563002
* Brian requested a new namespace for factories that create fragment ↵Gravatar wangyix2015-09-09
| | | | | | | | processors that combine 2 things with a xfermode. This way, we can change the implementation of these factories in the future to not use GrComposeEffect if desired. BUG=skia:4182 Review URL: https://codereview.chromium.org/1306163005
* Make GrProcessorDataManager a noopGravatar joshualitt2015-09-09
| | | | | | | TBR=bsalomon@google.com BUG=skia: Review URL: https://codereview.chromium.org/1323963003
* GrPathRangeBatchGravatar bsalomon2015-09-09
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1315563003
* refactor parts of SkGr.cpp for use by SkImagesGravatar reed2015-09-08
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1315353006
* Add skstd::unique_ptr and use it.Gravatar bungeman2015-09-07
| | | | | | | TBR=bsalomon@google.com The one gpu include change is just to fix swap in implementation. Review URL: https://codereview.chromium.org/1330503006
* Add new surface flagGravatar jvanverth2015-09-02
| | | | | | TBR=bsalomon@google.com Review URL: https://codereview.chromium.org/1320533005
* Remove GrGpuTraceMarker hooks until we rethink the designGravatar joshualitt2015-09-01
| | | | | | | TBR=bsalomon@google.com BUG=526308 Review URL: https://codereview.chromium.org/1323823003
* Change SkShader;asFragmentProcessor signature to no longer take skpaint\grcolor*Gravatar bsalomon2015-08-28
| | | | | | Committed: https://skia.googlesource.com/skia/+/ecfdc251be71f3d634e76afdd6375bf55fc061aa Review URL: https://codereview.chromium.org/1316513002
* Revert of Change SkShader;asFragmentProcessor signature to no longer take ↵Gravatar rmistry2015-08-28
| | | | | | | | | | | | | | | | | | | | | | | | skpaint\grcolor* (patchset #8 id:140001 of https://codereview.chromium.org/1316513002/ ) Reason for revert: Primary suspect in failing DEPS rolls: * https://codereview.chromium.org/1315753006 * https://codereview.chromium.org/1308323006 * https://codereview.chromium.org/1320903004 Primary suspect because the failing win bots did not fail in https://codereview.chromium.org/1315753005 Original issue's description: > Change SkShader;asFragmentProcessor signature to no longer take skpaint\grcolor* > > Committed: https://skia.googlesource.com/skia/+/ecfdc251be71f3d634e76afdd6375bf55fc061aa TBR=joshualitt@google.com,wangyix@google.com,robertphillips@google.com,bsalomon@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1313573005
* Change SkShader;asFragmentProcessor signature to no longer take skpaint\grcolor*Gravatar bsalomon2015-08-28
| | | | Review URL: https://codereview.chromium.org/1316513002
* Clean up SkTLogic.Gravatar bungeman2015-08-28
| | | | | | | | | This change regularizes Skia's type traits so that when <type_traits> can finally be used the transition is easier. Various traits are renamed to match <type_traits> and placed in the skstd namespace. Current users of these traits are updated. Review URL: https://codereview.chromium.org/1317593004
* Convert child FPs from refs to pending executions when parent convertsGravatar bsalomon2015-08-27
| | | | Review URL: https://codereview.chromium.org/1315923004
* Remove overly complicated GR_CREATE_STATIC_PROCESSOR macroGravatar mdempsky2015-08-27
| | | | | | | | | | | | | | | | | | | This macro was responsible for producing code like: static SkAlignedStorage<sizeof(Foo)> g_gFoo_Storage; static Foo* gFoo = new(g_gFoo_Storage.get()) Foo; static SkAutoTDestroy<Foo> gFoo_ad(gFoo); which would allocate static storage for an object of type Foo (g_gFoo_Storage), lazily instantiate the object in that memory (via gFoo's initializer), and then ensure that at global destruction time the object is destroyed (via gFoo_Ad's destructor). However, the exact same effect is achieved by just writing: static Foo gFoo; Review URL: https://codereview.chromium.org/1314763009
* skia: add ability to load command_buffer_gles2Gravatar hendrikw2015-08-27
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1306823003
* Remove GrStagedProcessor, remove the word Stage as it applies to FPsGravatar bsalomon2015-08-27
| | | | | | Committed: https://skia.googlesource.com/skia/+/24243446cdf7b7e4e132c2a0c387c7723777e0c7 Review URL: https://codereview.chromium.org/1307223004
* Style Change: SkNEW->new; SkDELETE->deleteGravatar halcanary2015-08-26
| | | | | | DOCS_PREVIEW= https://skia.org/?cl=1316123003 Review URL: https://codereview.chromium.org/1316123003
* Revert of Remove GrStagedProcessor, remove the word Stage as it applies to ↵Gravatar rmistry2015-08-26
| | | | | | | | | | | | | | | | | | | | | | | | | FPs (patchset #6 id:90001 of https://codereview.chromium.org/1307223004/ ) Reason for revert: Causes bot failures: https://uberchromegw.corp.google.com/i/client.skia/builders/Test-Mac10.9-Clang-MacMini6.2-GPU-HD4000-x86_64-Debug/builds/1639 https://uberchromegw.corp.google.com/i/client.skia/builders/Test-Ubuntu-GCC-ShuttleA-GPU-GTX660-x86_64-Debug/builds/1702 https://uberchromegw.corp.google.com/i/client.skia.android/builders/Test-Android-GCC-NexusPlayer-GPU-PowerVR-x86-Debug/builds/1223 Original issue's description: > Remove GrStagedProcessor, remove the word Stage as it applies to FPs > > Committed: https://skia.googlesource.com/skia/+/24243446cdf7b7e4e132c2a0c387c7723777e0c7 TBR=joshualitt@google.com,egdaniel@google.com,bsalomon@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1306803003
* Remove GrStagedProcessor, remove the word Stage as it applies to FPsGravatar bsalomon2015-08-26
| | | | Review URL: https://codereview.chromium.org/1307223004
* Create separate entry points for the various flavors of drawRectGravatar joshualitt2015-08-21
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1308503002
* Add ANGLE workaround to prefer flushes over VRAM usageGravatar robertphillips2015-08-20
| | | | | | | | | | | On the whole, https://codereview.chromium.org/1286203002/ (Defer flushes if kPreferNoIO is specified) improved performance but it did cause a performance regression on ANGLE. This CL disables the deferral of flushes on ANGLE until we can add a separate incremental flushing mechanism. TBR=bsalomon@google.com BUG=skia:4201 BUG=521529 Review URL: https://codereview.chromium.org/1287193008
* Use static_assert instead of SK_COMPILE_ASSERT.Gravatar bungeman2015-08-20
| | | | | | | Now that static_assert is allowed, there is no need to use a non- standard compile time assertion Review URL: https://codereview.chromium.org/1306443004
* Move SkTemplates.h to private.Gravatar bungeman2015-08-19
| | | | | | | | SkTemplates.h contains a number of Skia specific utilities which are not designed for external use. In addition to reducing the external support burden, this will allow Skia to freely refactor this file. Review URL: https://codereview.chromium.org/1272293004
* No need to re-declare pure virtual name().Gravatar mtklein2015-08-19
| | | | | | | | | Fixes inconsistent override warning. BUG=skia: TBR=bsalomon@google.com Review URL: https://codereview.chromium.org/1293413003
* Use calloc to allocate data that will be uploaded to vertex/index buffers in ↵Gravatar bsalomon2015-08-19
| | | | | | | | | Chrome BUG=chromium:454267 BUG=chromium:522315 Review URL: https://codereview.chromium.org/1300123002
* This change is in preparation for updating how processor keys and meta keys ↵Gravatar wangyix2015-08-19
| | | | | | | | are generated for frag procs. BUG=skia:4182 Review URL: https://codereview.chromium.org/1298233002
* Allow setting of GrBatchFontCache atlas sizesGravatar joshualitt2015-08-19
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1255943006
* When getGLInstance is called on a frag proc, the resulting ↵Gravatar wangyix2015-08-18
| | | | | | | | GrGLFragmentProcessor will be the root of a tree of GrGLFragmentProcessors that mirrors the GrFragmentProcessor's tree. This allows setData() to be called recursively (removing the responsibility from compose shader) and allows gl instances direct access to their children gl instances so they can emit their code. BUG=skia:4182 Review URL: https://codereview.chromium.org/1287023009
* Made isEqual in GrFragmentProcessor recursiveGravatar wangyix2015-08-18
| | | | | | | | | | Added comment about how computeInvariantOutput() is non-recursive in GrFragmentProcessor Made isEqual() recursive in GrFragmentProcessor BUG=skia:4182 Review URL: https://codereview.chromium.org/1287343005
* Added class AutoFragmentChildProcAdvance to be constructed before a child ↵Gravatar wangyix2015-08-18
| | | | | | | | | | | | | | | | | | emitCode and destructed after Fixed wrong indent Changed auto child advance back to backwards linear search for getting subset of coords and samplers array of a child Used offset from parent instead of backwards linear search to find a child proc's coords and transforms in Auto...Advance append mangleString to variable name in nameVariable() BUILDS! Added AutoFragmentChildProcAdvance class; fixed a few errors from previous commits BUG=skia:4182 Review URL: https://codereview.chromium.org/1286293002
* Introduce GrBatch subclasses GrDrawBatch and GrVertexBatch to prepare for ↵Gravatar bsalomon2015-08-13
| | | | | | non-drawing batches Review URL: https://codereview.chromium.org/1293583002
* Extend SkImageGenerator to support natively generated GrTextures. As part of ↵Gravatar reed2015-08-13
| | | | | | | | | | | | this, added uniqueID() to the generator, and made it be in the same namespace is bitmaps, pixelrefs, images. To do this, create SkImageCacherator, which wraps a generator and provides an interface to get a cached answer for either the raster or texture output of the generator. BUG=skia: Review URL: https://codereview.chromium.org/1291803002
* 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
* Refactor helper function for SkBitmapShader to GrFragmentProcessorGravatar joshualitt2015-08-12
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1285283002
* Add support for a new GPU interfaceGravatar jvanverth2015-08-12
| | | | Review URL: https://codereview.chromium.org/1290813002
* Check for xfer barriers in GrBatch, auto-issue barriers in GrGpuGravatar bsalomon2015-08-12
| | | | Review URL: https://codereview.chromium.org/1287973003
* All child GrFragmentProcs' transforms and textures will be stored in the ↵Gravatar wangyix2015-08-12
| | | | | | | | | | | | | | | | | | | | | | root GrFragmentProc in preorder Changed childProcessor(i) to return const referencd Fixed rootProc/parentProc offset issues; renamed a few things. added nonempty check to gatherTransforms to avoid segfault removed recursive append_gr_coord_transforms() from GrGLProgramBuilder BUILDS! Changed num*includeProc() calls to num() calls added gatherCoordTransforms(). added coordTransforms() for root proc only Modified GrFragmentProcessor to append child proc transforms and textures to root proc's arrays. BUG=skia:4182 Review URL: https://codereview.chromium.org/1275853005