commit | 4134b95a3d269cf6538a7102c810a79687d7ade6 | [log] [tgz] |
---|---|---|
author | Alexander Markov <alexmarkov@google.com> | Wed Sep 19 02:27:24 2018 +0000 |
committer | commit-bot@chromium.org <commit-bot@chromium.org> | Wed Sep 19 02:27:24 2018 +0000 |
tree | d3deec3fcb1fcd59aee992b42ab27fa62a105c3f | |
parent | d44ffba254f05f4484340656b3fc6a5b32da2ee6 [diff] |
[vm/tfa] Streamline handling of tear-offs in TFA When building a summary, instead of adding a raw call for a torn off method immediatelly, add a call with PropertyGet kind. Calls of methods with PropertyGet kind are already handled as they could appear from dynamic calls. This has the following advantages: * Duplicated handling of tear-offs is removed. Now only _DirectInvocation._processFunction handles tear-offs, both from dynamic and non-dynamic calls. * This change allow us to more accurately figure out whether the tear-off was taken from a particular method, as tear-offs of interface methods are now routed through a dispatchable call which figures out targets. Change-Id: I49692577728c03285cb22863c53e4ea3cdd2ab5e Reviewed-on: https://dart-review.googlesource.com/75386 Reviewed-by: Vyacheslav Egorov <vegorov@google.com> Commit-Queue: Alexander Markov <alexmarkov@google.com>
Dart is an open-source, scalable programming language, with robust libraries and runtimes, for building web, server, and mobile apps.
Visit the dartlang.org to learn more about the language, tools, getting started, and more.
Browse pub.dartlang.org for more packages and libraries contributed by the community and the Dart team.
If you want to build Dart yourself, here is a guide to getting the source, preparing your machine to build the SDK, and building.
There are more documents on our wiki.
The easiest way to contribute to Dart is to file issues.
You can also contribute patches, as described in Contributing.