Commit Graph

13143 Commits

Author SHA1 Message Date
asiva@google.com 34a115ad57 - Pass in the isolate parameter when creating handles.
- Store the current isolate pointer in the snapshot reader object and use it instead of calling Isolate::Current() during the deserializing process.
Review URL: http://codereview.chromium.org//9124012

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3160 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-10 18:47:38 +00:00
ager@google.com 607eea1402 Cleanup gypi mess.
My change that introduced a platform directory shared between vm and bin runtime components did not correctly update gypi files.

BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3155 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-10 16:50:14 +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
regis@google.com 5a11b9b3ad A class/interface cannot implement/extend a type parameter (issues 886 and 887).
Added tests.
Review URL: http://codereview.chromium.org//9153006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3122 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-10 00:01:47 +00:00
asiva@google.com 2e410f76d4 - Remove redundant initialization in Array::New
- Add timer for measuing isolate initialization
Review URL: http://codereview.chromium.org//9108036

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3063 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-07 00:06:31 +00:00
ager@google.com c4c92c4f7b Introduce runtime/platform directory for code shared between vm
and bin.

Cleaned up globals.h. Common parts now in platform/globals.h.
vm specific parts are in vm/globals.h and bin/globals.h is gone.

R=sgjesse@google.com,iposva@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3030 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-06 11:28:21 +00:00
iposva@google.com 54bf6eceb2 - Bump the code heap to avoid running out when running with compile all and
the DOM/HTML libraries.
Review URL: http://codereview.chromium.org//9116029

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3020 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-06 00:13:58 +00:00
hausner@google.com 4ee7c947aa Getting value of local variables on stack trace
Introduce concept of scope in local variable info, according
to mirror proposal.
Review URL: http://codereview.chromium.org//8983034

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3017 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-05 22:33:37 +00:00
hausner@google.com ee79bc031d Second try at additional nested block in functions.
The last change broke dartium tests because as a side effect, the generated
code size increased by 2 or 3 percent. Fixed this unintended side
effect.
Review URL: http://codereview.chromium.org//9109024

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3013 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-05 21:28:32 +00:00
vsm@google.com 981772b59e Reverting r2970 to fix Dartium break
This should get the Dartium bot green again.

TBR=hausner

TEST=language/HelloDartTest

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2980 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-05 06:31:17 +00:00
hausner@google.com 5796ad3e3a Fix potential problem with expression evaluation.
Review URL: http://codereview.chromium.org//9110001

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2976 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-05 01:47:10 +00:00
vsm@google.com 7d769998ab Fix sign extension issue with clang/gcc
This is an adaptation of antonm's CL with mods suggested by asiva

http://codereview.chromium.org/9003015

Dartium Mac tests pass with this.

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2972 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-05 00:24:52 +00:00
hausner@google.com 0a3c9e6577 Put function parameters into their own scope.
Local function variables in the outermost scope can shadow function parameters.
Review URL: http://codereview.chromium.org//9088024

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2970 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-04 21:31:23 +00:00
iposva@google.com eebc04fa87 - Fix build.
Review URL: http://codereview.chromium.org//9008060

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2937 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-04 08:08:39 +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
iposva@google.com d078d62165 Fix issue 1023:
- Throw OutOfMemoryException when allocation fails.
Review URL: http://codereview.chromium.org//9030013

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2931 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-04 01:27:57 +00:00
hausner@google.com 3d3ed3720e Fix issues 968 and 998
968: don't crash if no class name given after 'default'
998: eliminate code generator diagnostic output on stdout
Review URL: http://codereview.chromium.org//9072012

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2930 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-04 01:12:04 +00:00
asiva@google.com f18a4b2d46 Cleanup some of the tests to use the macro TEST_CASE instead of UNIT_TEST_CASE
Review URL: http://codereview.chromium.org//9075008

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2926 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-03 23:25:51 +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 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
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
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
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