Commit Graph

51532 Commits

Author SHA1 Message Date
John Stiles
fdf6148102 Pass function arguments using SkSpan instead of count + ptr.
There's no functional change here; it's just using a slightly higher-
level abstraction to pass the same payload.

Change-Id: Ife7efa038db5d6dbde5decae2be79ad9db877aba
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329782
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2020-10-27 14:41:04 +00:00
Greg Daniel
65476e0f5b Add uma histogram tracking for the number of submit render passes.
This uma stat can allow us to look a few different things. First we can
look at the distribution of render passes per submit (including mean,
median, ect.). Additionally we can do things like sum the total number
of renderpasses from all submits and divide by the total number of
frames (Compositing.Display.DrawToSwapUs::TotalCount) to get the
average number of render passes per frame and not just submit.

Technically under the hood the ENUMERATION and LINEAR_EXACT macros will
do the same thing and we could just use ENUMERATION here. However to
match how chrome uses their UMA macros it is more correct to use the
LINEAR_EXACT since we aren't counting enum values. Chromes macros
actually have static asserts the values are or are not enums, but the
skia implementations do not.

Includes some minor updates to names to match chromes UMA macro values.

This still requires the chrome implementation of the new macro.

Bug: skia:10871
Change-Id: Idbc4d2fc649bbdefd0952a002c3327cb700b552b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329776
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Adlai Holler <adlai@google.com>
2020-10-27 14:35:20 +00:00
John Stiles
890363ae34 Prototype helper functions from FP files before use.
GLSL requires that functions are declared before first use. In most
cases, we avoid the requirement for explicit prototypes by this by
strategically ordering our functions within the emitted code, but an FP
file might reference its helper functions in any order or have helper
functions that cross-invoke each other, so prototypes should be emitted.

Change-Id: I3b9e9c9ec4bd5be90b4f71f8165af45364facf30
Bug: skia:10872
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329781
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2020-10-27 14:33:00 +00:00
John Stiles
6b58a33c16 Mangle function names as a separate step before emitting func-bodies.
This is necessary to support function calls in FP files properly; in
some cases, functions can be referenced before they have been emitted,
and we need to be able to name them.

This CL resolves the remaining errors in GrRecursion.cpp. There are
still additional errors in GrNestedCall.cpp that will be fixed in
followup CLs.

Change-Id: Iec98ef02ea6a98a9945a4e0e3cfa3537dff01305
Bug: skia:10684, skia:10872
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329676
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
2020-10-27 14:22:10 +00:00
Mike Klein
40f8107eab remove absl experiment
We've given up on Abseil, and these warnings are annoying:

    ... libtool: warning same member name (libabsl.escaping.o) ...

Bug: skia:10165
Change-Id: I144573206174cbe9b48fce8e86ed22eb4a4e29b3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329937
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-10-27 13:45:10 +00:00
Mike Klein
362780ca9e use ieee divide
Change-Id: I7a07790a7991bc3ec0f9ebfe4ff28e88f00ec0a7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329936
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-10-27 13:33:30 +00:00
Ethan Nicholas
6f87de7c27 Made IRNode smaller
This backs off a bit on the "stuff everything into IRNode" push, moving
the data of the big nodes back into them and significantly cutting the
size of IRNode. This isn't a complete revert of the changes to these
nodes - now that all of the fields have been hidden behind accessor
methods, it's merely an implementation detail where the data actually
lives, so these changes are much smaller and more targeted.

Change-Id: I84c770245f26dfe36651d0f482543505bd7f71ef
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329629
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2020-10-27 13:26:00 +00:00
skia-autoroll
7737a5bd25 Roll SwiftShader from bb66fa41a163 to c1839ee3cedd (1 revision)
https://swiftshader.googlesource.com/SwiftShader.git/+log/bb66fa41a163..c1839ee3cedd

2020-10-26 amaiorano@google.com Apply google3 upstream fixes for latest LLVM

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/swiftshader-skia-autoroll
Please CC jcgregorio@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/master/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Test-Debian10-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
Bug: None
Tbr: jcgregorio@google.com
Change-Id: Ie8858cfcf21d20784532ddce6eca5324eb0cfe38
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329843
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-10-27 04:56:40 +00:00
skia-autoroll
6e8d4b7ea1 Roll ANGLE from 29ca7186a688 to 98c5ff6b49b3 (14 revisions)
29ca7186a6..98c5ff6b49

2020-10-26 jmadill@chromium.org BinaryStream: Preserve 64-bit integer data.
2020-10-26 m.maiya@samsung.com Vulkan: Fix exposure requirements for EXT_texture_format_sRGB_override
2020-10-26 jmadill@chromium.org Capture/Replay Tests: Expand suppressions.
2020-10-26 m.maiya@samsung.com Vulkan: Add OES_shader_multisample_interpolation support
2020-10-26 jmadill@chromium.org Capture/Replay: Test improvements.
2020-10-26 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Vulkan-ValidationLayers from 7d11021098f2 to 03f6ffd1dc46 (27 revisions)
2020-10-26 geofflang@google.com GL: Use ANGLE_GL_TRY for draw calls.
2020-10-26 jmadill@chromium.org Output nullptr pointer parameters correctly.
2020-10-26 jmadill@chromium.org Re-enable crash testing in angle_unittests.
2020-10-26 jmadill@chromium.org Fix uninitialize state in ProgramState.
2020-10-26 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SPIRV-Tools from 69f07da41b3b to abe2eff36f3c (3 revisions)
2020-10-26 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 8012e62471be to bb66fa41a163 (3 revisions)
2020-10-26 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from 4787c9ad2595 to 5f7e3cf264a2 (303 revisions)
2020-10-26 cnorthrop@google.com Tests: Add Fate/Grand Order trace

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 jcgregorio@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/master/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: jcgregorio@google.com
Test: Test: angle_perftests --gtest_filter="*fate_grand_order*"
Change-Id: Ia186427c07975ced4d9e8803e1ec81d5d2b78bde
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329842
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-10-27 04:54:29 +00:00
skia-autoroll
584ad64ffa Roll Chromium from d37162e0b81d to 6d5913cebce3 (399 revisions)
d37162e0b8..6d5913cebc

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/chromium-skia-autoroll
Please CC jcgregorio@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/master/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Perf-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Release-All-CommandBuffer;skia/skia.primary:Test-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Debug-All-CommandBuffer
Tbr: jcgregorio@google.com
Change-Id: I983950a058851ae8d424795587ea19e7b229091e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329841
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-10-27 04:46:59 +00:00
skia-autoroll
9d474b8943 Roll Dawn from 42103bc2e911 to 41c24933da1e (2 revisions)
https://dawn.googlesource.com/dawn.git/+log/42103bc2e911..41c24933da1e

2020-10-26 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from 1bafdc3c45e7 to 57694c8dab3c (1 revision)
2020-10-26 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from f81c1081ea7d to 1bafdc3c45e7 (1 revision)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/dawn-skia-autoroll
Please CC rharrison@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/master/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Build-Debian10-Clang-x86_64-Debug-Dawn
Bug: None
Tbr: rharrison@google.com
Change-Id: Iaa6bebaa076e329e3659c6aee67a09843d243200
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329840
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-10-27 04:35:59 +00:00
Chris Dalton
0e13db707f Clean up GrPathUtils
Removes unused code, including utilities for dealing with KLM
functionals for the implicit cubic function. The implicit has proven
to not be a very good tool for rendering cubics.

Change-Id: I577b50a9eb296c52dc0101a20394480a4a008654
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329440
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2020-10-26 21:37:26 +00:00
Chris Dalton
81b270a659 Optimize SkChopCubicAt to chop at two points at once
Adds an SkChopCubicAt overload that performs two chops at once in
SIMD. Also updates SkChopCubicAt to accept T values of 0 and 1. This
has been the source of bugs in the past.

Bug: skia:10419
Change-Id: Ic8a482a69192fb1685f3766411cbdceed830f9b7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/327436
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2020-10-26 21:36:25 +00:00
Kevin Lubick
36af02d2ef Add define to WASM GM build
Change-Id: I6a2ddfa22da736a5303c60379c1216f6a3d7e7e5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329719
Reviewed-by: Herb Derby <herb@google.com>
2020-10-26 20:50:13 +00:00
Robert Phillips
3ac83b2f91 Add additional GrThreadSafeCache test case
and flush out some non-substantive changes; namely:
  whitespace changes
  tweak what is stored in TessInfo
  change createMesh to be CreateMesh

Bug: 1108408
Change-Id: Ife9a0e500b9f51db597350b0257b20efece03bdc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329633
Reviewed-by: Adlai Holler <adlai@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2020-10-26 19:42:15 +00:00
Herb Derby
c76d4096af add API for Op creation
Introduce three calls on GrOp: Make, MakeWithExtraMemory,
and MakeWithProcessorSet. Instead of returning
unique_ptr<GrOp>, they return a type of GrOp::OpOwner.
GrOp::OpOwner safely deletes the op when it goes out
of scope for either new/delete or GrOpMemoryPool
allocations.

In order to make the code easier to refactor, I
eliminated MakeArg from the helpers.

Change-Id: Icfd697906f3147a8734575d08bd7195e7517383a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/323778
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2020-10-26 18:51:15 +00:00
Mike Klein
3dd8def458 tweak build for msan swiftshader
c.f. https://swiftshader.googlesource.com/SwiftShader.git/+/268fd73221d63a671d838de7f94a727e4fd0f04e%5E%21/#F0

Cq-Include-Trybots: skia/skia.primary:Build-Debian10-Clang-x86_64-Debug-SwiftShader_MSAN
Change-Id: I619808b581d01fa91d1e5a67766bd660904a5c5f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329604
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-10-26 18:41:45 +00:00
John Stiles
aaea0d98fb Update nameVariable to return the variable name directly.
Previously, the generated name was passed back in a SkString-pointer
output parameter. Directly returning the SkString simplified nearly
every call site, and made none of them worse.

Change-Id: Ied57adcf8fb087a301641adad437d8a68f8d3297
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329622
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2020-10-26 17:45:35 +00:00
Brian Osman
faa1693133 Slight tweak to SkTHashMap natvis support
Previously, there was no way to look at the key (beyond the
DisplayString used in the tree), so for complex key types, this is
better.

No-Try: true
Change-Id: I44b44192dde13b3264f7e5114bf0bf933a4cdd97
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329632
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2020-10-26 17:12:37 +00:00
John Stiles
d2a3a5b3b4 Add support for fFormatArgs in .fp-file inner functions.
Previously, we'd just emit functions with `%s` in their function bodies.
Also, the fFormatArgs wouldn't get cleaned up, so subsequent code would
fill in the wrong format arguments in each place.

There are still problems with function calls (`sample` is broken;
function names are accessed before they've been declared or initialized)
but this is a step in the right direction.

Bug: skia:10684
Change-Id: I7399a71d44ebba5049703484ec9933dffbe8e2b9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329417
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
2020-10-26 16:15:33 +00:00
Tyler Denniston
5bbbb49f1d Miter joins for toy variable width stroke
The major difference in computing the join geometry is just that we must
use normal and radius information from the approximated offsets, instead
of the input geometry. All that effectively means is that we need to
stroke the next segment prior to being able to add a join with the
previous segment.

Change-Id: I44d9015cf534deeae27db3c3faab965aee3e930b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329618
Reviewed-by: Tyler Denniston <tdenniston@google.com>
Commit-Queue: Tyler Denniston <tdenniston@google.com>
2020-10-26 15:57:23 +00:00
Brian Osman
010ce6a15a Add ProgramUsage side-car to track variable and function references
Automatically computed once IR generation is complete, and then used
throughout optimization and inlining, and the backend generators.
Optimization and inlining are reworked to keep the data up-to-date as
they edit the IR.

Bug: skia:10589
Change-Id: Iaded42d8157732dd6fe05f74c5b7bb8366916635
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/328382
Reviewed-by: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2020-10-26 15:25:03 +00:00
Mike Klein
0a7e2fa5d5 remove dead computeSegmentMask()
Bug: skia:10866
Change-Id: I06c675a423380d30017ebcc5485d556211d403fa
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329390
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
2020-10-26 15:23:43 +00:00
Jim Van Verth
ddb3c34cd5 Fix GPU capture for Metal test apps.
Creating the next command buffer immediately seems to confuse
the Metal GPU capture command in Xcode. If the command buffer isn't
used until the next frame it apparently doesn't include it in the
capture. The solution is to delay creation until we first need it.

Change-Id: I95fea78a68356d319418ca15bd852e34d9efa12b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329416
Reviewed-by: Adlai Holler <adlai@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2020-10-26 15:14:13 +00:00
Tyler Denniston
189ecd485a Add toy variable-width stroker sample
- Currently supports single-segment paths (lines or quads). Doesn't
  handle joins.
- Cubics are easy to add but not supported yet.
- No effort was made on performance optimization.
- Will likely be relocated eventually into an experimental SkPathEffect.

Change-Id: I35073d1d9dbc03a5423fda3bb20da005964c97d6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329256
Reviewed-by: Chris Dalton <csmartdalton@google.com>
Commit-Queue: Tyler Denniston <tdenniston@google.com>
2020-10-26 14:43:03 +00:00
skia-autoroll
c53c8283aa Roll ANGLE from 097f307e75a4 to 29ca7186a688 (39 revisions)
097f307e75..29ca7186a6

2020-10-26 cnorthrop@google.com Tests: Add Dragon Ball Legends trace
2020-10-26 cnorthrop@google.com Tests: Add World of Tanks Blitz trace
2020-10-25 jmadill@chromium.org Revert "Vulkan: Make DescriptorPoolHelper a Resource"
2020-10-25 jmadill@chromium.org Skip flaky tests on Win7/NVIDIA/GLES.
2020-10-25 jmadill@chromium.org Adjust TestSuite test timeout values.
2020-10-25 jmadill@chromium.org Re-land "Link C++ histogram support into angle_perftests."
2020-10-25 lehoangq@gmail.com Metal: Fix 2D array texture's robust resource init
2020-10-25 lehoangq@gmail.com Metal: Implement sampler object & shadow compare mode
2020-10-25 m.maiya@samsung.com Check for precision match of uniforms only if there is static use
2020-10-24 jmadill@chromium.org Expand Mac XFB suppression.
2020-10-24 jmadill@chromium.org Suppress failing Windows 7 test.
2020-10-24 jmadill@chromium.org Disable timing out Vulkan GLES 1 test.
2020-10-24 lehoangq@gmail.com Metal: Partially implement EXT_debug_marker
2020-10-24 lehoangq@gmail.com Metal: Implement glRenderbufferStorageMultisample(ANGLE)
2020-10-24 lehoangq@gmail.com Metal: Support integer textures.
2020-10-24 syoussefi@chromium.org Vulkan: Dirty pipeline and desc set after mid-RP clear with draw
2020-10-24 syoussefi@chromium.org Vulkan: Assert that attributes in shader info map are active
2020-10-24 timvp@google.com Fixes to roll ANGLE into AOSP
2020-10-24 jmadill@chromium.org Tests: Remove standalone duplication.
2020-10-23 timvp@google.com Revert "Link C++ histogram support into angle_perftests."
2020-10-23 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from e203e4bcf072 to 4787c9ad2595 (240 revisions)
2020-10-23 jonahr@google.com Suppress VUID-vkCmdDraw-None-02698 validation
2020-10-23 jmadill@chromium.org Test Runner: Only run watchdog in child processes.
2020-10-23 jmadill@chromium.org Vulkan: Refactor how finishToSerial() retires commands.
2020-10-23 syoussefi@chromium.org Vulkan: Drop RelaxedPrecision from aliased attributes
2020-10-23 cnorthrop@google.com Vulkan: Reduce scope of clear workaround
2020-10-23 jmadill@chromium.org Make capture replay tests exectuable.
2020-10-23 jmadill@chromium.org Vulkan: sRGB cleanups.
2020-10-23 jmadill@chromium.org Trace Tests: Print trace download progress.
2020-10-23 timvp@google.com Vulkan: Make DescriptorPoolHelper a Resource
2020-10-23 jmadill@chromium.org Link C++ histogram support into angle_perftests.
2020-10-23 courtneygo@google.com Re-enable dEQP-EGL.functional.fence_sync.*
2020-10-23 jmadill@chromium.org Clean up test runner TODOs.
2020-10-23 angle-autoroll@skia-public.iam.gserviceaccount.com Roll glslang from ea52b3c2d270 to 3b334b2b8e1a (1 revision)
2020-10-23 jmadill@chromium.org Temporarily duplicate standalone tests.
2020-10-23 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from e02d8938821a to 8012e62471be (1 revision)
2020-10-23 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SPIRV-Tools from 6fac705e7616 to 69f07da41b3b (24 revisions)
2020-10-23 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from cb0c1533ad91 to e203e4bcf072 (25 revisions)
2020-10-23 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from 8832c373d22b to cb0c1533ad91 (272 revisions)

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 jcgregorio@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/master/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: jcgregorio@google.com
Test: Test: AOSP PresubmitTest: Test: GLES1ConformanceTest.AmbLight/ES1_VulkanTest: Test: MultithreadingTest::MultiContextDrawSmallDescriptorPools()Test: Test: angle_perftest --gtest_filter="*free_fire*"Test: Test: angle_perftests --gtest_filter="*dragon_ball_legends*"Test: Test: angle_perftests --gtest_filter="*world_of_tanks_blitz*"
Change-Id: Ifa8d4200dff903e23a84a99985a212b47ddca20e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329519
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-10-26 13:41:03 +00:00
skia-autoroll
87cf830352 Roll SwiftShader from 8012e62471be to bb66fa41a163 (3 revisions)
https://swiftshader.googlesource.com/SwiftShader.git/+log/8012e62471be..bb66fa41a163

2020-10-24 amaiorano@google.com LLVMJIT: fix asserts in latest LLVM
2020-10-24 capn@google.com Support MemorySanitizer builds with CMake
2020-10-23 srisser@google.com Implement VK_KHR_shader_subgroup_extended_types

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/swiftshader-skia-autoroll
Please CC jcgregorio@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/master/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Test-Debian10-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
Bug: None
Tbr: jcgregorio@google.com
Change-Id: I75576268c29c8b16b96f051181669b3339d182d2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329520
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-10-26 13:32:38 +00:00
skia-autoroll
c493eabd56 Roll Dawn from ade9a5235c73 to 42103bc2e911 (12 revisions)
https://dawn.googlesource.com/dawn.git/+log/ade9a5235c73..42103bc2e911

2020-10-24 jiawei.shao@intel.com Fix crash when device is removed before CreateReady*Pipeline callback
2020-10-24 jiawei.shao@intel.com Treat VK_SUBOPTIMAL_KHR as a valid return value of vkQueuePresentKHR
2020-10-23 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from 9ab6e8b9eb0e to f81c1081ea7d (1 revision)
2020-10-23 kainino@chromium.org Implement new formula for requiredBytesInCopy
2020-10-23 enga@chromium.org Validate texture aspect on TextureView creation
2020-10-23 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from e6fda61ef0c4 to 9ab6e8b9eb0e (1 revision)
2020-10-23 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from 79d271580e21 to e6fda61ef0c4 (1 revision)
2020-10-23 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from 1b1d2a590744 to 79d271580e21 (2 revisions)
2020-10-23 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from 88d705dc85ff to 1b1d2a590744 (1 revision)
2020-10-23 yunchao.he@intel.com Minor changes in TextureValidationTests
2020-10-23 dj2@everburning.com CMake updates.
2020-10-23 cwallez@chromium.org Slightly improve a RenderPipeline error message.

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/dawn-skia-autoroll
Please CC dsinclair@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/master/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Build-Debian10-Clang-x86_64-Debug-Dawn
Bug: None
Tbr: dsinclair@google.com
Change-Id: I6ff4d53e705fd22bb18039845a1f3b4e469597be
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329518
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-10-26 13:27:43 +00:00
skia-autoroll
a8ca5b90e1 Roll Chromium from e47bf15edfc4 to d37162e0b81d (552 revisions)
e47bf15edf..d37162e0b8

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/chromium-skia-autoroll
Please CC jcgregorio@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/master/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Perf-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Release-All-CommandBuffer;skia/skia.primary:Test-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Debug-All-CommandBuffer
Tbr: jcgregorio@google.com
Change-Id: Ie6fc6be3a94e789e985a73fb021b71257c185749
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329517
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-10-26 13:27:33 +00:00
skia-recreate-skps
aea8273241 Update SKP version
Automatic commit by the RecreateSKPs bot.

TBR=rmistry@google.com
NO_MERGE_BUILDS

Change-Id: I8fc39162a4476119b786ec3adb297dc1c1fd4fe2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329450
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2020-10-25 06:31:41 +00:00
John Stiles
312535b47d Create sksl_small nanobench test.
This is the standard no-op shader that Viewer uses to blit the software
rasterizer's back-buffer to the screen. It modulates against white and
samples a texture using an identity matrix.

This gives us a realistic best-case-scenario test. `sksl_tiny` is too
small to be a realistic test (although it's a good data point to show
our ultimate speed-of-light).

Change-Id: Ic697cb1301752574ab63a9a0d7b07a0ff81c3a88
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329476
Auto-Submit: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2020-10-24 13:05:11 +00:00
John Stiles
071934570a Reduce the SkSL pool size to 512 nodes.
This is large enough to hold sksl_medium in its entirety; sksl_large
overflows somewhat, but it's still much better than nothing.

Change-Id: Ief22a94cc7f554ecc289905e9ccc20594eab6819
Bug: chromium:1141863
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329456
Auto-Submit: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2020-10-24 13:03:51 +00:00
Robert Phillips
375e1f6a64 Add unit tests for vertexData in the thread-safe cache
Bug: 1108408
Change-Id: Ia984324d559bb33bfe668a44ee93c6e39fc47685
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329419
Reviewed-by: Adlai Holler <adlai@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2020-10-23 23:21:56 +00:00
Ben Wagner
9abf719e67 Remove code guarded by SK_LEGACY_SURFACE_PROPS.
This removes the last of the SkFontHost LCD globals and the
SkSurfaceProps::kLegacyFontHost_InitType.

Bug: skia:3934
Change-Id: Ic2342a3ea3dbcd075d6817cbd3fc27274e376b8d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329364
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2020-10-23 22:41:36 +00:00
Chris Dalton
58a26a8362 Fix the formula for fNumRadialSegmentsPerRadian in GrStrokePatchBuilder
GrStrokePatchBuilder had the wrong formula. This CL moves the formula to
GrStrokeTessellateOp and calculates it in one spot for the builder and
tessellator both. It also fixes a bug that was hiding behind this
formula error and updates some variable names.

Bug: skia:10419
Change-Id: I908d3960b16cac8dca0d40ff4116a3f5c5beed06
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/328416
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2020-10-23 22:09:46 +00:00
John Stiles
8744a5c820 Add unit test for nested function calls in FP files.
`func1` and `func2` emit bad code, `return %s()`, and because they don't
consume their `%s` format argument. This leaves the format argument list
unbalanced and all future args are wrong.

Another serious problem is that we don't actually know the names of the
functions that they need to call, because we haven't emitted them yet.

`func3` is not emitted at all. Sampling from a fragment processor
apparently fails in this context.

This is a more general case repro for skia:10684--it turns out that
recursion in particular wasn't the issue, but nested function calls just
don't work properly at all in FP files. This wasn't an issue in practice
because we don't have any existing FP files which nest function calls,
and the inliner also tends to aggressively flatten everything out if we
don't explicitly disable it.

Change-Id: Iff029c459c7d90be566f9b4c9be0e3150e459866
Bug: skia:10684
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329367
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
2020-10-23 21:07:36 +00:00
Mike Reed
65dc579f13 Show cubic made up of 2 quads
Change-Id: Iafc2e6c23c8fa8a69424d7c42dfb4d2c59e1ea08
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329420
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2020-10-23 21:03:45 +00:00
John Stiles
80f240a3d3 Revive SkSLFPTestbed for basic verification of CPP/H codegen.
This brings back the basics from SkSLFPTest.cpp. This file was removed
entirely in http://review.skia.org/319029 but, in retrospect, it's still
a good idea for dm to verify that CPPCodeGen and HCodeGen can do their
jobs. And, like SkSLGLSLTestbed, this gives us a good place to attach
the debugger in dm for testing CPP/H-specific code generation bugs.

Change-Id: I514192bacd63021708dbd02a0276a3d55a43195f
Bug: skia:10684
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329370
Auto-Submit: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2020-10-23 20:32:35 +00:00
Robert Phillips
42a741a214 Allow vertex data to be stored in the thread safe cache
Bug: 1108408
Change-Id: I4d51b9c837fad435c7a3e6823390b519b785631b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329363
Reviewed-by: Adlai Holler <adlai@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2020-10-23 18:08:05 +00:00
Jim Van Verth
7c64798b3d Add control to toggle immediate/delayed MTLDrawable acquisition
Change-Id: Ia1b57dc4af65e7625659c147077b5e47b09b6b62
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329178
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2020-10-23 17:30:15 +00:00
Kevin Lubick
acdc283404 [canvaskit] Use portable fonts for GMs
This adds an Init() which should be called before any resources
are loaded or GMs/Tests are called.

This also adds a little helper in compile.sh for building only
a single GM, which can make local development faster given the
fact that emsdk doesn't do its final compilation/linking in
parallel.

Bug: skia:10812
Change-Id: I1a8932549b9ae951c153c0d49927bdc933c29657
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329358
Reviewed-by: Ben Wagner <bungeman@google.com>
2020-10-23 17:04:48 +00:00
John Stiles
530933006d Add unit test demonstrating recursion codegen bug.
The generated code does not assign to sk_OutColor correctly; it assigns
into the `factorial` function name instead, which doesn't make sense.

Change-Id: Ibad1d47f2f9c4fbb410b5277cea6e1022daf8b9d
Bug: skia:10684
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329360
Commit-Queue: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2020-10-23 16:33:15 +00:00
John Stiles
9cef66fbf5 Fix use-after-free discovered by fuzzer.
In cases where multiple variables were declared on a single line, it is
legal for variable initialization-expressions to reference variables
declared earlier in the var-decl statement. It is NOT legal for the
inliner to move those references up to the previous statement, where the
variable doesn't exist yet.

This is mitigated by disabling the IRGenerator inliner for var-decls
past the first one in a var-decls statement. (The optimizer will still
pass over this code later and is able to inline it correctly, if it is
worth doing.)

Change-Id: I7a0d45eab20e30ed9f6b2f5c1251b6e0d8eeaea3
Bug: oss-fuzz:26167
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329357
Auto-Submit: John Stiles <johnstiles@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
2020-10-23 16:10:15 +00:00
John Stiles
15d8174fc9 Add unit test for self-referential initializer expressions.
These don't compile in GLSL, so they shouldn't compile in SkSL either--
and fortunately, they do not.

(In C++, and consequently in Metal, these expressions are considered
legal by the grammar and do compile, but generate garbage output.)

Change-Id: I6c7bea70b3d91677ccd8fcbad1eba123d655e856
Bug: skia:10694
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329359
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
2020-10-23 14:36:05 +00:00
skia-autoroll
58cf3fe83b Roll Dawn from 22505a5afe1f to ade9a5235c73 (2 revisions)
https://dawn.googlesource.com/dawn.git/+log/22505a5afe1f..ade9a5235c73

2020-10-22 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from 8f7c80347dc6 to 88d705dc85ff (1 revision)
2020-10-22 cwallez@chromium.org SwapChainVk: handle mismatching size and usage with a blit

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/dawn-skia-autoroll
Please CC dsinclair@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/master/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Build-Debian10-Clang-x86_64-Debug-Dawn
Bug: None
Tbr: dsinclair@google.com
Change-Id: I4129c68c903dc645410184dd3ec602861258b5bb
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329213
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-10-23 05:06:35 +00:00
skia-autoroll
075c527877 Roll SwiftShader from e02d8938821a to 8012e62471be (1 revision)
https://swiftshader.googlesource.com/SwiftShader.git/+log/e02d8938821a..8012e62471be

2020-10-22 srisser@google.com Update VkStringify to use vulkan.hpp to_string

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/swiftshader-skia-autoroll
Please CC egdaniel@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/master/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Test-Debian10-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
Bug: None
Tbr: egdaniel@google.com
Change-Id: I51ebb431c2b26293be1511c4baa47418ecae2e51
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329215
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-10-23 05:01:45 +00:00
skia-autoroll
3718e300e2 Roll ANGLE from d74754378f09 to 097f307e75a4 (10 revisions)
d74754378f..097f307e75

2020-10-23 courtneygo@google.com Vulkan: Fix segv referencing contextVk
2020-10-22 ianelliott@google.com Add run-time check in EVENT() to disable debug markers
2020-10-22 sugoi@chromium.org Allow rendering to half float in ES2 contexts when possible
2020-10-22 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from 72a62c652dc1 to 8832c373d22b (1033 revisions)
2020-10-22 cnorthrop@google.com Revert "Tests: Add FIFA Mobile trace"
2020-10-22 syoussefi@chromium.org Vulkan: Validate SPIR-V transformer at link time
2020-10-22 xiaoxuan.liu@arm.com Fix end2end tests VertexAttribute* failure
2020-10-22 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Vulkan-Loader from 970c132746b1 to 91ce213a1d88 (3 revisions)
2020-10-22 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 84f5eeb6dd9b to e02d8938821a (3 revisions)
2020-10-22 lexa.knyazev@gmail.com Vulkan: Fix invalid clamping of ES3 clear stencil values

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 egdaniel@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/master/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: egdaniel@google.com
Test: Test: angle_perftests -v --local-output --gtest_filter="TracePerfTest.Run/*nba*"
Change-Id: I3f65f226706d20c20d49de995e96614a9d6df407
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329214
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-10-23 04:54:15 +00:00
skia-autoroll
734a27a2f3 Roll Chromium from 502ec4ce30b3 to e47bf15edfc4 (424 revisions)
502ec4ce30..e47bf15edf

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/chromium-skia-autoroll
Please CC egdaniel@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/master/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Perf-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Release-All-CommandBuffer;skia/skia.primary:Test-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Debug-All-CommandBuffer
Tbr: egdaniel@google.com
Change-Id: I44ab1b7a82d3e7b5242e5bf7a1348cdf286e1865
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329212
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-10-23 04:47:15 +00:00
John Stiles
2d68ea3fbf Allow SkSL compilers to reuse SkSL Pools without reallocating.
When a Program is freed, rather than immediately disposing of its Pool,
it now sends it to Pool::Recycle, which holds onto it. If Pool::Create
is called, it satisfies the request by simply handing back the recycled
pool. Only one pool is kept in recycle storage at a time--recycling
more than one pool in a row will cause all but one to be freed. To avoid
holding onto Pool memory indefinitely, pool recycle storage is cleaned
up whenever a Compiler is destroyed.

Change-Id: I21c1ccde84507e344102d05506d869e62ca095a6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329175
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
2020-10-22 22:46:14 +00:00
Tyler Denniston
53281c7121 [svg] Add current node to render context
A couple of render-time decisions require knowledge of object bounding
boxes, such as gradients (whose default coordinate space is
"objectBoundingBox". This CL adds the current node being rendered to the
render context so that it can be accessed down-stack (for example, when
gradients are being resolved and added to the paint as Skia shaders).

Each node will overload the bounds computation, for now it just returns
empty bounds for all nodes. TBD if we want to cache bounds somewhere,
either inside the node object or in a separate cache.

Bug: skia:10842
Change-Id: I40061ffedcb840e4dd28dba6351421f5b4fc904b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/329221
Commit-Queue: Tyler Denniston <tdenniston@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
2020-10-22 21:01:04 +00:00