Commit Graph

21 Commits

Author SHA1 Message Date
lrn@google.com cad438b73b Make VM Expando use identityHashCode instead of object's hashCode.
R=fschneider@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@27873 260f80e4-7a28-3924-810f-c04153c831b5
2013-09-25 10:47:35 +00:00
regis@google.com 9eb12ad303 Implement updated method overriding rules in the vm (issue 11495).
Introduce --error-on-bad-override flag and use it when generating snapshots.
Fix signature checking when patching methods.
Fix errors in patch files.
Fix receiver type of constructors.
Fix finalization of mixin application typedefs.
Update tests and status files.

R=asiva@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@26027 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-12 20:28:52 +00:00
iposva@google.com 7e7d898b75 Fix dartbug.com/11757:
- Ensure that the entry is not cleared while we are adding the key/value pair
  during a rehashing operation.

R=asiva@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@25039 260f80e4-7a28-3924-810f-c04153c831b5
2013-07-16 00:48:12 +00:00
iposva@google.com 56b0fc10a7 Reland r24563 and r24564 with fixes cumbersome API leading to leaks.
- Add a WeakTable to the VM. This is used to remember the
  native peers registered through the Dart C API as well
  as assigning identity hashcodes to objects when needed.
- Use the hashcode to lookup entries in the Expando.

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24822 260f80e4-7a28-3924-810f-c04153c831b5
2013-07-08 21:41:05 +00:00
iposva@google.com fb06bcdff3 - Revert r24564 and r24563 due to unexplained malloc corruption.
Review URL: https://codereview.chromium.org//18051007

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24565 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-28 00:27:25 +00:00
iposva@google.com 9c9989d2f6 - Add a WeakTable to the VM. This is used to remember the
native peers registered through the Dart C API as well
  as assigning identity hashcodes to objects when needed.
- Use the hashcode to lookup entries in the Expando.

R=asiva@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24563 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-28 00:01:47 +00:00
hausner@google.com bf5835d89e BREAKING CHANGE: Remove === and !== in the VM compiler
This change is long overdue. Fixed the last places where we
still used ===.

R=iposva@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@23751 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-07 16:31:33 +00:00
lrn@google.com f4300b84a2 Make List.from and Iterable.toList default to not growable.
Review URL: https://codereview.chromium.org//12401002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@19391 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-04 14:55:40 +00:00
lrn@google.com 6b4f4b1bab Change new List(n) to return fixed length list.
Deprecate List.fixedLength, add List.filled.

Make Iterable.toList and List.from take "growable" argument,
defaulting to false.

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@19112 260f80e4-7a28-3924-810f-c04153c831b5
2013-02-27 08:45:04 +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
srdjan@google.com d1f54883b8 More cleanups === => identical
Review URL: https://codereview.chromium.org//11308305

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15648 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-03 19:11:13 +00:00
lrn@google.com 22309b260c Remove NullPointerException.
Accessing non-existing members on null now throws NoSuchMethodError.
Throwing a null value fails by throwing a NullThrownError.
Methods checking for null now generally throw new ArgumentError(null).

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

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15136 260f80e4-7a28-3924-810f-c04153c831b5
2012-11-20 09:21:52 +00:00
lrn@google.com 0c8dce77f1 Revert "Remove NullPointerException."
Crashes in the x64 VM.

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15065 260f80e4-7a28-3924-810f-c04153c831b5
2012-11-19 09:59:59 +00:00
lrn@google.com e211c2f0ee Remove NullPointerException.
Accessing non-existing members on null now throws NoSuchMethodError.
Throwing a null value fails by throwing a NullThrownError.
Methods checking for null now generally throw new ArgumentError(null).

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15061 260f80e4-7a28-3924-810f-c04153c831b5
2012-11-19 08:51:49 +00:00
floitsch@google.com 8e6f238f86 a === b -> identical(a, b)
Replace === null with == null.

BUG=http://dartbug.com/6380

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@14794 260f80e4-7a28-3924-810f-c04153c831b5
2012-11-12 17:19:58 +00:00
lrn@google.com a1faa6f135 Change IllegalArgumentException to ArgumentError.
Review URL: https://codereview.chromium.org//10989013

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12841 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-25 12:27:52 +00:00
cshapiro@google.com ffa3604282 Eliminate the const constructor from the Expando class.
Review URL: https://codereview.chromium.org//10909209

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12354 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-13 21:26:01 +00:00
ager@google.com 2e49065159 Reapply changes to Expando patching.
R=ajohnsen@google.com
BUG=

Review URL: https://chromiumcodereview.appspot.com//10911201

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12181 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-11 11:03:50 +00:00
ager@google.com 1adc0b35a2 Revert Expando changes. There are checked-mode errors that I need
to sort out.

Revert "Patch expando directly in corelib instead of going through coreimpl."

Revert "Fix merge error."

R=ajohnsen@google.com
BUG=

Review URL: https://chromiumcodereview.appspot.com//10918163

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12158 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-11 05:39:05 +00:00
ager@google.com e3f4f6696e Patch expando directly in corelib instead of going through coreimpl.
R=ajohnsen@google.com
BUG=

Review URL: https://chromiumcodereview.appspot.com//10908173

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12156 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-11 05:27:31 +00:00
ager@google.com 570d769b30 Use patching for Expando so the implementation-specific files are not needed in the SDK.
Make extra methods private in VM version.

R=ajohnsen@google.com,cshapiro@google.com
BUG=

Review URL: https://chromiumcodereview.appspot.com//10870064

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@11369 260f80e4-7a28-3924-810f-c04153c831b5
2012-08-27 07:15:18 +00:00