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
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
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
srdjan@google.com
d525130469
More optimizations and cleanups.
...
Review URL: http://codereview.chromium.org//8972005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2548 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-16 23:16:00 +00:00
hausner@google.com
59e6694944
One small step towards sanity
...
Make 'class' a proper keyword, and 'extends' too. Adjusting the VM compiler to the language spec.
Review URL: http://codereview.chromium.org//8968021
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2533 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-16 19:11:39 +00:00
turnidge@google.com
f2279476d9
Fix initializer order (build break on some platforms).
...
Review URL: http://codereview.chromium.org//8963026
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2531 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-16 18:48:53 +00:00
turnidge@google.com
0b833d4977
Add support for interrupting an isolate in the vm. Interrupts are
...
implemented by extending the existing support for stack overflow
checking in the vm. When an interrupt is scheduled for an isolate, we
overwrite the isolate's stack limit with a value guaranteed to cause a
stack overflow.
We support multiple kinds of interrupts, encoded in the low bits of
the stack limit.
Add Dart_InterruptIsolate and Dart_InterruptIsolateCallback to the
dart embedding api to allow the embedder to request and handle
interrupts.
Add EXPECT_SUBSTRING(needle, haystack) testing macro.
Review URL: http://codereview.chromium.org//8851008
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2529 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-16 18:41:20 +00:00
asiva@google.com
77dba39e63
Add Double::NewCanonical and Mint::NewCanonical so that it is possible to
...
canonicalize double and mint constants without having to create an object first.
Review URL: http://codereview.chromium.org//8963001
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2496 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-16 00:31:33 +00:00
srdjan@google.com
bdb48aefb4
Use deopt on some instructions that have not collected type feedback when optimizing compierl kicks in. Optimize SAR.
...
Review URL: http://codereview.chromium.org//8972002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2487 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-15 22:39:21 +00:00
iposva@google.com
5e1e9534db
- Implement the old sweeper.
...
Review URL: http://codereview.chromium.org//8898034
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2485 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-15 22:37:35 +00:00
srdjan@google.com
a3f519eacc
Optimize instance setters for non-implicit-setters and for setters with multiple targets.
...
Review URL: http://codereview.chromium.org//8945002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2451 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-15 00:46:27 +00:00
turnidge@google.com
3b9026f21d
If an unhandled exception occurs in Dart_RunLoop, pass it out to the caller.
...
Review URL: http://codereview.chromium.org//8918028
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2438 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-14 18:27:58 +00:00
asiva@google.com
79857c7d20
Changes to set up the object tag bits
...
- sets up canonical
- sets up created from a snapshot
Added code to capture the tag bits during snapshot generation.
Review URL: http://codereview.chromium.org//8879063
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2436 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-14 18:09:18 +00:00
srdjan@google.com
e48749760e
Fix truncate divide bug (reported by sra) when dividing MIN_SMI by -1.
...
Review URL: http://codereview.chromium.org//8931016
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2409 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-14 01:18:12 +00:00
regis@google.com
4e76761dd5
Rename type parameter to comply with upcoming corelib changes.
...
Update error message in class finalizer.
Review URL: http://codereview.chromium.org//8933014
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2398 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-13 21:19:36 +00:00
srdjan@google.com
76f7132369
Optimize truncated divide (intrinsics and inline).
...
Review URL: http://codereview.chromium.org//8934010
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2397 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-13 21:09:13 +00:00
regis@google.com
5db4de9756
Implement revised factories in the VM.
...
Emit warnings when obsolete syntax is used.
Review URL: http://codereview.chromium.org//8921033
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2394 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-13 19:35:07 +00:00
srdjan@google.com
f1198ffe5e
Added type propagation from store to load locals, but only within a sequence node (not across basic block).
...
Review URL: http://codereview.chromium.org//8919025
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2365 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-13 01:11:28 +00:00
srdjan@google.com
46748dc6b1
Allocate double temporaries in old space, because they belong there. Canonicalize more double literals.
...
Review URL: http://codereview.chromium.org//8921012
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2351 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-12 18:59:20 +00:00
srdjan@google.com
7b61cef42b
Implement two-arguments-check inline cache. Use it first for Smi binary operations.
...
Review URL: http://codereview.chromium.org//8827015
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2345 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-12 17:24:47 +00:00
regis@google.com
e100995e6a
Port jump and call instruction decoding and patching for x64 (2nd try).
...
Review URL: http://codereview.chromium.org//8898014
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2331 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-10 00:38:09 +00:00
regis@google.com
58b01b042c
Fix build breakage (partially revert r2327).
...
Review URL: http://codereview.chromium.org//8895015
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2330 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-09 23:54:13 +00:00
regis@google.com
9aa346b921
Port jump and call instruction decoding and patching for x64.
...
Review URL: http://codereview.chromium.org//8896017
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2327 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-09 22:46:44 +00:00
regis@google.com
809cd5590a
Helper ast node sequences must not wrongly grab ownership of the enclosing
...
scope (fix issue 736).
Add test.
Review URL: http://codereview.chromium.org//8893008
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2324 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-09 21:32:14 +00:00
hausner@google.com
75918306af
First debugger API unit test
...
Add unit test file, expose more debugger functionality in the API.
Review URL: http://codereview.chromium.org//8872049
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2320 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-09 19:29:37 +00:00
antonm@google.com
eaa1c801b7
Properly account for RawObject size.
...
Recently tags_ field has been added, but visitor hasn't been updated.
Maybe we should provide a helper on RawInstance to access native field
by index and remove code duplication with Instance.NativeFieldAddr.
Review URL: http://codereview.chromium.org//8898002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2319 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-09 18:20:31 +00:00
cshapiro@google.com
aae8784962
Add an interface for retrieving the value of unsigned 64-bit integers.
...
With this change, IntegerValue is renamed to IntegerToInt64 for symmetry
with the new IntegerToUint64 interface. Also uses of UInt64 have been
replaced with Uint64 for naming consistency.
Review URL: http://codereview.chromium.org//8585049
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2317 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-09 17:25:44 +00:00
srdjan@google.com
8b6d22348d
Fix crash from issue 744: evaluate left first before deopt happens (strict comparison).
...
Review URL: http://codereview.chromium.org//8873044
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2295 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-09 01:44:10 +00:00
cshapiro@google.com
59541fef4c
Use specialized unwrapping methods for reading Double and Bool values.
...
Review URL: http://codereview.chromium.org//8888031
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2292 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-08 23:50:40 +00:00
turnidge@google.com
864f65bbc2
Add missing file from last cl.
...
Review URL: http://codereview.chromium.org//8888032
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2291 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-08 23:38:05 +00:00
turnidge@google.com
c6aadb497d
Teach the assembler how to generate multi-byte nops. Teach the
...
disassembler to understand them. Use multi-byte nops in Align(). Add
tests.
Review URL: http://codereview.chromium.org//8888020
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2290 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-08 23:35:34 +00:00
iposva@google.com
c594af7a5a
- Use "#if defined" when checking for DEBUG.
...
Review URL: http://codereview.chromium.org//8879038
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2287 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-08 23:08:15 +00:00
regis@google.com
dd32effb72
Adjust index of type parameters at finalization time (fix issue 718).
...
Add test.
Review URL: http://codereview.chromium.org//8872037
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2286 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-08 23:00:55 +00:00
srdjan@google.com
2d352798b9
Fix for intrinsified Math.sqrt method, added test.
...
Review URL: http://codereview.chromium.org//8866010
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2213 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-08 00:47:52 +00:00
asiva@google.com
566ff2b3cf
Add a tags field to RawObject so that we can tag objects with certain values,
...
e.g:
- object is canonical
- object was created from snapshot
etc.
Once we have class Ids implemented the current class_ and flags_ words can be
compressed into a single header word.
Review URL: http://codereview.chromium.org//8827016
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2211 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-08 00:43:06 +00:00
asiva@google.com
660b5719bf
Add test to expose bug in initialization of objects with native fields in the inline allocation stub. The tests are skipped as another CL fixes the bug.
...
Review URL: http://codereview.chromium.org//8875001
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2209 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-08 00:23:21 +00:00
regis@google.com
0ef32f52f4
Fix handling of unresolved upper bounds in factory declarations (issue 721).
...
Review URL: http://codereview.chromium.org//8862002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2208 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-08 00:16:55 +00:00
regis@google.com
603c316b46
Fix win32 build.
...
Review URL: http://codereview.chromium.org//8853002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2207 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-08 00:14:07 +00:00
regis@google.com
ec7f6331d1
Add 64-bit stubs to call into the runtime and to call native functions.
...
Fix 64-bit assembler bugs.
Review URL: http://codereview.chromium.org//8818001
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2206 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-08 00:03:08 +00:00
asiva@google.com
d34cbbf00a
Add additional asserts in the snapshot writer/reader code.
...
Review URL: http://codereview.chromium.org//8868001
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2202 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-07 22:40:50 +00:00
hausner@google.com
9159389495
First bits of external debugger API
...
The debugger API is in a separate set of files. Embedders do not have
to include the debug api if they don't need to.
Review URL: http://codereview.chromium.org//8826007
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2198 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-07 22:13:49 +00:00
cshapiro@google.com
f978301321
Add macros for specifying 64-bit integer literals.
...
Review URL: http://codereview.chromium.org//8604007
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2150 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-06 23:08:29 +00:00
turnidge@google.com
36a830115b
Use a preallocated StackOverflowException rather than allocating one
...
while our stack is hurting. This allows us to get rid of the stack
tweaking which we do in this case.
Review URL: http://codereview.chromium.org//8823001
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2149 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-06 23:01:46 +00:00
srdjan@google.com
f98993384f
Canonicalize TypeArguments.
...
Review URL: http://codereview.chromium.org//8773026
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2133 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-06 17:47:47 +00:00
asiva@google.com
7ddd0f0b89
First step towards generation of application script snapshots
...
- Introduce 3 kinds of snapshots (full, application script and messages)
- Added a dart API function to be used for generating an application snapshot
and for loading the script from an application snapshot.
Next step is to introduce special handling in the WriteTo and ReadFrom
snapshot functions for 'kind == Snapshot::kScript'
Review URL: http://codereview.chromium.org//8772061
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2105 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-06 00:34:49 +00:00
hausner@google.com
164ee66e38
More fixing linux.
...
Review URL: http://codereview.chromium.org//8806022
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2093 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-05 21:44:11 +00:00
hausner@google.com
f296131d32
Fix linux build
...
Mac doesn't care when you compare signed and unsigned values it seems...
Review URL: http://codereview.chromium.org//8803025
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2091 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-05 21:40:44 +00:00
hausner@google.com
b122f27eac
Debugger step 2
...
Add ActivationFrame and StackTrace classes.
Add Breakpoint info: url and line number.
Fix breakpoint stub so breakpoints don't get patched over by PatchStaticCall
Review URL: http://codereview.chromium.org//8775060
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2089 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-05 21:11:39 +00:00