dart-sdk/pkg/vm/lib
Alexander Markov fe7778291b [vm/aot/tfa] Share captured local variables among invocations
This is a step towards detaching bodies of closures/local
functions from the enclosing functions in TFA, so closures
could be analyzed separately.

Also, this change allows TFA to accumulate types of captured local
variables among all invocations.

On a large Flutter app, this change doesn't cause noticeable compilation
time or snapshot size changes.

Issue: https://github.com/dart-lang/sdk/issues/39692
Issue: https://github.com/dart-lang/sdk/issues/51102

TEST=pkg/vm/testcases/transformations/type_flow/summary_collector/control_flow.dart

Cq-Include-Trybots: luci.dart.try:vm-aot-linux-release-x64-try,vm-aot-mac-product-arm64-try
Change-Id: I785b15656df559a8cc80fcceea196b480ba7a91a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/318021
Reviewed-by: Martin Kustermann <kustermann@google.com>
Commit-Queue: Alexander Markov <alexmarkov@google.com>
2023-08-08 16:35:10 +00:00
..
metadata [vm/aot] Unbox records using inferred record shapes 2023-03-15 17:34:37 +00:00
native_assets [frontend_server] Add support for @Native assets 2023-02-21 07:29:29 +00:00
target [vm] Fix expression evaluation in context of closures 2023-08-04 11:07:46 +00:00
testing [vm/compiler] Devirtualize calls while inlining. 2023-01-26 08:52:18 +00:00
transformations [vm/aot/tfa] Share captured local variables among invocations 2023-08-08 16:35:10 +00:00
dominators.dart
http_filesystem.dart
incremental_compiler.dart [vm/reload] Reject failed compilation during isolate reload 2023-01-27 17:47:38 +00:00
kernel_front_end.dart [frontend_server] Add support for @Native assets 2023-02-21 07:29:29 +00:00
target_os.dart [pkg/vm] Initial work on constant operating system fields and getters. 2023-02-10 16:29:50 +00:00