commit | a8777149a78f16e60b63b917ba11c634c54e8fdc | [log] [tgz] |
---|---|---|
author | Stevie Strickland <sstrickl@google.com> | Mon Jan 14 15:45:03 2019 +0000 |
committer | commit-bot@chromium.org <commit-bot@chromium.org> | Mon Jan 14 15:45:03 2019 +0000 |
tree | 2e435f630fa2b3cf836e0d55ac3f1fe3533fc358 | |
parent | 32eea5439043134b6e2862683c63c509bf66eb1c [diff] |
[VM/Compiler] Revoke definition status of certain instructions. Change StoreIndexed, StoreIndexedUnsafe, and StoreInstanceField to be non-definition instructions. Fix up the flow graph builders so they no longer treat StoreIndexed and StoreIndexedUnsafe as pushing values on the stack that need to be dropped. We recently changed FlowGraphInliner::TryInlineRecognizedMethod to create a distinction between the last instruction to be inlined and the definition that should be used as the new result. Perform the same separation of replacement code and result in the call specializers. Change-Id: I66c7ab60a662dcca05092e47156d1d4ba809d51f Reviewed-on: https://dart-review.googlesource.com/c/88326 Commit-Queue: Stevie Strickland <sstrickl@google.com> Reviewed-by: Martin Kustermann <kustermann@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.