srdjan@google.com
97021b5861
Add class id constants fields to dart:_internal class 'ClassID'. Use the fields in the library (more uses to come).
...
R=asiva@google.com
Review URL: https://codereview.chromium.org//351673002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@37628 260f80e4-7a28-3924-810f-c04153c831b5
2014-06-23 22:41:59 +00:00
floitsch@google.com
7a20438bb8
Update timer and adjust frequency.
...
BUG= http://dartbug.com/19435
BUG= http://dartbug.com/19082
R=lrn@google.com
Review URL: https://codereview.chromium.org//345873003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@37586 260f80e4-7a28-3924-810f-c04153c831b5
2014-06-23 09:33:59 +00:00
srdjan@google.com
d44423b766
Add VM internal Dart class 'ClassID' used to manage class-ids of known classes. Next CL: add constant fields corresponding to each class id (smiCid, oneByteStringCid, etc).
...
R=asiva@google.com
Review URL: https://codereview.chromium.org//345223003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@37567 260f80e4-7a28-3924-810f-c04153c831b5
2014-06-20 20:56:55 +00:00
regis@google.com
32f3e11d99
Cleanup of error and warning reporting.
...
R=hausner@google.com , srdjan@google.com
Review URL: https://codereview.chromium.org//340203003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@37468 260f80e4-7a28-3924-810f-c04153c831b5
2014-06-18 22:30:34 +00:00
srdjan@google.com
ee210974f6
Reduce default capacity of growable list from 4 to 2 elements. Improves performance.
...
R=asiva@google.com
Review URL: https://codereview.chromium.org//337383004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@37421 260f80e4-7a28-3924-810f-c04153c831b5
2014-06-17 20:49:47 +00:00
rmacnak@google.com
7ce5c53f0b
Pass around the current isolate in exception handling code.
...
R=asiva@google.com
Review URL: https://codereview.chromium.org//326183002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@37409 260f80e4-7a28-3924-810f-c04153c831b5
2014-06-17 18:17:03 +00:00
johnmccutchan@google.com
03854e0e8c
Make TypedList not implement ByteBuffer.
...
BUG=https://code.google.com/p/dart/issues/detail?id=10136
R=asiva@google.com , iposva@google.com
Review URL: https://codereview.chromium.org//339763002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@37397 260f80e4-7a28-3924-810f-c04153c831b5
2014-06-17 14:34:45 +00:00
hausner@google.com
312c13be73
Fix deferred load code in checked mode
...
Review URL: https://codereview.chromium.org//336903003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@37335 260f80e4-7a28-3924-810f-c04153c831b5
2014-06-13 23:04:07 +00:00
hausner@google.com
4eac05607f
Lazy loading of deferred libraries
...
Defer reading of source code of deferred libraries until the
Dart code executes the loadLibrary() call.
R=iposva@google.com
Review URL: https://codereview.chromium.org//328923002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@37334 260f80e4-7a28-3924-810f-c04153c831b5
2014-06-13 22:43:31 +00:00
lrn@google.com
1ec6c5c1db
Revert "Add "last" setter to List."
...
After discussion, we decided not to change the List interface for something that is just a convenience.
Also revert "Mark pkgbuild/pkg/collection as failing when using repository packages"
R=sgjesse@google.com
Review URL: https://codereview.chromium.org//331833003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@37307 260f80e4-7a28-3924-810f-c04153c831b5
2014-06-13 09:40:22 +00:00
rmacnak@google.com
da3b61d764
Add missing demangling to the VM's NoSuchMethodError. Ensure the VM's NoSuchMethorErrors for reflective invocation match those for non-reflective invocation.
...
Fix bug in VM demangling of setters.
Fix bug where test was not covering invocation on classes as intended.
BUG=http://dartbug.com/18042
R=asiva@google.com
Review URL: https://codereview.chromium.org//326263002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@37294 260f80e4-7a28-3924-810f-c04153c831b5
2014-06-12 22:53:00 +00:00
fschneider@google.com
8621f8bda9
VM: Remove explicit field initialization with null from library classes.
...
It is redundant since fields are implicitly null-initialized.
R=ajohnsen@google.com
Review URL: https://codereview.chromium.org//333583003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@37261 260f80e4-7a28-3924-810f-c04153c831b5
2014-06-12 10:59:20 +00:00
lrn@google.com
f528beb9f2
Add "last" setter to List.
...
This allows assigning directly as `list.last = value` instead of
having to use the longer `list[list.length - 1] = value`.
It's just an abbreviation, like `list.last` is for reading.
If you use a List as a stack (which is a perfectly good use of it),
modifying the last element like this is a natural operation.
R=sgjesse@google.com
Review URL: https://codereview.chromium.org//315173005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@37255 260f80e4-7a28-3924-810f-c04153c831b5
2014-06-12 08:11:22 +00:00
rmacnak@google.com
ce490637b2
Censor dart:_blink and dart:builtin from the enumeration of libraries in the isolate and from import lists. Note we are not censoring dart:_internal.
...
For the moment, this doesn't seem to break any language invariants, but that may happen if
a) the censored libraries start producing instances, whose classes would claim to have no library
b) types from the censored libraries are used in type annotations in the privileged libraries that can import them, resulting in types other than dynamic that claim to belong to no library
R=iposva@google.com
Review URL: https://codereview.chromium.org//321293002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@37238 260f80e4-7a28-3924-810f-c04153c831b5
2014-06-11 17:58:17 +00:00
rmacnak@google.com
7f84fb2b7f
Implement an LRU cache in dart:_internal and use it for the getter/setter caches in the VM's mirrors.
...
BUG=http://dartbug.com/18445
R=iposva@google.com
Review URL: https://codereview.chromium.org//268783006
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@37059 260f80e4-7a28-3924-810f-c04153c831b5
2014-06-06 00:45:01 +00:00
regis@google.com
eef5589182
Add javascript compatibility warnings for integer values and integral double
...
values that are not identical, but equal.
R=srdjan@google.com
Review URL: https://codereview.chromium.org//317793003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@37017 260f80e4-7a28-3924-810f-c04153c831b5
2014-06-04 23:14:03 +00:00
regis@google.com
139187ae5f
Add javascript compatibility warnings for strings that are not identical, but
...
equal. The vm does not canonicalize all strings as javascript does.
R=srdjan@google.com
Review URL: https://codereview.chromium.org//312693008
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@37013 260f80e4-7a28-3924-810f-c04153c831b5
2014-06-04 20:47:54 +00:00
lrn@google.com
01897bf44d
Revert "Ensure that failure to start an isolate all end up in the future."
...
Review URL: https://codereview.chromium.org//312123002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36986 260f80e4-7a28-3924-810f-c04153c831b5
2014-06-04 09:40:29 +00:00
lrn@google.com
c2aa45f121
Ensure that failure to start an isolate all end up in the future.
...
Isolate.spawnUri can fail in many ways.
Any problem that prevents calling "main" on a loaded isolate
should end up as IsolateSpawnException in the future returned by
Isolate.spawnUri.
This CL ensures that failure to look up main is handled correctly,
and adds more tests.
R=sgjesse@google.com
Review URL: https://codereview.chromium.org//297413002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36982 260f80e4-7a28-3924-810f-c04153c831b5
2014-06-04 08:42:39 +00:00
fschneider@google.com
fc7d8c61ba
Make compile-time constants in _IntegerImplementation.compareTo const.
...
Review URL: https://codereview.chromium.org//298203002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36864 260f80e4-7a28-3924-810f-c04153c831b5
2014-06-02 11:10:06 +00:00
srdjan@google.com
ee8543f057
Intrinsify [] for ExternalUint8 and Uint8 typed data. Gives significant speedup when compiling Hello.dart in unoptimized code.
...
R=zra@google.com
Review URL: https://codereview.chromium.org//308513005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36833 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-30 19:49:35 +00:00
rmacnak@google.com
3b5ff25469
Lay waste to ClosureMirror.findInContext.
...
BUG=http://dartbug.com/18741
R=gbracha@google.com , iposva@google.com
Review URL: https://codereview.chromium.org//276043003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36704 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-27 19:35:58 +00:00
lrn@google.com
8e82e840e0
Make methods on isolate external.
...
R=iposva@google.com , sgjesse@google.com
Review URL: https://codereview.chromium.org//293393005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36642 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-27 06:14:13 +00:00
lrn@google.com
989709f3a8
Reinstall previous behavior for Set and Queue toString.
...
A previous change made these omit elements to keep the toString length down.
That could break code that expects the original behavior.
This still avoids using IterableMixinWorkaround.
Add static toString methods on ListBase, SetBase, IterableBase so that users can
get the same behavior as our toString methods, and with the same cycle detection
safety.
Unify all collection toString methods in two methods:
- IterableBase.iterableToShortString
- IterableBase.iterableToFullString
R=floitsch@google.com
Review URL: https://codereview.chromium.org//297053002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36616 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-26 06:08:20 +00:00
lrn@google.com
e8247e4b4a
Add SetBase/SetMixin.
...
Depends on adding cloneEmpty method to Set class and toSet creating a clone.
R=sgjesse@google.com
Review URL: https://codereview.chromium.org//289353002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36478 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-22 09:48:24 +00:00
iposva@google.com
b4b4889406
- Refined https://codereview.chromium.org/293963008/
...
Make compilation VM more fine grained
- Use the isolate where appropriate.
R=srdjan@google.com
Review URL: https://codereview.chromium.org//294943008
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36451 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-21 21:04:03 +00:00
iposva@google.com
5a469c41b3
- Remove unnecessary is-check.
...
- Other formatting cleanup.
R=srdjan@google.com
Review URL: https://codereview.chromium.org//280843002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36192 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-14 22:21:48 +00:00
rmacnak@google.com
3939e3e7f5
Improve error messages in MirrorSystem.findLibrary.
...
BUG=http://dartbug.com/18532
R=gbracha@google.com
Review URL: https://codereview.chromium.org//287523003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36114 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-13 17:20:08 +00:00
rmacnak@google.com
d1402873c3
Revert "Improve error messages in MirrorSystem.findLibrary."
...
Review URL: https://codereview.chromium.org//283593002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36056 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-12 19:41:11 +00:00
rmacnak@google.com
0c696f26ed
Improve error messages in MirrorSystem.findLibrary.
...
BUG=http://dartbug.com/18532
R=gbracha@google.com
Review URL: https://codereview.chromium.org//278983004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36048 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-12 17:52:31 +00:00
regis@google.com
dec11d8b7b
Add support for javascript incompatibility warnings (work in progress).
...
For now, warnings are only issued when applicable for type tests, type casts,
and toString.
Fix newly reported lint errors.
R=srdjan@google.com
Review URL: https://codereview.chromium.org//260713008
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36001 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-09 22:42:10 +00:00
johnmccutchan@google.com
6817f45324
Fix return value for makeCurrent
...
BUG=
Review URL: https://codereview.chromium.org//279913002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35979 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-09 16:19:27 +00:00
srdjan@google.com
ff45a972b5
Refactor and improve code for pow.
...
R=zra@google.com
Review URL: https://codereview.chromium.org//270743004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35946 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-08 22:18:04 +00:00
johnmccutchan@google.com
850074a704
Refactor 'dart:profiler' UserTag API
...
- Each isolate starts off with a 'Default' UserTag set.
- A null tag cannot be set.
- Calls to clearCurrentTag() should be replaced with a call to UserTag.defaultTag.makeCurrent().
- makeCurrent returns the previously current tag.
This allows for the following pattern to work:
callee() {
var old = calleeTag.makeCurrent();
...
old.makeCurrent();
}
caller() {
var old = callerTag.makeCurrent();
...
callee();
assert(getCurrentTag() == callerTag);
...
old.makeCurrent();
}
R=iposva@google.com , zra@google.com
Review URL: https://codereview.chromium.org//266913010
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35810 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-06 17:07:26 +00:00
rmacnak@google.com
f0d289599c
VM: Fix TypedefMirror.isPrivate and TypeVariableMirror.isPrivate.
...
BUG=http://dartbug.com/18271
R=asiva@google.com , gbracha@google.com
Review URL: https://codereview.chromium.org//240443007
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35758 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-05 19:45:58 +00:00
lrn@google.com
f449a85d1e
Unify error messages for iterables and lists.
...
Add factory methods that generate the errors thrown for unmodifiable lists,
non-growable lists and iterations with the wrong number of elements.
R=iposva@google.com , sgjesse@google.com
Review URL: https://codereview.chromium.org//262803003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35733 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-05 09:26:56 +00:00
asiva@google.com
f97858fb06
Move the double isNegative test back to double.cc as it seems to cause some compile issues when it is in object.h
...
R=zra@google.com
Review URL: https://codereview.chromium.org//266723012
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35695 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-02 16:49:59 +00:00
asiva@google.com
6cd6e8b52a
- implement IsNegative for class Double
...
- move IsZero under class Integer as it is not used in class Double
R=srdjan@google.com
Review URL: https://codereview.chromium.org//264853006
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35648 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-01 18:26:34 +00:00
iposva@google.com
16e405af4c
- Fix for unsuccessful hoisting of CheckSmi in _HashMap.[]=
...
R=srdjan@google.com
Review URL: https://codereview.chromium.org//257123004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35511 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-28 23:43:19 +00:00
rmacnak@google.com
f848586f7f
Prevent unbounded growth of the getField/setField closure caches.
...
BUG=http://dartbug.com/16539
R=iposva@google.com
Review URL: https://codereview.chromium.org//241703002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35433 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-25 17:47:15 +00:00
jacobr@google.com
8fd3f6a789
Workaround stacktrace crasher bug in the VM.
...
Fix for bug setting breakpoint after app reload.
BUG=
R=hausner@google.com
Review URL: https://codereview.chromium.org//254683003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35401 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-24 20:34:19 +00:00
lrn@google.com
2a93b93c1c
Remove unmodifiable map wrappers that could instead use UnmodifiableMapView.
...
R=sgjesse@google.com
Committed: https://code.google.com/p/dart/source/detail?r=35244
Review URL: https://codereview.chromium.org//214723002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35361 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-24 08:51:41 +00:00
hausner@google.com
3f40651e3a
Support evaluation of expressions in context of a stack frame
...
This change adds a debugger API function to evaluate an expression
in the context of a particular stack frame. The expression can
refer to local variables accessible in the frame, but it cannot
alter the variables.
R=regis@google.com
Review URL: https://codereview.chromium.org//249533003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35340 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-23 22:56:23 +00:00
iposva@google.com
fd8565b071
- Add a minimal implementation of Capability.
...
- Make RawReceivePort and SendPort VM internal objects.
- Rationalize the creation of ports and their handling within the VM.
R=asiva@google.com
Review URL: https://codereview.chromium.org//243973002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35325 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-23 19:44:03 +00:00
ajohnsen@google.com
ee4ff079f5
Speed up DateTime members, by caching the results.
...
The result is stored in a list of ints. This turned out to be the most efficient way to store it, compared to packing in ints.
BUG=
R=srdjan@google.com
Review URL: https://codereview.chromium.org//247373004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35303 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-23 06:17:39 +00:00
rmacnak@google.com
7ba8ca5753
Reapply "Mark private functions in dart:* that are native or constructors as not visible (omitted from stack traces and ineligible for reflective enumeration or invocation)."
...
With fix for uninitialized is_dart_scheme_ when read from snapshot.
BUG=http://dartbug.com/15274
R=iposva@google.com
Review URL: https://codereview.chromium.org//247683002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35289 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-23 00:05:08 +00:00
kevmoo@google.com
696e05cfef
VM mirrors: Use UnmodifiableMapView from dart:collection
...
R=rmacnak@google.com
Review URL: https://codereview.chromium.org//246133003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35274 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-22 18:39:51 +00:00
lrn@google.com
5f34d56f70
Avoid comparing smi to mint in smi.toString().
...
As it happens 10^10 has 11 digits, not 10.
R=ajohnsen@google.com
Review URL: https://codereview.chromium.org//247083002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35249 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-22 09:26:31 +00:00
lrn@google.com
0e24a1701c
Revert "Remove unmodifiable map wrappers that could instead use UnmodifiableMapView."
...
Some tests fail.
Review URL: https://codereview.chromium.org//246833003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35245 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-22 06:21:24 +00:00
lrn@google.com
04b55abe64
Remove unmodifiable map wrappers that could instead use UnmodifiableMapView.
...
R=sgjesse@google.com
Review URL: https://codereview.chromium.org//214723002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35244 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-22 05:53:33 +00:00