erik.corry@gmail.com
86337d3de7
Get the speed back in new context creation after it was tanked
...
in 9744.
Review URL: http://codereview.chromium.org/8380035
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9763 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-25 08:24:06 +00:00
erik.corry@gmail.com
69c44d6460
Add missing comment from last commit.
...
Review URL: http://codereview.chromium.org/8383003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9762 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-25 08:23:56 +00:00
rossberg@chromium.org
46dde044de
Adapt to latest spec changes for Proxy.create[Function].
...
R=mstarzinger@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/8271005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9761 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-24 16:25:30 +00:00
rossberg@chromium.org
70dc2fe968
Implement for-in loop for proxies.
...
Fix related corner case for Object.keys.
Remove obsolete GET_KEYS builtin.
R=ricow@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/8256015
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9760 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-24 15:56:18 +00:00
yangguo@chromium.org
f92da58e13
Handle COW-arrays correctly when converting smi->double fast elements.
...
TEST=mjsunit/elements-transition.js
Review URL: http://codereview.chromium.org/8383002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9759 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-24 15:06:20 +00:00
fschneider@chromium.org
53e7502fa0
Fix bug in environment simulation after inlined call-as-function.
...
This change is based on my previous change enabling inlining calls-as-function
fixing the bugs related to deoptimization.
The function value on top of the environment was dropped too late in the old code.
As a result we could get a wrong value on top after deoptimization.
This change includes r9619. It was reverted because of test failures that are fixed
with this patch.
Review URL: http://codereview.chromium.org/8360001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9758 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-24 13:53:08 +00:00
ulan@chromium.org
f630ff0c67
Use handle lists in Map::FindTransitionedMap.
...
BUG=
TEST=
Review URL: http://codereview.chromium.org/8373030
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9757 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-24 13:45:19 +00:00
ulan@chromium.org
9ad3058756
Use handle lists instead of raw pointer lists in polymorphic code cache.
...
BUG=
TEST=
Review URL: http://codereview.chromium.org/8368024
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9756 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-24 13:11:14 +00:00
erik.corry@gmail.com
3eb3f8cb65
Fix crash in partial snapshot test when running with no boot snapshot.
...
Review URL: http://codereview.chromium.org/8381003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9755 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-24 12:39:29 +00:00
lrn@chromium.org
db95436018
Fix typo in type-name and reorder initialization order.
...
Remember, when coming back to an old CL, do check that it still works.
Review URL: http://codereview.chromium.org/8351002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9754 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-24 12:19:55 +00:00
lrn@chromium.org
7ab6e55f78
Moved random generator state to global context.
...
Change Random to take global context, not isolate.
BUG=v8:864
Review URL: http://codereview.chromium.org/8162014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9753 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-24 12:12:21 +00:00
lrn@chromium.org
6898ff2780
Remove one static initializer from disasm.
...
Review URL: http://codereview.chromium.org/8381002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9752 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-24 12:07:35 +00:00
yangguo@chromium.org
215c26e3d3
Further improvements upon r9747.
...
Review URL: http://codereview.chromium.org/8372028
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9751 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-24 11:16:38 +00:00
kmillikin@chromium.org
ef31d0480a
Handlify the remaining stub compiler functions for call ICs.
...
Handlify StubCompiler functions for CallIC and KeyedCallIC cases
Megamorphic, Arguments, DebugBreak, and DebugPrepareStepIn.
R=ulan@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/8372029
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9750 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-24 10:55:00 +00:00
kmillikin@chromium.org
ec007b46d1
Handlify call cases for pre-monomorphic, normal, and miss.
...
These cases turn out to be easy. There is a lingering raw pointer
implementation of TryCompileCallMiss because it's need by some of the
unconverted call stubs.
R=ulan@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/8366036
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9749 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-24 09:33:11 +00:00
mstarzinger@chromium.org
f193d87ec4
Fix initialization of allocation timeout value.
...
The allocation timeout value should not be initialized to 0, that
triggers a collection at the first allocation which breaks assumptions
for some test cases.
R=ricow@chromium.org
TEST=cctest/test-heap/Iteration
Review URL: http://codereview.chromium.org/8275032
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9748 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-24 08:59:34 +00:00
yangguo@chromium.org
5f7f79b012
Refactor and clean up array allocation across platforms.
...
Review URL: http://codereview.chromium.org/8359034
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9747 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-24 07:55:50 +00:00
keuchel@chromium.org
c6464d500b
Replace boolean indications of strict mode by an enum value.
...
Review URL: http://codereview.chromium.org/8344082
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9746 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-24 07:47:22 +00:00
yangguo@chromium.org
75c7565d4b
MIPS: Porting r9605 to arm (elements kind conversion in generated code).
...
Port r9690 (857eacf)
BUG=
TEST=
Review URL: http://codereview.chromium.org/8366031
Patch from Paul Lind <plind44@gmail.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9745 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-21 18:40:36 +00:00
erik.corry@gmail.com
9065e95d45
Fix missing write barrier in deserialization. Issue 1783.
...
Review URL: http://codereview.chromium.org/8352045
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9744 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-21 15:20:53 +00:00
danno@chromium.org
f464ad61fb
MIPS: port Support array literals with FAST_DOUBLE_ELEMENTS ElementsKind.
...
Port r9698 (cf0cc54f)
BUG=
TEST=
Review URL: http://codereview.chromium.org/8363025
Patch from Paul Lind <plind44@gmail.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9743 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-21 15:15:47 +00:00
mikhail.naganov@gmail.com
fa0d4ecf43
The detailed heap snapshot generator was slightly adjusted for tracking sliced strings.
...
BUG=v8:1779
TEST=cctest/test-heap-profiler/HeapSnapshotSlicedString
Review URL: http://codereview.chromium.org/8362028
Patch from Ilya Tikhonovsky <loislo@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9742 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-21 13:05:37 +00:00
ulan@chromium.org
ae6e6a689c
Handlify KeyedIC::ComputeStub.
...
BUG=
TEST=
Review URL: http://codereview.chromium.org/8356041
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9741 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-21 11:42:54 +00:00
vegorov@chromium.org
9b0626b52a
MIPS: port RegExpMacroAssembler::CheckStackGuardState should update input string pointer...
...
... when it is moved or changed by GC.
Port r9697 (d53382a)
BUG=
TEST=
Review URL: http://codereview.chromium.org/8362024
Patch from Paul Lind <plind44@gmail.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9740 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-21 10:59:25 +00:00
vegorov@chromium.org
b9f6ae21b8
Fix compilation on ARM and x64 broken by r9738
...
R=erik.corry@gmail.com
Review URL: http://codereview.chromium.org/8359026
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9739 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-21 10:53:02 +00:00
vegorov@chromium.org
6c7a5d12c8
Avoid write-barriers when initializing newly created Code object.
...
R=erik.corry@gmail.com
Review URL: http://codereview.chromium.org/8365029
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9738 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-21 10:37:56 +00:00
vegorov@chromium.org
5bb6d386b4
Disable incremental marking when GC extension is exposed.
...
R=erik.corry@gmail.com
Review URL: http://codereview.chromium.org/8366001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9737 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-21 10:33:50 +00:00
vegorov@chromium.org
3474190711
Fix CountLeadingZeros on non-ARMv5 hardware.
...
R=erik.corry@gmail.com
Review URL: http://codereview.chromium.org/8361030
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9736 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-21 10:33:12 +00:00
vegorov@chromium.org
af876ee474
Avoid incremental marking write-barrier when constructing descriptor arrays.
...
R=erik.corry@gmail.com
Review URL: http://codereview.chromium.org/8360004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9735 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-21 10:32:38 +00:00
keuchel@chromium.org
666c4be29f
Reapply r9673 "Scope tree serialization and ScopeIterator cleanup."
...
This also includes the two fixes from r9674 and r9675. Here's the diff
to the previous CL.
--- a/src/runtime.cc
+++ b/src/runtime.cc
@@ -11133,17 +11133,26 @@ class ScopeIterator {
context_(Context::cast(frame->context())),
nested_scope_chain_(4) {
+ // Catch the case when the debugger stops in an internal function.
+ Handle<SharedFunctionInfo> shared_info(function_->shared());
+ if (shared_info->script() == isolate->heap()->undefined_value()) {
+ if (shared_info->scope_info()->HasContext()) Next();
+ return;
+ }
+
// Check whether we are in global code or function code. If there is a stack
// slot for .result then this function has been created for evaluating
// global code and it is not a real function.
// Checking for the existence of .result seems fragile, but the scope info
// saved with the code object does not otherwise have that information.
- int index = function_->shared()->scope_info()->
+ int index = shared_info->scope_info()->
StackSlotIndex(isolate_->heap()->result_symbol());
// Reparse the code and analyze the scopes.
ZoneScope zone_scope(isolate, DELETE_ON_EXIT);
- Handle<SharedFunctionInfo> shared_info(function_->shared());
Handle<Script> script(Script::cast(shared_info->script()));
Scope* scope;
if (index >= 0) {
Review URL: http://codereview.chromium.org/8344046
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9734 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-21 10:26:59 +00:00
kmillikin@chromium.org
937006f761
Handlify StubCompiler::CompileCallInitialize.
...
CallIC::GenerateInitialize and KeyedCallIC::GenerateInitialize are
verified safe for GC.
R=ulan@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/8361028
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9733 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-21 10:19:16 +00:00
fschneider@chromium.org
171846dbd1
Avoid static initializers in assember-arm.h.
...
Patch by joth@chromium.org .
BUG=v8:1784
Review URL: http://codereview.chromium.org/8367001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9732 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-21 09:55:25 +00:00
kmillikin@chromium.org
6c305c244e
MIPS: port Handlify the stub cache lookup and patching for CallIC and KeyedCallIC.
...
Port r9729 (4aa1f5a6)
BUG=
TEST=
Review URL: http://codereview.chromium.org/8365026
Patch from Paul Lind <plind44@gmail.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9731 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-21 08:59:32 +00:00
kmillikin@chromium.org
1959409f6d
Fix presubmit failure.
...
TBR=ulan@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/8364004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9730 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-20 17:28:14 +00:00
kmillikin@chromium.org
e3792a6830
Handlify the stub cache lookup and patching for CallIC and KeyedCallIC.
...
R=ulan@chromium.org ,vegorov@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/8357010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9729 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-20 17:08:53 +00:00
ulan@chromium.org
a5da9320d2
Reset failure flag before retrying stub compilation.
...
BUG=
TEST=
Review URL: http://codereview.chromium.org/8365003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9728 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-20 16:39:26 +00:00
ulan@chromium.org
997ad6387a
Handlify upper layers of KeyedStoreIC.
...
BUG=
TEST=
Review URL: http://codereview.chromium.org/8356039
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9727 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-20 13:54:16 +00:00
erik.corry@gmail.com
d66ea04b6c
Fix the build on Mac.
...
Review URL: http://codereview.chromium.org/8354037
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9726 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-20 13:47:14 +00:00
svenpanne@chromium.org
627a3ecbd9
Improved printing of Simulate, LoadNamedFieldPolymorphic, LoadNamedGeneric, and StoreNamedField Hydrogen instructions a bit.
...
Review URL: http://codereview.chromium.org/8352044
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9725 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-20 12:55:31 +00:00
yangguo@chromium.org
bd5e694a9c
Refactor elements kind conversion.
...
Review URL: http://codereview.chromium.org/8355035
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9724 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-20 12:36:45 +00:00
lrn@chromium.org
a47caee095
Make builtin functions be skipped in stack traces.
...
Does include exposed builtin functions ("native functions").
Review URL: http://codereview.chromium.org/8345039
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9723 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-20 12:31:33 +00:00
erik.corry@gmail.com
8f9721bbbf
Shave 39% from snapshot size.
...
Review URL: http://codereview.chromium.org/8344079
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9722 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-20 12:27:10 +00:00
vegorov@chromium.org
5d72dde98a
Switch UnreachableObjectsFilter to use Marking instead of InstrusiveMarking.
...
GcSafeFindCodeForInnerPointer does not work with intrusive marking now and it is used when roots are iterated.
R=erik.corry@gmail.com
Review URL: http://codereview.chromium.org/8342037
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9721 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-20 11:40:16 +00:00
whesse@chromium.org
388813581e
Speed up comparison with a constant.
...
Improve optimized code for comparison of an int32 against a constant, or comparison of two double constants. Contributed by m.m.capewell.
Original codereview is http://codereview.chromium.org/7489045/ .
This cl is just created in order to commit the change.
BUG=
TEST=
Review URL: http://codereview.chromium.org/8352040
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9718 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-20 10:26:45 +00:00
danno@chromium.org
c868f0c4a4
Fix x64 and ARM builds.
...
TBR=jkummerow@chromium.org
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/8358001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9717 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-20 10:07:54 +00:00
danno@chromium.org
5a5c3e4eae
Make sure PrintElementsKind is compiled in release mode.
...
TBR=jkummerow@chromium.org
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/8357035
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9716 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-20 09:56:18 +00:00
danno@chromium.org
f7563019c7
Add flag to trace element kind transitions
...
Currently only traces transitions from generated ia32 code.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/8357004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9715 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-20 09:38:24 +00:00
ulan@chromium.org
f985b15aae
Handlify upper layers of KeyedLoadIC.
...
BUG=
TEST=
Review URL: http://codereview.chromium.org/8352003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9714 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-20 09:35:47 +00:00
jkummerow@chromium.org
655b2332d7
ElementsKind transitioning support for keyed loads in Crankshaft
...
Review URL: http://codereview.chromium.org/8352012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9713 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-20 08:49:01 +00:00
jkummerow@chromium.org
deff312f25
Handle keyed stores after elements transition monomorphically if possible
...
Review URL: http://codereview.chromium.org/8354003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9712 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-20 08:41:38 +00:00