Commit graph

56386 commits

Author SHA1 Message Date
Konstantin Shcheglov f7ef66f5b0 Issue 33412. Fix for race condition in knownFiles during search.
In theory discoverAvailableFiles() should wait for all possibly known
files to be discovered. But I think it is still possible to get the
set of known files changed, e.g. when are asking asynchronoiusly for
getIndex() and the user open a file that is not yet part of any driver.

Only the second hunk of the change (inside subtypes()) is required for fixing
the issue, the crucial change is toList() invocation. The switch from
_driver.knownFiles to _driver.fsState.knownFiles is done to avoid one extra
lookup for FileState.

The first hunk (inside declarations()) is done just for consistency.


Fixes https://github.com/dart-lang/sdk/issues/33412

R=paulberry@google.com

Change-Id: I652ef7a156eba4bf0298c7e863dcef2b7c9f2b0e
Reviewed-on: https://dart-review.googlesource.com/60142
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2018-06-13 21:49:14 +00:00
Terry Lucas aca417a256 Fix test and expected failure.
TBR=sra@google.com

Change-Id: I1ee39073ccf977725d89152ddfba5c56211815d1
Reviewed-on: https://dart-review.googlesource.com/60181
Reviewed-by: Terry Lucas <terry@google.com>
2018-06-13 21:19:27 +00:00
Zach Anderson 664f756914 [vm] Reduce maximum new generation size and growth rate.
For example, by default 64-bit architectures now grow as 2, 4, 8, 16 instead of 2, 8, 32.

This change is to reduce memory usage and maximum minor GC time for Flutter and Fuchsia.
It would negatively impact batch applications, which prefer throughput,
so the new defaults are overriden by the command-line Dart VM in
runtime/bin/main.cc

Change-Id: Ie56a7599d4011a629c8c57bd88fec3ee8f277a9f
Reviewed-on: https://dart-review.googlesource.com/54305
Commit-Queue: Zach Anderson <zra@google.com>
Reviewed-by: Ryan Macnak <rmacnak@google.com>
2018-06-13 20:50:34 +00:00
Peter von der Ahé bd603ba3c6 Record dependencies via CompilerContext
Change-Id: Ia53314aecb0f3162ef2cb8ec451681651aa30d42
Reviewed-on: https://dart-review.googlesource.com/58202
Commit-Queue: Sigmund Cherem <sigmund@google.com>
Reviewed-by: Zach Anderson <zra@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2018-06-13 20:49:54 +00:00
Alexander Thomas 4b2d60cb18 [infra] Remove obsolete signcla verifier from CQ
See https://crbug.com/851738

TBR=whesse@google.com

Change-Id: Ied9221ef9aba1721b6dad24bf011773191a468d2
Reviewed-on: https://dart-review.googlesource.com/60144
Reviewed-by: Alexander Thomas <athom@google.com>
2018-06-13 20:14:42 +00:00
Ryan Macnak 9b5a931b06 [vm] Replace most runtime/vm uses of OS::Print with OS::PrintErr.
Leave --print-snapshot-sizes on stdout because it is parsed by Flutter benchmarks.

Replace all runtime/bin uses of OS::Print with Log::Print.

Bug: https://github.com/dart-lang/sdk/issues/32134
Change-Id: I74aacfb410cdfa9270d06e7f6ab0534520c7c7ba
Reviewed-on: https://dart-review.googlesource.com/60021
Commit-Queue: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Zach Anderson <zra@google.com>
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
2018-06-13 19:51:40 +00:00
Terry Lucas 354d5863dd Updated expected tests and fix for FF test.
TBR=sra@google.com

Change-Id: I83e368ce58948bdb3e22d0c0f342990497dd9984
Reviewed-on: https://dart-review.googlesource.com/60143
Reviewed-by: Terry Lucas <terry@google.com>
Commit-Queue: Terry Lucas <terry@google.com>
2018-06-13 19:48:02 +00:00
Terry Lucas eea2dff20d Added support for members of type Promise.
Fixes #31046

R=sra@google.com

Change-Id: Id1e8d415b91a842bd8e2f50c6064c24aaaed9d98
Reviewed-on: https://dart-review.googlesource.com/59460
Reviewed-by: Stephen Adams <sra@google.com>
Commit-Queue: Terry Lucas <terry@google.com>
2018-06-13 18:20:53 +00:00
Ben Konyi 1e91c62d4b [ VM / dart:io ] Fixed issue where Link.rename would fail on Windows if another link or directory with the same name as the target existed. Fixes issue #30687.
Change-Id: I2ef4dc08cc60c57e1fab38323d67afd3fba47e84
Reviewed-on: https://dart-review.googlesource.com/60060
Commit-Queue: Ben Konyi <bkonyi@google.com>
Reviewed-by: Zach Anderson <zra@google.com>
2018-06-13 18:03:20 +00:00
danrubel 695aa1fc00 Improve recovery of missing method parameters
... and consolidate insertion of synthetic parenthesis

Change-Id: I08a3ce04bd11fc6201862c9ee101ca9c8538c14c
Reviewed-on: https://dart-review.googlesource.com/60040
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2018-06-13 17:41:20 +00:00
Jonas Termansen 371d8e934f Reorder tar exclude options in try_benchmarks.sh for forward compatibility.
The latest GNU tar(1) releases requires --exclude to come first or it has no
effect.

Change-Id: Ia41c01d167c4e283cea4210f90d3764a708d3dcb
Reviewed-on: https://dart-review.googlesource.com/60120
Commit-Queue: Jonas Termansen <sortie@google.com>
Reviewed-by: Alexander Thomas <athom@google.com>
2018-06-13 16:13:21 +00:00
Alexander Thomas baef792361 [release] Prepare changelog for 2.0.0-dev.62.0
TBR=whesse@google.com

Change-Id: I7b1a2012cc432cafa5f817fc50d8118f4e9e8683
Reviewed-on: https://dart-review.googlesource.com/60141
Reviewed-by: Alexander Thomas <athom@google.com>
2018-06-13 14:39:56 +00:00
Patrice Chalin 6cc4038db5 Markdown formatting fix
Closes #33435
https://github.com/dart-lang/sdk/pull/33435

GitOrigin-RevId: 957da9d3615cdec785ae12891db6bde01173ada3
Change-Id: Ic9964c5669410b473bd2ecaaa9d9fb7ecb91a6f6
Reviewed-on: https://dart-review.googlesource.com/60080
Reviewed-by: Kevin Moore <kevmoo@google.com>
Commit-Queue: Kevin Moore <kevmoo@google.com>
2018-06-13 14:29:54 +00:00
Lasse R.H. Nielsen 5dced20b93 Fix bad merge in spec.
Change-Id: I4a8fc32071804c5edd0f7aab905ea4402df4414d
Reviewed-on: https://dart-review.googlesource.com/60102
Reviewed-by: Erik Ernst <eernst@google.com>
Commit-Queue: Lasse R.H. Nielsen <lrn@google.com>
2018-06-13 13:32:00 +00:00
Johnni Winther 37425618d5 Narrow to static types in invoke/get in inference
Change-Id: Ifb085cf881c21a6161a22cb1f2b6058a9947f321
Reviewed-on: https://dart-review.googlesource.com/55920
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2018-06-13 13:11:10 +00:00
Peter von der Ahé 7d920950b7 Implement simple deprecation message
Change-Id: I998830857241abb222c7b3cdb7ebda34db328aab
Reviewed-on: https://dart-review.googlesource.com/59087
Commit-Queue: Peter von der Ahé <ahe@google.com>
Reviewed-by: Aske Simon Christensen <askesc@google.com>
2018-06-13 13:03:26 +00:00
danrubel ec58802ea4 Update Analyzer/fasta async* and sync* error message tests
Change-Id: I5aea43305a65797d279ca132764c34b33f19ca41
Reviewed-on: https://dart-review.googlesource.com/59980
Commit-Queue: Dan Rubel <danrubel@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-06-13 13:02:50 +00:00
Aske Simon Christensen 08de1b30aa Error when a file is a part of more than one library
Fixes https://github.com/dart-lang/sdk/issues/32999

Corresponding spec issue: https://github.com/dart-lang/sdk/issues/33225
Issue for co19 fix: https://github.com/dart-lang/co19/issues/149

The code contains a temporary hack that works around the co19 use.
This hack can be removed when the co19 fix rolls in.

Change-Id: I61b50c9142f4b215fc4d9258f1259e24ab4c052f
Reviewed-on: https://dart-review.googlesource.com/56521
Reviewed-by: Peter von der Ahé <ahe@google.com>
Commit-Queue: Aske Simon Christensen <askesc@google.com>
2018-06-13 12:55:20 +00:00
danrubel 5df04a89b7 Update more Analyzer tests
Change-Id: I23ca56867eb33c9d8983648be9305b82e6441934
Reviewed-on: https://dart-review.googlesource.com/59920
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2018-06-13 12:34:20 +00:00
Lasse R.H. Nielsen d4e908d31e Add configurable imports to the language specification.
Change-Id: I0b36c187a1ec13fe4c65acab762b5f7d46869e39
Reviewed-on: https://dart-review.googlesource.com/46440
Commit-Queue: Lasse R.H. Nielsen <lrn@google.com>
Reviewed-by: Leaf Petersen <leafp@google.com>
Reviewed-by: Erik Ernst <eernst@google.com>
2018-06-13 12:31:50 +00:00
Peter von der Ahé 2c1fdc62c7 Address review comments
Addressing commments from https://dart-review.googlesource.com/c/sdk/+/57508

Change-Id: Id6acd15b2e737df5e84f716f18b99a404a974359
Reviewed-on: https://dart-review.googlesource.com/57600
Commit-Queue: Peter von der Ahé <ahe@google.com>
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2018-06-13 10:56:54 +00:00
Peter von der Ahé c8bc43debb Implement Severity rewriting
Change-Id: I21fef5182e7138c1efc1af05f0ae6c79b6916d87
Reviewed-on: https://dart-review.googlesource.com/59086
Commit-Queue: Peter von der Ahé <ahe@google.com>
Reviewed-by: Aske Simon Christensen <askesc@google.com>
2018-06-13 08:12:34 +00:00
Peter von der Ahé 3d98cce456 Replace Severity.nit by Severity.ignored
Change-Id: Ib249c2e383c25173bd25b965bdb0d67c9a487cb4
Reviewed-on: https://dart-review.googlesource.com/59085
Reviewed-by: Aske Simon Christensen <askesc@google.com>
2018-06-13 08:12:34 +00:00
Alexander Thomas f3ce474673 [infra] Remove obsolete analyzer test configurations
The --preview-dart-2 flag flip makes it unecessary to:
* Test Dart 2 configs in host-checked mode.
* Test --checked and --strong together.
* Test --preview-dart-2 and --strong separately.

Change-Id: I1738d351c866fb95fd9e1249f5f4ffb88169e106
Reviewed-on: https://dart-review.googlesource.com/59900
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-06-13 04:17:16 +00:00
Alexander Markov 828a168622 [vm/kernel/bytecode] Generate bytecode for native methods
Change-Id: If47ef9ef4ff5ac3cb3f4f6737590370b647fc9ff
Reviewed-on: https://dart-review.googlesource.com/59180
Commit-Queue: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Régis Crelier <regis@google.com>
2018-06-13 01:16:03 +00:00
Mike Fairhurst fa629f6269 No longer expect crash on windows which was caused by now-unused packages/ dir in test
Change-Id: Ia979a2d6291e8df49e12a548803a1095a9eca5ad
Reviewed-on: https://dart-review.googlesource.com/60061
Reviewed-by: Mike Fairhurst <mfairhurst@google.com>
2018-06-12 23:57:42 +00:00
Ben Konyi 76468ff8a2 [ VM ] Add back some mirrors related APIs to lookup functions/closures by name.
Change-Id: I6e1c67b987d98c8a3ca61c317ca21d2d8c94da9c
Reviewed-on: https://dart-review.googlesource.com/59301
Commit-Queue: Ben Konyi <bkonyi@google.com>
Reviewed-by: Ryan Macnak <rmacnak@google.com>
2018-06-12 23:50:04 +00:00
Jenny Messerly 4ba41a4116 remove dead code from dartdevc/k JS gen
The function `_emitJSType` was unreachable because we already skip JS
interop classes.

Change-Id: I9ee563725d5b2bb539beaa38e61e4435e8e8fcd3
Reviewed-on: https://dart-review.googlesource.com/59561
Reviewed-by: Bob Nystrom <rnystrom@google.com>
Commit-Queue: Jenny Messerly <jmesserly@google.com>
2018-06-12 23:36:03 +00:00
Ryan Macnak 26c7ab1331 [standalone] Record dependencies in DFE and include them in snapshot depfiles.
Bug: https://github.com/dart-lang/sdk/issues/33390
Change-Id: Ib1ce6078ccff1b8727c26a8ff7b24e9fb99fd086
Reviewed-on: https://dart-review.googlesource.com/60020
Reviewed-by: Zach Anderson <zra@google.com>
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
2018-06-12 22:29:33 +00:00
Aart Bik 12c461b15a [vm/inliner] Inlining of typed_data polymorphic getters/setters
Rationale:
Handles remaining polymorphic reason for typed_data
setters and getters (internal vs. external) during inlining.
Also introduces high level flow graph utilities that
can be reused throughout the compiler to reduce
future code duplication. Disables type speculation
for 64-bit AOT Dart2 to make all work.

Performance:
About 4x speedup on micro benchmarks (AOT64).

https://github.com/dart-lang/sdk/issues/33205

Change-Id: I678426719e49cd8aa1e5051523da12178120b3ba
Reviewed-on: https://dart-review.googlesource.com/59000
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Commit-Queue: Aart Bik <ajcbik@google.com>
2018-06-12 22:28:34 +00:00
Emily Fortuna 8e472acd37 No arguments to process with signature functions.
Change-Id: I741b6c1e698385b40cad15682658254edea9a58b
Reviewed-on: https://dart-review.googlesource.com/60022
Commit-Queue: Emily Fortuna <efortuna@google.com>
Reviewed-by: Stephen Adams <sra@google.com>
2018-06-12 22:06:23 +00:00
Zach Anderson 1d9d6a7a8b [dart:io] Don't apply the namespace to the kernel service isolate
Change-Id: If29cb9c0202c8121f6076025fb3870d4f5721948
Reviewed-on: https://dart-review.googlesource.com/59903
Reviewed-by: Siva Annamalai <asiva@google.com>
Commit-Queue: Zach Anderson <zra@google.com>
2018-06-12 20:32:29 +00:00
Mike Fairhurst 3977fa7e32 Fix analyzer non strong test for packages file test changes
Change-Id: I058b2a19446a2e952cb2f8597bcdbe0fce61fd15
Reviewed-on: https://dart-review.googlesource.com/60000
Reviewed-by: Mike Fairhurst <mfairhurst@google.com>
2018-06-12 20:23:59 +00:00
Nate Bosch 00bfb03cf3 Update pub to the latest
Change-Id: Ie203de0c410fbbd73ff615aec3d9cdd586a0b0e6
Reviewed-on: https://dart-review.googlesource.com/59940
Reviewed-by: Kevin Moore <kevmoo@google.com>
Commit-Queue: Nate Bosch <nbosch@google.com>
2018-06-12 19:53:49 +00:00
Mike Fairhurst 7911fb2683 First pass at disabling packages/ dir, packageRoot
Change-Id: Ib2d7738c84cd1258dcad46e8e2c8da8105efea60
Reviewed-on: https://dart-review.googlesource.com/59100
Reviewed-by: Kevin Moore <kevmoo@google.com>
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
2018-06-12 19:38:40 +00:00
Régis Crelier 89e88f00a5 [Tests] Adjust status for slow bigint test with simulated architectures.
Change-Id: If28eeee4ad1e2e9e8701aee2e51b1a4a875ff0c4
Reviewed-on: https://dart-review.googlesource.com/59961
Reviewed-by: Régis Crelier <regis@google.com>
Commit-Queue: Régis Crelier <regis@google.com>
2018-06-12 19:06:37 +00:00
Mike Fairhurst a474ec8e7d Default package:analyzer parser to enable optional new/const parsing.
Change-Id: I71395d49aa3148817cfc7d3e4fb38b15199e6d76
Reviewed-on: https://dart-review.googlesource.com/59825
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
2018-06-12 19:02:09 +00:00
Régis Crelier 23c92f9ab2 [Tests] Adjust status for slow bigint test with dartkp.
Change-Id: Id643e33fcd9365635e5e266d2465eba32dc0b973
Reviewed-on: https://dart-review.googlesource.com/59960
Reviewed-by: Régis Crelier <regis@google.com>
Commit-Queue: Régis Crelier <regis@google.com>
2018-06-12 18:43:18 +00:00
Stephen Adams 14dfd82d69 [dart2js] Chain null-field initializers
Change-Id: I1fff4143ee5698dd1c8c1c833fcb99828d1f8223
Reviewed-on: https://dart-review.googlesource.com/59860
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Stephen Adams <sra@google.com>
2018-06-12 17:51:40 +00:00
Régis Crelier 83142f08c6 [Tests] Adjust status for slow bigint test.
Change-Id: I67c49839fcd8a75b5dc6a3979ffe38cfdef3af73
Reviewed-on: https://dart-review.googlesource.com/59902
Reviewed-by: Régis Crelier <regis@google.com>
Commit-Queue: Régis Crelier <regis@google.com>
2018-06-12 17:51:35 +00:00
Samir Jindel d963cc0a80 [vm] Still launch service isolate in non-precomp product.
Fixes Tests:

python tools/test.py -m product -c app_jit --no-preview-dart-2 lib_2/isolate/function_send1_test
(and others)

Change-Id: I1a2697ca8924251a688f79f02a40b9d292676132
Reviewed-on: https://dart-review.googlesource.com/59881
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
Commit-Queue: Samir Jindel <sjindel@google.com>
2018-06-12 17:05:50 +00:00
Régis Crelier ea96922935 [Tests] Adjust iteration number and optimization threshold for slow bigint test.
Change-Id: Ibf3cf39f252e251de9998269c2101389446f1d8c
Reviewed-on: https://dart-review.googlesource.com/59901
Reviewed-by: Régis Crelier <regis@google.com>
Commit-Queue: Régis Crelier <regis@google.com>
2018-06-12 16:25:37 +00:00
Adam Barth 54d59f1275 [fuchsia] Update to zx_cprng_draw_new
The new version of zx_cprng_draw either succeeds in reading the
requested amount of data or fails entirely. A future CL will rename
zx_cprng_draw_new to zx_cprng_draw once zx_cprng_draw has this new
behavior.

Change-Id: I08acad6a3443cb295f7855afdd63010dcf872820
Reviewed-on: https://dart-review.googlesource.com/59861
Reviewed-by: Zach Anderson <zra@google.com>
Commit-Queue: Adam Barth <abarth@google.com>
2018-06-12 16:10:41 +00:00
Samir Jindel beb0432d6c Re-land "[vm/kernel/aot] Exclude vmservice_io from "product" AOT snapshots."
This reverts commit 17585c42fe.

The original revision is in Patchset 1.

Fixed Tests:

python tools/test.py -m debug -c dartkp -r dart_precompiled --strong standalone_2/no_support_service_test
python tools/test.py -m product -c precompiler -r dart_precompiled lib_2/isolate/function_send1_test

Change-Id: I6af715ee3c080b515c8312357f3d8be6e494747a
Reviewed-on: https://dart-review.googlesource.com/59760
Commit-Queue: Samir Jindel <sjindel@google.com>
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
2018-06-12 15:31:19 +00:00
Régis Crelier 87a46b8bee [VM Bigint] Fix _convert() of classic reduction for negative Bigint (fixes #33405).
Add regression test in existing bigint test.


Change-Id: I3dd0cc24ef19531dd16c89b4565f687a7b2b46bd
Reviewed-on: https://dart-review.googlesource.com/59820
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Commit-Queue: Régis Crelier <regis@google.com>
2018-06-12 15:12:00 +00:00
Lasse R.H. Nielsen 0b91676362 Remove the retype method.
See #33075.

Bug: http://dartbug.com/33075
Change-Id: I1ee2f587afbc672dd08ac61ac003bbdc85bb95e2
Reviewed-on: https://dart-review.googlesource.com/59091
Commit-Queue: Lasse R.H. Nielsen <lrn@google.com>
Reviewed-by: Leaf Petersen <leafp@google.com>
2018-06-12 14:36:09 +00:00
Peter von der Ahé 420b95aa06 Clean up imports
Change-Id: I6c3c27986df906a4e571b3449314b39ae3ed53e4
Reviewed-on: https://dart-review.googlesource.com/59084
Commit-Queue: Peter von der Ahé <ahe@google.com>
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2018-06-12 14:31:19 +00:00
Peter von der Ahé 2c72215203 Move typeVariablesCount to TypeDeclarationBuilder
Also move checks and normalization to the wrapped builder.

Change-Id: Ica8da07bf9191b997b8e00ed0af8cc70a93f9216
Reviewed-on: https://dart-review.googlesource.com/59044
Commit-Queue: Peter von der Ahé <ahe@google.com>
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2018-06-12 13:50:19 +00:00
Peter von der Ahé c8134f372e Format doubles in messages
This simplifies including doubles in messages.

The new syntax is #num1%N.M where N is the minimum length of the
formatted number, and M is the fraction digits.

Change-Id: Ifcc12ab994363055e94ba90f7b8e6151923028fe
Reviewed-on: https://dart-review.googlesource.com/59041
Commit-Queue: Peter von der Ahé <ahe@google.com>
Reviewed-by: Aske Simon Christensen <askesc@google.com>
2018-06-12 12:46:49 +00:00
Johnni Winther e7ad806bf1 Provide default type variable bounds on inlining.
+ use the 'any' type to avoid failing on bounds with type variables, which we currently don't support.

Change-Id: I57d74d17fa9eee598bd86c8e76790778438cddfd
Reviewed-on: https://dart-review.googlesource.com/59540
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Stephen Adams <sra@google.com>
2018-06-12 09:05:09 +00:00