Commit Graph

47993 Commits

Author SHA1 Message Date
Florin Malita
8b70f4d052 [skottie] Video layer support
Bodymovin exports video layers similar to image layers, but assigns a
dedicated type id.

Since Skottie's ImageAsset interface already supports multi-frame
images, we can reuse the same mechanism for video.

Also, since we're adding sparse layer type handlers, we can now
fill all known Lottie layer enums and simplify the handling of camera
layers.

Change-Id: Ide6c6b3566d48f90f36f0143eaea7c62bbdedb2c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/285106
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2020-04-24 12:28:05 +00:00
Robert Phillips
11c6767a17 Create DDL for final composition step in DDL test harness
Besides better matching Viz's behavior this also reduces a lot of choppiness in the composition RenderTask DAG.

In the previous approach DDL draws and compositing draws would be interleaved resulting in a lot of render target swaps.

This necessitated some reorganization bc I wanted to reuse PromiseImageCallbackContext to manage the tiles' promiseImages.

Change-Id: I513bf060a69ff2bfe0e7b82ae72f149dfede632e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/285056
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2020-04-24 12:16:34 +00:00
skia-autoroll
92247633ff Roll ../src a49aa6883e5f..132edc1c6ff4 (451 commits)
a49aa6883e..132edc1c6f


Created with:
  gclient setdep -r ../src@132edc1c6f

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/+/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
Bug: None
Tbr: jcgregorio@google.com
Change-Id: If82f4f54caf702336c02f73966cdd01e073c3e4a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/285247
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-04-24 04:51:54 +00:00
skia-autoroll
7b8960397b Roll third_party/externals/angle2 913f4f421381..21c5af3151fb (11 commits)
913f4f4213..21c5af3151

git log 913f4f421381..21c5af3151fb --date=short --first-parent --format='%ad %ae %s'
2020-04-23 tobine@google.com Vulkan:Migrate events and queries to secondary Cmd Buffer
2020-04-23 b.schade@samsung.com Vulkan: Disable EXT_texture_sRGB_R8
2020-04-23 tobine@google.com Vulkan: Manual Validation Layer Roll
2020-04-23 j.vigil@samsung.com EGL: Implement EGL_ANDROID_native_fence_sync on vulkan
2020-04-23 jmadill@chromium.org Vulkan: Mask out implementation dirty bit in sync.
2020-04-23 jmadill@chromium.org Vulkan: Track allocated sampler counts.
2020-04-23 jmadill@chromium.org Vulkan: Add a sampler cache.
2020-04-23 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/vulkan-tools/src 84463fe2902f..7774c964d3df (1 commits)
2020-04-23 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/SwiftShader ceb6258ae101..5ab1f36a38aa (12 commits)
2020-04-23 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/glslang/src c9b28b9f3388..7d65f09b8311 (2 commits)
2020-04-23 timvp@google.com Fix program interface queries for arrays and built-ins

Created with:
  gclient setdep -r third_party/externals/angle2@21c5af3151fb

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/+/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
Bug: None
Tbr: jcgregorio@google.com
Change-Id: I98dc8524df03e311477b05290c9f18d23588037b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/285246
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-04-24 04:46:14 +00:00
skia-autoroll
9fd434227a Roll third_party/externals/swiftshader ceb6258ae101..91525d85792f (16 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/ceb6258ae101..91525d85792f

git log ceb6258ae101..91525d85792f --date=short --first-parent --format='%ad %ae %s'
2020-04-23 digit@google.com LLVM: Do not map read-only data sections as executable.
2020-04-23 digit@google.com Vulkan: Add vk_icdInitializeConnectToServiceCallback()
2020-04-23 amaiorano@google.com Kokoro: fix SWIFTSHADER_LESS_DEBUG_INFO not being set
2020-04-23 digit@google.com Update tests/presubmit.sh to accept Fuchsia bugs as fxb/#
2020-04-22 capn@google.com Fix specializing graphics routines for the pipeline layout
2020-04-22 bclayton@google.com SpirvShader: Add a flag for printing SPIRV execution
2020-04-22 bclayton@google.com Regres: Write logs to /dev/null
2020-04-22 amaiorano@google.com CMake: use target_compile_options/definitions for llvm
2020-04-22 amaiorano@google.com CMake: use target_link_options
2020-04-22 amaiorano@google.com CMake: require version 3.13
2020-04-22 amaiorano@google.com Kokoro: update CMake to latest version
2020-04-22 bclayton@google.com Regres: Limit the default number of threads to 100
2020-04-22 capn@google.com Pass only descriptor data to shader execution
2020-04-22 capn@google.com Reduce descriptor binding info exposure
2020-04-22 bclayton@google.com Kokoro: Fix ubuntu bots.
2020-04-22 digit@google.com Vulkan: Fix Fuchsia external semaphore fix tryWait().

Created with:
  gclient setdep -r third_party/externals/swiftshader@91525d85792f

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/+/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: I2b36d8de69e954c3923eb2726844faad8b54ed77
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/285249
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-04-24 04:39:14 +00:00
skia-autoroll
22e77dacc4 Roll third_party/externals/dawn 21d753a05346..635239faf8ef (7 commits)
https://dawn.googlesource.com/dawn.git/+log/21d753a05346..635239faf8ef

git log 21d753a05346..635239faf8ef --date=short --first-parent --format='%ad %ae %s'
2020-04-23 brandon1.jones@intel.com Non-Local Residency 2: Implement Non-Local Management Logic
2020-04-23 cwallez@chromium.org Special-case GetDefaultQueue in the wire
2020-04-23 bryan.bernhart@intel.com D3D12: Fix UBO and sampler heap encoding test.
2020-04-23 enga@chromium.org Reland "Slab-allocate VkDescriptorSets"
2020-04-23 rafael.cintron@microsoft.com Use Ref<TextureBase> instead of TextureBase* in more places
2020-04-23 sgilhuly@chromium.org Use dawn_has_build in dawn_component
2020-04-23 cwallez@chromium.org Revert "Slab-allocate VkDescriptorSets"

Also rolling transitive DEPS:
  https://chromium.googlesource.com/external/github.com/google/shaderc ced9c72d005e..ced9c72d005e
  https://chromium.googlesource.com/chromium/src/third_party/jinja2 b41863e42637..b41863e42637
  https://chromium.googlesource.com/chromium/src/third_party/markupsafe 8f45f5cfa000..8f45f5cfa000
  https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang 3f4e5c456306..3f4e5c456306

Created with:
  gclient setdep -r third_party/externals/dawn@635239faf8ef

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 cwallez@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/+/master/autoroll/README.md

Bug: None
Tbr: cwallez@google.com
Change-Id: I4b1bcab92c98e1ff60fe184e970699d1bb51f475
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/285248
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-04-24 04:34:54 +00:00
Brian Osman
f8865057e8 Make SkDevice preserve SkCanvas' 4x4 matrix
For now, getting the 4x4 matrix is still opt-in, and the vast majority
of code will continue to use the 3x3 matrix. This does fix marked
matrices when the CTM includes any Z.

Most of these changes ensure that APIs used to save and restore the CTM
operate on the 4x4, so that we don't accidentally discard Z.

Change-Id: Id6a690fc84c7fa1a0d686ec6d1cbeef6532c696e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284930
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2020-04-23 20:35:38 +00:00
Herb Derby
5e8fa6feb7 correct only spill once
In the scaler code, hoisted stack positions worked by chance. Add asserts,
and properly account for hoisted stack positions.

Change-Id: I8953d9f34dc110c7eadfd8855a02786aa6789043
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/285101
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-04-23 20:33:38 +00:00
Brian Osman
1985466ab1 Clean up Sample3D math a bit, fix a bug with world-space
The localToWorld matrix was still offset, because is was being
tagged while the transform still had things offset from the origin.
I've moved where it's marked to fix that bug, renamed the ID,
and done some other minor cleanup to hopefully clarify how things
fit together.

Change-Id: Idccc419882a2e89dee14128a6096ad7566d57f99
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/285103
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2020-04-23 20:12:13 +00:00
Brian Salomon
c71eaad217 Increase shader/pipeline timeouts in Metal backend
Locally on my imac this seems to make GMs produce more deterministic
results.

Pipeline timeouts still occur flakily happen in:
complexclip2_path_aa,
complexclip2_rrect_aa, and
complexclip2_rect_aa.
However, further increasing the pipeline timeout just causes those to
all eventually fail with "Compiler encountered an internal error".

Hoping this reduces the flakes on the bots as well.

Change-Id: If1951036934a1e4985aaca1c6f610ef44b69f30a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/285102
Commit-Queue: Brian Salomon <bsalomon@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Auto-Submit: Brian Salomon <bsalomon@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
2020-04-23 20:08:28 +00:00
Leon Scroggins
565f17f29d Reland "Make SkBitmap/SkPixmap::erase* do so in sRGB"
This reverts commit 832c931d5b.

Reason for revert: To confirm whether it was blocking, and update
Chrome if necessary

Bug: skia:8663

Original change's description:
> Revert "Make SkBitmap/SkPixmap::erase* do so in sRGB"
>
> This reverts commit 6f44647e52.
>
> Reason for revert: checking to see if this is blocking the Chrome roll
>
> Original change's description:
> > Make SkBitmap/SkPixmap::erase* do so in sRGB
> >
> > We generally consider untagged colors to be sRGB, so this makes us more
> > consistent with other parts of the API.
> >
> > Add a test.
> >
> > Cq-Include-Trybots: luci.chromium.try:linux-blink-rel
> > Change-Id: I5468c86ad92164797a65ffd9fbe471e01a97a2ca
> > Reviewed-on: https://skia-review.googlesource.com/c/179245
> > Commit-Queue: Leon Scroggins <scroggo@google.com>
> > Reviewed-by: Mike Reed <reed@google.com>
> > Reviewed-by: Mike Klein <mtklein@google.com>
> > Reviewed-by: Brian Osman <brianosman@google.com>
>
> TBR=djsollen@google.com,mtklein@google.com,scroggo@google.com,brianosman@google.com,reed@google.com
>
> Change-Id: Ia592adf2c790d294da1e32c1e83f9f34e81d79cc
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Cq-Include-Trybots: luci.chromium.try:linux-blink-rel
> Reviewed-on: https://skia-review.googlesource.com/c/182083
> Reviewed-by: Robert Phillips <robertphillips@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>

TBR=djsollen@google.com,mtklein@google.com,robertphillips@google.com,scroggo@google.com,brianosman@google.com,reed@google.com

Cq-Include-Trybots: luci.chromium.try:linux-blink-rel;luci.chromium.try:android-kitkat-arm-rel;luci.chromium.try:android-marshmallow-arm64-rel;luci.chromium.try:linux-chromeos-rel;luci.chromium.try:linux_chromium_asan_rel_ng;luci.chromium.try:win7_chromium_rel_ng;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:mac_chromium_rel_ng;luci.chromium.try:linux_chromium_tsan_rel_ng;luci.chromium.try:linux_chromium_rel_ng;

Change-Id: I226fd5b6f298fad648b1d05c8a8e806eac874a46
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/182142
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
2020-04-23 20:07:09 +00:00
Chris Dalton
ed6e82796b Add a flag for suppressing tessellation shaders
Change-Id: Ic29618c5eac9b3eed92ce0321162745645240d6c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/285142
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2020-04-23 18:35:48 +00:00
Greg Daniel
a5a6b3270d Track d3d resources using sk_sp instead of raw pointers.
Change-Id: Ie153902c1bf5cbbc724691ad91688a0b572174d0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284877
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2020-04-23 18:25:49 +00:00
Joe Gregorio
b25f30348b Revert "Move SkFrontBufferedStream into Android-only dir"
This reverts commit 513720f28e.

Reason for revert: Breaking the google3 roll:
   https://sponge.corp.google.com/invocation?tab=Build+Log&id=5f96970b-8171-4c2f-abf3-006e11b8fff9

Original change's description:
> Move SkFrontBufferedStream into Android-only dir
> 
> Bug: skia:10154
> 
> Add client_utils for code that is specifically for a single client.
> Move SkFrontBufferedStream into its android/ subdir. Rename the class
> to android::skia::FrontBufferedStream. Temporarily leave in
> SkFrontBufferedStream until Android updates to the new API.
> 
> Add a new optional target for client_utils/android. It is built in dev
> builds for testing, and when building for the Android framework.
> 
> Change-Id: Ie0f425051ea370aab7861d61150a3d6007214a93
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284721
> Commit-Queue: Leon Scroggins <scroggo@google.com>
> Reviewed-by: Mike Reed <reed@google.com>
> Reviewed-by: Derek Sollenberger <djsollen@google.com>

TBR=djsollen@google.com,scroggo@google.com,reed@google.com

Change-Id: Iaeedaed184cc35f507d5441631ae709e1c5cb1ac
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:10154
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/285100
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
Commit-Queue: Joe Gregorio <jcgregorio@google.com>
2020-04-23 18:23:30 +00:00
Leon Scroggins III
513720f28e Move SkFrontBufferedStream into Android-only dir
Bug: skia:10154

Add client_utils for code that is specifically for a single client.
Move SkFrontBufferedStream into its android/ subdir. Rename the class
to android::skia::FrontBufferedStream. Temporarily leave in
SkFrontBufferedStream until Android updates to the new API.

Add a new optional target for client_utils/android. It is built in dev
builds for testing, and when building for the Android framework.

Change-Id: Ie0f425051ea370aab7861d61150a3d6007214a93
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284721
Commit-Queue: Leon Scroggins <scroggo@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Derek Sollenberger <djsollen@google.com>
2020-04-23 17:02:18 +00:00
Mike Klein
71d6466d1e spill oldest reg
This appears to generate at least as fast code as spilling the register
that dies latest, and has two additional advantages:
   - it's _very_ predictable even when reading assembly
   - it's a little quicker to score, not requiring another table lookup

I'm still open to smart spill logic, but if we're going to have a simple
baseline for comparison, I suggest we might use this one.

Change-Id: Ic4775dbf0095b60cfa4b91e33ede352813d34934
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/285097
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-04-23 17:00:49 +00:00
Greg Daniel
fd77673c6d Set pipeline and related state on d3d command list.
Change-Id: I7d9d456b2a281ac7060042026eef44ffe2a635f4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284808
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Chris Dalton <csmartdalton@google.com>
2020-04-23 16:52:29 +00:00
Chris Dalton
04f9cdac66 Move tessellation wedges to cubic the buffer
Converts the "path" vertex buffer to a triangle buffer, and stores
wedges in the cubic buffer instead. This is the more natural location
to store them, and will allow us to add indirect draw support more
cleanly.

Change-Id: I3c3dafce1952dcdb4a93e60c3491be7395195117
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284987
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
2020-04-23 16:35:18 +00:00
Robert Phillips
6276819023 Allow SkThreadPool to be non-borrowing
The GPU thread has privileged access to the GPU so its work can't be easily borrowed.

Change-Id: I1eae4c86ff1c36cc1248f74fc48d76b1c243f0b2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284764
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2020-04-23 16:11:28 +00:00
Chris Dalton
42915c2cee Remove tessellate/GrPathParser
Moves this logic to happen directly ion GrTessellatePathOp instead.

Change-Id: Ia972b8c686bdf8efb8e414fbddc856401fe44920
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284999
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
2020-04-23 16:05:29 +00:00
Chris Dalton
8e2b69440a Update GrTriangulator to count curves
Now it returns the actual curve count instead of an "isLinear" bool.

Change-Id: Iaf2d5c6d96a59972bc7481c17580f2ac5e4b0a25
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284979
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2020-04-23 16:01:59 +00:00
Weston Tracey
13e3d7e59d [roller] Upgrade to CMake 3.13.5 to unbreak Swiftshader roller.
Change-Id: I2d4ee9ee4838392d9955a196f2513857cea8f9e4
Docs-Preview: https://skia.org/?cl=285096
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/285096
Commit-Queue: Weston Tracey <westont@google.com>
Auto-Submit: Weston Tracey <westont@google.com>
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
2020-04-23 15:54:58 +00:00
Stephen White
b965ff5973 Dawn: fix SamplerDescriptor params.
Remove comparison function from SamplerDescriptor, to avoid new
validation error.

Also remove other values which are at default.

Change-Id: I99631187f02d6b26748a34cf07c0bc672e2f0607
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/285014
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Stephen White <senorblanco@chromium.org>
2020-04-23 15:40:09 +00:00
Mike Klein
959986384f general dst() aliasing
Clarity refactors: rename alias_reg() to try_alias() and add in_reg().

Let dst() hint what register to try_alias(), and use this anywhere
aliasing is safe and we have an argument that's either already in a
register or is guaranteed to be pulled back into one, e.g r(x).

Cases like vsqrtps(dst(), any(x)) are somewhat interesting, in that if x
is in a register, it is a good thing to alias, but if it's on the stack,
it's better to just vsqrtps directly into the new register.

Change-Id: I05ecb78f660e9e4ea0df44f03e5de03b85a49cc7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/285086
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-04-23 15:36:39 +00:00
Greg Daniel
c31edc0b38 Add GrD3DRootSignature class and support.
This is the last thing needed for creating the pipeline state so this
change also starts creating the pipeline state and fixes errors involving
it.

Change-Id: Ifd1b63016d692d98cfa2a931957e857a5c53bec5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284527
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
2020-04-23 15:34:58 +00:00
Greg Daniel
5fc5c8128c Add GrD3DPipelineStateBuilder class.
This allows us to create the binary shaders for d3d. We generate spirv
from sksl, then use spirv-cross to turn it into hlsl. Then that gets
compiled into binary to be used in the pipeline.

Adds hooks GrD3DOpsRenderPass to start creating the pipeline.

Change-Id: Ie731dd945cdd9a00cebd78c1371a3d9784e4e1a3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284526
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2020-04-23 15:01:58 +00:00
Mike Klein
1006a91ee8 stack-aware codegen?
It occurs to me that now that we have some values living on the stack,
we might actually want to change our codegen based on what's in
registers or what's not.

E.g.

    a->vaddps(dst(), r(x), any(y))

is great if x is in a register, but it'd have been better as

    a->vaddps(dst(), r(y), any(x))

if x is on the stack.  I've made every symmetric op make this choice.

Change-Id: I1c65940d8e1a53d9dba44dd3a5f3e443517c8e20
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284983
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Herb Derby <herb@google.com>
2020-04-23 14:51:48 +00:00
Mike Klein
0f9207fc0e restore in-place FMAs
This adds alias_reg(Val v), aliasing dst() to r(v) if dies_here(v).
We can use this to execute most FMAs without that first vmovups.

Still thinking about the more general case of aliasing to reduce
register usage and not to cut instructions.  I've seen zero perf
impact from this change which _does_ actually remove instructions,
so I'm suspicious whether we'll find value doing more, and this
is a little complicated by having some arguments on the stack.

I guess you're using the metric of counting total spills?  That
might be worth minimizing even if I'm not seeing a wall clock diff.

Latest patch set restores all the ARM aliasing cases too.

Change-Id: Icd5241b58f36403a447e575f5edf88c5aca63e60
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284982
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Herb Derby <herb@google.com>
2020-04-23 14:35:48 +00:00
skia-recreate-skps
db68b5cb90 Update Go Deps
Change-Id: If0b9512a05bb2fa45a3f238d09110273f1877e95
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/285062
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2020-04-23 14:18:48 +00:00
Jim Van Verth
33630fc012 Implement GrMtlOpsRenderPass::onClear.
In certain corner cases the RenderTargetContext can end up injecting a
clear op into the op stream, so we need to handle that.

Bug: skia:10163
Change-Id: I57722d335bbc59bb9f0a767f774a4620dfde3f39
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284878
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Chinmay Garde <chinmaygarde@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
2020-04-23 14:15:58 +00:00
Florin Malita
bf03ac53f1 [skottie] Initial outer/inner glow
Supported controls:

  - color
  - opacity
  - size
  - inner source (edge/center)

Change-Id: I1ada43fe46fa5557e11279abca6128042acef965
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/285005
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2020-04-23 13:46:48 +00:00
Mike Klein
cefc2d9a45 convert Val* fingers to int regs
This is mostly a no-op bookkeeping change, converting our cleanup
fingers from pointing into regs[] to register IDs themselves, following
the usual convention of NA meaning none.

But this does allow us a future flexibility, letting us think of regs[]
as the inter-instruction register state, tracking intra-instruction
dst,x,y,z registers a little more carefully.

Under the old system, if you alias id and x into register 7, which Val
do we write in regs[7]?  Neither is exactly correct, and writing either
one breaks calls to r(the other).  But long term, the right answer will
be id... that's the Val that's in the register as the next instruction
begins.

So rx can answer "which register holds Val x?" during the instruction
even when we alias x and the destination, when regs[rx] == id, not x.

Spinning this off a precursor CL, but probably no point landing it
unless the CL that builds on this works out.

Change-Id: I528c46ec2d00a965125749562ef10b76f973a3cd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284955
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-04-23 13:38:49 +00:00
skia-autoroll
edccc66c32 Roll third_party/externals/dawn 64fcf3909ac9..21d753a05346 (6 commits)
https://dawn.googlesource.com/dawn.git/+log/64fcf3909ac9..21d753a05346

git log 64fcf3909ac9..21d753a05346 --date=short --first-parent --format='%ad %ae %s'
2020-04-23 yunchao.he@intel.com Read and write usage in compute pass is valid
2020-04-22 bryan.bernhart@intel.com D3D12: Enable sub-allocation for RTV/DSV heaps.
2020-04-22 enga@chromium.org Slab-allocate VkDescriptorSets
2020-04-22 brandon1.jones@intel.com Non-Local Residency 1: Get Non-Local Memory Info
2020-04-22 rafael.cintron@microsoft.com Allow Ref<Derived> -> Ref<Base> assignment, and move operations
2020-04-22 enga@chromium.org Add depth texture sampling and tests for only depth32float

Also rolling transitive DEPS:
  https://chromium.googlesource.com/chromium/src/third_party/jinja2 b41863e42637..b41863e42637
  https://chromium.googlesource.com/chromium/src/third_party/markupsafe 8f45f5cfa000..8f45f5cfa000
  https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang 3f4e5c456306..3f4e5c456306
  https://chromium.googlesource.com/external/github.com/google/shaderc ced9c72d005e..ced9c72d005e

Created with:
  gclient setdep -r third_party/externals/dawn@21d753a05346

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 cwallez@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/+/master/autoroll/README.md

Bug: None
Tbr: cwallez@google.com
Change-Id: If985b5ddd25a31fb925a397d15b97d99d87a8f5e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284991
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-04-23 05:36:58 +00:00
skia-autoroll
18590c8437 Roll third_party/externals/angle2 b7d6949b9112..913f4f421381 (10 commits)
b7d6949b91..913f4f4213

git log b7d6949b9112..913f4f421381 --date=short --first-parent --format='%ad %ae %s'
2020-04-23 timvp@google.com Vulkan: Support VS, FS, and CS in the same PPO
2020-04-22 j.vigil@samsung.com Refactor SyncHelper with vk::Resource
2020-04-22 jmadill@chromium.org Re-land: "Vulkan: Forward RenderBuffer/Surface dirty messages."
2020-04-22 timvp@google.com Vulkan: PPO: Allocate uniform descriptor set if list is empty
2020-04-22 lehoangq@gmail.com Implement GL_APPLE_clip_distance
2020-04-22 cclao@google.com Vulkan: add vulkan error code in the error message
2020-04-22 courtneygo@google.com Add capture support for FenceSync
2020-04-22 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/vulkan-validation-layers/src 09f4b08483bb..36d7cca6fdc9 (1 commits)
2020-04-22 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/SwiftShader ff772a7bcc98..ceb6258ae101 (1 commits)
2020-04-22 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/glslang/src 3f4e5c456306..c9b28b9f3388 (1 commits)

Created with:
  gclient setdep -r third_party/externals/angle2@913f4f421381

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/+/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
Bug: None
Tbr: jcgregorio@google.com
Change-Id: I11f435bfa8efaba8fdff7f4e53240fe92339a39d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284989
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-04-23 04:44:58 +00:00
skia-autoroll
5c5c868b52 Roll ../src edefbec8351f..a49aa6883e5f (498 commits)
edefbec835..a49aa6883e


Created with:
  gclient setdep -r ../src@a49aa6883e

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/+/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
Bug: None
Tbr: jcgregorio@google.com
Change-Id: I6c16a5aa97e5b37f6fbf815d358ec20a122d24ba
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284990
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-04-23 04:33:08 +00:00
Herb Derby
654f911f89 only spill once
dm --config 8888 --skvm
calls to store_to_stack 191730 -> 147944

nanobench --skvm --config 8888 -m bitmap_RGBA_8888_A_scale_bicubic
 174µs -> 169µs

nanobench -m SkVM_Overhead_VM
 26.7µs ->  27.1µs

Change-Id: I368cf954a5edaa317632ebf92e6725543186d96a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284929
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2020-04-22 21:00:56 +00:00
Greg Daniel
1204c4bc38 In GrAAConvexPathRenderer use a slightly smaller very large negative float.
This fixes in issue on some mobile gpu's where the larger negative value
caused precision issues when trying to interpolate.

Change-Id: Id76e6f96be2a7e46720794f54c24dafe567c5836
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284956
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2020-04-22 19:43:47 +00:00
Mike Klein
5e1a57f421 eliminate used_in_loop bit
We only need this used_in_loop bit now to decide whether to clean up
values in registers when they die.  Instead we can just extend the
lifetime of these values (anything that is can_hoist and used_in_loop
today) to the end of the program.

Change-Id: Ia0d29eccf81b97927add26f2f0f8226141485b8f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284833
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-04-22 17:58:07 +00:00
Mike Klein
a4b3aefae0 fix GCC builds?
Looks like this is a libstdc++ bug, not being able to make a const
structured binding to OptimizedInstruction?  There are non-const
OptimizedInstruction structured bindings in the file already...

Anyway, this structured binding was already a bit of a pain for
not being able to close over its elements in a lambda.  So toss
the whole thing and manually unpack a bunch of const variables.
Kind of nice to not have to unpack fields we don't use too.

All the const here is not particularly important, but I found it
reassuring during a dark time of unknown bugs.

Change-Id: I0942ff5a0ea20f29c54d9a6a49883d17e9b40e58
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284943
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-04-22 16:39:58 +00:00
Mike Klein
f583f5b66b perf tweaks
- cheap search for available registers before
    falling back on expensive scoring (big deal)
  - free dying registers proactively (medium)
  - free TMP registers manually (peanuts)

  This drops the SkVM_Overhead_VM bench from 49µs to
  38µs on my laptop.  It was 32µs before the refactor,
  so there may still be some potatoes to dig up here.

Change-Id: I6822613e9186278e80ec045e84517ac3a32d6f43
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284832
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-04-22 15:58:58 +00:00
Mike Klein
61ef3c42fb new JIT flow
Main ideas:

  A) Register / stack bookkeeping separated again from
     the code generation.  Each instruction can ask for
     registers, and we'll take care of tracking where
     the values should live uniformly.

  B) No registers we use during an instruction overlap.
     This makes reasoning about correctness much easier,
     and eliminates the need for most temporaries and
     strange manual register allocation (e.g. vgatherdps).

  C) r(Val) always gives a value in a register,
     but also any(Val) lets us use it from the stack.

Redid all the register management this time around
to be as simple as possible, hopefully eliminating
bugs.  A single `regs` array tracks the state of each
register, either holding a value ID or one of a few
sentinels.

Hoisting was hard but so obvious now!
Glad we worked out those phi nodes.

Tests pass, no diffs.
Perf looks improved everywhere I have looked, e.g.

    nanobench --config 8888 -m bitmap_RGBA_8888_A_scale_bilerp --skvm
        100µs -> 78µs

    nanobench --config 8888 -m bitmap_RGBA_8888_A_scale_bicubic --skvm
        631µs -> 245µs

In exchange a noticeable overhead hit, I'm sure fixable:

    nanobench -m SkVM_Overhead_VM
        32µs -> 49µs

Lots of TODOs left for follow ups:
   - allow some degree of dst/arg overlap, particularly for FMAs
   - track what values are on the stack, don't spill them twice
   - better heuristics for spilling
   - clean up any unused bits in OptimizedInstruction

Change-Id: Ib18c0adb1fe637a1242df3de30fbc37ccbc3c009
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284553
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Herb Derby <herb@google.com>
2020-04-22 15:51:08 +00:00
Mike Reed
0ce3e88e06 add std::function option to Click to simplify callsites
More sites to update, but can happen later

Change-Id: I75e8b60050c6af2a1563057f7fe9da84bc017370
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284876
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2020-04-22 15:41:28 +00:00
Julia Lavrova
b920a0b91b Small bugs in tests
Placeholders should not be taken in MinIntrinsicWidth.
Placeholders should allow Inf in some style values (as weird as it
sounds)
Bugs: skia:10138, skia:10159

Change-Id: I6ecc57b6ce778faf84b4d5752d24552b12c69fdb
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284731
Commit-Queue: Julia Lavrova <jlavrova@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2020-04-22 15:05:22 +00:00
skia-recreate-skps
68a2242827 Update Go Deps
Change-Id: I2d79f4517b3e86e13b35b853ac2fe674a9a01333
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284862
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2020-04-22 12:42:32 +00:00
skia-autoroll
a6cd5588d2 Roll third_party/externals/angle2 8f48ba9f256f..b7d6949b9112 (16 commits)
8f48ba9f25..b7d6949b91

git log 8f48ba9f256f..b7d6949b9112 --date=short --first-parent --format='%ad %ae %s'
2020-04-21 m.maiya@samsung.com Vulkan: Enable persistently mapped buffer objects
2020-04-21 tobine@google.com Vulkan: Allow commands to completely fill allocation
2020-04-21 geofflang@chromium.org GL: Make sure primitive restart emulation is disabled below GL 3.1
2020-04-21 cclao@google.com Vulkan: Skip load if depth/stencil value are undefined
2020-04-21 tobine@google.com Vulkan: Refactor SecondaryCommandBuffers class
2020-04-21 geofflang@google.com Don't redefine VMA_IMPLEMENTATION in build files and source
2020-04-21 jmadill@chromium.org Revert "Vulkan: Forward RenderBuffer/Surface dirty messages."
2020-04-21 tobine@google.com Vulkan: Manual validation roll
2020-04-21 geofflang@chromium.org Fix quotes around emails in WATCHLISTS
2020-04-21 cwallez@chromium.org CGL/EAGL: Fix default FBO size on Retina displays
2020-04-21 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/vulkan-loader/src 50eaecd721a2..4fb0e0374a39 (1 commits)
2020-04-21 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/spirv-tools/src 61b7de3c39f0..67f4838659f4 (1 commits)
2020-04-21 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/SwiftShader 068611f07d28..ff772a7bcc98 (1 commits)
2020-04-21 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/vulkan-tools/src 8824107d57d3..84463fe2902f (1 commits)
2020-04-21 cnorthrop@google.com Capture/Replay: More mid-execution capture support
2020-04-21 cnorthrop@google.com Capture/Replay: Handle default uniforms during MEC

Created with:
  gclient setdep -r third_party/externals/angle2@b7d6949b9112

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/+/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
Bug: None
Tbr: jcgregorio@google.com
Change-Id: I9b625ff8ff7581c04a7c27bf61ee0200936d1e69
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284835
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-04-22 04:44:55 +00:00
skia-autoroll
8cb1227f1e Roll third_party/externals/swiftshader ff772a7bcc98..ceb6258ae101 (1 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/ff772a7bcc98..ceb6258ae101

git log ff772a7bcc98..ceb6258ae101 --date=short --first-parent --format='%ad %ae %s'
2020-04-21 amaiorano@google.com CMake: fix astc code not being enabled correctly

Created with:
  gclient setdep -r third_party/externals/swiftshader@ceb6258ae101

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/+/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: I22e918e028d7fa25c79c754fa361f8de168d3023
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284837
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-04-22 04:38:05 +00:00
skia-autoroll
f68de1301f Roll ../src 91a975d4e6e0..edefbec8351f (480 commits)
91a975d4e6..edefbec835


Created with:
  gclient setdep -r ../src@edefbec835

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/+/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
Bug: None
Tbr: jcgregorio@google.com
Change-Id: I712f17f057ffa9fe3c9adf1c89aecd5368e6fd3e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284834
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-04-22 04:37:55 +00:00
skia-autoroll
84355424a8 Roll third_party/externals/dawn be08000cb52e..64fcf3909ac9 (6 commits)
https://dawn.googlesource.com/dawn.git/+log/be08000cb52e..64fcf3909ac9

git log be08000cb52e..64fcf3909ac9 --date=short --first-parent --format='%ad %ae %s'
2020-04-22 jiawei.shao@intel.com Allow one texture as write-only storage and sampled in one compute pass
2020-04-21 bryan.bernhart@intel.com D3D12: Remove increment during bindgroup population.
2020-04-21 rafael.cintron@microsoft.com Add Ref<T> specialization for Result
2020-04-21 cwallez@chromium.org Deprecate ShaderModuleDescriptor.code in favor of chained descriptor
2020-04-21 cwallez@chromium.org Make all backend::ShaderModule get SPIRV from the frontend
2020-04-21 cwallez@chromium.org Deprecate BG[L]Desc::binding[s|Count] in favor of entr[ies|yCount]

Also rolling transitive DEPS:
  https://chromium.googlesource.com/chromium/src/third_party/jinja2 b41863e42637..b41863e42637
  https://chromium.googlesource.com/chromium/src/third_party/markupsafe 8f45f5cfa000..8f45f5cfa000
  https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang 3f4e5c456306..3f4e5c456306
  https://chromium.googlesource.com/external/github.com/google/shaderc ced9c72d005e..ced9c72d005e

Created with:
  gclient setdep -r third_party/externals/dawn@64fcf3909ac9

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 cwallez@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/+/master/autoroll/README.md

Bug: None
Tbr: cwallez@google.com
Change-Id: I3c2665581c77a7facc1efc427faf2651f58a5cad
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284836
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-04-22 04:25:25 +00:00
Tyler Freeman
e9663db508 SVG: Added font-size and font-weight attributes to Text node
Change-Id: Ic929cb0119aefae490110648df6e9ea57700c6db
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/281838
Reviewed-by: Ben Wagner <bungeman@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2020-04-22 01:24:03 +00:00
Brian Salomon
2432d061ed Rename domain types and vars to subset.
Makes nomenclature more conistent across different classes.

Change-Id: I9f052bbd38082d95714702b2ae960c4e15fdc181
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284718
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
2020-04-21 21:43:45 +00:00