Commit Graph

21307 Commits

Author SHA1 Message Date
Stevie Strickland 3f797f1223 [gardening] Marking ListBase_class_A01_t03 as Slow.
Similar to the changes made in 78482496d5.

Change-Id: Iebaf87506bad7ed3927b52fef9134c514edafc7c
Reviewed-on: https://dart-review.googlesource.com/c/88576
Reviewed-by: Stevie Strickland <sstrickl@google.com>
Commit-Queue: Stevie Strickland <sstrickl@google.com>
2019-01-07 17:00:22 +00:00
Johnni Winther 477de6b84b Cleanup unittests
- remove use of '_strong', '_trust', and '_checked' suffices
- test omit-implicit-checks by default

Change-Id: I2a83f6fb23a22c894cc7867c51ab460abb4cc524
Reviewed-on: https://dart-review.googlesource.com/c/88454
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2019-01-07 15:01:10 +00:00
Johnni Winther e14472c46b Use getters/setters found through the static types.
This uses the information from the static types now used in inference which
can improve the precision in particular for generic classes. Since type
masks lose the type argument information, we cannot expect locating members
based on the type mask to be more precise than what has been found through
the static types.

This CL also expands the unit test framework to support unit test of
optimizations and the emission model, including tests of the improved
field access handling.

Closes #35433

Change-Id: Ia5de15efaf8b60c8723943bb34de6eec7d380798
Reviewed-on: https://dart-review.googlesource.com/c/88440
Reviewed-by: Stephen Adams <sra@google.com>
2019-01-07 15:01:10 +00:00
Stevie Strickland 78482496d5 [gardening] Mark more large list sorts as slow.
These are tests split off from _A01_t02 in the resolution to
https://github.com/dart-lang/co19/issues/198.

Also removing the Timeout markers from the original tests,
since they should be smaller and thus no longer causing
timeouts.

Change-Id: I07699ae41a0c8e3f892cca5e29855b52fe7c2829
Reviewed-on: https://dart-review.googlesource.com/c/88570
Reviewed-by: Stevie Strickland <sstrickl@google.com>
Commit-Queue: Stevie Strickland <sstrickl@google.com>
2019-01-07 12:55:02 +00:00
Alexander Markov 3b29f5ad81 [VM/AOT/TFA] Do not attribute calls via fields/getters with inference results
MethodInvocation nodes which have field or getter as interface target
actually correspond to 2 calls: 1) getter; 2) implicit call() on the result
of the getter.

While this was correctly modeled in summaries in TFA, it is not correct
to attribute such MethodInvocation nodes with results of the inference,
as results correspond to an each distinct call. To fix this, Call
statements in summaries are created without attaching them to a
corresponding kernel AST node.

Change-Id: I3ea28ed85550192f8b592a926cac0eae23810811
Reviewed-on: https://dart-review.googlesource.com/c/88424
Commit-Queue: Martin Kustermann <kustermann@google.com>
Auto-Submit: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
2019-01-07 10:22:40 +00:00
Jenny Messerly 36ab8b18ea [dartdevc] implement set literal and enable-experiments support
Change-Id: Ibc45b1b1792d62a8f176e6c2f2f5c1e3134942f1
Reviewed-on: https://dart-review.googlesource.com/c/88400
Reviewed-by: Lasse R.H. Nielsen <lrn@google.com>
Reviewed-by: Vijay Menon <vsm@google.com>
Commit-Queue: Jenny Messerly <jmesserly@google.com>
2019-01-04 22:08:54 +00:00
Ryan Macnak 5be48e1aca [test] Repair DWARF stacktrace test from Dart 2 damage.
Change-Id: I5deb25204251ec23546f323ce8ac0dc50298dfd3
Reviewed-on: https://dart-review.googlesource.com/c/87484
Commit-Queue: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Alexander Markov <alexmarkov@google.com>
2019-01-04 20:47:44 +00:00
Daco Harkes 7fd0c78c15 [gardening] Unmark language/vm/optimized_stacktrace_test
Re-enable language/vm/optimized_stacktrace_test to determine whether it is still a flaky issue.

Issue: https://github.com/dart-lang/sdk/issues/28276
Issue: https://github.com/dart-lang/sdk/issues/30198
Change-Id: I4b63e38f130f8320dc38564129a67b08ac5f1866
Reviewed-on: https://dart-review.googlesource.com/c/88450
Commit-Queue: Martin Kustermann <kustermann@google.com>
Auto-Submit: Daco Harkes <dacoharkes@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
2019-01-04 16:29:48 +00:00
Stephen Adams 8deb5aabba Reinstate reduction for closure call to known static method
This was accidentally removed during the migration to kernel.

Change-Id: Ib4998074269b1bf5b1dd3feedebcb50dc1164c5d
Reviewed-on: https://dart-review.googlesource.com/c/88229
Commit-Queue: Stephen Adams <sra@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2019-01-03 22:44:53 +00:00
Alexander Markov 0e65e45e9e [vm/compiler] Do not use interface target for calls via getters
For calls via getters and fields front-end generates MethodInvocation
node with interface target pointing to a getter/field.
Such target doesn't fully represent what is being called - it should
be implicitly chained by call(), so it is incorrect to use such
interface target for type propagation.

Change-Id: I76198b443474fdcb383671fbc9946b4938a4e1df
Reviewed-on: https://dart-review.googlesource.com/c/88260
Auto-Submit: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Régis Crelier <regis@google.com>
Commit-Queue: Régis Crelier <regis@google.com>
2019-01-03 22:03:13 +00:00
Régis Crelier 0668014f30 [VM compiler] Take FutureOr into account when checking for Number type.
A field typed 'FutureOr<T>' may contain an instance of a Number type at runtime.
This fixes issue #35542 and adds a regression test.

Change-Id: Idd19dff3edc5e061da28ab2906c34b3133ea8bd8
Reviewed-on: https://dart-review.googlesource.com/c/88280
Commit-Queue: Régis Crelier <regis@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
Reviewed-by: Alexander Markov <alexmarkov@google.com>
2019-01-03 19:45:53 +00:00
Aske Simon Christensen 5a29552002 Enable set literal tests for Fasta
Change-Id: I1c6cad6822d5528172e3ba036774fa58e7fd6432
Reviewed-on: https://dart-review.googlesource.com/c/88185
Commit-Queue: Aske Simon Christensen <askesc@google.com>
Reviewed-by: Peter von der Ahé <ahe@google.com>
2019-01-03 13:45:36 +00:00
Liam Appelbe 97156b5f41 [dart:io] Throw an exception if HttpClient attempts to connect after closing
Closes https://github.com/dart-lang/sdk/issues/31492

Bug: https://github.com/dart-lang/sdk/issues/31492
Change-Id: Ia4c6a9cdcb1a77cc945b3927dc1e1c43af6ebea0
Reviewed-on: https://dart-review.googlesource.com/c/88220
Commit-Queue: Liam Appelbe <liama@google.com>
Reviewed-by: Siva Annamalai <asiva@google.com>
2019-01-03 00:44:00 +00:00
Ben Konyi f1002ce11b [ Gardening ] Marked co19_2/LibTest/isolate/Isolate/kill_A01_t01 as Timeout, Pass.
Change-Id: I6d20f6d727aa89561c4cace0aaf51d4ae3ba4a33
Reviewed-on: https://dart-review.googlesource.com/c/88129
Auto-Submit: Ben Konyi <bkonyi@google.com>
Commit-Queue: Siva Annamalai <asiva@google.com>
Reviewed-by: Siva Annamalai <asiva@google.com>
2018-12-28 19:31:52 +00:00
Mike Fairhurst 88e6fe0f67 testing: refer to issue 35508 in status file entry
Change-Id: Ia81fa274ee26bee638a1c5f638edc194270f8b0e
Reviewed-on: https://dart-review.googlesource.com/c/88124
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
2018-12-27 21:02:52 +00:00
Johnni Winther 5fdab895a2 Use static types in inferrer
Change-Id: I284ca47dbaab452bd67c688b461fcbbe9a69e751
Reviewed-on: https://dart-review.googlesource.com/c/87402
Commit-Queue: Sigmund Cherem <sigmund@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2018-12-20 19:23:52 +00:00
Peter von der Ahé e45e334548 Rename strong mode to legacy mode in package:kernel
Change-Id: Ia4a8a9cac7817a8db5771ec82541b556c705f7c8
Reviewed-on: https://dart-review.googlesource.com/c/86353
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2018-12-20 18:06:34 +00:00
Sergey G. Grekhov 1172c36c87 [co19] DEPS updated
Change-Id: Ia5d4bade61125f1726dd4be4c2a38de6d545d16f
Reviewed-on: https://dart-review.googlesource.com/c/87560
Reviewed-by: Alexander Thomas <athom@google.com>
2018-12-20 13:56:11 +00:00
Sigmund Cherem 6c2d8bc8c1 Record getter and setter names in the minified-name table
Change-Id: I373babecdf3ccece386483d5aa4fcde320675b80
Reviewed-on: https://dart-review.googlesource.com/c/87480
Commit-Queue: Sigmund Cherem <sigmund@google.com>
Reviewed-by: Stephen Adams <sra@google.com>
2018-12-18 22:05:18 +00:00
Martin Kustermann 0e34af62d2 [Gardening] Skip standalone_2/io/test_runner_test (not relevant for AOT)
This will make the new bare instructions bot green. (The test is not passing
the right flag to sub-processes)

Change-Id: I00bbc30e157d742e4eadfee3ba2cd4bd38f4ebee
Reviewed-on: https://dart-review.googlesource.com/c/87585
Reviewed-by: Martin Kustermann <kustermann@google.com>
2018-12-18 17:02:03 +00:00
Johnni Winther 8c7be910d0 Support compilation with the trivial abstract value domain
Change-Id: I1b42ee48f440db9e424448e794a8f8cc9d8f5f3a
Reviewed-on: https://dart-review.googlesource.com/c/86921
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2018-12-18 12:20:36 +00:00
Johnni Winther 6d4d3c6b07 Remove TrustTypeAnnotations
Change-Id: I7404d10c30642f5282d079e36cb4a20ee2066060
Reviewed-on: https://dart-review.googlesource.com/c/87401
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2018-12-18 11:00:09 +00:00
Liam Appelbe dcf24df2bb Shorten the script URI in stack traces for URI encoded scripts.
Closes https://github.com/dart-lang/sdk/issues/34091

Bug: https://github.com/dart-lang/sdk/issues/34091
Change-Id: I1dbf0c8ff282f617f3503265f7e3a24ab56dd57f
Reviewed-on: https://dart-review.googlesource.com/c/87421
Reviewed-by: Siva Annamalai <asiva@google.com>
Commit-Queue: Liam Appelbe <liama@google.com>
2018-12-17 23:36:09 +00:00
Sigmund Cherem b7a1eb4aea Simplify co19_2-dart2js status file to only track skips
Yay new workflow!!! Woo hoo!

Change-Id: I2218468c4acbe42d0a079c88153ec0a1797ba2b7
Reviewed-on: https://dart-review.googlesource.com/c/87166
Auto-Submit: Sigmund Cherem <sigmund@google.com>
Reviewed-by: Jonas Termansen <sortie@google.com>
Commit-Queue: Sigmund Cherem <sigmund@google.com>
2018-12-17 20:04:14 +00:00
Samir Jindel 77889c10e3 [vm] Fix unmatched asyncLevel with retry() helper in socket tests.
Change-Id: Ia2cba787ff02e1b3d26b8fbab9cc4057842bd4cc
Reviewed-on: https://dart-review.googlesource.com/c/87067
Commit-Queue: Samir Jindel <sjindel@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
Auto-Submit: Samir Jindel <sjindel@google.com>
2018-12-17 13:38:28 +00:00
Martin Kustermann 52f7e9ed71 [VM] Ensure the start of the entrypoints is also 2-byte aligned
Fixes https://github.com/dart-lang/sdk/issues/35419

Change-Id: I1e4478573c6fc032485ad7c1ec3069e4fa946733
Reviewed-on: https://dart-review.googlesource.com/c/87404
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
Commit-Queue: Martin Kustermann <kustermann@google.com>
2018-12-17 12:45:35 +00:00
Alexander Aprelev 7d14785115 This relands "Load isolate from parent's kernel in Isolate.spawn calls.".
Original PR was reverted because it broke hot-reload bots. This CL adds steps to initialize kernel_service compiler for child isolate. Compiler is needed to support hot-reload request. Child isolate's compiler is created from full kernel file produced by main isolate's compiler. Changes since original PR are pkg/vm/bin/kernel_service.dart in pkg/vm/lib/incremental_compiler.dart.

Further this CL changes kernel fingerprint calculation for interface types so it calculates the hash of the canonical names themselves, rather than indices(that might change from one compilation to another).

This reverts commit 63fd8f63e6.

Change-Id: I6fe5b2ef99f209b32cd4087dfd1c8cac229c2d8b
Reviewed-on: https://dart-review.googlesource.com/c/87265
Commit-Queue: Alexander Aprelev <aam@google.com>
Reviewed-by: Liam Appelbe <liama@google.com>
2018-12-14 23:45:57 +00:00
asiva f0babb648b [VM] status file for dartkp failure for issue 35419
Change-Id: I4a285dc8d4763cbacde02d89f6d237a05a198ac9
Reviewed-on: https://dart-review.googlesource.com/c/87383
Reviewed-by: Siva Annamalai <asiva@google.com>
2018-12-14 21:26:12 +00:00
Martin Kustermann 4949f89ae4 Skip faulty test co19/LibTest/io/File/openRead_A02_t01
Issue https://github.com/dart-lang/co19/issues/206

Change-Id: I505f9b2aa6ce34078cc4f81f5791fae2b6265e05
Reviewed-on: https://dart-review.googlesource.com/c/87324
Reviewed-by: Martin Kustermann <kustermann@google.com>
Commit-Queue: Martin Kustermann <kustermann@google.com>
Auto-Submit: Martin Kustermann <kustermann@google.com>
2018-12-14 16:12:14 +00:00
Martin Kustermann f205292227 [VM] Bare instructions - Part 4: Add --use-bare-instructions flag to AOT compiler & runtime
This is the final CL which adds a new --use-bare-instructions flag to
the VM.

If this flag is set during AOT compilation, we will:

  * Build one global object pool (abbr: GOP) which all code objects
    share. This gop will be stored in the object store.  The PP register
    is populated in the enter dart stub and it is restored when
    returning from native calls.

  * Gets rid of the CODE_REG/PP slots from the dart frames. Instead the
    compiled code uses the global object pool, which is always in PP.

  * Starts emitting pc-relative calls for calls between two dart
    functions or when invoking a stub.
    Limitation: We only emit pc-relative calls between two code objects
    in the same isolate (this is because the image writer is writing
    instruction objects for vm-isolate/main-isolate seperately)

  * We do compile-time relocation of those static calls after the
    precompiler has finished its work, but before writing the snapshot.
    This patches all the instruction objects with pc-relative calls to
    have the right .text distance.

  * We emit a sorted list of code objects in ObjectStore::reverse_code_table,
    which will be used by the AOT runtime to go back from PC to Code
    objects (where all metadata, e.g. stack maps, catch entry moves, pc
    descriptors are available).

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

Change-Id: I6c5dd2b1571e3a889b27e804a24c2986c71e03b6
Reviewed-on: https://dart-review.googlesource.com/c/85769
Commit-Queue: Martin Kustermann <kustermann@google.com>
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
2018-12-14 16:03:04 +00:00
Martin Kustermann 08c386a33e [VM] Do not use the contents of the megamorphic miss code in stack_frame
The megamorphic miss stub might not be initialized at the point in time
when we access it.

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

Change-Id: If20622bd4f3b14d6ece5a8de6f006d7081d6cf76
Reviewed-on: https://dart-review.googlesource.com/c/87322
Commit-Queue: Martin Kustermann <kustermann@google.com>
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
2018-12-14 15:06:10 +00:00
Lasse Reichstein Holst Nielsen 8dd03bee13 Add specification of set literals.
Bug: https://github.com/dart-lang/language/blob/63d164fa7a507b28aace20fffe31db2c3c9baa2d/accepted/future-releases/set-literals/implementation-plan.md (Task 10)
Change-Id: I9728706e235162318aec824484274aea58210e8a
Reviewed-on: https://dart-review.googlesource.com/c/84600
Commit-Queue: Lasse R.H. Nielsen <lrn@google.com>
Reviewed-by: Leaf Petersen <leafp@google.com>
Reviewed-by: Erik Ernst <eernst@google.com>
2018-12-14 13:15:38 +00:00
Dmitry Stefantsov e98701ea33 [fasta] Allow const constructors in mixin applications
Closes #33644, closes #33645, closes #32223.

Bug: http://dartbug.com/33644
Bug: http://dartbug.com/33645
Bug: http://dartbug.com/32223
Change-Id: Ia30efb8f450e62bfeb65c8b7fd7e23871ef0e87e
Reviewed-on: https://dart-review.googlesource.com/c/68368
Reviewed-by: Peter von der Ahé <ahe@google.com>
Reviewed-by: Erik Ernst <eernst@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com>
2018-12-14 12:37:30 +00:00
asiva d2578dee91 Mark language_2/deferred_optimized_test as flaky.
Change-Id: Iceb3ed11955fcb1e2cee88bdd87f3ac183857a46
Reviewed-on: https://dart-review.googlesource.com/c/87281
Reviewed-by: Siva Annamalai <asiva@google.com>
2018-12-14 00:21:48 +00:00
Jenny Messerly f68ae70e8e [dartdevc] ensure all throws are wrapped in JS Error (#33331)
This improves the default JS display of exceptions/errors from DDC
compiled code. This gives a better "default" experience if JS code
(or a JS engine, like browers/Node.js) ends up catching Dart exceptions.

Change-Id: Ib2dda6eee710f8b536d5ed7223e0101310a137b3
Reviewed-on: https://dart-review.googlesource.com/c/84446
Commit-Queue: Jenny Messerly <jmesserly@google.com>
Reviewed-by: Vijay Menon <vsm@google.com>
2018-12-13 22:44:17 +00:00
asiva 9d99b4a5ba [Gardening] Update status file to workaround issue
https://github.com/dart-lang/sdk/issues/35405

Change-Id: I3c556e93dad628fe213458fe4ad91e999b842874
Reviewed-on: https://dart-review.googlesource.com/c/87262
Reviewed-by: Ryan Macnak <rmacnak@google.com>
2018-12-13 21:08:35 +00:00
Martin Kustermann 76fb4d5b11 [Gardening] Skip co19 tests affected by race until pull request lands
PR https://github.com/dart-lang/co19/pull/204

Change-Id: Id099b04120985d52bd2a255f82b784021d1af1df
Reviewed-on: https://dart-review.googlesource.com/c/87185
Reviewed-by: Martin Kustermann <kustermann@google.com>
Commit-Queue: Martin Kustermann <kustermann@google.com>
Auto-Submit: Martin Kustermann <kustermann@google.com>
2018-12-13 18:15:25 +00:00
Johnni Winther ec1dfa8716 Add @pragma('dart2js:disableFinal')
Change-Id: I9b3f878803f946d08979144028d08b1a4dc4612f
Reviewed-on: https://dart-review.googlesource.com/c/86924
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Auto-Submit: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2018-12-13 09:35:13 +00:00
Alexander Aprelev fc3153a4f0 [vm] Unskip isolate tests on sim* architecture.
Also make kernel-service verbose output friendlier(so it doesn't dump platform.dill on console).

Change-Id: Ibed494f324cd574e05b701f7d56b18c0fb1b451f
Reviewed-on: https://dart-review.googlesource.com/c/86784
Reviewed-by: Siva Annamalai <asiva@google.com>
Commit-Queue: Alexander Aprelev <aam@google.com>
2018-12-13 03:07:06 +00:00
Alexander Aprelev 95eed86c34 Unskip isolate hot-reload tests.
Change-Id: I85b557a0a8297e198f8a11e0b4b4677018da991d
Reviewed-on: https://dart-review.googlesource.com/c/86820
Commit-Queue: Alexander Aprelev <aam@google.com>
Reviewed-by: Siva Annamalai <asiva@google.com>
2018-12-13 02:24:49 +00:00
Brian Wilkerson b0cca3e82d Attempt to fix the bots
Change-Id: I81c161a3784c99116bb95521e335b75bdb44dab3
Reviewed-on: https://dart-review.googlesource.com/c/86981
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-12-11 21:09:01 +00:00
Vyacheslav Egorov 3a4ca65f6b [gardening] Fix standalone_2/io/http_compression_test.
Rewrite the test to use async/await and fix Dart 2 typing issues in it.

Change-Id: If071ffbf05443d66220897d30835d9499e248d3c
Reviewed-on: https://dart-review.googlesource.com/c/86927
Auto-Submit: Vyacheslav Egorov <vegorov@google.com>
Reviewed-by: Daco Harkes <dacoharkes@google.com>
Commit-Queue: Vyacheslav Egorov <vegorov@google.com>
2018-12-11 18:57:55 +00:00
Sergey G. Grekhov 6a99a9a85f [co19] DEPS updated
Change-Id: I101eae9189848a699e4b186f363d9a684d7b2d02
Reviewed-on: https://dart-review.googlesource.com/c/85703
Commit-Queue: Alexander Thomas <athom@google.com>
Reviewed-by: Alexander Thomas <athom@google.com>
2018-12-11 12:58:51 +00:00
Stephen Adams 54a47243e5 Fix for 35356 - and/or/xor
Change-Id: Ia7c7422fa4864b2a5873e241e0a21529b67c2322
Reviewed-on: https://dart-review.googlesource.com/c/86824
Auto-Submit: Stephen Adams <sra@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Sigmund Cherem <sigmund@google.com>
2018-12-11 01:14:57 +00:00
Ryan Macnak 30896b87f1 [vm] Fix crash when enum initialization hits a stack overflow.
Give the compiler more headroom.

Have the simulators and interpreters distinguish between the true stack limit and the limit for trigger an overflow exception.

Bug: https://github.com/dart-lang/sdk/issues/35224
Bug: https://github.com/flutter/flutter/issues/25041
Change-Id: I048d73b649b4ce1f3d9b5a33d898ee9cfe54f6ca
Reviewed-on: https://dart-review.googlesource.com/c/86821
Reviewed-by: Aart Bik <ajcbik@google.com>
Reviewed-by: Régis Crelier <regis@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
2018-12-10 23:40:21 +00:00
Ryan Macnak 4463aa0038 Revert "[vm] Fix crash when enum initialization hits a stack overflow."
This reverts commit e59312dafa.

Reason for revert: Broken arm and arm64 simulators

Original change's description:
> [vm] Fix crash when enum initialization hits a stack overflow.
> 
> Give the compiler more headroom.
> 
> Have the KBC and DBC interpreters distinguish between the true stack limit and the limit for trigger an overflow exception.
> 
> Bug: https://github.com/dart-lang/sdk/issues/35224
> Bug: https://github.com/flutter/flutter/issues/25041
> Change-Id: I85e72e1d3cceb70858c53567a4c8d3635e42165b
> Reviewed-on: https://dart-review.googlesource.com/c/86684
> Reviewed-by: Régis Crelier <regis@google.com>
> Commit-Queue: Ryan Macnak <rmacnak@google.com>

TBR=rmacnak@google.com,regis@google.com,ajcbik@google.com

Change-Id: I923cca32d34de37b761196f536873aaf81dcbc92
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: https://github.com/dart-lang/sdk/issues/35224, https://github.com/flutter/flutter/issues/25041
Reviewed-on: https://dart-review.googlesource.com/c/86782
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
2018-12-10 18:52:10 +00:00
Ryan Macnak e59312dafa [vm] Fix crash when enum initialization hits a stack overflow.
Give the compiler more headroom.

Have the KBC and DBC interpreters distinguish between the true stack limit and the limit for trigger an overflow exception.

Bug: https://github.com/dart-lang/sdk/issues/35224
Bug: https://github.com/flutter/flutter/issues/25041
Change-Id: I85e72e1d3cceb70858c53567a4c8d3635e42165b
Reviewed-on: https://dart-review.googlesource.com/c/86684
Reviewed-by: Régis Crelier <regis@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
2018-12-10 18:29:43 +00:00
Lasse Reichstein Holst Nielsen a957c4351a Add more tests for async*/await-for operations.
Change-Id: Icadb9edfe2ef40aff3808295685f961897d63c9a
Reviewed-on: https://dart-review.googlesource.com/c/86181
Reviewed-by: Lasse R.H. Nielsen <lrn@google.com>
Commit-Queue: Lasse R.H. Nielsen <lrn@google.com>
2018-12-10 14:38:34 +00:00
Johnni Winther be532c0fc5 Use AbstractBool in AbstractValueDomain and add TrivialAbstractValueDomain
Change-Id: I01c8ca95d48b89c47748e91ba7e4709c3e6f2e78
Reviewed-on: https://dart-review.googlesource.com/c/86700
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2018-12-10 09:39:21 +00:00
Aart Bik c1a0c611c3 [vm/compiler] Add missing case for CP
Rationale:
Constant propagator was missing a case for a
double binary operator.

https://github.com/dart-lang/sdk/issues/35321
https://github.com/dart-lang/sdk/issues/35355



Change-Id: Ie88fe082e88b74651e798d516784737b36b4dcd1
Reviewed-on: https://dart-review.googlesource.com/c/86101
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Commit-Queue: Aart Bik <ajcbik@google.com>
2018-12-07 22:38:10 +00:00