Commit Graph

56276 Commits

Author SHA1 Message Date
Ben Wagner
126002c27d Update minimum Linux versions
With M93 Chromium is dropping support for older Linux distributions.
The new minimum requirements are Ubuntu 18.04+, Debian 10+,
openSUSE 15.2+, or Fedora Linux 32+. Update Skia's minimum requirements
to match.

Change-Id: I280a0790d4ee4d803bc15e2e29828be692ea934e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/428983
Commit-Queue: Ben Wagner <bungeman@google.com>
Commit-Queue: Heather Miller <hcm@google.com>
Reviewed-by: Heather Miller <hcm@google.com>
2021-07-16 16:20:26 +00:00
Jorge Betancourt
5514beaf3b [androidkit] bind SkImageFilters to java shared library
SkImageFilter::image
SkImageFilter::blend
SkImageFilter::dropShadow
Change-Id: Ie8cce8a06a2f50b2b3c905097740cc10b91a6c86
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/428577
Commit-Queue: Jorge Betancourt <jmbetancourt@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
2021-07-16 16:18:55 +00:00
Ethan Nicholas
459777a1a4 Added AssertDSLObjectsReleased setting
Change-Id: Ia63f892305c2347e55560141880a0b6a124b84f6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/429196
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: John Stiles <johnstiles@google.com>
2021-07-16 16:13:35 +00:00
Chris Dalton
b22b41d55a Quit using atan(y,x) in stroke tessellation shaders
SwiftShader has a bug in atan(y,x), and it turns out we have the data
already available to compute the angle we need in a different way.

Bug: skia:12217
Bug: chromium:1229486
Bug: b/193856577
Change-Id: I9b2c5fca3b0495f034c379c79e82de75e255abc6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/429136
Auto-Submit: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Justin Novosad <junov@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2021-07-16 16:04:55 +00:00
Heather Miller
44cd93f4fa update release notes
Change-Id: Ida17b9d3da4d3a6489f62d2959379747a671fbab
Docs-Preview: https://skia.org/?cl=428982
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/428982
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
Reviewed-by: Heather Miller <hcm@google.com>
Commit-Queue: Heather Miller <hcm@google.com>
Auto-Submit: Heather Miller <hcm@google.com>
2021-07-16 16:03:35 +00:00
John Stiles
f2de1b8b4d Fix crash when drawing a GPU-backed surface onto raster.
We now null-check the result of recordingContext() before using it.

Thanks cqjjjzr2@gmail.com for the initial discovery and suggested fix.

Change-Id: Iafcf306f8cd9deb7147ef9c5c71a21907eedc01f
Bug: skia:12214
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/429098
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2021-07-16 15:12:43 +00:00
Ethan Nicholas
b18c1e2c27 DSL ReleaseProgram retains source and reports errors better
Change-Id: Id5923e1c1404bddf7f7da7d04bd91721ab637322
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/429096
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Reviewed-by: John Stiles <johnstiles@google.com>
2021-07-16 14:45:55 +00:00
Heather Miller
d970d81ea6 update Skia milestone to 94
Change-Id: I3bd0a1b856146172ef38c6392fdd9252480ae928
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/428980
Reviewed-by: Heather Miller <hcm@google.com>
Commit-Queue: Heather Miller <hcm@google.com>
2021-07-16 14:44:15 +00:00
recipe-roller
657e375a16 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls
recipe changes from upstream projects (depot_tools) into this repository.

depot_tools:
5eebf6fa78
  5eebf6f (mmoss@google.com)
      Add docstrings so gerrit_client subcommands display properly.

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.

R=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I09fb49a2e344e2bfedbe1a4d3f5cac5cf7249201
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/429037
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Bot-Commit: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2021-07-16 14:09:25 +00:00
skia-autoroll
385e0d77be Roll Chromium from 17781a5cd82e to a9426b211cb3 (504 revisions)
17781a5cd8..a9426b211c

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 johnstiles@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary: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: johnstiles@google.com
Change-Id: I8bfb1706c4274d3b9c4c29ce0ca40bc2af4fccd9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/428947
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-07-16 05:07:24 +00:00
skia-autoroll
2cad46c88a Roll ANGLE from db54b8dd65ed to 397fc145b8b3 (12 revisions)
db54b8dd65..397fc145b8

2021-07-16 jiajia.qin@intel.com Fix the ext-texture-norm16 with RG16 failures
2021-07-15 jonahr@google.com Enable SwANGLE on ozone headless
2021-07-15 thomasanderson@chromium.org [GLX] Allow usage of multiple visuals
2021-07-15 syoussefi@chromium.org Vulkan: SPIR-V Gen: Assignment between mismatching SPIR-V types
2021-07-15 syoussefi@chromium.org Vulkan: SPIR-V Gen: Support row-major blocks
2021-07-15 ynovikov@chromium.org Skip DrawRepeatUnalignedVboChange on Mac ARM Metal
2021-07-15 jmadill@chromium.org GL-CTS: Add option to run on D3D11 refrast.
2021-07-15 cnorthrop@google.com Vulkan: Suppress VVL errors triggered by external formats
2021-07-15 m.maiya@samsung.com Add YUV format utils and validation code
2021-07-15 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from a03f2d365426 to 7c4121a2cfd0 (1 revision)
2021-07-15 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from 47358b0400b8 to 8cd71c4b8d72 (448 revisions)
2021-07-15 timvp@google.com Capture/Replay: Refactor shared context handling

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 johnstiles@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Build-Debian10-Clang-x86_64-Release-ANGLE;skia/skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC8i5BEK-GPU-IntelIris655-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE
Tbr: johnstiles@google.com
Test: Test:
Test: Test: Manual MEC and replay of Magic Tiles 3, Candy Crush Soda Saga, Temple Run 2
Change-Id: Ia88c77c9012f51855b58dcc83a5cdc7e5267f3af
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/428948
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-07-16 05:03:34 +00:00
recipe-roller
e2a9bdfba4 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls
recipe changes from upstream projects (recipe_engine) into this repository.

recipe_engine:
a415797adb
  a415797 (yiwzhang@google.com)
      logging: fix logging level where more verbose indicates Debug l...

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.

R=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I298b5c740659fa54ff15797874645a23935c8719
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/429020
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Bot-Commit: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2021-07-16 02:57:54 +00:00
recipe-roller
763be55a9e Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls
recipe changes from upstream projects (recipe_engine) into this repository.

recipe_engine:
37fe06bd5a
  37fe06b (yiwzhang@google.com)
      py3: encode logdog namespace when supplied as env var

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.

R=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I2841284c2bec7a8e48039ac4c5b901809d7424cc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/429019
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Bot-Commit: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2021-07-16 01:47:25 +00:00
Chris Dalton
24f6879422 Run dmsaa on all supported Mac and SwiftShader bots
Bug: skia:11396
Change-Id: I02b733d348c0e1fafb3d05eb14d06d15faf86b07
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/429057
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2021-07-15 22:11:45 +00:00
John Stiles
55f0d7acfa Always enforce format specifiers on SkDebugf.
Change-Id: Icba60060ab4dec45c8ef1b1e2f35056626adc0a7
Bug: skia:12143, 192062380
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/428616
Commit-Queue: John Stiles <johnstiles@google.com>
Reviewed-by: Derek Sollenberger <djsollen@google.com>
2021-07-15 20:11:24 +00:00
Greg Daniel
63fd35484e Move GrGLAttachment to a factory model similar to other backends.
Bug: skia:12215
Change-Id: Ibd8d46c8e36bbde6a15f214dfc376622509dc199
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/428976
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
2021-07-15 19:51:41 +00:00
Chris Dalton
33d24414eb Don't call GrSurfaceDrawContext::setNeedsStencil until after splits
We used to call setNeedsStencil before potential opsTask splits due to
dst reads. This caused the code to assume the stencil was getting
cleared when it actually wasn't. This CL updates the code to not call
setNeedsStencil until all splits are finished.

Bug: skia:12153
Change-Id: I3eb973b77929677b2535e461948b73e93ee29111
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/428696
Auto-Submit: Chris Dalton <csmartdalton@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2021-07-15 19:42:45 +00:00
Brian Osman
060dd70d2c Add bloaty_treemap.py, for visualizing bloaty data
There is so much more that could be done here (some ideas in TODO
comments), but this greatly streamlines the process for average
developers to navigate the code-size of skia executables.

Currently, I'm using a locally built copy of bloaty, but we should see
about using DEPS or adding a fetch-able package to eliminate even more
friction.

Change-Id: I92186c0370a1ab8d2c8edd73932547402c43612d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/428959
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2021-07-15 19:32:04 +00:00
recipe-roller
78aa969b2f Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls
recipe changes from upstream projects (recipe_engine) into this repository.

recipe_engine:
df371124b4
  df37112 (yiwzhang@google.com)
      py3: make a few more modules python3 compatible

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.

R=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I0e1664b1781699caff7398116f98343b5f4aeba5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/429016
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Bot-Commit: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2021-07-15 18:39:05 +00:00
Jim Van Verth
3c8ae888b9 Revert "Fix directional shadows."
This reverts commit 6789b82401.

Reason for revert: Failing CK test.

Original change's description:
> Fix directional shadows.
>
> The xy offset calculation for drawShadow was not quite correct. Rather
> than normalizing the light vector and using the xy values of that as the
> base offset value, we should scale the light vector by 1/z.
>
> See https://github.com/flutter/engine/pull/27124#issuecomment-880182653
> for more detail.
>
> Bug: skia:10781
> Change-Id: Ib69a313cb96a532f8d89644e3d69f666a184e897
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/428880
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Jim Van Verth <jvanverth@google.com>

TBR=jvanverth@google.com,bsalomon@google.com

Change-Id: Id22c2113fc1b62109975b83a0dcda5b1b16380a8
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:10781
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/428977
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2021-07-15 17:53:35 +00:00
Jim Van Verth
6789b82401 Fix directional shadows.
The xy offset calculation for drawShadow was not quite correct. Rather
than normalizing the light vector and using the xy values of that as the
base offset value, we should scale the light vector by 1/z.

See https://github.com/flutter/engine/pull/27124#issuecomment-880182653
for more detail.

Bug: skia:10781
Change-Id: Ib69a313cb96a532f8d89644e3d69f666a184e897
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/428880
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2021-07-15 17:22:05 +00:00
Jim Van Verth
dfec4f98ef Metal: Add attachment support for RenderTargets and TextureRenderTargets
Bug: skia:12186
Change-Id: I8004fd44e59c0dc3b9ae3bb5fc408421c4976e30
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/427756
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2021-07-15 17:01:11 +00:00
Ethan Nicholas
a2d22b2e08 Broke DSLVar into separate subclasses
Previously, DSLVar represented local, global, and parameter variables.
This splits it into three separate subclasses.

In addition to just being a cleaner API in general, this also addresses
an issue we ran into with the upcoming DSLParser: previously, a global
DSLVar's storage was not set correctly until DeclareGlobal was called,
so an AddToSymbolTable call prior to DeclareGlobal would create the
SkSL variable with the wrong storage, causing spurious errors on
global-only modifiers. But holding off on the AddToSymbolTable tends to
break constructs like "int x = 0, y = x", so improving the API seemed
like the best way to address it.

Now that we have greater type safety around variables, we can
potentially avoid having to call AddToSymbolTable for DSLVar and
DSLGlobalVar altogether, since we know they are both supposed to end up
in the symbol table, but that isn't something I want to change in this
CL.

Change-Id: I5f390a7384ce0af6a2131d84f97fc5e5b318063f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/428576
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2021-07-15 15:40:06 +00:00
John Stiles
0397ae4e15 Reland "Add unit test confirming Runtime Blends match native blends."
This is a reland of 0b62a05d9a

Original change's description:
> Add unit test confirming Runtime Blends match native blends.
>
> We perform the same draw operation twice--once with a `setBlendMode`
> based blend, and then once more with `setBlender` and passing SkSL which
> is equivalent to the native blend op. If this test fails, it would
> indicate that Runtime Blends aren't being applied appropriately (or
> perhaps that a GPU's built-in blending modes are cutting corners?).
>
> Change-Id: I4ca1f9ed600d9ec733687cc6de7d3e2eb6e765c9
> Bug: skia:12080
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/428318
> Auto-Submit: John Stiles <johnstiles@google.com>
> Reviewed-by: Mike Reed <reed@google.com>
> Commit-Queue: John Stiles <johnstiles@google.com>

Bug: skia:12080
Change-Id: Idf4297314b133e5bce689a25d53063bff8469fac
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/428676
Reviewed-by: John Stiles <johnstiles@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
2021-07-15 15:19:14 +00:00
Brian Osman
7cf34848da Update SkSL fiddles embedded in user documentation
https://skia.org/docs/user/sksl/?cl=428878

Bug: skia:12213
Change-Id: Id85edabd0977942bd7bbd0ab3f0d3ecd85340411
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/428878
Auto-Submit: Brian Osman <brianosman@google.com>
Reviewed-by: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2021-07-15 15:12:31 +00:00
John Stiles
0e99fbe5da Add RuntimeBlendUtils to bazel.
This should allow http://review.skia.org/428617 to reland.

Change-Id: I85a79951c687323b97784d3a606dba2eaa3fd420
Bug: skia:12080
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/428619
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
2021-07-15 15:01:32 +00:00
recipe-roller
dd561d0214 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls
recipe changes from upstream projects (depot_tools) into this repository.

depot_tools:
48c947534d
  48c9475 (sokcevic@google.com)
      Add presubmit notice if buganizer bug is malformed

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.

R=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I5aab6b08e015cebc4dd5777dba19f8379952bbf7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/428816
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Bot-Commit: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2021-07-15 12:21:34 +00:00
Ben Wagner
7dc26fadc9 Call hb_face_count before hb_face_create
As pointed out at https://github.com/harfbuzz/harfbuzz/issues/248 one
should call hb_face_count to do a sanitizer check before calling
hb_face_create.

Change-Id: I71795962a027188d702274f84e3bfa6c15fcd130
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/428322
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2021-07-15 12:08:25 +00:00
Chris Dalton
2346aa0ee1 Stabilize the path bounds logic in tryAddPathToAtlas()
Accounts for empty, negative, NaN, and bounds that overflow an int
before attempting to add the path to an atlas.

Bug: chromium:1229463
Change-Id: I612b590e8102db359e06a7963c72e1958b82abc9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/428699
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Justin Novosad <junov@google.com>
2021-07-15 07:16:05 +00:00
skia-autoroll
7d336c9557 Roll Chromium from 378115c18d5c to 17781a5cd82e (457 revisions)
378115c18d..17781a5cd8

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 johnstiles@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary: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: johnstiles@google.com
Change-Id: Iffe2b765824ab7ff5185658add00febd4644a9a5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/428717
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-07-15 05:07:23 +00:00
skia-autoroll
dc2fa65671 Roll ANGLE from 2534ee4c5b9d to db54b8dd65ed (16 revisions)
2534ee4c5b..db54b8dd65

2021-07-14 m.maiya@samsung.com Add YUV format support to frontend
2021-07-14 m.maiya@samsung.com D3D: Update format table with new YUV formats
2021-07-14 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 015a6f8b338d to a03f2d365426 (30 revisions)
2021-07-14 m.maiya@samsung.com Vulkan: Add GL_ANGLE_yuv_internal_format extension
2021-07-14 cnorthrop@google.com Skip SourceAHBTarget2DExternalCycleThroughYuvTargetsNoData P4+VK
2021-07-14 syoussefi@chromium.org Vulkan: SPIR-V Gen: Add missing SampleRateShading capability
2021-07-14 m.maiya@samsung.com Vulkan: Handle incompatible immutable sampler formats
2021-07-14 jmadill@chromium.org Add environment variable args to trigger script.
2021-07-14 m.maiya@samsung.com Vulkan: Account for immutable samplers that need multiple descriptors
2021-07-14 cnorthrop@google.com Skip SimpleStateChangeTest.RedefineFramebufferTexture on NV+WIN
2021-07-14 jmadill@chromium.org Download rc binaries for win cross-compile.
2021-07-14 cheryl.wei@arm.com Vulkan: Translate border color's channel by image view format
2021-07-14 pkasting@chromium.org Roll third_party/glmark2/src/ 9e01aef1a..ca8de51fe (52 commits)
2021-07-14 syoussefi@chromium.org Vulkan: SPIR-V Gen: Enable GLSLTest*
2021-07-14 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 4716eec90fcb to ba18c78e4696 (1 revision)
2021-07-14 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from 624f8c7a15ff to 47358b0400b8 (511 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 johnstiles@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Build-Debian10-Clang-x86_64-Release-ANGLE;skia/skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC8i5BEK-GPU-IntelIris655-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE
Tbr: johnstiles@google.com
Test: Test: ImageTest.SourceAHBTarget2DExternalCycleThroughYuvTargetsNoData*Vulkan
Test: Test: SourceAHBTarget2DExternalCycleThroughYuvTargetsNoData
Change-Id: Id51376c6c2f50de468bb7492ef3008ac552fa121
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/428718
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-07-15 04:57:23 +00:00
Chris Dalton
0196a72318 Fix AAStrokeRectOp viewport clipping for nested rects
The code analyzes the nested rects in order to surmise stroke sizes.
When we clipped the nested rects before deducing a stroke size, it
led to a stroke size of 0 which made coverage 0 all throughout.

This CL changes the code to figure a stroke size before clipping, and
to outset the clip for the outer rect by the stroke size.

TBR=bsalomon@google.com

Bug: skia:12211
Change-Id: I15dde092df9b0cbd56c6023b91cd2d3430fde10a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/428656
Reviewed-by: Chris Dalton <csmartdalton@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2021-07-15 03:32:26 +00:00
Mike Reed
0547b914f6 Revert "Add unit test confirming Runtime Blends match native blends."
This reverts commit 0b62a05d9a.

Reason for revert: GetRuntimeBlendForBlendMode not found in google3

Does the new file that contains that not appear in google3's build?

Original change's description:
> Add unit test confirming Runtime Blends match native blends.
>
> We perform the same draw operation twice--once with a `setBlendMode`
> based blend, and then once more with `setBlender` and passing SkSL which
> is equivalent to the native blend op. If this test fails, it would
> indicate that Runtime Blends aren't being applied appropriately (or
> perhaps that a GPU's built-in blending modes are cutting corners?).
>
> Change-Id: I4ca1f9ed600d9ec733687cc6de7d3e2eb6e765c9
> Bug: skia:12080
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/428318
> Auto-Submit: John Stiles <johnstiles@google.com>
> Reviewed-by: Mike Reed <reed@google.com>
> Commit-Queue: John Stiles <johnstiles@google.com>

TBR=brianosman@google.com,reed@google.com,johnstiles@google.com

Change-Id: Idd5ca97cfc4b642d3f97fdbd1fe9bd108b56e3a6
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:12080
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/428617
Reviewed-by: Mike Reed <reed@google.com>
2021-07-15 00:50:14 +00:00
recipe-roller
04beaa0041 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls
recipe changes from upstream projects (depot_tools, recipe_engine) into this repository.

depot_tools:
1c7ef58cba~..cfac2ea76b00620545717667305e78179a8fb390
  1c7ef58 (gbeaty@chromium.org)
      [lucicfg] Update v1.26.0 -> v1.27.0.
  cfac2ea (chinmaygarde@google.com)
      Add fetch recipe for the Flutter Engine repository.

recipe_engine:
352f1cce5e
  352f1cc (yiwzhang@google.com)
      py3: introduce log-level argument and set level to error for te...

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.

R=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ifaf4dbbc273ff22081622a5941105503f3d4da8d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/428479
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Bot-Commit: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2021-07-15 00:37:53 +00:00
Chris Dalton
9081276b29 Fix an assert in attemptQuadOptimization
Change-Id: I076df1ee83e6be6cbb61c01e48d848fa25f179cd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/428478
Reviewed-by: John Stiles <johnstiles@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2021-07-15 00:21:22 +00:00
John Stiles
0b62a05d9a Add unit test confirming Runtime Blends match native blends.
We perform the same draw operation twice--once with a `setBlendMode`
based blend, and then once more with `setBlender` and passing SkSL which
is equivalent to the native blend op. If this test fails, it would
indicate that Runtime Blends aren't being applied appropriately (or
perhaps that a GPU's built-in blending modes are cutting corners?).

Change-Id: I4ca1f9ed600d9ec733687cc6de7d3e2eb6e765c9
Bug: skia:12080
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/428318
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
2021-07-14 21:51:03 +00:00
Chris Dalton
97f8590a80 Make AAStrokeRectOp compatible with DMSAA
Extends the outsets and insets in order to guarantee a full sample
mask on pixels with partial coverage. Due to skia:12206, we only
render miter stroks this way when using DMSAA.

Bug: skia:11396
Bug: skia:12206
Change-Id: I2d429b59a781d59861cd2fd2ee008076ec6e1e27
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/428016
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2021-07-14 21:20:24 +00:00
Chris Dalton
4f489100b4 Clip AAStrokeRectOp to viewport boundaries
This avoids interpolation precision issues with very large
coordinates.

Bug: skia:11396
Change-Id: I969a5c7dbd606db5fbbe8ddab775d058f243b9a7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/428281
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2021-07-14 21:19:35 +00:00
Chris Dalton
f08520e697 Drop support for disabling multisample on Mac
We have historically supported non-AA draws to MSAA targets by disabling
GL_MUlTISAMPLE. This only worked on some platforms though, since
disabling multisample isn't generally supported on GLES, Vulkan, or
Metal. In addition to being inconsistent across platforms, toggling
multisample also appears to be a de-optimization at best, and a
spectacular regression at worst.

This CL lowers the set of platforms that support multisample disable and
quits supporting it on Mac. In the near future we can hopefully drop
support completely.

Bug: skia:12196
Change-Id: I8c005c92b408ceb9740d809a84ae79abb8c79ef7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/427087
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2021-07-14 21:15:48 +00:00
Brian Salomon
f6c0d833c6 GrGLSLGeometryProcessor produces a map FP -> varying coords.
Removes the FPCoordTransformHandler that required code to iterate
FPs in the same order as GLSLGP when accessing varyings stored in
and array.

Bug: skia:12198
Change-Id: Ie906b56491bafd76778b241e5ec95b0b253364b6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/428197
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2021-07-14 21:04:43 +00:00
Chris Dalton
947a2eb3c0 Don't disable multisample for rendering text
Bug: skia:12196
Change-Id: I9fe942074c53dd1e230fa4cd10cee841a90878e4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/428477
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2021-07-14 21:00:13 +00:00
Chris Dalton
3febc61414 Revert "Add an isinf() polyfill for tessellation shaders"
This reverts commit 6904303a66.

Reason for revert: I don't trust it

Original change's description:
> Add an isinf() polyfill for tessellation shaders
>
> Tessellation uses infinity to flag conics, and also as a conic weight
> that converts them into triangles. The es2 shading language doesn't
> support infinity. This CL adds a "portable infinity" mode, where we
> pretend inputs >= 2^126 are infinity. The rationale for doing this is
> that those numbers are so large, they will overflow if we try to do any
> bezier math with then anyway.
>
> Bug: chromium:1220246
> Change-Id: I3ad29ebb6fbbad5d23cfdba7a2717605009f8180
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/423697
> Commit-Queue: Chris Dalton <csmartdalton@google.com>
> Reviewed-by: Brian Osman <brianosman@google.com>

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: chromium:1220246
Change-Id: I1e8f555b766118a49987fd4c5ea150b59b07c1e9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/427920
Reviewed-by: Chris Dalton <csmartdalton@google.com>
Reviewed-by: John Stiles <johnstiles@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2021-07-14 20:50:53 +00:00
Chris Dalton
52b6f0dc03 Restore attemptQuadOptimization() before GrFillRRectOp
It looks like there are still optimizations here that we can benefit
from, including, but not limited to draws as clears. We should figure
out how to incorporate them into the new clipToShape() approach before
we quit calling attemptQuadOptimization().

Change-Id: I1a6380593c383ad11f0c346ae44077ed0e6d6cd2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/428376
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2021-07-14 20:48:17 +00:00
John Stiles
b5ac66c874 Add utility function GetRuntimeBlendForBlendMode for testing.
This will help us write tests confirming that runtime blends work the
same as the built-in blends.

Change-Id: I2f94aa7bbbc7124d09b490fc7509a4c281025307
Bug: skia:12080
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/427618
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
2021-07-14 20:39:09 +00:00
recipe-roller
e7b316f150 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls
recipe changes from upstream projects (recipe_engine) into this repository.

recipe_engine:
325823c861
  325823c (yiwzhang@google.com)
      Revert "Support running different py version simulation recipe...

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.

R=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: If2b8763d10690c8d1c5a4eacc6290d89aa97773e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/428476
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Bot-Commit: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2021-07-14 20:26:18 +00:00
recipe-roller
9ce3cfb8ce Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls
recipe changes from upstream projects (recipe_engine) into this repository.

recipe_engine:
6254729dfa
  6254729 (chromium-autoroll@skia-public.iam.gserviceaccount.com)
      Roll CAS Client from 4f6853eb883e to 5639b9acf1cf

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.

R=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ia34ba42ce1831cea15c1c08c3da523c7e531a5b7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/428282
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Bot-Commit: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2021-07-14 19:26:58 +00:00
skia-autoroll
e293d2cdaa Roll SK Tool from e2696256b252 to af23468c7173
https://skia.googlesource.com/buildbot.git/+log/e2696256b252..af23468c7173

2021-07-14 borenet@google.com [sk] Use LUCI_CONTEXT for auth with --ci

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/sk-tool-skia
Please CC rmistry@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Tbr: rmistry@google.com
Change-Id: I1f0443fe8a328a0a6222b87245df10e5e87c8955
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/428356
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-07-14 18:40:18 +00:00
Chris Dalton
36c1804e8f Don't disable multisample for GrDashLinePathRenderer
We've concluded that disabling multisample for coverage ops is too
slow. If we decide DashOp is triggering DMSAA too often we can update
the coverage version to be DMSAA compatible.

Bug: skia:11396
Change-Id: I7d23fb391ecd1695ab379ed7cf0b784d5491b7d0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/427978
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2021-07-14 16:50:48 +00:00
Chris Dalton
773a0b8c7e Use stencil clips when DMSAA is supported
Never use SW masks if we can use DMSAA instead.

Bug: skia:11396
Change-Id: I44b09e352b62bd5979586fb6b9db033dd058034f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/421196
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2021-07-14 16:10:58 +00:00
Chris Dalton
bdc2cd0744 Don't let interior AAStrokeRectOp edges cross
Fixes an issue where the interior AA edges of AAStrokeRectOp could
cross over one another, leading to double blends and incorrect
coverage.

Bug: skia:11396
Change-Id: I063defdc9b0691bdd39bc8515fe8a40bac9d29f5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/427977
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2021-07-14 16:10:08 +00:00