Commit Graph

1846 Commits

Author SHA1 Message Date
Erik Ernst f234278474 Status updates required after CL 2141023002.
Review URL: https://codereview.chromium.org/2524363004 .
2016-11-25 12:16:49 +01:00
Erik Ernst 4912fd1501 Make initializing formal access available by default
This CL changes dart2js such that the effect that we used to get with
option '--initializing-formal-access' is now obtained unconditionally,
i.e., that extension is now enabled by default.

dart2js will continue to accept the option, such that scripts passing
the option will not break.

The CL is _not_ intended to be landed at this time, the plan is to
enable the feature in a coordinated manner when all tools are ready.

R=johnniwinther@google.com

Review URL: https://codereview.chromium.org/2141023002 .
2016-11-25 10:15:21 +01:00
Regis Crelier 21b6f8904c Fix dartium build (test now passes).
Review URL: https://codereview.chromium.org/2523753002 .
2016-11-22 08:49:11 -08:00
John McCutchan 547b8f42ae Mark override_field_methodX_negative_tests as failing on reload bots
BUG=

Review URL: https://codereview.chromium.org/2514463002 .
2016-11-17 08:41:59 -08:00
John McCutchan 2e197df37d Rehash canonical constants table for each class that can be affected by the 'become' operation
Fixes #27803

Rehashing all classes canonical constant's takes 3milliseconds for gallery on an Nexus 7.

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

Review URL: https://codereview.chromium.org/2497673004 .
2016-11-17 07:41:24 -08:00
Siva Annamalai 662723b5e8 Adjust status file for another case of https://github.com/dart-lang/sdk/issues/27803
BUG=
R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org/2497543004 .
2016-11-11 12:59:23 -08:00
Florian Schneider 3c6d13c33e DBC: Fix fast-path allocation with type arguments
The type arguments were overwritten with null -- move their initialization
to the end instead.

Fixes #27733.

R=vegorov@google.com

Review URL: https://codereview.chromium.org/2479463003 .
2016-11-03 14:52:10 +01:00
Florian Schneider 44418359e0 DBC: Handle constants correctly in the optimizing backend
We don't always allocate a register for constants in optimized code. Instead
they are copied into registes as needed by parallel moves at the use site.

Fixes #27731.

R=vegorov@google.com

Review URL: https://codereview.chromium.org/2477653002 .
2016-11-03 12:24:05 +01:00
Ryan Macnak d5580f3b00 Fix unaligned access to TypedData from native code.
Split unaligned access test and mark the float half as failing on Android.

R=zra@google.com

Review URL: https://codereview.chromium.org/2473553002 .
2016-11-02 15:53:26 -07:00
Ryan Macnak d8bb15f915 Mark failing DBC tests.
Issue #27731
Issue #27732
Issue #27733

R=zra@google.com

Review URL: https://codereview.chromium.org/2465253007 .
2016-11-02 15:28:57 -07:00
John McCutchan d62e41fcea Use old assertion text script in precompiled mode
BUG=
R=fschneider@google.com

Review URL: https://codereview.chromium.org/2466533003 .
2016-10-31 09:13:55 -07:00
Florian Schneider a74262c0e9 Enable now-passing tests for Android precompilation
Remove other obsolete entries.

Fixes #26373.
Fixes #27378.

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

Review URL: https://codereview.chromium.org/2431163007 .
2016-10-21 12:16:47 -07:00
Erik Ernst b5d2b38aa3 Relaxes treatment of method type parameter in as expressions.
This CL changes the semantics of `dart2js --generic-method-syntax`
generated code for `e as T` where `T` is a method type parameter.

The old behavior was to raise a `TypeError` at runtime when such an
expression was evaluated. The new behavior is to consider `T` as an
alias for `dynamic`, i.e., `e as T` will then always succeed.

Addresses part of issue 27460, omits a part that is not yet agreed upon.

R=johnniwinther@google.com

Review URL: https://codereview.chromium.org/2388843002 .
2016-10-18 11:11:44 +02:00
Florian Schneider 1ebde18da6 Fix and dedup entries in language.status.
Correct mistakes from my previous CL and simplifications.

TBR=rmacnak@google.com,
BUG=

Review URL: https://codereview.chromium.org/2412323004 .
2016-10-13 14:49:27 -07:00
Florian Schneider 701b91eb31 VM: Save one bool when serializing library prefixes.
When loading a snapshot all library prefixes should be considered not
loaded. This makes code running from a JIT snapshot throw the correct
error when using a deferred prefix before it is loaded.

Also, update test status and avoid skipping tests.

BUG=
R=rmacnak@google.com

Review URL: https://codereview.chromium.org/2416963003 .
2016-10-13 13:36:19 -07:00
Florian Schneider d9b1bc93af Fix product mode noSuchMethod with library prefix.
Update analyzer status of test that has a static warning expected.

BUG=
R=asiva@google.com

Review URL: https://codereview.chromium.org/2413033003 .
2016-10-12 19:10:27 -07:00
Florian Schneider a292de544f DBC: Support large offsets in optimized field access.
Added two new bytecodes: LoadFieldExt, StoreFieldExt that
store the field offset in the following nop-instruction that
is skipped.  This allows offsets up to 16 bit.

BUG=
R=zra@google.com

Review URL: https://codereview.chromium.org/2399333003 .
2016-10-07 14:03:34 -07:00
Ryan Macnak 46bd89847b Mark language/number_identity_test as passing with app jit snapshots.
Review URL: https://codereview.chromium.org/2406543002 .
2016-10-07 11:19:25 -07:00
Ryan Macnak 1cba150307 Fix bad canonicalization for strings whose utf32->utf16 conversion is lossy.
Changes String::Equals(utf32) from string.AsUtf32().Equals(utf32) to string.Equals(utf32.AsUtf16()).

Fixes #27433.

R=hausner@google.com

Review URL: https://codereview.chromium.org/2400523003 .
2016-10-06 16:16:51 -07:00
Konstantin Shcheglov 26cc95d8b4 Issue 27515. Report DUPLICATE_PART when the same library contains two part directives with the same URI.
R=brianwilkerson@google.com, paulberry@google.com
BUG= https://github.com/dart-lang/sdk/issues/27515

Review URL: https://codereview.chromium.org/2401463004 .
2016-10-06 11:28:05 -07:00
Erik Ernst 2a08f36ff8 Updating status file to fix issue with 1c7e4d8.
Review URL: https://codereview.chromium.org/2394863002 .
2016-10-05 16:46:13 +02:00
Matthias Hausner 43e338d437 Treat generic method parameters as dynamic in all contexts in the VM (fixes #27460)
Review URL: https://codereview.chromium.org/2383993002 .
2016-10-03 09:11:34 -07:00
Siva Annamalai bb02e814dc Skip string_literals_test (see Issue 27433)
BUG=

Review URL: https://codereview.chromium.org/2377563002 .
2016-09-26 21:03:27 -07:00
Lasse R.H. Nielsen caf208a543 Make StreamIterator not delay pausing between requests.
The current implementation of StreamIterator has a one-element buffer which
allows it listen for the next even eagerly, and only pause if consumption
doesn't keep up with production.
However, StreamIterator is also used by both VM and dart2js implementations
of "await for", and according to the specification, the iterated stream
must be paused between loop iterations.

The CL removes the one-element buffer and forces a pause after each event.

R=floitsch@google.com

Review URL: https://codereview.chromium.org/2149893002 .
2016-09-26 09:35:46 +02:00
Regis Crelier 11562f6874 Support generic method syntax (fixes #25869).
Function type parameters are parsed and resolved, but mapped to malformed types
(i.e. dynamic) until full support is implemented.

R=hausner@google.com

Review URL: https://codereview.chromium.org/2349593003 .
2016-09-19 15:17:33 -07:00
Terry Lucas 79f406443d Update status for expected failures in Dartium.
TBR=whesse@google.com

Review URL: https://codereview.chromium.org/2341653005 .
2016-09-15 09:38:55 -07:00
Matthias Hausner 3e60d48842 Fix parsing of generic closure formal parameter
BUG=#27299
R=regis@google.com

Review URL: https://codereview.chromium.org/2341493002 .
2016-09-13 15:11:10 -07:00
Regis Crelier 4634faa574 Add new language test for generic function parameter (filed issue #27299).
R=hausner@google.com

Review URL: https://codereview.chromium.org/2333973002 .
2016-09-13 09:24:57 -07:00
Lasse R.H. Nielsen 64e863a5cf Mark new tests using deferred imports as crashing with hot reload.
Review URL: https://codereview.chromium.org/2335933004 .
2016-09-13 11:41:43 +02:00
Lasse R.H. Nielsen 99439a336a See: https://docs.google.com/document/d/1iEuLbDMgbB657R5aFj9EfnT6B0obzQk93Of7CfWKc00/edit#heading=h.9ixvz54wwawi
Implement assert in initializer list in VM.

R=hausner@google.com

Review URL: https://codereview.chromium.org/2002923002 .
2016-08-24 12:43:26 +02:00
Matthias Hausner 4d4ebafad3 Implement parsing support for generic functions
Take two. (This version adds status file entries for checked
tests.)

Type parameters and arguments are parsed but ignored. Proper
handling of the parameters will be added subsequently.

The feature must be enabled with --generic-method-syntax.

Compiling all of dart2js consumes about 2.2% more tokens with
this change, due to the necessary lookahead to distinguish
generic functions from generic types.

===== with this change =========

Number of tokens:        1056691
Source length:           5850143 characters
Number of source tokens: 936226

Total tokens consumed:   3628934  <<<<<
Classes parsed:          2457
  Tokens consumed:       977999
Functions parsed:        49607
  Tokens consumed:       2430638

===== without this change ======

Number of tokens:        1056691
Source length:           5850143 characters
Number of source tokens: 936226

Total tokens consumed:   3547765 <<<<<
Classes parsed:          2457
  Tokens consumed:       942536
Functions parsed:        49607
  Tokens consumed:       2371357

(This reverts commit a1edb1766fd16b1268f3506feb7c9856b32bedfc.)

BUG= 25869

Review URL: https://codereview.chromium.org/2269693002 .
2016-08-22 10:58:55 -07:00
Matthias Hausner a1edb1766f Revert "Implement parsing support for generic functions"
This reverts commit 19af852471.

Checked tests failed. Will work on this on Monday.

TBR=asiva

Review URL: https://codereview.chromium.org/2267473002 .
2016-08-19 16:40:03 -07:00
Matthias Hausner 19af852471 Implement parsing support for generic functions
Type parameters and arguments are parsed but ignored. Proper
handling of the parameters will be added subsequently.

The feature must be enabled with --generic-method-syntax.

Compiling all of dart2js consumes about 2.2% more tokens with
this change, due to the necessary lookahead to distinguish
generic functions from generic types.

===== with this change =========

Number of tokens:        1056691
Source length:           5850143 characters
Number of source tokens: 936226

Total tokens consumed:   3628934  <<<<<
Classes parsed:          2457
  Tokens consumed:       977999
Functions parsed:        49607
  Tokens consumed:       2430638

===== without this change ======

Number of tokens:        1056691
Source length:           5850143 characters
Number of source tokens: 936226

Total tokens consumed:   3547765 <<<<<
Classes parsed:          2457
  Tokens consumed:       942536
Functions parsed:        49607
  Tokens consumed:       2371357

BUG=25869
R=asiva@google.com

Review URL: https://codereview.chromium.org/2260693002 .
2016-08-19 16:21:00 -07:00
Terry Lucas fa5741f325 Updated to reverted WebKit CL and updated status files to only skip the failing tests.
TBR=hausner@google.com

Review URL: https://codereview.chromium.org/2217343002 .
2016-08-05 13:17:00 -07:00
Matthias Hausner 6075a53547 Skip initializing_formal_* tests on Dartium
Apparently the VM does not get the --initializing-formal-access flag
set, which these tests need in order to pass.

TBR=terry

BUG=

Review URL: https://codereview.chromium.org/2219473002 .
2016-08-04 13:47:21 -07:00
Matthias Hausner 643fdb9dc8 Implement the language change that makes initializing formal parameters visible in the initializer list, but not in the constructor's body.
The feature is enabled with the flag --initializing-formal-access.

BUG=26655, 26656
R=regis@google.com

Review URL: https://codereview.chromium.org/2051213005 .
2016-08-04 11:24:25 -07:00
John McCutchan 268082769b Initial status file updates for $hot_reload_rollback
BUG=
R=rmacnak@google.com

Review URL: https://codereview.chromium.org/2207653002 .
2016-08-02 11:03:44 -07:00
John McCutchan 8b3a8bbe0f Update status files now that tear off closure equality works across reloads
BUG=
R=rmacnak@google.com

Review URL: https://codereview.chromium.org/2185133004 .
2016-07-28 12:42:12 -07:00
Regis Crelier 48060a653f Reverting bad fix of issue #26941.
Review URL: https://codereview.chromium.org/2179903009 .
2016-07-28 12:39:49 -07:00
Regis Crelier 093bca5909 Temporarily skip test that became flaky after fixing #26941.
Review URL: https://codereview.chromium.org/2192723002 .
2016-07-27 22:38:42 -07:00
Regis Crelier f10ce1eb69 Skip new regression test crashing when precompiled.
Review URL: https://codereview.chromium.org/2186493005 .
2016-07-27 18:31:50 -07:00
Ryan Macnak 634a62c9df DBC: Add missing deopt info after stack overflow checks.
Fixes collecting a debugger stack trace at an interrupt.

Enable most vm-service tests.

R=zra@google.com

Review URL: https://codereview.chromium.org/2183993004 .
2016-07-27 12:25:54 -07:00
John McCutchan f79756b88d Hot reload status file updates
BUG=
R=rmacnak@google.com

Review URL: https://codereview.chromium.org/2164063002 .
2016-07-20 11:02:23 -07:00
John McCutchan c692a64e5a Rework how enums are implemented and reloaded
- Enum instances now hold their index and their label. Before the labels were held in a static array to the side and the index was used to look up the label.

- Before and after reload enum instances are now paired (by label) and put into the 'become' table.

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

R=rmacnak@google.com

Review URL: https://codereview.chromium.org/2153143002 .
2016-07-15 10:52:20 -07:00
John McCutchan 6c27b6e381 Tweak for hot reload status file
Enum identity tests can sometimes pass.

BUG=

Review URL: https://codereview.chromium.org/2147183003 .
2016-07-14 07:56:56 -07:00
Todd Turnidge 77b99396e8 Disallow deferred loading when using isolate reloading.
Update status files.

BUG=
R=rmacnak@google.com

Review URL: https://codereview.chromium.org/2144113002 .
2016-07-13 15:25:06 -07:00
John McCutchan 80cca0ec0e More status file updates for reload bots
BUG=

Review URL: https://codereview.chromium.org/2146043002 .
2016-07-13 09:19:20 -07:00
Ryan Macnak cdacb9b8a2 Update status files for caching-JIT snapshots.
Review URL: https://codereview.chromium.org/2144813004 .
2016-07-12 18:31:40 -07:00
John McCutchan 09944945ab Update service.status for hot_reload
BUG=

Review URL: https://codereview.chromium.org/2142143003 .
2016-07-12 12:41:20 -07:00
John McCutchan 257bd302bb Update language.status for hot reload tests
BUG=

Review URL: https://codereview.chromium.org/2134393002 .
2016-07-11 14:40:15 -07:00