Commit Graph

2317 Commits

Author SHA1 Message Date
Paul Berry d57633ce71 Revert "Fix handling of forwarding semi-stubs in the front end."
This reverts commit 379801ed11.

Reason for revert: Broke buildbots

Original change's description:
> Fix handling of forwarding semi-stubs in the front end.
> 
> See #31649 for more details about forwarding semi-stubs.
> 
> Change-Id: Iaf1153be5ac7f66503b93a362b66ac9585462f6c
> Reviewed-on: https://dart-review.googlesource.com/33820
> Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
> Reviewed-by: Samir Jindel <sjindel@google.com>
> Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
> Commit-Queue: Paul Berry <paulberry@google.com>

TBR=paulberry@google.com,scheglov@google.com,dmitryas@google.com,sjindel@google.com,kmillikin@google.com

Change-Id: I6b37f1143183e889a5b52cb8b0a5427991b306c0
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/34280
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2018-01-11 22:05:09 +00:00
Samir Jindel 784ee768d8 [kernel] Unrevert "Support for the partial tearoff type application operator in VM."
The original revision is available in the first patchset.

Change-Id: I579b4b85a19ac17088eed050680a46df7ffc5c0a
Reviewed-on: https://dart-review.googlesource.com/34102
Commit-Queue: Samir Jindel <sjindel@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
2018-01-11 21:37:38 +00:00
Samir Jindel 22c8aa0eba [kernel] Remove unnecessary RuntimeError status.
Change-Id: I9d15ff227de3d3136ab870de320ad8166a22cfd9
Reviewed-on: https://dart-review.googlesource.com/34161
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Samir Jindel <sjindel@google.com>
2018-01-11 18:15:08 +00:00
Paul Berry 379801ed11 Fix handling of forwarding semi-stubs in the front end.
See #31649 for more details about forwarding semi-stubs.

Change-Id: Iaf1153be5ac7f66503b93a362b66ac9585462f6c
Reviewed-on: https://dart-review.googlesource.com/33820
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Reviewed-by: Samir Jindel <sjindel@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2018-01-11 16:20:58 +00:00
Samir Jindel e9daa98653 [fasta] Remove unnecessary unary negation for the minimum 64-bit integer.
Change-Id: I5ebf49427ac4ddd005c490d1f04880f005211d26
Reviewed-on: https://dart-review.googlesource.com/33943
Commit-Queue: Samir Jindel <sjindel@google.com>
Reviewed-by: Peter von der Ahé <ahe@google.com>
2018-01-11 15:31:01 +00:00
Paul Berry f2b8efde4d Add a test demonstrating the corner case mentioned in issue #31596.
Change-Id: I34abe6993e0dc85d1234878c91ce735139b9cb47
Reviewed-on: https://dart-review.googlesource.com/31750
Reviewed-by: Leaf Petersen <leafp@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2018-01-11 03:50:27 +00:00
Vijay Menon 09621f6724 Try to handle int64 mode errors on literal handling
Bug:
Change-Id: I55fabb8eb359dbc91b4848d25109af9344484ee5
Reviewed-on: https://dart-review.googlesource.com/32121
Reviewed-by: Jenny Messerly <jmesserly@google.com>
Commit-Queue: Vijay Menon <vsm@google.com>
2018-01-10 22:45:59 +00:00
Martin Kustermann 0ea33d4283 Revert "[kernel] Support for the partial type application operator in the VM."
This reverts commit 4f265395e0.

Reason for revert: A lot of failing precompilation builders.

Original change's description:
> [kernel] Support for the partial type application operator in the VM.
> 
> Change-Id: Ieaf5d936676a6e755dab69d70105dcce0bcbfdb6
> Reviewed-on: https://dart-review.googlesource.com/32540
> Commit-Queue: Samir Jindel <sjindel@google.com>
> Reviewed-by: Régis Crelier <regis@google.com>
> Reviewed-by: Martin Kustermann <kustermann@google.com>

TBR=kustermann@google.com,sjindel@google.com,regis@google.com

Change-Id: Iac6a9fe7fb7467cab3818da99043d310d1981c67
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/33940
Reviewed-by: Martin Kustermann <kustermann@google.com>
Commit-Queue: Martin Kustermann <kustermann@google.com>
2018-01-10 17:05:39 +00:00
Samir Jindel 4f265395e0 [kernel] Support for the partial type application operator in the VM.
Change-Id: Ieaf5d936676a6e755dab69d70105dcce0bcbfdb6
Reviewed-on: https://dart-review.googlesource.com/32540
Commit-Queue: Samir Jindel <sjindel@google.com>
Reviewed-by: Régis Crelier <regis@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
2018-01-10 13:57:28 +00:00
Dmitry Stefantsov fd821941ad Update status file: some tests now pass due to recent changes
Change-Id: Iee6dd4337b2773da1ab7f8d7adf28fdcb593deb5
Reviewed-on: https://dart-review.googlesource.com/33762
Reviewed-by: Jens Johansen <jensj@google.com>
2018-01-10 09:24:20 +00:00
Emily Fortuna bd6cbd1ec7 Fix kernel precompiled test status after assertion test change.
Bug:
Change-Id: I9770f3eae7bc751b9a74321be051a15a56907a19
Reviewed-on: https://dart-review.googlesource.com/33146
Reviewed-by: Emily Fortuna <efortuna@google.com>
2018-01-08 22:44:12 +00:00
Sigmund Cherem 7139df0e38 Add strong sections to language_2 and corelib_2, and change to run dart2js in
strong mode for those two suites

Bug:
Change-Id: I5e7b07c9497afd9f9f65fd0de609d5587d3bd9f1
Reviewed-on: https://dart-review.googlesource.com/33120
Reviewed-by: Emily Fortuna <efortuna@google.com>
Commit-Queue: Sigmund Cherem <sigmund@google.com>
2018-01-08 21:08:05 +00:00
Aske Simon Christensen ae068aaabe Mark failures in debug mode due to missing check in Fasta.
Change-Id: If5042674e02bd26c97103aed82922305404fa70d
Reviewed-on: https://dart-review.googlesource.com/32980
Reviewed-by: Martin Kustermann <kustermann@google.com>
Commit-Queue: Aske Simon Christensen <askesc@google.com>
2018-01-08 17:39:23 +00:00
Martin Kustermann 391955feb6 [Gardening] Mark language_2/duplicate_implements_impl/{03,04} as passing
Change-Id: I5e478c24a648fde5e374898158543e65ee2360c6
Reviewed-on: https://dart-review.googlesource.com/32768
Reviewed-by: Aske Simon Christensen <askesc@google.com>
2018-01-08 16:35:29 +00:00
Paul Berry fa8f690071 Implement accessor type override checking rules in front_end.
Test failures introduced by this change have been marked with issue #31616.

Change-Id: Id82a2e850d2d7c3ebcb78b5acb2e59ea3d8da544
Reviewed-on: https://dart-review.googlesource.com/32682
Commit-Queue: Paul Berry <paulberry@google.com>
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2018-01-08 14:46:42 +00:00
Johnni Winther 55008b2a29 Update status files
Change-Id: I325cfcf4e6419f931c2d4c381a4f11b0bf573e1d
Reviewed-on: https://dart-review.googlesource.com/32770
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2018-01-08 14:04:53 +00:00
Martin Kustermann fa6fa059c4 [Gardening] Mark language_2/assertion_test crash in dartp-debug-strong
Change-Id: I94842673dfc992204a91c1fb456f1861ec5cbc62
Reviewed-on: https://dart-review.googlesource.com/32765
Reviewed-by: Martin Kustermann <kustermann@google.com>
Commit-Queue: Martin Kustermann <kustermann@google.com>
2018-01-08 12:25:02 +00:00
Johnni Winther 8e8915f538 Support generic closures in rti analysis
Change-Id: I1d393cff5b83f8db69e7bddb8ecfcd4a5205854f
Reviewed-on: https://dart-review.googlesource.com/32700
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2018-01-08 11:36:40 +00:00
Aske Simon Christensen 0c03458717 Reland "Treat most warnings as errors in strong mode."
Reland of https://dart-review.googlesource.com/c/sdk/+/29160

Adds a 'severity' field to diagnostic messages and replaces all
addWarning and addNit functions by a generic addProblem, which uses
the intrinsic severity of the message. Eventually, errors should
also be reported this way.

A special severity value maps into either warning or error for Dart 1
and Dart 2, respectively. Most Dart 1 warnings are in this category.

Fixes some 320 failures of DDK test expecting a compile-time error.
These were previously masked by a workaround in the DDC error handler
which has now been removed.

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

Change-Id: Id3b3b7f1fc6a101639fc908c90f3ec7d304a7b4b
Reviewed-on: https://dart-review.googlesource.com/32580
Commit-Queue: Aske Simon Christensen <askesc@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2018-01-08 09:20:02 +00:00
Konstantin Shcheglov e839405b0f Improve compound assignment inference.
Fixes #31484

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

Bug: https://github.com/dart-lang/sdk/issues/31638
Change-Id: I94a571978a4052adca4c85df06941ccf56998bac
Reviewed-on: https://dart-review.googlesource.com/32863
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-01-08 05:54:53 +00:00
Konstantin Shcheglov a8ebc3115c Use the same rule for inference in expression function bodies as in block bodies.
Bug: https://github.com/dart-lang/sdk/issues/31436
Change-Id: I535c39383d42862f035b54e2fb5c143367605697
     https://github.com/dart-lang/sdk/issues/31638
Reviewed-on: https://dart-review.googlesource.com/32860
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-01-07 20:46:31 +00:00
Dan Rubel cdd4268bc8 Revert "Improve fasta field recovery"
This reverts commit ab229b30ef.

Reason for revert: Failing co19 test

Original change's description:
> Improve fasta field recovery
> 
> In addition to improving field recovery, this CL
> fixes class field recovery to include an endMember event event
> and cleans up missing class body recovery.
> 
> Change-Id: I53afe5aef55452108803388de9245f7e14f97833
> Reviewed-on: https://dart-review.googlesource.com/32820
> Commit-Queue: Dan Rubel <danrubel@google.com>
> Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>

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

Change-Id: Id2976bfe67b410875a912bbfd6bfcbbe3d3c8c75
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/32840
Reviewed-by: Dan Rubel <danrubel@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2018-01-07 02:06:32 +00:00
Dan Rubel ab229b30ef Improve fasta field recovery
In addition to improving field recovery, this CL
fixes class field recovery to include an endMember event event
and cleans up missing class body recovery.

Change-Id: I53afe5aef55452108803388de9245f7e14f97833
Reviewed-on: https://dart-review.googlesource.com/32820
Commit-Queue: Dan Rubel <danrubel@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-01-06 21:51:50 +00:00
Konstantin Shcheglov 32e310d8c6 Infer closure parameter types as Object instead of Null.
R=brianwilkerson@google.com, paulberry@google.com

Bug: https://github.com/dart-lang/sdk/issues/31638
Change-Id: If739da50a1d7e21c6a1e18da18d1f85f788663da
     https://github.com/dart-lang/sdk/issues/31546
Reviewed-on: https://dart-review.googlesource.com/32669
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2018-01-06 02:31:19 +00:00
Harry Terkelsen 11d1b6f0db update status files after switch case fixes
Change-Id: If0127431e9237478ce12ff495d32eff144781bcd
Reviewed-on: https://dart-review.googlesource.com/32670
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Harry Terkelsen <het@google.com>
2018-01-05 23:29:29 +00:00
Jenny Messerly 0add93f98e fix #31781, fromEnvironment constants in DDK
Change-Id: I5915677204c0b02321e8db6a34e870b6ac63179d
Reviewed-on: https://dart-review.googlesource.com/32681
Commit-Queue: Jenny Messerly <jmesserly@google.com>
Reviewed-by: Vijay Menon <vsm@google.com>
2018-01-05 22:55:18 +00:00
Brian Wilkerson c151dffb9f Update tests to have an expression rather than a function as the argument in an assert
Change-Id: Ie95b39400adc0acd0b5f2c58dd26d21bb1b8c081
Reviewed-on: https://dart-review.googlesource.com/32502
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Bob Nystrom <rnystrom@google.com>
2018-01-05 22:09:09 +00:00
Jenny Messerly 303d71f53f fixes #31575, DDC kernel backend can now compile the SDK to JS
Also adds this to the build script, so we can eventually replace the existing SDK compile step with this new one.

Change-Id: Iba0720df5bbab302d2fdd0b5aeeb182de152cc98
Reviewed-on: https://dart-review.googlesource.com/32504
Commit-Queue: Jenny Messerly <jmesserly@google.com>
Reviewed-by: Vijay Menon <vsm@google.com>
2018-01-05 21:32:50 +00:00
Alexander Markov c051a0b905 [VM, Tests] Turn Dart 2.0 fixed-size integers ON by default, v2
Dart 2.0 fixed-size integers are enabled in Dart VM in all modes.
Status of legacy tests is updated.

This CL includes ff9fc413a7 with fixes.

Change-Id: I632d8177e9d07cd82ecea75ab6c325681b3a25c9
Reviewed-on: https://dart-review.googlesource.com/32443
Commit-Queue: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2018-01-05 01:44:56 +00:00
Mike Fairhurst 277274b733 Solve analyzer crash when using a function type in a foreach
Looks like the best place to put this is in the type builder, which has
special logic for foreaches. Previously, that special logic did not
include a need to visit the type, but with [GenericFunctionType]s, its
now necessary.

New test added; fails with kernel.

Bug: 31708
Change-Id: I6536be816a84458cf81d9037289ce6415ed13985
Reviewed-on: https://dart-review.googlesource.com/32447
Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-01-05 00:05:57 +00:00
Paul Berry 879badb850 Implement method type override checking rules in front_end.
Test failures introduced by this change have been marked with issue #31616.

Change-Id: Iddbcedb972b5ad2cf12e3fe588bd38aec76816df
Reviewed-on: https://dart-review.googlesource.com/29742
Commit-Queue: Paul Berry <paulberry@google.com>
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2018-01-04 22:46:26 +00:00
Alexander Markov 90551f6aa5 Revert "[VM, Tests] Turn Dart 2.0 fixed-size integers ON by default"
This reverts commit ff9fc413a7.

Reason: buildbot failures.
Change-Id: I68ffde271c8ba3b212e3bf015e2e550c8c891441
Reviewed-on: https://dart-review.googlesource.com/32442
Reviewed-by: Alexander Markov <alexmarkov@google.com>
2018-01-04 19:04:44 +00:00
Alexander Markov ff9fc413a7 [VM, Tests] Turn Dart 2.0 fixed-size integers ON by default
Dart 2.0 fixed-size integers are enabled in Dart VM in all modes.
Status of legacy tests is updated.

Change-Id: I967a413c0b81eb92cf6be78ad3ee324798288bd2
Reviewed-on: https://dart-review.googlesource.com/31406
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
Reviewed-by: Siva Annamalai <asiva@google.com>
Commit-Queue: Alexander Markov <alexmarkov@google.com>
2018-01-04 18:02:57 +00:00
Aske Simon Christensen 5402f02cbc Revert "Treat most warnings as errors in strong mode."
This reverts commit 3303df8102.

Reason for revert: Tests failing

TBR=ahe@google.com,askesc@google.com

Change-Id: Ifc8c9def6d134ab1b0c5f094a02a4f57a3581f19
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/32360
Reviewed-by: Aske Simon Christensen <askesc@google.com>
Commit-Queue: Aske Simon Christensen <askesc@google.com>
2018-01-04 15:35:17 +00:00
Aske Simon Christensen 3303df8102 Treat most warnings as errors in strong mode.
Adds a 'severity' field to diagnostic messages and replaces all
addWarning and addNit functions by a generic addProblem, which uses
the intrinsic severity of the message. Eventually, errors should
also be reported this way.

A special severity value maps into either warning or error for Dart 1
and Dart 2, respectively. Most Dart 1 warnings are in this category.

Fixes some 320 failures of DDK test expecting a compile-time error.
These were previously masked by a workaround in the DDC error handler
which has now been removed.

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

Change-Id: I6acea31b8cba7dec8b318e081d28f4eb4ebbf75c
Reviewed-on: https://dart-review.googlesource.com/29160
Commit-Queue: Aske Simon Christensen <askesc@google.com>
Reviewed-by: Peter von der Ahé <ahe@google.com>
2018-01-04 14:56:46 +00:00
Dmitry Stefantsov 1f3b493dcc Add simple instantiate-to-bounds algorithm to the common front-end
Bug:
Change-Id: I65097b037f4b02f0a161c9c183844a3dc3339c77
Reviewed-on: https://dart-review.googlesource.com/29880
Reviewed-by: Paul Berry <paulberry@google.com>
2018-01-04 11:31:08 +00:00
Kevin Millikin 6fa813d818 Change handling of Kernel static errors
Before: Kernel static errors were represented by throwing a distinguished
error or else by calling a distinguished library const constructor.

Now: Kernel static errors are represented by InvalidExpression.  To support
error reporting, InvalidExpression has an optional message and a file
offset.  A back end can choose to signal these errors at any time; for
example, when deserializing the binary, or when compiling the procedure
containing the static error, or when the erroneous expression is evaluated
at run time.

InvalidStatement is removed because it can be encoded as ExpressionStatement
of InvalidExpression.

Future work:

* supporting static errors where an expression cannot appear in the AST
* allowing InvalidExpression to contain an Expression for error recovery
* adding a top-level list of static errors and warnings to the binary

Bug: https://github.com/dart-lang/sdk/issues/29840
Change-Id: Ifdfe9a76cee6cefed28061bf245be70531d2f413
Reviewed-on: https://dart-review.googlesource.com/31320
Commit-Queue: Kevin Millikin <kmillikin@google.com>
Reviewed-by: Dan Rubel <danrubel@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2018-01-04 11:00:25 +00:00
Régis Crelier 2e3a4f8723 [VM] Ignore flag --error-on-bad-override in strong mode (fixes #31646).
Change-Id: Idabd0108a69b37a9181c6bb260a25b3ebae2ba63
Reviewed-on: https://dart-review.googlesource.com/32003
Reviewed-by: Siva Annamalai <asiva@google.com>
Commit-Queue: Régis Crelier <regis@google.com>
2018-01-03 15:40:36 +00:00
Paul Berry 15c684bf50 Disable implicit instantiation of call methods.
Addresses the performance concern raised in #31746

Change-Id: Iabfb4b871fb7807c0fe625036adfd22d2e6c51ee
Reviewed-on: https://dart-review.googlesource.com/31751
Commit-Queue: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2018-01-02 23:15:33 +00:00
Stephen Adams 9231c14710 Update language_2_dart2js.status
R=efortuna@google.com

Change-Id: I5c0ea6482fed1422e3d113243d0dee4e59f32fbc
Reviewed-on: https://dart-review.googlesource.com/31742
Reviewed-by: Stephen Adams <sra@google.com>
Reviewed-by: Emily Fortuna <efortuna@google.com>
Commit-Queue: Stephen Adams <sra@google.com>
2017-12-29 01:41:43 +00:00
Régis Crelier f3307ca8de [language tests] Fix 2 strong mode tests related to covariant tear-offs.
Update status files.

Change-Id: I5828a86f268a767d72dddea36e009950ac5dabde
Reviewed-on: https://dart-review.googlesource.com/31401
Reviewed-by: Régis Crelier <regis@google.com>
Commit-Queue: Régis Crelier <regis@google.com>
2017-12-22 20:33:36 +00:00
Erik Ernst 3698b91be8 Added test directories for Dart 2 features.
At and after the meeting that Anders called in AAR today we discussed
the list of directories that we would need. These came up:

  generalized void
  instantiate to bound
  noSuchMethod forwarding
  super-bounded types

I combined super-bounded types and instantiate to bound into one
topic, since they are so interwoven.

I also noted that we have more features coming up, even though we have
not discussed them much recently, and one of them will need a number
of tests: optional const/new. So I created new test directories for
these five topics, and added a short README.md to indicate their
purpose.

Change-Id: I17a407073d2dbcbccce0bfbd321cb01365d4b9ee
Reviewed-on: https://dart-review.googlesource.com/31200
Reviewed-by: Anders Sandholm <sandholm@google.com>
Reviewed-by: Kevin Millikin <kmillikin@google.com>
Commit-Queue: Erik Ernst <eernst@google.com>
2017-12-22 15:39:13 +00:00
Sigmund Cherem d85651846f Update .status files
One language test "passes" when we no longer complain about the mixin issue.

Bug:
Change-Id: I5aeb4ead7d3faf6ec756eeb11fecc20bcfb4c16e
Reviewed-on: https://dart-review.googlesource.com/31260
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2017-12-21 22:49:02 +00:00
Régis Crelier e8fc3ab0fa [gardening] Update status files.
Change-Id: I0f3eeaffebebb9ed2869aed01ad5f46f9ee81a8c
Reviewed-on: https://dart-review.googlesource.com/30922
Reviewed-by: Régis Crelier <regis@google.com>
2017-12-20 23:03:10 +00:00
Régis Crelier 548d7dc8a3 [VM runtime] Properly treat Object and void as top types in strong mode type
tests.
Adjust status files.

Change-Id: I4360c0015cfbb97a5599882930810dbc7060d4c0
Reviewed-on: https://dart-review.googlesource.com/30701
Reviewed-by: Alexander Markov <alexmarkov@google.com>
2017-12-20 20:55:59 +00:00
Alexander Markov b6276eb3d5 [VM] Enable --limit-ints-to-64-bits in Dart 2.0 precompiler, v3.
* Enable --limit-ints-to-64-bits for CFE when it is used to generate
  kernel for VM as CFE relies on int.parse being able to parse correct
  literals and reject incorrect.

* Pass --limit-ints-to-64-bits to gen_kernel via environment
  variable to support batch mode compilation.

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

Re-landing https://dart-review.googlesource.com/29941 with the fix:

* Use checked-in SDK to avoid timeouts on SIMARM bots.
  Checked-in SDK was updated and now includes necessary fixes.

Change-Id: I4a5a99455b60204572f3d619d7eb374035b03e40
Reviewed-on: https://dart-review.googlesource.com/30640
Commit-Queue: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
2017-12-20 18:04:42 +00:00
Erik Ernst aa9765604e New test, checking allowed usages of void typed expressions
Change-Id: I9a3096bb3fb3deca178688029657cd71f8aedf7d
Reviewed-on: https://dart-review.googlesource.com/30840
Reviewed-by: Lasse R.H. Nielsen <lrn@google.com>
Commit-Queue: Erik Ernst <eernst@google.com>
2017-12-20 14:04:13 +00:00
Lasse Reichstein Holst Nielsen b56051abfa Update language_2/async_await_test to not use unittest.
Change-Id: I239e844d90a79afeb54204c3bdfd41b4daabb03c
Reviewed-on: https://dart-review.googlesource.com/26600
Reviewed-by: Bob Nystrom <rnystrom@google.com>
2017-12-19 22:04:16 +00:00
Martin Kustermann 32c4480403 [VM] Fix various issues in the VM, mainly simdbc64 related
* Fixes kernel flow graph builder to use instantiated type argumenst
    for CreateArray

  * Fixes prologue builder to mask the positon of named arguments in the
    arguments descriptor array

  * Add a SmiBitAndTOS instruction to DBC

  * Implement missing AssertSubtype DBC instruction

  * Ensure we don't use field guards in DBC mode

  * Remove incorrect assertions in LoadIndexedUnsafe/StoreIndexedUnsafe

  * Save argdesc_ in DBC simulator when calling the runtime to optimize
    a function (which can call re-entrant to Simulator via const
    evalulation)

Issue https://dart-review.googlesource.com/c/sdk/+/29581

Change-Id: Ia14b657db66f90643822b6986ec7f75f746ab0d8
Reviewed-on: https://dart-review.googlesource.com/30340
Commit-Queue: Martin Kustermann <kustermann@google.com>
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
2017-12-19 14:49:52 +00:00
Vyacheslav Egorov 0dc324a68d Revert "[VM] Enable --limit-ints-to-64-bits in Dart 2.0 precompiler, v2."
This reverts commit 2a3f00a179.

Reason for revert: SIMARM bots are timing out.

Original change's description:
> [VM] Enable --limit-ints-to-64-bits in Dart 2.0 precompiler, v2.
> 
> * Enable --limit-ints-to-64-bits for CFE when it is used to generate
>   kernel for VM as CFE relies on int.parse being able to parse correct
>   literals and reject incorrect.
> 
> * Pass --limit-ints-to-64-bits to gen_kernel via environment
>   variable to support batch mode compilation.
> 
> * Use current Dart SDK instead of checked-in Dart SDK to run CFE
>   in gen_kernel as checked-in Dart SDK is old and it doesn't have
>   int.parse fix yet.
> 
> Issue: https://github.com/dart-lang/sdk/issues/31339
> Change-Id: Iaba2a7945a3faa9427f9aab1e9f2b907fa2246a3
> Reviewed-on: https://dart-review.googlesource.com/29941
> Commit-Queue: Alexander Markov <alexmarkov@google.com>
> Reviewed-by: Martin Kustermann <kustermann@google.com>

TBR=vegorov@google.com,kustermann@google.com,alexmarkov@google.com,zra@google.com,asiva@google.com

Change-Id: Iecf26953bc6ae95c3bf0d1142bb89fb51cb0aaee
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Issue: https://github.com/dart-lang/sdk/issues/31339
Reviewed-on: https://dart-review.googlesource.com/30440
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
Commit-Queue: Vyacheslav Egorov <vegorov@google.com>
2017-12-19 08:52:25 +00:00