Aske Simon Christensen
e191d4feb5
Simplify errors on invalid arguments
...
Change-Id: I1bd94725b4e4e44e706c6d22543bbea22649ec69
Reviewed-on: https://dart-review.googlesource.com/55680
Commit-Queue: Aske Simon Christensen <askesc@google.com >
Reviewed-by: Peter von der Ahé <ahe@google.com >
2018-05-22 11:14:22 +00:00
Samir Jindel
39c93a2b19
Revert "Revert "[vm/kernel] Expression execution through Kernel."
...
This reverts commit b5154dd01e .
Original revision is in patchset 1.
Change-Id: Ic0776011c6fdbd64c025086535351474a9a88b6e
Reviewed-on: https://dart-review.googlesource.com/54407
Commit-Queue: Samir Jindel <sjindel@google.com >
Reviewed-by: Alexander Aprelev <aam@google.com >
2018-05-15 12:03:22 +00:00
Ryan Macnak
a5c11d7d03
[vm] Remove Dart_ReadKernelBinary, take 2.
...
Update status for simulators, which the test harness invokes with DIL files instead of source files.
Change-Id: I8444ad7e17a0a71a1ce3c0021487397baa1c3e65
Reviewed-on: https://dart-review.googlesource.com/54622
Commit-Queue: Ryan Macnak <rmacnak@google.com >
Reviewed-by: Alexander Aprelev <aam@google.com >
2018-05-14 20:58:08 +00:00
Ryan Macnak
407872b9e5
Revert "[vm] Remove Dart_ReadKernelBinary."
...
This reverts commit 2998c32951 .
Reason for revert: Failures with kernel + simulators
Original change's description:
> [vm] Remove Dart_ReadKernelBinary.
>
> - Fix const-ness of Dart_FileReadCallback and callers.
> - Fix leak on read error in DartUtils::FileRead.
>
> This is progress towards sharing kernel memory on Fuchsia.
>
> Bug: https://github.com/dart-lang/sdk/issues/32618
> Change-Id: I47f8b224905d6a105a5ca0ab2ee4ab6a42b5e342
> Reviewed-on: https://dart-review.googlesource.com/47102
> Commit-Queue: Ryan Macnak <rmacnak@google.com >
> Reviewed-by: Siva Annamalai <asiva@google.com >
TBR=aam@google.com ,rmacnak@google.com ,asiva@google.com
Change-Id: Ibb636b817de1629a062fe0a6ef9462a2fef669ef
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: https://github.com/dart-lang/sdk/issues/32618
Reviewed-on: https://dart-review.googlesource.com/54560
Reviewed-by: Ryan Macnak <rmacnak@google.com >
Commit-Queue: Ryan Macnak <rmacnak@google.com >
2018-05-10 01:36:39 +00:00
Ryan Macnak
2998c32951
[vm] Remove Dart_ReadKernelBinary.
...
- Fix const-ness of Dart_FileReadCallback and callers.
- Fix leak on read error in DartUtils::FileRead.
This is progress towards sharing kernel memory on Fuchsia.
Bug: https://github.com/dart-lang/sdk/issues/32618
Change-Id: I47f8b224905d6a105a5ca0ab2ee4ab6a42b5e342
Reviewed-on: https://dart-review.googlesource.com/47102
Commit-Queue: Ryan Macnak <rmacnak@google.com >
Reviewed-by: Siva Annamalai <asiva@google.com >
2018-05-10 00:35:37 +00:00
Samir Jindel
b5154dd01e
Revert "[vm/kernel] Expression execution through Kernel.
...
This reverts commit afd0a52a5a .
Reason for revert: Breaks kernel-a32 and kernel-rbc bots
Original change's description:
> [vm/kernel] Expression execution through Kernel.
>
> Change-Id: Id90c91cb3b71f9ce703e21fe48147b86a7764d34
> Reviewed-on: https://dart-review.googlesource.com/42562
> Reviewed-by: Ryan Macnak <rmacnak@google.com >
> Reviewed-by: Alexander Aprelev <aam@google.com >
> Commit-Queue: Samir Jindel <sjindel@google.com >
TBR=aam@google.com ,rmacnak@google.com ,sjindel@google.com
Change-Id: If1ecad6145aeab81d5d3581798a628ead0265c38
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/54420
Reviewed-by: Samir Jindel <sjindel@google.com >
Commit-Queue: Samir Jindel <sjindel@google.com >
2018-05-09 12:41:00 +00:00
Samir Jindel
afd0a52a5a
[vm/kernel] Expression execution through Kernel.
...
Change-Id: Id90c91cb3b71f9ce703e21fe48147b86a7764d34
Reviewed-on: https://dart-review.googlesource.com/42562
Reviewed-by: Ryan Macnak <rmacnak@google.com >
Reviewed-by: Alexander Aprelev <aam@google.com >
Commit-Queue: Samir Jindel <sjindel@google.com >
2018-05-09 10:27:52 +00:00
Alexander Aprelev
74d03e7a75
Add a test that reproduces hot reload issue when class type arguments change.
...
Bug: https://github.com/dart-lang/sdk/issues/32942
Change-Id: I7f10a327a82ddf23a946b1ba98c63c2e7947d99f
Reviewed-on: https://dart-review.googlesource.com/54313
Commit-Queue: Alexander Aprelev <aam@google.com >
Reviewed-by: Régis Crelier <regis@google.com >
2018-05-08 23:31:39 +00:00
Ben Konyi
60f807baa5
[ VM / Hot-Reload ] Updated vm.status with more descriptive issue numbers.
...
Change-Id: I4d80ad745262aa81645dccccbfc43b874df1c213
Reviewed-on: https://dart-review.googlesource.com/52660
Commit-Queue: Ben Konyi <bkonyi@google.com >
Reviewed-by: Ryan Macnak <rmacnak@google.com >
2018-04-27 18:30:06 +00:00
Aske Simon Christensen
f06118ef8f
Dart 2 fixes to various tests.
...
All fixes are related to the requirement that a concrete class must
implement its entire interface or have a non-trivial noSuchMethod
implementation.
Change-Id: I015e0565e5dd9cfa324c38bb43696e365c58329a
Reviewed-on: https://dart-review.googlesource.com/51880
Commit-Queue: Aske Simon Christensen <askesc@google.com >
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2018-04-20 12:57:19 +00:00
Ben Konyi
f5da30ef13
[ VM / Hot Reload ] Fixed IsolateReload_TearOff_Parameter_Count_Mismatch failing in non-strong mode (Fixes issue 32781).
...
Change-Id: If1d0cd92e0658640b243c0fc0f9aae161322309a
Reviewed-on: https://dart-review.googlesource.com/49824
Reviewed-by: Ryan Macnak <rmacnak@google.com >
Commit-Queue: Ben Konyi <bkonyi@google.com >
2018-04-05 22:14:53 +00:00
Ryan Macnak
09e1766e6c
[vm] Omnibus memory leaks.
...
- Fix leak of IsolateReloadContext.
- Fix leak kernel compilation request arguments.
- Fix leak kernel compilation result errors in reload harness.
- Fix leak of class table when a schema changes but there are no instances.
- Fix leak of kernel::Reader during inlining bailout.
Bug: https://github.com/dart-lang/sdk/issues/32187
Bug: https://github.com/dart-lang/sdk/issues/28349
Change-Id: I9ccc65e018c30a3254e928a43b9727ae8d9314d6
Reviewed-on: https://dart-review.googlesource.com/49547
Reviewed-by: Ben Konyi <bkonyi@google.com >
Commit-Queue: Ryan Macnak <rmacnak@google.com >
2018-04-05 18:12:11 +00:00
Ben Konyi
f2bf297aa4
[ VM / Hot Reload ] Fixed missing NoSuchMethod exceptions when hot reloading in situations with tearoffs.
...
Change-Id: I43ebfe2d788114d028eebbe675308c272972e06d
Reviewed-on: https://dart-review.googlesource.com/49281
Commit-Queue: Ben Konyi <bkonyi@google.com >
Reviewed-by: Ryan Macnak <rmacnak@google.com >
2018-04-04 19:38:25 +00:00
Ryan Macnak
66af0113de
[vm, reload] Eagerly assign static field initializers a PatchClass owner.
...
Static field initializers are not added as members of their owning class, so they must be pre-emptively given a patch class to avoid the meaning of their kernel/token position changing during a reload. Member functions and fields have their owner changed to patch class only when the class is changed during a reload.
Curiously, this was originally done in the C++ front end before hot reload: https://codereview.chromium.org//1317753004
Bug: https://github.com/dart-lang/sdk/issues/32497
Change-Id: I236c188a4b9e05a1e3c011d27e123979db1ca2e5
Reviewed-on: https://dart-review.googlesource.com/46124
Commit-Queue: Ryan Macnak <rmacnak@google.com >
Reviewed-by: Vyacheslav Egorov <vegorov@google.com >
2018-03-12 21:12:29 +00:00
Ben Konyi
b3056d8083
Reland "[VM / Hot Reload] Fixed IsolateReload tests which were importing""
...
This reverts commit 2538adf41a .
Change-Id: I8904241911a7308dd00f6eb3034b05162be44f38
Reviewed-on: https://dart-review.googlesource.com/43494
Reviewed-by: Siva Annamalai <asiva@google.com >
Commit-Queue: Ben Konyi <bkonyi@google.com >
2018-02-23 23:22:18 +00:00
Ben Konyi
418d867250
[ VM ] Updated IsolateReload tests to not directly use TestCase::GetReloadErrorOrRootLibrary as it accesses zone allocated memory.
...
Change-Id: Id6fb04e549dc3c0ed9db470a4e49b750b5a51124
Reviewed-on: https://dart-review.googlesource.com/43488
Reviewed-by: Siva Annamalai <asiva@google.com >
Reviewed-by: Ben Konyi <bkonyi@google.com >
Commit-Queue: Ben Konyi <bkonyi@google.com >
2018-02-23 22:15:17 +00:00
Alexander Markov
de69b1bfe1
[vm] Add test case for issue #32299
...
Issue: https://github.com/dart-lang/sdk/issues/32299
Change-Id: I4cac3bb6a6c40458a489adfe371f6b97507f6794
Reviewed-on: https://dart-review.googlesource.com/43486
Commit-Queue: Alexander Markov <alexmarkov@google.com >
Reviewed-by: Zach Anderson <zra@google.com >
2018-02-23 20:58:36 +00:00
Ben Konyi
2538adf41a
Revert "[VM / Hot Reload] Fixed IsolateReload tests which were importing"
...
This reverts commit fdce9a8266835fba252150fae8f88f4dee06b698.
Change-Id: Ifca4a1254c9045cb5c5e8b5c1dfcd606b858b8aa
Reviewed-on: https://dart-review.googlesource.com/43262
Reviewed-by: Ben Konyi <bkonyi@google.com >
Commit-Queue: Ben Konyi <bkonyi@google.com >
2018-02-22 23:45:25 +00:00
Ben Konyi
8eab1cf6f4
[VM / Hot Reload] Fixed IsolateReload tests which were importing 'test:isolate_reload_helper'
...
Change-Id: I0c78c41b43a9976bc8c3811314c1efff09ee90cc
Reviewed-on: https://dart-review.googlesource.com/43240
Commit-Queue: Ben Konyi <bkonyi@google.com >
Reviewed-by: Siva Annamalai <asiva@google.com >
2018-02-22 23:14:29 +00:00
Ben Konyi
889a277536
[VM / Hot Reload] Fixed various hot reload tests that were failing on the CFE.
...
Change-Id: I4562cdaecc86802e4e7a5407ca06d7a2234102b3
Reviewed-on: https://dart-review.googlesource.com/42520
Commit-Queue: Ben Konyi <bkonyi@google.com >
Reviewed-by: Siva Annamalai <asiva@google.com >
2018-02-20 23:45:09 +00:00
Siva Chandra
6214cedaf5
Create isolate from the platform kernel when running VM tests under dartk.
...
This is take 2 with appropriate status files updates or fixes to the
tests.
This reverts commit 4925ed38ac .
Change-Id: I133b9ae307f0feed1b72ec5a0131facdc51ad4e9
Reviewed-on: https://dart-review.googlesource.com/41600
Commit-Queue: Siva Chandra <sivachandra@google.com >
Reviewed-by: Ryan Macnak <rmacnak@google.com >
2018-02-20 22:08:25 +00:00
Ben Konyi
5716109abd
[VM / Hot-Reload] Fixed tests that were failing due to different failure messages generated by the VM parser and CFE.
...
Change-Id: I6840c993300b3ba36c44bfc8f5c0ce6b8043d6f7
Reviewed-on: https://dart-review.googlesource.com/41571
Reviewed-by: Siva Annamalai <asiva@google.com >
Reviewed-by: Zach Anderson <zra@google.com >
2018-02-15 01:03:04 +00:00
Ben Konyi
6338914d31
- Removed dead code (pulled from review 36121)
...
- Enabled incremental compiler in the dart frontend for the command-line VM
- Added method to update in-memory file system with in-memory sources provided by tests
Change-Id: Ica26b7235383185dbb6b4b41064193d432dfcba0
Reviewed-on: https://dart-review.googlesource.com/36126
Commit-Queue: Ben Konyi <bkonyi@google.com >
Reviewed-by: Siva Annamalai <asiva@google.com >
2018-02-07 19:35:39 +00:00
Régis Crelier
269298fa8e
[VM] Remove support for deprecated tear off syntax in the VM.
...
Change-Id: I2359bb18783cf21eab94001fe401f66c2ce680b7
Reviewed-on: https://dart-review.googlesource.com/14721
Reviewed-by: Siva Annamalai <asiva@google.com >
Commit-Queue: Régis Crelier <regis@google.com >
2017-10-18 01:11:00 +00:00
Siva Annamalai
af550c9b6c
Revert "Revert "1. Remove unused dart debugger API entrypoints which are not used anymore""
...
This reverts commit e76ea5b604 .
1. Remove unused dart debugger API entrypoints which are not used anymore
as this API has been deprecated and dartium was the last user.
2. Some unit tests are using some of these API entrypoints, so moved them
over to a test file which will be linked into run_vm_tests
Change-Id: I5a486b98e4b97eb4df2e58d9cc0ba603e96c2e32
Reviewed-on: https://dart-review.googlesource.com/11180
Reviewed-by: Siva Annamalai <asiva@google.com >
2017-10-04 20:19:22 +00:00
Siva Annamalai
e76ea5b604
Revert "1. Remove unused dart debugger API entrypoints which are not used anymore"
...
This reverts commit c30918f11e .
Bug:
Change-Id: I6d5f037868a967a9f4fcabc1ecb20f34e957036a
Reviewed-on: https://dart-review.googlesource.com/8403
Reviewed-by: Siva Annamalai <asiva@google.com >
2017-09-26 02:20:55 +00:00
Siva Annamalai
c30918f11e
1. Remove unused dart debugger API entrypoints which are not used anymore
...
as this API has been deprecated and dartium was the last user.
2. Some unit tests are using some of these API entrypoints, so moved them
over to a test file which will be linked into run_vm_tests
Change-Id: I3343b23d082400da3c803cf81ea80dfaa5e426cf
Reviewed-on: https://dart-review.googlesource.com/7942
Reviewed-by: Ryan Macnak <rmacnak@google.com >
Commit-Queue: Siva Annamalai <asiva@google.com >
2017-09-26 01:00:01 +00:00
Ryan Macnak
2d698cc4d0
[reload] Rehash constants before running new initializers.
...
Use of constants before rehashing can result in duplicate "canonical" constants.
Change-Id: I48c008b269267461c30933002c5a5e57005dfef5
Reviewed-on: https://dart-review.googlesource.com/5282
Reviewed-by: Alexander Aprelev <aam@google.com >
Commit-Queue: Ryan Macnak <rmacnak@google.com >
2017-09-12 22:00:21 +00:00
Siva Annamalai
8039138f39
Move all the isolate reload code under !defined(DART_PRECOMPILED_RUNTIME)
...
R=zra@google.com
Review-Url: https://codereview.chromium.org/2997243002 .
2017-08-24 09:25:55 -07:00
Alexander Aprelev
a9afb54d6d
Revert "Revert "Introduce IKG into kernel-service to support incremental compilation.""
...
This reverts commit c35510d835
with fix for the build - remove implicit temporary array in TestCase::LoadTestScript.
BUG=
R=asiva@google.com
Review-Url: https://codereview.chromium.org/2998963002 .
2017-08-15 09:03:48 -07:00
Alexander Aprelev
c35510d835
Revert "Introduce IKG into kernel-service to support incremental compilation."
...
This reverts commit f596d440f5 .
BUG=
Review-Url: https://codereview.chromium.org/3002553003 .
2017-08-14 14:15:41 -07:00
Alexander Aprelev
f596d440f5
Introduce IKG into kernel-service to support incremental compilation.
...
This CL also adds few hot-reload incremental kernel files tests(some pass, one is failing), which are useful to track progress of hot reload functionality in Flutter setting.
BUG=
R=asiva@google.com , sigmund@google.com
Review-Url: https://codereview.chromium.org/2993013002 .
2017-08-14 14:06:15 -07:00
Peter von der Ahé
18a41eba08
Report messages instead of just printing.
...
R=sigmund@google.com
Review-Url: https://codereview.chromium.org/2977013002 .
2017-07-14 14:07:44 +02:00
Zachary Anderson
6cd8a79078
VM: Re-format to use at most one newline between functions
...
R=asiva@google.com
Review-Url: https://codereview.chromium.org/2974233002 .
2017-07-13 08:08:37 -07:00
Vyacheslav Egorov
47b1473cbe
Gardening: Mark new IsolateReload tests failing in with -c dartk.
...
Also fix spelling s/IsolateREload/IsolateReload/g
TBR=rmacnak@google.com
BUG=
Review-Url: https://codereview.chromium.org/2924253003 .
2017-06-08 10:33:40 +02:00
Ryan Macnak
092eb33341
[hot reload] Give a better error message when changing between a regular class and a typedef.
...
Fixes #29816
R=regis@google.com
Review-Url: https://codereview.chromium.org/2926203002 .
2017-06-07 16:06:23 -07:00
Siva Annamalai
c69cbb586f
- report tear offs using the x#y syntax as a compilation error
...
(fixes issue 27520)
- adjust status files to reflect all tests which have the x#y syntax as
compile time errors.
BUG=27520
R=regis@google.com
Review-Url: https://codereview.chromium.org/2607173002 .
2016-12-29 13:01:12 -08:00
John McCutchan
f0f32a0e29
Map deleted enum values to a sentinel value.
...
Fixes #27802
BUG=
R=asiva@google.com , rmacnak@google.com
Review URL: https://codereview.chromium.org/2498863002 .
2016-11-15 14:15:36 -08:00
John McCutchan
a776600362
Run field initializers for new instance fields after a reload
...
- [x] When performing a reload, track new fields with initializing expressions.
- [x] After a reload, run the initializing expressions for each new field on all instances of the class.
- [x] Unit tests (heart beat, throwing, and syntax errors)
- [x] Add some utility methods to Function, Field, and Script.
- [x] Fix a major bug in instance morphing and class hierarchy traversal.
Fixes #27666
BUG=
R=rmacnak@google.com
Review URL: https://codereview.chromium.org/2489723003 .
2016-11-14 13:33:19 -08:00
Zachary Anderson
a1bcf051d8
clang-format runtime/vm
...
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org/2481873005 .
2016-11-08 13:54:47 -08:00
John McCutchan
ec2767eeb4
During a reload, give const fields their new values.
...
Fixes #27667
BUG=
R=rmacnak@google.com
Review URL: https://codereview.chromium.org/2474193002 .
2016-11-03 13:01:48 -07:00
Zachary Anderson
e29da6037b
Small cleanups and linter fixes.
...
Review URL: https://codereview.chromium.org/2455983002 .
2016-10-27 05:02:20 -07:00
John McCutchan
7fd9df4d91
Improvements to NoSuchMethodError.toString
...
This makes the following improvements:
* Always show the call that was made, with arguments.
* ...and show the actual arguments in more cases.
* Be less confusing in the case of a call on the null receiver.
* Be less redundant in the output.
* Report when a constructor is called with the wrong number of arguments.
R=rmacnak@google.com
Review URL: https://codereview.chromium.org/2405353002 .
2016-10-12 09:52:51 -07:00
Ryan Macnak
078ea2e4f1
Become: Also forward identity hashes.
...
Fixes #27107
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org/2259013002 .
2016-08-18 14:10:47 -07:00
Ryan Macnak
dd731b4bfe
Fix handle sharing bug in implementation of shape changes.
...
The existing tests only passed because the morphed class had the last cid.
Fixes #27077 .
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org/2253733002 .
2016-08-16 14:16:16 -07:00
Ryan Macnak
e09f2f940e
Reload: Don't crash when a tearoff adds arguments and is called with too few.
...
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org/2241603004 .
2016-08-12 13:06:35 -07:00
Ryan Macnak
5f4a685cd7
Reload: Have dangling extracted properties raise NoSuchMethod.
...
Closes #26995
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org/2204593011 .
2016-08-04 09:54:40 -07:00
Ryan Macnak
ccaf6c6834
RELOAD: Maintain identity of static tear-offs.
...
R=turnidge@google.com
Review URL: https://codereview.chromium.org/2194333002 .
2016-08-01 17:44:23 -07:00
Todd Turnidge
248ee5227b
Pay attention to exports when determine which libraries to reload.
...
Refactor unit testing framework functionality around imported test
libraries.
BUG=
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org/2205513002 .
2016-08-01 13:35:22 -07:00
Todd Turnidge
1166f83bf6
Only reload libraries when they may have been modified.
...
We now check all of the scripts which make up a library. If any
script is modified, then we consider that library to be modified. We
also consider any library which imports a modified library to be
modified. To propagate this info efficiently, we build and discard
the imported-by graph when beginning a reload.
The embedder must provide a FileModifiedCallback in order to support
the detection of modified scripts.
In order to detect changes to package: libraries, we have modified the
embedder interface to provide the resolved url when possible, so that
we don't need to re-resolve package uris when checking for reload.
This change is incompatible and all embedders will need to be updated.
We now support a "force" flag when reloading sources. This causes all
libraries to be reloaded regardless of whether the underlying scripts
have been updated.
Closes #26919
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org/2186423002 .
2016-07-29 11:23:18 -07:00