Commit Graph

738 Commits

Author SHA1 Message Date
sra@google.com fd93acc652 Revert "Revert "Fix x.runtimeType for native classes""
Fix dummy compiler to contain Interceptor with operator==

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21985 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-24 21:05:50 +00:00
sra@google.com 7474f1f7c2 Revert "Fix x.runtimeType for native classes"
Review URL: https://codereview.chromium.org//14478002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21965 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-24 17:58:09 +00:00
sra@google.com f7cbfe798d Fix x.runtimeType for native classes
1. Make sure native classes inherit from Interceptor so they pick up get runtimeTime from there.

2. Move some duplicated code into js_rti.

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21963 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-24 17:32:15 +00:00
kasperl@google.com 892bef1b3c Improve optimization of operations on indexables by using more inferred type information and by disabling inlining of [], []= and length (still optimized but now in the folder).
R=ngeoffray@google.com
BUG=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21946 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-24 13:03:36 +00:00
kasperl@google.com a58131df79 Allow using native JS []= on typed data lists.
R=ngeoffray@google.com
BUG=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21938 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-24 11:04:18 +00:00
kasperl@google.com 55bb78e8cf Update mock compiler.
R=ngeoffray@google.com
BUG=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21931 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-24 08:32:41 +00:00
johnniwinther@google.com 797c6aeeb9 Remove dartdoc specific methods from dart2js_mirror.
BUG=

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

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21924 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-24 07:31:39 +00:00
kasperl@google.com 22406c8a18 Optimize length access on all JSIndexable things.
R=ngeoffray@google.com
BUG=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21918 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-24 05:36:34 +00:00
sra@google.com 334dedd8dc Test for super call on intercepted class
See http://dartbug.com/10166

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21912 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-23 23:52:41 +00:00
ngeoffray@google.com a2f2eb7b96 Move test to dart2js_extra since it does not apply to VM.
Review URL: https://codereview.chromium.org//14091016

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21874 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-23 12:12:55 +00:00
ngeoffray@google.com 03a65ef1fe Throw NoSuchMethod or ArgumentError instead of generating a bailout, when we know the next instruction after a type guard will throw.
Review URL: https://codereview.chromium.org//14404004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21870 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-23 11:51:45 +00:00
sra@google.com 15e8e0d70a Revert "Revert "Allow multiple tags in native clause.""
WebKit with a 'K', not 'k'

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21853 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-22 22:57:06 +00:00
johnniwinther@google.com f4f3958af1 Change MirrorSystem.libraries to Map<Uri, String>
BUG=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21812 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-22 13:01:20 +00:00
ngeoffray@google.com c68e8dec68 Add special rules in the inferrer that some int operations return an int.
Review URL: https://codereview.chromium.org//14120008

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21810 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-22 12:40:33 +00:00
ngeoffray@google.com 650b2c0f2b Enable general inlining of instance methods, that is inlining based on the receiver type. Before we only inlined if the receiver was 'this'.
Review URL: https://codereview.chromium.org//13852031

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21798 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-22 09:53:34 +00:00
ngeoffray@google.com 80e886b52e Make mock_compiler initialize the identical function, and use the identical function element directly in the simple inferrer.
Review URL: https://codereview.chromium.org//14362026

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21730 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-19 09:53:55 +00:00
erikcorry@google.com fffd17c04f Try to optimistically assume that the relational operators return bool
R=ngeoffray@google.com
BUG=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21673 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-18 14:11:19 +00:00
polux@google.com 76dc0f9292 Always pick of best result between SimpleTypeInferrer and ConcreteTypeInferrer.
Review URL: https://codereview.chromium.org//14142007

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21672 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-18 11:13:03 +00:00
ngeoffray@google.com e8eb4b0c90 Update selectors in TreeElements to typed selectors when doing type inferencing, and use it to filter out setter constraints that don't apply.
Review URL: https://codereview.chromium.org//13392009

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21668 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-18 09:09:41 +00:00
ahe@google.com 5d8b1a1d8c Move invokeOn to InstanceMirror.
Review URL: https://codereview.chromium.org//14251021

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21636 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-17 16:39:19 +00:00
ngeoffray@google.com 96afd90f64 Take noSuchMethod into account when computing the potential targets of a call.
Review URL: https://codereview.chromium.org//14049010

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21609 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-17 09:38:18 +00:00
ahe@google.com 2e69d4ee2b Update status files to make build green
Review URL: https://codereview.chromium.org//13977015

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21606 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-17 08:42:07 +00:00
sra@google.com e89faa4bab Fix incorrect index when checking conditions for native method inlining
TBR=ngeoffray@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21597 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-17 02:13:22 +00:00
sigmund@google.com cb6b083b75 Change file format to be unix files
Review URL: https://codereview.chromium.org//14119005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21588 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-16 23:06:28 +00:00
sra@google.com 771ddb38fb Remove call-indirections from type tests.
The point of variation between different tests is no longer whether a
call is needed, but whether the data is on the objects or on the
interceptor.

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21578 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-16 21:03:37 +00:00
floitsch@google.com 466d6670c1 Refactor Future constructors.
BUG=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21517 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-15 21:24:27 +00:00
floitsch@google.com cabff980b2 Fix dart2js deferred test.
Review URL: https://codereview.chromium.org//13880022

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21510 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-15 20:20:49 +00:00
floitsch@google.com adc3a536b1 Disabling deferred_load_graph_segmentation_test while investigating.
Review URL: https://codereview.chromium.org//14113016

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21503 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-15 19:39:36 +00:00
floitsch@google.com 5431a5af54 Remove AsyncError with Expando.
Review URL: https://codereview.chromium.org//14251006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21498 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-15 18:58:32 +00:00
ahe@google.com 5b6c0ba820 Rename InvocationMirror to Invocation.
Review URL: https://codereview.chromium.org//14049009

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21465 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-15 15:42:44 +00:00
lrn@google.com 485c8a5999 Move Iterable implementation to collection.
Add IterableMixin and IterableBase to dart:collection.
For now, the implementation is duplicated, because mixins and const
constructors don't mix. We hope that mixins will be improved in the
future to allow using the mixin to define the base class.

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21457 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-15 14:32:16 +00:00
erikcorry@google.com 3f29849524 dart2js: Make sure we don't emit double var declarations for small functions with loops
R=karlklose@google.com
BUG=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21447 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-15 12:53:35 +00:00
erikcorry@google.com fc897b01af dart2js: Use the mini JS parser for more JS(... constructs
This adds regexp literals, hex literals and property-names-that-are-also-
JS-keywords to the mini JS parser.  We now use it for JS(... constructs
that contain '#', but still use verbatim copying for function literals
and things that throw.
R=sra@google.com
BUG=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21419 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-15 08:12:30 +00:00
ahe@google.com 13bcc022e6 Correctly compile unresolved for-in loops.
BUG=http://dartbug.com/6725

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21342 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-12 10:19:51 +00:00
ahe@google.com f53cc356a5 Update dart2js mirrors to match the API.
Review URL: https://codereview.chromium.org//14142010

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21283 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-11 15:16:12 +00:00
karlklose@google.com 445d9fb3fe Fix test expectations for minifying compilation.
R=erikcorry@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21267 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-11 10:37:19 +00:00
karlklose@google.com 32cc76a2cc Make output of Type.toString nicer.
BUG=dartbug.com/8567

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21265 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-11 10:10:29 +00:00
erikcorry@google.com 90f18084a0 dart2js: Use miniparser for simple JS(...)
R=ahe@google.com
BUG=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21263 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-11 09:38:58 +00:00
erikcorry@google.com 9d044d3f20 dart2js: Allow 'throw' when inlining
R=karlklose@google.com
BUG=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21259 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-11 09:20:28 +00:00
erikcorry@google.com 4044e4a645 Teach mini JS parser about precedence
R=ngeoffray@google.com
BUG=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21149 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-09 12:47:22 +00:00
johnniwinther@google.com 746a860a83 Register type for literal list/map.
BUG=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21136 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-09 08:05:38 +00:00
sra@google.com e041f763f6 Make mixins work on native classes.
Review URL: https://codereview.chromium.org//13685022

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21104 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-08 19:29:00 +00:00
floitsch@google.com 6371462d11 Cleanup deferred test fixes.
Review URL: https://codereview.chromium.org//13637011

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21103 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-08 19:23:09 +00:00
sra@google.com 374657fd8f Fix more test imports
TBR=floitch@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21095 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-08 17:52:17 +00:00
floitsch@google.com 826ade0fe6 Fix more typos.
Review URL: https://codereview.chromium.org//13741013

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21093 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-08 17:45:19 +00:00
floitsch@google.com b99026e75e Fix typo.
Review URL: https://codereview.chromium.org//13467032

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21091 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-08 17:41:12 +00:00
floitsch@google.com 2a9ddbc93d More test fixes.
Review URL: https://codereview.chromium.org//13749009

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21090 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-08 17:35:39 +00:00
floitsch@google.com f0fac32cfb More test fixes.
Review URL: https://codereview.chromium.org//13801008

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21089 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-08 17:28:08 +00:00
floitsch@google.com dcbd025070 Revert "Update tests and status files."
This reverts commit r21087.

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21088 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-08 17:13:13 +00:00
floitsch@google.com 999f99cbbc Update tests and status files.
Review URL: https://codereview.chromium.org//13800006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21087 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-08 17:03:34 +00:00