platform/upstream/v8.git
12 years agoRemove LookupTransitionOrDescriptor altogether.
verwaest@chromium.org [Mon, 16 Jul 2012 15:26:10 +0000 (15:26 +0000)]
Remove LookupTransitionOrDescriptor altogether.

Review URL: https://chromiumcodereview.appspot.com/10778011

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12100 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoAdd histogram for total heap fragmentation, don't report fragmentation for new space...
mstarzinger@chromium.org [Mon, 16 Jul 2012 15:17:00 +0000 (15:17 +0000)]
Add histogram for total heap fragmentation, don't report fragmentation for new space, and report fragmentation, not usage

BUG=none
TEST=none

Review URL: https://chromiumcodereview.appspot.com/10778009
Patch from Jochen Eisinger <jochen@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12099 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoRemoving LookupTransition from LookupRealNamedProperty and related utility functions.
verwaest@chromium.org [Mon, 16 Jul 2012 14:47:28 +0000 (14:47 +0000)]
Removing LookupTransition from LookupRealNamedProperty and related utility functions.

Callsites now have to manually lookup transitions if required. This
avoids unnecessary overhead of looking up transitions when we don't need
them. This also allows us to use IsFound() in many places where
IsProperty() was required previously.

Review URL: https://chromiumcodereview.appspot.com/10779012

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12098 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoRemoved transitions from the accessor pair descriptors.
verwaest@chromium.org [Mon, 16 Jul 2012 14:02:50 +0000 (14:02 +0000)]
Removed transitions from the accessor pair descriptors.

AccessorPair related transitions are now also stored as single map links, simplifying the code that handles transitions. AccessorPairs can now be shared between descriptor arrays, since they can only be mutated after another transition anyway; during which the pair is copied before writing.

Review URL: https://chromiumcodereview.appspot.com/10784014

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12097 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFix missing tagging of stack value in finally block.
mstarzinger@chromium.org [Mon, 16 Jul 2012 13:38:17 +0000 (13:38 +0000)]
Fix missing tagging of stack value in finally block.

R=yangguo@chromium.org
BUG=chromium:137496
TEST=cctest/test-api/Regress137496

Review URL: https://chromiumcodereview.appspot.com/10787017

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12096 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFix off-by-one-pointer error in an ASSERT inside DeferredHandles::Iterate.
sanjoy@chromium.org [Mon, 16 Jul 2012 13:00:57 +0000 (13:00 +0000)]
Fix off-by-one-pointer error in an ASSERT inside DeferredHandles::Iterate.

This will crash v8 in debug mode if the compilation prologue allocates
an exact multiple of kHandleBlockSize handles.

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/10689191

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12095 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFix compilation for ARM/uClibc
svenpanne@chromium.org [Mon, 16 Jul 2012 12:34:34 +0000 (12:34 +0000)]
Fix compilation for ARM/uClibc

BUG=
TEST=Compile for ARM using uClibc

Review URL: https://chromiumcodereview.appspot.com/10784012
Patch from Remi Duraffort <remi.duraffort@st.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12094 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoMaintain the invariant that all HGraphBuilder::VisitFoo methods return void.
svenpanne@chromium.org [Mon, 16 Jul 2012 12:22:46 +0000 (12:22 +0000)]
Maintain the invariant that all HGraphBuilder::VisitFoo methods return void.

Additionally, this enables the use of a CHECK_ALIVE macro instead of
copy-n-paste code at one place.

This CL is part of a series of several yak-shaving CLs to prepare the inlining
of JavaScript accessors.

Review URL: https://chromiumcodereview.appspot.com/10783017

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12093 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoPrepare push to trunk. Now working on version 3.12.13.
jkummerow@chromium.org [Mon, 16 Jul 2012 11:24:55 +0000 (11:24 +0000)]
Prepare push to trunk.  Now working on version 3.12.13.

R=yangguo@chromium.org

Review URL: https://chromiumcodereview.appspot.com/10779009

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12090 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoAdd an option to the tickprocessor to specify the directory for lib lookup
jkummerow@chromium.org [Mon, 16 Jul 2012 11:00:44 +0000 (11:00 +0000)]
Add an option to the tickprocessor to specify the directory for lib lookup

This is usefull when generating a profile on one architecture and analyzing it
on another architecture or system version.

Review URL: https://chromiumcodereview.appspot.com/10704128

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12089 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFix ICs for slow objects with native accessor.
mstarzinger@chromium.org [Mon, 16 Jul 2012 09:53:32 +0000 (09:53 +0000)]
Fix ICs for slow objects with native accessor.

This prevents creation of LoadICs or StoreICs for native callbacks on
objects in dictionary mode. Those ICs fail if the accessor is installed
on the receiver itself and also lead to bogus type feedback.

R=danno@chromium.org
BUG=chromium:137002
TEST=test/test-api/Regress137002[a,b]

Review URL: https://chromiumcodereview.appspot.com/10781011

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12088 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoMake it clear that HInstruction's position is a write-once variable.
svenpanne@chromium.org [Mon, 16 Jul 2012 09:49:00 +0000 (09:49 +0000)]
Make it clear that HInstruction's position is a write-once variable.

Review URL: https://chromiumcodereview.appspot.com/10782010

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12087 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFix transcendental cache on ARM in optimized code.
yangguo@chromium.org [Mon, 16 Jul 2012 09:44:59 +0000 (09:44 +0000)]
Fix transcendental cache on ARM in optimized code.

R=jkummerow@chromium.org
BUG=v8:2234
TEST=regress-2234.js

Review URL: https://chromiumcodereview.appspot.com/10695205

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12086 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFix Win64 build breakage in r12082.
mstarzinger@chromium.org [Mon, 16 Jul 2012 09:39:52 +0000 (09:39 +0000)]
Fix Win64 build breakage in r12082.

R=danno@chromium.org

Review URL: https://chromiumcodereview.appspot.com/10704224

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12085 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoRevert 12083: Implements a new API to set a function entry hook for profiling.
danno@chromium.org [Fri, 13 Jul 2012 16:33:27 +0000 (16:33 +0000)]
Revert 12083: Implements a new API to set a function entry hook for profiling.

TBR=mstarzinger@chromium.org

Review URL: https://chromiumcodereview.appspot.com/10695206

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12084 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoImplements a new API to set a function entry hook for profiling.
danno@chromium.org [Fri, 13 Jul 2012 16:18:37 +0000 (16:18 +0000)]
Implements a new API to set a function entry hook for profiling.

Exposes a new API; V8::SetFunctionEntryHook.
If a non-NULL function entry hook is set, the code generator(s) will invoke on the entry hook at the very start of each generated function.

Committed: https://code.google.com/p/v8/source/detail?r=12069

Review URL: https://chromiumcodereview.appspot.com/10706002
Patch from Sigurður Ásgeirsson <siggi@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12083 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoAdd counters that automatically track object sizes and counts.
danno@chromium.org [Fri, 13 Jul 2012 12:22:09 +0000 (12:22 +0000)]
Add counters that automatically track object sizes and counts.

Review URL: https://chromiumcodereview.appspot.com/10702168

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12082 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFactor out a Histogram class from HistogramTimer, and use it to measure external...
mstarzinger@chromium.org [Fri, 13 Jul 2012 12:12:09 +0000 (12:12 +0000)]
Factor out a Histogram class from HistogramTimer, and use it to measure external fragmentation

BUG=none
TEST=none

Review URL: https://chromiumcodereview.appspot.com/10695056
Patch from Jochen Eisinger <jochen@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12081 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoMIPS: Defer creating Handles for HConstants to the code generation phase.
sanjoy@chromium.org [Fri, 13 Jul 2012 12:05:29 +0000 (12:05 +0000)]
MIPS: Defer creating Handles for HConstants to the code generation phase.

Port r12048 (b4b20305)

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/10692193
Patch from Akos Palfi <palfia@homejinni.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12080 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoHandle setters on the prototype chain efficiently by default.
svenpanne@chromium.org [Fri, 13 Jul 2012 09:37:03 +0000 (09:37 +0000)]
Handle setters on the prototype chain efficiently by default.

Note that changes on the prototype chain should already be handled by
StubCompiler::CheckPrototypes, if not, it is a bug there and not in
LookupForWrite. Furthermore, neither test262 nor WebKit layout tests hint at a
compability issue, so it should be safe to remove a redundant check.

The good point about this CL: It improves Box2D's performance by 22%.

Review URL: https://chromiumcodereview.appspot.com/10695197

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12079 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoIncorporate constness into inferred interfaces
rossberg@chromium.org [Fri, 13 Jul 2012 09:29:43 +0000 (09:29 +0000)]
Incorporate constness into inferred interfaces
(in preparation for handling imports).

R=svenpanne@chromium.org
BUG=v8:1569
TEST=

Review URL: https://chromiumcodereview.appspot.com/10698167

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12078 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFix Mac build warning (very rightful)
peter.rybin@gmail.com [Fri, 13 Jul 2012 09:23:46 +0000 (09:23 +0000)]
Fix Mac build warning (very rightful)

Review URL: https://chromiumcodereview.appspot.com/10702201

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12077 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoMIPS: Ensure that all descriptors have a valid enumeration index, and replace NextEnu...
verwaest@chromium.org [Fri, 13 Jul 2012 09:14:43 +0000 (09:14 +0000)]
MIPS: Ensure that all descriptors have a valid enumeration index, and replace NextEnumIndex with LastAdded.

Port r12042 (ce65764e)

Original commit message:
The LastAdded points to the descriptor that was last added to the array. From the descriptor we can deduce the NextEnumerationIndex. This allows us to quickly find the property that we are transitioning to, which is necessary for transition-intensive code, eg JSON parsing.

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/10690178
Patch from Akos Palfi <palfia@homejinni.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12076 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoMIPS: Swap bitfield3 and backpointer.
verwaest@chromium.org [Fri, 13 Jul 2012 09:13:10 +0000 (09:13 +0000)]
MIPS: Swap bitfield3 and backpointer.

Port r12034 (f17b84c0)

Original commit message:
Bitfield3 now has its own field, while the backpointer shares the field with the descriptor array; which will become the transition array.

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/10692192
Patch from Akos Palfi <palfia@homejinni.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12075 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoDon't miss error message in 'restart frame' debug action
peter.rybin@gmail.com [Fri, 13 Jul 2012 09:02:03 +0000 (09:02 +0000)]
Don't miss error message in 'restart frame' debug action

Review URL: https://chromiumcodereview.appspot.com/10693095

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12074 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoMIPS: Fixed mistake in condition for Nan fixups from snapshot.
yangguo@chromium.org [Fri, 13 Jul 2012 07:22:11 +0000 (07:22 +0000)]
MIPS: Fixed mistake in condition for Nan fixups from snapshot.

The commit r11871 caused quiet NaN related errors to
appear on Loongson and Sigma platforms when snapshot
is used. This commit fixes those issues.

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/10735080
Patch from Akos Palfi <palfia@homejinni.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12073 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoAdded Crankshaft support for setters.
svenpanne@chromium.org [Fri, 13 Jul 2012 07:14:28 +0000 (07:14 +0000)]
Added Crankshaft support for setters.

Refactored ComputeLoadStoreField a bit on the way to clarify a bit what it
actually does.

Review URL: https://chromiumcodereview.appspot.com/10692187

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12072 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoRenamed ConvertDescriptorToFieldAndMapTransition to ConvertTransitionToMapTransition...
verwaest@chromium.org [Thu, 12 Jul 2012 16:36:10 +0000 (16:36 +0000)]
Renamed ConvertDescriptorToFieldAndMapTransition to ConvertTransitionToMapTransition, and let it replace the transition in-place rather than copy the transition array.

Review URL: https://chromiumcodereview.appspot.com/10694155

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12071 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoRevert 12069: Implements a new API to set a function entry hook for profiling
danno@chromium.org [Thu, 12 Jul 2012 15:59:50 +0000 (15:59 +0000)]
Revert 12069: Implements a new API to set a function entry hook for profiling

Reverted due to waterfall failures

TBR=mstarzinger@chromium.org

Review URL: https://chromiumcodereview.appspot.com/10704189

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12070 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoImplements a new API to set a function entry hook for profiling.
danno@chromium.org [Thu, 12 Jul 2012 15:42:39 +0000 (15:42 +0000)]
Implements a new API to set a function entry hook for profiling.

Exposes a new API; V8::SetFunctionEntryHook.
If a non-NULL function entry hook is set, the code generator(s) will invoke on the entry hook at the very start of each generated function.

Review URL: https://chromiumcodereview.appspot.com/10706002
Patch from Sigurður Ásgeirsson <siggi@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12069 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoInstall guards for new invariants required for parallel compilation.
sanjoy@chromium.org [Thu, 12 Jul 2012 15:40:05 +0000 (15:40 +0000)]
Install guards for new invariants required for parallel compilation.

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/10700185

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12068 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoRename LChunkBase to LChunk, LChunk to LPlatformChunk and remove some unneeded explic...
sanjoy@chromium.org [Thu, 12 Jul 2012 15:29:14 +0000 (15:29 +0000)]
Rename LChunkBase to LChunk, LChunk to LPlatformChunk and remove some unneeded explicit constructor attributes.

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/10701157

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12067 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoCouple the enumeration index of a property to the size of the descriptor array where...
verwaest@chromium.org [Thu, 12 Jul 2012 15:14:54 +0000 (15:14 +0000)]
Couple the enumeration index of a property to the size of the descriptor array where it first appeared.

Review URL: https://chromiumcodereview.appspot.com/10692185

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12066 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoWhen we find an accessor pair as TRANSITION, we are sure it doesn't contain an access...
verwaest@chromium.org [Thu, 12 Jul 2012 15:10:55 +0000 (15:10 +0000)]
When we find an accessor pair as TRANSITION, we are sure it doesn't contain an accessor yet.

Review URL: https://chromiumcodereview.appspot.com/10704185

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12065 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoBreak Crankshaft into phases.
sanjoy@chromium.org [Thu, 12 Jul 2012 15:10:34 +0000 (15:10 +0000)]
Break Crankshaft into phases.

Crankshaft now runs by calling CreateGraph on the HGraphBuilder, then
calling Optimize and Codegen on the HGraph.

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/10700115

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12064 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoAlways return failure when we didn't manage to add transitions.
verwaest@chromium.org [Thu, 12 Jul 2012 15:01:39 +0000 (15:01 +0000)]
Always return failure when we didn't manage to add transitions.

Review URL: https://chromiumcodereview.appspot.com/10704183

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12063 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoSplitting DescriptorArray::CopyInsert into CopyInsert, CopyAdd and CopyReplace.
verwaest@chromium.org [Thu, 12 Jul 2012 13:34:02 +0000 (13:34 +0000)]
Splitting DescriptorArray::CopyInsert into CopyInsert, CopyAdd and CopyReplace.

Review URL: https://chromiumcodereview.appspot.com/10743003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12060 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoDo not enter the debugger when debugger is not active.
yangguo@chromium.org [Thu, 12 Jul 2012 11:31:52 +0000 (11:31 +0000)]
Do not enter the debugger when debugger is not active.

R=mstarzinger@chromium.org
BUG=
TEST=test-debug/DebuggerCreatesContextIffActive

Review URL: https://chromiumcodereview.appspot.com/10702166

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12059 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoPrepare push to trunk. Now working on version 3.12.12.
rossberg@chromium.org [Thu, 12 Jul 2012 11:03:18 +0000 (11:03 +0000)]
Prepare push to trunk.  Now working on version 3.12.12.

R=svenpanne@chromium.org
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/10703164

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12056 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoPerform HasFastProperties check on prototypes when computing call targets in Cranksha...
svenpanne@chromium.org [Thu, 12 Jul 2012 09:32:26 +0000 (09:32 +0000)]
Perform HasFastProperties check on prototypes when computing call targets in Crankshaft, part 2.

The previous fix was for "real" calls, this one is for getters. It is a bit
unfortunate that this has to be fixed twice: We should really break up
Call::ComputeTarget into a predicate and 1 or 2 getters, so code can be reused.

The regression test has been modified a bit to make things more uniform.

Review URL: https://chromiumcodereview.appspot.com/10702164

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12053 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFix bug in CompilationHandlescope constructor.
sanjoy@chromium.org [Thu, 12 Jul 2012 07:59:41 +0000 (07:59 +0000)]
Fix bug in CompilationHandlescope constructor.

This will never be triggered in the state v8 is currently in, but will crash v8 when multiple DeferredHandles are queued up during parallel compilation.

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/10696178

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12050 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoUnbreak MSVC build by respecting explicit FmtElm constructor. This is
sanjoy@chromium.org [Wed, 11 Jul 2012 20:11:04 +0000 (20:11 +0000)]
Unbreak MSVC build by respecting explicit FmtElm constructor.  This is
a real bug caught by MSVC but not g++.

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/10700162

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12049 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoDefer creating Handles for HConstants to the code generation phase.
sanjoy@chromium.org [Wed, 11 Jul 2012 16:17:02 +0000 (16:17 +0000)]
Defer creating Handles for HConstants to the code generation phase.

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/10544196

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12048 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoMIPS: Rename "mips" arch to "mipsel" in the GYP build.
jkummerow@chromium.org [Wed, 11 Jul 2012 15:15:04 +0000 (15:15 +0000)]
MIPS: Rename "mips" arch to "mipsel" in the GYP build.

In the traditional MIPS naming scheme, "mips" is used for
big-endian mips and "mipsel" is used for little-endian mips.
In V8 the "mips" build is little-endian, so the "mips" target is
renamed to "mipsel" to be compliant with the traditional MIPS
naming scheme.

This change is also required for supporting the Chromium project on MIPS.

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/10695114

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12047 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoAdd missing --allow-natives-syntax flag to test case
jkummerow@chromium.org [Wed, 11 Jul 2012 14:45:47 +0000 (14:45 +0000)]
Add missing --allow-natives-syntax flag to test case

R=rossberg@chromium.org

Review URL: https://chromiumcodereview.appspot.com/10698152

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12046 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoRemove duplicated LChunk code.
sanjoy@chromium.org [Wed, 11 Jul 2012 14:42:17 +0000 (14:42 +0000)]
Remove duplicated LChunk code.

Divide the LChunk class into an arch-independent LChunkBase and an
arch-dependent LChunk which inherits from LChunkBase.

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/10701141

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12045 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoRefactor copying of maps and descriptor arrays.
verwaest@chromium.org [Wed, 11 Jul 2012 14:29:16 +0000 (14:29 +0000)]
Refactor copying of maps and descriptor arrays.

Mainly ensure we don't copy descriptor arrays we'll throw away immediately afterwards.

Review URL: https://chromiumcodereview.appspot.com/10700160

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12044 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoPerform HasFastProperties check on prototypes when computing call targets in Crankshaft.
jkummerow@chromium.org [Wed, 11 Jul 2012 14:27:53 +0000 (14:27 +0000)]
Perform HasFastProperties check on prototypes when computing call targets in Crankshaft.

BUG=125148
TEST=mjsunit/regress/regress-crbug-125148

Review URL: https://chromiumcodereview.appspot.com/10735054

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12043 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoEnsure that all descriptors have a valid enumeration index, and replace NextEnumIndex...
verwaest@chromium.org [Wed, 11 Jul 2012 14:26:42 +0000 (14:26 +0000)]
Ensure that all descriptors have a valid enumeration index, and replace NextEnumIndex with LastAdded.

The LastAdded points to the descriptor that was last added to the array. From the descriptor we can deduce the NextEnumerationIndex. This allows us to quickly find the property that we are transitioning to, which is necessary for transition-intensive code, eg JSON parsing.

Review URL: https://chromiumcodereview.appspot.com/10695120

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12042 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoTurn off es5_readonly again: still causes ~370 WebKit regressions.
rossberg@chromium.org [Wed, 11 Jul 2012 14:09:42 +0000 (14:09 +0000)]
Turn off es5_readonly again: still causes ~370 WebKit regressions.

R=mstarzinger@chromium.org
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/10693145

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12041 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoDo not use user-defined __lookupGetter__ when generating stack trace.
yangguo@chromium.org [Wed, 11 Jul 2012 11:35:19 +0000 (11:35 +0000)]
Do not use user-defined __lookupGetter__ when generating stack trace.

BUG=v8:1591
TEST=regress-1591.js

Review URL: https://chromiumcodereview.appspot.com/10736030

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12040 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFix compile errors in Visual C++ 2008.
danno@chromium.org [Wed, 11 Jul 2012 10:08:56 +0000 (10:08 +0000)]
Fix compile errors in Visual C++ 2008.

R=danno@chromium.org
BUG=None
TEST=ARM compiles on VC 2008.

Review URL: https://chromiumcodereview.appspot.com/10690111
Patch from Sigurður Ásgeirsson <siggi@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12039 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoTurn on es5[2] features by default.
rossberg@chromium.org [Wed, 11 Jul 2012 09:39:44 +0000 (09:39 +0000)]
Turn on es5[2] features by default.

R=mstarzinger@chromium.org
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/10689156

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12038 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoRe-land "Removed one copy-n-paste clone of HGraphBuilder::BuildStoreNamed."
svenpanne@chromium.org [Wed, 11 Jul 2012 07:59:58 +0000 (07:59 +0000)]
Re-land "Removed one copy-n-paste clone of HGraphBuilder::BuildStoreNamed."

The previous CL used the wrong map in some cases, leading to a wrong decision
regarding monomorphic usage and therefore some performance regressions.

Review URL: https://chromiumcodereview.appspot.com/10694129

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12037 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoSync preparser and parser wrt syntax error in switch..case.
yangguo@chromium.org [Wed, 11 Jul 2012 07:47:29 +0000 (07:47 +0000)]
Sync preparser and parser wrt syntax error in switch..case.

R=jkummerow@chromium.org
BUG=v8:2210
TEST=test-parsing/ParserSync

Review URL: https://chromiumcodereview.appspot.com/10701116

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12036 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoPort r11344 (Try aligning unboxed double array backing store in allocation or
danno@chromium.org [Tue, 10 Jul 2012 13:33:19 +0000 (13:33 +0000)]
Port r11344 (Try aligning unboxed double array backing store in allocation or
scavenge promotion.) to ARM.

BUG=none
TEST=none

Review URL: https://chromiumcodereview.appspot.com/10696097
Patch from Rodolph Perfetta <rodolph.perfetta@gmail.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12035 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoSwap bitfield3 and backpointer.
verwaest@chromium.org [Tue, 10 Jul 2012 13:31:36 +0000 (13:31 +0000)]
Swap bitfield3 and backpointer.

Bitfield3 now has its own field, while the backpointer shares the field with the descriptor array; which will become the transition array.

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/10692130

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12034 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoUpdate .gitignore for Windows/Visual Studio/GYP.
danno@chromium.org [Tue, 10 Jul 2012 12:58:42 +0000 (12:58 +0000)]
Update .gitignore for Windows/Visual Studio/GYP.

BUG=None
TEST=None

Review URL: https://chromiumcodereview.appspot.com/10701115
Patch from Sigurður Ásgeirsson <siggi@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12033 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoAdd OS::GetCurrentProcessId and prepend output from trace-gc with the current pid
mstarzinger@chromium.org [Tue, 10 Jul 2012 12:52:36 +0000 (12:52 +0000)]
Add OS::GetCurrentProcessId and prepend output from trace-gc with the current pid

BUG=none
TEST=manual

Review URL: https://chromiumcodereview.appspot.com/9817002
Patch from Jochen Eisinger <jochen@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12032 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoCorrectly report octal literals in strict mode when preparsing.
yangguo@chromium.org [Tue, 10 Jul 2012 12:24:17 +0000 (12:24 +0000)]
Correctly report octal literals in strict mode when preparsing.

SingletonLogger::LogMessage did not work as advertised and
overwrote existing message.

R=mstarzinger@chromium.org
BUG=v8:2220
TEST=test-parsing/PreparserStrictOctal

Review URL: https://chromiumcodereview.appspot.com/10689134

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12031 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFix inline constructors for Harmony Proxy prototypes.
mstarzinger@chromium.org [Tue, 10 Jul 2012 11:28:33 +0000 (11:28 +0000)]
Fix inline constructors for Harmony Proxy prototypes.

R=rossberg@chromium.org
BUG=v8:2225
TEST=mjsunit/regress/regress-2225

Review URL: https://chromiumcodereview.appspot.com/10736009

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12028 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoPrepare push to trunk. Now working on version 3.12.11.
danno@chromium.org [Tue, 10 Jul 2012 11:23:46 +0000 (11:23 +0000)]
Prepare push to trunk.  Now working on version 3.12.11.

R=mstarzinger@chromium.org

Review URL: https://chromiumcodereview.appspot.com/10693126

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12027 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoOutput the correct line number in the error message for compilation failures during...
mstarzinger@chromium.org [Tue, 10 Jul 2012 11:04:38 +0000 (11:04 +0000)]
Output the correct line number in the error message for compilation failures during bootstrapping

BUG=none
TEST=none

Review URL: https://chromiumcodereview.appspot.com/10735024
Patch from Jochen Eisinger <jochen@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12026 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFixed array bounds check elimination (Chromium issue 132114).
mmassi@chromium.org [Tue, 10 Jul 2012 11:01:29 +0000 (11:01 +0000)]
Fixed array bounds check elimination (Chromium issue 132114).

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/10698125

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12025 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoAfter transitioning to constant function, return the constant function as result...
verwaest@chromium.org [Tue, 10 Jul 2012 09:31:30 +0000 (09:31 +0000)]
After transitioning to constant function, return the constant function as result of the assignment.

BUG=v8:2226
TEST=test/mjsunit/regress/regress-2226.js

Review URL: https://chromiumcodereview.appspot.com/10700137

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12024 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoRevert "Removed one copy-n-paste clone of HGraphBuilder::BuildStoreNamed."
svenpanne@chromium.org [Tue, 10 Jul 2012 09:15:03 +0000 (09:15 +0000)]
Revert "Removed one copy-n-paste clone of HGraphBuilder::BuildStoreNamed."

It inadvertently introduced some performance regressions, e.g. for the
'richards' benchmark.

Review URL: https://chromiumcodereview.appspot.com/10704127

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12023 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoMoving prototype transitions into the header of the transition array.
verwaest@chromium.org [Tue, 10 Jul 2012 07:53:00 +0000 (07:53 +0000)]
Moving prototype transitions into the header of the transition array.

Review URL: https://chromiumcodereview.appspot.com/10692026

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12022 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFix types.
rossberg@chromium.org [Mon, 9 Jul 2012 16:31:49 +0000 (16:31 +0000)]
Fix types.

R=mstarzinger@chromium.org
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/10748002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12021 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoSilence more warnings.
rossberg@chromium.org [Mon, 9 Jul 2012 16:22:53 +0000 (16:22 +0000)]
Silence more warnings.

R=mstarzinger@chromium.org
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/10746002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12020 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFix Debug::Break crash.
yangguo@chromium.org [Mon, 9 Jul 2012 15:18:08 +0000 (15:18 +0000)]
Fix Debug::Break crash.

BUG=131642
TEST=test-debug/Regress131642

Review URL: https://chromiumcodereview.appspot.com/10698123

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12019 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoRemoved one copy-n-paste clone of HGraphBuilder::BuildStoreNamed.
svenpanne@chromium.org [Mon, 9 Jul 2012 13:59:28 +0000 (13:59 +0000)]
Removed one copy-n-paste clone of HGraphBuilder::BuildStoreNamed.

Review URL: https://chromiumcodereview.appspot.com/10689129

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12018 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoSilence warnings.
rossberg@chromium.org [Mon, 9 Jul 2012 13:54:29 +0000 (13:54 +0000)]
Silence warnings.

R=jkummerow@chromium.org
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/10692131

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12017 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoDisable array bounds check removal.
mmassi@chromium.org [Mon, 9 Jul 2012 13:25:29 +0000 (13:25 +0000)]
Disable array bounds check removal.

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/10703115

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12016 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoRestored removed flag.
mmassi@chromium.org [Mon, 9 Jul 2012 12:06:07 +0000 (12:06 +0000)]
Restored removed flag.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12015 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoRe-enable array bounds check elimination.
mmassi@chromium.org [Mon, 9 Jul 2012 12:05:58 +0000 (12:05 +0000)]
Re-enable array bounds check elimination.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12014 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoAdded Crankshaft support for JavaScript getters.
svenpanne@chromium.org [Mon, 9 Jul 2012 11:33:53 +0000 (11:33 +0000)]
Added Crankshaft support for JavaScript getters.

Instead of calling the getter via a stub, we now call it more directly via a
(guarded) CallConstantFunction instruction.

Review URL: https://chromiumcodereview.appspot.com/10735023

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12013 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoImproved printing of CheckPrototypeMaps instruction.
svenpanne@chromium.org [Mon, 9 Jul 2012 10:46:17 +0000 (10:46 +0000)]
Improved printing of CheckPrototypeMaps instruction.

Review URL: https://chromiumcodereview.appspot.com/10696139

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12012 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFixed CompareIC::GetStateName.
svenpanne@chromium.org [Mon, 9 Jul 2012 10:28:56 +0000 (10:28 +0000)]
Fixed CompareIC::GetStateName.

Review URL: https://chromiumcodereview.appspot.com/10692126

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12011 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoImplement proper module linking.
rossberg@chromium.org [Mon, 9 Jul 2012 08:59:03 +0000 (08:59 +0000)]
Implement proper module linking.

Specifically:

- In parser, check that all exports are defined.
- Move JSModule allocation from parser to scope resolution.
- Move JSModule linking from full codegen to scope resolution.
- Implement module accessors for exported value members.
- Allocate module contexts statically along with JSModules
  (to allow static linking), but chain them when module literal is evaluated.
- Make module contexts' extension slot refer to resp. JSModule
  (makes modules' ScopeInfo accessible from context).
- Some other tweaks to context handling in general.
- Make any code containing module literals (and thus embedding
  static references to JSModules) non-cacheable.

This enables accessing module instance objects as expected.
Import declarations are a separate feature and do not work yet.

R=mstarzinger@chromium.org
BUG=v8:1569
TEST=

Review URL: https://chromiumcodereview.appspot.com/10690043

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12010 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFix wrong iteration variable in test/preparser/strict-identifiers.pyt
jkummerow@chromium.org [Mon, 9 Jul 2012 08:26:17 +0000 (08:26 +0000)]
Fix wrong iteration variable in test/preparser/strict-identifiers.pyt

R=mstarzinger@chromium.org
TEST=preparser/strict-identifiers

Review URL: https://chromiumcodereview.appspot.com/10693116

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12009 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoMake room in Code flags to support compiled stubs.
danno@chromium.org [Fri, 6 Jul 2012 22:08:27 +0000 (22:08 +0000)]
Make room in Code flags to support compiled stubs.

R=mstarzinger@chromium.org

Review URL: https://chromiumcodereview.appspot.com/10701106

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12008 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoPrepare push to trunk. Now working on version 3.12.10.
yangguo@chromium.org [Fri, 6 Jul 2012 16:20:57 +0000 (16:20 +0000)]
Prepare push to trunk.  Now working on version 3.12.10.

R=jkummerow@chromium.org
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/10693113

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12005 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFix missing handle scope in recent r12001.
mstarzinger@chromium.org [Fri, 6 Jul 2012 16:03:18 +0000 (16:03 +0000)]
Fix missing handle scope in recent r12001.

R=yangguo@chromium.org
BUG=v8:2219
TEST=webkit:fast/dom/inline-event-attributes-release.html

Review URL: https://chromiumcodereview.appspot.com/10701108

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12004 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFix bug in compilation-handlescope.
sanjoy@chromium.org [Fri, 6 Jul 2012 14:09:11 +0000 (14:09 +0000)]
Fix bug in compilation-handlescope.

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/10696125

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12003 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoCorrectly advance the scanner when scanning unicode regexp flag.
yangguo@chromium.org [Fri, 6 Jul 2012 14:04:15 +0000 (14:04 +0000)]
Correctly advance the scanner when scanning unicode regexp flag.

R=rossberg@chromium.org
BUG=136084
TEST=regress-136084.js

Review URL: https://chromiumcodereview.appspot.com/10703106

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12002 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFix unhandlified code calling Harmony Proxy traps.
mstarzinger@chromium.org [Fri, 6 Jul 2012 11:34:22 +0000 (11:34 +0000)]
Fix unhandlified code calling Harmony Proxy traps.

R=rossberg@chromium.org
BUG=v8:2219
TEST=mjsunit/regress/regress-2219

Review URL: https://chromiumcodereview.appspot.com/10703103

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12001 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoAlso in ClearNonLiveTransitions we have to check if there still is a transition array...
verwaest@chromium.org [Fri, 6 Jul 2012 10:02:15 +0000 (10:02 +0000)]
Also in ClearNonLiveTransitions we have to check if there still is a transition array before we access it.
This should never happen in the long run, but will happen when maps still have a back-pointer while the forward pointer (the transition) was overwritten.

Review URL: https://chromiumcodereview.appspot.com/10704109

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12000 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoPut additional information onto the stack when crashing in Debug::Break.
yangguo@chromium.org [Fri, 6 Jul 2012 09:34:59 +0000 (09:34 +0000)]
Put additional information onto the stack when crashing in Debug::Break.

R=jkummerow@chromium.org
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/10698116

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11999 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoAdd a second kind of HandleScope that ties the lifetime of Handles created in its...
sanjoy@chromium.org [Fri, 6 Jul 2012 09:31:31 +0000 (09:31 +0000)]
Add a second kind of HandleScope that ties the lifetime of Handles created in its scope to the lifetime of a given CompilationInfo.

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/10697094

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11998 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoSlightly generalize AddCheckConstantFunction.
svenpanne@chromium.org [Fri, 6 Jul 2012 08:34:48 +0000 (08:34 +0000)]
Slightly generalize AddCheckConstantFunction.

This is needed for crankshafted accessors, which are syntactically not a Call.

Review URL: https://chromiumcodereview.appspot.com/10702109

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11997 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoAdded LookupResult::GetValueFromMap.
svenpanne@chromium.org [Fri, 6 Jul 2012 08:11:10 +0000 (08:11 +0000)]
Added LookupResult::GetValueFromMap.

This is needed later for crankshafted accessors and reduces copy-n-paste a bit.

Review URL: https://chromiumcodereview.appspot.com/10702108

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11996 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFix compilation when disabling debugger support.
yangguo@chromium.org [Thu, 5 Jul 2012 16:23:14 +0000 (16:23 +0000)]
Fix compilation when disabling debugger support.

Based on a patch by Remi Duraffort <remi.duraffort@st.com>: http://codereview.chromium.org/10702093/

R=mstarzinger@chromium.org
BUG=
TEST=build with debuggersupport=off

Review URL: https://chromiumcodereview.appspot.com/10697085

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11995 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoSeparating transitions from descriptors.
verwaest@chromium.org [Thu, 5 Jul 2012 13:54:20 +0000 (13:54 +0000)]
Separating transitions from descriptors.

In this design maps contain descriptor arrays, which in turn can contain transition arrays. If transitions are needed when no descriptor array is present, a descriptor array without real descriptors is inserted just so it can point at the transition array.

The transition array does not contain details about the field it transitions to. In order to weed out transitions to FIELDs from CONSTANT_FUNCTION (what used to be MAP_TRANSITION vs CONSTANT_TRANSITION), the transition needs to be followed and the details need to be looked up in the target map. CALLBACKS transitions are still easy to recognize since the transition targets are stored as an AccessorPair containing the maps, rather than the maps directly.

Currently AccessorPairs containing a transition and an accessor are shared between the descriptor array and the transition array. This simplifies lookup since we only have to look in one of both arrays. This will change in subsequent revisions, when descriptor arrays will become shared between multiple maps, since transitions cannot be shared.

Review URL: https://chromiumcodereview.appspot.com/10697015

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11994 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoFix timout of packed-elements.js on ARM
danno@chromium.org [Thu, 5 Jul 2012 13:40:51 +0000 (13:40 +0000)]
Fix timout of packed-elements.js on ARM

R=mstarzinger@chromium.org

Review URL: https://chromiumcodereview.appspot.com/10703093

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11993 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoRemoved superfluous cast.
svenpanne@chromium.org [Thu, 5 Jul 2012 13:13:33 +0000 (13:13 +0000)]
Removed superfluous cast.

R=jkummerow@chromium.org

Review URL: https://chromiumcodereview.appspot.com/10696119

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11992 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoRemove some duplicated logic from compiler.cc.
sanjoy@chromium.org [Thu, 5 Jul 2012 13:11:57 +0000 (13:11 +0000)]
Remove some duplicated logic from compiler.cc.

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/10701060

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11991 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoCleanup Test262 expectations for simulators.
mstarzinger@chromium.org [Thu, 5 Jul 2012 12:44:44 +0000 (12:44 +0000)]
Cleanup Test262 expectations for simulators.

R=jkummerow@chromium.org
TEST=test262

Review URL: https://chromiumcodereview.appspot.com/10690090

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11990 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoPrepare push to trunk. Now working on version 3.12.9.
svenpanne@chromium.org [Thu, 5 Jul 2012 08:21:28 +0000 (08:21 +0000)]
Prepare push to trunk.  Now working on version 3.12.9.

R=jkummerow@chromium.org
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/10702099

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11987 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoLarger stack trace string in the minidump when catching Debug::Break crash.
yangguo@chromium.org [Thu, 5 Jul 2012 08:07:01 +0000 (08:07 +0000)]
Larger stack trace string in the minidump when catching Debug::Break crash.

R=jkummerow@chromium.org
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/10698103

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11986 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agoRemove $FAST variable from mozilla.status. It was never set to true anyway.
jkummerow@chromium.org [Thu, 5 Jul 2012 07:33:01 +0000 (07:33 +0000)]
Remove $FAST variable from mozilla.status. It was never set to true anyway.

Review URL: https://chromiumcodereview.appspot.com/10694083

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11985 ce2b1a6d-e550-0410-aec6-3dcde31c8c00