aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu
Commit message (Collapse)AuthorAge
* Update stencil ops to have a parallel proxyIDGravatar Robert Phillips2017-04-06
| | | | | | | Change-Id: I842c7f2011c8b9d4487cec4349de8b77f326a381 Reviewed-on: https://skia-review.googlesource.com/11360 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Revert "Make GrCopySurfaceOp friendlier to GrSurfaceProxy"Gravatar Robert Phillips2017-04-06
| | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit d7cda9a6f050c30e65b0744b3cfb45cecdc40834. Reason for revert: Tegra3!!!! Original change's description: > Make GrCopySurfaceOp friendlier to GrSurfaceProxy > > Change-Id: Iba8c068bd96ab154d466e485a9db31dd552138de > Reviewed-on: https://skia-review.googlesource.com/11325 > Commit-Queue: Robert Phillips <robertphillips@google.com> > Reviewed-by: Brian Salomon <bsalomon@google.com> > TBR=bsalomon@google.com,robertphillips@google.com,reviews@skia.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: Idc31d469d94e6e2772ee5714987b3a05bb902d88 Reviewed-on: https://skia-review.googlesource.com/11580 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Make GrCopySurfaceOp friendlier to GrSurfaceProxyGravatar Robert Phillips2017-04-06
| | | | | | | Change-Id: Iba8c068bd96ab154d466e485a9db31dd552138de Reviewed-on: https://skia-review.googlesource.com/11325 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Factor out common work in readSurfacePixels and writeSurfacePixelsGravatar Brian Osman2017-04-06
| | | | | | | | | | | | Use more consistent structure between the two functions. BUG=skia:5853 Change-Id: I82465bee30025574d0d6fad9e287b187d75fff8d Reviewed-on: https://skia-review.googlesource.com/10042 Reviewed-by: Robert Phillips <robertphillips@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Eric Boren <borenet@google.com>
* Rm readPixels from GrSurface & move read/writeSurfacePixels to GrContextPriv ↵Gravatar Robert Phillips2017-04-06
| | | | | | | | | | | | | (take 3) This is in service of: https://skia-review.googlesource.com/c/11125/ (Add parallel proxyID to StencilOps & RenderTargetOpList) where I want a better choke point for texture creation to improve discard handling. This is a re-reland of: https://skia-review.googlesource.com/c/11200/ (Rm readPixels from GrSurface & move read/writeSurfacePixels to GrContextPriv) Change-Id: Icfb9dd223418dd460405efd2bfd9d1c356beed1a Reviewed-on: https://skia-review.googlesource.com/11412 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Revert "Rm readPixels from GrSurface & move read/writeSurfacePixels to ↵Gravatar Robert Phillips2017-04-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | GrContextPriv (take 2)" This reverts commit aaee31f18c0845417103d84285e365575def3c40. Reason for revert: possible valgrind leak Original change's description: > Rm readPixels from GrSurface & move read/writeSurfacePixels to GrContextPriv (take 2) > > This is in service of: https://skia-review.googlesource.com/c/11125/ (Add parallel proxyID to StencilOps & RenderTargetOpList) where I want a better choke point for texture creation to improve discard handling. > > This is a reland of: https://skia-review.googlesource.com/c/11200/ (Rm readPixels from GrSurface & move read/writeSurfacePixels to GrContextPriv) > > Change-Id: Icd0a90d2beb483dc24ed87c3bace9c817019e148 > Reviewed-on: https://skia-review.googlesource.com/11326 > Reviewed-by: Brian Salomon <bsalomon@google.com> > Commit-Queue: Robert Phillips <robertphillips@google.com> > TBR=bsalomon@google.com,robertphillips@google.com,reviews@skia.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: Ia0b92bf6402cb5f9607310d356f43bff2e3e75eb Reviewed-on: https://skia-review.googlesource.com/11361 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Refactor Vulkan support to support FuchsiaGravatar Michael Jurka2017-04-05
| | | | | | | | | | | | | | | | | - Refactor runtime lookup of Vulkan functions - Support Magma surfaces - Add build flags to toggle Vulkan support BUG=skia: Change-Id: Ic71965c453507882521443006c4155c7481a9a3f Reviewed-on: https://skia-review.googlesource.com/9342 Commit-Queue: Greg Daniel <egdaniel@google.com> Commit-Queue: Mike Klein <mtklein@google.com> Reviewed-by: Mike Klein <mtklein@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com> Reviewed-by: Michael Jurka <mikejurka@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org>
* Remove texture sampling from GrConfigConversionEffectGravatar Brian Osman2017-04-05
| | | | | | | | | | | | | | | | Elevates default precision for the entire fragment program to maintain precision on some ES implementations. Re-land fixed version of: https://skia-review.googlesource.com/10026/ https://skia-review.googlesource.com/10056 BUG=skia: Change-Id: Ibe43dba9c223e430b2f9f8ed5cb97ed7a049e6c2 Reviewed-on: https://skia-review.googlesource.com/10160 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Rm readPixels from GrSurface & move read/writeSurfacePixels to GrContextPriv ↵Gravatar Robert Phillips2017-04-05
| | | | | | | | | | | | | (take 2) This is in service of: https://skia-review.googlesource.com/c/11125/ (Add parallel proxyID to StencilOps & RenderTargetOpList) where I want a better choke point for texture creation to improve discard handling. This is a reland of: https://skia-review.googlesource.com/c/11200/ (Rm readPixels from GrSurface & move read/writeSurfacePixels to GrContextPriv) Change-Id: Icd0a90d2beb483dc24ed87c3bace9c817019e148 Reviewed-on: https://skia-review.googlesource.com/11326 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Allow FPs to elevate default precision for the entire fragment programGravatar Brian Osman2017-04-05
| | | | | | | | | | | | | | | | | Currently, GrConfigConversionEffect is able to round-trip on many mobile GPUs because it uses highp for all intermediate variables (including the texture fetch result). Separating the texture sample into a different processor breaks that. This is a blunt instrument, not to be used lightly. This reverts commit dffe9827b18444d1426859d9035f9f0087201f44. Bug: skia: Change-Id: I940af3256c47e6672a008d516db9e55669672ca3 Reviewed-on: https://skia-review.googlesource.com/11345 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Revert "Rm readPixels from GrSurface & move read/writeSurfacePixels to ↵Gravatar Robert Phillips2017-04-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | GrContextPriv" This reverts commit fb0bd98a43fa11e09705837418167dd72bb4a361. Reason for revert: ANGLE failures Original change's description: > Rm readPixels from GrSurface & move read/writeSurfacePixels to GrContextPriv > > This is in service of: https://skia-review.googlesource.com/c/11125/ (Add parallel proxyID to StencilOps & RenderTargetOpList) where I want a better choke point for texture creation to improve discard handling. > > Change-Id: If57a7de47edc0853dae7bc61337d9acdc03d63b0 > Reviewed-on: https://skia-review.googlesource.com/11200 > Reviewed-by: Brian Salomon <bsalomon@google.com> > Commit-Queue: Robert Phillips <robertphillips@google.com> > TBR=bsalomon@google.com,robertphillips@google.com,reviews@skia.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: I7241070dc1f9df47181061e07adab141f9857974 Reviewed-on: https://skia-review.googlesource.com/11324 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Rm readPixels from GrSurface & move read/writeSurfacePixels to GrContextPrivGravatar Robert Phillips2017-04-05
| | | | | | | | | This is in service of: https://skia-review.googlesource.com/c/11125/ (Add parallel proxyID to StencilOps & RenderTargetOpList) where I want a better choke point for texture creation to improve discard handling. Change-Id: If57a7de47edc0853dae7bc61337d9acdc03d63b0 Reviewed-on: https://skia-review.googlesource.com/11200 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Revert incorrect change to GrCoverageSetOp test factoryGravatar Brian Salomon2017-04-04
| | | | | | | Change-Id: I7d2c9f4e5c2cded2eb06b9a18b73700726103f15 Reviewed-on: https://skia-review.googlesource.com/11292 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Support Canvas Clip on Blit FramebufferGravatar Eric Karl2017-04-04
| | | | | | | | | | | | The previous fix to blit framebuffer didn't take cases where the canvas had a clip applied into account. Fix and update the unit test to add this case. Bug: 658277 Change-Id: If3a9d2c8ddf955164cf529c9d6036618f957e426 Reviewed-on: https://skia-review.googlesource.com/11300 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Use sk_sp with GrXferProcessor and use a static factory to handle the ↵Gravatar Brian Salomon2017-04-04
| | | | | | | | | | nullptr==srcover case. Bug: skia: Change-Id: I9c07069fc2aae24fc2884c18939e3a649afc27e7 Reviewed-on: https://skia-review.googlesource.com/11282 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Move GrPipelineBuilder into GrRenderTargetContext::addLegacyDrawOpGravatar Brian Salomon2017-04-04
| | | | | | | | | This makes the legacy code use GrProcessorSet::Analysis in the same manner as the non-GrLegacyMeshDrawOps which enables changes to how analysis works. Change-Id: I8171e285ac8930beb3ac33cd3c4ee88f217b9e40 Reviewed-on: https://skia-review.googlesource.com/11205 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* Respect kRectsMustMatchForMSAASrc_BlitFramebufferFlag in dst setupGravatar Eric Karl2017-04-04
| | | | | | | | | | | | | | | Crurently, when preparing a texture for blitFramebuffer, we ignore the kRectsMustMatchForMSAASrc_BlitFramebufferFlag, and may attempt to copy from one src rect to a different dst rect. This change updates initDescForDstCopy and setupDstTexture to allocate larger textures if necessary and accomodate this flags requirements. Bug: 658277 Change-Id: If4489ac3192dcf6f9996494c63821279721d0a12 Reviewed-on: https://skia-review.googlesource.com/11141 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Move the ability to access textures, buffers, and image storages out from ↵Gravatar Brian Salomon2017-04-04
| | | | | | | | | | | GrProcessor. GrXferProcessor can no longer use this functionality so it is moved to a new intermediate class inherited by GrFragmentProcessor and GrPrimitiveProcessor. Change-Id: I4f30c89bdceb2d77b602bf0646107e0780881c26 Reviewed-on: https://skia-review.googlesource.com/11202 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Fully remove coord transform precision codeGravatar Brian Osman2017-04-04
| | | | | | | | | | Coord transforms are always computed and interpolated at high precision. Bug: skia: Change-Id: I5f7eadc2080df8ad5cbb080835c0dba09c59e63e Reviewed-on: https://skia-review.googlesource.com/11180 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Store the dst texture used by an XP in GrPipeline rather than in the XP.Gravatar Brian Salomon2017-04-03
| | | | | | | | | This will allow the XP to be created before the dst texture. Change-Id: I3e5bdfa8e5d47e58a3560792ce5cf3899d30a024 Reviewed-on: https://skia-review.googlesource.com/11011 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* Fix Vulkan memory leak in MSAAGravatar Greg Daniel2017-04-03
| | | | | | | | | BUG=skia: Change-Id: Ia32bd6654fb3f5371d8109e04464e1932d4bab52 Reviewed-on: https://skia-review.googlesource.com/11120 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
* move vertex-mode enum into SkVerticesGravatar Mike Reed2017-04-03
| | | | | | | | | BUG=skia:6366 Change-Id: I3c0bf96cce6d32c9b8d12d16a772aaa6f18981aa Reviewed-on: https://skia-review.googlesource.com/11062 Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Mike Reed <reed@google.com>
* Move pipeline handling out of GrMeshDrawOp.Gravatar Brian Salomon2017-04-03
| | | | | | | | | | | The monolithic GrPipeline is moved to a subclass GrLegacyDrawMeshOp. The pipeline used to record a GrMesh draw in a GrMeshDrawOp must now be passed rather than implicitly using the op's pipeline. Change-Id: I50d77e4dcc8d91a523fa7566ce43a9a291174706 Reviewed-on: https://skia-review.googlesource.com/11002 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* Revert "Revert "Revert "Allow FPs to elevate default precision for the ↵Gravatar Brian Osman2017-04-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | entire fragment program""" This reverts commit ec53c636b781830cb6146bb32106d4ee44651fcc. Reason for revert: Mali GMs look bad. Original change's description: > Revert "Revert "Allow FPs to elevate default precision for the entire fragment program"" > > This reverts commit 903c3f70400462e191ccbca63393b2df3fe2dd11. > > Reason for revert: Vulkan issue fixed in compiler. > > Original change's description: > > Revert "Allow FPs to elevate default precision for the entire fragment program" > > > > This reverts commit 92d7ccafdf896cf19764e025873d13315a76842d. > > > > Reason for revert: Vulkan errors. > > > > Original change's description: > > > Allow FPs to elevate default precision for the entire fragment program > > > > > > Currently, GrConfigConversionEffect is able to round-trip on many mobile > > > GPUs because it uses highp for all intermediate variables (including the > > > texture fetch result). Separating the texture sample into a different > > > processor breaks that. > > > > > > This is a blunt instrument, not to be used lightly. > > > > > > Bug: skia: > > > Change-Id: I2ab365e3da79628069e2eb727c43c2bf45bfd789 > > > Reviewed-on: https://skia-review.googlesource.com/10162 > > > Reviewed-by: Brian Salomon <bsalomon@google.com> > > > Commit-Queue: Brian Osman <brianosman@google.com> > > > > > > > TBR=bsalomon@google.com,robertphillips@google.com,brianosman@google.com,ethannicholas@google.com,reviews@skia.org > > NOPRESUBMIT=true > > NOTREECHECKS=true > > NOTRY=true > > > > Change-Id: Iee5bb409f86a9cabecc76bd1273a5b3cef6af179 > > Reviewed-on: https://skia-review.googlesource.com/10967 > > Reviewed-by: Brian Osman <brianosman@google.com> > > Commit-Queue: Brian Osman <brianosman@google.com> > > > > TBR=bsalomon@google.com,robertphillips@google.com,reviews@skia.org,brianosman@google.com,ethannicholas@google.com > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > > Change-Id: I733a0ecc40b58d8727f0259b5498c8e6610cedce > Reviewed-on: https://skia-review.googlesource.com/11010 > Reviewed-by: Brian Osman <brianosman@google.com> > Commit-Queue: Brian Osman <brianosman@google.com> > TBR=bsalomon@google.com,robertphillips@google.com,reviews@skia.org,brianosman@google.com,ethannicholas@google.com # Not skipping CQ checks because original CL landed > 1 day ago. Change-Id: Ic3274a0a8b776e811354c3441391ffdc80678292 Reviewed-on: https://skia-review.googlesource.com/11061 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Revert "Respect kRectsMustMatchForMSAASrc_BlitFramebufferFlag in dst setup"Gravatar Mike Klein2017-04-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit d58f040532f2f5a63d24bd17d7c588e52c0b99c3. Reason for revert: tests/BlendTest is failing on the Nexus Player: https://chromium-swarm.appspot.com/task?id=353ffc638e202210 https://chromium-swarm.appspot.com/task?id=353ff5e35819ab10 Original change's description: > Respect kRectsMustMatchForMSAASrc_BlitFramebufferFlag in dst setup > > Crurently, when preparing a texture for blitFramebuffer, we ignore the > kRectsMustMatchForMSAASrc_BlitFramebufferFlag, and may attempt to > copy from one src rect to a different dst rect. > > This change updates initDescForDstCopy and setupDstTexture to allocate > larger textures if necessary and accomodate this flags requirements. > > Bug: 658277 > Change-Id: I9f45a03d4055e0ad87c01e1d826287695096e609 > Reviewed-on: https://skia-review.googlesource.com/10941 > Commit-Queue: Brian Salomon <bsalomon@google.com> > Reviewed-by: Brian Salomon <bsalomon@google.com> > TBR=bsalomon@google.com,ericrk@chromium.org,reviews@skia.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: I0fd6ca95bbc342f21978783b0103073179017795 Reviewed-on: https://skia-review.googlesource.com/11016 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Respect kRectsMustMatchForMSAASrc_BlitFramebufferFlag in dst setupGravatar Eric Karl2017-04-01
| | | | | | | | | | | | | | | Crurently, when preparing a texture for blitFramebuffer, we ignore the kRectsMustMatchForMSAASrc_BlitFramebufferFlag, and may attempt to copy from one src rect to a different dst rect. This change updates initDescForDstCopy and setupDstTexture to allocate larger textures if necessary and accomodate this flags requirements. Bug: 658277 Change-Id: I9f45a03d4055e0ad87c01e1d826287695096e609 Reviewed-on: https://skia-review.googlesource.com/10941 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Revert "Revert "Allow FPs to elevate default precision for the entire ↵Gravatar Brian Osman2017-03-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fragment program"" This reverts commit 903c3f70400462e191ccbca63393b2df3fe2dd11. Reason for revert: Vulkan issue fixed in compiler. Original change's description: > Revert "Allow FPs to elevate default precision for the entire fragment program" > > This reverts commit 92d7ccafdf896cf19764e025873d13315a76842d. > > Reason for revert: Vulkan errors. > > Original change's description: > > Allow FPs to elevate default precision for the entire fragment program > > > > Currently, GrConfigConversionEffect is able to round-trip on many mobile > > GPUs because it uses highp for all intermediate variables (including the > > texture fetch result). Separating the texture sample into a different > > processor breaks that. > > > > This is a blunt instrument, not to be used lightly. > > > > Bug: skia: > > Change-Id: I2ab365e3da79628069e2eb727c43c2bf45bfd789 > > Reviewed-on: https://skia-review.googlesource.com/10162 > > Reviewed-by: Brian Salomon <bsalomon@google.com> > > Commit-Queue: Brian Osman <brianosman@google.com> > > > > TBR=bsalomon@google.com,robertphillips@google.com,brianosman@google.com,ethannicholas@google.com,reviews@skia.org > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > > Change-Id: Iee5bb409f86a9cabecc76bd1273a5b3cef6af179 > Reviewed-on: https://skia-review.googlesource.com/10967 > Reviewed-by: Brian Osman <brianosman@google.com> > Commit-Queue: Brian Osman <brianosman@google.com> > TBR=bsalomon@google.com,robertphillips@google.com,reviews@skia.org,brianosman@google.com,ethannicholas@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: I733a0ecc40b58d8727f0259b5498c8e6610cedce Reviewed-on: https://skia-review.googlesource.com/11010 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* skslc can now be compiled with no Skia dependencies, in preparation for its ↵Gravatar Ethan Nicholas2017-03-31
| | | | | | | | | | | | eventual This reverts commit 9bd301d640ff63c280b202c7dd00bc00a3315ff4. Bug: skia: Change-Id: I5ad3f77ef33aa5ce2fd27fe383c9339c571663a1 Reviewed-on: https://skia-review.googlesource.com/10964 Reviewed-by: Ethan Nicholas <ethannicholas@google.com> Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
* Revert "Allow FPs to elevate default precision for the entire fragment program"Gravatar Brian Osman2017-03-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 92d7ccafdf896cf19764e025873d13315a76842d. Reason for revert: Vulkan errors. Original change's description: > Allow FPs to elevate default precision for the entire fragment program > > Currently, GrConfigConversionEffect is able to round-trip on many mobile > GPUs because it uses highp for all intermediate variables (including the > texture fetch result). Separating the texture sample into a different > processor breaks that. > > This is a blunt instrument, not to be used lightly. > > Bug: skia: > Change-Id: I2ab365e3da79628069e2eb727c43c2bf45bfd789 > Reviewed-on: https://skia-review.googlesource.com/10162 > Reviewed-by: Brian Salomon <bsalomon@google.com> > Commit-Queue: Brian Osman <brianosman@google.com> > TBR=bsalomon@google.com,robertphillips@google.com,brianosman@google.com,ethannicholas@google.com,reviews@skia.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: Iee5bb409f86a9cabecc76bd1273a5b3cef6af179 Reviewed-on: https://skia-review.googlesource.com/10967 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Remove compiler bug workaroundGravatar Brian Osman2017-03-31
| | | | | | | | | | The ICE was (indirectly) triggered by the swizzle code, which has been removed. Verified that this code now compiles on MSVC without incident. Change-Id: I730ad8d39c02a37daa91c2248bd680339b7c8de2 Reviewed-on: https://skia-review.googlesource.com/10963 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Add tracking of unique proxyID beside unique renderTargetID in auditTrail ↵Gravatar Robert Phillips2017-03-31
| | | | | | | | | | | and clearOp Split out of: https://skia-review.googlesource.com/c/10284/ (Omnibus: Remove GrSurface-derived classes from ops) Change-Id: I5845a47d94decc455ec3b1f0a5876b1c82aa32e8 Reviewed-on: https://skia-review.googlesource.com/10750 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Revert "skslc can now be compiled with no Skia dependencies, in preparation ↵Gravatar Ethan Nicholas2017-03-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | for its eventual" This reverts commit f3333c89bf05fc602d9bf8e1e24547668c660383. Reason for revert: breaking the bots Original change's description: > skslc can now be compiled with no Skia dependencies, in preparation for its eventual > role in Skia's build process. > > This reverts commit bcf35f86d50b784b165de703b404998dd4299f6a. > > BUG=skia: > > Change-Id: Id0a12dfc4d804d69a3c6bf60fed37e89ee130f02 > Reviewed-on: https://skia-review.googlesource.com/10802 > Commit-Queue: Ethan Nicholas <ethannicholas@google.com> > Reviewed-by: Ben Wagner <benjaminwagner@google.com> > TBR=benjaminwagner@google.com,ethannicholas@google.com,reviews@skia.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Change-Id: Ic7b50d391d25b3870acffa9764cbafc7f5c3be89 Reviewed-on: https://skia-review.googlesource.com/10962 Reviewed-by: Ethan Nicholas <ethannicholas@google.com> Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
* Allow FPs to elevate default precision for the entire fragment programGravatar Brian Osman2017-03-31
| | | | | | | | | | | | | | | Currently, GrConfigConversionEffect is able to round-trip on many mobile GPUs because it uses highp for all intermediate variables (including the texture fetch result). Separating the texture sample into a different processor breaks that. This is a blunt instrument, not to be used lightly. Bug: skia: Change-Id: I2ab365e3da79628069e2eb727c43c2bf45bfd789 Reviewed-on: https://skia-review.googlesource.com/10162 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* skslc can now be compiled with no Skia dependencies, in preparation for its ↵Gravatar Ethan Nicholas2017-03-31
| | | | | | | | | | | | | | | eventual role in Skia's build process. This reverts commit bcf35f86d50b784b165de703b404998dd4299f6a. BUG=skia: Change-Id: Id0a12dfc4d804d69a3c6bf60fed37e89ee130f02 Reviewed-on: https://skia-review.googlesource.com/10802 Commit-Queue: Ethan Nicholas <ethannicholas@google.com> Reviewed-by: Ben Wagner <benjaminwagner@google.com>
* Revert "Respect kRectsMustMatchForMSAASrc_BlitFramebufferFlag in dst setup"Gravatar Brian Salomon2017-03-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit e0ff6ab272dcc5c4d6f3b509da7e0e97acada814. Reason for revert: a bunch of bots failed. Original change's description: > Respect kRectsMustMatchForMSAASrc_BlitFramebufferFlag in dst setup > > Crurently, when preparing a texture for blitFramebuffer, we ignore the > kRectsMustMatchForMSAASrc_BlitFramebufferFlag, and may attempt to > copy from one src rect to a different dst rect. > > This change updates initDescForDstCopy and setupDstTexture to allocate > larger textures if necessary and accomodate this flags requirements. > > Bug: 658277 > Change-Id: I500f10dba5700f5f7a7acad04bcdbc9ac9994835 > Reviewed-on: https://skia-review.googlesource.com/10247 > Commit-Queue: Brian Salomon <bsalomon@google.com> > Reviewed-by: Brian Salomon <bsalomon@google.com> > TBR=bsalomon@google.com,ericrk@chromium.org,reviews@skia.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: I7fbd6c2652fe71c707d3120b035e0365fbc7fa66 Reviewed-on: https://skia-review.googlesource.com/10920 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Respect kRectsMustMatchForMSAASrc_BlitFramebufferFlag in dst setupGravatar Eric Karl2017-03-31
| | | | | | | | | | | | | | | Crurently, when preparing a texture for blitFramebuffer, we ignore the kRectsMustMatchForMSAASrc_BlitFramebufferFlag, and may attempt to copy from one src rect to a different dst rect. This change updates initDescForDstCopy and setupDstTexture to allocate larger textures if necessary and accomodate this flags requirements. Bug: 658277 Change-Id: I500f10dba5700f5f7a7acad04bcdbc9ac9994835 Reviewed-on: https://skia-review.googlesource.com/10247 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Respect xfer barriers in InstancedRendering::OpGravatar Brian Salomon2017-03-31
| | | | | | | | | Fixes a bug introduced when this Op stopped storing a GrPipeline. Change-Id: I1a39814cebe18b321ea369f005bb7759f233cfe6 Reviewed-on: https://skia-review.googlesource.com/10804 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* Add glPolygonMode support.Gravatar Jim Van Verth2017-03-30
| | | | | | | | | Mainly added because it's useful for rendering in wireframe mode. Change-Id: I84dab43ce5b56a48d47dd16d4c98fa7648bb1f0b Reviewed-on: https://skia-review.googlesource.com/10530 Commit-Queue: Jim Van Verth <jvanverth@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Revert "skslc can now be compiled with no Skia dependencies, in preparation for"Gravatar Ethan Nicholas2017-03-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 7833466da45bfa1e078427c4a6db94d41c5c1535. Reason for revert: Vulkan assertion failure Original change's description: > skslc can now be compiled with no Skia dependencies, in preparation for > its eventual role in Skia's build process. > > Bug: skia: > Change-Id: Iaa9933f4fc4a64bec60aa897c509a3513f457a78 > Reviewed-on: https://skia-review.googlesource.com/10282 > Commit-Queue: Ethan Nicholas <ethannicholas@google.com> > Reviewed-by: Ben Wagner <benjaminwagner@google.com> > TBR=egdaniel@google.com,benjaminwagner@google.com,ethannicholas@google.com,reviews@skia.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: Ic64cac2395abb406116885ddd725f74a434c8c49 Reviewed-on: https://skia-review.googlesource.com/10758 Reviewed-by: Ethan Nicholas <ethannicholas@google.com> Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
* skslc can now be compiled with no Skia dependencies, in preparation forGravatar Ethan Nicholas2017-03-30
| | | | | | | | | | its eventual role in Skia's build process. Bug: skia: Change-Id: Iaa9933f4fc4a64bec60aa897c509a3513f457a78 Reviewed-on: https://skia-review.googlesource.com/10282 Commit-Queue: Ethan Nicholas <ethannicholas@google.com> Reviewed-by: Ben Wagner <benjaminwagner@google.com>
* Minor cleanup (remove unused GrRenderTargetContext::asTexture method)Gravatar Robert Phillips2017-03-30
| | | | | | | Change-Id: I719204e9870b3c849a5c60d967359a70138e6c9c Reviewed-on: https://skia-review.googlesource.com/10753 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Use correct tolerance for conic chopping in MSAA and default path renderersGravatar Brian Salomon2017-03-30
| | | | | | | | Bug: 706581 Change-Id: I16b3037380508316fc73ab7a8cebf960de66938e Reviewed-on: https://skia-review.googlesource.com/10752 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Renames of processor analysis-related classes and method.Gravatar Brian Salomon2017-03-30
| | | | | | | | | | | | GrProcesserSet::FragmentProcessorAnalysis->GrProcessorSet::Analysis GrPipelineAnalysisColor->GrProcessorAnalysisColor GrPipelineAnalysisCoverage->GrProcessorAnalysisCoverage GrMeshDrawOp::getFragmentProcessorAnalysisInputs->GrMeshDrawOp::getProcessorAnalysisInputs Change-Id: I28ad19dfab5f4ac1788c4eacdec5e1af2a701dd0 Reviewed-on: https://skia-review.googlesource.com/10747 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Don't perform analysis twice in InstancedRendering::OpGravatar Brian Salomon2017-03-30
| | | | | | | Change-Id: Ie0aeeb7bf63090b0c27a9b062cce0cdc561a1d7e Reviewed-on: https://skia-review.googlesource.com/10583 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Add GrSurfaceProxy* parameter to GrContext::flushGravatar Robert Phillips2017-03-30
| | | | | | | | | Split out of: https://skia-review.googlesource.com/c/10284/ (Omnibus: Remove GrSurface-derived classes from ops) Change-Id: I12c66a6fa826c2363b21ece56391fb352d12d6b3 Reviewed-on: https://skia-review.googlesource.com/10541 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Make analysis optional to GrPipeline::init().Gravatar Brian Salomon2017-03-29
| | | | | | | | | | | GrXPFactory::createXferProcessor now takes GrPipelineAnalysisColor and GrPipelineAnalysisCoverage rather than GrProcessorSet::FragmentProcessorAnalysis. This will make it so ops do not have to retain the analysis or rerun it to create pipelines at flush time. Change-Id: Ib28ba65de425b20c2647329275f209aec168c3df Reviewed-on: https://skia-review.googlesource.com/10474 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* More GrSurfaceProxy-clean upGravatar Robert Phillips2017-03-29
| | | | | | | | | Split out of: https://skia-review.googlesource.com/c/10484/ (Omnibus: Push instantiation of GrTextures later (post TextureSampler)) Change-Id: I1ee39a23c749e420dce0ad561ee1c8b09bdcc763 Reviewed-on: https://skia-review.googlesource.com/10485 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Miscellaneous GrSurfaceProxy-related cleanupGravatar Robert Phillips2017-03-29
| | | | | | | | | This is pulled out of: https://skia-review.googlesource.com/c/10284/ (Remove GrSurface-derived classes from ops) Change-Id: I083c0beefe4899b3517d0b0569bb25096809f410 Reviewed-on: https://skia-review.googlesource.com/10483 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Remove GrPipelineOptimizations computation from GrPipeline::init and nest in ↵Gravatar Brian Salomon2017-03-29
| | | | | | | | | GrMeshDrawOp. Change-Id: I4a702c83857606c1cb050294c408922eef5769ea Reviewed-on: https://skia-review.googlesource.com/10414 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* Fix copy offset when uploading initial mip data in VulkanGravatar Greg Daniel2017-03-29
| | | | | | | | | | | This is a fix to an original fix which was reverted BUG=skia: Change-Id: I21fcda28a5d342984784a35d2b3e985c6e4199cf Reviewed-on: https://skia-review.googlesource.com/10290 Commit-Queue: Greg Daniel <egdaniel@google.com> Reviewed-by: Jim Van Verth <jvanverth@google.com>