Prepare push to trunk.  Now working on version 3.24.19.

R=jkummerow@chromium.org
TBR=jkummerow@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@18653 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Introduce a setting to control the toolset for which d8 is compiled

BUG=v8:1775
R=machenbach@chromium.org
LOG=y

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

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

Remove duplicate code in StringTable and Heap. Instead of having many InternalizeXXXString methods, add a general InternalizeStringWithKey that takes a string table key.

BUG=
R=dcarney@chromium.org, svenpanne@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@18657 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fix stub-invoked setter callback handling.

When invoking a setter callback for a property using
JSObject::SetPropertyWithCallback(),the callback arguments includes
a correct pair of receiver and holder objects.

Such a pair of _possibly different_ arguments (receiver, holder) must
also be supplied when invoking the same setter callback from JITed
code, when the setter is invoked through the StoreCallbackProperty
stub.

An example where this matters are the accessor properties kept on the
global scope of Worker (i.e., properties kept on the global object
itself, and not on its prototype.) Conflating the receiver with the
holder leads to general confusion when attempting to fetch out the
wrapper object.

LOG=N
R=dcarney@chromium.org, dcarney
BUG=239669

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

Patch from Sigbjorn Finne <sigbjornf@opera.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@18658 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Various extension-related cleanup and simplifications.

Removes the embarrassing "static"s, shuffles some code around, doing various cleanups on the way.

R=dcarney@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@18659 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fix logic error in assert in IsUndeclaredGlobal()

Recent changes in IC logic meant that CallStubs no longer use the Contextual bit. IsUndeclaredGlobal() needed to adjust for that.

In fact, now the CL has morphed to remove the notion of storing contextual state in the IC at all, it just becomes some extra ic state of the load ic. This took some adjustment in harmony code to use the global receiver for certain stores.

Now it's clearer that only LoadICs actually record any information about contextual or not.

R=verwaest@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@18660 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Remove special ArrayCode CallIC.
Once Call ICs are replaced by LoadIC + CallFunctionStub, we'll need a new way
of tracking this information.

R=mvstanton@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@18662 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Remove special charAt and charCodeAt handling in the ICs.

R=mvstanton@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@18663 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Activate calling push-to-trunk in auto-roll script.

- Call push-to-trunk through python not through the shell
- Restore tree state on script errors
- Mock out python call in unit tests
- The actual call stays behind a flag

BUG=
R=ulan@chromium.org

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

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

TBR=dcarney@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@18665 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Minor bugfix in building inlined Array: bad argument to JSArrayBuilder.

An HConstant pointing to a Cell rather than an AllocationSite
was passed. The argument wasn't used because of fortuitous
flags. An assert was added to protect the argument.

R=bmeurer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@18666 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Moving logic to AstNode to determine how many type cells are required.

With this change, we'll be able to discover how many type cells we
need at parse time, enabling future optimizations.

R=bmeurer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@18668 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Remove the special MathFloor / MathAbs call handlers.

BUG=
R=svenpanne@chromium.org

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

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

R=verwaest@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@18670 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Remove special String.fromCharCode call IC support.

BUG=
R=dcarney@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@18671 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fix compilation with latest Xcode toolchain.

TBR=jarin@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@18673 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Use kRegisterSize when passing arguments to the C++ runtime for X64

R=verwaest@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@18674 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Replace movq with movp for X64 when the operand size is kPointerSize

R=verwaest@chromium.org

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

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

Currently there are two kinds of "vtables" used in the load/store stub
compilers: kind() and C++'s own vtables. This is a bit confusing, and
this is a step towards simplifying things.

R=verwaest@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@18676 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Prepare push to trunk.  Now working on version 3.24.20.

R=jkummerow@chromium.org
TBR=jkummerow@chromium.org

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

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