Change-Id: I7f22447cf3356b1558d73665ff3e9b61639ebe83
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/423576
Auto-Submit: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Change-Id: I9f9cf7f92232c365538f3dd29df226933827771c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/423582
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Reed <reed@google.com>
I'm about to convert GrConfigConversionEffect to GrSkSLFP, and this
seemed like a better solution that adding special flags used in one
spot.
Change-Id: I6720411e9915e76c8f2c75d2b99ca746ceaaa597
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/423516
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
This reverts commit 9e583bfa3f.
Reason for revert: breaking flutter, needs available checks
Original change's description:
> Metal: Add labels and debug groups to help with GPU Debugging.
>
> * Adds SK_ENABLE_MTL_DEBUG_INFO to enable labels and debug groups,
> dependent on skia_enable_gpu_debug_layers.
>
> Bug: skia:12150
> Change-Id: I5b4538c0f6df6ceed72d7e8e6f1952fd193b7b90
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/422756
> Commit-Queue: Jim Van Verth <jvanverth@google.com>
> Reviewed-by: Greg Daniel <egdaniel@google.com>
TBR=egdaniel@google.com,jvanverth@google.com,chinmaygarde@google.com
Change-Id: I62deacb3527dc709fa8bb8c9f4631e523eae27f0
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:12150
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/423816
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
Change-Id: I2e657a61fbe614dcf2d8dee0b899f7b826d20280
Bug: dawn:706
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/423116
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: Sarah Mashayekhi <sarahmashay@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Change-Id: Ie257eca4357b7ab66845af046329ad89857cdaa5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/423025
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
* Adds SK_ENABLE_MTL_DEBUG_INFO to enable labels and debug groups,
dependent on skia_enable_gpu_debug_layers.
Bug: skia:12150
Change-Id: I5b4538c0f6df6ceed72d7e8e6f1952fd193b7b90
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/422756
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
This reverts commit 1b0a95e0ee.
Reason for revert: breaking g3, other downstream expectations
Original change's description:
> Omit inner join geometry when possible
>
> There is some relatively cheap math we can do to determine easy cases
> when the inner join geometry can be skipped. This CL is not
> comprehensive in that there may be other cases where we can skip the
> geometry.
>
> Only handling miter joins in this CL - the other join types can likely
> have similar logic, but will require a bit more computation to compute
> the inner (reflected) miter point.
>
> Misc notes:
> - Added SK_LEGACY_INNER_JOINS ifdef in the event that clients depend on
> the old behavior.
> - Modified stroker to track "previous previous" point, which is the
> start point of the previous line segment.
>
> Bug: b/165379671, skia:11964
> Change-Id: I56789e85a2b4627c32f2a30fe60e47d448e9adf3
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/404717
> Reviewed-by: Mike Reed <reed@google.com>
> Commit-Queue: Tyler Denniston <tdenniston@google.com>
TBR=reed@google.com,tdenniston@google.com
Change-Id: I812b39a327606b094cd22fb04b8765afc60ac722
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: b/165379671, skia:11964
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/423583
Reviewed-by: Tyler Denniston <tdenniston@google.com>
Commit-Queue: Tyler Denniston <tdenniston@google.com>
This reverts commit 0734c6223c.
Reason for revert: This was fixing the symptom and not the disease
Original change's description:
> Clear the tile backend textures when drawing DDLs
>
> It appears that the flutter SKPs don't contain an initial clear so the background can be random noise.
>
> This only appears to be an issue for the Metal backend.
>
> Change-Id: I4f5c823cdb1a0a76c0704d4d48355c3a0ed75d43
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/423316
> Reviewed-by: Michael Ludwig <michaelludwig@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>
TBR=robertphillips@google.com,reed@google.com,michaelludwig@google.com
Change-Id: Iaa52a66248cef2896fc310ee199c3cef7029e532
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/423581
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
There is some relatively cheap math we can do to determine easy cases
when the inner join geometry can be skipped. This CL is not
comprehensive in that there may be other cases where we can skip the
geometry.
Only handling miter joins in this CL - the other join types can likely
have similar logic, but will require a bit more computation to compute
the inner (reflected) miter point.
Misc notes:
- Added SK_LEGACY_INNER_JOINS ifdef in the event that clients depend on
the old behavior.
- Modified stroker to track "previous previous" point, which is the
start point of the previous line segment.
Bug: b/165379671, skia:11964
Change-Id: I56789e85a2b4627c32f2a30fe60e47d448e9adf3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/404717
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Tyler Denniston <tdenniston@google.com>
This is purely to reduce the size of SkSLType objects, since we create a
ton of them on compiler startup.
Change-Id: Icea7100d278cdf4805a163d04edf3b8d46c83fe6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/423317
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Change-Id: Ifc2ca70d0d6c8e325a0edccdd1f1d02b6110131f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/423136
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
It appears that the flutter SKPs don't contain an initial clear so the background can be random noise.
This only appears to be an issue for the Metal backend.
Change-Id: I4f5c823cdb1a0a76c0704d4d48355c3a0ed75d43
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/423316
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
At this point all tessellated fills are capable of drawing when
sk_VertexID is not supported.
Bug: chromium:1220246
Change-Id: Icb1deef1558b09d45fadcaa4092023bf0931e398
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/423156
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Change-Id: I3da5112801d244e3200ce05b6a288f75882f7ef3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/423297
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
This reduces the number of vertices we need to process by a factor of
3, and also relieves our dependence on gl_VertexID.
Bug: chromium:1220177
Bug: chromium:1220246
Change-Id: I0f79c24c0f450f9eb936709437196371f67b7f33
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/422876
Reviewed-by: Brian Salomon <bsalomon@google.com>
e70c21f4cb..a8959a9b56
2021-06-30 cnorthrop@google.com Tests: Add Toon Blast trace
2021-06-30 syoussefi@chromium.org Vulkan: SPIR-V Gen: Support switch
2021-06-30 syoussefi@chromium.org Vulkan: SPIR-V Gen: Support break and continue
2021-06-30 cnorthrop@google.com Tests: Add Township trace
2021-06-29 cnorthrop@google.com Tests: Add Farm Heroes Saga trace
2021-06-29 timvp@google.com generate_android_bp.py: Don't include buildtools/third_party/libc++/
2021-06-29 jmadill@chromium.org infra: Add perf tests to Android/Linux/Mac.
2021-06-29 jmadill@chromium.org Perf Tests: Register trace tests programatically.
2021-06-29 lubosz.sarnecki@collabora.com gl.xml: Add GL_FRAMEBUFFER_SRGB_EXT to EnableCap group.
2021-06-29 pkasting@chromium.org Fix a -Wdeprecated-copy warning.
2021-06-29 angle-autoroll@skia-public.iam.gserviceaccount.com Roll VK-GL-CTS from 7329723d8103 to 9fa02d6ab07f (21 revisions)
2021-06-29 jmadill@chromium.org infra: Build traces on perf bots.
2021-06-29 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from e4fea30bb438 to a3726e06b4f1 (7 revisions)
2021-06-29 gert.wollny@collabora.com Capture/Replay: enable some more passing tests
2021-06-29 gert.wollny@collabora.com Capture/Replay: enable passing WebGLCompatibilityTest tests
2021-06-29 gert.wollny@collabora.com Capture/Replay: enable IndexBufferOffsetTest.* tests
2021-06-29 gert.wollny@collabora.com Capture/Replay: Capture TexSubImage2DRobustAngle, enable tests
2021-06-29 gert.wollny@collabora.com Capture/Replay: enable passing UniformTest.Sampler/*
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/angle-skia-autoroll
Please CC bungeman@google.com on the revert to ensure that a human
is aware of the problem.
To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Cq-Include-Trybots: skia/skia.primary:Build-Debian10-Clang-x86_64-Release-ANGLE;skia/skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC8i5BEK-GPU-IntelIris655-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE
Tbr: bungeman@google.com
Test: Test:
Test: Test: angle_perftests --gtest_filter="*farm_heroes_saga*"
Test: Test: angle_perftests --gtest_filter="*township*"
Test: Test: angle_project --gtest_filter="*toon_blast*"
Change-Id: I88b1442d26135bfd5270698b06b2472ab63ed5bb
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/423197
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Change-Id: If209731fa2f4ef47ad57c5542ca6b09afd521ddb
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/423296
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
- blendmode is no longer stored in paint
- no perf change expected (should take all special cases we did before)
- no pixel changes expected
Prev CL this builds upon:
https://skia-review.googlesource.com/c/skia/+/419576
Change-Id: Ifb21298c26de3e0773431a58d2aaa8530cc77654
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/421997
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
Change-Id: I82f432a7b072c52623bebea12486f54ff751807a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/423076
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>
Change-Id: I0150fbdafaec2e8131d18956138fc100bfc45225
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/423024
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Discovered this while converting the remaining gradient FPs. The idea is
explained in the comment - we want to detect when we're sampling a child
that was converted to pass-through. Rather than directly checking for
that, I was looking at the explicitly-sampled flag. This is usually
correct. However - that flag is propagated to all child FPs, independent
of sample-usage. In this situation, we would end up not clearing coords,
and passing the incorrect default (float2(0)), rather than the actual
incoming coords.
Change-Id: Ibd8e799ec72f1e3a1bc79f723240048dae63ee13
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/423023
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Change-Id: I98fcaa0e83e574cdbdd767abbedcf6763c0fdce4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/422521
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
These mac minis had been mysteriously low on disk space.
They reported 20 or fewer GB free, but no tool could tell
us where that space was being used.
Updating from 11.1 to 11.4 seems to have cleared that up.
Change-Id: I5291b1ac5616b9899b1cd6de35ae36af0cb8c75b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/423056
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
Ycbcr images in vulkan can use anywhere from 1 to 3 descriptor set slots.
This comes from some gpus needing to internally treat the different
planes as different textures/samplers. So when you allocated a desc set
that includes a ycbcr image it may actually use up 3 desc set slots from
the pool. Nothing else changes in how we use the VkImage or descriptor
set. Just a matter of accounting for it in the pool.
Change-Id: I10dead981e59f0ebee54b76bdeabf968114d83b0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/422520
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
Discovered while trying to run viewer in ASAN
Change-Id: Ic7469fdbf8cb77573c2f93503440b2137bdba783
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/423016
Commit-Queue: Brian Osman <brianosman@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
Auto-Submit: Brian Osman <brianosman@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Apparently the guarantee of buffer space has been refactored out from
underneath this class.
Bug: 1223365
Change-Id: I9beb9566a641933322bd946a5067eeafb9c4c013
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/422636
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
8767ec1549..e70c21f4cb
2021-06-28 cnorthrop@google.com Tests: Add Beach Buggy Racing trace
2021-06-28 timvp@google.com Fixes and updates to roll_aosp.sh
2021-06-28 jmadill@chromium.org Suppress flaky TSAN TLS false positive.
2021-06-28 gert.wollny@collabora.com Capture/Replay: enable passing DrawBuffersTest.*
2021-06-28 cnorthrop@google.com Capture/Replay: Disable GL_OES_depth32 during capture
2021-06-28 penghuang@chromium.org Disable shader cache for PowerVR Rogue GPUs.
2021-06-28 m.maiya@samsung.com Vulkan: Handle incompatible pipeline layouts
2021-06-28 jmadill@chromium.org Revert "Vulkan: Load custom Vk Loader."
2021-06-28 gert.wollny@collabora.com Capture/Replay: enable passing OcclusionQueriesTest.*
2021-06-28 cnorthrop@google.com Capture/Replay: Update CopyImageSubData params
2021-06-28 gert.wollny@collabora.com Capture/Replay: enable passing IndexedPointsTest* tests
2021-06-28 gert.wollny@collabora.com Capture/Replay: capture GetMaterialfv parameters
2021-06-28 syoussefi@chromium.org Vulkan: SPIR-V Gen: Support loops
2021-06-28 gert.wollny@collabora.com Capture/Replay: Handle Gen/Delete Semaphores and fix map emit
2021-06-28 jmadill@chromium.org Vulkan: Load custom Vk Loader.
2021-06-28 jmadill@chromium.org Add SearchType to OpenSharedLibraryWithExtension.
2021-06-28 syoussefi@chromium.org Add angle::BitMask for creating bit masks
2021-06-28 gert.wollny@collabora.com Capture/Replay: Limit number of compile processes based on load
2021-06-28 jmadill@chromium.org Trace Tests: Use hermetic depot_tools.
2021-06-28 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 8f075627d16b to e4fea30bb438 (3 revisions)
2021-06-28 gert.wollny@collabora.com Capture/Replay: Add test to capture an uninitialized buffer
2021-06-28 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from 94cea2515faf to 1078c63704e4 (468 revisions)
2021-06-28 gert.wollny@collabora.com Capture/Replay: Enable BufferDataTests.*
2021-06-28 gert.wollny@collabora.com Capture/Replay: SimpleOperationTest.* pass now
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/angle-skia-autoroll
Please CC bungeman@google.com on the revert to ensure that a human
is aware of the problem.
To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Cq-Include-Trybots: skia/skia.primary:Build-Debian10-Clang-x86_64-Release-ANGLE;skia/skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC8i5BEK-GPU-IntelIris655-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE
Tbr: bungeman@google.com
Test: Test: Beach Buggy Racing MEC
Test: Test: ImageTest.SourceAHBTarget2DExternalCycleThroughRgbAndYuvTargets*Vulkan
Test: Test: PUBG Mobile MEC
Test: Test: angle_perftests --gtest_filter="*beach_buggy_racing*"
Change-Id: Ifa2fd660df5ed29328133be07143a224007771b1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/422839
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
This allows tests which draw this font on platforms which do not support
the COLRv1 table to draw something rather than nothing.
Change-Id: I024dd4809498d55f8c4c9f0de9e342fed5fb69ac
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/422757
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
DMSAA is complete enough now that we can just add gldmsaa configs to the
normal test bots.
Bug: skia:11396
Change-Id: I4f65777388e2e4ddbe10271dd419a71e8fa7820b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/421376
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Particlarly with runtime FPs, this is a poor space/time tradeoff.
This doesn't completely undo the memory losses from the linked bugs.
Some of it is the unavoidable cost of initializing the runtime effect
compiler - but that's going to happen once, sooner or later. It does
reduce the heap impact of each effect from ~64k to something like 2-3k,
depending on the effect.
Bug: chromium:1223995 chromium:1223996
Change-Id: I929b7a94a88119a155ca403793bebd003a2deca6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/422518
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
This is a reland of 76b80eca64
Original change's description:
> Use GL_ANGLE_instanced_arrays
>
> It turns out the es2 command buffer has supported instanced rendering
> all along. We just weren't using it! This CL starts using
> GL_ANGLE_instanced_arrays, after which point chrome es2 will start
> taking many of our instanced codepaths. It can even use tessellation if
> we update the shaders to not rely on gl_VertexID.
>
> Bug: chromium:1220246
> Change-Id: I173f4c07771691143d2540ecb9c3f8222ed8e4b3
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/422379
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Chris Dalton <csmartdalton@google.com>
Bug: chromium:1220246
Change-Id: I4d6f74adff4e2eda4b55a459faf16b5f5a230d06
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/422616
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>