Transitioning stores change maps.

R=jarin@chromium.org

Review URL: https://codereview.chromium.org/296953003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21417 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Introduce a separate event for CodeDeopt

The reuse of CodeCreateEvent for deopt events caused a CodeCreateEvent
fired twice for a code object. When the event was processed for the first
time it seized the no-fp-ranges from code object, so the second event
had no ranges info leaving code entry without them.
As a result when a cpu profile sample falls into the region it missed the
2nd stack frame.

LOG=N
BUG=
R=bmeurer@chromium.org, loislo@chromium.org

Review URL: https://codereview.chromium.org/290093005

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21418 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Reland "Prevent liveedit on or under generators with open activations"

The change relative to the previous CL is a logic change in
DropActivationsInActiveThreadImpl.  The previous CL skipped the matcher
unless the frame was a JS frame; this was correct for
MultipleFunctionTarget but not for SingleFrameTarget.

I have not been able to reproduce the original failures on either
architecture (ia32 or x64; stack frame dropping is unsupported on other
architectures).

R=yangguo@chromium.org
LOG=N
TEST=mjsunit/harmony/generators-debug-liveedit.js
BUG=

Review URL: https://codereview.chromium.org/270283002

Patch from Andy Wingo <wingo@igalia.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21419 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Don't replace initializing smi stores during store elimination.

R=ishell@chromium.org

Review URL: https://codereview.chromium.org/286903019

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21420 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Remove special debug ExternalReferences.

R=ulan@chromium.org

Review URL: https://codereview.chromium.org/296043002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21421 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Remove check for SAHF support in ia32.

On ia32, SAHF is guaranteed. It's only necessary to probe for it on x64.

R=svenpanne@chromium.org
BUG=376087
LOG=N

Review URL: https://codereview.chromium.org/296133006

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21422 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fix Array.prototype.push and Array.prototype.unshift for read-only length.

BUG=
R=mstarzinger@chromium.org, mvstanton@chromium.org

Review URL: https://codereview.chromium.org/279773002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21423 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Remove usage of Locker/Unlocker where possible.

This is possible because we removed DebuggerAgent.

R=svenpanne@chromium.org

Review URL: https://codereview.chromium.org/286903004

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21424 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Increase external allocation limit.

BUG=
R=mstarzinger@chromium.org

Review URL: https://codereview.chromium.org/291653005

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21425 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Allow specifying base offset when constructing Keyed hydrogen instructions

This is preparation for pending hydrogen stub work that needs to access memory using KeyedLoad/KeyedStore operations where the base offset used for the accesses are is the the default (e.g. the size of an FixedArray header for FixedArrays or zero for external arrays).

R=mvstanton@chromium.org

Review URL: https://codereview.chromium.org/295913009

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21426 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Make v8::TryCatch able to consume natively thrown exceptions.

R=yangguo@chromium.org, haraken@chromium.org
BUG=chromium:362388
TEST=cctest/test-api/TryCatchNative
LOG=N

Review URL: https://codereview.chromium.org/287133005

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21427 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Revert "Rename target-specific binaries built for host."

The Android build system support for gyp has been fixed to handle
target-dependent host binaries correctly without requiring them to
include the target architecture in the name. Remove the suffixes to make
referring to these targets simpler again.

This reverts r14209.

BUG=
R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/236833004

Patch from Richard Coles <torne@chromium.org>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21428 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Customized support for feedback on calls to Array.

Gather transition feedback on array calls, and inline the Array
function call when it makes sense.

R=danno@chromium.org

Review URL: https://codereview.chromium.org/279423005

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21429 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Make serializer non-static.

R=svenpanne@chromium.org

Review URL: https://codereview.chromium.org/296853007

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21430 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Attempt no. 3 to fix Heap::IsHeapIterable and HeapIterator.

Now we remember new space's top pointer after the last GC to find out if there was a new space allocation since the last GC.

Unfortunately, this not completely safe - the debugger has a callback hook (that can call to JS) at the end of the GC epilogue that can in theory allocate and possibly make the heap non-iterable. We can only hope this does not happen.

BUG=373283
R=hpayer@chromium.org
LOG=N

Review URL: https://codereview.chromium.org/291193005

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21431 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Revert "Make v8::TryCatch able to consume natively thrown exceptions"

R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/293123003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21432 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Add support for ES6 Symbol in heap profiler

Heap profiler will create a node with name Symbol and type kSymbol.

BUG=chromium:376194
LOG=Y
R=loislo@chromium.org, yangguo@chromium.org

Review URL: https://codereview.chromium.org/290013004

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21433 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
ClearTypeFeedbackInfo(): context may not be initialized.

SharedFunctionInfo::ClearTypeFeedbackInfo() wants to compare feedback
to the array JSFunction, but it's called at times when the context
isn't fully initialized. Be cautious about this check.

R=ulan@chromium.org

Review URL: https://codereview.chromium.org/298983002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21434 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
GCMole evaluation order issue in CallIC::DoCustomHandler().

R=jarin@chromium.org

Review URL: https://codereview.chromium.org/296693011

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21435 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Inobject slack tracking is done on a per-closure basis instead of per-shared info basis.
This fixes inobject slack tracking for prototype inheritance pattern that uses closures.

R=mstarzinger@chromium.org

Review URL: https://codereview.chromium.org/283383006

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