Find a file
Vyacheslav Egorov 746ab58f46 VM: Constant fold more loads from constants in the optimizer.
We have limited support for folding away length loads from constant
arrays and strings. However we were not folding away loads in code
like:

    enum E { V }

    isV(flags) => (flags & (1 << E.V.index)) != 0;

Here we would emit load index and shift for mask computation
instead of simply emitting 1.

This change fixes the oversight by enabling folding away loads
of final fields from constants.

BUG=
R=erikcorry@google.com

Review-Url: https://codereview.chromium.org/2897603002 .
2017-05-19 16:06:59 +02:00
build Roll 50: Updated for push to origin/master. 2017-05-10 18:16:51 -07:00
client Remove idea meta-data (follow up from https://codereview.chromium.org/2878103002). 2017-05-14 07:54:19 -07:00
docs/language Adjusted initializer rules, changing a run-time error to compile-time. 2017-05-19 14:22:35 +02:00
pkg Update mini_ast.dart to new Listener interface. 2017-05-19 14:10:52 +02:00
runtime VM: Constant fold more loads from constants in the optimizer. 2017-05-19 16:06:59 +02:00
samples Format samples and samples-dev directories. 2017-04-19 07:30:17 -07:00
samples-dev Fix swarm for non-integer Event timeStamps 2017-05-10 12:48:39 -07:00
sdk js_runtime: loadDeferredLibrary: don't call initializer of repeated empty parts 2017-05-18 14:16:41 -07:00
tests Update status files. 2017-05-19 13:40:46 +02:00
third_party [infra] Fixes for cross-toolchains 2017-04-06 15:03:26 -07:00
tools Reduce temporarily flakiness rate of dart2js-drt by re-running until they have been fixed 2017-05-19 13:13:40 +02:00
utils Fix analyzer tests in checked mode. 2017-05-15 10:25:59 -07:00
.clang-format Add .clang-format and run clang-format on runtime/platform. 2016-11-03 14:25:16 -07:00
.gitattributes Restore line endings of files that should be CRLF. 2016-12-09 11:09:55 -08:00
.gitignore Git ignore vscode project files. 2017-03-23 15:26:06 -07:00
.gn Starting work on full GN build 2016-09-23 07:47:36 -07:00
.mailmap
.packages Add support for the new function-type syntax. 2017-02-23 13:36:28 +01:00
.travis.yml Allow canary to timeout 2017-05-02 10:02:51 -07:00
AUTHORS Add Cristian Almstrand to AUTHORS 2015-07-16 09:51:56 -07:00
BUILD.gn [Fuchsia] Build only the parts of the SDK that are needed 2017-04-19 09:00:14 -07:00
CHANGELOG.md Announced #28939 (void f() => e allows an e of any type) in changelog 2017-05-18 17:12:46 +02:00
codereview.settings Remove trailing slash in codereview.settings to fix review url double slash 2015-10-01 07:27:13 -07:00
create_sdk.gyp Make list_files.py and list_dart_files.py return absolute paths for GN 2016-12-13 10:01:28 -08:00
dart.gyp Remove dart_noopt and related parts from the VM. 2017-01-11 16:55:55 -08:00
DEPS Update async package to include fix for Stream changes 2017-05-18 14:35:19 -07:00
LICENSE Remove the Dromaeo and TodoMVC samples. 2016-01-11 13:09:26 -08:00
PATENTS
PRESUBMIT.py Print the correct path to dartfmt in the presubmit error message. 2017-04-04 16:13:31 -07:00
README.dart-sdk remove docgen from the sdk 2015-09-18 13:18:10 -07:00
README.md [gardening] Whitespace change to trigger bots. 2017-04-28 10:08:58 -07:00
WATCHLISTS Add more diagnostics to UX watch list. 2017-04-18 14:51:00 +02:00

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.