asiva@google.com
17c7958b33
Some minor cleanup.
...
Review URL: https://chromiumcodereview.appspot.com//10114012
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6668 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-18 00:20:30 +00:00
regis@google.com
cb6c1b27f3
Implement checked mode in new compiler.
...
The only remaining bailout is the boolean type check for conditions.
Review URL: https://chromiumcodereview.appspot.com//10080015
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6542 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-13 22:16:59 +00:00
regis@google.com
5282e44fb2
Use null type argument vector instead of vector of Dynamic for a generic raw
...
type when possible.
Fix type finalization of type parameters (always finalize in the context of the
class being parameterized and not in the enclosing class where the type
parameter is used).
Fix wrong generic optimization and added a test (a generic type instantiated
from a raw instantiator is not always raw).
Added printing of type argument vectors.
Review URL: https://chromiumcodereview.appspot.com//9939003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6068 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-30 22:16:52 +00:00
srdjan@google.com
0b265044c1
Factor out super-class and interface array subtype checks into a stub.
...
Inline more type checks.
Review URL: https://chromiumcodereview.appspot.com//9873014
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@5934 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-28 15:50:33 +00:00
hausner@google.com
e74d822b1d
Fix merge error, Debug_StepInto test
...
Review URL: https://chromiumcodereview.appspot.com//9481018
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4641 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-27 22:18:00 +00:00
hausner@google.com
6d9abc5e3b
StepOver, StepInto, StepOut
...
Implement single stepping in the debugger.
- Add PC descriptors for function return
- functions to set temporary breakpoints on all
locations in a function.
- patching/restoring of function return code pattern
- determine call target of instance calls
Review URL: https://chromiumcodereview.appspot.com//9484002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4639 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-27 22:00:28 +00:00
srdjan@google.com
a343a49338
Do not count invocations but usage of a function, i.e., increment a function's counter at IC calls and at return operations in unoptimized code. (TODO: increment count at static calls as well). There is no checking at method entry any more. The function counter reporting is not measuring the invocation count but much more how much time we spend in a method. Removed counter at backward branches.
...
Renamed flags to:
--optimization_counter_threshold (default 2000)
--report_usage_count
Review URL: https://chromiumcodereview.appspot.com//9460015
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4583 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-25 00:33:25 +00:00
srdjan@google.com
a54f33bf92
ICData is now a wrapper object that refers to the calling function, target name, ic data array, etc. The old ICData C++ class that wrapped around an Array is removed. The advantage is that the ICData object remains the same, only its ic_data array object is being modified as classes are added..
...
TODO: store ICData-s into function so that the type feedback can be easily extracted (currently must traverse the unoptimized code).
Review URL: https://chromiumcodereview.appspot.com//9395016
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4417 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-22 00:40:03 +00:00
regis@google.com
d573d5437d
Enable remaining execution tests on x64.
...
Review URL: https://chromiumcodereview.appspot.com//9242025
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3376 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-17 22:52:54 +00:00
regis@google.com
2d1f63af47
Port a couple more stubs to x64.
...
Fix integer implementation issues.
Enable all tests on x64.
Review URL: http://codereview.chromium.org//9114054
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3307 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-13 20:07:54 +00:00
regis@google.com
344dcbde12
Print stop message.
...
Review URL: http://codereview.chromium.org//9128002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3124 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-10 00:32:51 +00:00
iposva@google.com
346424b9b0
- Add a size field to the header.
...
- Make use of the field when available to avoid accessing the class.
Review URL: http://codereview.chromium.org//9072011
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2936 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-04 08:04:04 +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
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
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
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
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
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
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
srdjan@google.com
5f43c05de7
Implement new inline cache. Delete a lot of unused code (most of change).
...
Review URL: http://codereview.chromium.org//8379013
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@706 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-25 18:35:49 +00:00
regis@google.com
19208574f0
Inline allocation of implicit closures.
...
Consolidate generation of closure allocation stubs into one function.
Fix type name printing when printing ast.
Review URL: http://codereview.chromium.org//8234016
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@357 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-11 23:42:20 +00:00
dgrove@google.com
4c0f559d23
Initial checkin.
...
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-05 05:20:07 +00:00