asiva@google.com
67601eb671
Temporary fix for build break. Turn off test.
...
Review URL: https://chromiumcodereview.appspot.com//10582002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8818 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-18 20:20:25 +00:00
iposva@google.com
5a05319599
- Avoid doubling 0 when trying to determine a new size for the
...
ApiMessageWriter forwarding list.
- Use matching allocation calls in ApiMessageWriter.
- Sort list of source files.
Review URL: https://chromiumcodereview.appspot.com//10557043
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8817 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-18 20:01:28 +00:00
asiva@google.com
73bfbc5da4
Allow implicit 'close your eyes' of native methods. This will hopefully fix issue 3466.
...
- when resolving the native method which has been closurized account for the 'this' argument in the count of arguments.
- explicitly copy the 'this' parameter in the closure context as the first parameter before calling the native function. This is done by piggy backing on the CopyParameters code used for functions with optional parameters.
Review URL: https://chromiumcodereview.appspot.com//10535180
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8816 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-18 19:56:06 +00:00
vegorov@google.com
959cf98b00
Implement a simple register allocator that tries to keep instruction results in registers.
...
Add --optimization-filter flag that allows to disbable optimizations for all function which do not match prefix. This allows to quickly localize problems with code generation.
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com//10559035
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8811 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-18 18:04:22 +00:00
hausner@google.com
a7f542becb
Remove obsolete String + code
...
Review URL: https://chromiumcodereview.appspot.com//10562038
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8810 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-18 18:00:25 +00:00
whesse@google.com
b8e4ca3a3e
Revert "Test infrastructure: Change the intentionally crashing process_test.cc, to try and avoid timeout of this process."
...
This reverts commit 51bfb317ef687e8457ce6bccb21f022d4b21ea74.
BUG=
TEST=standalone/io/process_segfault_test
Review URL: https://chromiumcodereview.appspot.com//10544207
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8797 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-18 14:16:00 +00:00
whesse@google.com
2c0463fbd6
Test infrastructure: Change the intentionally crashing process_test.cc, to try and avoid timeout of this process.
...
BUG=1947
TEST=standalone/io/test_runner_test
Review URL: https://chromiumcodereview.appspot.com//10532190
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8795 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-18 13:56:21 +00:00
fschneider@google.com
e1640d96ca
Fix bailout from the optimizing-mode compiler and put SSA construction under a flag.
...
For now the flag is off by default.
Review URL: https://chromiumcodereview.appspot.com//10568007
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8783 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-18 12:04:30 +00:00
vegorov@google.com
26fb4ca09a
Fix definition of CreateArrayComp::InputAt.
...
R=fschneider@google.com
Review URL: https://chromiumcodereview.appspot.com//10566025
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8780 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-18 11:39:04 +00:00
hausner@google.com
f0ccfe83e0
Turn off support for String + operator in the VM
...
Review URL: https://chromiumcodereview.appspot.com//10568002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8764 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-18 00:56:03 +00:00
cshapiro@google.com
e78250ca37
Generate code for store buffer updates in open-coded object field stores.
...
Review URL: https://chromiumcodereview.appspot.com//10536067
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8755 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-15 23:45:15 +00:00
asiva@google.com
4027727562
For now set the stack buffer size to 16k (we need to compute this during thread start and store it in the worker object instead of the current scheme of setting this up in HandleMessage).
...
Adjust stack size to 512KB as all tests seem to run with that limit.
Review URL: https://chromiumcodereview.appspot.com//10558013
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8754 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-15 23:32:47 +00:00
cshapiro@google.com
fdb1c60bf1
Document the ByteArray types and reconcile with the implementation.
...
BUG=1499
Review URL: https://chromiumcodereview.appspot.com//10535178
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8738 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-15 20:16:58 +00:00
srdjan@google.com
8ffba8989b
Chek stack overflow in while an do-while node (in order to be able to interrupt loops).
...
Review URL: https://chromiumcodereview.appspot.com//10562010
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8730 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-15 18:12:42 +00:00
asiva@google.com
5869878eb3
Set max stack size to 1 MB (this is excessive but we seem to have some dart code that has deep recursion).
...
Review URL: https://chromiumcodereview.appspot.com//10541191
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8704 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-15 01:50:30 +00:00
asiva@google.com
d7aafffcd8
Have the stack overflow code use the correct stack size set by the platform/thread.h
...
Review URL: https://chromiumcodereview.appspot.com//10544170
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8703 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-15 01:28:53 +00:00
regis@google.com
7527d97cf5
Inline Math.sqrt in new compilers.
...
Review URL: https://chromiumcodereview.appspot.com//10542167
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8702 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-15 00:56:25 +00:00
srdjan@google.com
b11999d58c
Fix stack sizes (kDefaultStackSize to 64kB, and kStackSizeBuffer to 4kb) to be able to catch stack overflows.
...
Review URL: https://chromiumcodereview.appspot.com//10539174
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8701 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-15 00:56:25 +00:00
srdjan@google.com
f26f243476
Improve equality operation (inline, direct calls).
...
Review URL: https://chromiumcodereview.appspot.com//10545186
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8700 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-15 00:40:58 +00:00
asiva@google.com
16f8c892aa
Add support for leaf runtime calls
...
- use a NoGCScope around these calls
- do not save and restore exit frame info, context register etc.
- Do not create a zone and handlescope by default
Review URL: https://chromiumcodereview.appspot.com//10542123
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8699 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-15 00:19:45 +00:00
hausner@google.com
41bd5107c4
Fix issue 3636, break on exception
...
Call the "pause on exception" handler in the debugger even when
there are no breakpoints set.
Fixes issue 3636.
Review URL: https://chromiumcodereview.appspot.com//10544159
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8679 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-14 18:07:48 +00:00
srdjan@google.com
0d74d13f2b
Implement polymorphic instance calls.
...
Review URL: https://chromiumcodereview.appspot.com//10539145
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8678 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-14 18:07:43 +00:00
srdjan@google.com
70bc9aa213
Add token kind into InstanceCallComp so that we do not need to extract it from name (addresses vego…
...
Review URL: https://chromiumcodereview.appspot.com//10536162
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8675 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-14 17:41:54 +00:00
sethladd@google.com
7ea77891bb
specify which version of web sockets
...
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com//10535168
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8666 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-14 16:08:51 +00:00
floitsch@google.com
dd61a23829
Reapply "Refactor Date implementation in VM."
...
This reapplies fixed versions of commit 7542 and commit 8544.
Original review URLs:
https://chromiumcodereview.appspot.com//10533068
https://chromiumcodereview.appspot.com//10544109
Review URL: https://chromiumcodereview.appspot.com//10534114
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8655 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-14 13:05:22 +00:00
whesse@google.com
91982e8d76
Close a _FileInputStream only immediately before onClosed is called, so .closed returns false before that.
...
BUG=
TEST=standalone/io/file_test
Review URL: https://chromiumcodereview.appspot.com//10536168
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8649 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-14 11:48:02 +00:00
whesse@google.com
64601fa52e
Fix flaky test runtime/vm/heap_profiler_test.cc
...
BUG=3634
TEST=vm/heap_profiler_test
Review URL: https://chromiumcodereview.appspot.com//10534158
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8648 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-14 11:47:29 +00:00
whesse@google.com
99cbf6de81
Add test for buffered file input stream on dart:io File class.
...
BUG=
TEST=standalone/io/file_test
Review URL: https://chromiumcodereview.appspot.com//10544134
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8643 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-14 08:36:29 +00:00
cshapiro@google.com
4f036454cb
Fix includes to unbreak the Mac build.
...
Review URL: https://chromiumcodereview.appspot.com//10543154
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8639 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-14 01:33:31 +00:00
cshapiro@google.com
a40ffbae76
Fix includes to unbreak the Windows build.
...
Review URL: https://chromiumcodereview.appspot.com//10539151
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8638 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-14 01:02:08 +00:00
cshapiro@google.com
dcaf11db96
Implement a heap profiler for the Dart managed heap.
...
This profiler will write binary HPROF data to a user provided stream that
can later be viewed by tools such as the Eclipse Memory Analyzer.
While all user defined types are accurately described in the profile data,
internal types that are not self-describing appear as empty objects. This
will be addressed by a future change.
Review URL: https://chromiumcodereview.appspot.com//10452006
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8636 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-14 00:08:07 +00:00
regis@google.com
858b662c84
Fix super call invocation (issue 2028).
...
Review URL: https://chromiumcodereview.appspot.com//10513008
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8633 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-13 23:06:23 +00:00
srdjan@google.com
3f662c0d5a
Restore changes lost in merge for r8626 (equality operation).
...
Review URL: https://chromiumcodereview.appspot.com//10546154
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8629 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-13 21:13:09 +00:00
srdjan@google.com
681165b68b
Some cleanups, started implementing checked instance calls, better equality operation.
...
Review URL: https://chromiumcodereview.appspot.com//10541135
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8626 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-13 18:48:46 +00:00
asiva@google.com
c7f58add4c
Fix for issue-2837 (allow --print-flags without a script name).
...
Review URL: https://chromiumcodereview.appspot.com//10548017
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8622 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-13 17:48:47 +00:00
vegorov@google.com
fadac390f3
Fuse comparisons that are used by branches together.
...
This allows us to eliminate materialization of boolean value.
Fix a bug in ToDoubleComp::LocationSummary on ia32.
R=srdjan@google.com
Review URL: https://chromiumcodereview.appspot.com//10536145
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8617 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-13 16:23:14 +00:00
iposva@google.com
794ba0f1e4
- Fix test expectations.
...
Review URL: https://chromiumcodereview.appspot.com//10543137
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8612 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-13 15:25:08 +00:00
iposva@google.com
e1c28d7adf
- Remove trailing '\n' when getting the API error message.
...
Review URL: https://chromiumcodereview.appspot.com//10539133
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8608 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-13 14:47:33 +00:00
fschneider@google.com
ee4a0fd042
First step to SSA construction: Phi insertion.
...
This CL contains the phi insertion step of the SSA construction algorithmus: The phi instructions inserted are not functional yet. Renaming is not included yet.
I based it on Kevin's CL (http://codereview.chromium.org/10388161/ ), rebased and fixed a bug (added missing iterator.Advance()) there.
It also reintroduces the Definition IL class because Phi-instructions are also
definitions that are referenced by UseVal.
I also added the set of immediately dominated blocks to each basic block.
This will be needed for pre-order dominator-tree traversal in the renaming pass.
Review URL: https://chromiumcodereview.appspot.com//10539108
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8604 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-13 13:36:04 +00:00
vegorov@google.com
d5799bd9c6
Optimize StoreIndexedComp on ia32&x64.
...
R=srdjan@google.com
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com//10543111
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8595 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-13 08:53:54 +00:00
vegorov@google.com
bd19464867
Implement kDoubleToDouble and kIntegerToDouble on ia32 and x64.
...
Fix bug in assembling of cvtsi2sd on x64.
R=srdjan@google.com
Review URL: https://chromiumcodereview.appspot.com//10534116
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8593 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-13 08:29:40 +00:00
hausner@google.com
4bac2773d6
Eliminate a couple of uses of String +
...
Review URL: https://chromiumcodereview.appspot.com//10536129
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8586 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-12 23:01:14 +00:00
hausner@google.com
a1cb082925
Add API to configure debugger pause on exception
...
Still to be done: proper determination whether an exception is
handled or unhandled. We still assume that TypeError and AssertionError
exceptions are unhanded.
Review URL: https://chromiumcodereview.appspot.com//10540121
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8579 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-12 21:56:50 +00:00
turnidge@google.com
312702a5ac
Second local mirrors CL.
...
Implement a few chunks of new mirror functionality. Many changes, notably:
- Added currentIsolateMirror() to provide non-async access to the
local isolate mirror.
- Added mirrorOf(o) to provide access to local instance mirrors.
- Fleshed out InstanceMirror, InterfaceMirror, and LibraryMirror to
various degrees.
- Added the MirroredError hierarchy, which lets the user handle Dart
errors of various sorts from invocation, etc.
- Introduce lazy resolvers for interface mirrors and library mirrors.
These allow us to build the self-referential library/interface
hierarchy without going mad.
- Added better toStrings all around.
- Extended the isolate_mirror_local_test to cover new functionality.
Other changes that were required or seemed prudent:
- Exposed the error hierarchy to the embedder. They need to be able
to distinguish different error types in some situations. Improved
the documetation around error handles and error propagation.
- Added new functions to the dart embedding api as required. Added
tests for all new dart api functions.
Review URL: https://chromiumcodereview.appspot.com//10538043
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8575 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-12 21:07:49 +00:00
srdjan@google.com
751e48d363
Fix a typo in the new compiler's optimizer.
...
Review URL: https://chromiumcodereview.appspot.com//10548009
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8572 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-12 20:18:22 +00:00
srdjan@google.com
c9801e0819
Implement is32 LoadIndexed.
...
Review URL: https://chromiumcodereview.appspot.com//10534105
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8555 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-12 16:27:18 +00:00
srdjan@google.com
0f925121e8
Add code comment to ia32 disassembly as well, bug fix new ia32 compiler, remove use of TMP register outside the assembler. Inlined special methods: ObjectArray, ImmutableArray and GrowableArray and String length getters.
...
Review URL: https://chromiumcodereview.appspot.com//10536096
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8554 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-12 16:09:02 +00:00
whesse@google.com
c914f33159
Make sure that _FileInputStream._fillBuffer is not entered again before it finishes.
...
Also fix a bug where _fillBuffer did not reset _position correctly.
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com//10533110
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8553 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-12 16:06:12 +00:00
iposva@google.com
9cc40c2b0c
- Back to old compiler for ia32.
...
Review URL: https://chromiumcodereview.appspot.com//10534112
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8551 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-12 14:14:24 +00:00
iposva@google.com
abca337990
- Temporarily enable the new compiler on ia32.
...
Review URL: https://chromiumcodereview.appspot.com//10535129
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8550 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-12 14:04:14 +00:00