Commit Graph

1846 Commits

Author SHA1 Message Date
Bob Nystrom b452b39962 Basic support for dev_compiler in test.dart.
It can compile and run tests on Chrome. There are a lot of failing tests
that I (or the team) will need to triage, but I think at least basic
tests are working as expected.

There is code that could be cleaned up to more neatly factor how dart2js
and dartdevc are handled now that there are two separate compilers to
JS. There's also some redundant code between the path for testing
compile errors (enqueueStandardTest()) and the path for running a test
in the browser.

R=whesse@google.com

Review-Url: https://codereview.chromium.org/2947473002 .
2017-06-21 13:19:28 -07:00
Ben Konyi a4a227e375 Revert "Updated parser to produce error when trying to reinitialize final variables in class constructors. Fixes issue #29658."
This reverts commit b5cff3f68f.

TBR=zra@google.com

Review-Url: https://codereview.chromium.org/2944223002 .
2017-06-19 17:23:01 -07:00
Ben Konyi 0555d5e176 More status file updates to fix bot failures caused by parser change.
BUG=

Review-Url: https://codereview.chromium.org/2943413002 .
2017-06-19 16:24:30 -07:00
Ryan Macnak c15f6f8d94 Mark language/closure_cycles_test as slow on the arm64 bot.
Review-Url: https://codereview.chromium.org/2945913002 .
2017-06-19 14:08:21 -07:00
Ryan Macnak 72e1775fd1 [arm, arm64] Implemented unaligned scalar float access.
[arm64] Fix unaligned (u)int64 stores.

Fix unaligned access test to use host endianness.

Issue #22151

R=zra@google.com

Review-Url: https://codereview.chromium.org/2940883008 .
2017-06-19 10:28:38 -07:00
Siva Annamalai 5e7bc9f162 Adjust status file for issue 29895
BUG=

Review-Url: https://codereview.chromium.org/2941183002 .
2017-06-15 16:42:28 -07:00
Siva Annamalai 114ac0bbd9 Fix status files for issue 29895
BUG=

Review-Url: https://codereview.chromium.org/2943463003 .
2017-06-15 11:27:19 -07:00
Peter von der Ahé 001ac97389 Implement initializer asserts.
Closes https://github.com/dart-lang/sdk/issues/29762

R=kasperl@google.com

Review-Url: https://codereview.chromium.org/2930673002 .
2017-06-08 13:46:26 +02:00
Lasse R.H. Nielsen 5720e3556c Add negation to single-identifier tests in status files.
Optimize some regegps too.

Fixes #29756

BUG= http://dartbug.com/29756
R=rnystrom@google.com

Review-Url: https://codereview.chromium.org/2913963002 .
2017-06-02 10:38:14 +02:00
Sigmund Cherem 7affe8f0e5 update .status file once more: move dartk condition to the _kernel.status file.
R=ahe@google.com, efortuna@google.com

Review-Url: https://codereview.chromium.org/2918653005 .
2017-06-01 11:18:13 -07:00
Sigmund Cherem 77449584d0 Fix .status again. This is just embarrasing.
BUG=

Review-Url: https://codereview.chromium.org/2919603003 .
2017-05-31 17:07:08 -07:00
Sigmund Cherem 6d0fedd59b Fix status again: meant to only include dartk, misread the context earlier :(
TBR=ahe@google.com

Review-Url: https://codereview.chromium.org/2913353002 .
2017-05-31 16:40:14 -07:00
Sigmund Cherem 04ee5b7109 Update status of language test
This was passing before because we disallowed native everywhere. The test should
pass again when we fix: https://github.com/dart-lang/sdk/issues/29763

TBR=ahe@google.com

Review-Url: https://codereview.chromium.org/2917823002 .
2017-05-31 16:28:09 -07:00
Bob Nystrom 92267afc66 Refactor and clean up the status file parsing code. - Make the parser less error tolerant. The expression parser used to ignore any unrecognized tokens, which means a status like "RuntimeError CompileError" (not the missing comma) was parsed as simply "RuntimeError", which seems bad. Now it reports an error. Fixed a couple of status files that thought they were setting statuses that they weren't (!).
- Separate out parsing a status file from applying the environment to
  determine which sections are active. This makes it possible to, for
  example, generate expectation sets for multiple environments without
  having to reparse each time.

- Simplify expression parsing. Remove set expressions since they weren't
  used for anything useful. A test's expectations are a simple
  comma-separated list and don't need anything beyond that. Merge
  Scanner and Tokenizer since the latter was a glorified function.

- Make more names private so that it's clearer what's used outside of
  various libraries.

- Generally modernize the style.

- Add *lots* of documentation.

Again, there should be no behavioral changes. I ran:

  ./tools/test.py -m release,debug -c none,dart2js,dart2analyzer -r none,vm,d8 corelib

Before and after the change and verified that the output was the same
(aside from timing).

R=sigmund@google.com

Review-Url: https://codereview.chromium.org/2891753003 .
2017-05-18 12:42:52 -07:00
Bob Nystrom c269ef53a5 Revert "Re-apply status file parser changes from 0b7728da1bef08c1c1e092005d9fd8c8bff5fa6c."
This reverts commit a881aed354.

TBR.

R=paulberry@google.com

Review-Url: https://codereview.chromium.org/2888213002 .
2017-05-17 13:45:40 -07:00
Bob Nystrom a881aed354 Re-apply status file parser changes from 0b7728da1b.
R=whesse@google.com

Review-Url: https://codereview.chromium.org/2880203004 .
2017-05-17 13:04:35 -07:00
Bob Nystrom 01e5b1b40c Revert "Refactor and clean up the status file parsing code."
This reverts commit 0b7728da1b.

R=nbosch@google.com

Review-Url: https://codereview.chromium.org/2885623002 .
2017-05-15 15:58:05 -07:00
Bob Nystrom 0b7728da1b Refactor and clean up the status file parsing code.
- Make the parser less error tolerant. The expression parser used to
  ignore any unrecognized tokens, which means a status like
  "RuntimeError CompileError" (not the missing comma) was parsed as
  simply "RuntimeError", which seems bad. Now it reports an error.
  Fixed a couple of status files that thought they were setting statuses
  that they weren't (!).

- Separate out parsing a status file from applying the environment to
  determine which sections are active. This makes it possible to, for
  example, generate expectation sets for multiple environments without
  having to reparse each time.

- Simplify expression parsing. Remove set expressions since they weren't
  used for anything useful. A test's expectations are a simple
  comma-separated list and don't need anything beyond that. Merge
  Scanner and Tokenizer since the latter was a glorified function.

- Make more names private so that it's clearer what's used outside of
  various libraries.

- Generally modernize the style.

- Add *lots* of documentation.

Again, there should be no behavioral changes. I ran:

  ./tools/test.py -m release,debug -c none,dart2js,dart2analyzer -r none,vm,d8 corelib

Before and after the change and verified that the output was the same
(aside from timing).

BUG=
R=whesse@google.com

Review-Url: https://codereview.chromium.org/2875203005 .
2017-05-15 15:42:15 -07:00
Terry Lucas f27144d7b5 Roll 50: Updated for push to origin/master.
TBR=jacobr@google.com

Review-Url: https://codereview.chromium.org/2875773003 .
2017-05-10 18:16:51 -07:00
Mike Fairhurst a48e0ef493 Fix #28740 demangle constructors in stack traces (A.A becomes new A) REDO
Regular constructors and unnamed factory constructors:
- Were A.A, now are new A
Named constructors (including factory constructors):
- Were A.A.name, now are new A.name

Previous attempt (a84b6b7f) didn't update vm/cc tests, which broke the
build, was reverted, and also revealed an important case:

Functions within constructors:
- Were A.A.x, now are new A.x

Doing this was cleanest by switching the loop out for recursion, which
provides a nice guarantee that any anonymous function within some other
function will always have the correct prefix, and the class name (which
may or may not be prepended at the end) is only applied once, and its
existence is only checked in one place.

R=asiva@google.com

Review-Url: https://codereview.chromium.org/2823253005 .
2017-04-28 10:19:20 -07:00
Jacob Richman b7995140f8 Revert "Fix #28740 demangle constructors in stack traces (A.A becomes new A)."
This reverts commit a84b6b7f7b.

BUG=

Review-Url: https://codereview.chromium.org/2824323002 .
2017-04-18 16:48:33 -07:00
Mike Fairhurst a84b6b7f7b Fix #28740 demangle constructors in stack traces (A.A becomes new A).
Regular constructors and unnamed factory constructors:
- Were A.A, now are new A
Named constructors (including factory constructors):
- Were A.A.name, now are new A.name

BUG=
R=asiva@google.com, rmacnak@google.com

Review-Url: https://codereview.chromium.org/2818933003 .
2017-04-18 15:18:29 -07:00
Vyacheslav Egorov 8f563f2c32 VM: Prohibit reload when throwing or processing language errors.
This fixes flaky crashes on negative tests in stress reload mode: when
we attempt to reload an isolate while throwing/formatting compile time error.

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

R=johnmccutchan@google.com

Review-Url: https://codereview.chromium.org/2825043002 .
2017-04-18 18:51:49 +02:00
John McCutchan 024ccd3095 Mark language/vm/optimized_stacktrace_test slow on reload bots
BUG=

Review-Url: https://codereview.chromium.org/2814743008 .
2017-04-12 15:15:11 -07:00
Karl Klose 7b5010d440 [Gardening] Mark regress_29025_test as crashing in precompiled-debug
R=kustermann@google.com

Review-Url: https://codereview.chromium.org/2817683002 .
2017-04-12 16:12:13 +02:00
Regis Crelier 659511d518 Fix type parameter invocation in the VM (fixes #19725).
R=rmacnak@google.com

Review-Url: https://codereview.chromium.org/2814833003 .
2017-04-11 13:31:30 -07:00
Peter von der Ahé 2155fb6f6c Update status for Dartium.
Review-Url: https://codereview.chromium.org/2795973002 .
2017-04-04 09:31:51 +02:00
Peter von der Ahé 2b27805f07 Change test to match issue 19725.
R=johnniwinther@google.com, regis@google.com, vegorov@google.com

Review-Url: https://codereview.chromium.org/2781273003 .
2017-04-04 08:20:17 +02:00
Siva Annamalai c53e020e6c Adjust status files to account for running the Dart test cases through flutter engine on linux.
Accounted for language, co19, lib, corelib, isolate and standalone tests.

Filed issues to track all failing tests

  https://github.com/flutter/flutter/issues/9109
  https://github.com/flutter/flutter/issues/9110
  https://github.com/flutter/flutter/issues/9111
  https://github.com/flutter/flutter/issues/9113
  https://github.com/flutter/flutter/issues/9114
  https://github.com/flutter/flutter/issues/9115

R=rmacnak@google.com

Review-Url: https://codereview.chromium.org/2784293003 .
2017-04-03 16:35:09 -07:00
Florian Schneider 5a3f9d9398 Fix a couple of bugs with async stack traces
Related to #29145.

Fixes #29199.

1. Missing source positions in async and async* functions (synthetic code)

2. Added unit tests for issues #28980 and added asyns stack trace testing flags to existing test.

3. Handle uninitialized Completer object when collecting async stack traces.

Still missing is the correct calculation of context levels in ActivationFrame::ContextLevel. This is planned for a separate CL.

R=johnmccutchan@google.com

Review-Url: https://codereview.chromium.org/2786503003 .
2017-03-30 11:02:33 -07:00
William Hesse 796c9c9002 Update dartium status for abstract_beats_arguments2_test
BUG=https://github.com/dart-lang/sdk/issues/29171
R=ahe@google.com

Review-Url: https://codereview.chromium.org/2786453003 .
2017-03-29 16:13:16 +02:00
Peter von der Ahé a994d0e47e Update status file after switching to multi test.
Review-Url: https://codereview.chromium.org/2782853002 .
2017-03-29 12:43:41 +02:00
Peter von der Ahé a6ba01e8aa Throw AbstractClassInstantiationError on abstract classes.
R=karlklose@google.com

Review-Url: https://codereview.chromium.org/2781493002 .
2017-03-29 10:38:15 +02:00
Peter von der Ahé d50bfcde53 Implement dynamic and void as types exported by core library.
R=paulberry@google.com

Review-Url: https://codereview.chromium.org/2761173004 .
2017-03-22 10:25:08 +01:00
Regis Crelier 11ef5844a8 Previous cl should have used "Crash", not "Fail".
Review-Url: https://codereview.chromium.org/2743253012 .
2017-03-16 18:47:48 -07:00
Regis Crelier e35ec2cb15 Gardening: Disable 2 flaky tests for hot reload. Issue 29094 was already filed.
Review-Url: https://codereview.chromium.org/2750393004 .
2017-03-16 18:24:16 -07:00
Erik Corry a259896d7d Disable await_for_test test on precompiled platform - see #28974
R=lrn@google.com
BUG=

Review-Url: https://codereview.chromium.org/2738353004 .
2017-03-10 15:03:05 +01:00
Natalie Weizenbaum 333417951f Fix a status line for language/await_for_test. (#29008)
See #28974
2017-03-09 15:23:18 -08:00
Lasse Reichstein Holst Nielsen 294ea61bec Update status file to account for yet another alias for the VM.
Review-Url: https://codereview.chromium.org/2742793002 .
2017-03-09 16:11:59 +01:00
Lasse R.H. Nielsen 86d119e1ed Add test for cancel-future being awaited after an await for.
See http://dartbug.com/28974 (#28974)

R=floitsch@google.com

Committed: https://github.com/dart-lang/sdk/commit/74a8351fb6ccb6789c9195a4b4905d853090d4e7
Review-Url: https://codereview.chromium.org/2734143002 .
2017-03-09 09:50:09 +01:00
Alan Knight 1b96ec4857 Revert "Add test for cancel-future being awaited after an await for."
This reverts commit 74a8351fb6.

BUG=

Review URL: https://codereview.chromium.org/2739703002 .
2017-03-07 11:24:34 -08:00
Lasse R.H. Nielsen 74a8351fb6 Add test for cancel-future being awaited after an await for.
See http://dartbug.com/28974 (#28974)

R=floitsch@google.com

Review-Url: https://codereview.chromium.org/2734143002 .
2017-03-07 18:05:36 +01:00
Florian Loitsch 979183decf Add support for the new function-type syntax.
Fixes #27967
BUG= http://dartbug.com/27967
R=ahe@google.com, johnniwinther@google.com, paulberry@google.com, sigmund@google.com

Committed: https://github.com/dart-lang/sdk/commit/85227ba8a60332a18ae92cb1b87bf15d52a909bd
Reverted: https://github.com/dart-lang/sdk/commit/f5fc210f4f79f7e6b7ccefc24e7565e810e9dc7d
Committed: https://github.com/dart-lang/sdk/commit/e4999a631093690febb2eb90cbdbe1f9d5183455
Reverted: https://github.com/dart-lang/sdk/commit/c64c35153905fc2bf8a74c02297220385cfcbc87
Committed: https://github.com/dart-lang/sdk/commit/c289af39c36d9a5f7130a3e69b7891052652a64e
Reverted: https://github.com/dart-lang/sdk/commit/c66479f40767744d0bdd027c004583d6e32fe50f
Review-Url: https://codereview.chromium.org/2567133002 .
2017-02-23 13:36:28 +01:00
Florian Loitsch c66479f407 Revert "Add support for the new function-type syntax."
This reverts commit c289af39c3.

BUG=

Review-Url: https://codereview.chromium.org/2710973002 .
2017-02-22 17:19:35 +01:00
Florian Loitsch c289af39c3 Add support for the new function-type syntax.
Fixes #27967
BUG= http://dartbug.com/27967
R=ahe@google.com, johnniwinther@google.com, sigmund@google.com

Committed: https://github.com/dart-lang/sdk/commit/85227ba8a60332a18ae92cb1b87bf15d52a909bd

Reverted: https://github.com/dart-lang/sdk/commit/f5fc210f4f79f7e6b7ccefc24e7565e810e9dc7d

Committed: https://github.com/dart-lang/sdk/commit/e4999a631093690febb2eb90cbdbe1f9d5183455

Reverted: https://github.com/dart-lang/sdk/commit/c64c35153905fc2bf8a74c02297220385cfcbc87
Review-Url: https://codereview.chromium.org/2567133002 .
2017-02-22 16:53:49 +01:00
John McCutchan 19abef97f1 Reland improvements to causal async stack traces
Original CL: https://codereview.chromium.org/2690683002

Improvements to causal async stack traces

UX improvements:

- [x] Stop printing the suffix <%s_async_body> and <%s_async_gen_body> for the generated closures.

Fixes #28743

- [x] Don't include the duplicate frame below the asynchronous suspension marker.

Fixes #28742

Bug fixes:

- [x] Fix service protocol enum naming so that it is consistent with other enums.

Fixes #28726

Misc:

- [x] Stop using package:stack_trace now that the VM does it for us.

BUG=
R=asiva@google.com, devoncarew@google.com, rmacnak@google.com

Review-Url: https://codereview.chromium.org/2691213003 .
2017-02-14 05:00:04 -08:00
John McCutchan e84d8a1f11 Revert "Improvements to causal async stack traces"
This reverts commit 8538d81473.

BUG=

Review-Url: https://codereview.chromium.org/2694213002 .
2017-02-14 02:29:40 -08:00
John McCutchan 8538d81473 Improvements to causal async stack traces
UX improvements:

- [x] Stop printing the suffix <%s_async_body> and <%s_async_gen_body> for the generated closures.

Fixes #28743

- [x] Don't include the duplicate frame below the asynchronous suspension marker.

Fixes #28742

Bug fixes:

- [x] Fix service protocol enum naming so that it is consistent with other enums.

Fixes #28726

Misc:

- [x] Stop using package:stack_trace now that the VM does it for us.

BUG=
R=asiva@google.com, devoncarew@google.com, rmacnak@google.com

Review-Url: https://codereview.chromium.org/2690683002 .
2017-02-14 00:56:55 -08:00
Ryan Macnak cfe5e5f075 Include metadata in AOT to expand inline frames in stack traces and provide line numbers.
Also fix stack trace collection to always include invisible frames. It can happen that a visible function is inlined into an invisible function, and we don't expand inlined frames until we print a stack trace.

dart2js product x64:
compile time: 12.459s
VMIsolate(CodeSize): 152292
Isolate(CodeSize): 3343117
ReadOnlyData(CodeSize): 3728928
Instructions(CodeSize): 8677600
Total(CodeSize): 15901937
->
compile time: 14.195s (+13%)
VMIsolate(CodeSize): 174034
Isolate(CodeSize): 3892418 (+16%)
ReadOnlyData(CodeSize): 5036320 (+35%)
Instructions(CodeSize): 8682624
Total(CodeSize): 17785396 (+12%)

R=asiva@google.com

Review-Url: https://codereview.chromium.org/2687143005 .
2017-02-13 10:27:36 -08:00
Zachary Anderson 0111122ca0 [Fuchsia] Update test status files
R=asiva@google.com, rmacnak@google.com

Review-Url: https://codereview.chromium.org/2693643002 .
2017-02-10 21:34:33 -08:00