Commit Graph

35786 Commits

Author SHA1 Message Date
Konstantin Shcheglov ca5bf28fa5 Chain SummaryResynthesizer(s).
R=paulberry@google.com
BUG=

Review URL: https://codereview.chromium.org/1585093003 .
2016-01-14 14:43:29 -08:00
Asger Feldthaus fb0330df46 dart2js cps: Improve constant folding of equality operators.
Previously we would only fold comparisons between primitive constants, missing out on e.g. the list sentinel comparisons.

BUG=
R=sra@google.com

Review URL: https://codereview.chromium.org/1583993005 .
2016-01-14 14:01:20 -08:00
Brian Wilkerson d8df717622 Add list length information to the status pages
R=scheglov@google.com

Review URL: https://codereview.chromium.org/1588083003 .
2016-01-14 13:53:53 -08:00
John Messerly 9098ae50ae fix #25425, more inference of generic methods
this adds support for function expr invocation, as well as other element types besides executable elements

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

Review URL: https://codereview.chromium.org/1586813002 .
2016-01-14 13:27:34 -08:00
John Messerly 724492ca82 fixes #25340, propagatedType now finds the instantiated generic method's return type
R=brianwilkerson@google.com, leafp@google.com

Review URL: https://codereview.chromium.org/1582863003 .
2016-01-14 13:20:13 -08:00
John Messerly 154959c762 fixes #25407, generic list and map literal type comments
R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org/1589663002 .
2016-01-14 13:18:59 -08:00
Asger Feldthaus 1b9a7e0be5 dart2js cps: Avoid comparing boolean values to boolean constants.
E.g. (x === true) can be replaced with x if x is a boolean.

Box2D has some code where this happens.

BUG=
R=kmillikin@google.com, sra@google.com

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

Review URL: https://codereview.chromium.org/1588813002 .
2016-01-14 13:01:31 -08:00
Asger Feldthaus 2680d9ab04 Revert "dart2js cps: Avoid comparing boolean values to boolean constants."
This reverts commit dd8ba75909.

BUG=

Review URL: https://codereview.chromium.org/1590523004 .
2016-01-14 12:55:42 -08:00
Asger Feldthaus dd8ba75909 dart2js cps: Avoid comparing boolean values to boolean constants.
E.g. (x === true) can be replaced with x if x is a boolean.

Box2D has some code where this happens.

BUG=
R=kmillikin@google.com, sra@google.com

Review URL: https://codereview.chromium.org/1588813002 .
2016-01-14 12:28:16 -08:00
danrubel 559fb01244 assert isAsynchronous and isGenerator false if parseAsync is false
and fix ASYNC_NOT_SUPPORTED error code

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

Review URL: https://codereview.chromium.org/1584823003 .
2016-01-14 14:52:23 -05:00
danrubel ebd1736c58 Add EmbedderSdk to EmbedderUriResolver
R=brianwilkerson@google.com, johnmccutchan@google.com, pquitslund@google.com

Review URL: https://codereview.chromium.org/1584663006 .
2016-01-14 14:51:43 -05:00
Harry Terkelsen ba83822ca3 dart2js: clean up status file
BUG=
R=sigmund@google.com

Review URL: https://codereview.chromium.org/1589073002 .
2016-01-14 11:19:16 -08:00
Brian Wilkerson 1e9326d13f Add tests for computation of constant expressions involving ??
R=paulberry@google.com

Review URL: https://codereview.chromium.org/1589043002 .
2016-01-14 10:55:21 -08:00
Asger Feldthaus 2dd2a0d3f7 dart2js cps: Remove redundant traversal from variable merger pass.
This was a leftover from when we had nested functions in the IR.

BUG=
R=kmillikin@google.com

Review URL: https://codereview.chromium.org/1582033002 .
2016-01-14 10:52:58 -08:00
Asger Feldthaus 2bd0de209c dart2js cps: Use dartArgumentsLength instead of arguments.length
BUG=
R=sra@google.com

Review URL: https://codereview.chromium.org/1589643004 .
2016-01-14 10:51:24 -08:00
Asger Feldthaus 27e2977dc7 dart2js cps: Fix traversal order in statement rewriter.
The statement rewriter uses a backward traversal, but the visitor for
yield and logical operator did not follow this order.

Fixes #25460

BUG=
R=het@google.com

Review URL: https://codereview.chromium.org/1584253003 .
2016-01-14 10:49:41 -08:00
Konstantin Shcheglov 659c9b44e2 Mark analyzer/test/file_system/physical_resource_provider_test as Pass, Fail.
R=brianwilkerson@google.com, whesse@google.com
BUG=

Review URL: https://codereview.chromium.org/1581963009 .
2016-01-14 10:28:46 -08:00
Paul Berry ba31abe429 Use constructor args in favor of summary "encode" functions.
R=scheglov@google.com

Review URL: https://codereview.chromium.org/1585973004 .
2016-01-14 09:30:04 -08:00
Konstantin Scheglov 8b3dd51480 Merge pull request #25406 from jimbeveridge/patch-1
Add tutorial in the README
2016-01-14 09:23:50 -08:00
William Hesse 84d7fd63f0 Update status of two analyzer tests.
BUG=https://github.com/dart-lang/sdk/issues/25471
BUG=https://github.com/dart-lang/sdk/issues/25470
R=ricow@google.com

Review URL: https://codereview.chromium.org/1588673005 .
2016-01-14 17:41:59 +01:00
Konstantin Shcheglov 9484bfe1c9 Issue 25064. Incrementally resolve comments only if both are documentation.
R=brianwilkerson@google.com, skybrian@google.com
BUG= https://github.com/dart-lang/sdk/issues/25064

Review URL: https://codereview.chromium.org/1581293002 .
2016-01-14 08:38:37 -08:00
Ivan Posva 7b75f2dbb7 - Allow specifying of package: URIs for packageConfig and packageRoot when
spawning a new isolate.

BUG=
R=rmacnak@google.com

Review URL: https://codereview.chromium.org/1586653003 .
2016-01-14 08:20:59 -08:00
Lasse R.H. Nielsen 2d44ed69e9 Implement (partially) ?? being compile-time constant in analyzer.
R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org/1577293002.
2016-01-14 16:17:52 +01:00
Søren Gjesse 4e35dd3b05 Update changelog with information on WebSocket compression
Closes #24980

BUG= https://github.com/dart-lang/sdk/issues/24980
R=mit@google.com

Review URL: https://codereview.chromium.org/1587043002 .
2016-01-14 15:55:24 +01:00
Lasse R.H. Nielsen 0083cf8439 Change Platform.isiOS to isIOS.
R=rnystrom@google.com

Review URL: https://codereview.chromium.org/1583763002 .
2016-01-14 11:14:59 +01:00
Søren Gjesse a72ddf3a9d Resolve issues with websocket compression.
Always reuse encoder/decoder otherwise we send partial frames before
all data is added properly. Also reduces redundant allocations.

Websocket: Only set compression flag if not a continuation frame

Continuation frames should inherit compression settings from
previous frame.

BUG=#25317

Patch by Matthew Butler <butler.matthew@gmail.com>.

R=sgjesse@google.com

Review URL: https://codereview.chromium.org/1579343003 .
2016-01-14 10:44:37 +01:00
Stephen Adams 1aab83e6dd Add cleanup ShrinkingReducer pass after second TypePropagation pass.
The need for cleanup shows up in
co19/LibTest/collection/DoubleLinkedQueue/forEachEntry_A01_t02

The compiler crashed: Internal Error: Unreachable continuations must be removed before computing loop side effects.

TBR=asgerf@google.com

Review URL: https://codereview.chromium.org/1586943002 .
2016-01-13 22:10:42 -08:00
Stephen Adams 5d728e9b6e Add new cps_ir test omitted from last cl
BUG=

Review URL: https://codereview.chromium.org/1589503003 .
2016-01-13 20:19:16 -08:00
Stephen Adams a56036b0a3 Do TypePropagation again after inlining
R=asgerf@google.com

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

Reverted.

Review URL: https://codereview.chromium.org/1560963002 .
2016-01-13 20:03:47 -08:00
Alan Knight 87c1bb4b39 Add autofocus to the Html5NodeValidator list of standard attributes for <input>
BUG=

Review URL: https://codereview.chromium.org/1588773002 .
2016-01-13 17:19:00 -08:00
Ryan Macnak 5579786161 Don't suppress compile-time errors when inlining.
When precompiling, it is possible to encounter a compile-time
error when inlining because the target never went through unoptimized
compilation or optimized compilation where it was the root function. Some checks
for compile-time errors are not idemponent because have they have
side-effects: in particular, the checks for a cyclic redirecting factory or
const expressions that have a runtime error may not trigger the second
time they are parsed.

R=fschneider@google.com

Review URL: https://codereview.chromium.org/1568613007 .
2016-01-13 17:10:48 -08:00
Siva Annamalai 8359b9e20c Do not include resolved_names_ and loaded_scripts_ consistently in both the full and script snapshots. Initialize the resolved names cache correctly in both cases when reading the snapshot.
This reduces the isolate snapshot size from 255324 to 249714.

R=hausner@google.com

Review URL: https://codereview.chromium.org/1588783002 .
2016-01-13 16:42:29 -08:00
Ryan Macnak 2ebe6f459e VM: Don't do free("") in shutdown when we can't find the cpu model field in /proc/cpuinfo.
Also fix field names of /proc/cpuinfo for Linux ARM64.

BUG=http://dartbug.com/25424
R=zra@google.com

Review URL: https://codereview.chromium.org/1586663005 .
2016-01-13 16:37:29 -08:00
Stephen Adams bec587aaf3 Revert "Do TypePropagation again after inlining"
Tests need to be updated.

TBR=asgerf@google.com

Review URL: https://codereview.chromium.org/1588723003 .
2016-01-13 15:45:33 -08:00
Stephen Adams 9392a2ece9 Do TypePropagation again after inlining
R=asgerf@google.com

Review URL: https://codereview.chromium.org/1560963002 .
2016-01-13 15:32:13 -08:00
Harry Terkelsen 22200410c0 dart2js: update pubspec
BUG=
R=sigmund@google.com

Review URL: https://codereview.chromium.org/1582923002 .
2016-01-13 15:01:05 -08:00
Asger Feldthaus add29e3cba dart2js cps: Do redundant join elimination after inlining.
Redundant join elimination can enable optimizations in GVN and BCE, and
redundant joins can occur after inlining a method used in a condition,
such as isEmpty or isNotEmpty.

BUG=
R=het@google.com

Review URL: https://codereview.chromium.org/1581593004 .
2016-01-13 14:17:48 -08:00
Paul Berry 834263789f Include the export namespace in the prelinked summary.
This prevents having to traverse the transitive closure of exports
when resynthesizing a library from its summary.

R=scheglov@google.com

Review URL: https://codereview.chromium.org/1589573003 .
2016-01-13 13:16:23 -08:00
Stephen Adams 9db58343b3 dart2js cps: for(;;) is shorter than while(true)
R=asgerf@google.com

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

Reverted.

Review URL: https://codereview.chromium.org/1584693003 .
2016-01-13 12:57:13 -08:00
Brian Slesinsky 730d962729 add an option to send the incremental resolver log to stderr
BUG=
R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org/1585563002 .
2016-01-13 12:55:13 -08:00
Paul Berry 51f8e5f82a Verify that import prefixes don't shadow exports.
R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org/1585753002 .
2016-01-13 12:45:21 -08:00
Stephen Adams 33056a1ab8 Revert "dart2js cps: for(;;) is shorter than while(true)"
There are some tests I should have updated.

TBR=asgerf@google.com

Review URL: https://codereview.chromium.org/1582103002 .
2016-01-13 12:35:00 -08:00
Kevin Millikin 5c2125c9af dart2js: Flatten the printed representation of the CPS IR.
BUG=
R=sigmund@google.com

Review URL: https://codereview.chromium.org/1588543003 .
2016-01-13 20:59:57 +01:00
John Messerly f114dc1073 fix #25409, error if a generic method argument did not have a corresponding parameter
R=leafp@google.com

Review URL: https://codereview.chromium.org/1579503005 .
2016-01-13 11:20:13 -08:00
Regis Crelier ca1d105c5a Fix finalization of recursive type graph with bounds (issue 25389).
Add regression test.
Rename malformed_error to bound_error.
Fix internal name of bounded type (broken by a previous cl).

R=rmacnak@google.com

Review URL: https://codereview.chromium.org/1580643004 .
2016-01-13 11:19:14 -08:00
William Hesse ecd3129c25 Update status for co19 test that times out.
BUG=

Review URL: https://codereview.chromium.org/1582073002 .
2016-01-13 20:12:58 +01:00
John Messerly 5947a2047f associate a staticInvokeType with loadLibrary
I missed this early-exit code path. This was caught by DDC's tests.

R=leafp@google.com

Review URL: https://codereview.chromium.org/1577143002 .
2016-01-13 10:40:03 -08:00
Zachary Anderson ebbd05a8b2 Marks spawn_shutdown_test Pass, Slow for debug builds.
The test is timing out on the Debug windows bot, but always finishes for
me locally even under load. If it continues to timeout even when marked
Slow, I will investigate more locally.

R=asiva@google.com

Review URL: https://codereview.chromium.org/1585733002 .
2016-01-13 10:38:39 -08:00
Stephen Adams dbb96bac32 dart2js cps: for(;;) is shorter than while(true)
R=asgerf@google.com

Review URL: https://codereview.chromium.org/1584693003 .
2016-01-13 10:25:41 -08:00
Stephen Adams 2bae30eb27 Initialize _BroadcastSubscription._eventState to permit inference of non-null value
BUG=
R=floitsch@google.com

Review URL: https://codereview.chromium.org/1576153005 .
2016-01-13 10:24:49 -08:00