Simplify and fix code aging.

Making the code size predictable is hard, and to make things even more
complicated, the start of a function can contain various stuff like calls to a
profiling hook, receiver adjustment or dynamic frame alignment. Instead of
tackling all these problems separately, we now simply record the offset where
patching should happen later in the Code object itself.

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@13081 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
CopyPackedSmiToDoubleElements should fill the FixedDoubleArray with holes

BUG=v8:2433

Review URL: https://chromiumcodereview.appspot.com/11280223
Patch from Adam Klein <adamk@chromium.org>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@13082 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
MIPS: Ensure double arrays are filled with holes when extended from variations of empty arrays.

Port r13056 (9b2c1725)

BUG=
TEST=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@13083 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
MIPS: Ensure we do not clobber the register holding the elements backing store.

Port r13061 (83bb6fcc)

BUG=
TEST=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@13084 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
MIPS: Only fill in holes if storing the number to the double array has succeeded.

Port r13067 (c822cffa)

BUG=
TEST=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@13085 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
MIPS: ARM: Fast path for integer inputs to EmitVFPTruncate

Port r12676 (7d5e7e81)

BUG=
TEST=

Review URL: https://codereview.chromium.org/11308134
Patch from Akos Palfi <palfia@homejinni.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@13086 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
MIPS: DoNumberTagD performance improvement

Port r12711 (a8d45ac2)

Original commit message:
Allocate heap entry untagged and tag at end to avoid having to subtract off
the tag offset before storing the value.

BUG=
TEST=

Review URL: https://codereview.chromium.org/11280106
Patch from Akos Palfi <palfia@homejinni.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@13087 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
MIPS: Fix register confusion in non-VFP3 BinaryOpStubs on ARM

Port r12980 (13380d3b)

BUG=
TEST=

Review URL: https://codereview.chromium.org/11308158
Patch from Akos Palfi <palfia@homejinni.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@13088 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
MIPS: Faster implementation of Math.exp()

Port r13054 (636985d7)

BUG=
TEST=

Review URL: https://codereview.chromium.org/11415192
Patch from Akos Palfi <palfia@homejinni.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@13089 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
MIPS: Also time external callbacks from generated code.

Port r13078 (73f25483)

BUG=
TEST=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@13093 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Activate code aging by default.

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@13094 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fix typo in FunctionTemplate::ReadOnlyPrototype.

Contributed by Peter Varga <pvarga@inf.u-szeged.hu>

BUG=
TEST=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@13095 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Remove unused private member variables found by clang -Wunused-private-field

Review URL: https://codereview.chromium.org/11414207
Patch from Adam Klein <adamk@chromium.org>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@13096 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Use generic array functions to setup the boilerplate to avoid logic duplication.

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@13097 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Pass FixedArrayBase in elements.cc.

This avoids casting problems in case of empty_fixed_array as
FixedDoubleArray with size 0. This avoids prematurely shortcutting in
case of 0 all over the place, which in turn leads to errors.

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@13098 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Revert "Allow incremental marking when expose_gc is turned on."

This reverts r13072 from bleeding edge.

R=hpayer@chromium.org

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

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

R=mstarzinger@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@13100 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Turn off optimization for Mac Debug builds

Review URL: https://codereview.chromium.org/11414237
Patch from Adam Klein <adamk@chromium.org>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@13102 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Revert "Perform CPU sampling by CPU sampling thread only iff processing thread is not running."

This reverts r12985.

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@13104 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Enable stub generation using Hydrogen/Lithium.

This initial implementation generates only KeyedLoadICs using the new Hydrogen stub infrastructure.

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

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