Commit Graph

4835 Commits

Author SHA1 Message Date
herhut@google.com ec8fe00d23 Fix declaration of _MixinFieldNamingScope.names.
BUG=
TBR=karlklose@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41988 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-26 11:26:27 +00:00
herhut@google.com 40242d131f Use field names that are unique only wrt. the inheritance chain in minified mode.
R=floitsch@google.com, sra@google.com
BUG= http://dartbug.com/21510

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41986 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-26 10:27:55 +00:00
karlklose@google.com 8071da7ef8 cps-ir: Optimize identical used with constants.
R=sigurdm@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41982 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-26 09:24:17 +00:00
karlklose@google.com 4b9dd6daf4 Add CPS IR transformation to make the JavaScript backend specific semantics explicit in the tree.
Also implement transformation to insert boolean conversion.

R=kmillikin@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41979 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-26 07:26:49 +00:00
floitsch@google.com 0d7b1111f0 dart2js: add comments.
R=sigurdm@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41958 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-25 15:39:31 +00:00
floitsch@google.com e728bda036 dart2js: Add "onlyForRti" to Classes in model of the new emitter.
R=karlklose@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41956 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-25 14:49:44 +00:00
ahe@google.com f01fe227e0 Checked mode fixes.
R=johnniwinther@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41951 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-25 13:52:58 +00:00
sigurdm@google.com 0e519dbdcf Add support for if, while, break, continue to js-cps
Also avoid returning values via fields in CodeGenerator.

R=floitsch@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41946 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-25 08:30:08 +00:00
ahe@google.com 3e8b1cc1f4 Incremental compilation of added instance fields.
R=johnniwinther@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41905 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-21 15:52:40 +00:00
johnniwinther@google.com c167972a80 Support native extensions for analysis and docgen.
BUG=http://dartbug.com/10616
R=floitsch@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41903 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-21 14:09:14 +00:00
sigurdm@google.com 5ba3c0b361 Fix the new dart2dart backend.
Revert some code accidentially introduced by https://codereview.chromium.org//726543002

BUG=
R=floitsch@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41902 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-21 14:00:44 +00:00
johnniwinther@google.com ba110b93ff Avoid patching in dart2dart.
BUG=http://dartbug.com/21441
R=floitsch@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41901 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-21 13:42:56 +00:00
ahe@google.com 50b50dd273 Restore tmp function
R=floitsch@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41899 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-21 12:05:41 +00:00
ahe@google.com 97c56c3c44 Update pkg/compiler/lib/src/use_unused_api.dart.
Review URL: https://codereview.chromium.org//728173003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41894 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-21 10:32:10 +00:00
ahe@google.com 5f5d4132b5 Refactor superclass change.
This prepares for changes to fields.

R=johnniwinther@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41892 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-21 10:14:12 +00:00
sigurdm@google.com c6034d8143 Handle named and optional arguments in cps-ir.
Refactor addArgumentsToList to makeArgumentsList.

R=floitsch@google.com, karlklose@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41890 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-21 10:09:28 +00:00
ahe@google.com e3128327a4 Incremental compilation of added class.
R=johnniwinther@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41887 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-21 09:57:35 +00:00
ahe@google.com f70185d648 Implement adding methods.
This makes it possible to implement signature changes as remove followed by add.

R=johnniwinther@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41886 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-21 09:54:00 +00:00
ahe@google.com 2e81a536e5 Add Link.copyWithout.
R=johnniwinther@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41885 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-21 09:46:01 +00:00
karlklose@google.com 602126576a cps-ir: Implement boolean conversion in and use it to implement '&&', '||', and '?:'.
R=sigurdm@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41884 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-21 09:07:20 +00:00
sra@google.com 0ba7657077 Redo "Revert "Encode super calls via extra properties on prototypes.""
Second attempt to revert r41550 + r41831

TBR=herhut@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41876 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-21 00:07:50 +00:00
sra@google.com d17473e7d0 Revert "Revert "Encode super calls via extra properties on prototypes.""
My revert of r41550 + r41831 was bad, so reverting the revert to go back to the broken state reported in issue 21666, and will attempt a cleaner revert.

TBR=herhut@google.com
BUG=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41875 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-20 23:38:30 +00:00
sra@google.com b1cda8191d Revert "Encode super calls via extra properties on prototypes."
Revert "Only emit support for aliasing methods if super calls are present."

TBR=herhut@google.com
BUG=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41871 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-20 22:59:43 +00:00
sigurdm@google.com cf7ff395cf Add list literals in js cps codegen.
Also split the test cases out of the test file.

R=karlklose@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41849 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-20 13:19:57 +00:00
sigurdm@google.com f93a87c77b Remove unused code
R=karlklose@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41848 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-20 13:00:16 +00:00
karlklose@google.com 73aa370a85 Fix codegeneration for 'return'.
R=sigurdm@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41836 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-19 14:39:41 +00:00
herhut@google.com 4b85c73ba6 Consistently use Array as tag for fixed length arrays.
BUG= http://dartbug.com/21653
R=floitsch@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41832 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-19 13:46:32 +00:00
herhut@google.com 72c2d355a2 Only emit support for aliasing methods if super calls are present.
BUG=
R=karlklose@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41831 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-19 13:44:49 +00:00
sigurdm@google.com e399f27a19 Fix declaration of locals in the cps js codegen.
R=floitsch@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41830 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-19 13:23:18 +00:00
sigurdm@google.com ac215fd8df this in js-cps.
R=floitsch@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41829 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-19 12:47:49 +00:00
sigurdm@google.com c0c038926a Add support for local variables(including parameters) to cps->js.
R=floitsch@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41827 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-19 11:58:53 +00:00
ahe@google.com c5078a0b2f Incremental compilation of new classes with fields.
R=johnniwinther@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41825 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-19 09:52:17 +00:00
ahe@google.com 67e8c8c715 Use Object.create instead of a tmp-function.
R=floitsch@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41823 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-19 09:20:40 +00:00
johnniwinther@google.com 798f0417e5 Emit warning on import of dart:mirrors.
BUG=
R=floitsch@google.com

Committed: https://code.google.com/p/dart/source/detail?r=41688

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41822 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-19 09:20:14 +00:00
karlklose@google.com 91a337fe75 Move shared optimizations to the tree_ir directory.
R=sigurdm@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41806 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-18 14:50:54 +00:00
sigurdm@google.com a7521092ae Fix enabling of the new dart backend
R=karlklose@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41802 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-18 14:08:44 +00:00
sigurdm@google.com ae6d7d809a Add support for static calls to the cps pipeline code generator.
Applies on top of https://codereview.chromium.org/716823002/

R=floitsch@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41800 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-18 13:07:58 +00:00
johnniwinther@google.com 88f31815f2 Check enums in switch cases.
BUG=
R=floitsch@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41796 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-18 10:09:10 +00:00
herhut@google.com c0c2bd0683 Compute more accurate bound on expected work when tracing.
BUG=
R=floitsch@google.com, sra@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41795 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-18 09:39:02 +00:00
karlklose@google.com 9d4dd51193 Add missing file from last commit.
TBR=floitsch@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41783 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-17 16:15:24 +00:00
karlklose@google.com 1770beec7f cps-ir: Add a test for codegeneration.
This CL includes CL 723493002 and adds a test case for it.

R=floitsch@google.com, sigurdm@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41782 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-17 16:11:17 +00:00
karlklose@google.com abbc0c03e1 Only use fallback compiler for platform functions.
This will allow us to write tests for the compilation until we have a test setup for the full test suite.

R=floitsch@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41781 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-17 15:52:51 +00:00
karlklose@google.com 639d56944c cps-ir: Split up main codegen and add a bailout exception to print out more information.
R=floitsch@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41780 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-17 15:47:50 +00:00
ahe@google.com b4c3b7a8b8 Documentation to follow up on CLs 714843002 and 719443002.
R=johnniwinther@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41773 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-17 12:14:32 +00:00
ahe@google.com 5b6f61912d Don't restrict type on Setlet.remove.
Review URL: https://codereview.chromium.org//730023002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41772 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-17 10:46:47 +00:00
ahe@google.com 1ff15a79b1 Forget aliasedSuperMembers.
R=johnniwinther@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41770 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-17 10:05:07 +00:00
ahe@google.com 1e9928766c Incremental compilation: set up inheritance.
R=johnniwinther@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41769 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-17 09:56:14 +00:00
ahe@google.com 96d8115f02 Disable source maps completely.
R=johnniwinther@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41768 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-17 09:55:22 +00:00
ahe@google.com 1eaba69be2 Implement removal of overridden instance methods.
Method not actually removed by patch, but super calls to the method are
identified and patched.

R=johnniwinther@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41763 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-17 09:49:58 +00:00
herhut@google.com bb24b41236 Make better use of one-letter names when minifying.
BUG=
R=sra@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41731 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-14 08:46:51 +00:00