Commit Graph

4366 Commits

Author SHA1 Message Date
ajohnsen@google.com 856df98a8f Remove old code for dealing with non-typed buffers in Socket.write.
BUG=
R=whesse@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24722 260f80e4-7a28-3924-810f-c04153c831b5
2013-07-03 11:43:02 +00:00
iposva@google.com 4e96a9bfef Fix bug 11637:
- Handle repeated private name mangling which can been introduced
  with mixins.

R=rmacnak@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24712 260f80e4-7a28-3924-810f-c04153c831b5
2013-07-03 01:37:02 +00:00
hausner@google.com 8b8795fc0b Const constructor must have const super initializer
Compile time error if a const constructor calls a non-const super
constructor (either explicitly or implicitly).

R=regis@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24704 260f80e4-7a28-3924-810f-c04153c831b5
2013-07-02 20:09:24 +00:00
johnmccutchan@google.com b7608cc5a4 JSONStream and tests
R=iposva@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24697 260f80e4-7a28-3924-810f-c04153c831b5
2013-07-02 16:58:02 +00:00
rmacnak@google.com 04e9e1fe56 Add a VM defined class VMReference as an opaque pointer for Dart code to VM internal objects.
R=asiva@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24694 260f80e4-7a28-3924-810f-c04153c831b5
2013-07-02 16:17:25 +00:00
hausner@google.com c1fe1ba67c Fix a debugger step regression
Fix stepping after hitting a user breakpoint.

R=devoncarew@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24691 260f80e4-7a28-3924-810f-c04153c831b5
2013-07-02 15:21:22 +00:00
ajohnsen@google.com 908bf5b435 Fix Stdio->Stdin typo and missing external.
BUG=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24685 260f80e4-7a28-3924-810f-c04153c831b5
2013-07-02 13:29:34 +00:00
ajohnsen@google.com 8aa206940c Add Stdio.readByteSync and Stdio.readLineSync.
BUG=https://code.google.com/p/dart/issues/detail?id=7136
R=whesse@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24684 260f80e4-7a28-3924-810f-c04153c831b5
2013-07-02 13:18:00 +00:00
asiva@google.com 5f0c327096 Add Dart_GetSupertype to the dart debugger API so that the dartium
debugger interface can use this instead of Dart_GetSuperClass.

R=regis@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24648 260f80e4-7a28-3924-810f-c04153c831b5
2013-07-01 19:46:42 +00:00
zra@google.com 98fee55e2c Fixes ARM assembler test for hardware.
R=regis@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24639 260f80e4-7a28-3924-810f-c04153c831b5
2013-07-01 18:37:10 +00:00
zra@google.com f86d2ec1b4 Adds support for integer division for ARM chips without the sdiv instruction.
R=regis@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24635 260f80e4-7a28-3924-810f-c04153c831b5
2013-07-01 17:44:09 +00:00
hausner@google.com 1e955965df Better single stepping in VM debugger
Single stepping now steps into the next dart code that the
user is interested in, including from one asynchronous task
to the next.

R=asiva@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24632 260f80e4-7a28-3924-810f-c04153c831b5
2013-07-01 17:29:18 +00:00
ajohnsen@google.com 5dcd8f20e0 Extract the correct os-error on Socket.write, and report correctly in IOSink.
BUG=
R=whesse@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24623 260f80e4-7a28-3924-810f-c04153c831b5
2013-07-01 11:23:17 +00:00
asiva@google.com 1e0c98714b Make writes consistent across socket and file synchronous/asynchronus writes in terms of truncation semantics (reports an argument error if the list element contains a non byte value).
Remove Common_IsBuiltinList as it is not used anymore

Change synchronous file writes to use Dart_TypedDataAcquireData and
Dart_TypedDataReleaseData since the buffer object is always a Uint8List
instead of the more expensive Dart_ListGetAsBytes.

R=ajohnsen@google.com, iposva@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24620 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-29 18:19:33 +00:00
zra@google.com 76f872967c Optimize functions containing try-catch on MIPS.
R=regis@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24616 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-28 23:48:13 +00:00
regis@google.com 5eb7e3b03d Optimize functions containing try-catch on ARM.
R=zra@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24615 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-28 23:09:34 +00:00
srdjan@google.com 15c47d5bf6 Fix 11574: Smi is a subtype of parametrizable Compare.
R=regis@google.com, zra@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24612 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-28 22:30:59 +00:00
srdjan@google.com 4456ba26ff Fixed crash in EqualityCompareInstr::IsCheckedStrictEqual : update unary_ic_data_ if ic_data_ is set at a later stage.
Review URL: https://codereview.chromium.org//18089019

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24598 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-28 17:41:51 +00:00
srdjan@google.com 74c379d01b Equality can be converted to a strict equality with checks. If the number of checks exceeds the threshold (--max_equality_polymorphic_checks=32) use megamorphic dispatch instead.
R=kmillikin@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24592 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-28 16:15:50 +00:00
kmillikin@google.com 5f9331e20c Fix a VM bug in the handling of try/catch/finally.
In the case that code in the catch block threw in any fashion, the
finally block was not executed.  Fix this by properly treating the
finally block of try/catch/finally as an exception handler for the
catch block.

R=fschneider@google.com, srdjan@google.com
BUG=https://code.google.com/p/dart/issues/detail?id=430

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24583 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-28 12:28:56 +00:00
ajohnsen@google.com b39d2c08ca Implement redirect-stdout-on-close on Winows, to the 'NUL' device.
BUG=https://code.google.com/p/dart/issues/detail?id=11593
R=kustermann@google.com, whesse@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24578 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-28 10:29:21 +00:00
ajohnsen@google.com 900dba8e03 Remove static mutexes/monitors from dart:io.
BUG=
R=whesse@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24576 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-28 08:44:15 +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 2402d2ae18 - Fix compilation errors. Apparently clang != clang everywhere.
Review URL: https://codereview.chromium.org//18080007

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24564 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-28 00:10:39 +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
zra@google.com e730b67b10 Fixes bug in mips left shift.
R=regis@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24561 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-27 23:11:13 +00:00
srdjan@google.com 0656d300ef Split IdenticalWithNumberCheck in two versions: once called from unoptimized code the other called from optimzied code. Only the one for unoptimized code will be able to stop for single stepping. The optimized version is a leaf stub and cannot cause GC.
R=hausner@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24557 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-27 21:52:49 +00:00
regis@google.com 51276c7a29 Remove obsolete #ifdefs excluding MIPS target.
R=zra@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24556 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-27 21:51:55 +00:00
zra@google.com 573b9d859a Fixes a bug in the mips Random_nextState intrinsic.
R=regis@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24549 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-27 20:46:28 +00:00
regis@google.com 3711825476 Fix Random_nextState intrinsic on ARM.
R=zra@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24548 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-27 20:16:53 +00:00
zra@google.com 55d97a6d56 Adds missing case in mips double comparison.
Also, adds mips and simmips to runtime benchmark script,
and fixes up a status file.

R=regis@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24541 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-27 19:03:04 +00:00
iposva@google.com 50fc824be9 - Remove arguments definition test from the VM.
- Update tests still referring to it.

R=regis@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24539 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-27 18:37:53 +00:00
iposva@google.com 7c6573258b - Protect against icount_ overflow in the delay slot and only
stop if a stop_sim_at value has been set.

R=zra@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24537 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-27 17:40:35 +00:00
ajohnsen@google.com 6005ff6a18 Fix comment from earlier commit.
BUG=
R=iposva@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24526 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-27 16:45:40 +00:00
ajohnsen@google.com d506a6e490 Stop printing when stdout is closed.
This makes sure we don't print(...) data to a file opened after stdout
was closed.

BUG=https://code.google.com/p/dart/issues/detail?id=9615
R=kustermann@google.com, whesse@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24525 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-27 16:44:39 +00:00
zra@google.com 60392c70fd Implements external array access for mips.
R=regis@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24524 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-27 16:42:39 +00:00
srdjan@google.com f415b31685 Add --deoptimization_counter_inlining_threshold=10 that stops inlining in a method that has reached it.
R=fschneider@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24519 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-27 15:26:16 +00:00
fschneider@google.com fd3f443181 Fix a bug in allocation sinking and load elimination.
1. Aliasing information was not computed for allocations that
are never used in a LoadField instruction.

2. CanBeAliased was not correct in the case of a StoreVMField.

BUG=https://code.google.com/p/dart/issues/detail?id=11538
TEST=runtime/vm/flow_graph_optimizer.cc
R=vegorov@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24515 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-27 13:26:23 +00:00
whesse@google.com 6aa0fafa00 Fix runtime build for Android
BUG=
R=sgjesse@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24510 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-27 08:31:17 +00:00
iposva@google.com 2d2f1bf4ea - Use VOID_TEMP_FAILURE_RETRY where needed
Review URL: https://codereview.chromium.org//17840009

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24505 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-27 01:14:12 +00:00
regis@google.com 0c93466054 Hide parent function name in name of closurized function to user (issue 5436).
Hide implicit parameter of closure to user.

R=iposva@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24504 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-27 00:49:49 +00:00
srdjan@google.com f791281f91 Add two-byte string support in codeunitAt intrinsic.
R=regis@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24500 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-27 00:05:10 +00:00
regis@google.com 169bc2f989 Fix code for store buffer update on ARM and MIPS (link register was trashed).
R=zra@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24493 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-26 22:14:42 +00:00
asiva@google.com e16291b973 Convert implementation in mirrors.cc to use Dart_GetType instead of Dart_GetClass.
R=regis@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24491 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-26 21:30:18 +00:00
regis@google.com 5ffa56b798 Fix and simplify invocation of noSuchMethod on all platforms after the wrong
number (or bad name) of arguments is passed.
The frame of the wrong method (the one invoked with the wrong number or name of
arguments) is not left on the stack and therefore not visible in the stack trace
anymore, which is much cleaner, especially since the leftover frame was not
fully initialized.
This change was already done on ARM.

R=zra@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24485 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-26 19:58:49 +00:00
zra@google.com ce82a777e5 Fixes integer negate intrinsic for arm and mips.
R=regis@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24481 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-26 17:43:48 +00:00
regis@google.com 70043d1f94 Fix and simplify invocation of noSuchMethod on ARM after the wrong number of
arguments is passed.
The frame of the wrong method (the one invoked with the wrong number of
arguments) is not left on the stack and therefore not visible in the stack trace
anymore, which is much cleaner, especially since the leftover frame was not
fully initialized.
Note: We should simplify this on other platforms as well.

R=zra@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24475 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-26 16:31:53 +00:00
zra@google.com 364c5406b8 Fixes floating point bug in ARM simulator.
Adjusts status files to match.

R=regis@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24473 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-26 15:48:22 +00:00
ajohnsen@google.com 7aa0222b5b Avoid picking port 65535 for ServerSockets, when any is requested.
Some browsers block requests to 65535.

BUG=
R=sgjesse@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24471 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-26 15:12:56 +00:00
sgjesse@google.com 78e9b8ef87 dart:io | Add rename to Link
R=whesse@google.com
BUG=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24468 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-26 14:09:29 +00:00