Commit Graph

2159 Commits

Author SHA1 Message Date
regis@google.com 650ae359a4 Fix class patching involving type parameters: type parameters of patched classes
were not finalized.
Simplify and fix function type alias finalization (remove dummy alias owner).
Make sure no unfinalized types or unresolved classes are written to a snapshot.
Verify that all pending classes are finalized before writing a snapshot.
Make snapshot_test more resilient to finalization errors.
Add missing import to snapshot_test.dart.
Fix typo in growable_array.dart.
Review URL: https://codereview.chromium.org//12123002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@17962 260f80e4-7a28-3924-810f-c04153c831b5
2013-02-01 02:40:16 +00:00
asiva@google.com c2cafbbe33 - Change the layout of external typed array objects to avoid the extra indirection when accessing elements in the array.
- Change the Dart API which create these external arrays to account for this change
Review URL: https://codereview.chromium.org//12093071

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@17937 260f80e4-7a28-3924-810f-c04153c831b5
2013-01-31 18:53:21 +00:00
lrn@google.com 9b23dff467 Reapply "Rename mappedBy to map."
This reverts commit r17907.

TBR.

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@17918 260f80e4-7a28-3924-810f-c04153c831b5
2013-01-31 15:12:56 +00:00
floitsch@google.com b1a118d5ce Revert "Rename mappedBy to map."
This reverts commit 17899.

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@17907 260f80e4-7a28-3924-810f-c04153c831b5
2013-01-31 14:02:27 +00:00
lrn@google.com 0dc2f4b1ba Rename mappedBy to map.
Retain a deprecated mappedBy for now.
Change return type of mappedBy, skip and take on List to Iterable.

BUG= http://dartbug.com/8063
BUG= http://dartbug.com/8064
BUG= http://dartbug.com/6739
BUG= http://dartbug.com/7982

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@17899 260f80e4-7a28-3924-810f-c04153c831b5
2013-01-31 12:37:13 +00:00
floitsch@google.com e024c74a5f Remove List.filled constructor.
Review URL: https://codereview.chromium.org//12041019

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@17871 260f80e4-7a28-3924-810f-c04153c831b5
2013-01-30 20:10:27 +00:00
srdjan@google.com 35ef4ddbd5 Enable correct optimized double modulo operation. (TODO: enable remainder optimization).
Review URL: https://codereview.chromium.org//12082063

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@17859 260f80e4-7a28-3924-810f-c04153c831b5
2013-01-30 17:40:28 +00:00
ahe@google.com 8d698fdf19 Improve performance of dart2js StringBuffer.
Review URL: https://codereview.chromium.org//11565034

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@17639 260f80e4-7a28-3924-810f-c04153c831b5
2013-01-25 15:32:10 +00:00
floitsch@google.com fb7b9e3c5c Rename Date to DateTime.
BUG=http://dartbug.com/1424

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@17549 260f80e4-7a28-3924-810f-c04153c831b5
2013-01-24 12:16:37 +00:00
lrn@google.com 09051ebf15 Fix bugs in GrowableList.remove*.
Add generic removeMatchingList functionality in IterableMixinWorkaround.

BUG=http://dartbug.com/8018, http://dartbug.com/8075

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@17534 260f80e4-7a28-3924-810f-c04153c831b5
2013-01-24 10:34:45 +00:00
srdjan@google.com 5a2c48a103 Rename xxxArray_newTransferable natives to xxxList_newTransferable.
Review URL: https://codereview.chromium.org//12039047

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@17497 260f80e4-7a28-3924-810f-c04153c831b5
2013-01-23 21:25:39 +00:00
asiva@google.com f4fe42c280 Added macros OBJECT_IMPLEMENTATION and FINAL_OBJECT_IMPLEMENTATION
which have different implementations of 'operator=' and 'operator^='.
In the case of FINAL_OBJECT_IMPLEMENTATION we do not do the vtable setting
in these methods (Note the |= operator functionality is now subsumed into
the new implementation of "operator^=")
Review URL: https://codereview.chromium.org//12052033

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@17491 260f80e4-7a28-3924-810f-c04153c831b5
2013-01-23 20:01:31 +00:00
srdjan@google.com 06cd4ed7b2 Fix native lookup. Fix external byte arrays.
Review URL: https://codereview.chromium.org//12033036

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@17478 260f80e4-7a28-3924-810f-c04153c831b5
2013-01-23 17:43:58 +00:00
lrn@google.com 16795f22d1 Add List.reversed to give a reverse fixed-length view of a list.
Review URL: https://codereview.chromium.org//11896013

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@17402 260f80e4-7a28-3924-810f-c04153c831b5
2013-01-22 14:56:45 +00:00
srdjan@google.com 4dcfe405c0 Fix for ^= to |=
Review URL: https://codereview.chromium.org//11929030

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@17312 260f80e4-7a28-3924-810f-c04153c831b5
2013-01-18 20:55:38 +00:00
srdjan@google.com 7159a6f103 Some more ^= to |=
Review URL: https://codereview.chromium.org//12017020

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@17310 260f80e4-7a28-3924-810f-c04153c831b5
2013-01-18 20:43:33 +00:00
floitsch@google.com 0108e97dc6 Move sort to collection-dev and remove coreSort.
Review URL: https://codereview.chromium.org//11960005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@17296 260f80e4-7a28-3924-810f-c04153c831b5
2013-01-18 17:21:16 +00:00
lrn@google.com 0e934a631e Add methods to Collection.
Methods are:
- void add(E)
- void addAll(Iterable<E>)
- void remove(Object)
- void removeAll(Iterable)
- void retainAll(Iterable)
- void removeMatching(bool test(E))
- void retainMatching(bool test(E))

They have been implemented for List and Set only.

Default implementations of removeX methods in Collections assume an efficient
remove method, which Lists won't have.

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@17257 260f80e4-7a28-3924-810f-c04153c831b5
2013-01-18 10:13:51 +00:00
floitsch@google.com 6dcfe3ca41 Create IterableMixinWorkaround and move most of the Collections methods there.
Committed: https://code.google.com/p/dart/source/detail?r=17207
Reverted: https://code.google.com/p/dart/source/detail?r=17210

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@17213 260f80e4-7a28-3924-810f-c04153c831b5
2013-01-17 14:36:40 +00:00
floitsch@google.com 7ca573ae90 Revert "Create IterableMixinWorkaround and move most of the Collections methods there."
This reverts commit 17207.

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@17210 260f80e4-7a28-3924-810f-c04153c831b5
2013-01-17 14:19:47 +00:00
floitsch@google.com e0459f6d6e Create IterableMixinWorkaround and move most of the Collections methods there.
Review URL: https://codereview.chromium.org//11971016

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@17207 260f80e4-7a28-3924-810f-c04153c831b5
2013-01-17 14:01:52 +00:00
srdjan@google.com 37a715bbbf Lookup functions by name that contains the private key, except for dart_api which allows ignoring the private key.
Review URL: https://codereview.chromium.org//11968022

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@17178 260f80e4-7a28-3924-810f-c04153c831b5
2013-01-17 00:42:03 +00:00
floitsch@google.com d95bad9312 Let list-classes call Collections.joinList (which avoids allocating an iterator).
Review URL: https://codereview.chromium.org//11906002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@17118 260f80e4-7a28-3924-810f-c04153c831b5
2013-01-16 08:29:11 +00:00
srdjan@google.com 843e48f6f0 Add Dart class for _ExternalUint8ClampedArray and API to allocate it.
Review URL: https://codereview.chromium.org//11881031

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@17040 260f80e4-7a28-3924-810f-c04153c831b5
2013-01-15 01:14:17 +00:00
srdjan@google.com 2ad98117fd Fix performance of array literals (e.g. "[1, 2]"). Improves speed of DeltaBlue.
Simplify code to allocate groable object array from an object array.
Review URL: https://codereview.chromium.org//11882005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16999 260f80e4-7a28-3924-810f-c04153c831b5
2013-01-11 23:39:00 +00:00
antonm@google.com 589e3ab811 Move common logic into the base class.
R=cshapiro@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16915 260f80e4-7a28-3924-810f-c04153c831b5
2013-01-10 11:55:02 +00:00
ager@google.com 75c8f427cc Update remaining usages of Completer.completeException.
R=floitsch@google.com
BUG=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16840 260f80e4-7a28-3924-810f-c04153c831b5
2013-01-09 09:29:39 +00:00
iposva@google.com 2d8c51d0f4 Fix bug 5511:
- null must support hashCode.
Review URL: https://codereview.chromium.org//11819014

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16827 260f80e4-7a28-3924-810f-c04153c831b5
2013-01-08 23:58:55 +00:00
srdjan@google.com 8a831fe908 Factor out length check in list factories: reduce bloat, factorize code, improve performance.
Review URL: https://codereview.chromium.org//11773045

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16810 260f80e4-7a28-3924-810f-c04153c831b5
2013-01-08 17:47:03 +00:00
srdjan@google.com 020b5893db Cleanups.
Review URL: https://codereview.chromium.org//11801023

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16756 260f80e4-7a28-3924-810f-c04153c831b5
2013-01-07 22:13:47 +00:00
ajohnsen@google.com 32eeecd930 Fix tests for VM in checked mode.
BUG=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16689 260f80e4-7a28-3924-810f-c04153c831b5
2013-01-07 11:59:49 +00:00
floitsch@google.com 4a7dfd2da3 Big merge from experimental to bleeding edge.
Review URL: https://codereview.chromium.org//11783009

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16687 260f80e4-7a28-3924-810f-c04153c831b5
2013-01-07 11:23:16 +00:00
regis@google.com 47e08870ca Support Null type in Class::TypeTest and simplify Instance::IsInstanceOf.
Review URL: https://codereview.chromium.org//11785006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16664 260f80e4-7a28-3924-810f-c04153c831b5
2013-01-05 00:45:52 +00:00
asiva@google.com 4c069867e4 - Make Boolean 'true' and 'false' singleton VM isolate objects.
- Change all uses of it
Review URL: https://codereview.chromium.org//11745022

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16623 260f80e4-7a28-3924-810f-c04153c831b5
2013-01-04 01:52:05 +00:00
srdjan@google.com 29e06db609 In unoptimized code use call for instanceof instead of inlined checks. This allows us to collect type feedback and to reduce the code size of unoptimized code. Next will be work on type tests as well.
Review URL: https://codereview.chromium.org//11694003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16589 260f80e4-7a28-3924-810f-c04153c831b5
2013-01-02 22:22:39 +00:00
asiva@google.com 7022b39e35 Convert all symbol accessors to return read only handles so that it is not necessary to create a new handle in the code that uses it.
Added a few more strings to the symbols list.
Review URL: https://codereview.chromium.org//11667012

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16584 260f80e4-7a28-3924-810f-c04153c831b5
2013-01-02 19:31:59 +00:00
regis@google.com cb27634842 Remove NoSuchMethodErrorImplementation class and use NoSuchMethodError from core
lib instead.
Review URL: https://codereview.chromium.org//11712002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16583 260f80e4-7a28-3924-810f-c04153c831b5
2013-01-02 18:52:28 +00:00
tball@google.com 929344a574 Issue 7549: fix for invalid runtimeType.toString() for int, double, and
string constants.
Review URL: https://codereview.chromium.org//11624034

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16516 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-27 18:08:16 +00:00
ngeoffray@google.com 7db6e9d3e0 Re-apply "Clean up the patch file for the isolate library by introducing a new buitlin library: isolate_helper.dart". This time load eagerly isolate_helper so that the native handler can see it.
Review URL: https://codereview.chromium.org//11640021

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16500 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-26 17:15:02 +00:00
regis@google.com d273efd45f Turn compile time errors related to missing getters and setters into invocation
of noSuchMethod or into throwing of NoSuchMethodError according to spec.
Return result of InvocationMirror.invokeOn to caller.
Fix various tests.
Review URL: https://codereview.chromium.org//11669015

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16463 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-22 00:40:46 +00:00
meh@google.com 2c7dfbf982 Implement a native identical function in the VM.
Returns true if objects are the same instance.
Adds an identical closure test (disabled for dart2js pending https://chromiumcodereview.appspot.com/11612022/).

BUG=7378

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16461 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-22 00:12:35 +00:00
meh@google.com 2e1ecb18fe Revert "Implement a native identical function in the VM."
This reverts commit 88a0845aedeed15106dcfc8c658ebed37e7e85dd.

BUG=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16460 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-21 23:58:48 +00:00
meh@google.com 225d9a724b Implement a native identical function in the VM.
Returns true if objects are the same instance.

BUG=7378

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

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16456 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-21 22:42:21 +00:00
meh@google.com 51dc889ad7 Revert "Implement a native identical function in the VM."
This reverts commit 93e88749af841a1b381db6351a7196d35edd554e.

BUG=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16454 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-21 21:22:43 +00:00
meh@google.com 5e068fec8f Implement a native identical function in the VM.
Returns true if objects are the same instance.

BUG=7378

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16453 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-21 20:34:42 +00:00
meh@google.com a1bb3a9e51 Revert "Implement a native identical function in the VM."
This reverts commit c876c29bf4caa810bfc03c8b8908588168d634fe.

BUG=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16451 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-21 20:08:59 +00:00
meh@google.com 55596818ac Implement a native identical function in the VM.
Returns true if objects are the same instance.

BUG=7378

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

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

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16450 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-21 19:07:55 +00:00
asiva@google.com 7ea520f10f Create read only handles for empty_array and sentinel objects
(trying out a basic framework and will extend it to others once this
works).
Review URL: https://codereview.chromium.org//11648006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16416 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-21 02:33:05 +00:00
meh@google.com 38aa3e1dee Revert "Implement a native identical function in the VM."
This reverts commit 0f29c63d64de37beb5f1b927a492687fde6de58a.

BUG=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16414 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-21 01:50:27 +00:00
meh@google.com 585e671819 Implement a native identical function in the VM.
Returns true if objects are the same instance.

BUG=7378

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

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16412 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-21 01:14:32 +00:00