3367 Commits

Author SHA1 Message Date
skia-flutter-autoroll
8caf6d1d3f
Roll src/third_party/skia 46f5c5f08b61..9e8f60534464 (29 commits) (#16754) 2020-02-22 15:44:03 -08:00
skia-flutter-autoroll
f758eb97cc
Roll fuchsia/sdk/core/linux-amd64 from -u-iU... to 3rB22... (#16752) 2020-02-22 14:09:08 -08:00
skia-flutter-autoroll
6d2cbb2dbb
Roll src/third_party/skia bf5cb0f539e7..46f5c5f08b61 (2 commits) (#16732) 2020-02-22 14:09:04 -08:00
skia-flutter-autoroll
2724727b18
Roll src/third_party/skia 392846665c40..bf5cb0f539e7 (1 commits) (#16730) 2020-02-21 07:56:03 -08:00
skia-flutter-autoroll
b73dfed391
Roll src/third_party/skia 77521d9e06e8..392846665c40 (1 commits) (#16729) 2020-02-21 06:21:03 -08:00
skia-flutter-autoroll
704396b326
Roll fuchsia/sdk/core/linux-amd64 from CZTpy... to -u-iU... (#16727) 2020-02-21 00:26:03 -08:00
skia-flutter-autoroll
0bd69f9d55
Roll src/third_party/skia 3ffa7af75301..77521d9e06e8 (2 commits) (#16725) 2020-02-20 22:16:02 -08:00
skia-flutter-autoroll
e0303b03c8
Roll src/third_party/dart fd20c7b92bb8..6ef9131d82c4 (7 commits) (#16723) 2020-02-20 21:26:03 -08:00
skia-flutter-autoroll
66742b6d3e
Roll src/third_party/skia df283d01cabb..3ffa7af75301 (1 commits) (#16722) 2020-02-20 18:56:02 -08:00
skia-flutter-autoroll
4aaafe0d28
Roll src/third_party/skia 706851dc99d9..df283d01cabb (3 commits) (#16719) 2020-02-20 17:16:02 -08:00
skia-flutter-autoroll
7a50e4de9f
Roll src/third_party/dart 81d4cc6bc99a..fd20c7b92bb8 (31 commits) (#16716) 2020-02-20 16:11:04 -08:00
skia-flutter-autoroll
e44f99bbe9
Roll src/third_party/skia 1d589a578ca4..706851dc99d9 (2 commits) (#16714) 2020-02-20 15:41:03 -08:00
skia-flutter-autoroll
969cfc17af
Roll src/third_party/skia 62076977a0b7..1d589a578ca4 (6 commits) (#16712) 2020-02-20 14:06:03 -08:00
skia-flutter-autoroll
2fdba52677
Roll src/third_party/skia 9d4e31d6cda5..62076977a0b7 (11 commits) (#16710) 2020-02-20 12:31:02 -08:00
skia-flutter-autoroll
5cef6d0a81
Roll fuchsia/sdk/core/linux-amd64 from YPr0t... to CZTpy... (#16708) 2020-02-20 10:56:03 -08:00
skia-flutter-autoroll
7b0453e40b
Roll src/third_party/skia 2c2db2762809..9d4e31d6cda5 (1 commits) (#16707) 2020-02-20 10:51:04 -08:00
skia-flutter-autoroll
6b3d439632
Roll src/third_party/skia a5097354217b..2c2db2762809 (1 commits) (#16704) 2020-02-19 23:46:03 -08:00
skia-flutter-autoroll
f83092a956
Roll src/third_party/skia ed1ff23c2768..a5097354217b (1 commits) (#16703) 2020-02-19 22:11:04 -08:00
skia-flutter-autoroll
3fe33257bb
Roll src/third_party/dart 7469b87b042a..e187e42593e8 (11 commits) (#16702) 2020-02-19 20:26:03 -08:00
skia-flutter-autoroll
f052d2e03a
Roll fuchsia/sdk/core/linux-amd64 from VHyDa... to YPr0t... (#16701) 2020-02-19 19:36:04 -08:00
skia-flutter-autoroll
8f0bbfad3e
Roll src/third_party/skia 9baef3593c3c..ed1ff23c2768 (5 commits) (#16699) 2020-02-19 18:01:05 -08:00
skia-flutter-autoroll
bdd2cf869e
Roll src/third_party/skia 7dfb46e7f397..9baef3593c3c (3 commits) (#16696) 2020-02-19 16:26:04 -08:00
skia-flutter-autoroll
ab454ea086
Roll src/third_party/dart 0f141be8bd52..7469b87b042a (9 commits) (#16693) 2020-02-19 14:56:06 -08:00
skia-flutter-autoroll
cbb0ff8fd1
Roll src/third_party/skia c5ff41f2976e..7dfb46e7f397 (20 commits) (#16691) 2020-02-19 14:51:05 -08:00
skia-flutter-autoroll
89830c88ea
Roll src/third_party/dart 707ecda05e14..0f141be8bd52 (4 commits) (#16683)
https://dart.googlesource.com/sdk.git/+log/707ecda05e14..0f141be8bd52

git log 707ecda05e14..0f141be8bd52 --date=short --first-parent --format='%ad %ae %s'
2020-02-19 dmitryas@google.com [cfe] Implement new rules around types of case expressions
2020-02-19 johnniwinther@google.com [cfe] Do not hoist this expressions
2020-02-19 davidmorgan@google.com Revert "Reland "[ VM ] Removed Dart_Allocate, Dart_AllocateWithNativeFields, and Dart_InvokeConstructor from embedding API""
2020-02-19 dacoharkes@google.com [test/ffi] Re-enable disabled tests

Created with:
  gclient setdep -r src/third_party/dart@0f141be8bd52

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 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: dart-vm-team@google.com
2020-02-19 09:34:40 -08:00
skia-flutter-autoroll
8e82311e3a
Roll src/third_party/skia a037445e07a7..c5ff41f2976e (1 commits) (#16677) 2020-02-19 00:06:04 -08:00
skia-flutter-autoroll
151688ceb3
Roll src/third_party/skia d0d033a12556..a037445e07a7 (4 commits) (#16676) 2020-02-18 22:31:04 -08:00
skia-flutter-autoroll
80f73eeaf5
Roll src/third_party/skia 799a23cf0602..d0d033a12556 (3 commits) (#16675) 2020-02-18 20:56:04 -08:00
skia-flutter-autoroll
4f4a1d503b
Roll src/third_party/dart 3883c6070942..c11c0ae3fdca (9 commits) (#16673) 2020-02-18 19:41:03 -08:00
skia-flutter-autoroll
c79620580f
Roll fuchsia/sdk/core/linux-amd64 from 2W9Xr... to VHyDa... (#16670) 2020-02-18 19:26:05 -08:00
skia-flutter-autoroll
16eeac54c1
Roll src/third_party/skia fe6fe6c5a8a8..799a23cf0602 (1 commits) (#16669) 2020-02-18 19:21:03 -08:00
Chinmay Garde
ef9e7b1a13
Revert "Lift restriction that embedders may not trample the render thread OpenGL context in composition callbacks. (#16653)" (#16674)
This reverts commit 110c1c9adf0f580d16c8252e3b37992af93e9cea.
2020-02-18 18:59:21 -08:00
skia-flutter-autoroll
9309ff5494
Roll src/third_party/skia 7281a8623799..fe6fe6c5a8a8 (7 commits) (#16667) 2020-02-18 15:51:03 -08:00
skia-flutter-autoroll
c264e1cf93
Roll src/third_party/dart 999eeea5a3ff..3883c6070942 (5 commits) (#16666) 2020-02-18 14:21:06 -08:00
skia-flutter-autoroll
ca6165f911
Roll src/third_party/skia c1bb9cba16be..7281a8623799 (9 commits) (#16665) 2020-02-18 14:16:03 -08:00
Chinmay Garde
110c1c9adf
Lift restriction that embedders may not trample the render thread OpenGL context in composition callbacks. (#16653)
During the implementation of custom compositor integration, the embedder gets
callbacks on the render thread to prepare render targets (framebuffers,
textures, etc) for the engine to render into, callbacks to present these render
targets along with platform managed contents, and, callbacks to collect render
targets once they can no longer be recycled by the engine in subsequent frames.
During these callbacks, the engine mandates the OpenGL state on the render
thread be preserved. This restriction has been the source of hard to isolate
issues where the embedder trampled on the OpenGL bindings state in the callback
but failed to restore state before control went back to the engine. Due to the
nature of the OpenGL API, such errors are easy to make and overlook. This patch
lifts the restriction from the embedder. Embedders may now freely work with the
OpenGL state in custom compositor callbacks and the engine will make sure to
disregard OpenGL bindings when control flows back to it.

Disregarding current OpenGL state has a certain performance penalty and the
majority of this patch handles refactoring various engine embedder components
such that this happens only once per frame. The most trivial version of this
patch would reset context bindings on every transition of control flow from the
embedder to the engine. However, that naive approach would have necessitated
more than 50 binding resets in existing unit-test cases (depending on the number
of platform view interleaving levels and render target recycling hit rates). In
this implementation, bindings will be reset only once per frame and this does
not depend on the number of platform views in the scene.

The majority of this patch is a refactoring of engine subsystems used in
`ExternalViewEmbedder::SubmitFrame` which is thoroughly documented with each
opportunity for the embedder to invalidate OpenGL state tagged.

The refactoring also enables the implementation of the following optimizations
to engine behavior which should aid in reducing the memory needed for the
creation of render targets. These optimization include:
* The engine will only ask the embedder for render targets in which it expects
  to render into. This was a quirk in the way in which root and non-root render
  targets were handled. The engine could require the embedder to create a render
  target but then realize it didn’t have anything to render into it. In the
  presentation callback, it would skip that render target. But the embedder
  still had to allocate that extra render target. This will no longer be the
  case and should reduce memory use.
* The engine may now skip always realizing (via the embedder render target
  creation callback) and presenting the root render target. This was also a side
  effect of the same quirk. Previously, the engine would always ask the embedder
  to present the root render target even if it was empty. Since this is no
  longer the case, few render targets should be allocated which will reduce
  memory consumption.
* The engine will now ask the embedder to collect unused render targets before
  it asks it to create new ones. The previous behavior was to ask the embedder
  for new targets and then collect old ones. This would cause spikes in memory
  use when the size of the render targets would change. These memory use spikes
  should now be troughs.
* The previous render target cache also considered the platform view ID in cache
  viability considerations (instead of just the size of the render target). This
  was a bug which has been fixed. This should lead to better cache utilization
  in some situations.

These optimizations are now codified in unit-tests and the updated test
expectations are a result of these optimizations now being in place.

* Fixes https://github.com/flutter/flutter/issues/50751
* Fixes https://github.com/flutter/flutter/issues/46911
* Fixes https://github.com/flutter/flutter/issues/43778
* Fixes b/146142979
2020-02-18 12:51:49 -08:00
skia-flutter-autoroll
46d341c5c7
Roll src/third_party/skia 78b471760dd9..c1bb9cba16be (1 commits) (#16662) 2020-02-18 08:46:04 -08:00
skia-flutter-autoroll
5e0953f834
Roll src/third_party/dart a314cff6ee03..999eeea5a3ff (15 commits) (#16661) 2020-02-18 08:11:03 -08:00
skia-flutter-autoroll
84f92fdb57
Roll fuchsia/sdk/core/linux-amd64 from Uc8XS... to 2W9Xr... (#16659) 2020-02-18 04:31:02 -08:00
skia-flutter-autoroll
1866012410
Roll src/third_party/dart b20c35c7d90f..a314cff6ee03 (4 commits) (#16657) 2020-02-18 02:41:02 -08:00
skia-flutter-autoroll
cfbf5497ab
Roll src/third_party/skia 9dbb98007b7b..4af17e434cdc (2 commits) (#16656) 2020-02-18 01:51:03 -08:00
skia-flutter-autoroll
59db33f641
Roll src/third_party/skia 3c4f3c178ade..9dbb98007b7b (2 commits) (#16655) 2020-02-17 22:51:03 -08:00
skia-flutter-autoroll
686a982f4b
Roll fuchsia/sdk/core/linux-amd64 from m7Xt4... to Uc8XS... (#16652) 2020-02-17 14:51:02 -08:00
skia-flutter-autoroll
943599d6cb
Roll src/third_party/skia 706f6b4069b1..3c4f3c178ade (1 commits) (#16650) 2020-02-17 13:36:02 -08:00
skia-flutter-autoroll
2d91e4ac23
Roll src/third_party/skia c65cd5c8dba9..706f6b4069b1 (1 commits) (#16649) 2020-02-17 11:36:03 -08:00
skia-flutter-autoroll
fe02708cec
Roll src/third_party/dart 7ed1690b4ed6..b20c35c7d90f (9 commits) (#16648) 2020-02-17 09:16:03 -08:00
skia-flutter-autoroll
3ac65b62ae
Roll src/third_party/dart 374c9c448fdc..7ed1690b4ed6 (1 commits) (#16647) 2020-02-17 03:56:03 -08:00
skia-flutter-autoroll
83b659825f
Roll fuchsia/sdk/core/linux-amd64 from CNbNp... to m7Xt4... (#16645) 2020-02-17 01:16:03 -08:00
skia-flutter-autoroll
0c70c20386
Roll src/third_party/skia 660a73ada09d..c65cd5c8dba9 (2 commits) (#16644) 2020-02-17 00:11:02 -08:00
skia-flutter-autoroll
90a5677d71
Roll src/third_party/skia bfe80bb552b0..660a73ada09d (1 commits) (#16643) 2020-02-16 22:26:08 -08:00