Commit Graph

1248 Commits

Author SHA1 Message Date
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
Beeravolu Siva Chandra Reddy 2ea5140093 Fix couple of vm/cc/DartAPI_* tests for the dartk configuration.
R=asiva@google.com

Review-Url: https://codereview.chromium.org/2994883002 .
2017-08-14 17:54:50 +02:00
Beeravolu Siva Chandra Reddy 6fab2fdbe8 Update vm.status with the new test names.
R=jensj@google.com

Review-Url: https://codereview.chromium.org/3001553002 .
2017-08-11 11:09:32 +02:00
Beeravolu Siva Chandra Reddy abf9eae3f7 Add a prefix convention for tests in [dart|debugger]_api_impl_tests.cc.
R=asiva@google.com

Review-Url: https://codereview.chromium.org/3001513002 .
2017-08-11 10:38:11 +02:00
Jens Johansen 60ed069e7c [kernel] Make snapshotting work.
This CL enables snapshotting for kernel.
Basically what it does is that it writes out and reads in a few
previously missing entries in the snapshot file (from  Field, Function
and Script).

Debugging from a snapshot made from kernel will not work as snapshots
does not contain sourcecode (it is normally synthesized from the
TokenStream which doesn't exist in kernel).

BUG=
R=kmillikin@google.com

Review-Url: https://codereview.chromium.org/2993613002 .
2017-08-10 10:26:26 +02:00
Diogenes Nunez d6f4895aa5 Reverts IsolateReload commits that marked two tests as crashing.
This is a part of the revert in 91662ce579.

Revert "Mark vm/cc/IsolateReload_ClassFieldRemoved as crashing on dartk-vm."

This reverts commit 51229000e3.

Revert "Mark vm/cc/IsolateReload_ClassFieldRemoved as crashing on dartk-vm."

This reverts commit 969ad4f622.

BUG=

Review-Url: https://codereview.chromium.org/2993963003 .
2017-08-08 16:03:09 -07:00
Lasse R.H. Nielsen 969ad4f622 Mark vm/cc/IsolateReload_ClassFieldRemoved as crashing on dartk-vm.
Gardening.

R=eernst@google.com

Committed: https://github.com/dart-lang/sdk/commit/51229000e39fad947f23292ed073491f7361bb6d
Review-Url: https://codereview.chromium.org/2993783002 .
2017-08-07 11:05:15 +02:00
Lasse R.H. Nielsen 51229000e3 Mark vm/cc/IsolateReload_ClassFieldRemoved as crashing on dartk-vm.
Gardening.

R=eernst@google.com

Review-Url: https://codereview.chromium.org/2993783002 .
2017-08-07 09:57:33 +02:00
Bob Nystrom 012774c78e Remove Dartium support from test.dart.
R=whesse@google.com

Review-Url: https://codereview.chromium.org/2981223002 .
2017-07-20 12:46:50 -07:00
Siva Annamalai df2b6f73e6 Adjust vm unit tests status files in kernel mode.
Review-Url: https://codereview.chromium.org/2978393002 .
2017-07-19 19:33:50 -07:00
Siva Annamalai 33c50e9374 1. Correctly set root_library based on the application script URI instead of looking for the library that has the 'main' method.
2. Adjust the Dart front end to not require a 'main' method when the in memory filesystem is used, this allows execution of VM unit tests which all do not necessarily have a 'main' method (integrated CL from siggi)

3. Change kernel reader to not look for a 'main' methos when Dart_LoadKernel is called.

4. Change Dart_LoadScript to also support loading of dart programs when Dart front end is used

R=aam@google.com, sigmund@google.com

Review-Url: https://codereview.chromium.org/2948273002 .
2017-07-19 18:09:19 -07:00
Siva Chandra cf07adc873 Allow setting breakpoints in function literal field initializers under --dfe.
The change 3b9cf7351b fixed #29581 for the
case when --dfe is not used. This change fixes the issue for the --dfe
configuration as well.

Tests which now pass have been taken out of the status files.

R=asiva@google.com

Review-Url: https://codereview.chromium.org/2979163002 .
2017-07-19 13:17:25 -07:00
Zach Anderson bbb5a5e828 [Windows] Mark CodeImmutability Crash, Timeout
related #30202

R=alexmarkov@google.com

Review-Url: https://codereview.chromium.org/2981273002 .
2017-07-19 09:32:31 -07:00
Ryan Macnak f20b32b793 [vm] Enable mirrors in product mode. Allows building a product mode SDK.
Fixes https://github.com/dart-lang/sdk/issues/29972

R=zra@google.com

Review-Url: https://codereview.chromium.org/2972883002 .
2017-07-12 12:55:58 -07:00
Alexander Markov 47ad7a82b3 Silence truncating_ints_test in dart2js & dartium modes
Dart2js does not support --limit-ints-to-64-bits option which is
required by this test.
Dartium does not support VMOptions specification in the test.

R=asiva@google.com

Review-Url: https://codereview.chromium.org/2974843002 .
2017-07-10 17:33:01 -07:00
Siva Chandra f0ef900fd3 Fix setting breakpoints in parts of a library.
This fixes the regression caused by
1eaa3dd84b and reported in #29988.

When picking a class to set a breakpoint, instead of rejecting classes
not defined in the script, we now reject classes which do not belong to
the library to which the script belongs.

R=asiva@google.com

Review-Url: https://codereview.chromium.org/2965673004 .
2017-07-10 17:20:26 -07:00
Alexander Markov 7a20b6b8d8 Option to truncate integers to 64 bits, part 1 (core VM changes)
This changeset revises --limit-ints-to-64-bits option to
change range of integers from unlimited to int64.
On overflow, integer arithmetic operations silently wrap around and
discard extra bits. No Bigints are allocated in case of overflow.

This changeset is the 1st part in the series of changes, it revises the implementation of integer arithmetic operations. More changes will follow.

R=regis@google.com, zra@google.com

Issue: https://github.com/dart-lang/sdk/issues/30103
Review-Url: https://codereview.chromium.org/2974633003 .
2017-07-10 15:16:40 -07:00
Zachary Anderson e7c96cae8c [Fuchsia] Implements NetworkInterface.list()
US-241

R=rmacnak@google.com, tkilbourn@google.com

Review-Url: https://codereview.chromium.org/2962383002 .
2017-06-30 10:54:08 -07:00
Alexander Markov 499a587003 Fix incorrect DBC code generation of range-based CheckClassId
CheckClassId IL instructions with ranges of Cids were incorrectly
generated to DBC: instead of embedding range length directly into the Nop,
a constant was added into an object pool and index of the constant was
stored in Nop.

Closes https://github.com/dart-lang/sdk/issues/29846

R=zra@google.com

Review-Url: https://codereview.chromium.org/2964583003 .
2017-06-29 15:32:44 -07:00
Zachary Anderson 50475dd351 [Fuchsia] Fix test image. Update status files for vm and language suites
IN-70

R=rmacnak@google.com

Review-Url: https://codereview.chromium.org/2957233003 .
2017-06-29 07:45:19 -07:00
Siva Chandra a23178ee77 Load vmservice from a .dill file when generating AOT snapshots.
This will happen only if --dfe option is specified along with the
--kernel-binaries option.

R=asiva@google.com

Review-Url: https://codereview.chromium.org/2949323002 .
2017-06-23 09:39:18 -07:00
Jens Johansen ccf5c13127 [kernel] Update vm.status file for mac
4b9f8eb460 didn't update the status file properly.

BUG=

Review-Url: https://codereview.chromium.org/2945253002 .
2017-06-21 10:34:30 +02:00
Jens Johansen 4b9f8eb460 [kernel] Add TokenPosition to AllocateObject, fix some cc tests
- Add TokenPosition to AllocateObject
  meaning that kernel more often has a TokenPosition available.
  This might influence profiling, especially it influences some
  of the vm/cc/Profiler* tests.

- Update profiler_service to also be able to find the current token
  via kernel (as opposed to either returning NULL or crashing).
  This makes use of the source code included in the kernel file.

BUG=
R=kmillikin@google.com, vegorov@google.com

Review-Url: https://codereview.chromium.org/2944433003 .
2017-06-21 09:41:16 +02:00
Siva Annamalai 8b7af73daa 1. Dynamically compute the main closure that needs to be run by the main isolate
2. Get rid of _getMainClosure()
3. Adjust the AOT compiler to ensure it retains the function associated with
   the main closure without having to include '_getMainClosure()' in the list
   of embedder specified entry points
4. Get rid of the hack in kernel reader to do a delayed patch of
   '_getMainClosure()' in the builtin library.

BUG=
R=aam@google.com, rmacnak@google.com

Review-Url: https://codereview.chromium.org/2933603002 .
2017-06-15 10:40:45 -07:00
Peter von der Ahé f71e6fd49b [gardening] Update status file for vm tests that crash in debug mode.
Review-Url: https://codereview.chromium.org/2934423002 .
2017-06-15 14:10:08 +02:00
Peter von der Ahé fc2f27b52f [gardening] Undo accidental skip.
Review-Url: https://codereview.chromium.org/2937023002 .
2017-06-14 14:04:48 +02:00
Peter von der Ahé a14d98ecf5 [gardening] Skip flaky vm tests.
Review-Url: https://codereview.chromium.org/2941733002 .
2017-06-14 13:34:37 +02:00
Peter von der Ahé 3c17c44d52 Implement metadata on methods and fields.
R=paulberry@google.com

Review-Url: https://codereview.chromium.org/2935993002 .
2017-06-14 08:25:17 +02:00
Karl Klose ffa2713cfc [Gardening] Mark vm/cc/ScriptSnapshotsUpdateSubclasses as crashing on dartk
R=dmitryas@google.com

Review-Url: https://codereview.chromium.org/2934033002 .
2017-06-13 10:25:29 +02:00
Bob Nystrom e5263f0c40 Removed uses of removed negated status variables.
R=jmesserly@google.com

Review-Url: https://codereview.chromium.org/2935883002 .
2017-06-12 16:04:18 -07:00
Peter von der Ahé 96e494d534 Complain about external methods with a body.
R=paulberry@google.com

Review-Url: https://codereview.chromium.org/2930093002 .
2017-06-10 10:13:04 +02:00
Ryan Macnak 3b7b05eaa9 [hot reload] Ensure we free the old class table even when there are no shape changes.
Issue #28349

R=regis@google.com

Review-Url: https://codereview.chromium.org/2925303002 .
2017-06-08 14:13:29 -07:00
Vyacheslav Egorov 681138e882 Gardening: Mark cc/IsolateReload_TypedefAddParameter as failing with ASAN.
R=rmacnak@google.com
BUG=https://github.com/dart-lang/sdk/issues/28349

Review-Url: https://codereview.chromium.org/2931823002 .
2017-06-08 14:03:43 +02:00
Peter von der Ahé f73e2ecf28 Clean up status files.
R=johnniwinther@google.com

Review-Url: https://codereview.chromium.org/2928903002 .
2017-06-08 13:50:30 +02: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
Martin Kustermann 31d0a74616 Update vm.status to get new vm-kernel-macos builders green
BUG=
R=vegorov@google.com

Review-Url: https://codereview.chromium.org/2931573002 .
2017-06-07 11:01:57 +02:00
Alexander Aprelev 6573c74301 Reenable vm tests with -cdartk DFE parser.
This was accidentally disabled in 7e2d9ac85d.

BUG=#28264
R=asiva@google.com

Review-Url: https://codereview.chromium.org/2920733004 .
2017-06-02 09:34:11 -07:00
Siva Chandra a5aaa7f5eb Update test failures after 3b9cf73.
BUG=
TBR=aam

Review-Url: https://codereview.chromium.org/2907003002 .
2017-05-26 22:57:24 -07:00
Bob Nystrom c296f75d10 Revert "Revert "Revert "Revert "Refactor test option parsing code.""""
This reverts commit 02547656cc.

R=efortuna@google.com

Review-Url: https://codereview.chromium.org/2904313002 .
2017-05-26 15:04:55 -07:00
Bob Nystrom 02547656cc Revert "Revert "Revert "Refactor test option parsing code."""
This reverts commit 79af418430.

Review-Url: https://codereview.chromium.org/2912563002 .
2017-05-26 14:46:04 -07:00
Bob Nystrom 79af418430 Revert "Revert "Refactor test option parsing code.""
This reverts commit d03835783c.

R=efortuna@google.com

Review-Url: https://codereview.chromium.org/2908833002 .
2017-05-26 14:18:13 -07:00
Bob Nystrom d03835783c Revert "Refactor test option parsing code."
This reverts commit 9c2dff8ebc.

R=nweiz@google.com

Review-Url: https://codereview.chromium.org/2909723002 .
2017-05-26 13:51:26 -07:00
Bob Nystrom 9c2dff8ebc Refactor test option parsing code.
This doesn’t touch the resulting configuration map, which is what this
is leading up to, but it cleans up the specification and parsing of the
options and removes a lot of redundancy.

Behavior should be the same as it was before, except that all options
now allow both their underscore-separated and hyphen-separated names.
So this is now valid:

test.py --hot_reload --append-logs

Where before, you use to have to do --hot-reload (OK) and
--append_logs (bad, since almost all other options expect hyphens).

R=sigmund@google.com

Review-Url: https://codereview.chromium.org/2902023002 .
2017-05-26 13:36:44 -07:00
Alexander Aprelev b44ae265f7 Update failing mac kernel test status.
This is caused by vm switch to DFE kernel parser in https://github.com/dart-lang/sdk/commit/16c0db1022ff3294678479e60e3deee2e96dff05.

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

Review-Url: https://codereview.chromium.org/2908623002 .
2017-05-26 12:59:58 -07:00
Alexander Aprelev 1333f97b9a Mark more dartk tests as failing with vm switched to DFE parser
TBR=siva

BUG=https://github.com/dart-lang/sdk/issues/28264

Review-Url: https://codereview.chromium.org/2901103006 .
2017-05-24 21:54:59 -07:00
Alexander Aprelev 16c0db1022 Revert "Revert "With this change 'tools/test.py -cdartk vm' will run vm tests with Dart Frontend parser.""
This reverts commit e0cdea811a.

Update status of vm tests, that don't work with DFE yet.

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

Review-Url: https://codereview.chromium.org/2895153005 .
2017-05-24 20:16:48 -07:00
Vyacheslav Egorov 0eb44ec68f Use same range info when emitting code and computing if instruction can deopt.
For BinarySmiOpInstr and ShiftMintOpInstr we use range information to both
decide if instruction can deopt and decide which checks should be emitted
when emitting native code for this instruction.

However because range information is attached to the definition and not
uses it often gets out of sync as we mutate the graph. For example we might
first make a decision that an instruction can't deoptimize based on more
precise range information but then use less precise information in the
backend for deciding which parts of the instruction to emit (because
redifinition or a phi-instruction was removed from the graph). This mismatch
can lead to a crash if less precise information tells backend that one of the
inputs need to be checked - because there is no deoptimization label to jump
to.

This CL is addressing this problem by ensuring that range information is
cached at the use and both ComputeCanDeoptimize() and backend use the same
range information.

Additionally this CL kills overly generic MergedMath instruction and replaces it
with TruncDivModInstr.

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

Review-Url: https://codereview.chromium.org/2891113002 .
2017-05-21 19:01:49 +02:00
Zachary Anderson 7fb361907b [infra] Make gclient runhooks gn for Android on supported platforms
Make GN run for Android configurations on supported host platforms
on a gclient runhooks. This should fix the vm-precomp-android-* bots

Review-Url: https://codereview.chromium.org/2861363002 .
2017-05-06 23:52:26 -07:00
Zachary Anderson 1f5a55cb77 Update ASAN status for clang roll
IsolateReload tests that were failing on x64 asan are now also failing
on ia32 asan.

related #28349

Review-Url: https://codereview.chromium.org/2869583002 .
2017-05-06 23:05:35 -07:00