Commit graph

69275 commits

Author SHA1 Message Date
Stephen Adams e643b423ca [dart2js] Fix over-eager NullCheck removal
Change-Id: I6a6a7ca3bb4621eac35305b96dec6039bc630d9e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130966
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Stephen Adams <sra@google.com>
2020-01-10 05:08:07 +00:00
Sigmund Cherem b233061a90 Ensure native methods default to have all side-effects
note: NativeBehavior also has a SideEffect property, which is only used for
foreign helpers. If we add annotations in the future, we could move the effects
there and consume them at this point in inference.
Change-Id: I3e62faa3d80c0ba96a2626972c332c27eb52c142
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130964
Reviewed-by: Stephen Adams <sra@google.com>
Commit-Queue: Sigmund Cherem <sigmund@google.com>
2020-01-10 04:48:47 +00:00
Sam Rawlins 0091273e36 Migrator: edge between extension 'on' type and invocation targets; #40023
Change-Id: Ia2f30acec0da2449567d93f99b4c0b0a583c07ac
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130960
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Mike Fairhurst <mfairhurst@google.com>
2020-01-10 02:01:17 +00:00
Mayank Patke 7ad7e9aa55 [dart2js] Implement new subtype algorithm structure for DartTypes.
Change-Id: Ib5144c7960dda82a82a16da7cef0b302e34a4b18
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130464
Reviewed-by: Stephen Adams <sra@google.com>
Commit-Queue: Mayank Patke <fishythefish@google.com>
2020-01-10 01:20:06 +00:00
Mayank Patke 9860a07ef7 [dart2js] New RTI: Use new algorithm structure for runtime subtype checks.
Change-Id: I266bc76240c65597bb46c372ccdfb70153a6a055
Fixes: https://github.com/dart-lang/sdk/issues/38907
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/125441
Reviewed-by: Stephen Adams <sra@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2020-01-10 01:20:06 +00:00
Jaime Wren 05ac244905 Cleanup- remove the Dart Editor directories from the .gitignore file
Change-Id: I8db4e6e70c5dddf10af59adb5db703cb5b1c8e5a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130889
Reviewed-by: Jaime Wren <jwren@google.com>
Reviewed-by: Keerti Parthasarathy <keertip@google.com>
Auto-Submit: Jaime Wren <jwren@google.com>
Commit-Queue: Jaime Wren <jwren@google.com>
Commit-Queue: Keerti Parthasarathy <keertip@google.com>
2020-01-10 00:50:06 +00:00
Alexander Aprelev cc97ddeb0f [vm/gardening] Fix service/isolate_lifecycle_test.
The test has invalid expectation that if the isolate has property 'paused' set to 'true', it means the isolate is paused at exit. In reality the 'paused' property can be set to 'true' if the isolate is not runnable yet.

Fixes dartbug.com/24174

Change-Id: I3a2c5519f0ae448fbcacff46c8aa8f64406ef796
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130980
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Commit-Queue: Alexander Aprelev <aam@google.com>
2020-01-10 00:42:57 +00:00
Vijay Menon 4ca345e80f [dartdevc] regression test for dart:* nnbd static errors on bots
Change-Id: I6e9f2fe7075efef496f203ffe42cf10cdc1e660a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130881
Commit-Queue: Vijay Menon <vsm@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2020-01-10 00:33:57 +00:00
Stephen Adams 3947b15b29 [dart2js] nnbd: Implement NullCheck
Use NullCheck for inlining and remove 'isNullCheck' from HFieldGet.

Change-Id: Ic9908739a26367243002c1c71f9193660a8c08e8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130222
Commit-Queue: Stephen Adams <sra@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2020-01-09 23:49:37 +00:00
Konstantin Shcheglov b38238888a Issue 37122. Fix for downwards inference for FunctionExpressionInvocation.
Bug: https://github.com/dart-lang/sdk/issues/37122
Change-Id: Ie24f3ed5f1d22f2c226143f183dcc004a3a5afbf
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130961
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-01-09 23:41:06 +00:00
Konstantin Shcheglov 22fa09a168 Issue 40033. Fix for 'bool' context type for '!' prefix expression.
Bug: https://github.com/dart-lang/sdk/issues/40033
Change-Id: I2c9020f54f794fb7f009bec22af7753e73271c3b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130921
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-01-09 22:30:46 +00:00
Robert Nystrom a2b556b937 Migrate lib_2/async to NNBD.
Change-Id: Ia5c41dda6503e1fbb8cc6099835d07588425e2ba
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/128310
Commit-Queue: Bob Nystrom <rnystrom@google.com>
Auto-Submit: Bob Nystrom <rnystrom@google.com>
Reviewed-by: Lasse R.H. Nielsen <lrn@google.com>
2020-01-09 22:04:37 +00:00
Konstantin Shcheglov 30785388a6 Issue 37122. Fix inference for FunctionExpressionInvocation.
Bug: https://github.com/dart-lang/sdk/issues/37122
Change-Id: I5f8cb9a315bd1231d3cc2275067d11df02194c53
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130920
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-01-09 22:00:16 +00:00
Nate Bosch d0e36cd93f Remove isKernel argment tracking
Closes #38777

This was hardcoded to true and no longer needs to be read.

Change-Id: I1c2df0ac55776c842563f12a67d298a508156bd7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130822
Auto-Submit: Nate Bosch <nbosch@google.com>
Commit-Queue: Mark Zhou <markzipan@google.com>
Reviewed-by: Mark Zhou <markzipan@google.com>
2020-01-09 21:49:16 +00:00
Konstantin Shcheglov 3f099b05bd Extract PrefixExpressionResolver.
R=brianwilkerson@google.com

Change-Id: Icaee778f5135a802940d925eb4ea0dbf892e164d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130886
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-01-09 20:57:02 +00:00
Konstantin Shcheglov 29f8e0a7bb First steps in cleaning up FunctionExpressionInvocationResolver.
There is more to do around inference, will continue in following CLs.

R=brianwilkerson@google.com, paulberry@google.com

Change-Id: I7c74a7ddccfdc834883863a2a15c6028cf449f22
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130825
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-01-09 20:19:26 +00:00
Alexander Thomas d6d921ba12 [infra] Fix cfe NNBD builder
* Correct mistake in the named configuration.
* Add missing test directories to the fileset.
* Add configurations for all operating systems (for local testing).
* Avoid duplicate experiments specified by both configuration and test.
* Pass experiment flags also to VM running the batch runner.

Change-Id: I47f2c1b07e91e2f8120a2712ce362689b68e9ce4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130900
Reviewed-by: Bob Nystrom <rnystrom@google.com>
2020-01-09 20:16:27 +00:00
Paul Berry 2199e94d37 Migration: begin integrating FixBuilder.
Since the FixBuilder-based implementation is not yet fully baked, we
only enable the integration in api_test.dart for now.  The remaining
failing test cases are marked with a `@FailingTest` annotation
pointing to https://github.com/dart-lang/sdk/issues/38472, which is
the tracking bug for the FixBuilder implementation.

Change-Id: I761350fff125cec8067a96fdfc593b381e5feb3b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130882
Commit-Queue: Paul Berry <paulberry@google.com>
Reviewed-by: Mike Fairhurst <mfairhurst@google.com>
2020-01-09 20:01:16 +00:00
Ben Konyi ac2e24b514 [ dartfuzz ] Properly filter Float32x4.fromInt32x4Bits from being emitted in programs generated by DartFuzz
Change-Id: Ibb6caa1fcec540b7e07c2bc95fd202397490b225
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130884
Auto-Submit: Ben Konyi <bkonyi@google.com>
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Commit-Queue: Ben Konyi <bkonyi@google.com>
2020-01-09 19:29:56 +00:00
Stephen Adams 395daaa3ec Revert "Remove HInstruction.isControlFlow()"
This reverts commit f6ec68444f.

Reason for revert: the 'isControlFlow()' property did actally have a use orthogonal to 'isJsStatement'.

Original change's description:
> Remove HInstruction.isControlFlow()
> 
> The use of this property was confused.
> It was not clear if it referred to HControlFlow instructions (the last instruction in a block),
> or whether it will be generated as JavaScript containing control-flow.
> 
> We keep isJsStatement() for HInstructions that must be generated in statement position.
> If the instruction has an output, it must be one of the inputs and variable allocation
> makes the input/output available as a JavaScript variable.
> 
> 
> Change-Id: I8018335f42787727b14ae26297fd96fbf52adb7d
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130640
> Reviewed-by: Sigmund Cherem <sigmund@google.com>
> Commit-Queue: Stephen Adams <sra@google.com>

TBR=sra@google.com,sigmund@google.com

Change-Id: I175a1112319fcc839076218f97b75425ee72d51b
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130888
Reviewed-by: Stephen Adams <sra@google.com>
Commit-Queue: Stephen Adams <sra@google.com>
2020-01-09 18:33:56 +00:00
Janice Collins e894d06abc Upgrade dartdoc to 0.30.0.
Release notes: https://github.com/dart-lang/dartdoc/releases/tag/v0.30.0

Change-Id: I7d4f30d95e806492a41aa08ddea613b48279ffd0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130883
Auto-Submit: Janice Collins <jcollins@google.com>
Commit-Queue: Janice Collins <jcollins@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2020-01-09 18:06:16 +00:00
Mark Zhou 96cea64fa6 Cleaning up NNBD tests and migrations.
Change-Id: I0a63a6864c568491ad5e20b6eb490760e620a889
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130200
Commit-Queue: Mark Zhou <markzipan@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2020-01-09 17:11:46 +00:00
Jacob MacDonald e57ac16a85 Reland of https://dart-review.googlesource.com/c/sdk/+/130134
Leaves the snapshot output location in root_out_dir so that it doesn't conflict, and hardcodes an exception for _full_sdk_snapshots to look in that directory.

Change-Id: I69cd5d87ba240052c039b7b8920092fd6a78ab08
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130500
Commit-Queue: Jake Macdonald <jakemac@google.com>
Reviewed-by: Keerti Parthasarathy <keertip@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
2020-01-09 16:07:56 +00:00
Paul Berry 6ec16da54d Sort declarations in trial_migration.dart
Change-Id: I7f8c3db9bc414c6567547e163fd417bc602e4d4a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130880
Reviewed-by: Janice Collins <jcollins@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2020-01-09 16:04:26 +00:00
Paul Berry cab2998a27 EditPlanner: add the ability to comment out code rather than removing it.
Change-Id: I6ba621d6482321104f6741772fef46753c599179
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/129803
Commit-Queue: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2020-01-09 15:59:36 +00:00
Sam Rawlins 894d318b33 Migrator: initial support for extensions; #40023
Change-Id: I90829077e63f3c3ae2a31e3ead0da947e4275823
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130729
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Mike Fairhurst <mfairhurst@google.com>
2020-01-09 15:43:16 +00:00
Dmitry Stefantsov bf9dc4251e [cfe] Fix type inference for ?? operator in Null Safety
Change-Id: I0abda65d66c7042258cb0adc78e169aa200359ec
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130705
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2020-01-09 14:54:16 +00:00
Alexander Thomas 75e2eccb2b [infra] Add cfe NNBD builder to the test matrix
See also https://dart-review.googlesource.com/c/sdk/+/130860/

Change-Id: Ic46a8bb13c2a2f73f1fc03c1520693df8ece39bf
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130861
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2020-01-09 13:07:39 +00:00
Martin Kustermann eeca7c5bea [vm/nnbd] Second set of changes for migrating VM patch files for NNBD
Issue https://github.com/dart-lang/sdk/issues/39754

Change-Id: Icfbeed29a2c81c3b118686a14071d5156452e352
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130370
Commit-Queue: Martin Kustermann <kustermann@google.com>
Reviewed-by: Lasse R.H. Nielsen <lrn@google.com>
2020-01-09 10:46:03 +00:00
Sam Rawlins a312a84813 Migrator preview: Prevent initial inline request of root; causing 404s
Change-Id: Ia8649db73c30f32de3c0d350ce25c1c949e14cb5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130735
Auto-Submit: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Samuel Rawlins <srawlins@google.com>
2020-01-09 09:58:43 +00:00
Sam Rawlins dd5fa9cf33 Do not complain about a lone unused private constructor
Change-Id: If721b2c86b8e99018a9b32992a8dab437dac865d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130821
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-01-09 09:58:03 +00:00
Karl Klose 4da919a0c9 [infra] Remove script to generate custom try builds on cl-*-try builders
Change-Id: I7769c21c357df9c9d6584638921bcc2afeff8d6b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130841
Reviewed-by: Alexander Thomas <athom@google.com>
Commit-Queue: Karl Klose <karlklose@google.com>
2020-01-09 09:23:38 +00:00
Nate Bosch 1daaee444d Remove redundant detail from doc comment
The information is expressed in the signature now, previously the return
type was implicitly `dynamic`.

Change-Id: Ib4a0106c94dc394e8126773442cd0886f81e0c79
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130739
Auto-Submit: Nate Bosch <nbosch@google.com>
Commit-Queue: Lasse R.H. Nielsen <lrn@google.com>
Reviewed-by: Lasse R.H. Nielsen <lrn@google.com>
2020-01-09 09:09:08 +00:00
Jens Johansen d5b01a1960 [VM] Ignore dart scheme scripts in isolate reload
After cl/128585 landed a app-jit failure started throwing an error:
>testee>err> kernel-service: Error: Unhandled exception:
>testee>err> Bad state: No element
>testee>err> #0      Iterable.first (dart:core/iterable.dart:520:7)
>testee>err> #1      MappedIterable.first (dart:_internal/iterable.dart:374:31)
>testee>err> #2      lookupOrBuildNewIncrementalCompiler (file:///b/s/w/ir/cache/builder/sdk/pkg/vm/bin/kernel_service.dart:400:45)
>testee>err> #3      _processLoadRequest (file:///b/s/w/ir/cache/builder/sdk/pkg/vm/bin/kernel_service.dart:679:22)
>testee>err> #4      _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:174:12)
>testee>err>

This is caused by the change ultimately adding scripts for the used
mixed in files in "LoadedScripts".
In this case "dart:collection/map.dart" (as I recall) was added to it.
When reloading the source, it runs through all libraries that
"isn't dart scheme", and for all of those libraries through all scripts
reported by LoadedScripts for that library (now including something from
the platform), and checking if it has been modified. Checking if it is
modified only works for file:/// uris through, which platform files aren't,
so it just reports true (i.e. the file is modified).
This is then passed to the kernel service which - based on the list of
one file modified - somehow concludes that it has a compiler already
(which it doesn't) and then crashes.

This CL fixes this specific issue by also skipping scripts that are
"dart scheme".

There's still an underlying issue that has nothing to do with cl/128585
though. I'll comment on that in the bug
(https://github.com/dart-lang/sdk/issues/39869).

Bug: 39869
Change-Id: I1a3f2de888ec53c40f4b6b46a369595abae5bb44
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130374
Commit-Queue: Jens Johansen <jensj@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
2020-01-09 07:55:27 +00:00
Paul Berry 73561e5a29 Create a factory interface for creating EditPlans: EditPlanner.
This factory class serves three purposes:

- In a future CL, it will contain fields to customize the global
  behavior of the edit plans that are created (e.g. whether code
  should be removed or commented out).

- In a future CL, it will contain a pointer to the original (text)
  contents of the source file.  This will allow edit plans to make
  more sophisticated changes such as adjusting indentation.

- In a future CL, it will contain methods for creating common kinds of
  "extract" edit plans such as null-checking an expression or making a
  type nullable.  (Currently the client must create these edit plans
  using EditPlanner.extract, which has an error-prone API).

Change-Id: I87ac75b73003d0e7b416e3d2121eadb2770da5ed
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/129802
Commit-Queue: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2020-01-09 05:22:57 +00:00
Paul Berry c81efbe59a Change NodeChange.apply to accept a FixAggregator rather than a callback.
This will facilitate a follow-up CL that introduces a factory class
for creating EditPlans.

Change-Id: I4fa82371844388f3042107375eb1e7a7e9804647
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/129801
Reviewed-by: Mike Fairhurst <mfairhurst@google.com>
2020-01-09 05:22:57 +00:00
Paul Berry 6da2ded062 Migration: simplify "extract" edit plans by always deferring change computation.
Change-Id: Ie1b66e2034bd9f111e9f491addef101d0c192974
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/129400
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2020-01-09 05:22:57 +00:00
Paul Berry d4f40220b1 Migration: Teach FixBuilder not to append ? to void type.
Change-Id: I80e932c9a16cb13b8978531bcd5fe28693e01124
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/129328
Reviewed-by: Mike Fairhurst <mfairhurst@google.com>
2020-01-09 05:22:57 +00:00
Stephen Adams f6ec68444f Remove HInstruction.isControlFlow()
The use of this property was confused.
It was not clear if it referred to HControlFlow instructions (the last instruction in a block),
or whether it will be generated as JavaScript containing control-flow.

We keep isJsStatement() for HInstructions that must be generated in statement position.
If the instruction has an output, it must be one of the inputs and variable allocation
makes the input/output available as a JavaScript variable.


Change-Id: I8018335f42787727b14ae26297fd96fbf52adb7d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130640
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Stephen Adams <sra@google.com>
2020-01-09 03:25:57 +00:00
Mayank Patke 43495c489c [dart2js] Handle nullability correctly in
UnionTypeMask.locateSingleMember().

Change-Id: Ibdffdb958d37cc52792fb47ecaa0dd03edef6db6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130728
Commit-Queue: Mayank Patke <fishythefish@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2020-01-09 02:12:17 +00:00
asiva b1e26b3543 [VM/Library] Opt-in all the patch files of core libraries for NNBD
- opt-in NNBD all the patch files of core libraries.
- dart:io patch files are not yet opted in.

Change-Id: Iaef21d49f2949406450c41a878ede697f61556d4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130820
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Commit-Queue: Siva Annamalai <asiva@google.com>
2020-01-09 02:00:27 +00:00
Alexander Markov f4e61eacfd [vm/compiler] Remove PushArgument instructions from IL up to AllocateRegisters
PushArgument instructions are removed from IL while it is constructed and
optimized. Before allocating registers, PushArgument instructions are
inserted immediately before call instructions. On ARM/ARM64 subsequent
PushArgument instructions are generated using store multiple (STM) / store
pair (STP) instructions which reduces size.

Flutter gallery in release mode after this CL and https://dart-review.googlesource.com/c/sdk/+/129324:
arm: instructions size -1.4%, total size -0.83%
arm64: instructions size -1.43%, total size -0.83%

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

Change-Id: I61493c72306c3ade4d9850e0dfc17e7e943a14c4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/128481
Commit-Queue: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
2020-01-09 01:37:27 +00:00
Alexander Markov 9b555ca6d3 [vm/compiler] Remove PushArguments from AllocateObjectInstr
Issue: https://github.com/dart-lang/sdk/issues/39788
Change-Id: Ideda280bce1e8a4b463f47d950c1a32b48e7b204
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/129324
Reviewed-by: Martin Kustermann <kustermann@google.com>
2020-01-09 01:37:27 +00:00
Ryan Macnak 361f4abfe0 [vm, gc] Add missing check to begin concurrent marking during large page allocation.
Bug: https://github.com/flutter/flutter/issues/48360
Change-Id: Iaa869bc5c1d4f85481e3ff89d6af16eba893f756
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130737
Reviewed-by: Siva Annamalai <asiva@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
2020-01-09 01:02:48 +00:00
Mike Fairhurst 8b777dd829 [nnbd_migration] fix flow analysis for function declarations
We were getting a static error in package:logging for

```dart
Zone recordingZone;
// ...

runZoned(() {
  recordingZone = Zone.current;
  // ...
});

// ...
expect(records.first.zone, equals(recordingZone));
```

That is a static error if we don't make `recordingZone` late or
nullable.

Change-Id: Iab5e47dd8df375c7dc5283ce4570ad1321ba919e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130738
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
2020-01-09 00:09:25 +00:00
Sigmund Cherem 83850274fe Fix typo from migrating stream_controller
I believe this fixes `language_2/await/await_test`, but there might be other
tests affected.

Change-Id: I573beda1b40540691f58fb38bda56814b70a9343
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130730
Reviewed-by: Nicholas Shahan <nshahan@google.com>
Commit-Queue: Sigmund Cherem <sigmund@google.com>
2020-01-08 23:37:25 +00:00
Konstantin Shcheglov d745cab70b Extract FunctionExpressionInvocationResolver.
The code is pretty chaotic (evil) at the moment, and will require
more cleaning in following CL(s). Currently this is just what we had,
moved.

R=brianwilkerson@google.com

Change-Id: I9049521a1f3acaae8149e44cdcb83ad3a0742bb3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130743
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-01-08 22:56:10 +00:00
Ben Konyi 55a34f3392 [ dartfuzz ] Temporarily prevent Float32x4.fromInt32x4Bits from being emitted in generated programs.
Seems to be causing us to hit an ASSERT (see
https://github.com/dart-lang/sdk/issues/39890).

Change-Id: I8007a5356d21bf1f2615e6bee47cee01c50eadca
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130736
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Commit-Queue: Ben Konyi <bkonyi@google.com>
2020-01-08 22:54:16 +00:00
Paul Berry 77e0d7f400 Prepare to publish analyzer 0.39.4
Change-Id: I0be9c2601dc1cc2fa3aa2c17bda03d04a841c266
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130732
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Janice Collins <jcollins@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2020-01-08 22:48:05 +00:00
Sam Rawlins 327b1eb24f analysis_server: Make private fields final where possible
Change-Id: Ibdeb7e66f07bf81205d70ac5d1c4cb4aa5a97671
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/129360
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Samuel Rawlins <srawlins@google.com>
2020-01-08 22:08:02 +00:00