Commit graph

62920 commits

Author SHA1 Message Date
pq
6d47db7629 bump to linter 0.1.85
Change-Id: Id53c9babe05a74de7ea1931f9912cfa19a72ecb4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98802
Commit-Queue: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-04-08 14:28:43 +00:00
Sergey G. Grekhov
4ca7401604 [co19] Roll to 7e743ef29b4c06f1a2b8b9dc70ead60b31aab526
Change-Id: I6d52b5820139e83df157e00114b51c0d53a990a3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98674
Reviewed-by: Alexander Thomas <athom@google.com>
2019-04-08 14:17:43 +00:00
Vijay Menon
94baf382cc Revert "Revert "set empty environment defines to CompilerOptions""
Per our internal discussion, we need this afterall: see b/129881700

Change-Id: I2c1deebaa68640944fa83df1850be0dce40b188f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98805
Auto-Submit: Vijay Menon <vsm@google.com>
Reviewed-by: David Morgan <davidmorgan@google.com>
Commit-Queue: Vijay Menon <vsm@google.com>
2019-04-08 14:15:53 +00:00
Paul Berry
fadae89a38 Remove unused imports
Change-Id: Iafa759bf1ee42fe4324cb9380944592ba21849a8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98860
Auto-Submit: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-04-08 14:09:04 +00:00
Clement Skau
26874860e3 [SDK] Adds .exe extension for Windows binaries in dart_sdk.py.
This fixes the current build breakage:
https://logs.chromium.org/logs/dart/buildbucket/cr-buildbucket.appspot.com/8917013092125339168/+/steps/upload_sdk/0/stdout

Bug: None
Change-Id: Ic47812a5f3ce0ab7f090a3f19429aa5d5e3cb279
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98846
Reviewed-by: Alexander Thomas <athom@google.com>
Commit-Queue: Clement Skau <cskau@google.com>
2019-04-08 13:22:53 +00:00
Aske Simon Christensen
d75a49a44f [CFE] Ignore abstract methods when looking for operator '=='.
Fixes https://github.com/dart-lang/sdk/issues/36515

Change-Id: I7e6717b8cde7341c482e5eeb52c2ab4fe8fdcb9c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98842
Commit-Queue: Aske Simon Christensen <askesc@google.com>
Auto-Submit: Aske Simon Christensen <askesc@google.com>
Reviewed-by: Kevin Millikin <kmillikin@google.com>
2019-04-08 11:11:08 +00:00
Daco Harkes
8e0a669e74 Revert "[vm] Refactor Location to use either dart::Register or dart::host::Register"
This reverts commit 60b3643e8e.

Reason for revert: Broke Windows+simulator builds. (Template instantiation checks are different on Windows than on Linux/MacOS)

Original change's description:
> [vm] Refactor Location to use either dart::Register or dart::host::Register
> 
> Refactoring motivation: go/dart-simulated-ffi
> 
> * template Location and PairLocation with <dart::Register, dart::FpuRegister> or <dart::host::Register, dart::host::FpuRegister>
> * move RegisterName and FpuRegisterName from assembler to constants
> 
> Change-Id: I266b97ef1f0493c184f4486c7a0482845d4ac644
> Cq-Include-Trybots: luci.dart.try:vm-kernel-precomp-bare-linux-release-simarm-try, vm-kernel-precomp-bare-linux-release-simarm64-try, vm-kernel-precomp-linux-debug-x64-try, vm-kernel-linux-debug-simdbc64-try
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97312
> Commit-Queue: Daco Harkes <dacoharkes@google.com>
> Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
> Reviewed-by: Samir Jindel <sjindel@google.com>

TBR=vegorov@google.com,sjindel@google.com,dacoharkes@google.com

Change-Id: I8b4721e3ddbe1d32c3b553555064868bce5ea089
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Cq-Include-Trybots: luci.dart.try:vm-kernel-precomp-bare-linux-release-simarm-try, vm-kernel-precomp-bare-linux-release-simarm64-try, vm-kernel-precomp-linux-debug-x64-try, vm-kernel-linux-debug-simdbc64-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98843
Reviewed-by: Daco Harkes <dacoharkes@google.com>
Commit-Queue: Daco Harkes <dacoharkes@google.com>
2019-04-08 10:28:12 +00:00
Michael Thomsen
3e12bdd717 Update dart2aot help output
Closes #36514
https://github.com/dart-lang/sdk/pull/36514

GitOrigin-RevId: 479b2c21838416d62477879a6d18ff6debb4bf12
Change-Id: If89d1cffb24b6d383bf67b20b6ceb1d1b9fd1f1e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98820
Reviewed-by: Clement Skau <cskau@google.com>
Commit-Queue: Michael Thomsen <mit@google.com>
2019-04-08 10:04:57 +00:00
Stevie Strickland
50f3a6c960 [gardening] Make deferred imports part of the corresponding tests.
See https://github.com/dart-lang/sdk/issues/36418 for more info.

Change-Id: I5e26b295699c52db2e542330c23f8ec3095d78e9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98840
Reviewed-by: Stevie Strickland <sstrickl@google.com>
Commit-Queue: Stevie Strickland <sstrickl@google.com>
2019-04-08 09:58:27 +00:00
Daco Harkes
60b3643e8e [vm] Refactor Location to use either dart::Register or dart::host::Register
Refactoring motivation: go/dart-simulated-ffi

* template Location and PairLocation with <dart::Register, dart::FpuRegister> or <dart::host::Register, dart::host::FpuRegister>
* move RegisterName and FpuRegisterName from assembler to constants

Change-Id: I266b97ef1f0493c184f4486c7a0482845d4ac644
Cq-Include-Trybots: luci.dart.try:vm-kernel-precomp-bare-linux-release-simarm-try, vm-kernel-precomp-bare-linux-release-simarm64-try, vm-kernel-precomp-linux-debug-x64-try, vm-kernel-linux-debug-simdbc64-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97312
Commit-Queue: Daco Harkes <dacoharkes@google.com>
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
Reviewed-by: Samir Jindel <sjindel@google.com>
2019-04-08 09:45:27 +00:00
Daco Harkes
544371c7f2 [vm] Refactor constants to be available in namespaces dart and dart::host
Refactoring motivation: go/dart-simulated-ffi

Change-Id: I219aba2793cfb7d7ea5ecc0a2ab93276c6cbf1e0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97325
Reviewed-by: Samir Jindel <sjindel@google.com>
2019-04-08 09:45:27 +00:00
Alexander Thomas
7f5ed18ffc [release] Update changelog to match dev branch
TBR=whesse@google.com

Change-Id: I6dd660bbf7874f2e13d63f57a93481cbc91d3984
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98679
Reviewed-by: Alexander Thomas <athom@google.com>
2019-04-08 07:14:19 +00:00
Brian Wilkerson
86b5304ccd Revert "Fix mustCallSuper for mixins and inherited interfaces:"
This reverts commit 1ad11facec.

Reason for revert: The CL broke the flutter-analyze bot.

Original change's description:
> Fix mustCallSuper for mixins and inherited interfaces:
> 
> * If a method overrides a mixed in @mustCallSuper method, it should call super.
> * If a method overrides a method from a supertype, which itself overrides a
>   method from an interface, the first method should call super.
> 
> Fixes internal b/70374204.
> 
> Change-Id: I645de4a288a8c5ffff173e97692f8eb6fe38bdb5
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98443
> Commit-Queue: Samuel Rawlins <srawlins@google.com>
> Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>

TBR=brianwilkerson@google.com,srawlins@google.com

# Not skipping CQ checks because original CL landed > 1 day ago.

Change-Id: I9339e6a8933f6d25b3bcbdbac0b6a1d304a3693b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98803
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-04-07 16:58:27 +00:00
Devon Carew
389ccc9000 when analyzing fuchsia workspaces, expect to find .fx-build-dir files
Change-Id: I7ac5dac157d86d1d98db476734d8f51cd8364851
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98761
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
2019-04-06 00:48:04 +00:00
Bob Nystrom
a47b4ad2b8 Bring dart_style 1.2.7 into the SDK repo.
This just has one change, a fix to how adjacent strings inside "=>"
functions are indented.

Change-Id: I457ea308101be9fb5acc4257e47360635a2b97e0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98746
Commit-Queue: Kevin Moore <kevmoo@google.com>
Reviewed-by: Kevin Moore <kevmoo@google.com>
2019-04-06 00:01:15 +00:00
Mark Zhou
e5d78513a1 [dartdevc] Hoisting covariance checks for generators outside of the body.
Issue: https://github.com/dart-lang/sdk/issues/33066
Change-Id: I77fed5a2b82e3d65436d71a4bd1461d731f8358e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97945
Commit-Queue: Mark Zhou <markzipan@google.com>
Reviewed-by: Jenny Messerly <jmesserly@google.com>
2019-04-05 23:35:44 +00:00
Konstantin Shcheglov
73b931b6e6 Start reworking to use actual AST nodes created lazily.
Change-Id: I94746fd27eb02b928f4983fe88bcf2a72f600aaf
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98724
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-04-05 23:08:54 +00:00
Aart Bik
fd2393d6d3 [dart/fuzzer] Re-enable optimization_counter_threshold testing
Rationale:
Underlying issues fixed by Samir.

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

Change-Id: I7baaecbe6611f9581050da09ac5375fdf70db319
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98760
Reviewed-by: Samir Jindel <sjindel@google.com>
Commit-Queue: Aart Bik <ajcbik@google.com>
2019-04-05 22:56:34 +00:00
Ryan Macnak
8e6851f0e4 [vm] Don't create edge counter arrays when edge counters are disabled.
Change-Id: I595ee38cf6a4411102ca811333227fe365864065
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98686
Reviewed-by: Alexander Markov <alexmarkov@google.com>
2019-04-05 22:47:16 +00:00
Ryan Macnak
90c757c766 [vm, interpreter] Allocation fast paths.
Bug: https://github.com/dart-lang/sdk/issues/36410
Change-Id: If753e60ac70f7c016e1caa3b296378d3ebc0a91c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/87267
Commit-Queue: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Alexander Markov <alexmarkov@google.com>
2019-04-05 22:37:58 +00:00
Alexander Markov
43046b7f7c [vm/bytecode] Enable building of kernel service snapshot
Kernel service snapshot is built in default (non-bytecode) mode and
it is not compatible with VM running in bytecode mode.

Previously, this incompatibility was causing crashes and building of
kernel service snapshot was disabled if SDK is built with --bytecode.

With the change https://dart-review.googlesource.com/c/sdk/+/98723
that workaround is no longer needed, and we can build kernel service
snapshot once again.

Change-Id: Ia5660b637894a5ffc2723e12dc2bf9630cc2f8c7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98604
Reviewed-by: Zach Anderson <zra@google.com>
Commit-Queue: Alexander Markov <alexmarkov@google.com>
2019-04-05 22:31:58 +00:00
Alexander Markov
7beed016a0 [vm/bytecode] Add 'bytecode' into snapshot feature flags
This change makes snapshots generated in bytecode mode incompatible with
VM running in a non-bytecode mode, and vice versa.

When there are both bytecode and AST available, we should consistently
use the same source for JIT compilation, as they are not compatible in
some cases (captured contexts of closures are different in bytecode and AST).

Change-Id: Id50c42694d8db1ffaf9dd1bd902071fc3297a5a5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98723
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Zach Anderson <zra@google.com>
2019-04-05 22:31:58 +00:00
pq
cf04a16527 dartfix to migrate to spread collections
Change-Id: I7764f29e159356cc589f4e66b80eefff6cc998f9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98742
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Phil Quitslund <pquitslund@google.com>
2019-04-05 22:27:58 +00:00
Ryan Macnak
9e1adc54a7 [vm] When loading a compilation trace, speculatively populate ICData based on the receiver's static type.
If the receiver's static type has one concrete implementation, lookup the target for that implementation and add it to the ICData's entries. For some well-known interfaces, do the same for the most common concrete implementation (e.g., int -> _Smi).

Avoids method resolution during application startup.

Bug: https://github.com/dart-lang/sdk/issues/36428
Change-Id: I57edf9c9cb5cb13af3182a100adce2802571a3aa
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98445
Commit-Queue: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
2019-04-05 21:12:44 +00:00
Jenny Messerly
f93b93dd91 [dartdevc] fix string escaping for string_literal_test
This brings some updates from dart2js' string escape function over to
DDC. Includes some small changes to work better for DDC:

- take the quote style as an input; DDC uses it for ES6 template strings.
- use ES6 escape syntax (DDC requires ES6 support).
- always use UTF-8 mode because DDC writes files as UTF-8.

Change-Id: I56e2cbb9afcebf06500185170bd9877b16f5dd92
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98693
Auto-Submit: Jenny Messerly <jmesserly@google.com>
Reviewed-by: Mark Zhou <markzipan@google.com>
Commit-Queue: Jenny Messerly <jmesserly@google.com>
2019-04-05 21:11:05 +00:00
Konstantin Shcheglov
4b9b8562c6 Update expectation for conditional expression and constant_update_2018.
R=brianwilkerson@google.com

Change-Id: Ie02053740ff3f643d93a754491e3727c246774b9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98741
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-04-05 20:42:24 +00:00
Jenny Messerly
da4ccd0855 [analyzer] fix #32918, eliminate type variables during const inference
This brings Analyzer's type inference in line with the language spec.
Similar to CFE, the inference function now takes an isConst parameter,
which if set, tells it to eliminate type variables from the context
type.

Change-Id: Ied67bac39d73c9ecd7e0a482a0c8db77272637cc
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98707
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Jenny Messerly <jmesserly@google.com>
2019-04-05 19:30:54 +00:00
Keerti Parthasarathy
0e7bec7d2f Add validation for AndroidManifest.xml files
Change-Id: Ieab8027eb81257d76cdda34b423bb554f968f021
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98040
Commit-Queue: Keerti Parthasarathy <keertip@google.com>
Reviewed-by: Keerti Parthasarathy <keertip@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-04-05 19:30:34 +00:00
Konstantin Shcheglov
ca4e707e80 Fix AvailableSuggestionSetsTest on Windows.
R=brianwilkerson@google.com

Change-Id: I99fb2c60e539b0acc37bcb2073c1624a620ddff5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98720
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-04-05 19:21:11 +00:00
Mike Fairhurst
d4c61411f3 Update bug number to reflect deprioritized bug
Change-Id: I0664dd951ab4374856b3db83b7311a63176fa356
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98721
Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
Auto-Submit: Mike Fairhurst <mfairhurst@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2019-04-05 19:01:54 +00:00
Jaime Wren
ee248fef23 Add a fix for using relative imports when the missing import is in the same library.
https://www.dartlang.org/guides/language/effective-dart/usage#prefer-relative-paths-when-importing-libraries-within-your-own-packages-lib-directory

Change-Id: I6a4d7f2906fa56dc91d05a86d53dd9da023d2bcf
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98623
Commit-Queue: Jaime Wren <jwren@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-04-05 18:50:44 +00:00
Alexander Markov
07482eeb5e [bots] Run all tests on vm-dartkb-* bots
Bytecode configurations should have the same test coverage as default mode.

The following tests are excluded in dartkb mode as there are too many crashes:
 - service/* (debugging capabilities are not supported);
 - lib_2/mirrors/* (mirrors are not supported);
 - vm/cc/* (bytecode modes are not wired up in run_vm_tests).

Change-Id: I11eead94b96f43ab454acd6e6f6861af943c0488
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97847
Reviewed-by: Alexander Thomas <athom@google.com>
Commit-Queue: Alexander Markov <alexmarkov@google.com>
2019-04-05 18:25:34 +00:00
Sam Rawlins
1ad11facec Fix mustCallSuper for mixins and inherited interfaces:
* If a method overrides a mixed in @mustCallSuper method, it should call super.
* If a method overrides a method from a supertype, which itself overrides a
  method from an interface, the first method should call super.

Fixes internal b/70374204.

Change-Id: I645de4a288a8c5ffff173e97692f8eb6fe38bdb5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98443
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-04-05 16:14:24 +00:00
Aske Simon Christensen
6dc9c8d127 [CFE] JS: Treat integer valued double constants as integers.
This fixes the problem with two-pass constant evaluation (with
intervening serialization) where an integer created by the first
pass would look like a double to the second pass.

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

Change-Id: I5040c3a2dac780c17a28b29df3dd65b6b9b3379b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98676
Commit-Queue: Aske Simon Christensen <askesc@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2019-04-05 15:56:04 +00:00
Martin Kustermann
dbfd00f44d [vm/compiler] Add new optimization pass which inlines typed data accesses
Based on the unified typed data layout, we can now inline accesses to
typed data interface classes if there are no 3rd party implementations
of those interfaces.

Example: If a receiver is of type Uint8List and we call `[]` or `[]=` we
will inline the byte access.

Instead of changing the existing inliner / call specializer we add this
as an extra pass: If the inliner / call specializer infer that the
receiver type is e.g. internal typed data then it will perform the
inlining itself using more optimized LoadIndexed instruction.

=> Only if those existing optimization passes have not been able to inline
   the access will we, later on in the compilation pipeline, run a
   specialized pass which will inline the accesses using LoadUntagged +
   LoadIndexed (which is slightly less efficient than using only LoadIndexed
   for internal typed data).

As a first step this is only done for AOT.

For ease of writing tests matching certain IR graphs this CL also adds a
IR pattern matcher.

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

Cq-Include-Trybots: luci.dart.try:vm-canary-linux-debug-try, vm-dartkb-linux-debug-x64-try, vm-dartkb-linux-release-x64-try, vm-kernel-asan-linux-release-x64-try, vm-kernel-checked-linux-release-x64-try, vm-kernel-linux-debug-ia32-try, vm-kernel-linux-debug-simdbc64-try, vm-kernel-linux-debug-x64-try, vm-kernel-linux-product-x64-try, vm-kernel-linux-release-ia32-try, vm-kernel-linux-release-simarm-try, vm-kernel-linux-release-simarm64-try, vm-kernel-linux-release-simdbc64-try, vm-kernel-linux-release-x64-try, vm-kernel-optcounter-threshold-linux-release-ia32-try, vm-kernel-optcounter-threshold-linux-release-x64-try, vm-kernel-precomp-android-release-arm-try, vm-kernel-precomp-bare-linux-release-simarm-try, vm-kernel-precomp-bare-linux-release-simarm64-try, vm-kernel-precomp-bare-linux-release-x64-try, vm-kernel-precomp-linux-debug-x64-try, vm-kernel-precomp-linux-product-x64-try, vm-kernel-precomp-linux-release-simarm-try, vm-kernel-precomp-linux-release-simarm64-try, vm-kernel-precomp-linux-release-x64-try, vm-kernel-precomp-obfuscate-linux-release-x64-try, vm-kernel-precomp-win-release-simarm64-try, vm-kernel-precomp-win-release-x64-try, vm-kernel-reload-linux-debug-x64-try, vm-kernel-reload-linux-release-x64-try, vm-kernel-reload-rollback-linux-debug-x64-try, vm-kernel-reload-rollback-linux-release-x64-try, vm-kernel-win-debug-ia32-try, vm-kernel-win-debug-x64-try, vm-kernel-win-product-x64-try, vm-kernel-win-release-ia32-try, vm-kernel-win-release-x64-try

Change-Id: I5f2e01a55f46b473f64478b05679f65b9fd7c4c8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98662
Commit-Queue: Martin Kustermann <kustermann@google.com>
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
2019-04-05 15:51:34 +00:00
Alexander Aprelev
dbc9ff11bf [vm/vmservice] Switch from const bool.fromEnvironment() to new for 'DART_SERVICE_USE_AUTH'.
This is needed to prevent frontend from attempting to evaluate this constant during compile time.

Change-Id: If6c72f1ab6b3d7e3ea753703e79b388c39fbeca9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98698
Commit-Queue: Alexander Aprelev <aam@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
2019-04-05 15:41:11 +00:00
Jacob MacDonald
44799241fa Revert "set empty environment defines to CompilerOptions"
This reverts commit 3d6e29d251.

Change-Id: Id4760ef320e26552629d6795b6faa630bf5e15dd
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98697
Auto-Submit: Jake Macdonald <jakemac@google.com>
Reviewed-by: David Morgan <davidmorgan@google.com>
Commit-Queue: David Morgan <davidmorgan@google.com>
2019-04-05 14:57:14 +00:00
pq
ec8222f457 bump to linter 0.1.84
Change-Id: I9e546a7865ecfe72905bc938a8cf30659df1fc13
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98696
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Phil Quitslund <pquitslund@google.com>
2019-04-05 14:22:24 +00:00
Paul Berry
d14990b3ad Remove no-longer-needed override
Change-Id: I7cda32a2b9f087e3fb2922dc938d3e17be4121de
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98694
Auto-Submit: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-04-05 13:32:14 +00:00
Clement Skau
907c514c89 [SDK] Adds build targets, wrappers and SDK builds for Dart AOT.
Adds:
- dart2aot, a script similar to dart2js which compiles my.dart to my.dart.aot.
- dartaotruntime, a minimal Dart runtime that only runs AOT blobs.
- some extra tooling like gen_kernel and gen_snapshot used by the above.
- build rules for all of the above, including adding it to the full SDK builds.

Bug:https://github.com/dart-lang/sdk/issues/27596
Change-Id: Ic35f832b2b86be959212b8d21cfc5a082da5ced4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97627
Reviewed-by: Alexander Thomas <athom@google.com>
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
Commit-Queue: Clement Skau <cskau@google.com>
2019-04-05 13:23:44 +00:00
Samir Jindel
a2709992a2 [vm] Support optcounter=1 and randomize it for testing.
Change-Id: I1d371ca9644a65f8fe9864ac708689c1469da17d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97242
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
Commit-Queue: Samir Jindel <sjindel@google.com>
2019-04-05 10:15:44 +00:00
Clement Skau
4958a4e782 [vm] Adds a --help flag to vm/lib/kernel_front_end.dart (and by extension gen_kernel).
Bug:None
Change-Id: I6f2a1748189a586e42d84db2989bade751acb467
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98568
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Commit-Queue: Clement Skau <cskau@google.com>
2019-04-05 09:40:24 +00:00
Kevin Millikin
b700223542 [cfe] Do not reset the VM async name generator
In the VM-specific async transformation, an index is used to generate
fresh temporary names for values that are live across an await.
Before it was always 0 when translating a statement because there are
no live values on entry or exit to a statement.

When translating statements nested inside block expressions there can
be live values, so the index should not be reset.

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

Change-Id: I6103d75c25f312ab1538a7c0f8fee0fea9f01b27
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98664
Commit-Queue: Kevin Millikin <kmillikin@google.com>
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-04-05 09:00:24 +00:00
Bob Nystrom
245576a096 Update dart_style to 1.2.6.
Change-Id: I82036fa3babc65ffa96f56309b073dd72f07c6f6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98695
Commit-Queue: Kevin Moore <kevmoo@google.com>
Reviewed-by: Kevin Moore <kevmoo@google.com>
2019-04-05 05:06:43 +00:00
Alexander Markov
38dbddc90d [vm/bytecode] Add AllocateClosure bytecode
AllocateClosure bytecode is used to convey information about closure
function into an instance allocation site. This allows VM inliner to see
closure function very early at the optimization pipeline and enables
inlining of closure calls.

DeltaBlueClosures in JIT/bytecode mode (--use-bytecode-compiler):
Before: DeltaBlueClosures(RunTime): 1746.5404424083767 us.
After: DeltaBlueClosures(RunTime): 1291.4649496449324 us.

Issue: https://github.com/dart-lang/sdk/issues/36342
Issue: https://github.com/dart-lang/sdk/issues/36429
Issue: https://github.com/dart-lang/sdk/issues/36428
Change-Id: I6e94cdc2eb30110b0651a86bd2bdc40dcdd63207
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98439
Commit-Queue: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
2019-04-05 00:00:13 +00:00
danrubel
a38dbf8575 update ChangeBuilder to lazily build the source change
Change-Id: Id645c0538eb8a3391d78e24a3785fe26c7861777
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98626
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2019-04-04 23:20:53 +00:00
Zichang Guo
b45c67a933 [vm] improve vm help messages
Bug: https://github.com/dart-lang/sdk/issues/36312
Change-Id: Ibbfdf1467d94bba5784889c4539f6d660f9bcc7d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98687
Reviewed-by: Siva Annamalai <asiva@google.com>
Commit-Queue: Zichang Guo <zichangguo@google.com>
2019-04-04 22:46:33 +00:00
Liam Appelbe
5a5b58db7e Reland "[vm] Allow running with the latest ABI dill files."
This reverts commit 69ff056b51.

Reason for revert: Relanding with fix.

Original change's description:
> Revert "[vm] Allow running with the latest ABI dill files."
>
> This reverts commit 35c4af445b.
>
> Reason for revert: Broke a bunch of tests, eg:
> https://logs.chromium.org/logs/dart/buildbucket/cr-buildbucket.appspot.com/8917088905682853152/+/steps/test_results/0/logs/tests_that_began_failing__logs_/0
>
> Original change's description:
> > [vm] Allow running with the latest ABI dill files.
> >
> > To support this, we need to download the current version during gclient
> > sync, and change the way the --use-abi-version flag is processed so that
> > there's a distinction between the current version and the flag being
> > unset (-1). Also bump the oldest supported ABI version.
> >
> > Bug: https://github.com/dart-lang/sdk/issues/36047
> > Change-Id: If3fb5e1ba1ebddf11e9f0a9a7c42b7bb0b820ad8
> > Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98609
> > Commit-Queue: Liam Appelbe <liama@google.com>
> > Reviewed-by: Siva Annamalai <asiva@google.com>
>
> TBR=asiva@google.com,liama@google.com
>
> Change-Id: I40f83fcc7f9d785353fb05d4296376ec04af8309
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: https://github.com/dart-lang/sdk/issues/36047
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98700
> Reviewed-by: Liam Appelbe <liama@google.com>
> Commit-Queue: Liam Appelbe <liama@google.com>

TBR=asiva@google.com,liama@google.com

Change-Id: I909fd649eb41911a7b15e682b669708ebe083c8e
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: https://github.com/dart-lang/sdk/issues/36047
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98690
Commit-Queue: Liam Appelbe <liama@google.com>
Reviewed-by: Liam Appelbe <liama@google.com>
2019-04-04 22:45:25 +00:00
Brian Wilkerson
2415c08373 Add Dartdoc template info to the status pages
Change-Id: I27df7cabe864b99feb64d95365232dda72d5fb63
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98691
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-04-04 22:15:53 +00:00
pq
4ff8846d79 associate CONVERT_TO_SPREAD assist w/ spread_collections lint
Change-Id: I6cd1882c7a88328895bb8172ea5c5808d9e75bb7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98689
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Phil Quitslund <pquitslund@google.com>
2019-04-04 21:23:03 +00:00