36008 Commits

Author SHA1 Message Date
skia-flutter-autoroll
bb483c639a Roll Skia from 68ab865c016f to aa82350f9cf4 (2 revisions) (flutter/engine#52695)
https://skia.googlesource.com/skia.git/+log/68ab865c016f..aa82350f9cf4

2024-05-09 skia-autoroll@skia-public.iam.gserviceaccount.com Roll SK Tool from 996de99d5bf7 to 58465be29a8d
2024-05-09 skia-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 76f7f8cfea80 to da334852e705 (5 revisions)

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

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2024-05-09 06:50:19 +00:00
skia-flutter-autoroll
930f044551 Roll Skia from f4e251cc8407 to 68ab865c016f (2 revisions) (flutter/engine#52694)
https://skia.googlesource.com/skia.git/+log/f4e251cc8407..68ab865c016f

2024-05-09 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Dawn from 8f1e9f35e615 to 23344086b8f1 (16 revisions)
2024-05-09 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Skia Infra from 825a4029e916 to 996de99d5bf7 (7 revisions)

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

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2024-05-09 05:58:34 +00:00
skia-flutter-autoroll
32737bb124 Roll Skia from 91088addfbd9 to f4e251cc8407 (1 revision) (flutter/engine#52693)
https://skia.googlesource.com/skia.git/+log/91088addfbd9..f4e251cc8407

2024-05-09 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from cb509807efbe to a99b3c8f05ae (10 revisions)

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

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2024-05-09 04:13:41 +00:00
skia-flutter-autoroll
4c21f59d9b Roll Skia from 4e83fac12783 to 91088addfbd9 (1 revision) (flutter/engine#52691)
https://skia.googlesource.com/skia.git/+log/4e83fac12783..91088addfbd9

2024-05-08 ccameron@chromium.org SkJpegMetadataDecoder: Clean-up and de-duplicate code

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

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2024-05-08 23:49:22 +00:00
skia-flutter-autoroll
f4d48ea545 Roll Skia from df446841e3cd to 4e83fac12783 (2 revisions) (flutter/engine#52688)
https://skia.googlesource.com/skia.git/+log/df446841e3cd..4e83fac12783

2024-05-08 robertphillips@google.com Revert "[graphite] Make MatrixConvolutionImageFilter stably keyed"
2024-05-08 jvanverth@google.com [graphite] Include Recording creation & submit in Viewer flush times

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

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2024-05-08 22:45:52 +00:00
Jenn Magder
d4f698b036 Fix UIVisualEffectView leak in platform view filter (flutter/engine#52591)
I found this while migrating `FlutterPlatformViews_Internal.mm` to ARC https://github.com/flutter/engine/pull/52535.  I'll land this first.

```objc
  if (_backdropFilterView != visualEffectView) {
    _backdropFilterView = [visualEffectView retain];
  }
```
should instead be something like:
```objc
  if (_backdropFilterView != visualEffectView) {
    id oldBackdropFilterView = _backdropFilterView;
    _backdropFilterView = [visualEffectView retain];
    [oldBackdropFilterView release];
  }
```
But that's already what the built-in MRC `nonatomic, retain` property setter does, so use that instead.

Added a test that passes on this PR and fails on main.
2024-05-08 22:40:16 +00:00
Jonah Williams
6bdc2f067f [Impeller] initialize ahb swapchain with max entries. (flutter/engine#52670)
The regression on the complex layout app is due to lazily constructing the AHBs on the first few frames:

https://flutter-flutter-perf.skia.org/e/?begin=1712175722&end=1715166324&queries=device_type%3DPixel_7_Pro%26sub_result%3D90th_percentile_frame_rasterizer_time_millis%26sub_result%3D99th_percentile_frame_rasterizer_time_millis%26sub_result%3Daverage_frame_rasterizer_time_millis%26sub_result%3Dworst_frame_rasterizer_time_millis%26test%3Dcomplex_layout_scroll_perf_impeller__timeline_summary&requestType=0&selected=commit%3D40701%26name%3D%252Carch%253Dintel%252Cbranch%253Dmaster%252Cconfig%253Ddefault%252Cdevice_type%253DPixel_7_Pro%252Cdevice_version%253Dnone%252Chost_type%253Dlinux%252Csub_result%253Dworst_frame_rasterizer_time_millis%252Ctest%253Dcomplex_layout_scroll_perf_impeller__timeline_summary%252C

Lets try eager initialization like the KHR swapchain does.
2024-05-08 22:31:28 +00:00
skia-flutter-autoroll
b46227a653 Roll Skia from 76f88de905be to df446841e3cd (3 revisions) (flutter/engine#52686)
https://skia.googlesource.com/skia.git/+log/76f88de905be..df446841e3cd

2024-05-08 michaelludwig@google.com [graphite] Move CopyAsDraw into TextureUtils
2024-05-08 skia-autoroll@skia-public.iam.gserviceaccount.com Roll skottie-base from 6d0d7269a8c9 to 8ecbf179f1e3
2024-05-08 bungeman@google.com [fontations] Use %zu instead of %ld in test

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

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2024-05-08 21:41:24 +00:00
Chinmay Garde
25fbc36567 Reland "Add host_profile_arm64 and host_release_arm64 local engine configurations." (flutter/engine#52633)
Adds --no-lto.

This reverts commit b607f660d1ad408357a9512631b61c810c13826a.
2024-05-08 21:01:08 +00:00
skia-flutter-autoroll
06a2705534 Roll Fuchsia Linux SDK from 27ZAbzJkEopmu0Emp... to RDVdjRvCxkJh2NLxS... (flutter/engine#52685)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/fuchsia-linux-sdk-flutter-engine
Please CC rmistry@google.com,zra@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2024-05-08 20:43:16 +00:00
skia-flutter-autoroll
e72a251ffd Roll Skia from 4019d8957cff to 76f88de905be (3 revisions) (flutter/engine#52684)
https://skia.googlesource.com/skia.git/+log/4019d8957cff..76f88de905be

2024-05-08 kjlubick@google.com Run gofmt
2024-05-08 jmbetancourt@google.com replace deprecated ALooper_pollAll calls with pollOnce
2024-05-08 egdaniel@google.com [Graphite] Add support for setting texture labels on backends.

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

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2024-05-08 20:34:14 +00:00
Chinmay Garde
ba93e2deae [Impeller] Start a glossary. (flutter/engine#52641)
Fixes https://github.com/flutter/flutter/issues/107609
2024-05-08 13:16:38 -07:00
auto-submit[bot]
147ed1ffec Reverts "Roll Dart SDK from b7cad2edae4b to 673b3aa8558a (1 revision) (#52677)" (flutter/engine#52683)
Reverts: flutter/engine#52677
Initiated by: zanderso
Reason for reverting: Failed roll to framework in https://github.com/flutter/flutter/pull/147999
Original PR Author: skia-flutter-autoroll

Reviewed By: {fluttergithubbot}

This change reverts the following previous change:

https://dart.googlesource.com/sdk.git/+log/b7cad2edae4b..673b3aa8558a

2024-05-08 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.5.0-139.0.dev

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

To file a bug in Flutter Engine: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2024-05-08 19:46:46 +00:00
skia-flutter-autoroll
62d04789cf Roll Skia from d965fc1fd319 to 4019d8957cff (2 revisions) (flutter/engine#52682)
https://skia.googlesource.com/skia.git/+log/d965fc1fd319..4019d8957cff

2024-05-08 brianosman@google.com Reland "Update clang_win and win_toolchain assets"
2024-05-08 kjlubick@google.com Fix experimental use of generate_cpp_files_for_headers

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

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2024-05-08 19:33:22 +00:00
gaaclarke
104eb98e62 Revert 7130c5c3b3f16d549bca6b81c51c751780c454d4 (flutter/engine#52680)
reverts https://github.com/flutter/engine/pull/52526
fixes https://github.com/flutter/flutter/issues/147989

That PR has broken playgrounds.  It's non essential so we can revert it an bdero can take a look whenever he gets another chance.

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-05-08 18:27:32 +00:00
skia-flutter-autoroll
45d12f0166 Roll Skia from d8427844b843 to d965fc1fd319 (4 revisions) (flutter/engine#52679)
https://skia.googlesource.com/skia.git/+log/d8427844b843..d965fc1fd319

2024-05-08 michaelludwig@google.com [graphite] Add child DrawTasks to DrawContexts when drawn; track pending reads
2024-05-08 robertphillips@google.com [graphite] Make MatrixConvolutionImageFilter stably keyed
2024-05-08 michaelludwig@google.com [graphite] Don't instantiate budgeted Surfaces immediately
2024-05-08 kjlubick@google.com Update rules to enforce IWYU in the modular build

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

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2024-05-08 18:21:04 +00:00
Jonah Williams
2cdd45bfd9 [Impeller] require and use backpressure for AHB swapchain. (flutter/engine#52676)
I think we might be buffer stuffing on the A02s specifically. Though I don't know if this will just "fix" it by turning off the swapchain for that device.

https://github.com/flutter/flutter/issues/147721
2024-05-08 17:59:55 +00:00
skia-flutter-autoroll
5bf6ecfef0 Roll Dart SDK from b7cad2edae4b to 673b3aa8558a (1 revision) (flutter/engine#52677)
https://dart.googlesource.com/sdk.git/+log/b7cad2edae4b..673b3aa8558a

2024-05-08 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.5.0-139.0.dev

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

To file a bug in Flutter Engine: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2024-05-08 17:57:57 +00:00
skia-flutter-autoroll
06f83e8d74 Roll Skia from c7794fee8063 to d8427844b843 (2 revisions) (flutter/engine#52671)
https://skia.googlesource.com/skia.git/+log/c7794fee8063..d8427844b843

2024-05-08 michaelludwig@google.com [graphite] Delete duplicate null check/warning
2024-05-08 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from e70a70873c7b to cb509807efbe (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/skia-flutter-autoroll
Please CC brianosman@google.com,egdaniel@google.com,rmistry@google.com,zra@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2024-05-08 16:08:23 +00:00
skia-flutter-autoroll
04ec74e561 Manual roll Dart SDK from a9cf6a411c71 to b7cad2edae4b (7 revisions) (flutter/engine#52669)
Manual roll requested by zra@google.com

https://dart.googlesource.com/sdk.git/+log/a9cf6a411c71..b7cad2edae4b

2024-05-08 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.5.0-138.0.dev
2024-05-08 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.5.0-137.0.dev
2024-05-08 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.5.0-136.0.dev
2024-05-07 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.5.0-135.0.dev
2024-05-07 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.5.0-134.0.dev
2024-05-07 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.5.0-133.0.dev
2024-05-07 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.5.0-132.0.dev

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

To file a bug in Flutter Engine: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2024-05-08 15:56:04 +00:00
Jonah Williams
e391972983 [Impeller] Update BlitPass::AddCopy to use destination_region instead of origin for buffer to texture copies. (flutter/engine#52555)
Based on https://github.com/flutter/engine/pull/52510

Work towards https://github.com/flutter/flutter/issues/138798

Change IPoint destination_origin to IRect destination_region, which allows us to specify an area smaller than the entire texture to replace. This will eventually allow us to only upload individual glyphs. This fixes the cubemap issue I previously hit: each face needs to track initialization separately.
2024-05-08 15:46:06 +00:00
Jim Graham
13d64bc737 DisplayListBuilder internal reorganization with better rendering op overlap detection (flutter/engine#52646)
This commit makes some long-needed internal improvements to the way that the DisplayListBuilder manages its per-save/saveLayer data. The information for layer bounds and matrix/clips is now maintained in the layer info structure itself rather than shared across a number of stack structures which required careful alignment of the 3 different stacks and made it more difficult to compare and update adjacent layers during save and restore operations.

The new code stores all information for a layer within a single structure and the save and restore operations can be more clear about which information they are getting or setting in the current and parent layers.

In addition, the layer bounds accumulations were updated to have a more flexible algorithm for detecting overlap of rendering operations for the opacity peephole optimization. Previously, more than one rendering op on a layer would prevent opacity peephole optimizations, but now the condition will be recognized until the first rendering op that overlaps the bounds of the previous rendering operations. This will help for some potentially common cases of 2 non-overlapping ops or even a list of rendering operations laid out in a row.
2024-05-08 15:23:48 +00:00
Zachary Anderson
f1ac521788 Roll reclient forward (flutter/engine#52632)
For https://github.com/flutter/flutter/issues/147750.

Depends on https://github.com/flutter/buildroot/pull/852.

This PR rolls forward reclient, the buildroot, and our RBE configs. The
new RBE configs do a few things. First they default the exec strategy to
`racing`. Second, they add a local wrapper script that passes the
correct value for `-fdebug-prefix-map` in both the local and remote
cases. Finally, they remove the canonicalization of the build's working
directory, so that the remote working directory will have the same name
as the local working directory. This solves the issue where the build
working directory contained a mysterious `set_by_reclient/a` component.
2024-05-08 08:07:25 -07:00
skia-flutter-autoroll
76b94a4bc4 Roll Skia from 2319f1ae8fe4 to c7794fee8063 (20 revisions) (flutter/engine#52668)
https://skia.googlesource.com/skia.git/+log/2319f1ae8fe4..c7794fee8063

2024-05-08 briansalomon@gmail.com [graphite] handle drawPath with oval/rrect as special case
2024-05-08 skia-autoroll@skia-public.iam.gserviceaccount.com Roll SK Tool from 825a4029e916 to 25a2a685e52e
2024-05-08 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Skia Infra from be0e106b41c7 to 825a4029e916 (7 revisions)
2024-05-08 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Dawn from 35243cd3490b to 8f1e9f35e615 (30 revisions)
2024-05-08 michaelludwig@google.com [graphite] Let Surface automatically generate mipmaps when rendering a picture image
2024-05-08 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 5fe3cf4db2e6 to e70a70873c7b (1 revision)
2024-05-07 scroggo@google.com Change CtsEnforcement for SurfaceAsyncReadPixels
2024-05-07 nicolettep@google.com [graphite] Add immutable sampler attribute to DescriptorData
2024-05-07 jvanverth@google.com Revert "[graphite] Fix use of linearFilterInset in texture shader."
2024-05-07 nicolettep@google.com [graphite] Add YCbCr GM to graphite
2024-05-07 brianosman@google.com Revert "Update clang_win and win_toolchain assets"
2024-05-07 jamesgk@google.com [graphite] Disable analytic blur for rrects
2024-05-07 brianosman@google.com Update clang_win and win_toolchain assets
2024-05-07 egdaniel@google.com [Graphite] Fix build for labels.
2024-05-07 johnstiles@google.com Add parentheses to permit constant folding.
2024-05-07 jvanverth@google.com [graphite] Fix use of linearFilterInset in texture shader.
2024-05-07 egdaniel@google.com [Graphite] Set labels on proxies for specific usages.
2024-05-07 kjlubick@google.com Add missing tag for zlib.h #include
2024-05-07 michaelludwig@google.com [graphite] Avoid unnecessary copy from makeImageSnapshot() in picture-shader rendering
2024-05-07 johnstiles@google.com Fix PathKit test.

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

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2024-05-08 14:55:33 +00:00
Jonah Williams
0fefa45af5 [Impeller] support requires readback from onscreen texture in experimental canvas. (flutter/engine#52640)
This doesn't yet add support for backdrop filters or emulated advanced blends, but will allow them to work if `surface_frame.framebuffer_info().supports_readback` is true.

part of https://github.com/flutter/flutter/issues/142054
2024-05-08 05:06:09 +00:00
Jonah Williams
a9b2bf0627 [Impeller] bump image count to 3 (flutter/engine#52650)
From testing on a Pixel 7 pro, we get constant destruction of buffers at 2, but not at 3, 4, or 5.

I suspect the problem is that when we stop pumping frames, we need to be able to hold all buffers that were in use. Since we support 2 frames in flight while one is encoding, that gives us 3 maximum buffers.
2024-05-08 03:04:17 +00:00
Chinmay Garde
23603387ff [Impeller] In the AHB swapchain, make the wait stages be non-temporaries. (flutter/engine#52644)
The reference to these was garbage in the submit info.
2024-05-08 00:10:04 +00:00
Jonah Williams
d790b88806 [Impeller] Support copy from buffer to texture for GLES blitpass, use blit pass to set contents in glyph atlas. (flutter/engine#52510)
part of https://github.com/flutter/flutter/issues/138798

Works around https://github.com/flutter/flutter/issues/144498 for the glyph atlas.

Adds BlitPass::AddCopy implementation for GLES, which is mostly a copy of Texture::SetContents. Updates the glyph atlas to use a blit pass and device private textures instead of set contents (which is unsafely on Metal).

This also removes DeviceBuffer::AsTexture, which isn't actually used anywhere - and creates a linear texture on iOS (and fails with an unsupported API on simulators).

Note that in general, we don't actually have support for hostVisible textures on GLES _or_ Vulkan. Instead, VMA is falling back to device private textures. We may want to, separately, remove the concept of host visible from textures - and similarly remove the concept of transient from buffers.
2024-05-08 00:02:22 +00:00
Chinmay Garde
1a916a2a18 [Impeller] Disable aging in the AHB swapchains and use FILO. (flutter/engine#52637)
The aging was causing elevated 9x percentile times after a long duration where no frames were rendered. The FILO queue behavior gives the fences the most time possible to signal and cause fewer GPU stalls. There are already no CPU stalls.
2024-05-07 23:15:04 +00:00
Matan Lurey
05ff169def Move Logger.test to an injected log output versus leaky abstraction. (flutter/engine#52639)
Previously, `Logger.test` was a leaky abstraction that stored a `@visibleForTesting` variable that was sometimes unused. It saved a few lines of code for tests, but doesn't seem necessary, so I swapped it out for a callback.
2024-05-07 22:56:17 +00:00
Zachary Anderson
676001e40a Fix links in rbe.md (flutter/engine#52635) 2024-05-07 22:05:05 +00:00
Matan Lurey
ea78cc7551 Move setting the logging level into the Logger constructor, refactor. (flutter/engine#52624)
Based on @zanderso's feedback here: https://github.com/flutter/engine/pull/52619#discussion_r1592868979.

I think this is the most succinct way to setup logging, it also doesn't seem to make sense to allow the level to be configured at runtime, so boom.
2024-05-07 21:00:54 +00:00
auto-submit[bot]
b607f660d1 Reverts "Add host_profile_arm64 and host_release_arm64 local engine configurations. (#52620)" (flutter/engine#52630)
Reverts: flutter/engine#52620
Initiated by: zanderso
Reason for reverting: Builds timing out in post submit. I think we should try relanding this with `--no-lto` passed to `gn`.
Original PR Author: chinmaygarde

Reviewed By: {zanderso}

This change reverts the following previous change:
These are used on macOS hosts during local engine development.
2024-05-07 20:34:51 +00:00
Matan Lurey
8618834019 Move verbose to environment.verbose, pass to ninja --verbose if provided. (flutter/engine#52619)
Closes https://github.com/flutter/flutter/issues/147894.

While doing this PR I realized we were basically passing `(bool verbose, Envrionment)` as a tuple around, so I just moved the concept _into_ `Environment` directly, and made the necessary code changes across the tool and tests.

To clarify, this does _not_ mimic the output of `ninja --verbose` _today_, because we also don't stream the output directly, and instead do terminal magic. Combined with a hypothetical fix for https://github.com/flutter/flutter/issues/147903, this would work exactly the same as before.

/cc @loic-sharma @johnmccutchan
2024-05-07 19:07:31 +00:00
Chinmay Garde
efda632b5e Add host_profile_arm64 and host_release_arm64 local engine configurations. (flutter/engine#52620)
These are used on macOS hosts during local engine development.
2024-05-07 18:52:22 +00:00
Chinmay Garde
0e83a760ef [Impeller] Wait for the previous AHB texture to be fully recyclable. (flutter/engine#52588)
The Android surface transaction completion handler documentation states:

```
Buffers which are replaced or removed from the scene in the transaction
invoking this callback may be reused after this point.
```

However, this is NOT sufficient. One also needs to be obtain the previous release fence and perform a wait for the buffer to be safely reusable.

This patch adds a GPU side wait for this fence using available extensions.

Fixes https://github.com/flutter/flutter/issues/147758
2024-05-07 18:33:50 +00:00
Jason Simmons
5b7970fdb3 Manual Skia roll to 2319f1ae8fe42525f8b6a1969a1cee67bdbee290 (flutter/engine#52615)
This commit added a new source file (src/codec/SkJpegMetadataDecoderImpl.cpp)
2024-05-07 18:21:05 +00:00
Jonah Williams
96584fbd2b [Impeller] allow cloning a rectangle packer with an increased size. (flutter/engine#52563)
Work towards https://github.com/flutter/flutter/issues/138798

Allow cloning a rectangle packer with all existing skylines preserved, but the size increased. This will allow us to preserve the positioning and state of all glyphs when the atlas size is increased, which is necessary for the "blit contents to top right of new texture" approach for improving append performance.
EDIT: I mean top left!
2024-05-07 18:09:54 +00:00
auto-submit[bot]
9c144b5c05 Reverts "Various documentation improvements (#52600)" (flutter/engine#52607)
Reverts: flutter/engine#52600
Initiated by: zanderso
Reason for reverting: Failing to roll to the framework on a snippet analysis failure: https://logs.chromium.org/logs/flutter/buildbucket/cr-buildbucket/8748612253464522177/+/u/run_test.dart_for_analyze_shard_and_subshard_None/stdout
Original PR Author: Hixie

Reviewed By: {jonahwilliams}

This change reverts the following previous change:
No description provided.
2024-05-07 14:09:47 +00:00
Ian Hickson
a6ad5a09b2 Various documentation improvements (flutter/engine#52600) 2024-05-07 06:59:54 +00:00
dependabot[bot]
6b63ba17bf Bump actions/checkout from 4.1.4 to 4.1.5 (flutter/engine#52599)
Bumps [actions/checkout](https://github.com/actions/checkout) from 4.1.4 to 4.1.5.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/actions/checkout/releases">actions/checkout's releases</a>.</em></p>
<blockquote>
<h2>v4.1.5</h2>
<h2>What's Changed</h2>
<ul>
<li>Update NPM dependencies by <a href="https://github.com/cory-miller"><code>@​cory-miller</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1703">actions/checkout#1703</a></li>
<li>Bump github/codeql-action from 2 to 3 by <a href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1694">actions/checkout#1694</a></li>
<li>Bump actions/setup-node from 1 to 4 by <a href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1696">actions/checkout#1696</a></li>
<li>Bump actions/upload-artifact from 2 to 4 by <a href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1695">actions/checkout#1695</a></li>
<li>README: Suggest <code>user.email</code> to be <code>41898282+github-actions[bot]@users.noreply.github.com</code> by <a href="https://github.com/cory-miller"><code>@​cory-miller</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1707">actions/checkout#1707</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a href="https://github.com/actions/checkout/compare/v4.1.4...v4.1.5">https://github.com/actions/checkout/compare/v4.1.4...v4.1.5</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="44c2b7a8a4"><code>44c2b7a</code></a> README: Suggest <code>user.email</code> to be `41898282+github-actions[bot]<a href="https://github.com/users"><code>@​users</code></a>.norepl...</li>
<li><a href="8459bc0c7e"><code>8459bc0</code></a> Bump actions/upload-artifact from 2 to 4 (<a href="https://redirect.github.com/actions/checkout/issues/1695">#1695</a>)</li>
<li><a href="3f603f6d5e"><code>3f603f6</code></a> Bump actions/setup-node from 1 to 4 (<a href="https://redirect.github.com/actions/checkout/issues/1696">#1696</a>)</li>
<li><a href="fd084cde18"><code>fd084cd</code></a> Bump github/codeql-action from 2 to 3 (<a href="https://redirect.github.com/actions/checkout/issues/1694">#1694</a>)</li>
<li><a href="9c1e94e0ad"><code>9c1e94e</code></a> Update NPM dependencies (<a href="https://redirect.github.com/actions/checkout/issues/1703">#1703</a>)</li>
<li>See full diff in <a href="0ad4b8fada...44c2b7a8a4">compare view</a></li>
</ul>
</details>
<br />

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=actions/checkout&package-manager=github_actions&previous-version=4.1.4&new-version=4.1.5)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

</details>
2024-05-07 06:39:06 +00:00
Jonah Williams
e0776c228d [Impeller] AHB swapchain mark frame start for tracer. (flutter/engine#52596)
https://flutter-flutter-perf.skia.org/e/?begin=1713561746&end=1715051005&queries=device_type%3DPixel_7_Pro%26sub_result%3Daverage_gpu_frame_time%26test%3Dnew_gallery_impeller__transition_perf&requestType=0&selected=commit%3D40670%26name%3D%252Carch%253Dintel%252Cbranch%253Dmaster%252Cconfig%253Ddefault%252Cdevice_type%253DPixel_7_Pro%252Cdevice_version%253Dnone%252Chost_type%253Dlinux%252Csub_result%253Daverage_gpu_frame_time%252Ctest%253Dnew_gallery_impeller__transition_perf%252C 

still not fixed because I also forgot the start
2024-05-07 05:32:29 +00:00
Jonah Williams
5a028e336d [Impeller] eagerly bootstrap content context. (flutter/engine#52590)
![image](https://github.com/flutter/engine/assets/8975114/5238d169-a68b-4905-848b-3ee7a7972de8)

Work around for https://github.com/flutter/flutter/issues/143540 by running shader bootstrap as early as possible. I was looking at this code for unrelated reasons (include removal) and realized it would be a trivial change.

If we're using the KHR swapchain instead of the AHB swapchain, in theory the pixel format could change but since we hash the pixel format the only bad thing would be the wasted work.
2024-05-07 03:05:18 +00:00
Jonah Williams
268bf3b9f1 [Impeller] add clip coverage stack to exp canvas. (flutter/engine#52215)
Uses clip scissor and clip stack to update the clip state. This is working now!

https://github.com/flutter/flutter/issues/142054
2024-05-07 00:06:21 +00:00
Chinmay Garde
53df9809c9 [Impeller] Document how to use Impeller as a standalone library with OpenGL ES and EGL. (flutter/engine#52473)
Preview: https://github.com/chinmaygarde/flutter_engine/blob/impeller_gl_porting_guide/impeller/docs/standalone_gles.md
2024-05-06 23:50:16 +00:00
Jonah Williams
3c4c7be89a [Impeller] remove compute tessellator. (flutter/engine#52584)
We don't have any plans to use this in the near term. The algorithm works but can easily run out of memory, and would need to be entirely reworked to manage memory allocations.
2024-05-06 21:27:55 +00:00
Jason Simmons
c1e5a9c1a3 Migrate third_party/android_tools to flutter/third_party (flutter/engine#52582)
Continuation of https://github.com/flutter/engine/pull/52034
2024-05-06 20:54:06 +00:00
skia-flutter-autoroll
a8a9d1dedc Roll Skia from a5c042cb4b12 to 869cacf2a3f1 (1 revision) (flutter/engine#52583)
https://skia.googlesource.com/skia.git/+log/a5c042cb4b12..869cacf2a3f1

2024-05-06 michaelludwig@google.com [graphite] Call notifyInUse() on images not known until AddToKey is called

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

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2024-05-06 20:14:33 +00:00
Jonah Williams
afb9eb545c [Impeller] remove unused includes. (flutter/engine#52579)
mostly removing unused fml/macros, but a few others that clangd surfaced. This compiled locally,hope it works on CI!
2024-05-06 19:51:08 +00:00
skia-flutter-autoroll
68c3f04f94 Roll Skia from da772ace76ff to a5c042cb4b12 (6 revisions) (flutter/engine#52581)
https://skia.googlesource.com/skia.git/+log/da772ace76ff..a5c042cb4b12

2024-05-06 bungeman@google.com Mark all Test-Fontations jobs as NativeFonts
2024-05-06 kjlubick@google.com Remove non-standard verb from SVG parsing
2024-05-06 michaelludwig@google.com [graphite] Remove unnecessary check in onNewImageSnapshot()
2024-05-06 michaelludwig@google.com [graphite] Don't rewrap TextureProxy in a new Image in RescaleImage()
2024-05-06 kjlubick@google.com Remove empty directory
2024-05-06 kjlubick@google.com Expand test coverage of partial SVG paths

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

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2024-05-06 19:12:21 +00:00