Commit Graph

4835 Commits

Author SHA1 Message Date
asgerf@google.com febb77ce10 dart2js cps: Handle optional parameters in builder.
For static invocations, default values are inlined.

For all invocations, named parameters are reordered alphabetically.

BUG=
R=karlklose@google.com

Review URL: https://codereview.chromium.org//908863003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43643 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-10 13:36:58 +00:00
floitsch@google.com ddc1701c8c dart2js: make "CREATE_JS_ISOLATE" an embedded global.
R=zarah@google.com

Review URL: https://codereview.chromium.org//868283005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43642 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-10 13:08:42 +00:00
zarah@google.com 5e0dd0affd dart2js: don't emit unneeded tear-off data in the new emitter.
R=floitsch@google.com

Review URL: https://codereview.chromium.org//910723002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43639 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-10 12:00:48 +00:00
johnniwinther@google.com 827e265786 Revert "Add sharedfrontend package"
This reverts commit r43635.

BUG=

Review URL: https://codereview.chromium.org//914613002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43637 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-10 11:32:18 +00:00
johnniwinther@google.com d7118339b5 Add sharedfrontend package
- initial element model includes Element, LibraryElement and ClassElement
- AccessSemantics moved to sharedfrontend to be utilized from both analyzer2dart and dart2js.

BUG=
R=brianwilkerson@google.com, paulberry@google.com

Review URL: https://codereview.chromium.org//898113002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43635 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-10 10:44:56 +00:00
asgerf@google.com fbf1f00690 cps2js: Bugfix in named parameters in call to superconstructor.
BUG=
R=karlklose@google.com

Review URL: https://codereview.chromium.org//909483003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43633 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-10 10:31:22 +00:00
johnniwinther@google.com 4f5b823f9b Fix yield for dart2dart minified.
BUG=

Review URL: https://codereview.chromium.org//912483005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43629 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-10 09:25:50 +00:00
johnniwinther@google.com 6fcf4caa95 Refactor handling of source map information.
BUG=
R=floitsch@google.com

Review URL: https://codereview.chromium.org//893963005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43595 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-09 15:04:00 +00:00
johnniwinther@google.com aa5e543b8b Allow sync *, async * and yield * in dart2js
BUG=http://dartbug.com/22234
R=sigurdm@google.com

Review URL: https://codereview.chromium.org//864643006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43593 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-09 14:26:03 +00:00
asgerf@google.com 990e824303 dart2dart: Fix bad type annotation in backend_ast_emitter.
Issue: https://code.google.com/p/dart/issues/detail?id=22326

R=kmillikin@google.com

Review URL: https://codereview.chromium.org//911573002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43592 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-09 12:38:20 +00:00
sigurdm@google.com 7b0bc3d220 Implementation of async-await transformation on js ast.
BUG=
R=floitsch@google.com, johnniwinther@google.com

Review URL: https://codereview.chromium.org//839323003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43591 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-09 12:02:52 +00:00
asgerf@google.com f72a18378b Revert "dart2js: Refactoring, documentation, and a few bugfixes in Namer class."
This reverts commit r43588.

BUG=

Review URL: https://codereview.chromium.org//906273002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43590 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-09 11:58:07 +00:00
asgerf@google.com c767597da3 dart2js: Refactoring, documentation, and a few bugfixes in Namer class.
See long doc comment in namer.dart.

BUG=
R=floitsch@google.com

Review URL: https://codereview.chromium.org//891673003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43588 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-09 11:31:10 +00:00
zarah@google.com c839cece99 dart2js: add constructor for directly instatiated mixin classes in the new emitter.
R=floitsch@google.com

Review URL: https://codereview.chromium.org//900423003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43553 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-06 14:27:48 +00:00
karlklose@google.com 8175ce696b Fix merge error: Call visitExpression instead of visit.
R=asgerf@google.com

Review URL: https://codereview.chromium.org//881073004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43551 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-06 11:57:30 +00:00
herhut@google.com 44541ff62b Support [AssumeDynamic] and [TrustTypeAnnotations] in the inferrer.
BUG=
R=floitsch@google.com, johnniwinther@google.com

Review URL: https://codereview.chromium.org//875163004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43550 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-06 11:38:46 +00:00
karlklose@google.com 2b8950be87 cps-ir: Implement string concatenation.
R=kmillikin@google.com

Review URL: https://codereview.chromium.org//870353004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43549 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-06 11:36:27 +00:00
karlklose@google.com 055f09c02b cps-ir: Correctly bailout on unresolved static calls.
This adds a better error message and the ability to fallback to the old backend when compiling code like this:
  main() { new foo(); }
and
  class C {}
  main() { C.foo(); }

R=asgerf@google.com, kmillikin@google.com

Review URL: https://codereview.chromium.org//879233005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43548 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-06 10:36:04 +00:00
zarah@google.com c544068f6f dart2js: add common names to mangledGlobalNames in new emitter.
R=floitsch@google.com

Review URL: https://codereview.chromium.org//897013003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43545 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-06 08:52:15 +00:00
karlklose@google.com e45aaa58e4 Move matching of arguments/selector against signature out of buildStaticInvoke.
R=sigurdm@google.com

Review URL: https://codereview.chromium.org//890663004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43544 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-06 08:32:05 +00:00
johnniwinther@google.com 9d9b462cc5 Add test annotations to package:expect
BUG=
R=floitsch@google.com, herhut@google.com

Review URL: https://codereview.chromium.org//903753002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43510 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-05 16:29:26 +00:00
karlklose@google.com ceb96ac0b7 Use type argument for abstract values.
R=asgerf@google.com

Review URL: https://codereview.chromium.org//901883002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43507 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-05 15:09:38 +00:00
karlklose@google.com 230f4bf5c8 Remove visit and override visitExpression instead to make sure we check that the code produced for subexpressions is not null.
R=asgerf@google.com

Review URL: https://codereview.chromium.org//887923003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43506 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-05 15:07:58 +00:00
karlklose@google.com 10ba25da95 Rename CspFunctionCompiler to CpsFunctionCompiler.
R=sigurdm@google.com

Review URL: https://codereview.chromium.org//904613003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43502 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-05 11:47:40 +00:00
johnniwinther@google.com ddc57facd6 Update yield warnings.
BUG=http://dartbug.com/22260
R=floitsch@google.com

Review URL: https://codereview.chromium.org//895583006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43500 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-05 11:38:40 +00:00
zarah@google.com b052fa847d dart2js: fix method setup on mixin classes in the new emitter.
R=floitsch@google.com

Review URL: https://codereview.chromium.org//902793004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43499 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-05 10:59:31 +00:00
zarah@google.com 0eff3bbea5 dart2js: fix setter name in new emitter.
R=floitsch@google.com

Review URL: https://codereview.chromium.org//897723009

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43498 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-05 10:51:25 +00:00
karlklose@google.com 2ad9020c1d Support intercepted getters, setters and index operations.
R=asgerf@google.com

Review URL: https://codereview.chromium.org//861093002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43471 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-04 15:31:24 +00:00
zarah@google.com b495977f21 dart2js: fix getter name in new emitter.
R=herhut@google.com

Review URL: https://codereview.chromium.org//876083005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43470 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-04 15:20:30 +00:00
johnniwinther@google.com 7ef82b92ad Fix async_test problems.
+ disallow async modifier on setters.

BUG=
R=sigurdm@google.com

Review URL: https://codereview.chromium.org//898703004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43465 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-04 12:41:49 +00:00
herhut@google.com cb7a8ae94e Fix merging issue in new emitter.
BUG=
R=zarah@google.com

Review URL: https://codereview.chromium.org//896153002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43461 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-04 11:29:21 +00:00
floitsch@google.com 662217e93c dart2js: support native classes in the new emitter.
R=zarah@google.com

Review URL: https://codereview.chromium.org//880773003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43457 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-04 09:42:19 +00:00
floitsch@google.com 05c54a2ab3 dart2js: Remove heap-growth-flag that was passed to the VM.
R=iposva@google.com

Review URL: https://codereview.chromium.org//892233003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43441 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-03 22:24:47 +00:00
herhut@google.com a8fb2699a5 Add support for super aliases to new emitter.
BUG=
R=floitsch@google.com

Review URL: https://codereview.chromium.org//891743002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43439 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-03 22:08:28 +00:00
herhut@google.com f8ab7c39e3 Support tearoffs in the new emitter.
BUG=
R=floitsch@google.com

Review URL: https://codereview.chromium.org//895083002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43429 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-03 21:32:31 +00:00
herhut@google.com 62bb7e2d38 Add member type to model.
BUG=
R=floitsch@google.com

Review URL: https://codereview.chromium.org//895063002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43400 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-03 14:29:29 +00:00
zarah@google.com 4a61829f1a dart2js: emit noSuchMethod stubs in the new emitter.
R=floitsch@google.com

Review URL: https://codereview.chromium.org//896763003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43399 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-03 14:25:36 +00:00
johnniwinther@google.com 2e253b6b39 Fix await parsing.
BUG=http://dartbug.com/22183
R=floitsch@google.com

Review URL: https://codereview.chromium.org//886833005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43398 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-03 14:20:21 +00:00
kmillikin@google.com 31fc0e5a8e Rename ClosureVariable, use separate IR forms for declaration and assignment.
I plan to use ClosureVariable for the variables assigned in try, so
the name will become incorrect.  They are renamed to MutableVariable.

Use separate IR forms for declaration of MutableVariable (LetMutable)
and for assignment to mutable variables (SetMutableVariable).  This
distinction doesn't do much in this change other than make the tree a
bit more well-formed, but I plan to make LetMutable take a list of
variables and values (e.g. all the variables mutated in a try).

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

Review URL: https://codereview.chromium.org//898463002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43396 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-03 14:18:13 +00:00
zarah@google.com b5331e83b1 dart2js: move generation of noSuchMethodStubs into ClassStubGenerator.
Depends on https://codereview.chromium.org/895893002/ .

R=floitsch@google.com

Review URL: https://codereview.chromium.org//897643002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43391 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-03 12:17:18 +00:00
zarah@google.com b1c9a69b52 dart2js: refactor nsm_emitter.
This is done as a step towards sharing the handling of noSuchMethod between the new and the old emitter.

R=herhut@google.com

Review URL: https://codereview.chromium.org//895893002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43388 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-03 11:12:19 +00:00
herhut@google.com bb07322aa5 Store the aliasName of a method in the model.
BUG=
R=floitsch@google.com, zarah@google.com

Review URL: https://codereview.chromium.org//881363006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43387 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-03 10:30:55 +00:00
karlklose@google.com d3b224d068 Some minor fixes.
R=kmillikin@google.com

Review URL: https://codereview.chromium.org//891343002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43385 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-03 09:28:54 +00:00
herhut@google.com d2781ff640 Fix type annotations that violate subtyping constraint on overriden methods.
BUG=
R=floitsch@google.com, johnniwinther@google.com

Review URL: https://codereview.chromium.org//873133003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43383 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-03 09:13:25 +00:00
johnniwinther@google.com d9e1bcc91b Support async/await in dart2dart.
BUG=
R=floitsch@google.com, paulberry@google.com

Review URL: https://codereview.chromium.org//880973005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43380 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-03 08:31:54 +00:00
zarah@google.com 4f88f0cfb7 dart2js: emit callstubs in new emitter and rename to stubs.
The rename is because we will use the same field for noSuchMethod stubs in the next step.

R=floitsch@google.com

Review URL: https://codereview.chromium.org//889573005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43378 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-03 08:06:32 +00:00
johnniwinther@google.com c0d40c8992 Fix shift in source map positions.
BUG=
R=floitsch@google.com

Review URL: https://codereview.chromium.org//877753008

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43352 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-02 10:54:57 +00:00
floitsch@google.com 3fb419841a dart2js: emit adapters in new emitter.
This is pretty incomplete, since it doesn't take tear-offs into account, but most adapters should work.

R=zarah@google.com

Review URL: https://codereview.chromium.org//886903003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43347 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-30 21:50:26 +00:00
floitsch@google.com e9058998f5 dart2js: Refactor how parameter stubs are handled.
R=zarah@google.com

Review URL: https://codereview.chromium.org//886053004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43346 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-30 21:48:23 +00:00
zarah@google.com 89510f4ff4 dart2js: Move parameterStub generation to parameter_stub_generator and add parameter stubs to model.
R=herhut@google.com

Review URL: https://codereview.chromium.org//887853004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43338 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-30 13:31:33 +00:00