Commit Graph

4698 Commits

Author SHA1 Message Date
Dan Rubel ec606a7874 report ExternalMethodWithBody error for native method with body
Change-Id: Ibca0cd1223ee61cafd2427d26448a1890a04aae8
Reviewed-on: https://dart-review.googlesource.com/3560
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2017-09-07 11:03:45 +00:00
Johnni Winther 68b3e9b494 Handle local invoke in inferrer
Reviewed in https://codereview.chromium.org/3008133002/

Change-Id: I65595edf34bf4774a9cadc4cb0dc9bf0572dd4df
Reviewed-on: https://dart-review.googlesource.com/3883
Reviewed-by: Morten Krogh-jespersen <mkroghj@google.com>
2017-09-07 08:28:20 +00:00
Johnni Winther c776ff8fce Handle variable set in inferrer
Reviewed in https://codereview.chromium.org/3008083002/

Change-Id: I5e597a248667bea084d75bb9f8dcb2afa40f4904
Reviewed-on: https://dart-review.googlesource.com/3443
Reviewed-by: Erik Ernst <eernst@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2017-09-06 13:11:20 +00:00
Johnni Winther 9a9d963634 Handle variable declarations in inferrer
Reviewed in https://codereview.chromium.org/3009043002/

Change-Id: I16454302f1899c68f8e816cfc26ccd3851f07ad3
Reviewed-on: https://dart-review.googlesource.com/3441
Reviewed-by: Erik Ernst <eernst@google.com>
2017-09-06 09:35:20 +00:00
Johnni Winther c48f9c171b Remove unneeded check.
Change-Id: I0de18032ee0f3ade9eb165673bae9a94f383d13b
Reviewed-on: https://dart-review.googlesource.com/3120
Reviewed-by: Stephen Adams <sra@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2017-09-06 08:09:21 +00:00
Harry Terkelsen e0a4839c3e Revert "Add types referenced in is-checks to the class hierarchy"
This reverts commit a577b303f0.

Bug:
Change-Id: I8a02bf3ef559de8af62aef9d4b7e840975bb5b47
Reviewed-on: https://dart-review.googlesource.com/3343
Reviewed-by: Harry Terkelsen <het@google.com>
2017-09-05 23:13:29 +00:00
Harry Terkelsen a577b303f0 Add types referenced in is-checks to the class hierarchy
Change-Id: Ia250501052efc051779f75f9d582c1ceaa2c78f4
Reviewed-on: https://dart-review.googlesource.com/3384
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2017-09-05 21:53:35 +00:00
Stephen Adams 080169c51a dart2js kernel: sort constants
reviewed: https://codereview.chromium.org/3011803002

TBR=sigmund@google.com

Change-Id: Ic444964c3d5995d12e4e00f0af44c175533b7291
Reviewed-on: https://dart-review.googlesource.com/3340
Reviewed-by: Stephen Adams <sra@google.com>
2017-09-05 20:30:43 +00:00
Emily Fortuna 3aa574d95d Add ability to look up type parameters that are associated with ClassEntities with the element environment.
This is the reapplication of this already approved CL: https://codereview.chromium.org/3010943002/ but now with Gerrit.

Bug:
Change-Id: I4c2204d1f76bdec4bcad993c8a11b5f003d38d77
Reviewed-on: https://dart-review.googlesource.com/3341
Reviewed-by: Stephen Adams <sra@google.com>
2017-09-05 19:36:55 +00:00
Harry Terkelsen bb312921ac Revert "Add types referenced in is-checks to the class hierarchy"
This reverts commit c8d2478747.

BUG=

Review-Url: https://codereview.chromium.org/3012733002 .
2017-09-01 15:27:28 -07:00
Harry Terkelsen c8d2478747 Add types referenced in is-checks to the class hierarchy
R=johnniwinther@google.com, sigmund@google.com

Review-Url: https://codereview.chromium.org/3011793002 .
2017-09-01 15:02:59 -07:00
Johnni Winther 49439c1412 Align synthetic mixin names with fasta.
R=sigmund@google.com

Review-Url: https://codereview.chromium.org/3007043002 .
2017-09-01 20:42:11 +02:00
Johnni Winther 5d96c36a4a Encapsulate the index based maps for entities.
R=sigmund@google.com

Review-Url: https://codereview.chromium.org/3004433002 .
2017-09-01 20:15:54 +02:00
Emily Fortuna b1dd578da7 Don't try to add abstract methods to the codegen work queue to generate bodies
BUG=
R=johnniwinther@google.com, sigmund@google.com

Review-Url: https://codereview.chromium.org/3012683002 .
2017-09-01 10:21:03 -07:00
Johnni Winther 374df045e7 Handle forwarding constructors to unnamed mixin applications
+ handle instance fields from mixins
+ change class sorting to put unnamed mixin applications last

R=sigmund@google.com

Review-Url: https://codereview.chromium.org/3005823002 .
2017-09-01 19:07:02 +02:00
Emily Fortuna ea038bd8e0 Pass in this as a free variable to the closure class
BUG=
R=johnniwinther@google.com

Review-Url: https://codereview.chromium.org/3009903002 .
2017-08-31 10:41:19 -07:00
Johnni Winther 40858f5f50 Handle switch continue
R=sigmund@google.com

Review-Url: https://codereview.chromium.org/3007783004 .
2017-08-31 12:32:01 +02:00
Harry Terkelsen b3ce4a88e6 Use the entity model for dump_info.
This changes dump_info to use the entity model and the visit methods in
ElementEnvironment. This way, once the Kernel implementation of
ElementEnvironment is fully implemented, dump_info should *just work*
with the common front end.

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

Review-Url: https://codereview.chromium.org/3008793002 .
2017-08-30 15:26:11 -07:00
Harry Terkelsen 08abc8db75 Delete dart2js_resolver and fix some typos in README
BUG=
R=sigmund@google.com

Review-Url: https://codereview.chromium.org/3009813002 .
2017-08-30 11:05:08 -07:00
Johnni Winther 543111261f Prepare for handling super noSuchMethod
R=sigmund@google.com

Review-Url: https://codereview.chromium.org/3007523003 .
2017-08-30 11:51:59 +02:00
Johnni Winther 8c6c2c4bfc Handle assert_test without useKernelInSsa
R=sigmund@google.com

Review-Url: https://codereview.chromium.org/3009483002 .
2017-08-30 11:37:32 +02:00
Johnni Winther 3f0c2d4bb3 Handle missing break in last switch case
R=sigmund@google.com

Review-Url: https://codereview.chromium.org/3003283003 .
2017-08-30 11:32:20 +02:00
Johnni Winther ea293ae267 Use memory source files in compile_from_dill*
R=sigmund@google.com

Review-Url: https://codereview.chromium.org/3007443002 .
2017-08-30 11:01:05 +02:00
Johnni Winther 583d3c5e84 Support --use-kernel in memory_compiler
- and start using it to deprecate --use-kernel-in-ssa

R=sigmund@google.com

Review-Url: https://codereview.chromium.org/2997413002 .
2017-08-30 10:42:09 +02:00
Emily Fortuna 98e36f719e Add boxing for modified variables
BUG=
R=sra@google.com

Review-Url: https://codereview.chromium.org/3007743002 .
2017-08-29 16:27:28 -07:00
Stephen Adams 4449ec4f89 dart2js kernel: Handle ir.LocalInitializer
BUG=
R=sigmund@google.com

Review-Url: https://codereview.chromium.org/3009803003 .
2017-08-29 15:45:37 -07:00
Johnni Winther 563282bf2c Remove use of Compiler in inferrer engines.
R=sigmund@google.com

Review-Url: https://codereview.chromium.org/3004713002 .
2017-08-29 12:01:26 +02:00
Johnni Winther a92088997f Handle int/double literals in inference
R=sigmund@google.com

Review-Url: https://codereview.chromium.org/3009693002 .
2017-08-29 10:41:30 +02:00
Johnni Winther d82a8fdb6b Add tests for list and async marker
R=sigmund@google.com

Review-Url: https://codereview.chromium.org/3009633002 .
2017-08-29 10:18:35 +02:00
Johnni Winther 7d9dd35f1c It's alive (first kernel inference test)
R=sigmund@google.com

Review-Url: https://codereview.chromium.org/3009593002 .
2017-08-29 10:12:49 +02:00
Johnni Winther 65956edb23 Use KernelTypeGraphBuilder in KernelInferrerEngine
+ parameterization of LocalsHandler and friends.

R=sigmund@google.com

Review-Url: https://codereview.chromium.org/3002313002 .
2017-08-29 09:59:30 +02:00
Stephen Adams 043708d48c Avoid Element-only assertions in generateParameterStubs
TBR=johnniwinther@google.com

Review-Url: https://codereview.chromium.org/3008753002 .
2017-08-28 21:23:19 -07:00
Sigmund Cherem cf19b1e5aa Update defer loading algorithm:
On a large app this cuts the algorithm time in half.

BUG=
R=sra@google.com

Review-Url: https://codereview.chromium.org/2997233002 .
2017-08-28 16:44:22 -07:00
Emily Fortuna 63754bba71 Add more tests for closures and change closure indexing to be by FunctionExpression or FunctionDeclaration rather than FunctionNode.
BUG=
R=sigmund@google.com

Review-Url: https://codereview.chromium.org/3003963002 .
2017-08-28 14:24:58 -07:00
Emily Fortuna fba36729ec Revert "Revert "Reduce use of getClosureInfoForMember and cleanup closure_test""
This reverts commit e94ff86b2b.

Reapply Johnni's change with the status file updates.

BUG=

Review-Url: https://codereview.chromium.org/3008603002 .
2017-08-25 18:14:34 -07:00
Emily Fortuna e94ff86b2b Revert "Reduce use of getClosureInfoForMember and cleanup closure_test"
I tried to land  https://codereview.chromium.org/2998113002/ on behalf
of Johnni, but it wouldn't let me update the status files, and this
change modifies status files. Reverting.

This reverts commit 6b3f8665c0.

BUG=

Review-Url: https://codereview.chromium.org/3011433002 .
2017-08-25 17:57:51 -07:00
Emily Fortuna 6b3f8665c0 Reduce use of getClosureInfoForMember and cleanup closure_test
R=efortuna@google.com

Review-Url: https://codereview.chromium.org/2998113002 .
2017-08-25 17:48:14 -07:00
Emily Fortuna edd1ebfd6d Adding JRecord and boxing mechanics.
Well, this introduces a few currently unused classes, but I'm trying to break the other CL up to figure out the source of the problem.

BUG=
R=sra@google.com

Review-Url: https://codereview.chromium.org/3006653003 .
2017-08-25 17:11:52 -07:00
Stephen Adams 5865a13c44 dart2js kernel: update tryInlineNativeMethod to Entities
R=efortuna@google.com

Review-Url: https://codereview.chromium.org/2998413002 .
2017-08-25 16:13:38 -07:00
Johnni Winther 0b643a69c4 Support enabling of type inference with useKernel
R=sigmund@google.com

Review-Url: https://codereview.chromium.org/3004593002 .
2017-08-25 18:57:28 +02:00
Johnni Winther 69c233d8e2 Handle labelled continue statements
R=sigmund@google.com

Review-Url: https://codereview.chromium.org/3009463002 .
2017-08-25 09:24:23 +02:00
Johnni Winther ec20927933 Remove KernelToLocalsMap.getLocalFunction
R=efortuna@google.com

Review-Url: https://codereview.chromium.org/3000233002 .
2017-08-24 09:40:18 +02:00
Stephen Adams 83ea082dd3 Redo "dart2js-kernel: implement native static methods"
BUG=

Review-Url: https://codereview.chromium.org/2995293002 .
2017-08-23 14:06:20 -07:00
Dan Rubel 69e9106ead improve fasta export directive recovery
R=ahe@google.com

Review-Url: https://codereview.chromium.org/3001993002 .
2017-08-22 16:52:23 -04:00
Dan Rubel d1385f099f support class native clause
R=ahe@google.com

Review-Url: https://codereview.chromium.org/2996163002 .
2017-08-22 07:42:56 -04:00
Johnni Winther 1658036b05 Share locals between members
R=efortuna@google.com

Review-Url: https://codereview.chromium.org/2995113002 .
2017-08-21 15:02:10 +02:00
Johnni Winther 3c8096e040 Split getClosureRepresentationInfo into MemberEntity and (ir/ast) nodes
R=efortuna@google.com

Review-Url: https://codereview.chromium.org/3002953002 .
2017-08-19 10:36:49 +02:00
Johnni Winther 6b36ecefe7 Handle labelled breaks
Closes #30492

R=sigmund@google.com

Review-Url: https://codereview.chromium.org/3001233002 .
2017-08-19 10:10:48 +02:00
Stephen Adams bda3b1451d Revert "dart2js-kernel: implement native static methods"
This reverts commit 1206111dea.

Has analyzer warnings that I will fix after the sun comes back out.

TBR=sigmund@google.com
BUG=

Review-Url: https://codereview.chromium.org/3003003002 .
2017-08-18 22:20:41 -07:00
Stephen Adams 1206111dea dart2js-kernel: implement native static methods
TBR=sigmund@google.com

Review-Url: https://codereview.chromium.org/2997253002 .
2017-08-18 19:40:51 -07:00