Commit Graph

14 Commits

Author SHA1 Message Date
Karl Klose ff99a0ce59 Merge kernel closure conversion into the Dart SDK
This is the result of:
- taking the diff of the branch closure_conversion to master in the kernel
repository
- updating the file paths
- applying the diff to the Dart SDK
- fixing conflicts between the changes to pkg/kernel in the Dart SDK and the master branch in the kernel repository

R=asgerf@google.com

Review-Url: https://codereview.chromium.org/2561723003 .
2016-12-15 10:16:22 +01:00
Asger Feldthaus f13881ac08 Fix the pubspec and warnings in pkg/kernel.
BUG=
R=kmillikin@google.com

Review URL: https://codereview.chromium.org/2530543002 .
2016-11-23 14:36:22 +01:00
Asger Feldthaus f28c1276ee [kernel] Bump kernel's pubspec version to 0.2.0
BUG=
R=kmillikin@google.com

Review URL: https://codereview.chromium.org/2515273002 .
2016-11-21 13:08:17 +01:00
Asger Feldthaus c62d774c2f [kernel] Upgrade analyzer version to 0.29.0
BUG=
R=kmillikin@google.com

Review URL: https://codereview.chromium.org/2517113002 .
2016-11-21 10:24:29 +01:00
Asger Feldthaus 18cbd9dcce [kernel] Add a version number to the pubspec.
BUG=
R=kmillikin@google.com

Review URL: https://codereview.chromium.org/2439603003 .
2016-10-20 14:02:41 +02:00
Asger Feldthaus 38a3e37492 [kernel] Tree shaking transformation.
R=kustermann@google.com

Review URL: https://chromereviews.googleplex.com/508267013 .
2016-09-23 18:21:35 +02:00
Asger Feldthaus 5d42d2de01 [kernel] Update analyzer and test dependency.
BUG=
R=kustermann@google.com

Review URL: https://chromereviews.googleplex.com/512047013 .
2016-09-23 17:56:22 +02:00
Asger Feldthaus 492e65b68e [kernel] Support .packages file.
BUG=https://github.com/dart-lang/kernel/issues/27
R=kustermann@google.com

Review URL: https://chromereviews.googleplex.com/508267014 .
2016-09-22 14:18:18 +02:00
Asger Feldthaus 0613969032 [kernel] Ensure analysis options are also set on the SDK context.
The analyzer keeps a separate AnalysisContext for the SDK, and the
options we set on our own context did not match those on the SDK,
mainly causing issues for strong mode.

Also, the BatchModeState is now used to share the Dart SDK, instead of
using a single instance held in a static variable.

BUG=
R=kmillikin@google.com

Review URL: https://chromereviews.googleplex.com/504827013 .
2016-09-07 13:15:58 +02:00
Paul Berry fe4c8eb032 [kernel] Update pubspec to point to analyzer 0.27.4.
And fix the resulting deprecation warning.

R=asgerf@google.com

Review URL: https://chromereviews.googleplex.com/492777014 .
2016-08-17 05:59:29 -07:00
Asger Feldthaus 2295ad8c35 [kernel] Type propagation: Class hierarchy specialization and more.
Instance members are now cloned for every class that inherits it.

The constraint system now explicitly requires all values to be
created using `newValue()`.

There is now a notion of "unions" for representing sets of values.
For class values, unions correspond to types.  For function values,
unions are based on overriding and method names.

The solver's internal map of type (Value,Field) -> Value denoting
the value of a given field has been removed.

The builder must instead register store and load locations for
every valid (Value,Field) pair.  Dynamic stores assign into the
store location, and dynamic loads take the value from the load
location.
Final fields have no store location, so they cannot be polluted
by dynamic stores.

R=vegorov@google.com

Review URL: https://chromereviews.googleplex.com/455987013 .
2016-08-02 18:22:54 +02:00
Asger Feldthaus 3c2a76dfb9 [kernel] Bump analyzer version and compiled dart2js version used as test data.
BUG=
R=kustermann@google.com

Review URL: https://chromereviews.googleplex.com/436207013 .
2016-05-30 12:56:49 +02:00
Asger Feldthaus bc46000f4b [kernel] Make test package use ^ and fix a comment 2016-04-27 16:44:25 +02:00
Asger Feldthaus 811a47d430 [kernel] Initial implementation of Dart Kernel.
Contains:
- Command-line tool
- Kernel AST
- Binary serialization
- Printing as text
- Frontend based on analyzer
- Class hierarchy and type algebra
2016-04-26 10:39:15 +02:00