Brian Wilkerson
dd49e79f74
Add context information to driver and add hooks for plugin management
...
R=scheglov@google.com
Review-Url: https://codereview.chromium.org/2795743002 .
2017-04-03 10:13:45 -07:00
Vyacheslav Egorov
41b5d7c6de
VM: Fix incorrect canonicalization rule for UnboxedIntConverterInstr
.
...
The rule assumed that `UnboxedIntConverter(U->V, UnboxedIntConverter(V->U, v))` is
equal to `v` which is incorrect if the first convertion is truncating and
V is a larger representation (Mint) than U (Int32 or Uint32).
Now canonicalization rule takes into account if the first convertion is
truncating and does not try to short-circuit such convertions.
Fixes https://github.com/dart-lang/sdk/issues/29137
R=kustermann@google.com
BUG=http://dartbug.com/29137
Review-Url: https://codereview.chromium.org/2793003002 .
2017-04-03 18:51:04 +02:00
Zachary Anderson
78706025da
[vm service] Collect garbage before getting native allocation samples
...
R=bkonyi@google.com
Review-Url: https://codereview.chromium.org/2795473003 .
2017-04-03 09:12:52 -07:00
Peter von der Ahé
5a81cba61a
Specify location of SDK when running analyzer.
...
R=whesse@google.com
Review-Url: https://codereview.chromium.org/2794003002 .
2017-04-03 17:47:21 +02:00
Jacob Richman
509bcd58e1
Fix type checks and display for JS interop types.
...
Re-enable formatter test that had been disabled when someone changed type
name display for Foo<dynamic> types.
Fix bug in how type names were displayed for JS interop types.
BUG=
R=vsm@google.com
Review-Url: https://codereview.chromium.org/2789663005 .
2017-04-03 08:34:20 -07:00
Devon Carew
3fd497b510
Ignore some uses of deprecated APIs.
...
BUG=
Review-Url: https://codereview.chromium.org/2796483002 .
2017-04-03 08:31:00 -07:00
Erik Corry
1f1854aa78
Fix disassembly of OSR functions.
...
This got broken when I changed the compiler to not install OSR code on the
function, where it had to be immediately uninstalled again.
R=vegorov@google.com
BUG=
Review-Url: https://codereview.chromium.org/2793943002 .
2017-04-03 17:29:36 +02:00
Peter von der Ahé
38f398281d
Mark tests as slow.
...
Review-Url: https://codereview.chromium.org/2791283002 .
2017-04-03 16:54:20 +02:00
Brian Wilkerson
e3aa3b8ea9
Fix support for uri in part-of directive
...
R=jcollins@google.com
Review-Url: https://codereview.chromium.org/2786853003 .
2017-04-03 07:35:46 -07:00
Peter von der Ahé
0e82fb44c2
Run analyzer from sources instead of built SDK.
...
R=johnniwinther@google.com
Review-Url: https://codereview.chromium.org/2790143002 .
2017-04-03 16:13:51 +02:00
William Hesse
801bf3a829
Update checked-in SDKs to 1.23.0-dev.11.3
...
BUG=
R=kustermann@google.com
Review-Url: https://codereview.chromium.org/2791233002 .
2017-04-03 15:49:06 +02:00
Peter von der Ahé
5bdc1199ca
Fix dart2js warnings and add test to ensure it stays clean.
...
Filed https://github.com/dart-lang/sdk/issues/29224 to track all the problems that require ignore.
R=johnniwinther@google.com
Review-Url: https://codereview.chromium.org/2791993002 .
2017-04-03 15:08:40 +02:00
Jens Johansen
1ef5c76a4e
Stream StaticGet
...
BUG=
R=kmillikin@google.com
Review-Url: https://codereview.chromium.org/2794473002 .
2017-04-03 12:28:06 +02:00
Jens Johansen
c9750187d8
Stream SymbolLiteral & BigIntLiteral
...
R=kmillikin@google.com
Review-Url: https://codereview.chromium.org/2786073002 .
2017-04-03 12:23:38 +02:00
Jens Johansen
819ce4241c
Stream DoubleLiteral
...
BUG=
R=kmillikin@google.com
Review-Url: https://codereview.chromium.org/2783183002 .
2017-04-03 12:18:47 +02:00
Jens Johansen
fad8f80afd
Add kernel_offset to all expressions; Make KernelConstMapKeyEqualsTraits use kernel_offset
...
BUG=
R=kmillikin@google.com
Review-Url: https://codereview.chromium.org/2781313003 .
2017-04-03 12:10:31 +02:00
Jens Johansen
42c80b5906
Step #2 in streaming the kernel flowgraph
...
* Stream InvalidExpression
* Stream NullLiteral
* Stream BoolLiteral
* Stream IntLiteral
* Stream ThisExpression
* Stream StringLitereal
R=kmillikin@google.com
Review-Url: https://codereview.chromium.org/2787463003 .
2017-04-03 12:04:08 +02:00
Vyacheslav Egorov
7f147b1b6e
Revert "When linking natives lazily (as in AOT compilation), don't resolve them eagerly."
...
This reverts commit 8df8025f2a
.
Reason: darkp configuration is completely broken by this CL. Example:
$ python tools/test.py -mrelease -cdartkp -rdart_precompiled -t120 kernel/unsorted/symbol_literal_test
TBR=rmacnak@google.com
Review-Url: https://codereview.chromium.org/2791983002 .
2017-04-03 12:02:33 +02:00
Jens Johansen
63f1de2068
Initial steps into streaming the kernel flowgraph
...
- Moved stuff into .h
- Leak kernel binary blob
- "Streaming" rethrow in FlowgraphBuilder
R=kmillikin@google.com
Review-Url: https://codereview.chromium.org/2776373002 .
2017-04-03 11:40:37 +02:00
Johnni Winther
9fd5ae5b81
Use entities in NativeResolutionEnqueuer and make it reusable for kernel
...
This is step towards computing closed world directly from kernel.
R=efortuna@google.com
Review-Url: https://codereview.chromium.org/2786593004 .
2017-04-03 10:33:21 +02:00
Johnni Winther
23999a0f1e
Use entities in NoSuchMethodRegistry
...
This prepares for a kernel based implementation of NoSuchMethodResolver.
R=efortuna@google.com
Review-Url: https://codereview.chromium.org/2777093010 .
2017-04-03 10:26:53 +02:00
John McCutchan
fb84ff3fc4
Revert "Disable awaiter stepping by default until context level computation is fixed"
...
This reverts commit 61e11c6808
.
BUG=
Review-Url: https://codereview.chromium.org/2791953002 .
2017-04-03 00:06:28 -07:00
Karl Klose
1ec54ff2df
Fix test expectations for io/file_lock_test
...
TBR=jensj@google.com
Review-Url: https://codereview.chromium.org/2789123002 .
2017-04-03 07:47:58 +02:00
John McCutchan
61e11c6808
Disable awaiter stepping by default until context level computation is fixed
...
BUG=
R=asiva@google.com , fschneider@google.com
Review-Url: https://codereview.chromium.org/2787023002 .
2017-04-02 21:03:11 -07:00
Siva Annamalai
4654381213
Move kernel related status lines from service.status to service_kernel.status
...
Review-Url: https://codereview.chromium.org/2789993002 .
2017-03-31 17:57:09 -07:00
Vijay Menon
46d6c56c96
Fix ddc async test code
...
Fortunately, not too many false passes.
R=jacobr@google.com
Review-Url: https://codereview.chromium.org/2792703002 .
2017-03-31 15:57:08 -07:00
Ryan Macnak
dd6140f61b
Remove dart:jni library in FlutterTarget
...
BUG=
R=rmacnak@google.com
Review-Url: https://codereview.chromium.org/2793703002 .
2017-03-31 15:55:00 -07:00
Florian Schneider
80b43ff15c
Reland "VM: Handle null-comparisons in the flow graph type propagation"
...
This reverts commit ee452a8600
.
Original CL: https://codereview.chromium.org/2772143002/
Additional bug fix: Correctly replace ToCid with ToNullableCid in
RedefinitionInstr::ComputeType.
R=rmacnak@google.com
Review-Url: https://codereview.chromium.org/2789943002 .
2017-03-31 15:39:01 -07:00
Mike Fairhurst
761d21d414
Fix #14144 confusing error message misusing a callable object
...
New tests to make sure that:
* Error message calling a closure wrong is unchanged
* Error message calling a static function wrong is unchanged
* Error message calling a callable object wrong is unchanged
* Error message calling nonexist method is unchanged
* Error message calling nonexist method for a callable object is clearer
The new tests involving calling a closure wrong exposed a bug in the
inliner, it assumed (due to lack of ic data, it seems) that all closures
have the right number of arguments. Left that assertion/behavior, but
put a guard around closures specifically (since static and method calls
don't have that bug, due to I think better ic data).
Welcoming myself to the world of VMs.
BUG=
R=fschneider@google.com
Review-Url: https://codereview.chromium.org/2785623004 .
2017-03-31 15:09:02 -07:00
Vijay Menon
3be5099a8c
Don't format on DDC presubmit
...
The primary presubmit (PRESUBMIT.py) now enforces this on git cl
upload. It also uses a difference version of the formatter, so
dropping this avoids that annoyance.
R=jacobr@google.com
Review-Url: https://codereview.chromium.org/2791643003 .
2017-03-31 15:06:16 -07:00
Siva Annamalai
74229dfb1f
Adjust status file to account for build breakage.
...
TBR=fschneider
Review-Url: https://codereview.chromium.org/2793683002 .
2017-03-31 14:51:45 -07:00
Ryan Macnak
a2c41bd926
Move the canonical empty context to the VM isolate.
...
R=fschneider@google.com
Review-Url: https://codereview.chromium.org/2780393005 .
2017-03-31 14:43:01 -07:00
Ryan Macnak
21e9a4fc65
Use -no_compact_unwind when creating dylibs on Mac.
...
Instructs the linker not to attempt generating _eh_frame from the DWARF info, avoiding warnings like
R=vegorov@google.com
ld: warning: could not create compact unwind for _kDartVmSnapshotInstructions: register saved more than once (might be shrink wrap)
Review-Url: https://codereview.chromium.org/2784253003 .
2017-03-31 13:37:09 -07:00
Vijay Menon
466d4ffb9c
Add runtime tests for ignored checks
...
Tests for https://codereview.chromium.org/2788933002/
R=jmesserly@google.com
Review-Url: https://codereview.chromium.org/2789933002 .
2017-03-31 13:31:59 -07:00
Ryan Macnak
d0529c8638
Nicer message when attempting to use Observatory from dart_bootstrap, dart_precompiled_runtime or an unnamed badly configured build.
...
R=johnmccutchan@google.com
Review-Url: https://codereview.chromium.org/2793603002 .
2017-03-31 13:29:52 -07:00
Mike Fairhurst
a5a65d09a4
Tick angular analyzer to v0.0.6
...
BUG=
R=keertip@google.com
Review-Url: https://codereview.chromium.org/2793663002 .
2017-03-31 13:27:40 -07:00
John McCutchan
904beb3d9d
Avoid many temporary allocations when serializing service protocol responses
...
- [x] Use an on stack buffer for small string allocations.
- [x] Avoid unnecessary calls to strlen.
Related #29207
BUG=
R=rmacnak@google.com , zra@google.com
Review-Url: https://codereview.chromium.org/2791633002 .
2017-03-31 13:20:11 -07:00
John McCutchan
4c4c9f2ce6
Fix test failure and add new awaiterFrames to service_dev.md
...
BUG=
Review-Url: https://codereview.chromium.org/2788993002 .
2017-03-31 13:18:07 -07:00
John McCutchan
193f26d1e1
Implement support for single stepping out of an async function.
...
BUG=
R=rmacnak@google.com
Review-Url: https://codereview.chromium.org/2785243003 .
2017-03-31 10:55:11 -07:00
Brian Wilkerson
8d340ee8c6
Add an experimental annotation
...
R=matanl@google.com
Review-Url: https://codereview.chromium.org/2789843003 .
2017-03-31 10:54:24 -07:00
Florian Schneider
ee452a8600
Revert "Reland "VM: Handle null-comparisons in the flow graph type propagation""
...
This reverts commit e7afde47e9
.
This was because of analyzer test failures (out of memory in the background compiler)
TBR=rmacnak@google.com
Review-Url: https://codereview.chromium.org/2794583002 .
2017-03-31 10:53:56 -07:00
Emily Fortuna
6b398ef91c
Allow dartk to print out binary Kernel IR results to stdout if requested.
...
BUG=
R=johnniwinther@google.com
Review-Url: https://codereview.chromium.org/2784303003 .
2017-03-31 10:48:09 -07:00
Emily Fortuna
4588dceaf3
Start preparing tests to accept binary compiler input.
...
BUG=
R=johnniwinther@google.com
Review-Url: https://codereview.chromium.org/2781423003 .
2017-03-31 10:18:15 -07:00
Florian Schneider
e7afde47e9
Reland "VM: Handle null-comparisons in the flow graph type propagation"
...
This reverts commit 30a942f728
.
Plus:
1. Fixes integer type propagation in the optimizer by introducing a _int64 marker interface
2. Fixes calculation of whether an instructions can deoptimize: This has to be stable so that
once determined that an instructions can't deoptimize, it will stay that way and not flip back
later in the optimization
3. Address comments to improve CompileType::CopyNonNullable()
R=vegorov@google.com
Review-Url: https://codereview.chromium.org/2772143002 .
2017-03-31 10:12:59 -07:00
Vijay Menon
08f085727e
Fix ignore on FutureOr
...
I'll look into adding tests - these eventually supposed to *not* get ignored (see #27223 )
R=leafp@google.com
Review-Url: https://codereview.chromium.org/2788933002 .
2017-03-31 09:30:16 -07:00
Dmitry Olshansky
82beee09c2
VM [KERNEL] Elide null-initialization of the fields
...
They are filled with nulls after allocation, so there is
no need to set a field to null explicitly.
R=vegorov@google.com
Review-Url: https://codereview.chromium.org/2790603002 .
2017-03-31 17:49:38 +02:00
Lasse Reichstein Holst Nielsen
d4c1531b5b
Use the *correct* type for the fix to analysis_server/test/mocks.dart.
...
It's a stream, not an iterable, so the return type is a Future.
Review-Url: https://codereview.chromium.org/2784363003 .
2017-03-31 16:36:24 +02:00
Dmitry Stefantsov
42f82d1d21
Add primitive to create closures and use it for closure conversion
...
A new AST node 'ClosureCreation' is added. It takes a name of a
top-level function, a context, and a closure function type and creates a
closure of the given type. The effect of this closure invocation is the
same as of the invocation of the given top-level function with the
contexts as the first argument.
In order to use 'ClosureCreation', the closure conversion pass now
transforms closures into top-level functions, not closure classes. These
functions receive the context as the first argument.
The type of the expression represented by 'ClosureCreation' is its third
parameter. It its the responsibility of closure conversion pass to
create the correct types for 'ClosureCreation' nodes based on types of
closures transformed into top-level functions.
R=asgerf@google.com
Review-Url: https://codereview.chromium.org/2778223002 .
2017-03-31 14:43:56 +02:00
danrubel
1fbca8be94
cleanup scanner
...
Review-Url: https://codereview.chromium.org/2784353003 .
2017-03-31 08:41:51 -04:00
Lasse R.H. Nielsen
83298690b0
Fix static typing problem in analysis_server tests.
...
After changing argument of `Future` constructor to be `()->FutureOr<T>`,
the `()->Future<dynamic>` argument didn't work.
Problem compounded by return type of `Stream<T>.firstWhere` being `dynamic`.
R=karlklose@google.com
Review-Url: https://codereview.chromium.org/2794503002 .
2017-03-31 14:12:32 +02:00