Commit Graph

15405 Commits

Author SHA1 Message Date
sgjesse@google.com 8055ffeb77 Add close to input stream and cleanup socket and streams
* All input streams now have a close method for just cutting
  the stream
* Removed interfaces FileInputStream and FileOutputStream
* Added exceptions to socket to avoid mixing stream and non-stream
  use of the same socket
* Added special handling of the socket connect handler callback

R=ager@google.com

BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2893 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-02 13:00:59 +00:00
iposva@google.com 1b135b4b5a - Fix try lock on Lion.
Review URL: http://codereview.chromium.org//9022041

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2880 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-29 23:05:40 +00:00
asiva@google.com 2a3eca43a4 Push raw_null instead of smi 0 in all places were we setup the return value location before calling into the runtime.
Review URL: http://codereview.chromium.org//8965071

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2844 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-28 01:55:58 +00:00
asiva@google.com da44923290 Move include of limits.h to globals.h
Review URL: http://codereview.chromium.org//9005037

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2839 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-28 00:13:57 +00:00
asiva@google.com bffac87084 Make snapshots 32 or 64 bit compliant by using Write<int64_t> and Read<int64_t> for intptr_t types and adjust Smi values into Smi/Mint or BigInt based on the value read.
Review URL: http://codereview.chromium.org//9021042

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2838 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-27 23:54:30 +00:00
iposva@google.com e72f0af364 - Fix a couple near branches that were out of reach.
- Implement slow case for AllocateContext and AllocateClosure stubs.
Review URL: http://codereview.chromium.org//9046009

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2836 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-27 22:59:54 +00:00
asiva@google.com 59858f6e58 In CheckIsolate process only if we have any unfinalized classes.
Review URL: http://codereview.chromium.org//9027025

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2798 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-23 00:46:00 +00:00
iposva@google.com 39714313b3 - Return 0 in the unreachable case.
Review URL: http://codereview.chromium.org//9022025

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2797 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-23 00:31:17 +00:00
iposva@google.com 7d5e5ec8a2 - Promote objects from new gen to old space if they survived a scavenge.
- Properly initialize the tags in intrinsified allocation.
- Check for valid tag bits.
Review URL: http://codereview.chromium.org//9027017

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2796 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-23 00:14:05 +00:00
srdjan@google.com c91cb11962 Implement toString for ImmutableArray and GrowableObjectArray (Issue 952)
Review URL: http://codereview.chromium.org//9027026

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2795 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-23 00:12:11 +00:00
srdjan@google.com a1bf722c78 Do back propagation of types(classes) for checks in load and store indexed.
Review URL: http://codereview.chromium.org//9022019

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2793 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-22 23:27:21 +00:00
floitsch@google.com 521959cb33 ToStringAsFixed returns now 0 instead of -0.
Review URL: http://codereview.chromium.org//8958018

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2791 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-22 22:18:21 +00:00
floitsch@google.com e231959e13 Implement Double.toStringAsFixed.
Review URL: http://codereview.chromium.org//8728006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2790 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-22 22:03:35 +00:00
srdjan@google.com 1fe386517a Propagate more local variable types: if a load local is followed by a deoptimizationtype check, set the local to have that type from now on.
Review URL: http://codereview.chromium.org//9025025

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2788 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-22 21:41:26 +00:00
sgjesse@google.com 97ca1c1bdf Move comment to the right place
R=iposva@google.com

BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2761 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-22 15:32:33 +00:00
ager@google.com 27508f3eb1 Change the process API to be completely asynchronous.
Some of the implementation is still not asynchronous but the API is
now prepared for it.

This is a breaking change for the dart test scripts. Once the
change has its final form I will add new stable builds of the
VM to the changelist for running tests.

R=sgjesse@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2753 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-22 13:43:43 +00:00
sgjesse@google.com d119045a88 Update the isolate interrupt test
* Space out the interrupts by short sleeps
* Use a constant instead of the magic number 3 for the number of interrups

R=iposva@google.com

BUG=dart:906
TEST=VM test IsolateInterrupt

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2740 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-22 08:21:41 +00:00
srdjan@google.com d4e8bf34dc More optimizations.
Review URL: http://codereview.chromium.org//8999031

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2739 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-22 01:12:59 +00:00
hausner@google.com 16e94a3109 Fix linux build
Picky compiler.
Review URL: http://codereview.chromium.org//9016032

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2737 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-22 00:21:41 +00:00
hausner@google.com 44376ee4a5 Retrieve value of local variables in stack frames.
Works for stack-based variables. Need more work to distinguish between
stack and context (captured) variables.
 
Review URL: http://codereview.chromium.org//9019029

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2736 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-22 00:17:15 +00:00
srdjan@google.com 884228569f More optimizations: in binary operations check sometimesnnn for two classes instead of one; call some target operators directly (checked call) instead of via inline cache call; allow smi/double binary operations to be inlined.
Review URL: http://codereview.chromium.org//8995019

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2732 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-21 22:46:01 +00:00
srdjan@google.com 74c0af9144 Optimize indexed store for growable array (intrinsification and inlined optimized).
Review URL: http://codereview.chromium.org//9020030

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2731 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-21 22:37:21 +00:00
srdjan@google.com 8ad051c2f3 X64: check all cases with "__ movq(FieldAddress" and converted them to StoreIntoObject if appropriate.
Review URL: http://codereview.chromium.org//9017024

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2725 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-21 21:35:25 +00:00
asiva@google.com b607d887bc Fix win32 build break.
TBR=hausner
Review URL: http://codereview.chromium.org//9017026

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2721 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-21 19:59:00 +00:00
asiva@google.com 4d22fcc329 Refactor some of the snapshot writer classes to eliminate code duplication.
Review URL: http://codereview.chromium.org//9018002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2718 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-21 19:37:37 +00:00
srdjan@google.com d8397e22ad Check all cases with "__ movl(FieldAddress" and converted them to StoreIntoObject where appropriate.
Review URL: http://codereview.chromium.org//9021025

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2714 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-21 18:36:53 +00:00
cshapiro@google.com 9108ddb9a2 Do not use C++ const references in the C interface.
Review URL: http://codereview.chromium.org//9017018

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2711 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-21 17:50:38 +00:00
iposva@google.com 5b509684e3 - Fix outdated use of factory clause.
- Update error messages.
Review URL: http://codereview.chromium.org//8949043

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2707 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-21 17:26:02 +00:00
sgjesse@google.com 7014704266 Fix list output stream
The write and writeFrom where missing their boolean return value.

R=ager@google.com

BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2687 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-21 08:33:02 +00:00
asiva@google.com 69c9c61ee7 Use StorePointer instead of direct assignments of objects.
Review URL: http://codereview.chromium.org//9007032

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2674 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-20 22:38:12 +00:00
srdjan@google.com 0e435be09c Add (debug) printing when IC is used in optimized code (must eliminate it).
Do Smi binary op only on two Smi-s.
Increase deopt counter limit to 5., which still may be too low. Deopt counter is here mainly to prevent drastic performance degradations because of bugs or missing implementations.
Review URL: http://codereview.chromium.org//9007027

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2673 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-20 22:05:41 +00:00
hausner@google.com 503e2219b8 First part of inspecting local variables
This change introduces variable descriptors that describe the name, stack slot index, and source code stretch in which a variable is valid.

Activation frames in the stack trace now can enumerate the variables that are active in that frame.

Next step: fetch the value of variables from the stack.
Review URL: http://codereview.chromium.org//8992020

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2671 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-20 21:40:28 +00:00
srdjan@google.com 098d244ae0 Fix issue 920: do not allow length of a list go below 0.
Review URL: http://codereview.chromium.org//9007015

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2648 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-20 17:45:04 +00:00
sgjesse@google.com 3ebb36c77f Implement list based output stream and add pipe to list based input streams
R=ager@google.com

BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2641 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-20 16:03:29 +00:00
sgjesse@google.com bcd4584f59 Add input streams based on supplying data from lists
Two new streams are added ListInputStream and
DynamicListInputStream. ListInputStream takes all the data in the
stream in the constructor whereas DynamicListInputStream can get data
added dynamically using the write method and have end of stream
indicated using the method markEndOfStream.

In a separate change I expect to have the current FileInputStream be
based on the _BaseDataInputStream as it currently used the same logic
with the sync file API.

R=ager@google.com

BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2621 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-20 10:07:02 +00:00
ager@google.com 47a7c9bcdb Undo change that converted exit code 255 to -1.
It seems that most systems do not perform that conversion and it
could therefore be confusing.

Simplify the crash handling in the test scripts accordingly.

R=sgjesse@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2620 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-20 10:06:35 +00:00
ager@google.com 1a9631d322 Fix type typo. :-)
R=sgjesse@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2618 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-20 09:38:20 +00:00
ager@google.com 46ba817562 Add asynchronous versions of the methods on Directory.
For now, use an isolate to make the operations async from the
point of view of the main Dart thread.

Clean up the directory tests a bit by removing code that didn't do anything and by removing file testing that is already covered by the file tests.

R=sgjesse@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2617 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-20 09:28:28 +00:00
sgjesse@google.com d54d84b7de Fix issue 906
R=iposva@google.com

BUG=dart:906

TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2616 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-20 09:21:43 +00:00
srdjan@google.com 9fe955e406 Fix a bug in intrinsified Array_setIndexed type check.
Optimize unary double operation negate.
Review URL: http://codereview.chromium.org//8996024

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2611 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-20 02:11:18 +00:00
cshapiro@google.com b270b5d305 Disable the weak persistent handle test on non-ia32 targets.
Review URL: http://codereview.chromium.org//9008002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2610 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-20 02:10:37 +00:00
asiva@google.com bde808f44b Changes to create an application snapshot which can be layered on top
after an isolate is created and initialized.

Added an option --use_script_snapshot which creates a snapshot of the specified script in an isolate, shuts that down and restarts on a new isolate and loads the script from the snapshot buffer and executes it.
Review URL: http://codereview.chromium.org//8970004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2609 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-20 02:04:24 +00:00
cshapiro@google.com 32f55ce37b Implement weak persistent handles in the Dart API.
Review URL: http://codereview.chromium.org//8984006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2607 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-20 01:44:53 +00:00
floitsch@google.com 173ffa2012 Updated to latest double-conversion library version.
Review URL: http://codereview.chromium.org//9001001

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2601 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-19 23:29:37 +00:00
iposva@google.com 0d25bce528 - Trigger old-gen GCs when needed.
- Sweep large pages.
- Handle free list elements when calculating sizes.
Review URL: http://codereview.chromium.org//8996011

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2593 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-19 19:29:10 +00:00
ager@google.com 1aaa58f803 Make the repeating argument to timers optional.
R=sgjesse@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2577 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-19 12:34:12 +00:00
sgjesse@google.com 0a3bf1c3eb Add pipe to input stream
Using the pipe method the data from an input stream can be piped
directly to an output stream.

R=whesse@google.com, ager@google.com

BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2564 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-19 09:14:19 +00:00
regis@google.com a577991ad5 Port code generator to x64.
Review URL: http://codereview.chromium.org//8984003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2557 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-17 00:56:02 +00:00
iposva@google.com 169dcfb5ff - Honor max_capacity even for large page allocation.
Review URL: http://codereview.chromium.org//8962006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2555 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-16 23:40:41 +00:00
iposva@google.com 2794252c9d - Apply review feedback.
Review URL: http://codereview.chromium.org//8976013

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2553 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-16 23:28:31 +00:00