-
Notifications
You must be signed in to change notification settings - Fork 6k
Comparing changes
Open a pull request
base repository: flutter/engine
base: cf975417ce40
head repository: flutter/engine
compare: d4ca5240da52
- 11 commits
- 35 files changed
- 6 contributors
Commits on Apr 26, 2023
-
Download and use the goma client from cipd (#41488)
In flutter/flutter#125361 we discovered that a new version of clang can require updating goma in order for goma to work properly. This PR adds a dependency on CIPD goma to the DEPS file so that we can update it for use in local builds when needed. Since CI does its own management of the goma client and the compiler proxy, and since goma can only be used by Googlers, the DEPS file download is guarded behind the `use_cipd_goma` gclient var. To use it one would update the engine `.gclient` file to be something like: ``` ~/flutter/engine/src $ cat ../.gclient solutions = [ { "managed": False, "name": "src/flutter", "url": "[email protected]:zanderso/engine.git", "custom_deps": {}, "custom_vars": { "use_cipd_goma": True, }, "deps_file": "DEPS", "safesync_url": "", }, ] ``` I'll update the wiki with these instructions after this PR lands.
Configuration menu - View commit details
-
Copy full SHA for aff8cbe - Browse repository at this point
Copy the full SHA aff8cbeView commit details -
Configuration menu - View commit details
-
Copy full SHA for ff92235 - Browse repository at this point
Copy the full SHA ff92235View commit details -
[Impeller] Use a device buffer for SkBitmap allocation, use Linear te…
…xture on Metal backend. (#41374) This reduces the cost of uploading the glyph atlas, as we can exploit metal's capabilies to create a texture from a device buffer and share the underlying memory with a linear texture. This also means that subsequent updates don't require uploads or copies either. From scrolling through wonderous, this shaves off about 0.2 ms (0.6 ms -> 0.4 ms) of fresh atlas construction.
Jonah Williams authoredApr 26, 2023 Configuration menu - View commit details
-
Copy full SHA for fddd5ad - Browse repository at this point
Copy the full SHA fddd5adView commit details -
Roll Clang from 20d06c833d83 to 5344d8e10bb7 (#41524)
If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/clang-flutter-engine Please CC [email protected],[email protected],[email protected] on the revert to ensure that a human is aware of the problem. To file a bug in Clang: https://bugs.fuchsia.dev/p/fuchsia/issues/list?q=component%3AToolchain 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://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
Configuration menu - View commit details
-
Copy full SHA for 7c05f2d - Browse repository at this point
Copy the full SHA 7c05f2dView commit details -
Updated todo with github issue link (#41517)
followup from #41490 ## Pre-launch Checklist - [x] I read the [Contributor Guide] and followed the process outlined there for submitting PRs. - [x] I read the [Tree Hygiene] wiki page, which explains my responsibilities. - [x] I read and followed the [Flutter Style Guide] and the [C++, Objective-C, Java style guides]. - [ ] I listed at least one issue that this PR fixes in the description above. - [ ] I added new tests to check the change I am making or feature I am adding, or Hixie said the PR is test-exempt. See [testing the engine] for instructions on writing and running engine tests. - [x] I updated/added relevant documentation (doc comments with `///`). - [x] I signed the [CLA]. - [x] All existing and new tests are passing. If you need help, consider asking for advice on the #hackers-new channel on [Discord]. <!-- Links --> [Contributor Guide]: https://github.com/flutter/flutter/wiki/Tree-hygiene#overview [Tree Hygiene]: https://github.com/flutter/flutter/wiki/Tree-hygiene [Flutter Style Guide]: https://github.com/flutter/flutter/wiki/Style-guide-for-Flutter-repo [C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style [testing the engine]: https://github.com/flutter/flutter/wiki/Testing-the-engine [CLA]: https://cla.developers.google.com/ [flutter/tests]: https://github.com/flutter/tests [breaking change policy]: https://github.com/flutter/flutter/wiki/Tree-hygiene#handling-breaking-changes [Discord]: https://github.com/flutter/flutter/wiki/Chat
Configuration menu - View commit details
-
Copy full SHA for fbef328 - Browse repository at this point
Copy the full SHA fbef328View commit details -
[Impeller] partial repaint for Impeller/iOS. (#40959)
Implements partial repaint for Impeller. Fixes flutter/flutter#124526 The new code that manages the damage regions is more or less a copy paste from the existing Skia implementation. Compared to Skia, there are a few differences: Normally Impeller wants to use the drawable as the resolve texture for the root MSAA pass. Unfortunately this will unconditonally clear that texture. Thus to do a partial repaint, we have to allocate a separate texture to resolve to and then blit into the drawable. The blit seems to take about 500ns for a full screen on an iPhone 13. That implies that partial repaint is likely not worth doing if the screen is significantly changed. Thus I've added code in compositor_context.cc that computes the percentage of width or height that is part of the dirty rect. Above a threshold of (abitrarily chosen) 70%, we just render as normal. This should mean there is only a very minor hit from performing the diff on screens that are highly changed. The other special case, is that sometimes we get damage rects that are empty - that is the drawable is already completely up to date with what we want to render. IN that case I shortcircuit all of the impeller code and just present immediately. I previously tried returning without a present but this resulted in Xcode reporting dropped frames. One caveat here is that if you use the XCode frame debugger and attempt to capture a frame where we early present, then it will claim it couldn't capture any command buffers (because we didn't create any). To facilitate all of this, I added some additonal plumbing so that the impeller surface can get the clip rect from the submit info. Additionally, rather than using a clip rect impeller will translate and then shrink the root surface texture. This reduces memory usage compared to just clippling.
Jonah Williams authoredApr 26, 2023 Configuration menu - View commit details
-
Copy full SHA for 20be523 - Browse repository at this point
Copy the full SHA 20be523View commit details -
Roll Skia from 3fea88565a83 to 20a1c61c5597 (3 revisions) (#41530)
https://skia.googlesource.com/skia.git/+log/3fea88565a83..20a1c61c5597 2023-04-26 [email protected] graphite: Fix DrawPass::SortKey static_assert for 32-bit builds 2023-04-26 [email protected] [graphite] Redefine PrioritizeGpuReads as AccessPattern 2023-04-26 [email protected] Merge 1 release notes into RELEASE_NOTES.md 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 [email protected],[email protected],[email protected],[email protected] 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://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
Configuration menu - View commit details
-
Copy full SHA for 526fd0d - Browse repository at this point
Copy the full SHA 526fd0dView commit details -
[Impeller] Coerce opaque ColorSourceContents to Source (#41525)
This coercion happens when Entities are appended to a pass, which is the moment where we will need to perform depth sorting.
Configuration menu - View commit details
-
Copy full SHA for a9fe542 - Browse repository at this point
Copy the full SHA a9fe542View commit details -
[codesign] Add pinned xcode version as property to mac android aot en…
…gine (#41518) context: flutter/flutter#125570 (comment) Pin xcode version for the six sub builds in mac android aot engine
Configuration menu - View commit details
-
Copy full SHA for 9c9d8da - Browse repository at this point
Copy the full SHA 9c9d8daView commit details -
Revert "[Impeller] Use a device buffer for SkBitmap allocation, use L…
Jonah Williams authoredApr 26, 2023 Configuration menu - View commit details
-
Copy full SHA for 464abc7 - Browse repository at this point
Copy the full SHA 464abc7View commit details
Commits on Apr 27, 2023
-
Roll Skia from 20a1c61c5597 to d315ab065af3 (5 revisions) (#41535)
https://skia.googlesource.com/skia.git/+log/20a1c61c5597..d315ab065af3 2023-04-26 [email protected] Remove SkBlitter::justAnOpaqueColor 2023-04-26 [email protected] Wrap SkRP ops in #ifdef SK_ENABLE_SKSL_IN_RASTER_PIPELINE. 2023-04-26 [email protected] Switch Bazel builds to use SkRP by default. 2023-04-26 [email protected] Miscellaneous blitter cleanup 2023-04-26 [email protected] Add difficult test cases for sk_doubles_nearly_equal_ulps 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 [email protected],[email protected],[email protected],[email protected] 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://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
Configuration menu - View commit details
-
Copy full SHA for d4ca524 - Browse repository at this point
Copy the full SHA d4ca524View commit details
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff cf975417ce40...d4ca5240da52