No description
Find a file
Alexander Markov 0069beb7ed [vm/interpreter] Cleanup stack slot in Interpreter::InterfaceCall
The stack slot in question may contain a stale value, but it could
be scanned by GC, so the fix is to clean it up even if it looks
unused.

While debugging I saw bytecode PCs in that stack slot.
So it is likely that compact bytecode instructions (68de477535)
increased the probability of these crashes, as with compact bytecodes
PCs could be unaligned and treated as Dart objects by GC, while
previously PCs were always aligned and treated as Smis by GC,
effectively masking the failure.

Fixes https://github.com/dart-lang/sdk/issues/36909

Change-Id: I82ccaa2bd87aca4ca4b44c9db69b0efd18dad955
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102061
Reviewed-by: Régis Crelier <regis@google.com>
Commit-Queue: Alexander Markov <alexmarkov@google.com>
2019-05-09 20:20:51 +00:00
.github
build
client
docs
pkg Add language 2 tests for null access errors 2019-05-09 18:59:11 +00:00
runtime [vm/interpreter] Cleanup stack slot in Interpreter::InterfaceCall 2019-05-09 20:20:51 +00:00
samples
samples-dev
sdk
tests Add language 2 tests for null access errors 2019-05-09 18:59:11 +00:00
third_party
tools
utils
.clang-format
.gitattributes
.gitconfig
.gitignore
.gn
.mailmap
.packages
.vpython
AUTHORS
BUILD.gn
CHANGELOG.md bump to linter 0.1.88 2019-05-09 17:34:21 +00:00
codereview.settings
CONTRIBUTING.md
DEPS bump to linter 0.1.88 2019-05-09 17:34:21 +00:00
LICENSE
PATENTS
PRESUBMIT.py
README.dart-sdk
README.md
WATCHLISTS

Dart

Dart is an open-source, scalable programming language, with robust libraries and runtimes, for building web, server, and mobile apps.

Using Dart

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.

Building Dart

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.

Contributing to Dart

The easiest way to contribute to Dart is to file issues.

You can also contribute patches, as described in Contributing.

License & patents

See LICENSE and PATENTS.