Commit Graph

18413 Commits

Author SHA1 Message Date
srdjan@google.com cb82be7b44 Restructure instance setter and finish the last 1/3 of increment instance field optimization.
Review URL: http://codereview.chromium.org//8439059

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1159 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-03 18:37:44 +00:00
srdjan@google.com 49caedb014 Fix issue: 5427703 (compareTo), fix parsing of -0.0.
Review URL: http://codereview.chromium.org//8430037

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1156 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-03 18:03:39 +00:00
ngeoffray@google.com a76068abeb Remove unused constructor.
Review URL: http://codereview.chromium.org//8440062

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1138 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-03 10:09:06 +00:00
ager@google.com 8e714d4a4c Fix type mismatch in File.fullPathSync.
R=sgjesse@google.com
BUG=
TEST=

Review URL: http://codereview.chromium.org//8351094

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1137 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-03 10:06:55 +00:00
ager@google.com 026a56f666 Implement fullPath method on File objects.
R=sgjesse@google.com
BUG=
TEST=

Review URL: http://codereview.chromium.org//8439067

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1134 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-03 08:28:16 +00:00
hausner@google.com f401476d02 Fix problem with named arguments in constructors
When generating the implicit super call to the body, the argument
names have to be duplicated from the implicit initializer call.
Review URL: http://codereview.chromium.org//8386065

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1130 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-03 00:36:27 +00:00
srdjan@google.com 67cee5e5d2 Intrinsify String.charCodeAt, String.length and String.hashCode. Improves frog performance by 2x.
Review URL: http://codereview.chromium.org//8440051

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1120 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-02 20:42:23 +00:00
hausner@google.com 7651034e9e Two-phase constructors
This CL fixes the initializer evaluation order and brings the VM fully up to spec.

Constructors are executed in two phases: the initializer phase and the constructor body phase. An additional implicit parameter tells the constructor code whether to execute the initializer list or the body (or both).

If the super initializer call is not at the end of the initializer list, the super constructor has to be called twice. The arguments to the super initializer have to be evaluated and stored in temporary local variables. At the beginning of the constructor block, a second implicit super call is inserted.

If the super initializer call happens to be at the end of the list, none of this madness has to happen, except for the extra implicit parameter to the constructor.

 
Review URL: http://codereview.chromium.org//8440014

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1102 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-02 17:19:15 +00:00
mattsh@google.com 512a603600 use more distinctive pattern to mark where dart source goes
BUG=
TEST=

Review URL: http://codereview.chromium.org//8363018

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1100 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-02 16:58:25 +00:00
srdjan@google.com aa4ec58426 Optimize 2/3 of instance field increment operation.
Review URL: http://codereview.chromium.org//8439023

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1097 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-02 16:20:58 +00:00
ager@google.com f74ecd22fd Implemented File create API.
R=sgjesse@google.com
BUG=
TEST=

Review URL: http://codereview.chromium.org//8437056

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1095 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-02 15:57:54 +00:00
ager@google.com 3c821dbcdd Refactor async file implementation.
Use FileOperation classes instead of maps.

R=sgjesse@google.com
BUG=
TEST=

Review URL: http://codereview.chromium.org//8440037

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1088 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-02 13:53:10 +00:00
ager@google.com ba34b6eb98 Fix process test and implementation after change to setter for registering event handler.
R=sgjesse@google.com
BUG=
TEST=

Review URL: http://codereview.chromium.org//8440035

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1084 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-02 12:50:59 +00:00
ager@google.com 362d04f9af Consistently use setters to set event handlers in native APIs.
R=sgjesse@google.com
BUG=
TEST=

Review URL: http://codereview.chromium.org//8386029

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1083 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-02 12:12:43 +00:00
regis@google.com 23552a0e14 Perform type canonicalization as part of type finalization.
Remove signature type cache from signature classes, since type canonicalization
has the same effect.
Review URL: http://codereview.chromium.org//8437028

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1064 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-02 01:40:34 +00:00
asiva@google.com 133894629b Fix return statement to return the right result.
Review URL: http://codereview.chromium.org//8439028

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1062 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-02 01:22:40 +00:00
cshapiro@google.com 6d99ab1ec2 Fail if an imported file cannot be read.
Review URL: http://codereview.chromium.org//8439025

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1060 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-02 00:54:02 +00:00
asiva@google.com 5db460f310 Add command line options to specify the various heap size parameters.
Review URL: http://codereview.chromium.org//8423023

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1059 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-02 00:48:33 +00:00
srdjan@google.com 4ebee97585 Print Bigints in decimal format.
Review URL: http://codereview.chromium.org//8351050

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1058 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-02 00:36:10 +00:00
regis@google.com 4bc0c5eecc Simplify canonicalization of constants and types.
Review URL: http://codereview.chromium.org//8442001

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1053 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-01 23:38:09 +00:00
regis@google.com 3125475ef8 Canonicalize types.
Review URL: http://codereview.chromium.org//8372041

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1045 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-01 22:00:06 +00:00
turnidge@google.com d7c536d677 Reorganize dart_api.h and add a bunch of documentation.
Review URL: http://codereview.chromium.org//8343045

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1034 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-01 18:11:36 +00:00
ager@google.com 5b5c36e253 Implement async file API on top of isolates.
This is not going to be efficient but will give us the right
semantics of the operations. We should be using native async
operations for this.

Fixed a bug in VM implementation of List.setRange.

R=sgjesse@google.com
BUG=
TEST=

Review URL: http://codereview.chromium.org//8431028

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1012 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-01 14:07:30 +00:00
sgjesse@google.com 032de2585d Some Linux and Mac OS event handler refactoring
This moved some of the handling of the data on a socket to a socket data object.

This is a step in preparation for another change where more state will be stored on socket data object.

This is also a step in moving from an array of socket data objects indexed by the file descriptor to a hash map of socket data objects.

R=ager@google.com

BUG=
TEST=

Review URL: http://codereview.chromium.org//8431027

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1001 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-01 11:54:14 +00:00
sgjesse@google.com 18e5ef8da5 New OutputStream interface
R=ager@google.com

BUG=
TEST=

Review URL: http://codereview.chromium.org//8413034

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@997 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-01 10:10:37 +00:00
ngeoffray@google.com 33ec29bf11 Add a new variable environment for testing, to replace the misusage of 'arch'.
Review URL: http://codereview.chromium.org//8408002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@993 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-01 09:12:55 +00:00
srdjan@google.com 24b14c7e53 Fix for bug 5270133 by preventing wrong canonicalization. Fixes problem of sporadic Dart failures when running in checked mode. Fixed wrong tests.
Review URL: http://codereview.chromium.org//8432016

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@983 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-01 00:12:12 +00:00
regis@google.com a8478d5312 Fix parsing of named parameters (issue 243).
Add corresponding test.
Review URL: http://codereview.chromium.org//8387046

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@973 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-31 21:16:15 +00:00
asiva@google.com b94e5d20ad Enhance the array access API to deal with any objct that implements the list interface.
A future change will consider making the growable array a first class VM object so that access to growable array would be more efficient through the API.
Review URL: http://codereview.chromium.org//8417003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@972 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-31 21:08:39 +00:00
asiva@google.com 8e2f6361f1 When generating snapshots for a specified script don't include the builtin library by default. The DOM snap shot for instance does not want the builtin library. If the builtin library is needed it needs to be explicitly imported in the specified script.
Review URL: http://codereview.chromium.org//8343071

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@971 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-31 20:53:44 +00:00
turnidge@google.com 45ab0f6d65 DART_CHECK_VALID -- abort on an invalid handle.
EXPECT_VALID -- check handle validity in unit tests.
Review URL: http://codereview.chromium.org//8401010

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@970 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-31 20:18:07 +00:00
antonm@google.com cf53ea78d7 Make DartVM build with clang.
Review URL: http://codereview.chromium.org//8381037

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@966 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-31 19:07:48 +00:00
regis@google.com f9cb997183 Verify that user classes do not extend any of Bool, Double, ObjectArray,
ImmutableArray, GrowableObjectArray, IntegerImplementation, Smi, Mint,
BigInt, OneByteString, TwoByteString, FourByteString.
Review URL: http://codereview.chromium.org//8429013

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@963 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-31 18:45:16 +00:00
srdjan@google.com 6d8d978d5a FIx issue 261: throw exception if index if idnexed oeprators if lists Array and GrowableArray is not int.
Review URL: http://codereview.chromium.org//8387035

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@962 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-31 18:40:32 +00:00
antonm@google.com f05150594a Proper reg for deoptiomization.
EAX may get overwritten by the operation.  Original value can be restored from ECX.

Review URL: http://codereview.chromium.org//8430007

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@958 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-31 17:49:28 +00:00
srdjan@google.com db15f36789 Print also comments with --print_flags
Review URL: http://codereview.chromium.org//8413056

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@955 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-31 16:48:21 +00:00
ngeoffray@google.com 5496005d1d Add optional arguments to our indexOf/lastIndexOf methods.
Review URL: http://codereview.chromium.org//8424012

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@947 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-31 13:21:30 +00:00
olonho@google.com 8b39ed40eb Add missed size check for kTypeArray.
Review URL: http://codereview.chromium.org//8403041

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@944 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-31 12:53:54 +00:00
ngeoffray@google.com 210fd33d0a Remove List.fromList constructor, and List.copyFrom. They are duplicates of the new range methods.
Review URL: http://codereview.chromium.org//8422005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@941 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-31 09:49:15 +00:00
ager@google.com 83539ca419 Add type checks to directory listing.
R=sgjesse@google.com
BUG=
TEST=

Review URL: http://codereview.chromium.org//8417023

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@940 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-31 09:37:07 +00:00
srdjan@google.com 002bb47821 Special code for equality comparison for Smi, allowing null on left or right without calling deoptimization. The full solution is to implement two arguments type feedback collection (maybe also collect null classes for
equality comparison?)
Review URL: http://codereview.chromium.org//8413047

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@923 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-28 22:25:05 +00:00
regis@google.com 78353be760 Verify that user classes/interfaces do not extend/implement any of bool, num,
int, double, String, Function, or Dynamic.
Review URL: http://codereview.chromium.org//8416052

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@922 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-28 22:24:18 +00:00
asiva@google.com 9c7db339b8 Allocate and pass a resolved_path buffer to realpath as older macos versions
do not work when a NULL is passed in for resolved_path
Review URL: http://codereview.chromium.org//8400070

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@917 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-28 20:22:34 +00:00
asiva@google.com b245c234f0 Report NullPointerException when we try to construct a regular expression
using a NULL pointer.
Report NullPointerException instead of ObjectNotClosureException when the
closure object is Null.
Review URL: http://codereview.chromium.org//8363034

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@901 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-28 17:32:29 +00:00
asiva@google.com eea0c4fd61 Fix the snapshot creation script for the new command line syntax.
Review URL: http://codereview.chromium.org//8414015

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@900 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-28 17:14:35 +00:00
rchandia@google.com 035fdaa49d Added builtin native call to exit the running vm
Total uses exit(int) to signal whether to stop or restart

R=iposva@google.com
BUG=
TEST=

Review URL: http://codereview.chromium.org//8317006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@893 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-28 15:32:33 +00:00
srdjan@google.com 8d69118676 More strict non-equal cleanups in library code
Review URL: http://codereview.chromium.org//8413018

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@892 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-28 15:21:42 +00:00
sgjesse@google.com 6568436be7 Explicitly handle listen sockets and connection sockets differently in Linux and Mac OS eventhandler
Previously the assumption was that an POLLIN event with no data available was from a listen socket with pending accepts. However a POLLIN event from a connection socket can have no data available if the data has been read before the event is processed.

R=ager@google.com

BUG=
TEST=

Review URL: http://codereview.chromium.org//8399039

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@878 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-28 09:30:42 +00:00
regis@google.com d104e34a9f Add support for 'Dynamic' type in the VM.
Add a test and disable if for dartc.
Review URL: http://codereview.chromium.org//8403005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@862 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-28 00:00:31 +00:00
srdjan@google.com 959f4b519d Use strict equality when comparing with null, especially when null is a default value.
Review URL: http://codereview.chromium.org//8400038

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@859 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-27 22:11:16 +00:00