Commit Graph

329 Commits

Author SHA1 Message Date
Vyacheslav Egorov b0a0a42962 VM: [Kernel] Do not crash when encountering generic methods in Kernel.
Instead do what source based front-end does for now: replace type parameters with dynamic.

BUG=
R=kmillikin@google.com

Review-Url: https://codereview.chromium.org/2571393002 .
2016-12-15 16:23:42 +01:00
Vyacheslav Egorov ddd6534540 VM: [Kernel] Update status files to mark failing language test.
BUG=
TBR=kustermann@google.com

Review-Url: https://codereview.chromium.org/2566283006 .
2016-12-14 00:18:01 +01:00
Martin Kustermann 6a30db5997 Remove sub-errortype DartkMissingCompileTimeError: Since there is a very big overlap between missing CTEs from dartk and from dart_bootstrap
R=vegorov@google.com

Review-Url: https://codereview.chromium.org/2563983002 .
2016-12-09 10:55:03 +01:00
Regis Crelier 6da1083953 Disallow deprecated typedef syntax for mixin apps in the VM (fixes #14410).
Update status files (will reassign issue #14410 to dart2js, since it still
accepts the syntax).

R=floitsch@google.com, scheglov@google.com

Review URL: https://codereview.chromium.org/2556433004 .
2016-12-07 07:34:09 -08:00
Martin Kustermann 117924ed15 Update kernel status files for precompilation after refactoring
The tests for which dartk is missing a compile-time error will run the precompiler on the result and will therefore have a different status entry (even though it is caused by dartk).

Review URL: https://codereview.chromium.org/2547523002 .
2016-12-01 14:48:24 +01:00
Martin Kustermann abd77cab64 Refactor kernel-related status files
To make it clear in the status file whether a crash (or other issues) are coming
from the dartk compiler or from the vm, this CL introduces new status file
markers which are the normal markers prefixed with Dartk (e.g. DartkCrash).

Furthermore this CL groups common failures
  * compiler: dartk & dartkp
  * runtime: vm & dart_precompiled
into shared status file blocks, thereby deduplicating failures (which removes around 500 lines).

R=vegorov@google.com

Review URL: https://codereview.chromium.org/2543973002 .
2016-12-01 13:48:35 +01:00
Asger Feldthaus ecf9acd26c Update vm-kernel status file.
BUG=
R=jensj@google.com

Review URL: https://codereview.chromium.org/2538063002 .
2016-11-30 10:38:21 +01:00
Brian Wilkerson 37bc2efa1f Update status file after enabling read-only access to initializing formals
Review URL: https://codereview.chromium.org/2538803002 .
2016-11-29 09:56:27 -08:00
Martin Kustermann 8698589dee VM: [Kernel] Update status file for precompiled (debug) builders
Review URL: https://codereview.chromium.org/2538713002 .
2016-11-29 10:32:53 +01:00
Martin Kustermann f81bcb660a VM: [Kernel] Update status file for precompiled (release) builders
R=vegorov@google.com

Review URL: https://codereview.chromium.org/2537543002 .
2016-11-28 19:23:23 +01:00
Vyacheslav Egorov 8eceda053f VM: [Kernel] Don't add implicit getters for top level fields into the library dictionary.
Tree shaker can't cope with this and produces incorrect snapshots that contains tree shaken classes.

R=kustermann@google.com
BUG=

Review URL: https://codereview.chromium.org/2536683002 .
2016-11-28 15:50:24 +01:00
Erik Ernst f234278474 Status updates required after CL 2141023002.
Review URL: https://codereview.chromium.org/2524363004 .
2016-11-25 12:16:49 +01:00
Vyacheslav Egorov 73ef820ec1 VM: [Kernel] Relax assertions in SSA construction and in Kernel loading.
- Kernel-to-IL translation leaves behind some unused constants without temp indices assigned.

- Let compile time errors propagate instead of failing with FATAL error in the post load class finalization.

R=kustermann@google.com
BUG=

Review URL: https://codereview.chromium.org/2528763002 .
2016-11-24 16:19:22 +01:00
Asger Feldthaus b0ffc26dab Fix vm-kernel status file after merging kernel.
The buildbots run tests against the checked-in version of analyzer,
not the one in the pubspec, which is why the tests behave differently.

BUG=
R=kmillikin@google.com

Review URL: https://codereview.chromium.org/2524973002 .
2016-11-23 14:19:34 +01:00
Asger Feldthaus ce428a1f20 Complete merge of kernel repo into SDK.
This removes third_party/pkg/kernel and changes dependencies to
refer to pkg/kernel instead.

Some status files are updated to reflect new test outcomes.
2016-11-23 12:46:29 +01:00
Martin Kustermann 656be7a7aa Update status file for kernel
Review URL: https://codereview.chromium.org/2525883002 .
2016-11-23 08:58:18 +01:00
Asger Feldthaus fbb698393d Update third_party/pkg/kernel version
This CL also updates the use of kernel in dart2js, and
updates the VM/kernel status files.

This is a preliminary step to moving kernel into the
SDK repository.

BUG=
R=het@google.com, johnniwinther@google.com, kmillikin@google.com, sigmund@google.com, vegorov@google.com

Committed: https://github.com/dart-lang/sdk/commit/5d66d0e5dc32ce06641f360876361a07de821997

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

Reverted: https://github.com/dart-lang/sdk/commit/d69e048d600468f4a4fe112cb7a750f79e5d9c69
2016-11-22 15:22:20 +01:00
Asger Feldthaus d69e048d60 Revert "Update third_party/pkg/kernel version"
This reverts commit 5d66d0e5dc.

BUG=

Review URL: https://codereview.chromium.org/2514323005 .
2016-11-22 14:35:56 +01:00
Asger Feldthaus 5d66d0e5dc Update third_party/pkg/kernel version
This CL also updates the use of kernel in dart2js, and
updates the VM/kernel status files.

This is a preliminary step to moving kernel into the
SDK repository.

BUG=
R=het@google.com, johnniwinther@google.com, kmillikin@google.com, sigmund@google.com, vegorov@google.com

Review URL: https://codereview.chromium.org/2518023002 .
2016-11-22 13:42:13 +01:00
Martin Kustermann 63af3f56ee VM: [Kernel] Cherry-pick from dart-lang/kernel_sdk
Fix a trio of issues in type finalization.

1. We were using is_type_finalized to detect classes that had already been
   initialized by DilReader::ReadPreliminaryClass.  This state is not
   guaranteed by this function, however is_cycle_free is.

2. In the VM, classes that were created type finalized were not marked as
   cycle free because finalization did not consider them so cycle-freeness
   didn't matter.  We would therefore try to initialize these classes with
   DilReader::ReadPreliminaryClass and mutate types in them.  This causes
   them to have unfinalized types but still have is_type_finalized true.

3. Types in top-level procedures were not necessarily finalized.  A simple
   way to achieve this is to finalize each library's top-level class.

Review URL: https://chromereviews.googleplex.com/520437013 .

R=kmillikin@google.com

Review URL: https://codereview.chromium.org/2514373002 .
2016-11-21 16:38:30 +01:00
Martin Kustermann 8cb83ecde0 VM: [Kernel] Update status file for debug mode after merge
R=vegorov@google.com

Review URL: https://codereview.chromium.org/2518983002 .
2016-11-21 10:51:07 +01:00
Vyacheslav Egorov 57af30e2d5 VM: [Kernel] Make NativeFieldWrapperClass[1-4] constructible when running from Kernel.
For unclear reason sdk/lib/html/dartium/nativewrappers.dart had these classes
with constructors that would throw. In reality on Kernel ever uses this file so
nobody would use these constructors before anyway.

When running Kernel binaries we need to be able to construct subclasses of
these classes - so they need to have non-throwing constructors.

R=kustermann@google.com
BUG=http://dartbug.com/27590

Review URL: https://codereview.chromium.org/2511083003 .
2016-11-17 18:59:08 +01:00
Vyacheslav Egorov 23fd1a184b VM: Support bootstrapping core libraries from Kernel binaries instead of source.
BUG=http://dartbug.com/27590
R=asiva@google.com

Review URL: https://codereview.chromium.org/2485993002 .
2016-11-16 13:56:20 +01:00
Martin Kustermann 61c0467d41 Implement instance field guards for kernel-based FlowGraphBuilder
R=vegorov@google.com

Review URL: https://codereview.chromium.org/2469703002 .
2016-11-01 16:09:22 +01:00
Vyacheslav Egorov eb8c24e133 Reland "Merge more Kernel infrastructure from kernel_sdk SDK fork."
R=zra@google.com
BUG=

Review URL: https://codereview.chromium.org/2451623006 .
2016-10-27 10:09:22 +02:00
Vyacheslav Egorov 12968edb9c Revert "Reland "Merge more Kernel infrastructure from kernel_sdk SDK fork.""
This reverts commit 4e7a31262e.

Windows bots are broken now.

R=zra@google.com
BUG=

Review URL: https://codereview.chromium.org/2451893004 .
2016-10-26 17:07:18 +02:00
Vyacheslav Egorov 4e7a31262e Reland "Merge more Kernel infrastructure from kernel_sdk SDK fork."
This relands commit 2fed1c3905 with fixes to ensure that analyzer summaries are correctly created and XARM build does not try to use target binaries on the host.

R=zra@google.com
BUG=

Review URL: https://codereview.chromium.org/2453773002 .
2016-10-26 16:48:28 +02:00
Vyacheslav Egorov cf7ff42e60 Revert "Merge more Kernel infrastructure from kernel_sdk SDK fork."
This reverts commit 2fed1c3905.

SDK builds are failing

TBR=zra@google.com

Review URL: https://codereview.chromium.org/2455593002 .
2016-10-26 13:06:27 +02:00
Vyacheslav Egorov 2fed1c3905 Merge more Kernel infrastructure from kernel_sdk SDK fork.
- bring patched SDK generation scripts and VM patch tweaks that allow VM patch files to be parsed by analyzer front-end;
  Patched SDK is an SDK with all VM patches spliced into it. Kernel compiler is based on the analyzer front-end which does
  not have any patch files support/model so for it to produce Kernel files that match VM we need to generate a such patched SDKs.

- bring test script modifications that allow to test Kernel pipeline

BUG=
R=asiva@google.com, kmillikin@google.com, whesse@google.com, zra@google.com

Review URL: https://codereview.chromium.org/2434123003 .
2016-10-26 13:02:54 +02:00