Commit graph

63787 commits

Author SHA1 Message Date
Aart Bik 869cb683d8 [dart/fuzzer] rename exception parameter
Rationale:
catch (e) had a very interesting shadowing
with math's constant e, which unintentionally
allowed exeption text to enter the divergence
mechanism; here we were fuzzing the fuzzing
really :-)

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

Change-Id: Ie5cd61755ea61921b903684532d404f4dc734edd
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102062
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Commit-Queue: Aart Bik <ajcbik@google.com>
2019-05-09 20:47:21 +00:00
Alexander Markov 477ad3c0ea [vm/bytecode] Eliminate asserts from bytecode unless --enable-asserts
Total size of a large app:
Before: 23681504
After: 23207344 (-463K/-2%)

Size of bytecode instructions:

Before: 6282376
After: 5981716 (-4.8%)
Change-Id: I57703616ecc91301c928672c83571482500dc365
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101883
Reviewed-by: Régis Crelier <regis@google.com>
Commit-Queue: Alexander Markov <alexmarkov@google.com>
2019-05-09 20:41:21 +00:00
Alexander Markov 0069beb7ed [vm/interpreter] Cleanup stack slot in Interpreter::InterfaceCall
The stack slot in question may contain a stale value, but it could
be scanned by GC, so the fix is to clean it up even if it looks
unused.

While debugging I saw bytecode PCs in that stack slot.
So it is likely that compact bytecode instructions (68de477535)
increased the probability of these crashes, as with compact bytecodes
PCs could be unaligned and treated as Dart objects by GC, while
previously PCs were always aligned and treated as Smis by GC,
effectively masking the failure.

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

Change-Id: I82ccaa2bd87aca4ca4b44c9db69b0efd18dad955
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102061
Reviewed-by: Régis Crelier <regis@google.com>
Commit-Queue: Alexander Markov <alexmarkov@google.com>
2019-05-09 20:20:51 +00:00
Mike Fairhurst 536ecbac7b Add language 2 tests for null access errors
Change-Id: Icde35448c183a3b9311811aab388909d17e36ceb
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101461
Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-05-09 18:59:11 +00:00
Brian Wilkerson 130ad1bcf9 Stop reporting some errors when constant evaluation produces a valid object with an unknown state (issue 36873)
Change-Id: I1bf9c0aebaee24ab0c9e2b40c9881d478e33f87c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102001
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-05-09 18:45:01 +00:00
Brian Wilkerson d1a5eb5900 Fix the special casing of binary operators with primitive types when NNBD is enabled
Change-Id: I36f7f63b26eb3ea87efbe7af96d2134ea6402158
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102020
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-05-09 18:44:12 +00:00
danrubel b4e2c0246c update parser to handle leading error tokens
This is the first of several CLs that move error tokens to the head
of the token stream so that parser handling of error tokens
can be simplified and less error prone.

In this particular CL:
- update parser to handle error tokens at the head of the token stream
- remove several places that analyzer was preprocessing error tokens
   now that the parser handles them

Change-Id: Iddf60ab2879567a345a692b64043bd42f1871947
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102040
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2019-05-09 18:36:31 +00:00
Danny Tuppeny be6bbfc06b Remove redundant error notifications from LSP server
Change-Id: Ie2b4ac3c348835ad817cb34f24cc9b4108f1076d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101989
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Danny Tuppeny <dantup@google.com>
2019-05-09 18:09:31 +00:00
pq f261f8a526 bump to linter 0.1.88
Change-Id: Ide35dec403795b4e7e7d5a413e490b210990afc9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101861
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Phil Quitslund <pquitslund@google.com>
2019-05-09 17:34:21 +00:00
Danny Tuppeny 4c2b9f1d91 Don't send LSP error notifications for files in dot-folders
Fixes https://github.com/dart-lang/sdk/issues/33778.

Change-Id: I721ef96a6c137495dc5bfba2ccce16acd7f5be35
Bug: https://github.com/dart-lang/sdk/issues/33778
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101980
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Danny Tuppeny <dantup@google.com>
2019-05-09 14:44:23 +00:00
Danny Tuppeny 0450462503 Improve sending/flushing of errors for files in dot folders
Ensure errors are only sent when there is an appropriate time to flush
them (plus ensure if of those places flushes them).

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

Change-Id: Ieb4a2631c24649ba013eda93808b003b0e2ddb95
Bug: https://github.com/dart-lang/sdk/issues/33778
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101822
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-05-09 14:44:23 +00:00
Alexander Thomas c1e2df8f36 [infra] Update checked in SDKs to 2.3.0
TBR=whesse@google.com

Change-Id: I36be14e0bd44420583354f23c974d8c16c964f4a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101984
Reviewed-by: Alexander Thomas <athom@google.com>
Commit-Queue: Alexander Thomas <athom@google.com>
2019-05-09 13:41:33 +00:00
Daco Harkes b2949d3436 fix Flutter build for "[vm/ffi] DBC support on x64 Linux/MacOS hosts"
Change-Id: I119776682e53f70f621107f2159670cb3e75b310
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101982
Reviewed-by: Daco Harkes <dacoharkes@google.com>
2019-05-09 12:19:21 +00:00
Daco Harkes a8b93d9e78 [vm/ffi] DBC support on x64 Linux/MacOS hosts
Issue: https://github.com/dart-lang/sdk/issues/35773

Change-Id: Ib58fb8df6c5c18e604fbf2a156ab69025e5f57d7
Cq-Include-Trybots: luci.dart.try:vm-kernel-linux-debug-simdbc64-try, vm-kernel-linux-release-simdbc64-try, vm-kernel-mac-debug-simdbc64-try, vm-kernel-mac-release-simdbc64-try, vm-kernel-reload-mac-debug-simdbc64-try, vm-kernel-reload-mac-release-simdbc64-try, vm-kernel-linux-debug-ia32-try, vm-dartkb-linux-debug-simarm64-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97221
Reviewed-by: Samir Jindel <sjindel@google.com>
Commit-Queue: Daco Harkes <dacoharkes@google.com>
2019-05-09 11:46:03 +00:00
Dmitry Stefantsov a0290f823c [fasta] Report invalid-type errors eagerly when possible
Change-Id: If1d111eb6ee4f93e1ab2b5901cc9492db96a37b0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101820
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com>
Reviewed-by: Jens Johansen <jensj@google.com>
2019-05-09 07:43:56 +00:00
Konstantin Shcheglov 678f4bb926 Give featureSet to analysis options to fix resynthesis tests.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: I757327377b3fb2b8e945f0938d5d523f83decfaa
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101940
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-05-08 23:58:10 +00:00
Ryan Macnak 3ad32e4287 [vm] Revert 1db1ac4863.
This feature was for Goma work that has been marked obsolete.

Bug: FL-48
Change-Id: I9997f8aefbe1d55f86cff2ab377166a0bce1ed53
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101925
Reviewed-by: Siva Annamalai <asiva@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
2019-05-08 23:52:29 +00:00
Konstantin Shcheglov 58f3098650 Issue 36890. Improve importing elements when incomplete code.
There might be some false negatives, when there *is* another top-level
declaration with the same name as we are removing. But this is a
pre-existing conflict, so I think we should not be very concerned. At
some point we might collect initial potentially conflicting names using
the same SyntacticScopeNamesCollector instead of element model. With
element model we don't know about parser recovery.

R=brianwilkerson@google.com

Bug: https://github.com/dart-lang/sdk/issues/36890
Change-Id: Ia05db299990f41f16feb493c2812237be84f3d2e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101902
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-05-08 23:31:49 +00:00
Jaime Wren 454b98c490 Some additional tests in variable_name_contributor_test.dart to cover all the doIncludePrivateVersion cases
Change-Id: I8ec2a14e8ba4cc3a1ca4228c5455ab7cb6a2138c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101924
Reviewed-by: Jaime Wren <jwren@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Jaime Wren <jwren@google.com>
2019-05-08 23:10:49 +00:00
Paul Berry 1407e59079 Add preliminary NNBD support to the summary linker.
Change-Id: I256d66333d9715ed720bd6ea87d21fd00e17635a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101900
Commit-Queue: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-05-08 22:35:49 +00:00
Paul Berry 34d2fd42bd Add summary deserialization support for nullability.
In a follow-up CL I will add nullability support to the summary
linker.

Change-Id: I99f3dce1a695da65c7c09c11e73462c93aeb637f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101882
Commit-Queue: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-05-08 22:30:39 +00:00
Nate Bosch 8dc57acc52 Use the full URI for DDK library debug names
Fixes #36736

Change-Id: I83c8c1b07acebf0fdc39e649983133a46d8d3648
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101901
Reviewed-by: Jake Macdonald <jakemac@google.com>
Commit-Queue: Nate Bosch <nbosch@google.com>
2019-05-08 22:08:39 +00:00
Brian Wilkerson 147523b744 Add failing tests of operator semantics under nnbd
Change-Id: I3a3f366083d8b1e68a78670b199864172d43cc35
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101840
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-05-08 21:45:59 +00:00
Konstantin Shcheglov 299bf667ac Get codeOffset/codeLength through LazyNode.
So, that it works whether nodes are lazy or full.

R=brianwilkerson@google.com

Change-Id: I4c8916f05b0f73a6f825d4c15e45dade5f702582
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101881
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-05-08 21:44:41 +00:00
Paul Berry 39858b1225 Remove CompilationUnitImpl.isNonNullableLibrary
And plumb FeatureSet into more of the analysis engine.

Change-Id: I40f7061d48c5eb2a597f95a32738bd3133fe21d3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101224
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-05-08 21:36:59 +00:00
Alexander Markov 802712795e [vm/bytecode] Cleanup obsolete bytecode format v2
Bytecode format v3 landed March 26 2019 in
61f0f5bc43

Change-Id: Id20742e1e04fa53ed4420ec0233302477db0e4be
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101880
Auto-Submit: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Régis Crelier <regis@google.com>
Commit-Queue: Alexander Markov <alexmarkov@google.com>
2019-05-08 21:36:39 +00:00
Sigmund Cherem ef0c812b0d Add support for loading a modular test folder and specifying deps in yaml
To test the loading logic, I created sample modular test folders which also
illustrate what modular tests will look like in the future.

Change-Id: Iaa8e076e5be66107391d258f5c72456c89841123
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101780
Commit-Queue: Sigmund Cherem <sigmund@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2019-05-08 21:18:19 +00:00
Paul Berry 51fe641e82 Create a SynchronousSession class.
In the long term this class will take over much of the role played by
RestrictedAnalysisContext.  For now it is simply a container for the
analysis options, declared variables, type provider, and type system.

In follow-up CLs I will plumb this object through various parts of the
analyzer, especially the LinterContext; this will enable the
canBeConst... methods to be moved into SynchronousSession, and that
will allow us to stop creating a LinterContext in
BestPracticesVerifier.

Change-Id: I7ac2d386c10d2e5339d9715848b185c163e1f858
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101860
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-05-08 19:57:31 +00:00
Matthew Dempsky 520ba89658 [vm] Remove IsolateSpawnState::package_root
Change-Id: I5a35f0e3c233353eafcb4e772abeeb6abc11daba
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101626
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Commit-Queue: Matthew Dempsky <mdempsky@google.com>
2019-05-08 19:29:11 +00:00
Paul Berry 7e58fb155a Sort declarations in fix_lint_task.dart
Change-Id: I2053afe2ebf05b5ff10de72757fc83ffc81d1590
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101862
Commit-Queue: Paul Berry <paulberry@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Auto-Submit: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-05-08 19:05:51 +00:00
Devon Carew ab84e36989 [dartfix] refactor the dartfix cli UI a bit
Change-Id: I9935ace979b0302d4f68c8a84ed9886a0ccf0c4a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101761
Commit-Queue: Devon Carew <devoncarew@google.com>
Reviewed-by: Dan Rubel <danrubel@google.com>
2019-05-08 18:51:11 +00:00
Devon Carew ce2bbd4108 [dartfix] refactor dartfix pubspec.yaml
Change-Id: Ib651df66b8ecef1abc9e9992e1461412d6e88df2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101760
Reviewed-by: Dan Rubel <danrubel@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
2019-05-08 18:46:51 +00:00
Ryan Macnak a91cc6c701 [observatory] Remove use of custom elements.
document.registerElement is going away soon, and dart2js never implemented window.customElements.define.

Replace the inheritance with composition for each FooElement.

When used to create a DOM tree, replace `new FooElement()` with `new FooElement().element`.

In CSS, replace each custom element selector with a class selector, i.e. `foo-element` with `.foo-element`.

Bug: https://github.com/dart-lang/sdk/issues/34107
Change-Id: Id5ab5b6104a6165a8ad3b01d73ee9d76e46024ed
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101061
Reviewed-by: Ben Konyi <bkonyi@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
2019-05-08 18:23:26 +00:00
Alexander Markov d0f9c9c1a7 [vm/compiler/bytecode] Infer receiver type in bytecode functions
Before: BuildTableBuffer(RunTime): 10.759671901226596 us.
After: BuildTableBuffer(RunTime): 9.78219236600898 us.
(--enable-interpreter, best of 5 runs)

Issue: https://github.com/dart-lang/sdk/issues/36429
Issue: https://github.com/dart-lang/sdk/issues/36342
Change-Id: If645fb6767a35e39ff1a75fcf91d0a03c3b16987
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101720
Reviewed-by: Martin Kustermann <kustermann@google.com>
Reviewed-by: Aart Bik <ajcbik@google.com>
Commit-Queue: Alexander Markov <alexmarkov@google.com>
2019-05-08 18:10:06 +00:00
Alexander Markov e9bec21d13 [vm/bytecode] Cleanup after switching to compact bytecode instructions
Change-Id: Ie6ecdd88e8d1740c53cfb3fbc4b43f9e41c592b1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101491
Commit-Queue: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Ryan Macnak <rmacnak@google.com>
2019-05-08 17:33:15 +00:00
Alexander Markov 68de477535 [vm/bytecode] Compact encoding of bytecode instructions (part 3/3)
Corresponding VM changes:
https://dart-review.googlesource.com/c/sdk/+/101062

On a large app, size of bytecode instructions:
Before: 12115384
After: 6282376 (-48.1%)

Total size of the app:
Before: 29790240
After: 23681504 (-20.5%)

Change-Id: Idd8f97e991236c25d663d1bcf18a51a53e73a2b7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99400
Reviewed-by: Ryan Macnak <rmacnak@google.com>
2019-05-08 17:33:15 +00:00
Alexander Markov 6fe73e4544 [vm/bytecode] Support compact bytecode instructions in VM (part 2/3)
While adding support for new compact bytecode instructions,
VM also keeps support for old bytecode instructions to preserve
backwards compatibility and allow soft transition.

This change is separate from bytecode generator changes in order
to test VM with old bytecode generator.

Corresponding bytecode generator changes:
https://dart-review.googlesource.com/c/sdk/+/99400

Change-Id: Icf5ceee7d51f27ffe3f79d0eae81e0ddc0a7e855
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101062
Reviewed-by: Ryan Macnak <rmacnak@google.com>
2019-05-08 17:33:15 +00:00
Alexander Markov 1cc4003e5a [vm/interpreter] Support misaligned bytecodes (compact bytecodes 1/3)
This is a preliminary refactoring to prepare for compact
variable-length encoding of bytecode instructions.

Change-Id: I7b15926ab5a6222fbcd1f0090adc0b7222359b07
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99960
Reviewed-by: Ryan Macnak <rmacnak@google.com>
2019-05-08 17:33:15 +00:00
Nicholas Shahan a31594b9af [dartdevc] Cleanup ddb script
* Fix possible race condition when flushing `stdout` and `stderr`.
* Add help option and usage text (saves me from digging into the file when I
  forget a flag).
* Avoid passing `enable-experiment` with an empty string.

Change-Id: Iea288a1fad43f16c494510302efbcc65a2d91502
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101744
Reviewed-by: Mark Zhou <markzipan@google.com>
Reviewed-by: Vijay Menon <vsm@google.com>
Commit-Queue: Nicholas Shahan <nshahan@google.com>
2019-05-08 17:08:55 +00:00
Brian Wilkerson f7bf890ff7 Improve the convert-to-package-uri assist
Change-Id: I2010d33b740932569e6fcafcc15fde30a96cf0df
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101743
Reviewed-by: Jaime Wren <jwren@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-05-08 16:01:55 +00:00
Stevie Strickland 13fa51ed54 [vm] Make Library::FindPragma a static method.
It already is a static method in implementation, so this way
we don't duplicate the work of looking up the library. In addition,
it checks has_pragma, so we don't need to check before calling it.

Change-Id: I88281cf22615e30157c842c570bd0f6b499a6a3d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101821
Commit-Queue: Teagan Strickland <sstrickl@google.com>
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
2019-05-08 14:49:45 +00:00
Brian Wilkerson f80f0bfcfd Reland "Implement the type Never"
This reverts commit 78e50a5f9b.

Change-Id: I2ec4cdcfda4a6d199308a3b25a2ed0792e9d9a26
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101621
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-05-08 13:26:45 +00:00
Johnni Winther 9203ad5e89 Include receiver method invocation receiver type in static type test
Change-Id: I61227e694ca2a19d268705e7a79ae0e696e3a79b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101524
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2019-05-08 12:12:40 +00:00
Johnni Winther 5ce8402b0d Handle let variable like normal variables in static type computation
Change-Id: Ie6eb1eafd5677207163e22c2f428487b4e55b090
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101522
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2019-05-08 12:12:40 +00:00
Johnni Winther 27d806b5a2 Add CodegenResult as the result of FunctionCompiler.compile
+ delete CodegenWorkItem
+ remove use of WorkItem in the compilation pipeline

Change-Id: I035fb8428b7bbdea9411c087e80c81e3d46d00c0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101662
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2019-05-08 08:15:59 +00:00
Johnni Winther 0e2e186262 Add ModularNamerImpl
To use for modular codegen. Creates ModularName and ModularVariableUse
for naming decisions that need to be deferred to world-impact application
time.

The class is still unused, awaiting refactoring of world-impact application.

Change-Id: I7d4d30da587ccf814b2d879b26f76de2eb3ca276
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101525
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2019-05-08 08:15:59 +00:00
Johnni Winther 25213cdc1e Extract ModularEmitterImpl superclass from EmitterImpl
Change-Id: I7e7a87743d24e5da6401937b3983a358062a2296
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101523
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2019-05-08 08:15:59 +00:00
Johnni Winther 6c6954c1ee Add ModularNamer and ModularEmitter super-interfaces
- to use in ssa builder, optimization and codegen pipeline.

Change-Id: I214c17d5994aa0afa86007b2c3add1491c000b08
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101521
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2019-05-08 08:15:59 +00:00
Brian Wilkerson 8143450941 Convert comments in the constant evaluation code
Change-Id: I564d9ac227a8d5b4e8b02a5496dd08f84658e984
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101632
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-05-08 00:20:59 +00:00
Alexander Aprelev cbff5cff2f [vm/reload] Fix scenario when class removed during hot reload stays unpatched.
Fixes https://github.com/dart-lang/sdk/issues/36838

Change-Id: I73aa25e4ab5d7fac13fcc6953fa6c3a6c4c10ab4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101625
Commit-Queue: Alexander Aprelev <aam@google.com>
Reviewed-by: Ryan Macnak <rmacnak@google.com>
2019-05-07 23:13:27 +00:00