Commit Graph

64479 Commits

Author SHA1 Message Date
Zichang Guo 7b893ce825 Check return value from Dart_PostCObject() in sample extension
Improve the sample code to check Dart_PostCobject(). It prevents
possible VM hangs when users sent invalid messages and add error
messages.

Bug: https://github.com/dart-lang/sdk/issues/35647
Change-Id: Ib0e752c063b0f6c14385de06000f6195c3caf530
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98743
Commit-Queue: Zichang Guo <zichangguo@google.com>
Reviewed-by: Siva Annamalai <asiva@google.com>
2019-04-12 19:34:50 +00:00
Liam Appelbe 47520b1856 test.py plumbing for ABI versions
Bug: https://github.com/dart-lang/sdk/issues/36047
Change-Id: I68ca1ad01dfb3126c1d8c7f60a87f47d392d2d75
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98745
Commit-Queue: Liam Appelbe <liama@google.com>
Reviewed-by: Alexander Thomas <athom@google.com>
2019-04-12 19:33:40 +00:00
Alexander Markov 25cb45c02f [vm/aot/tfa] Update TFA tests after front-end starts evaluating constants
Usually TFA takes kernel AST with all constants evaluated.
However, in order to avoid calling constant evaluator pass in TFA unit tests
there is a special implementation of pragma annotation parser (for testing)
which accepts annotations which are not ConstantExpressions.

After CFE starts evaluating all constants (constant-update-2018 was enabled in
e9ca6a5335), TFA unit tests need be
switched to use ConstantPragmaAnnotationParser.

Also, empty environment defines are passed to CFE to avoid unevaluated constants
and unit test expectations are updated.

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

Change-Id: I2e7b0647e065cca129449b4531c6278c1d98061d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99269
Reviewed-by: Samir Jindel <sjindel@google.com>
2019-04-12 19:33:35 +00:00
Brian Wilkerson 6c5709c44a Remove the URI of types until we can produce better URIs
Change-Id: I50e4361b2736245d8d1af32da15822e416c5b2be
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99267
Reviewed-by: Ari Aye <ariaye@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-04-12 19:18:01 +00:00
Vyacheslav Egorov 2a237327b2 [vm/compiler] Take into account all redefinitions when computing aliasing.
LoadOptimizer has a builtin alias-analysis which recognized only
Redefinition and AssertAssignable as instructions which must
be followed through when traversing use lists for a given
definition. However after recent changes CheckNull should be
treated the same way as these other two instructions.

This lead to incorrect computation of aliasing identity and
consequently incorrect load forwarding.

This change fixes this bug and also changes implementation of
OriginalDefinition in a way that makes aliasing analysis code
more future-proof.

We introduce virtual method Definition::RedefinedValue and
reimplement Definition::OriginalDefinition through RedefinedValue.

Aliasing analysis is changed to use RedefinedValue to detect
if an instruction is a redefinition.

Fixes https://github.com/flutter/flutter/issues/30619

Bug: https://github.com/flutter/flutter/issues/30619
Change-Id: I8019c93779491a4e6f127119d1d56eb037a3bb56
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99170
Commit-Queue: Vyacheslav Egorov <vegorov@google.com>
Auto-Submit: Vyacheslav Egorov <vegorov@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
2019-04-12 19:07:21 +00:00
Jason Simmons bc5cc91fef Fix the command line for getting the Git head short hash
Fixes https://github.com/flutter/flutter/issues/30433

Change-Id: I77d85963412117f6592326d9ca45625a9f58731e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99266
Reviewed-by: Ryan Macnak <rmacnak@google.com>
2019-04-12 17:52:58 +00:00
Konstantin Shcheglov 85f623374a Triage and fix some more tests.
R=brianwilkerson@google.com

Change-Id: Ia5fcd1591532c3030eb2030ea483192b8c35fd05
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99242
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-04-12 14:19:17 +00:00
Konstantin Shcheglov 5746227588 Support for configurations in import/export directives.
R=brianwilkerson@google.com

Change-Id: I5dce86c0f8b20a3f06323783737b12469bf43067
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99260
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-04-12 14:14:28 +00:00
Aske Simon Christensen e9ca6a5335 Enable constant-update-2018 by default.
Fixes https://github.com/dart-lang/sdk/issues/32517
Fixes https://github.com/dart-lang/sdk/issues/34189
Fixes https://github.com/dart-lang/sdk/issues/34192
Fixes https://github.com/dart-lang/sdk/issues/34205

Unskipping the skipped tests is tracked by
https://github.com/dart-lang/sdk/issues/36433 and
https://github.com/dart-lang/sdk/issues/36595.

Expectation files for front-end tests will need to be updated to make
front-end builders green. They are part of unapprovable suites.

Change-Id: I311f449af6feff5bf40740227a95aa06e0a9d84f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99169
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-04-12 13:30:15 +00:00
Martin Kustermann 125ee3b719 [vm/compiler/aot] Avoid using EnterCallRuntimeFrame/LeaveCallRuntimeFrame due to code size of register spilling
It caused significant size increase due to having register spilling code
for every class allocation stub.

The helper method is called always in "tail" position and it is
therefore ok to clobber registers.

Change-Id: Ic2f19d740230282df1e399ea5009171f7713c837
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99168
Commit-Queue: Martin Kustermann <kustermann@google.com>
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
2019-04-12 13:06:57 +00:00
Paul Berry d81783ff5f Begin writing language_2 tests for NNBD.
These tests validate simple uses of trailing `?` syntax, and exercise
the ambiguous cases mentioned in the draft spec.

Change-Id: If2526c7f4c898495d667d7e16a2005bd8432f8df
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99183
Reviewed-by: Leaf Petersen <leafp@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-04-12 12:42:48 +00:00
Brian Wilkerson c2eb9a9860 Add support to the element model for both lazy variables and required parameters
Change-Id: I2733f26cc4ee1be28fc96bbf23402e34449ff030
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99241
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-04-12 12:41:48 +00:00
Aske Simon Christensen 4ed24862ee [CFE] Extra dummy SDK classes that the constant evaluator needs.
Change-Id: Ib82db42686f5b075e7c3a282e7c370849c4c28e4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99167
Commit-Queue: Aske Simon Christensen <askesc@google.com>
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com>
Auto-Submit: Aske Simon Christensen <askesc@google.com>
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-04-12 11:03:11 +00:00
Martin Kustermann ce9a1e2b54 [vm/compiler] Fix write-barrier elimination issue
The slow patch code of allocation stubs goes to runtime to allocate
objects/contexts/arrays.  Those native calls seemingly guaranteed that
an object is new-or-remembered.

Though the runtime can actually allocate a new object and it can get
moved to old space right before returning to the continuation of slow
path allocation.

This causes us to have a newly allocated object which is not in the
remembered set.

This CL moves the code for "new-or-remembered guarantee" from
runtime_entry.cc to the call-sites in allocation stubs.

Issue https://github.com/dart-lang/sdk/issues/36369

Change-Id: Ieef9232b4c50fdd84ad81dd8f77697bf0c4775ed
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99143
Commit-Queue: Martin Kustermann <kustermann@google.com>
Reviewed-by: Ryan Macnak <rmacnak@google.com>
2019-04-12 09:22:17 +00:00
Aske Simon Christensen a3d13fbf54 [CFE] Option to report error on unevaluated constants.
Fixes https://github.com/dart-lang/sdk/issues/36565

Change-Id: I011e4b5242a02e06392af01ad77615c694fb62ba
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99121
Auto-Submit: Aske Simon Christensen <askesc@google.com>
Reviewed-by: Siva Annamalai <asiva@google.com>
Commit-Queue: Aske Simon Christensen <askesc@google.com>
2019-04-12 08:15:57 +00:00
Johnni Winther 394f88d5cf Create source information from ConstantExpression
(now that it has a fileOffset)

Change-Id: I057ca3cf04a941ccdb03a6d8ca58947650b1cbec
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99161
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2019-04-12 07:37:17 +00:00
Paul Berry b7b7a63407 Fix relative import from pkg/kernel/test to pkg/kernel/lib.
This doesn't work due to the file organization used in google3.

Change-Id: I814a087bd9c6e10fc7738c782af6f54fde3cf000
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99181
Auto-Submit: Paul Berry <paulberry@google.com>
Commit-Queue: Jens Johansen <jensj@google.com>
Reviewed-by: Jens Johansen <jensj@google.com>
2019-04-12 07:17:47 +00:00
Jenny Messerly 0136d96a96 [dartdevc] fix #36532, adds DDC support for CFE constant flag
This fixes DDC to work when CFE's constants flag is enabled.
The fixes are primarily due to how CFE inlines constants, and how it
handles "unevaluated constants" (these arise from modular compilation
and outline kernel files).

Specifically this CL addresses the following issues:

- private names now work across modules (landed in this CL:
  https://dart-review.googlesource.com/c/sdk/+/98926)
- correctly emit tearoffs regardless of how they're represeted
  (constant or StaticGet)
- correctly recognize the internal SDK and JS interop annotations,
  regardless of how they're represented (constants or expressions)
- change how DDC represents `undefined` in its internal SDK, so
  its detected regardless of constant inlining
- emit numeric constants as integers in JS when possible


Change-Id: I0fbda9d24578075f655ea945ed1b2ceed124af48
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99240
Reviewed-by: Mark Zhou <markzipan@google.com>
Commit-Queue: Jenny Messerly <jmesserly@google.com>
2019-04-12 01:47:57 +00:00
Konstantin Shcheglov 022400eecb Fix several small issues with AST based summaries.
R=brianwilkerson@google.com

Change-Id: I716b55f2a656b56d4999547da03308dc11ec3b52
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99190
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-04-12 00:50:06 +00:00
asiva a8f3a5dae6 [VM] Ensure a class is type finalized before finalizing it.
Fix for https://github.com/dart-lang/sdk/issues/36486

Change-Id: Ic04bb71c3bebfa2cf02c02d419b82d2a0e5ed6fd
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99206
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Commit-Queue: Siva Annamalai <asiva@google.com>
2019-04-12 00:16:17 +00:00
Jenny Messerly fe6897ab7f [dartdevc] fix #36252, export private name symbols
This adds support to DDC's Kernel backend for instance constants
inlined across module boundaries, by saving private name symbols
so they can be referred to from outside of the current module.

Change-Id: I28d45d1844f5351f506cc7606dd1c4803037304e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98926
Reviewed-by: Mark Zhou <markzipan@google.com>
Commit-Queue: Jenny Messerly <jmesserly@google.com>
2019-04-11 23:45:17 +00:00
Ryan Macnak b3e5be7a0a Remove from WATCHLISTS.
Change-Id: I7d2d91e7bc47e78a15e6094cf6ab036bffac3b46
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99209
Reviewed-by: Ryan Macnak <rmacnak@google.com>
2019-04-11 23:37:04 +00:00
Konstantin Shcheglov e129b201e5 Fix for absent names of parameters in GenericFunctionType.
R=brianwilkerson@google.com

Change-Id: I9a6444cc076b5d6a79c4ebf33fae9deef85e2049
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99189
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-04-11 21:29:12 +00:00
Ben Konyi 98fc8ac7ff [ VM / Service ] Temporarily disable VM service auth codes by default
Change-Id: Ia14e7d4eeb680a02482f700ce06f76bc0edab594
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99187
Reviewed-by: Siva Annamalai <asiva@google.com>
Commit-Queue: Ben Konyi <bkonyi@google.com>
2019-04-11 21:27:12 +00:00
Konstantin Shcheglov ed280a98a2 Instantiate to bounds when resolving type names.
R=brianwilkerson@google.com

Change-Id: I55ea6339b5b949f986f7e6becc60c0328496489e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99188
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-04-11 21:24:29 +00:00
Sam Rawlins 5d6beb754e Bump http package to fix gclient
Change-Id: I8b44dfc5d59439ac4c635c3dfa15bda020e9bd57
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98722
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Alexander Thomas <athom@google.com>
2019-04-11 21:16:12 +00:00
Nate Bosch f657371972 Change dev_dependencies to any
Using path dependencies here is misleading - they are not sufficient for a
`pub get` and we do not expect to do a pub solve in this package. In order to
suppress the warnings on `pub publish` we need only the `any` dependencies and
can rely on the repo's `.packages` file to resolve their path.

Change-Id: I5e7b2d50ece2c133b2583fd75eab3509db400a95
Bug: 36581
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99204
Commit-Queue: Nate Bosch <nbosch@google.com>
Reviewed-by: Kevin Moore <kevmoo@google.com>
2019-04-11 20:55:22 +00:00
Keerti Parthasarathy 04ee9b9336 Add support for the manifest checks in analyzer_cli
Change-Id: I8d2670cca509cf2229f5475e355e3b85b1ca2f30
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99220
Commit-Queue: Keerti Parthasarathy <keertip@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-04-11 20:41:51 +00:00
Alexander Thomas 72fca58a11 [infra] Update d8 to 7.5.149
Change-Id: I1f1f86ec56d34c32d574f4862578d8a7888b6ac9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96903
Reviewed-by: Stephen Adams <sra@google.com>
Commit-Queue: Stephen Adams <sra@google.com>
Auto-Submit: Alexander Thomas <athom@google.com>
2019-04-11 20:23:51 +00:00
Konstantin Shcheglov a91381ab07 Build local elements in initializer expressions, so support closures.
R=brianwilkerson@google.com

Change-Id: Ic84841835ed4a24c3a58ed0ef3c3d1332e12e8f7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99186
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-04-11 20:20:02 +00:00
Brian Wilkerson 850d56c681 Fix an error in the manifest file test framework
Change-Id: Id0aff93f9312a510a7ef375dc6087e971aa0189c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99203
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Auto-Submit: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-04-11 19:53:31 +00:00
Samir Jindel 4be9357966 [vm] Harden function_stress_test.dart
Change-Id: I0aa9600f79be608881b450fb976bd5f2c958d479
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99146
Commit-Queue: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Auto-Submit: Samir Jindel <sjindel@google.com>
2019-04-11 19:46:12 +00:00
Nate Bosch 561dc79a7b Bring in the latest test and stream_channel
The test repo was split into 3 sub-packages

Change-Id: I2b24a998d590c4a3edeb4a6b18d511f361cb82be
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98262
Commit-Queue: Nate Bosch <nbosch@google.com>
Reviewed-by: Kevin Moore <kevmoo@google.com>
2019-04-11 19:07:58 +00:00
Konstantin Shcheglov d4fee0a85e Issue 36576. Add returnType to constructor in available declarations.
R=brianwilkerson@google.com

Bug: https://github.com/dart-lang/sdk/issues/36576
Change-Id: I6acbf82bbaafc1ab5a1599cd415cdb11600064a8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99200
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-04-11 18:59:43 +00:00
Konstantin Shcheglov 32f120c1e9 Resolve default values in AST summaries.
R=brianwilkerson@google.com

Change-Id: I60bfb04a2616371c6079c7a5819f78ab13fd601b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99202
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-04-11 18:55:28 +00:00
Vyacheslav Egorov d5bbf25197 [vm/compiler] Eliminate Redefinitions based on the reaching type.
Given a graph like this:

  v1 <- ... T{Foo?}
  v2 <- v1.foo()
  v3 <- v1.get:field()

We would constrain v1 after invocation - because call guarantees that v1 is
not null.

  v1 <- ... T{Foo?}
  v2 <- v1.foo()
  v4 <- Redefinition(v1) T{Foo}
  v3 <- v4.get:field()

Which past inlining can turn into something like

  v1 <- ... T{Foo?}
  CheckClass(v1, Foo)  // Inserted by inlining
  ...
  v4 <- Redefinition(v1 T{Foo}) T{Foo}
  v3 <- v4.field

At this point v4 is redundant - because CheckClass above gives the same
guarantee and is movable. Which means we can lift LICM inhibition for v4.field.

Cq-Include-Trybots: luci.dart.try:vm-kernel-precomp-bare-linux-release-simarm64-try, vm-kernel-precomp-bare-linux-release-x64-try, vm-kernel-precomp-linux-debug-x64-try
Change-Id: I4b392ede071c41410a27288cae9bbc813a48cc99
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99144
Commit-Queue: Vyacheslav Egorov <vegorov@google.com>
Auto-Submit: Vyacheslav Egorov <vegorov@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
2019-04-11 18:51:39 +00:00
danrubel 5dd89ef9a0 fix invalid var init parser recovery
Fix https://github.com/Dart-Code/Dart-Code/issues/1548

Change-Id: Ib593c17fa8dfcee3c8ad139b72ceff56497d43a1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99093
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2019-04-11 18:42:02 +00:00
Mayank Patke b9cbb679f3 [dart2js] Add --experiment-new-rti flag.
This flag doesn't affect any behavior yet, but we can start implementing
the new RTI system behind it.

Change-Id: I8c6ae6c60a97394c628f68876e086d455a815ca1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98925
Reviewed-by: Stephen Adams <sra@google.com>
Commit-Queue: Mayank Patke <fishythefish@google.com>
2019-04-11 18:38:48 +00:00
Liam Appelbe 35e6c16c9c Make download_abi_dills.py check that each ABI version exists
Simplifies the logic and makes it more robust, after:
https://dart-review.googlesource.com/c/sdk/+/99090

Bug: https://github.com/dart-lang/sdk/issues/36047
Change-Id: Ic7e6ef8f7bf5da930f8e2ce3cc712d992ad26652
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99201
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Commit-Queue: Liam Appelbe <liama@google.com>
2019-04-11 18:32:28 +00:00
Konstantin Shcheglov 7943e50cfd Compute simply bounded types.
R=brianwilkerson@google.com

Change-Id: Ie992ccba43d2a5fca293c7791ee11875ca73c01f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99184
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-04-11 18:17:23 +00:00
Kevin Moore dc173036ee DEPS: update csslib and html to latest
Change-Id: I46dc2651c4ec7312050644f516a4c1d644cbd09a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99182
Reviewed-by: Alexander Thomas <athom@google.com>
Commit-Queue: Kevin Moore <kevmoo@google.com>
2019-04-11 17:34:53 +00:00
Konstantin Shcheglov e104054059 Rework storing type parameters and function types.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: Ia2c71237cf0f7d9c31c7036522bb24a1aaead92f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99094
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-04-11 17:22:42 +00:00
Jacob MacDonald 2723835b18 dont fall back on the wrapped file system when the uri is the multi-uri scheme
Bug: b/130291059
Change-Id: I10f276c36239cd60ae0adf795dc32c462e078ef4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99087
Commit-Queue: Jake Macdonald <jakemac@google.com>
Auto-Submit: Jake Macdonald <jakemac@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2019-04-11 17:09:52 +00:00
Sam Rawlins b857d53e7e Re-work collection literal strict-raw-type to strict-inference
Bug: https://github.com/dart-lang/sdk/issues/36445 https://github.com/dart-lang/sdk/issues/33749
Change-Id: I127d671840bfcfe3857225932164fa4098963715
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99085
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-04-11 16:20:06 +00:00
Alexander Aprelev 229e00d97b [vm/frontend_server] Ensure incremental compiler gets vm environment defines set.
Change-Id: I86a2ccdd6c7ea6555384ff37966affccb7048055
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99180
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Commit-Queue: Alexander Aprelev <aam@google.com>
2019-04-11 16:15:16 +00:00
Liam Appelbe 88c8d0c5ac Make download_abi_dills.py handle multiple abi verions not existing
Bug: https://github.com/dart-lang/sdk/issues/36047
Change-Id: Ifc8f92c6c098e86a06b94be153109214ca038eac
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99090
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Commit-Queue: Liam Appelbe <liama@google.com>
2019-04-11 16:05:26 +00:00
Samir Jindel a437160328 [vm/ffi] Fix bug in AllocateArgument caused by relying on order of argument evaluation.
Change-Id: I5aad361f885bd23436261399b8c31b66aa2a9455
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99164
Reviewed-by: Daco Harkes <dacoharkes@google.com>
Commit-Queue: Samir Jindel <sjindel@google.com>
2019-04-11 15:52:56 +00:00
Paul Berry 54caf5c950 Dart deps_pruning: track summary dependencies during analysis phase.
(Originally written by Emmanuel Pellereau (emmanuelp@google.com))

Change-Id: I61983558cbb88b76be2a292080e96c0bf3f780de
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98680
Commit-Queue: Paul Berry <paulberry@google.com>
Reviewed-by: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-04-11 14:48:44 +00:00
Samir Jindel 3dc29819c8 [vm] Don't emit graph body when intrinsification is complete.
Flutter Gallery:
Instructions(CodeSize): -1.36%
Total(CodeSize): -0.87%

Change-Id: I40b8e0a5a73373993961e357b4cab9a78936332a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99162
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
Commit-Queue: Samir Jindel <sjindel@google.com>
2019-04-11 13:59:44 +00:00
Aske Simon Christensen f7ad0c4de8 [CFE] Avoid spurious circularity error when an error is evaluated again.
Fixes https://github.com/dart-lang/sdk/issues/36563

Change-Id: Ic078ad1f380ee92513948c5f85560db3c6a2941f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99163
Commit-Queue: Aske Simon Christensen <askesc@google.com>
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com>
Auto-Submit: Aske Simon Christensen <askesc@google.com>
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-04-11 13:45:14 +00:00