Change-Id: I2e37e28fcbd3631bccc65253604015871503a089
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205929
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
- no more color tables
- explicitly mention that MakeAllocate does not initialize the pixels
Change-Id: I98b9ef1fecc36ea5d9acbae66ccd8979810c2760
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206265
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Can dump SkPicture to an skp, but only for debugging purposes
(no deserialization).
Bug: skia:
Change-Id: I37f3c4dcfdd70b665748773ee6b5135329c6240a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206262
Reviewed-by: Florin Malita <fmalita@chromium.org>
Some animations use humongous images which thrash Skia's resource caches
at raster time.
To avoid that, we can
1) force decoding upfront, when the animation is loaded
2) clamp the image size to something reasonable (2K^2)
Add a flag to support this operation mode, and enable for Skottie/WASM.
Change-Id: Id2f127a5200b812b87e588904393d82c80452aa1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206179
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
If all glyphs were culled (by being too small), we could end up with a
run that never called setHasBitmap. That would prevent us from looking
at the view matrix on a subsequent draw, when deciding if we needed to
regenerate.
Bug: skia:8955
Change-Id: Ic7a2539762527f91bdb50ab78bdf5801bfda0034
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206266
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Reviewed-by: Herb Derby <herb@google.com>
Bug: skia:8929
Change-Id: I322d4980a74b18045c53c5e6f871b4727f884ba1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206079
Commit-Queue: Brian Salomon <bsalomon@google.com>
Auto-Submit: Brian Salomon <bsalomon@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
In the cases this touches, although we may provably never touch the un-initialized pixels, this may appease the security checks.
Change-Id: I06c87b127db6acf6bc8bb84590d6f93b02f8328d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206261
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
This reverts commit f4a8d6fc94.
Reason for revert: need to guard this for google3
Original change's description:
> Move localmatrix routines to shaderbase, no need to be public.
>
> Requires https://chromium-review.googlesource.com/c/chromium/src/+/1554040
>
> Bug: skia:8941
> Change-Id: I68593bf794d559845b638e1ecbcc658cc5cfe1b4
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206165
> Reviewed-by: Florin Malita <fmalita@chromium.org>
> Commit-Queue: Mike Reed <reed@google.com>
TBR=halcanary@google.com,fmalita@chromium.org,reed@google.com
Change-Id: I2dc2f2ff2291c0b4579f32f1a6a8f283a156f6c0
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:8941
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206263
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
We tried an experiment using the full color to see if there were
any performance problems. There were some perf regressions caused by creating
more cached strikes because the keys were created using full
color instead of a canonical color. Change back to using
canonical color.
BUG=chromium:929858
Change-Id: Ief8fb9dc21e118547fcac958d63498b22cc79b95
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/193376
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
This change, when skipping submits, now checks the fences from previously submitted command buffers and freed/released/recycled resources connected to any completed command buffers
Bug: 949567
Change-Id: I22fe42ae37f6fb12b30cd567c282644ef81caff7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206260
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
I noticed this today while working on something else.
Looks like we added --threads 0 hoping it'd help something
on iOS a long time ago, and we decided it had no effect,
but didn't revert the change.
Bug: skia:6748
Change-Id: I4fb6722ae79ca21d1f7ee96bcb31b8ffb5319143
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/202010
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Stephan Altmueller <stephana@google.com>
This should have been part of 48aa221 "Update Wuffs version", but was
missed.
Bug: skia:8235
Bug: skia:8764
Change-Id: I3d73ca71872431955ad66d67de4166bdda0a1071
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206141
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
Change-Id: I43f8b9fb580ab4d3a7e41cf43dd2a6b6a232376b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206178
Auto-Submit: Brian Osman <brianosman@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
* Use buffer rather than texture to create test texture
* Get rid of zombie issue
Bug: skia:8243
Change-Id: I681b7ed5583a3806fd723f608068abf716ad70a3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206161
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Bug: skia:8938
Change-Id: Ic9c9859890ad18d1ec72ce72fc93d4635595affd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206164
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
This changes the implementation to always flush for these operations.
Once partial DAG flushes are implemented this behavior will be better than the old method.
The following two CLs have suppressed all the failures that caused the first try to be reverted:
https://skia-review.googlesource.com/c/skia/+/206069 (Blacklist two more GMs for gltestthreading)
https://skia-review.googlesource.com/c/skia/+/206171 (Disable the TextureStripAtlasManagerColorFilterTest on MoltenVK)
TBR=bsalomon@google.com
Change-Id: Ie2d09ebcba03f9987a42038605801f7341fc72a6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206177
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
43997017b0..fb201c5e20
git log 43997017b0ed..fb201c5e208d --date=short --no-merges --format='%ad %ae %s'
2019-04-05 spang@chromium.org Implement resource management for GL_EXT_memory_object
2019-04-04 spang@chromium.org Generate entrypoints for GL_EXT_memory_object & GL_EXT_semaphore
2019-04-04 syoussefi@chromium.org Vulkan: clean up framebuffer clear
2019-04-04 jmadill@chromium.org Use compressed internal format as 'format' in tables.
2019-04-04 jmadill@chromium.org Minor cleanups to copy vertex.
2019-04-04 angle-autoroll@skia-public.iam.gserviceaccount.com Roll ./third_party/glslang/src ef807f4bc543..1240db678cae (1 commits)
Created with:
gclient setdep -r third_party/externals/angle2@fb201c5e208d
The AutoRoll server is located here: https://autoroll.skia.org/r/angle-skia-autoroll
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md
If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.
CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE
TBR=jlavrova@google.com
Change-Id: I856e5e2848c2414a77a044d8014f3f734c80bffe
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206221
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
3ae962179e..3e2882be2d
Created with:
gclient setdep -r ../src@3e2882be2d
The AutoRoll server is located here: https://autoroll.skia.org/r/chromium-skia-autoroll
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md
If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.
CQ_INCLUDE_TRYBOTS=skia.primary:Perf-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Release-All-CommandBuffer;skia.primary:Test-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Debug-All-CommandBuffer
TBR=jlavrova@google.com
Change-Id: Id2608e645d3e9e1a9e5cbf5c8df8736f140fb34b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206222
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Test from bug is 200x faster
Bug: chromium:947381
Change-Id: Ie3fc38d2b39cb8d8fc70d388a25464fcbb1eaa54
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206166
Auto-Submit: Hal Canary <halcanary@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
This patch allows SkRRect::trasform() work with any axis aligned matrix
transform meaning it now works with a rotation of 90 or 270 degrees.
Adds relevant unit tests.
Bug: skia:8944
Change-Id: I63678ec0e3556c181517526de55d84666afeb681
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205860
Reviewed-by: Robert Phillips <robertphillips@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
Currently, shader effects are applied via layers for non-atomic draw fragments.
This is incorrect, as shaders on layer paints are ignored.
Update to always propagate the shader to leaf node paints.
Change-Id: I59f5a5b874e87827f61844969550600fa39e22a3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205931
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
These two GMs started having 1-2 magnitude diffs after the following CL landed:
https://skia-review.googlesource.com/c/skia/+/205584 (Stop using pendingIO in read/writeSurfacePixels)
This is because in the non-threaded case, Ganesh now always flushes when the SWMash helper uploads a mask - changing how backing GrSurfaces are reused.
Change-Id: I5061d0bc79ea958f6ff8984c392d0baeb3cc298c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206069
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Bug: skia:8933
Change-Id: I1bc8b2f8b9292334edef1de748ee2d553006d9fe
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205924
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
17m42.185s --> 0m10.665s
Change-Id: I2de9ddf9860f680e64e7c333e2e90755b050cf91
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/204541
Reviewed-by: Ben Wagner <bungeman@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
This provides a way to re-use the existing basic shaping iterators.
Change-Id: I148dd513dcd01381301e7835672d0d605c1c462b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205933
Reviewed-by: Julia Lavrova <jlavrova@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
This reverts commit 76cf552e28.
Reason for revert: Maybe breaking some bots
Original change's description:
> Stop using pendingIO in read/writeSurfacePixels
>
> This changes the implementation to always flush for these operations.
> Once partial DAG flushes are implemented this behavior will be better than the old method.
>
> Change-Id: I1f9edd33dcf5aa15cc5dcdf8f0e06a3b3cd88f48
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205584
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>
TBR=bsalomon@google.com,robertphillips@google.com
Change-Id: If3e8cc9a6e92b98f85bc3faf2b99fba7395ec946
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206067
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
This removes a few src/ includes as well, to avoid using private
implementations like we did.
Change-Id: Ic9a21d04a131c30e17dfca6d8ea45bdefd362aa7
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206062
Reviewed-by: Mike Reed <reed@google.com>
This changes the implementation to always flush for these operations.
Once partial DAG flushes are implemented this behavior will be better than the old method.
Change-Id: I1f9edd33dcf5aa15cc5dcdf8f0e06a3b3cd88f48
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205584
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
Also re-works colors in the JS part to be unsigned,
so there's less chance for oopsies when passing them
to the C++ side.
Change-Id: I3f56d22e873e1407c402606444c50b76dd34ffd4
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/204543
Reviewed-by: Mike Reed <reed@google.com>
This is a quick refactor that a pulled out to setup for a follow on change.
Bug: skia:
Change-Id: I3be36b44396e7b72abe5d9627c92263ee13b529a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205923
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>