Commit graph

1122 commits

Author SHA1 Message Date
William Hesse
011a5a6a66 Remove ie10 and opera sections from status files
BUG=
R=kustermann@google.com

Review-Url: https://codereview.chromium.org/2783653002 .
2017-03-28 16:38:59 +02:00
Vijay Menon
6854dec8a7 Revert "Train ddc snapshot on itself"
This reverts commit 1bd92d4f04.

Breaking on windows.

TBR=jakemac@google.com
BUG=

Review-Url: https://codereview.chromium.org/2762043002 .
2017-03-20 18:57:22 -07:00
Vijay Menon
1bd92d4f04 Train ddc snapshot on itself
This speeds up dartdevc on hello world from about 600ms to about 150ms.

OTOH, it also increases the snapshot size from ~4.6M to ~31M (the
latter is just under the size of the dart2js snapshot).

I tried this before.  This may break again on windows - if so, i'll revert.

R=jakemac@google.com

Review-Url: https://codereview.chromium.org/2760043002 .
2017-03-20 18:51:37 -07:00
Peter von der Ahé
d1bdc9596d Improve detection of compile-time errors.
R=karlklose@google.com

Review-Url: https://codereview.chromium.org/2739213004 .
2017-03-10 14:14:49 +01:00
Peter von der Ahé
c19b49ff26 Move most of kernel-service.dart to package:front_end.
R=vegorov@google.com

Review-Url: https://codereview.chromium.org/2738253003 .
2017-03-10 13:10:28 +01:00
Peter von der Ahé
6176847e36 Consolidate analyzer dependencies.
This allows us to create a smaller .dill file for Fasta.

R=paulberry@google.com

Review-Url: https://codereview.chromium.org/2723113002 .
2017-03-02 12:59:47 +01:00
Peter von der Ahé
c59ecd801c Remove package imports from itself.
Without this, we risk creating two different libraries at runtime. One
named file:///something/ and one named package:front_end/something.
These libraries are different and if enums from one gets mixed with
the other, you get very confusing errors (to apparently identical enums
aren't equal).

R=johnniwinther@google.com

Review-Url: https://codereview.chromium.org/2726793003 .
2017-03-02 12:34:46 +01:00
Vyacheslav Egorov
3b7a956e0c VM: [Kernel] Pass correct parameters to fasta's TranslateUri.parse.
Signature is TranslateUri.parse(Uri sdk, [Uri uri]) so path to the packages
file should be passed as a second argument and not the first one.

R=kustermann@google.com
BUG=

Review-Url: https://codereview.chromium.org/2720693003 .
2017-02-27 14:00:54 +01:00
Vyacheslav Egorov
b026aed3cf Remove dartk and DFE workers support from testing scripts and kernel-service.
We only support running -c dark and -c dartkp configuration through Kernel isolate and fasta in non-batch mode.

R=kustermann@google.com
BUG=

Review-Url: https://codereview.chromium.org/2721543003 .
2017-02-27 13:31:03 +01:00
Asger Feldthaus
8bfc4b47c0 Implement canonical name scheme in kernel.
This adds a class CanonicalName that can represent a library, class,
or member.  All references now go through a Reference object, which is
linked to both the AST node and its CanonicalName, so either can be
created first.

dartk now accepts multiple input files:
- If multiple dart files are given, they are all compiled.
- If multiple binaries are given, they are linked together.
Mixed dart and binary input is not supported by dartk.

dartk now has a flag --include-sdk which includes the entire SDK in
the output.  This is so the SDK can be compiled alone and then linked.

Example of compiling separately and then linking:
  dartk foo.dart -o foo.dill
  dartk main.dart -o main.dill
  dartk --include-sdk -o sdk.dill
  dartk main.dill foo.dill sdk.dill --target=vm --link -o program.dill

dartk still has incredibly slow cold start due to the analyzer loading
the dart sdk, so this does not actually speed things up at the moment.

BUG=
R=ahe@google.com, kmillikin@google.com, kustermann@google.com, sigmund@google.com

Review-Url: https://codereview.chromium.org/2665723002 .
2017-02-23 14:12:10 +01:00
Vijay Menon
019e16a7ad Rerun format
Looks like I forgot to do this on my last cl.

TBR=jmesserly@google.com

Committed: 0c8704e1c7
Review-Url: https://codereview.chromium.org/2709613003 .
2017-02-21 16:07:01 -08:00
Vijay Menon
e4733ac145 Train ddc snapshot on itself
This speeds up dartdevc on hello world from about 600ms to about 150ms.

OTOH, it also increases the snapshot size from ~4.6M to ~31M (the
latter is just under the size of the dart2js snapshot).

R=jacobr@google.com

Review-Url: https://codereview.chromium.org/2707023002 .
2017-02-21 15:56:19 -08:00
Peter von der Ahé
d32f47b293 Implement line and column numbers.
R=karlklose@google.com

Review-Url: https://codereview.chromium.org/2704753002 .
2017-02-20 10:04:12 +01:00
Martin Kustermann
d93928a6ce Make dartk-{release,debug} builders work properly again
R=vegorov@google.com

Review-Url: https://codereview.chromium.org/2696613003 .
2017-02-14 14:01:58 +01:00
Peter von der Ahé
c13730e8ea Pay some naming debt.
R=johnniwinther@google.com

Review-Url: https://codereview.chromium.org/2682993002 .
2017-02-09 13:10:24 +01:00
Vyacheslav Egorov
d5a11f3d34 [Kernel] Enable Kernel Isolate to use Fasta instead of DartK.
We are not switching yet, but now everybody can try fasta by doing:

$ dart -DDFE_USE_FASTA=true --dfe=utils/kernel-service.dart hello.dart

Note that when using fasta we expect that patched_sdk contains platform.dill
Kernel binary containing compiled patched sdk. This file can be obtained by
doing:

$ export DART_AOT_SDK=<path-to-patched_sdk>
$ dart pkg/front_end/lib/src/fasta/bin/compile_platform.dart \
  ${DART_AOT_SDK}/platform.dill

We are also adding --use-fasta to testing script to allow end-to-end testing
of fasta (though platform.dill file needs to be generated manually prior to
running tests):

$ tools/test.py -c dartk -m release -a x64 --nobatch --use-fasta

Current test status:

$ tools/test.py -c dartk -m release -a x64 --nobatch --use-fasta
[27:34 | 100% | +12566 | - 1941]

BUG=
R=ahe@google.com, kustermann@google.com

Review-Url: https://codereview.chromium.org/2684943003 .
2017-02-08 16:48:35 +01:00
Kevin Millikin
3057283f0c Split the Kernel transformations into modular and global ones
Target-specific modular transformations have to be able to cope with
external libraries.  Target-specific global transformations should be
optimizations, and not required for correctness, since a simple linker
may choose not to perform them.

Make mixin resolution modular by making it fail when a mixed-in class
comes from an external library.  (We cannot mix in such a class because
we do not necessarily have all class members.)

R=asgerf@google.com

Review-Url: https://codereview.chromium.org/2671653003 .
2017-02-02 13:08:27 +01:00
Ryan Macnak
9eb216a495 Reapply "Create an app snapshot of the Dart front end."
Skip training on Windows, issue #28532.

R=hausner@google.com

Review-Url: https://codereview.chromium.org/2665753002 .
2017-01-31 09:47:51 -08:00
Ryan Macnak
728f460798 Revert "Create an app snapshot of the Dart front end."
This reverts commit 8c7111c967.
This reverts commit 27c8e59d2e.

Review-Url: https://codereview.chromium.org/2657123002 .
2017-01-26 17:42:25 -08:00
Ryan Macnak
8c7111c967 Create an app snapshot of the Dart front end.
R=asiva@google.com, hausner@google.com, zra@google.com

Review-Url: https://codereview.chromium.org/2655173002 .
2017-01-26 16:28:59 -08:00
Ryan Macnak
26a364f998 Support spawnUri in app snapshots.
- Don't mark core_isolate_snapshot_buffer as a const pointer.
 - Update app snapshots without code to not rewrite the VM isolate snapshot, as already done by app snapshots with code.

Fixes #28368

R=asiva@google.com

Review-Url: https://codereview.chromium.org/2637193002 .
2017-01-17 15:59:41 -08:00
Ryan Macnak
12a3699301 Revert "Support spawnUri in app snapshots."
Failures on IA32.

This reverts commit c6ecfe1746.

Review-Url: https://codereview.chromium.org/2631893002 .
2017-01-13 15:52:36 -08:00
Ryan Macnak
c6ecfe1746 Support spawnUri in app snapshots.
Don't mark core_isolate_snapshot_buffer as a const pointer.

Fixes #28368

R=asiva@google.com

Review-Url: https://codereview.chromium.org/2623423007 .
2017-01-13 15:18:27 -08:00
Ryan Macnak
f89056f6cd Revert "Support spawnUri in app snapshots."
This reverts commit 593d4504b0.
This reverts commit 113aa64b98.
This reverts commit 422afa2ead.

Review-Url: https://codereview.chromium.org/2633543003 .
2017-01-13 11:02:44 -08:00
Ryan Macnak
593d4504b0 Support spawnUri in app snapshots.
Fixes #28368

R=asiva@google.com

Review-Url: https://codereview.chromium.org/2628283002 .
2017-01-13 10:37:51 -08:00
Ryan Macnak
5062baffb6 Revert pub to script snapshots in the GN build. Fixes #28346.
App snapshots do not yet support spawnUri (issue #28368).

R=asiva@google.com

Review-Url: https://codereview.chromium.org/2621423004 .
2017-01-12 13:07:29 -08:00
Zachary Anderson
7f55ad8b86 Fuchsia: Allows building the full SDK for host and target.
R=rmacnak@google.com

Review-Url: https://codereview.chromium.org/2571713004 .
2016-12-13 13:02:52 -08:00
Zachary Anderson
ccfafee023 Make list_files.py and list_dart_files.py return absolute paths for GN
This makes doing an SDK build in the Fuchsia tree easier.

The previous attempt at this change failed in gyp builds targeting xcode.
They failed because input lists for actions of the same target (e.g. the
actions for dartanalyzer) are merged and de-duped when the lists contain
relative paths, but merged and *not* de-duped when the lists contain
absolute paths. gyp rejects xcode files that it generated itself
when they contain duplicate entries.

This CL works around that bug, by using absolute paths in the GN build
and keeping relative paths in the gyp build.

R=rmacnak@google.com

Review-Url: https://codereview.chromium.org/2567213002 .
2016-12-13 10:01:28 -08:00
Zachary Anderson
b873e2b8e3 Revert "Make list_files.py and list_dart_files.py return absolute paths"
This reverts commit a858542c89.

mac gyp build fails.

Review-Url: https://codereview.chromium.org/2574523002 .
2016-12-12 13:14:53 -08:00
Zachary Anderson
a858542c89 Make list_files.py and list_dart_files.py return absolute paths
This makes doing an SDK build in the Fuchsia tree easier

R=johnmccutchan@google.com

Review-Url: https://codereview.chromium.org/2564413004 .
2016-12-12 13:09:26 -08:00
Ryan Macnak
13ba4b2710 When building app snapshots for the SDK, train dart2js on itself.
Don't train the analzyer on itself as this makes running the test suite slower.

Disable code collection when generating an app snapshot.

R=asiva@google.com

Review URL: https://codereview.chromium.org/2509453002 .
2016-11-16 09:10:22 -08:00
Zachary Anderson
90d3962ca3 Don't depend on dart_bootstrap if there is a usable prebuilt sdk
Also replace invoke_dart() with compiled_action(), and some other
cleanups.

fixes #27781

R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org/2493833002 .
2016-11-10 11:16:24 -08:00
Zachary Anderson
e4e7e28c7f GN: Fix build
DDC needs another argument to make --help work.

R=vsm@google.com

Review URL: https://codereview.chromium.org/2480573002 .
2016-11-03 14:51:00 -07:00
Zachary Anderson
f7799da7c5 GN: Fall back on dart_bootstrap where appropriate.
Review URL: https://codereview.chromium.org/2464153003 .
2016-11-01 12:59:36 -07:00
Zachary Anderson
8169499ef8 GN: Format more gn files
Missed these on the first pass.

R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org/2454703004 .
2016-10-27 04:25:34 -07:00
Zachary Anderson
c1b08a0b97 GN: Try to fix Linux build on bots
Review URL: https://codereview.chromium.org/2449213003 .
2016-10-26 10:48:14 -07:00
Zachary Anderson
c1313a5ec7 Format GN files and add a presubmit check that GN is properly formatted
R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org/2451613005 .
2016-10-26 08:50:54 -07:00
Zachary Anderson
c39525802e GN: Fix build
GN is unhappy when a rule that consumes a file generated by
another rule doesn't depend directly on that rule.

This change also quiets output from invoking Dart to follow the
rule of GN builds that a successful build generates no output.

Review URL: https://codereview.chromium.org/2446473002 .
2016-10-22 00:05:39 -07:00
Ryan Macnak
af7bf4dab0 GN: Build the SDK with app snapshots instead of script snapshots.
R=zra@google.com

Review URL: https://codereview.chromium.org/2442513003 .
2016-10-21 17:40:21 -07:00
Zachary Anderson
ee21a2261d Use list_dart_files.py instead of list_files.py in GN build.
To track https://codereview.chromium.org/2391863002/ on the
gyp side, and use it in more places.

R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org/2392253002 .
2016-10-05 07:50:40 -07:00
Zach Anderson
9a6797e6ba GN build on windows
R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org/2385643004 .
2016-10-04 09:19:07 -07:00
Zachary Anderson
7c784cea9f Linux create_sdk GN build for host
This CL enables GN builds of all targets from dart.gyp
on Linux for the host (i.e. ia32, x64).

R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org/2379803002 .
2016-09-29 13:23:00 -07:00
William Hesse
1f97819b25 Add --packages flag when compiling dart2js snapshot
BUG=
R=paulberry@google.com

Review URL: https://codereview.chromium.org/2368073004 .
2016-09-26 18:48:26 +02:00
William Hesse
79b682b885 Add explicit package spec to snapshot build steps
BUG=
R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org/2372573002 .
2016-09-26 15:52:31 +02:00
William Hesse
0695b1db3a Remove package root target and support scripts
BUG=https://github.com/dart-lang/sdk/issues/23565
R=kustermann@google.com

Review URL: https://codereview.chromium.org/2346163005 .
2016-09-20 13:32:50 +02:00
Konstantin Shcheglov
f4fdf25cb1 Fix dartanalyzer.gyp for SDK summary generation.
R=paulberry@google.com, whesse@google.com
BUG=

Review URL: https://codereview.chromium.org/2341303004 .
2016-09-16 09:13:01 -07:00
William Hesse
61eee9ee52 Use checked-in .package file for building and testing
Stop creating [build dir]/packages directory with symbolic links.

BUG=https://github.com/dart-lang/sdk/issues/23565
R=rnystrom@google.com

Committed: 5d3e356ca7

Review URL: https://codereview.chromium.org/1746743002 .

Reverted: 6d238ba197
2016-09-16 15:03:18 +02:00
Konstantin Shcheglov
fa24d1caaa Stop generating index information for SDK and simplify summary generation.
The implementation is still element model based, I will switch it to
the AST based approach in a following CL.

R=paulberry@google.com
BUG=

Review URL: https://codereview.chromium.org/2345793002 .
2016-09-15 16:15:20 -07:00
William Hesse
6d238ba197 Revert "Use checked-in .package file for building and testing"
This reverts commit 5d3e356ca7.

BUG=
R=eernst@google.com

Review URL: https://codereview.chromium.org/2340813004 .
2016-09-15 15:46:49 +02:00
William Hesse
5d3e356ca7 Use checked-in .package file for building and testing
Stop creating [build dir]/packages directory with symbolic links.

BUG=https://github.com/dart-lang/sdk/issues/23565
R=rnystrom@google.com

Review URL: https://codereview.chromium.org/1746743002 .
2016-09-15 14:50:30 +02:00