Commit graph

57693 commits

Author SHA1 Message Date
William Hesse
f10b4005cd Code to load a named configuration and check it against the existing options.
First stab at loading named configuration, plus temporary test code

Change-Id: I5835fe34a024a6052021c8189629a1578bed2355
Reviewed-on: https://dart-review.googlesource.com/63880
Reviewed-by: Bob Nystrom <rnystrom@google.com>
2018-08-01 12:55:13 +00:00
Jens Johansen
695476f115 Status file after 03df8b1
app_jitk is not tested on try bots.

TBR.

Change-Id: If688115a4f5aca84728548e51c52e303d693ee25
Reviewed-on: https://dart-review.googlesource.com/67801
Reviewed-by: Jens Johansen <jensj@google.com>
2018-08-01 12:29:33 +00:00
William Hesse
7413644de8 Change builder names from -ff- to -firefox-
Change-Id: I69317cb92364de2b38f7967cb3ce9e3b307c7678
Reviewed-on: https://dart-review.googlesource.com/67780
Reviewed-by: Alexander Thomas <athom@google.com>
2018-08-01 12:28:13 +00:00
Erik Ernst
0c187585c5 Added return-void-2-dynamic to whitelist of generalized-void.md
We need to clarify the following case:
`dynamic foo() => print('');`,
`dynamic bar() { return print(''); }`
that is, using `return e` where `e` has type `void`, when the return
type of the enclosing function is `dynamic` (inferred or explicit).

We do not currently have any elements in the generalized-void.md
whitelist for that, so it's an error. However, invalid_returns.md
from https://dart-review.googlesource.com/c/sdk/+/60401 implies
(patchset 6: line 19-20 and 34-35) that it is allowed.
It is my impression that we agree on invalid_returns.md, and also
that it describes the current behavior (maybe not 100%?).

This indicates to me that we should, probably, add an element to
the above-mentioned whitelist to allow it.

This CL makes that change to generalized-void.md.

Change-Id: I0326081960deda907b3b4ff34bd2d60f7c9dc35b
Reviewed-on: https://dart-review.googlesource.com/64341
Reviewed-by: Erik Ernst <eernst@google.com>
2018-08-01 12:18:07 +00:00
Erik Ernst
6920d6b11e Added specification of generated nSM forwarders for private methods
The issue was raised recently that there must be generated forwarders
for some method signatures that we had not previously mentioned in
nosuchmethod-forwarders.md: Private methods with an inaccessible name,
that is, private methods declared in a different library than the
current target of nSM forwarder generation.

Given that such forwarders are semantically significant (a tear-off
performed in the library where the abstract private method declaration
is located would tear off a generated forwarder, rather than causing
an invocation of `noSuchMethod`), we need to specify this.

This CL adds such a specification to nosuchmethod-forwarders.md.

This CL addresses SDK issue #33725, and SDK issue #33727 is related
being concerned with the implementation in the common front
end.

Change-Id: Iedbcdd8b4c8df95c6038022f72b3211ec1b76649
Reviewed-on: https://dart-review.googlesource.com/64380
Reviewed-by: Erik Ernst <eernst@google.com>
2018-08-01 12:00:28 +00:00
Jens Johansen
03df8b1eb8 Change a few language_2 tests to comply with reality
Fix up override_inheritance_method_test.dart
Fix up override_inheritance_generic_test.dart
Fix up override_inheritance_field_test.dart
Fix up override_field_test.dart

Change-Id: I09f88c18e2473be645a955e1dc63d788e61382f4
Reviewed-on: https://dart-review.googlesource.com/64682
Commit-Queue: Jens Johansen <jensj@google.com>
Reviewed-by: Erik Ernst <eernst@google.com>
2018-08-01 11:03:12 +00:00
William Hesse
cf77a3b00f [Test.dart] Use Compiler, Runtime, etc. classes from pkg:smith.
Change-Id: I1251c94e87fe6953f7604b5ef8f6ae5c49ab36d3
Reviewed-on: https://dart-review.googlesource.com/67522
Commit-Queue: William Hesse <whesse@google.com>
Reviewed-by: Bob Nystrom <rnystrom@google.com>
Reviewed-by: Alexander Thomas <athom@google.com>
2018-08-01 09:45:17 +00:00
Brian Wilkerson
55880dfeed Add support in the new API for CFE
Change-Id: I4e7a12b786a8774e92dd96a5f94d86e1d1a3564e
Reviewed-on: https://dart-review.googlesource.com/67701
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-08-01 04:24:28 +00:00
Konstantin Shcheglov
4b07df24dd Store invalid deferred types used in bodies.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: Id9f6309b5a9af69d38305c538bacb967c4565793
Reviewed-on: https://dart-review.googlesource.com/67688
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2018-08-01 00:54:09 +00:00
Devon Carew
89cfa2edd7 Update package:test_reflective_loader.
Change-Id: If23bb61ef03efe62282ba2e163d3a830d6e0bfad
Reviewed-on: https://dart-review.googlesource.com/67700
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
2018-08-01 00:20:45 +00:00
Aart Bik
8bad5c7b29 [vm/compiler] Non-speculative X64 long division/remainder.
Rationale:
Having a non-speculative implementation avoids deopting
under JIT and enables AOT.

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

Change-Id: Ib38200502f5a8f63912ff5d7a808ea6e27f9001d
Reviewed-on: https://dart-review.googlesource.com/67502
Commit-Queue: Aart Bik <ajcbik@google.com>
Reviewed-by: Alexander Markov <alexmarkov@google.com>
2018-08-01 00:13:55 +00:00
Sigmund Cherem
918cda18c5 Add docs about sourcemap extensions
Change-Id: Ic785e6e73a04be8d026e04766c8c505abde6a84a
Reviewed-on: https://dart-review.googlesource.com/67687
Reviewed-by: Stephen Adams <sra@google.com>
Commit-Queue: Stephen Adams <sra@google.com>
2018-07-31 23:40:39 +00:00
Jacob MacDonald
329e029bd6 Fixes https://github.com/dart-lang/sdk/issues/34035
1a122e3ac0 looks like it accidentally stopped providing summaries at all in analyzer mode, and didn't take into account the summary extension when doing automatic module renaming.

Change-Id: Ib08d0ed169670d704a87d53d1937495939db9a73
Reviewed-on: https://dart-review.googlesource.com/67684
Commit-Queue: Jake Macdonald <jakemac@google.com>
Reviewed-by: Vijay Menon <vsm@google.com>
2018-07-31 22:20:46 +00:00
Konstantin Shcheglov
12326c10e1 Store constructor field initializera when the target is not a field.
Change-Id: Ie96f337272cc15d98515b9ce52210cf9414bad65
Reviewed-on: https://dart-review.googlesource.com/67680
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2018-07-31 22:15:03 +00:00
Konstantin Shcheglov
50da4b8d92 Skip ShadowInvalidFieldInitializer while resynthesizing constructor initializers.
Change-Id: I6939777e3f8fc5b65f631a5846a90fd51258aabb
Reviewed-on: https://dart-review.googlesource.com/67686
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-07-31 22:12:43 +00:00
Konstantin Shcheglov
8810b6ecc7 Translate kernel.Instantiation in constant expressions.
Change-Id: I86779f9ca1b56d25f26818991ba6603061ccfb6f
Reviewed-on: https://dart-review.googlesource.com/67685
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-07-31 22:00:33 +00:00
Sigmund Cherem
cb7341fceb Initial support for inlining-data in source-maps.
This starts tracking inlining data and records it as an extension
to source-map files so we are able to expand inlined calls when
deobfuscating production stack traces.


Change-Id: I46daf21c2f42305b2bd6ca17fbafb65226355096
Reviewed-on: https://dart-review.googlesource.com/67083
Reviewed-by: Stephen Adams <sra@google.com>
Commit-Queue: Sigmund Cherem <sigmund@google.com>
2018-07-31 21:41:50 +00:00
Sigmund Cherem
4206131030 Fix tracking of onStep position of arguments to new expression
Change-Id: I359577055555b9372b60fc2485ac1a9354e98427
Reviewed-on: https://dart-review.googlesource.com/67481
Reviewed-by: Stephen Adams <sra@google.com>
2018-07-31 21:41:50 +00:00
Konstantin Shcheglov
384b0a9a73 Issue 34038. Fix resynthesizing imports when mixed with exports.
R=brianwilkerson@google.com, paulberry@google.com

Bug: https://github.com/dart-lang/sdk/issues/34038
Change-Id: Id50d01b18f6a650b91a6667419bf24d62ef6eaa4
Reviewed-on: https://dart-review.googlesource.com/67682
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-07-31 21:05:39 +00:00
Brian Wilkerson
ba7dbcf412 Update the test output processor to produce more useful analysis
Change-Id: Ia3ea551218e84526496235e202bbf201d2eabbde
Reviewed-on: https://dart-review.googlesource.com/67683
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-07-31 21:05:31 +00:00
danrubel
4b2ee8e9a5 Improve catch clause recovery
Fix https://github.com/dart-lang/sdk/issues/33982

Change-Id: I98387ffabef87dd0296f18e080a1c4b8a7e97c2b
Reviewed-on: https://dart-review.googlesource.com/67641
Commit-Queue: Dan Rubel <danrubel@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-07-31 20:30:03 +00:00
Brian Wilkerson
66500de4dc More fixes to the CFE integration tests
Change-Id: Id6a54890d8d41ed220869eb1fb03c951cb9e1446
Reviewed-on: https://dart-review.googlesource.com/67500
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2018-07-31 19:14:17 +00:00
Sigmund Cherem
3f2251986d CC sra also in changes to compiler files and tests
Change-Id: Ia1bae3f67c73a92fd06327836016becc16ba8bf9
Reviewed-on: https://dart-review.googlesource.com/67660
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Reviewed-by: Stephen Adams <sra@google.com>
Commit-Queue: Sigmund Cherem <sigmund@google.com>
2018-07-31 18:27:19 +00:00
danrubel
4734c55882 Report error on unsupported operators
Change-Id: Iea1469e1252c89c630e8bf646caf37051d78c84c
Reviewed-on: https://dart-review.googlesource.com/67401
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2018-07-31 18:23:10 +00:00
Zach Anderson
00e3109368 [VM] Adjust flags for creating depfiles
Currently, the VM can create depfiles when writing out a snapshot.
The snapshot file is the output file for the depfile. This change
allows creating a depfile when not writing out a snapshot. It
accomplishes this by adding a new flag --depfile_output_filename,
which allows the user to supply the output filename for the depfile,
which would otherwise be ambiguous when we are not creating a snapshot.

This change also adds the flag --depfile, which
--snapshot_depfile is now an alias of.

related #34026

Change-Id: I45eee463c499fc542e577d805b7ef9911ccb72a7
Reviewed-on: https://dart-review.googlesource.com/67420
Reviewed-by: Siva Annamalai <asiva@google.com>
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Commit-Queue: Zach Anderson <zra@google.com>
2018-07-31 17:09:31 +00:00
Alexander Markov
07c462b471 [vm] Refactoring: extract BaseFlowGraphBuilder to a separate file
Also, a few methods (needed for bytecode compiler) moved from
FlowGraphBuilder to BaseFlowGraphBuilder

Change-Id: Ibee87e6d5fdc8143786fd41763a9fd4897d06cba
Reviewed-on: https://dart-review.googlesource.com/67504
Commit-Queue: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
2018-07-31 16:53:14 +00:00
danrubel
ff9167ff7b Fix parseDirectives to recognize metadata
Change-Id: I36be5c3ffef93c0bb6ae58b8c482df4208a37e63
Reviewed-on: https://dart-review.googlesource.com/67440
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2018-07-31 16:46:38 +00:00
Ben Konyi
079bebb78b [ VM ] Added missing token position for assert statements
Fixes #33610

Change-Id: I9e7a286d63f051686a196134d49a100364f81fb9
Reviewed-on: https://dart-review.googlesource.com/67620
Reviewed-by: Zach Anderson <zra@google.com>
Commit-Queue: Ben Konyi <bkonyi@google.com>
2018-07-31 16:17:04 +00:00
Zach Anderson
174649b9be [gardening] Update status of dissasemble_test on Windows
related #34030

Change-Id: I323fd40716f6b2862d3abc93a311b500f55ffbb1
Reviewed-on: https://dart-review.googlesource.com/67600
Reviewed-by: Siva Annamalai <asiva@google.com>
Commit-Queue: Zach Anderson <zra@google.com>
2018-07-31 15:57:42 +00:00
Kevin Millikin
8c5aca7d4d Remove the Factory interface
It's currently just passed around and never used, so remove it for
now.  We will (obviously) restore it when and if we need it.

Change-Id: Ie47243f73d74190c2acf4c6f83eb2fa6f60702fd
Reviewed-on: https://dart-review.googlesource.com/67560
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Commit-Queue: Kevin Millikin <kmillikin@google.com>
2018-07-31 14:43:00 +00:00
Danny Tuppeny
3dc201e168 Update ChangeBuilder to not include empty edits (Take 2)
Combination of Brian's change:
https://dart-review.googlesource.com/c/sdk/+/63901

and Devon's change:
https://dart-review.googlesource.com/c/sdk/+/66405

Change-Id: I57e5d1f7d3a653f225aba2d690190fe1ff18a5b1
Reviewed-on: https://dart-review.googlesource.com/67344
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Danny Tuppeny <dantup@google.com>
2018-07-31 13:44:06 +00:00
William Hesse
18047b2757 Refactor test.dart by changing class Configuration to TestConfiguration
Change-Id: I03624c2cefc6bf5c293ecf016c52de6740e5893f
Reviewed-on: https://dart-review.googlesource.com/67462
Reviewed-by: Alexander Thomas <athom@google.com>
2018-07-31 11:11:16 +00:00
William Hesse
7373d38a31 Update status for Dart2js minified CSP on Chrome with fast startup
Change-Id: I1f2fec8ecd328b29d3bad0623ef9fe5262bc2b3b
Reviewed-on: https://dart-review.googlesource.com/67461
Reviewed-by: Alexander Thomas <athom@google.com>
2018-07-31 10:18:40 +00:00
Lasse R.H. Nielsen
61148eade8 Update mixin-declaration feature specification.
Change-Id: I0c4d2a3e49eb90758ac854a20c5ba5424f32ad3b
Reviewed-on: https://dart-review.googlesource.com/51640
Reviewed-by: Leaf Petersen <leafp@google.com>
Reviewed-by: Erik Ernst <eernst@google.com>
2018-07-30 23:45:42 +00:00
Régis Crelier
a98feb0f01 [VM interpreter] Fix exception handling.
Convert bytecode indices to pc offsets when reading bytecode exception tables.
Print pc descriptors and exception handlers in bytecode disassembly.
Propagate unhandled exceptions after calling interpreter.

Change-Id: Idb3b5459165ab0a124877452b1d9865d27c06d56
Reviewed-on: https://dart-review.googlesource.com/67501
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Commit-Queue: Régis Crelier <regis@google.com>
2018-07-30 23:31:07 +00:00
Bob Nystrom
da2ed2fd59 Don't ignore runtime cast failures on Map<K,V>.
Change-Id: I18a607e37510b78c27a62381864b98f21a0d4192
Reviewed-on: https://dart-review.googlesource.com/67503
Reviewed-by: Vijay Menon <vsm@google.com>
Commit-Queue: Bob Nystrom <rnystrom@google.com>
2018-07-30 23:31:05 +00:00
Zach Anderson
3d8ca8e566 [gardening] Increase debug app-jitk timeout
The timeout was increased in:

d6519499fe

to compensate for not running the kernel isolate from an app-jit.

Tests are still timing out on the debug bot, so this CL will see if
increasing the timeout there helps.

Change-Id: I71656b9b6bf5c23af68d00e288d8cddc415dd102
Reviewed-on: https://dart-review.googlesource.com/67482
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Commit-Queue: Zach Anderson <zra@google.com>
2018-07-30 22:48:42 +00:00
Zach Anderson
0313f7bd66 [gardening] Update status file for failing test
related #34030

Change-Id: I5806294d38d2c28aa80f6e1292dbf28b7774b0d0
Reviewed-on: https://dart-review.googlesource.com/67480
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Commit-Queue: Zach Anderson <zra@google.com>
2018-07-30 22:21:19 +00:00
Konstantin Shcheglov
6c39bc38f3 Clear ShadowX references that are not required after compilation.
This is the second CL that helps to prevent memory leak in Analyzer / CFE
incremental compilation.

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

Bug: https://github.com/dart-lang/sdk/issues/33851
Change-Id: I140e7efa7509ecea23ff4541b0566ac3fc465f76
Reviewed-on: https://dart-review.googlesource.com/67384
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-07-30 21:40:34 +00:00
Devon Carew
05b9bbd2b5 Remove the dart1 version of the analysis server snapshot.
Change-Id: I0e2739fee543604110d95e46b4c62d49fcab2b1a
Reviewed-on: https://dart-review.googlesource.com/67383
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-07-30 20:13:27 +00:00
Devon Carew
9107399190 Add back in the analysis server training.
Change-Id: I6c7349d0df68e18e960bcc071aec40fd9cb8a224
Reviewed-on: https://dart-review.googlesource.com/66803
Reviewed-by: Zach Anderson <zra@google.com>
Reviewed-by: Alexander Aprelev <aam@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
2018-07-30 18:04:42 +00:00
Konstantin Shcheglov
9fb6c09015 Store reference/type for invalid types.
This fixes 18 language_2 tests.

Small degradation in Analyzer unit tests is cause by the way we apply
Kernel type to Analyzer type annotations in DeclarationResolver. We
should shift this logic to using store type resolution instead.

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

Change-Id: I2d60201ec4f4a741bba3f86f65d8dc3b6547514c
Reviewed-on: https://dart-review.googlesource.com/67260
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-07-30 17:49:55 +00:00
William Hesse
21db860271 Remove non-strong dart2js builders from test_matrix.json
Change-Id: I76c4a1f0df8f6e8f6ddd03fd35c9a069845687ef
Reviewed-on: https://dart-review.googlesource.com/67346
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2018-07-30 17:47:44 +00:00
Brian Wilkerson
2e7b0a13f1 Add support for accessing all of the created contexts
Change-Id: I84284726dea1b12f8403456cbdb0a9a967624e0d
Reviewed-on: https://dart-review.googlesource.com/67380
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-07-30 17:47:12 +00:00
Leaf Petersen
73663ae7c6 Allow void on the RHS of null coalescing expressions
Change-Id: I2e2d16c890c735260669d60725085861e66996aa
Reviewed-on: https://dart-review.googlesource.com/67081
Reviewed-by: Erik Ernst <eernst@google.com>
2018-07-30 17:44:40 +00:00
Konstantin Shcheglov
17cb6d95d1 Don't remember TypeEnvironment in resolution results.
We don't actially need them, while formally interface of
ConstructorInvocation.getStaticType() requires it, but this node
does not use it.

This solves one of the reasons why we have memory leak during
incremental analysis with CFE.

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

Change-Id: I74aa6302a463f5f15d1934f5aea49570d6140b3e
Reviewed-on: https://dart-review.googlesource.com/67382
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2018-07-30 17:40:44 +00:00
Martin Kustermann
72960de5f9 [VM] Fix one more place where bound error allocation happened on BG thread in new space
Change-Id: I991e720446a447abea37fea92bd47caa8df7d979
Reviewed-on: https://dart-review.googlesource.com/67348
Reviewed-by: Martin Kustermann <kustermann@google.com>
Reviewed-by: Zach Anderson <zra@google.com>
Commit-Queue: Martin Kustermann <kustermann@google.com>
2018-07-30 17:34:31 +00:00
Brian Wilkerson
6ad79ff4bd Update status file for tests passing under CFE
Change-Id: I996b15cfa074546503874dfea391ee46560ba815
Reviewed-on: https://dart-review.googlesource.com/67381
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-07-30 17:04:10 +00:00
Martin Kustermann
23ba527735 [VM] Ensure to alloate bound errors in old space on BG compiler
Change-Id: I703f1a5e81013674923456acdab1adb099d1758b
Reviewed-on: https://dart-review.googlesource.com/67343
Reviewed-by: Martin Kustermann <kustermann@google.com>
Commit-Queue: Martin Kustermann <kustermann@google.com>
2018-07-30 15:58:58 +00:00
Danny Tuppeny
fe8052428b Remove CONTENT_MODIFIED from spec/test for getSignature
Change-Id: I5d071df8dd02052cff1ba9b414cec62ab34f6bf6
Reviewed-on: https://dart-review.googlesource.com/67342
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Danny Tuppeny <dantup@google.com>
2018-07-30 15:00:38 +00:00