Commit Graph

5559 Commits

Author SHA1 Message Date
Stephen Adams 8c08aaa812 de-dup language_dart2js.status
TBR=sigmund@google.com

BUG=

Review-Url: https://codereview.chromium.org/2996613002 .
2017-08-07 15:15:35 -07:00
Stephen Adams 84b615df3d Scrub all non-identifier characters from JavaScript class names
Class names from kernel contain "&", "#", "^" etc

BUG=
R=efortuna@google.com

Review-Url: https://codereview.chromium.org/2999473002 .
2017-08-07 13:12:59 -07:00
Bob Nystrom ff563dbe3e Remove three tests that were migrated to language_2 already.
Review-Url: https://codereview.chromium.org/2992363002 .
2017-08-04 17:19:54 -07:00
Bob Nystrom 50c087d5a6 Migrate language block 45 - call_argument ... call_with.
R=jmesserly@google.com

Review-Url: https://codereview.chromium.org/2998493002 .
2017-08-04 17:15:26 -07:00
Bob Nystrom 243d1c74eb Migrate language block 46 - canonical_const ... char_escape.
R=jmesserly@google.com

Review-Url: https://codereview.chromium.org/2996533003 .
2017-08-04 16:52:13 -07:00
Stephen Adams bb1e91b597 Redo "Work-around for missing mixin-application charOffset"
TBR=sigmund@google.com

BUG=

Review-Url: https://codereview.chromium.org/2991403002 .
2017-08-04 15:35:38 -07:00
Sigmund Cherem 352dc54191 Update status files to make bots green, minor changes to the script
R=efortuna@google.com

Review-Url: https://codereview.chromium.org/2990303002 .
2017-08-04 14:04:37 -07:00
Emily Fortuna 97e57c0209 More status file fixes.
BUG=
R=sigmund@google.com

Review-Url: https://codereview.chromium.org/2994653002 .
2017-08-04 13:34:59 -07:00
Sigmund Cherem edc1054ae1 Normalize status files for dart2js_with_kernel
This is only moving status lines around to ensure we only have 2 sections for
$dart2js_with_kernel per file: minified and host-checked.  Some entries are now
duplicated because we no longer have the $dart2js_with_kernel (non-checked)
section.

R=efortuna@google.com

Review-Url: https://codereview.chromium.org/2993083002 .
2017-08-04 09:41:08 -07:00
Emily Fortuna 1df5b00122 More status file adjustments. Why does this not reproduce on my machine?!?!?
TBR=sigmund@google.com

BUG=

Review-Url: https://codereview.chromium.org/2995503002 .
2017-08-03 21:10:40 -07:00
Emily Fortuna 4929f282b3 Make minification Entity-friendly.
BUG=
R=sigmund@google.com

Review-Url: https://codereview.chromium.org/2996463002 .
2017-08-03 19:19:21 -07:00
Emily Fortuna b74f53aa74 Revert "Updated test status after fixing closure call generation."
This reverts commit 6839f6f79f.

BUG=

Review-Url: https://codereview.chromium.org/2986383003 .
2017-08-03 12:06:01 -07:00
Emily Fortuna 6839f6f79f Updated test status after fixing closure call generation.
BUG=
R=johnniwinther@google.com

Review-Url: https://codereview.chromium.org/2993603002 .
2017-08-03 10:45:17 -07:00
Johnni Winther fc83cc6bfc Update status for dart2js-with-kernel
Review-Url: https://codereview.chromium.org/2986353002 .
2017-08-03 12:31:32 +02:00
Florian Loitsch f16c187649 Update the function_type tests for Dart 2.0.
Mainly ensures that `dynamic Function(int)` and `int Function(int)` aren't treated as assignable.

R=sigmund@google.com

Committed: https://github.com/dart-lang/sdk/commit/46418dc31ab124fe4f6a4f24809ff7ef8afd34ff
Reverted:
Committed: https://github.com/dart-lang/sdk/commit/05bb0edf41ec1f96c069f8a8876c091e3b03d716
Review-Url: https://codereview.chromium.org/2987133002 .
2017-08-03 10:54:41 +02:00
Bob Nystrom dbd48de07d Fix a couple of things causing bot redness:
- Migrate over built_in_identifier_test since it imports a helper
  library that was migrated.
- Fix some status file entries.

Also:

- Removed some old commented out status entries.
- Fix a bug in migration script.

R=jcollins@google.com

Review-Url: https://codereview.chromium.org/2992903002 .
2017-08-02 14:54:07 -07:00
Bob Nystrom 9d4be00986 Migrate block 44.
R=bkonyi@google.com

Review-Url: https://codereview.chromium.org/2985243002 .
2017-08-02 13:45:45 -07:00
Florian Loitsch 05bb0edf41 Revert "Update the function_type tests for Dart 2.0."
This reverts commit 46418dc31a.

Review-Url: https://codereview.chromium.org/2986313002 .
2017-08-02 17:45:03 +02:00
Florian Loitsch 46418dc31a Update the function_type tests for Dart 2.0.
Mainly ensures that `dynamic Function(int)` and `int Function(int)` aren't treated as assignable.

R=sigmund@google.com

Review-Url: https://codereview.chromium.org/2987133002 .
2017-08-02 17:07:27 +02:00
Bob Nystrom 3c7f9852a5 Migrate block 43.
R=bkonyi@google.com

Review-Url: https://codereview.chromium.org/2990933002 .
2017-08-01 16:58:52 -07:00
Emily Fortuna 6f0cd90b13 Update status file for dart2js minified closure test results.
BUG=

Review-Url: https://codereview.chromium.org/2987313002 .
2017-08-01 12:44:11 -07:00
Emily Fortuna c91ce4dcb3 Add boxed fields in closure classes.
BUG=
R=johnniwinther@google.com

Review-Url: https://codereview.chromium.org/2992763002 .
2017-08-01 11:27:35 -07:00
Vyacheslav Egorov 33ab401cc7 Gardening: fix issues with expectations for precomp-linux-product-x64.
Fixes https://github.com/dart-lang/sdk/issues/30289

R=kustermann@google.com
BUG=

Review-Url: https://codereview.chromium.org/2987113002 .
2017-07-31 13:44:40 +02:00
Alan Knight 7694ecabb0 And properly qualify the suppressed tests
BUG=

Review-Url: https://codereview.chromium.org/2989103002 .
2017-07-28 16:54:24 -07:00
Alan Knight f3746d3548 Fix typo in status file
BUG=

Review-Url: https://codereview.chromium.org/2992723002 .
2017-07-28 16:00:20 -07:00
Alan Knight 2993c194bf Suppress crashing/failing VM precomp tests
BUG=

Review-Url: https://codereview.chromium.org/2987073002 .
2017-07-28 15:53:27 -07:00
Bob Nystrom ad7e4df362 Migrate block 39 language/async_backwards ... /async_star_take.
R=bkonyi@google.com

Review-Url: https://codereview.chromium.org/2990973002 .
2017-07-28 14:28:57 -07:00
Sigmund Cherem c67dd31dbd Fix status lines in minified mode
TBR=johnniwinther@google.com,efortuna@google.com

Review-Url: https://codereview.chromium.org/2989953002 .
2017-07-28 12:09:28 -07:00
Bob Nystrom f32d1b2bcd Migrate block 37, language/arithmetic2 ... /async_await_syntax_test.
R=jmesserly@google.com

Review-Url: https://codereview.chromium.org/2992003002 .
2017-07-28 11:16:23 -07:00
Sigmund Cherem b1065335cd Use dart2js_plaform.dill from the sdk.
This will enable --use-kernel tests in the dart2js bots.

After this change, running our tests will change a little bit, either of these
would work:

Option A: --use-sdk (host-checked not allowed)

python tools/test.py -m release \
   -c dart2js -r d8 --dart2js-batch --report \
   --dart2js-with-kernel --use-sdk \
   language corelib library_2 corelib_2 \
   dart2js_native dart2js_extra

Option B: pass --library-root, --host-check works here.
python tools/test.py -m release \
   -c dart2js -r d8 --dart2js-batch --report \
   --dart2js-with-kernel --host-checked \
   --dart2js_options="--library-root=out/ReleaseX64/dart-sdk/" \
   language corelib library_2 corelib_2 \
   dart2js_native dart2js_extra

In the future, when fasta supports compiling sdk with @patch files, we will
be able to remove the --library-root option and simply compile the SDK from
sources at that point.

BUG=
R=johnniwinther@google.com

Review-Url: https://codereview.chromium.org/2988063002 .
2017-07-28 10:07:08 -07:00
Erik Corry e431e93e87 Revert two Kernel changes that were causing test failures.
Example failure:
python tools/test.py -m release -c dartk --builder-tag no_ipv6 \
    language/function_type/function_type63_test

Revert "Serialize typedef parameters (including function typed ones) to Kernel and use it to resynthesize typedefs from Kernel."
This reverts commit afc392b66d.
Reverts https://codereview.chromium.org/2990783002

Revert "Add Member.documentationComment and use it to resynthesize documentation from Kernel."
This reverts commit 47ecf72272.
Reverts https://codereview.chromium.org/2990873002

Also reverts some attempts to fix test files:
302b410364
https://codereview.chromium.org/2984343002
05ccf27015
https://codereview.chromium.org/2992683002
f71dcd7834
https://codereview.chromium.org/2984363003

Also had to revert some test changes that were committed on top of a red buildbot, in order to try to get back to a place where bots were green:

23952fdf56
https://codereview.chromium.org/2990773002
557cab2a3e
https://codereview.chromium.org/2985173002

R=johnniwinther@google.com, karlklose@google.com
BUG=

Review-Url: https://codereview.chromium.org/2986093002 .
2017-07-28 14:08:23 +02:00
Erik Corry f71dcd7834 Reinstate config line erroneously removed from test status file
This is a fix for a change in https://codereview.chromium.org/2990773002
R=karlklose@google.com
BUG=

Review-Url: https://codereview.chromium.org/2984363003 .
2017-07-28 11:33:49 +02:00
Bob Nystrom 302b410364 Migrate missed file.
It's using a helper library that was migrated, so this should fix the
red bots.

Review-Url: https://codereview.chromium.org/2984343002 .
2017-07-27 16:22:16 -07:00
Bob Nystrom 23952fdf56 Migrate language/arithmetic2_test ... language/async_await_syntax_test.
R=sra@google.com

Review-Url: https://codereview.chromium.org/2990773002 .
2017-07-27 16:13:47 -07:00
Bob Nystrom 557cab2a3e Migrate language/async_backwards... ... language/async_star_take...
R=bkonyi@google.com

Review-Url: https://codereview.chromium.org/2985173002 .
2017-07-27 15:48:30 -07:00
Erik Ernst bb8d6ed680 Added status for syntax_test/none.
Other tools had this status entry, but dartk/dartkp were omitted. In
all cases, the change is needed because the allowed usages of `void`
have been relaxed, but most tools do not support that yet.

R=floitsch@google.com

Review-Url: https://codereview.chromium.org/2984273002 .
2017-07-27 14:03:07 +02:00
Erik Ernst 9336e199fd Re-land of CL 2990703002, adding fixes to analyzer_test and error_test.
This CL is identical to the reverted CL 2990703002 which implements
syntactic support for generalized void in the analyzer, plus two bug
fixes in pkg/analyzer/test/generated/parser_test.dart and
pkg/analyzer_cli/test/error_test.dart. In the former, a test on parsing
`void,` was changed to expect an error: _isTypeIdentifier on a lone
`void` will no longer return true, which is necessary because `void`
can now be used as a type annotation alone. Another test on `void x`
was added, which produces the behavior previously seen for `void,`.
In error_test, the error which is used throughout was changed from
`void foo;` to `var int foo;` (because the former is no longer an
error).

Review-Url: https://codereview.chromium.org/2992623002 .
2017-07-27 12:39:19 +02:00
Siva Annamalai 8751f704d5 Remove references to 'dartium' and 'drt' in status files.
R=bkonyi@google.com

Review-Url: https://codereview.chromium.org/2986693002 .
2017-07-26 15:59:38 -07:00
Erik Ernst 2e73ce1187 Revert "Implemented support for generalized void in analyzer."
This reverts commit 1d44f5296a,
because it causes failures for the analyzer in parser_test, error_test.

Review-Url: https://codereview.chromium.org/2990723002 .
2017-07-26 18:18:04 +02:00
Erik Ernst 1d44f5296a Implemented support for generalized void in analyzer.
Changed the analyzer parser to accept usages of `void` which were
previously rejected as syntax errors: `void` can now be the type
annotation for a variable or parameter, and it can be an actual type
argument.

Removed affected error codes like VOID_PARAMETER, VOID_VARIABLE,
VOID_RETURN_FOR_GETTER and associated declarations (like checking
functions), and adjusted test cases to expect success rather than
compile time errors.

Adjusted generalized_void_syntax_test.dart (it had real errors like
`final` variables with no initializer etc. that were not detected
when tools would just reject the file as syntactically wrong).

R=brianwilkerson@google.com

Review-Url: https://codereview.chromium.org/2990703002 .
2017-07-26 17:45:13 +02:00
Stephen Adams af56ba7b19 dart2js-kernel: Recognize some List constructors.
BUG=
R=sigmund@google.com

Review-Url: https://codereview.chromium.org/2984183002 .
2017-07-25 16:31:19 -07:00
Sigmund Cherem d212ecc27b Temporarily skip tests with --use-sdk (at this time, tests are being run in bots that are not building the sdk from scratch)
TBR=sra@google.com

Review-Url: https://codereview.chromium.org/2989663002 .
2017-07-25 13:54:00 -07:00
Alexander Markov 277f22329f Adjust some tests for limited 64-bit integers
In preparation for limiting Dart integers to 64 bits, certain tests
are corrected to avoid large integer literal or computations with
overflow.

R=zra@google.com

Issue: https://github.com/dart-lang/sdk/issues/30103
Review-Url: https://codereview.chromium.org/2988803002 .
2017-07-25 13:19:30 -07:00
Sigmund Cherem 09009ad6e9 Fix bots: partial support for --use-sdk (assumes
out/ReleaseX64/patched_dart2js_sdk exists), add .status entries for 'minified'

R=sra@google.com

Review-Url: https://codereview.chromium.org/2991683002 .
2017-07-25 09:13:19 -07:00
Sigmund Cherem 09ff1b56f7 Add support for compiling Dart via the FE in dart2js.
This also:
 - replaces --use-kernel with --use-kernel-in-ssa
 - replaces --load-dill with --use-kernel
 - makes --use-kernel support both: compiling from .dill or from .dart
 - change the default of other options that are currently disabled when --use-kernel is on.
 - adds .status lines for all tests in language/corelib/dart2js_extra/dart2js_native

R=efortuna@google.com

 Note: this CL is built on top of another change
 (https://codereview.chromium.org/2981403002/) that adds preview_dart_2 to
 test.dart
Review-Url: https://codereview.chromium.org/2989453002 .
2017-07-24 17:10:11 -07:00
Alexander Markov 203955bc48 Reapply "Improve hashCode for closure objects" with fixes.
This CL includes the following fixes:
* Fix for incorrect non-nullable assumption about _Closure._hash field.
* Add error handling into BecomeMapTraits::Hash.
* Correct assertions for validating layout of Closure objects.
* Add identityHashCode to the list of VM entry points in precompiler.

Closes #30211.

Original code review:

https://codereview.chromium.org/2983823002/

Original CL description:

This performance improvement is inspired by Flutter listeners stored in
the HashSet (see ObserverList) and frequently checked using
HashSet.contains(). If there are many such listeners and they are
implicit instance closures (for example, created by
'new Listenable.merge(...)'), HashSet.contains() becomes very slow.
It spends a lot of time in Closure_equals native method due to hash
collisions between closure objects with same function
but different receivers.

This CL improves hashCode() calculation for implicit instance closures
by mixing function hashcode with identity hashcode of the receiver.
For explicit closures and static implicit closures hashCode() is
improved by using identityHashCode() of a closure object.

Also, hashcode is calculated once and cached in each closure instance.
The size of a closure instance doesn't grow up because there was unused
word-size padding both on 32-bit and 64-bit architectures.

The execution time of the following micro-benchmark is reduced from
47665ms to 135ms on my Linux/x64 box.

-------------------------------------

import "dart:collection";

class Foo {
  int _a;
  Foo(this._a);
  void bar() {}
}

main() {
  HashSet hs = new HashSet();
  for (int i = 0; i < 1000; ++i) {
    hs.add(new Foo(i).bar);
  }

  var watch = new Stopwatch()..start();

  for (int i = 0; i < 1000; ++i) {
    for (var c in hs) {
      hs.contains(c);
    }
  }

  int time = watch.elapsedMilliseconds;
  print("Time: ${time}ms\n");
}

-------------------------------------

R=zra@google.com

Review-Url: https://codereview.chromium.org/2988493002 .
2017-07-20 15:22:18 -07:00
Bob Nystrom 012774c78e Remove Dartium support from test.dart.
R=whesse@google.com

Review-Url: https://codereview.chromium.org/2981223002 .
2017-07-20 12:46:50 -07:00
Bob Nystrom 0947675d6d Migrate the language tests up to arithmetic_test.
This technically steals a few tests from the previous batch that spans
corelib and language, but I wanted to start from the top of the language
tests.

Removed application_test and application_negative_test because they are
useless and the latter has never actually worked correctly since the day
it was transliterated from the long-defunct application file syntax.

R=bkonyi@google.com, whesse@google.com

Review-Url: https://codereview.chromium.org/2984443003 .
2017-07-19 20:30:21 -07:00
Alexander Markov d9851b0cf1 Silence test bound_closure_equality_test (issue 30211)
R=asiva@google.com

Review-Url: https://codereview.chromium.org/2982283003 .
2017-07-19 18:39:11 -07:00
Siva Annamalai 33c50e9374 1. Correctly set root_library based on the application script URI instead of looking for the library that has the 'main' method.
2. Adjust the Dart front end to not require a 'main' method when the in memory filesystem is used, this allows execution of VM unit tests which all do not necessarily have a 'main' method (integrated CL from siggi)

3. Change kernel reader to not look for a 'main' methos when Dart_LoadKernel is called.

4. Change Dart_LoadScript to also support loading of dart programs when Dart front end is used

R=aam@google.com, sigmund@google.com

Review-Url: https://codereview.chromium.org/2948273002 .
2017-07-19 18:09:19 -07:00