Commit graph

67157 commits

Author SHA1 Message Date
David Morgan d6c6d12ebf Revert "[dartdevc] cleaning up unused web files"
This reverts commit e866f043cf.

Reason for revert: Breaks google3.

Original change's description:
> [dartdevc] cleaning up unused web files
> 
> Dependent on these google3 changes: https://critique.corp.google.com/#review/272749649
> 
> Change-Id: I9e89142cd5b2a619acfc35badb9cf3c549b3be9c
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119587
> Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
> Commit-Queue: Mark Zhou <markzipan@google.com>

TBR=scheglov@google.com,vsm@google.com,markzipan@google.com

Change-Id: I1db094d94d699d4d18c4091f57c7cb775eb95dd5
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/120040
Reviewed-by: David Morgan <davidmorgan@google.com>
Commit-Queue: David Morgan <davidmorgan@google.com>
2019-10-04 10:11:30 +00:00
Lasse R.H. Nielsen ad78373d6c Add changelog for static extension members.
Change-Id: I85bb821ce8b4331540b67e0288c6b029bf0ec0df
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119842
Commit-Queue: Lasse R.H. Nielsen <lrn@google.com>
Reviewed-by: Leaf Petersen <leafp@google.com>
Reviewed-by: Alexander Thomas <athom@google.com>
Auto-Submit: Lasse R.H. Nielsen <lrn@google.com>
2019-10-04 08:27:54 +00:00
Chingjun Lau 5a6d17d362 [dart2js] Accept arguments specified from file.
When running from bazel, argument of the form `@path/to/file` might be
provided. It needs to be replaced by reading all the contents of the
file and expanding them into the resulting argument list.

Change-Id: I1850e5b92acc3a1f10acc63393b69adad877e576
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119729
Commit-Queue: Sigmund Cherem <sigmund@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2019-10-04 03:46:23 +00:00
Zichang Guo 28f21d4e99 [vm/bytecode] correct source position of clearAsyncThreadStackTrace
source position of clearAsyncThreadStackTrace should not have a valid source position.
This fixes code coverage regression.

Bug: https://github.com/dart-lang/sdk/issues/38628
Change-Id: I41b1822a07b9d4becdda58bb810f03733289cd2f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/120002
Commit-Queue: Zichang Guo <zichangguo@google.com>
Reviewed-by: Alexander Markov <alexmarkov@google.com>
2019-10-04 03:12:53 +00:00
Mark Zhou e866f043cf [dartdevc] cleaning up unused web files
Dependent on these google3 changes: https://critique.corp.google.com/#review/272749649

Change-Id: I9e89142cd5b2a619acfc35badb9cf3c549b3be9c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119587
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Mark Zhou <markzipan@google.com>
2019-10-04 02:40:43 +00:00
Felicitas Hetzelt 7a7dcd1ed9 [vm/fuzzer] Several tweaks to reduce timeouts
Rationale:
Disable non-flat types, reduce number of iterations,
decrease limit for emitsmallpositiveint.

[vm/fuzzer] Disable *= in loops for string types

Change-Id: I9b406a1e3d34fce0cec65083aa7b24dfc80967cc
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119980
Reviewed-by: Aart Bik <ajcbik@google.com>
Commit-Queue: Felicitas Hetzelt <felih@google.com>
2019-10-04 00:49:43 +00:00
Stephen Adams 27cd15585b Add BigInt/Int64 parse/toString benchmark
Change-Id: I378c92dc1b17fe023e604feb6c3a7020e1329e45
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/118500
Commit-Queue: Stephen Adams <sra@google.com>
Reviewed-by: Jonas Termansen <sortie@google.com>
2019-10-04 00:45:03 +00:00
Ryan Macnak d2738bf9f0 [vm, gc] Reserve ForwardingPages up front.
Allocate space for ForwardingPages when allocating a new HeapPages that is subject to compaction, instead of allocating it at compaction time, which is when we're already low on memory.

This has a 4KB/256KB = 1.5% overhead for ordinary pages, no overhead for large and code pages.

Bug: https://github.com/dart-lang/sdk/issues/37772
Change-Id: I9ce4d0791093df8ee98d9bda17f0a1cc33788e28
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/114020
Commit-Queue: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Siva Annamalai <asiva@google.com>
2019-10-04 00:29:34 +00:00
Ryan Macnak 1d5bdb2cee Revert "[vm, bytecode] Fix missing dependencies in --snapshot-deps output."
This reverts commit f2e32b5e65.

Reason for revert: Simulators and Windows

Original change's description:
> [vm, bytecode] Fix missing dependencies in --snapshot-deps output.
> 
> Change-Id: Ib0bcb43f52e0a086174f508222d60b894a5855f8
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/120004
> Commit-Queue: Ryan Macnak <rmacnak@google.com>
> Reviewed-by: Alexander Markov <alexmarkov@google.com>

TBR=rmacnak@google.com

Change-Id: I0848e2fc5dd4623b2e9d2913ed211cc1da5b73e8
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/120022
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
2019-10-04 00:21:17 +00:00
Ryan Macnak f2e32b5e65 [vm, bytecode] Fix missing dependencies in --snapshot-deps output.
Change-Id: Ib0bcb43f52e0a086174f508222d60b894a5855f8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/120004
Commit-Queue: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Alexander Markov <alexmarkov@google.com>
2019-10-03 22:59:02 +00:00
Ryan Macnak b4688e9172 [vm, bytecode] Fix package splitting when main is empty.
Building a Fuchsia package expect a dilp to be emitted even in this case.

Change-Id: I0ce946081b053e9fba73930d8204b9a7ac174a1f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/120001
Commit-Queue: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Alexander Markov <alexmarkov@google.com>
2019-10-03 21:55:32 +00:00
Ben Konyi 56a28260fd [ Observatory ] Fixed issue where timeline save functionality was consistently failing
Timeline save functionality was broken after a recent redesign of how
CPU samples are pushed over the service protocol. When the save button
on the timeline page was clicked, the "traceObject" variable was
undefined, causing the save to fail.

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

Change-Id: Icd3e9c841431c790dd7f49107f0c5d39f0088cd6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/120000
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Commit-Queue: Ben Konyi <bkonyi@google.com>
2019-10-03 21:28:12 +00:00
Mark Zhou 26b1aca71e [dartdevc] Canonicalizing partial instantiation constants
Fixes #38703

This fixes the last whitelisted DDK test.

Change-Id: I1fd79c2bc361b2a4bf7fce60a406be521408024b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119921
Reviewed-by: Nicholas Shahan <nshahan@google.com>
Commit-Queue: Mark Zhou <markzipan@google.com>
2019-10-03 20:45:13 +00:00
pq 0a63bd4b0a diagnostic fix support for colors, iterables, lists, matrices
See: https://github.com/dart-lang/sdk/issues/38633

Change-Id: I8d7baa32bcea22f2c162bd9d77c7dd0b95b308de
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119901
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Phil Quitslund <pquitslund@google.com>
2019-10-03 20:05:33 +00:00
Martin Kustermann 7376167b2a Revert "[vm/compiler] Fix Code equality comparison in DedupInstructions."
This reverts commit 4cd5d773de.

Reason for revert: Broke flutter benchmarks (e.g. animation, build benchmark).

Original change's description:
> [vm/compiler] Fix Code equality comparison in DedupInstructions.
> 
> Change-Id: Ide07e8dd174cec407b2f19346330985b612f098e
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119844
> Auto-Submit: Teagan Strickland <sstrickl@google.com>
> Reviewed-by: Martin Kustermann <kustermann@google.com>
> Commit-Queue: Teagan Strickland <sstrickl@google.com>

TBR=kustermann@google.com,sstrickl@google.com

Change-Id: I5ab180ddd40fecf769d544184dfffeb034bc2eeb
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119941
Reviewed-by: Martin Kustermann <kustermann@google.com>
Commit-Queue: Martin Kustermann <kustermann@google.com>
2019-10-03 19:43:15 +00:00
Samir Jindel b2bf860e56 [vm/ffi] Fix FfiCall on ARM_X64.
Fixes https://github.com/dart-lang/sdk/issues/38690

Change-Id: I597361ed611885bcf93584a76f8baaf1108e7026
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119940
Commit-Queue: Samir Jindel <sjindel@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
2019-10-03 18:51:33 +00:00
Ben Konyi f36ef2010e [package:vm_service] Clear completers map when dispose() is called
Fixes https://github.com/dart-lang/sdk/issues/38683

Change-Id: Iac7d7d61792b7197dda975fdc77cdc7d9ecfb6b8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119881
Reviewed-by: Jacob Richman <jacobr@google.com>
Commit-Queue: Ben Konyi <bkonyi@google.com>
2019-10-03 18:22:43 +00:00
Ryan Macnak 4c614c7c44 [vm, bytecode] Don't suppress the interpreter on IA32 or ARM.
Interpreter support was added in 975cc65c17 and 24df9cc588.

Change-Id: I74fae8eaa76c1ba6bb3810d543d4009a31d33ead
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119763
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Régis Crelier <regis@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
2019-10-03 17:26:45 +00:00
Ryan Macnak c1f691c797 [vm, bytecode] Saturate context ids instead of issuing a compile-time error.
The bytecode encoding allows for 8-bits of context id, but this limit is exceeded in Flutter test code. Context ids are as yet unused, but will be used to disambiguate variables at the same position in different contexts.

Change-Id: I64130c11ddf04495b2719aa6f4809fa64ff135c1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119728
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
2019-10-03 16:57:33 +00:00
Konstantin Shcheglov f480d43f08 Remove DeferredFunctionTypeImpl.
Change-Id: I8d45608867866a50202355fa7e3cf41f6391a3e2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119824
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-10-03 16:53:33 +00:00
Teagan Strickland 4cd5d773de [vm/compiler] Fix Code equality comparison in DedupInstructions.
Change-Id: Ide07e8dd174cec407b2f19346330985b612f098e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119844
Auto-Submit: Teagan Strickland <sstrickl@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
Commit-Queue: Teagan Strickland <sstrickl@google.com>
2019-10-03 16:49:13 +00:00
Ben Konyi e87f3407c8 [ dart:developer ] Added optional parent parameter to TimelineTask constructors.
Specifying a parent will result in an argument being added to 'start'
events for that TimelineTask named 'parentId', which contains the task
ID of the parent. This is to be used by DevTools to show relationships
between asynchronous tasks that are not currently supported in the trace
event format used by Catapult.

Change-Id: Id0a030f018f5a6ac1e3b0ef2e89c1cd732790f02
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119520
Commit-Queue: Ben Konyi <bkonyi@google.com>
Reviewed-by: Kenzie Schmoll <kenzieschmoll@google.com>
Reviewed-by: Siva Annamalai <asiva@google.com>
2019-10-03 16:33:38 +00:00
Alexander Markov 07a63a17a4 [vm,aot,bytecode] Handle procedure-attributes metadata when generating bytecode
Change-Id: I26e1a15d979ce13ca60298de28ced49b6882cf52
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119765
Commit-Queue: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Régis Crelier <regis@google.com>
2019-10-03 16:27:33 +00:00
Konstantin Shcheglov 0cd0d9a744 Remove FunctionTypeImpl.forTypedef()
Change-Id: I4d54ef8046a8dd5b06b9f815e89d28e5a8a985d5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119823
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-10-03 16:25:33 +00:00
Konstantin Shcheglov c1e6533c0e Remove TypeArgumentsComputer and lazy InterfaceType arguments.
Change-Id: I48ca04ca30eb737c832440ef3fe391b169fd323e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119825
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-10-03 14:32:47 +00:00
Konstantin Shcheglov bd30cbff30 Remove FunctionTypeImpl.fresh()
Change-Id: Ie57af4228e9e58ff09dc9ca568392e539997a82c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119822
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-10-03 14:32:37 +00:00
Konstantin Shcheglov a4e1b08e25 Stop using 'Element.type' in TypeSystem.
Change-Id: Ice12345ee8acc58f4f05311fb4b68ad24eadf33d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119769
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-10-03 14:24:42 +00:00
Konstantin Shcheglov 4b1cf2aa10 Stop using 'Element.type' in ElementFactory, AstTestFactory, _OverrideChecker.
Change-Id: I064ec8ae3ab207b686d450c6dcd5fa23b5caca62
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119800
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-10-03 14:24:33 +00:00
Samir Jindel afac6a3714 Re-land "[vm] Use ELF loader in dart2native."
Fixes symbol resolution on Darwin.

The original commit is in patchset 1.

Change-Id: If71e9a72b8a2f45db2591bfa45ec4018745ee2c4
Cq-Include-Trybots:luci.dart.try:dart-sdk-mac-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119646
Commit-Queue: Samir Jindel <sjindel@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
2019-10-03 13:40:12 +00:00
Clement Skau 6e1b479285 [SDK] Adds text wrapping and tweaks to flags for dart2native.
Usage: dart2native <main-dart-file> [<options>]

Generates an executable or an AOT snapshot from <main-dart-file>.

-D, --define=<key=value>       Set values of environment variables. To specify
                               multiple variables, use multiple options or use
                               commas to separate key-value pairs.
                               E.g.: dart2native -Da=1,b=2 main.dart

    --enable-asserts           Enable assert statements.
-h, --help                     Display this help message.
-o, --output=<path>            Set the output filename. <path> can be relative
                               or absolute.
                               E.g.: dart2native main.dart -o ../bin/my_app.exe

-k, --output-kind=<aot|exe>
          [aot]                Generate an AOT snapshot.
          [exe] (default)      Generate a standalone executable.

-p, --packages=<path>          Get package locations from the specified file
                               instead of .packages. <path> can be relative or
                               absolute.
                               E.g.: dart2native --packages=/tmp/pkgs main.dart

-v, --verbose                  Show verbose output.


Change-Id: Id4d5542a946326fb8c009643f16fa1be99c9a97e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/118994
Commit-Queue: Clement Skau <cskau@google.com>
Reviewed-by: Kathy Walrath <kathyw@google.com>
2019-10-03 12:06:02 +00:00
Johnni Winther 967673c005 [cfe] Introduce ClassMember
Use interface ClassMember instead of Builder in ClassHierarchyBuilder.
This avoids the coupling between DelayedMember and Builder and is a
precursor to removing Builder.target.

Change-Id: Ie2067512051618a60fcb94b5aae7e7f3d8c02b15
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119644
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Aske Simon Christensen <askesc@google.com>
2019-10-03 09:49:01 +00:00
Johnni Winther 3e2d6f95ee [cfe] Use fileOffset in Forest instead of Token
Change-Id: I6904555d5e192b7f6a561ae41859288db808e771
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119642
Reviewed-by: Jens Johansen <jensj@google.com>
2019-10-03 09:49:01 +00:00
Jens Johansen 2285741180 [analyzer] Update syntactic_errors.g
Change-Id: Id1339e7d1e200f6ba3d0a594a6c8b1c3f9f0ba9d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119841
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Jens Johansen <jensj@google.com>
2019-10-03 08:35:11 +00:00
Jens Johansen 396608e35d [CFE] Update parser test framework to work with extensions
Change-Id: I7e3fa005470a66e33da12ee71235020fb53e8767
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119840
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Jens Johansen <jensj@google.com>
2019-10-03 08:29:51 +00:00
Chris Bracken 5c106e3098 [vm, fuchsia] Add timezone support in Fuchsia SDK builds
Previously Fuchsia did not expose a timezone API in their public API.
Support for the existing private APIs was added in:

https://fuchsia-review.googlesource.com/c/fuchsia/+/284531
https://fuchsia-review.googlesource.com/c/fuchsia/+/284654

as fuchsia::deprecatedtimezone. A replacement API has not yet been added
to the public SDK.

This resolves b/141224241.

Change-Id: I50d3cb61f869508a6cf90e918c5af001a27192f8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119820
Auto-Submit: Chris Bracken <cbracken@google.com>
Commit-Queue: Zach Anderson <zra@google.com>
Reviewed-by: Zach Anderson <zra@google.com>
2019-10-03 04:33:59 +00:00
pq 512d763b9d diagnostic property types support
Adds support for:

* ints
* doubles
* enums
* Strings

Up next: Colors, Iterables, Transforms and a catch-all.

Also note the TODO to change how types are being written (will be needed for Iterables).

See: https://github.com/dart-lang/sdk/issues/38633

Change-Id: I9d545ce9e090059ae330f9ae5dadf8e7d4b373c7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119725
Commit-Queue: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-10-03 02:12:39 +00:00
Konstantin Shcheglov 16944f0edb Stop using 'Element.type' in StaticTypeAnalyzer.
...other than the places where we should not set the type at all,
because these identifiers are not expressions. This is being done in
a separate CL, which will probably land as a breaking change.

Change-Id: I710488f0d1aa2475e51b59e383a1192b16162855
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119766
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-10-03 00:19:37 +00:00
Felicitas Hetzelt 375c4a9657 [vm/fuzzer] Disable CC for most types
Change-Id: I7ab01cd7ca2d5f9ec23f5be9dfbe7c4dfc7b46a8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119768
Commit-Queue: Felicitas Hetzelt <felih@google.com>
Reviewed-by: Aart Bik <ajcbik@google.com>
2019-10-03 00:12:02 +00:00
Robert Nystrom e919e89d0b Add an "--nnbd" flag to build.py.
This treats whether or not to use the forked NNBD SDK as a build flag
similar to mode or architecture. When this flag is passed, it appends
"NNBD" to the main output directory, like xcodebuild/ReleaseX64NNBD.

It also defines a "use_nnbd" flag that is available inside BUILD.gn
files to determine whether or not to use the forked SDK. This flag
currently isn't used. Implementation teams will need to edit their
build steps to take that into account.

In order to use this mode on the bots, we'll need to tweak the bot
scripts to figure out whether the mode is enabled or not. There are a
couple of TODOs in the Python scripts for that. I'm not sure how that
should be specified in dart_sdk.py.

This CL does not remove my previous change to allow building the NNBD
fork next to dart-sdk in the same root output directory. I'll revert
those changes in a different CL once this one lands.

Change-Id: I3bd28f273106ee90caf9474b2fadad120b2c2d0b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119602
Commit-Queue: Bob Nystrom <rnystrom@google.com>
Reviewed-by: Siva Annamalai <asiva@google.com>
Reviewed-by: Alexander Thomas <athom@google.com>
2019-10-03 00:11:32 +00:00
Ryan Macnak d65a60db00 [vm, bytecode] Populate bytecode cache when initializing an incremental compiler from a kernel file.
AST
"without_change_elapsed_time_ms": 2863,
"implementation_change_elapsed_time_ms": 6009,
"interface_change_elapsed_time_ms": 5888,
"with_coverage_time_ms": 2884

BYTECODE BEFORE
"without_change_elapsed_time_ms": 5216,
"implementation_change_elapsed_time_ms": 8517,
"interface_change_elapsed_time_ms": 8895,
"with_coverage_time_ms": 5462

BYTECODE AFTER
"without_change_elapsed_time_ms": 3384,
"implementation_change_elapsed_time_ms": 8139,
"interface_change_elapsed_time_ms": 8073,
"with_coverage_time_ms": 3473

Change-Id: Ic8e1c183070cb6019ea48f16c04ea5363df41a97
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119620
Commit-Queue: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Alexander Markov <alexmarkov@google.com>
2019-10-02 23:53:42 +00:00
Felicitas Hetzelt 22479a17ff [vm/fuzzer] Sort generated tables.
Change-Id: I5f8cac14ffeb05f12889a42706de02a40b72cd75
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119727
Reviewed-by: Aart Bik <ajcbik@google.com>
Commit-Queue: Felicitas Hetzelt <felih@google.com>
2019-10-02 23:27:41 +00:00
Felicitas Hetzelt 9050e28bf0 [vm/fuzzer] Avoid STRING *= large number in loops
Change-Id: I2048b1c888a9656107bcee6a966f4658c9bab4a2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119740
Reviewed-by: Aart Bik <ajcbik@google.com>
Commit-Queue: Felicitas Hetzelt <felih@google.com>
2019-10-02 23:25:01 +00:00
Alexander Markov 1ed707703d [vm/bytecode] Mark try blocks generated for try/finally as synthetic
This matches behavior of AST-based flow graph builder. Debugger ignores
synthetic (is_generated) try blocks when it figures out if thrown
exception is unhandled, so in order to ignore all try/finally blocks
they should be marked as synthetic.

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

Change-Id: I06840362a255b500e1e9317af90a61bbdea2a310
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119726
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Régis Crelier <regis@google.com>
Commit-Queue: Alexander Markov <alexmarkov@google.com>
2019-10-02 23:15:11 +00:00
Brian Wilkerson f2816eeb0d Add a test, a TODO, and a minor display enhancement
Change-Id: Iee53c429839b36426677916f13878b1a3313bef3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119767
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-10-02 22:23:41 +00:00
Sigmund Cherem 33494de2f9 (ddk modular test) exclude sources from dill files.
This fixes the issue we had with shared/diamond depedencies.  This also matches
more closely how DDK is invoked internally and externally.

While the change to use `--dart-sdk-summary` is not necessary, this brings the
API closer to how it is used elsewhere. It should be cleaned up in the future to
reuse the `--input-summary` flag instead.

Change-Id: Iec3695b5541ffaf7f5762a3d77f071a596237da1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119723
Reviewed-by: Nicholas Shahan <nshahan@google.com>
Commit-Queue: Sigmund Cherem <sigmund@google.com>
2019-10-02 22:22:11 +00:00
Konstantin Shcheglov 70af20bda5 Stop using 'Element.type' in ElementResolver.
R=brianwilkerson@google.com

Change-Id: I9b4eec9e0c846d0c7c9bf17177746ca71eaa4e88
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119764
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-10-02 22:08:21 +00:00
Alexander Markov 97bb624cfe [vm] Rebuild type testing stubs if their fast path starts failing
When type testing stub is generated it captures whatever subclasses are
present at this moment. As program continues running, new classes could be
loaded and finalized. This is especially true in bytecode mode with
its more lazy class loading. So type testing stubs could get outdated and
will fall back to slow path. This could cause performance regressions as
slow path is (1) slower :) and (2) it populates and uses SubtypeTestCache,
which has a limited capcity (controlled by max_subtype_cache_entries flag).
Once SubtypeTestCache overflows type checks are not longer cached which
makes type checks at particular location significantly slower.

The solution is to rebuild specialized type testing stub in TypeCheck
runtime entry after fast path failed but check succeeded.

Change-Id: Ied166e19be2870acef7a066b83bb73931bd1073d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119184
Commit-Queue: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
2019-10-02 21:09:33 +00:00
Felicitas Hetzelt f46e5ee44e [vm/fuzzer] Make num type non instantiable
Change-Id: I7ea37b58f1a3464ff4565219268f1a8bf3b04672
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119720
Reviewed-by: Aart Bik <ajcbik@google.com>
Commit-Queue: Felicitas Hetzelt <felih@google.com>
2019-10-02 21:04:04 +00:00
Aart Bik 7e99f49629 [vm/compiler] general rbit utilities
Rationale:
Useful to implement the simulator, but also useful
in the future when compiler wants to constant fold
operations related to bit reversal.

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

Change-Id: I2f09ba6b1897202b5c07a2cff771afd7bbc99495
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119703
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Commit-Queue: Aart Bik <ajcbik@google.com>
2019-10-02 20:37:10 +00:00
Samir Jindel 9e738b94b4 [vm] Remove #include from elf_loader.h so it can be used imported in Flutter.
Change-Id: I72ff785709ee1f5f5fbbd57d2433ca96e9866470
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/118986
Reviewed-by: Martin Kustermann <kustermann@google.com>
Commit-Queue: Samir Jindel <sjindel@google.com>
2019-10-02 20:11:20 +00:00