Use the correct version of movq for ExternalReference in X64

R=danno@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@17351 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Introduce xchgl, orl, roll, subl, testl and xorl into X64 assembler

R=danno@chromium.org

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

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

R=svenpanne@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@17353 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fix ARM build on mac.

Remove a couple unused vars left behind after r16676. Clang on mac
is pickier than gcc on linux, specifically gcc does not complain about
unused class member variables.

BUG=
R=danno@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@17356 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Use PopReturnAddressTo and PushReturnAddressFrom in Generate_MarkCodeAsExecutedOnce builtin function for X64

R=danno@chromium.org

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

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

There's no reason why the setObjectGroupIde / setReferenceFromGroups funcs should've been called twice.

BUG=
R=svenpanne@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@17358 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
MIPS: Increase code space first page size due to r17334.

BUG=
R=danno@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@17359 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Revert "Make Array.prototype.pop throw if the last element is not configurable."

This reverts commit r17346.

R=bmeurer@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@17360 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Removed long-running obselete test case.

The test was the 2nd longest-running test case in debug mode, and the
stuff it tests has already been moved long ago to some other place,
which is in turn heavily tested by far simpler and faster things
(%TruncateString etc.).

R=bmeurer@chromium.org

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

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

R=mstarzinger@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@17362 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Record allocation stack traces

This is initial implementation of allocation profiler.

Whenever new object allocation is reported to the HeapProfiler and allocation tracking is on we will capture current stack trace, add it to the collection of the allocation traces (a tree) and attribute the allocated size to the top JS function on the stack.

Format of serialized heap snapshot is extended to include information about recorded allocation stack traces.

This patch is r17301 plus a fix for the test crash in debug mode. The test crashed because we were traversing stack trace when just allocated object wasn't completely configured, in particular the map pointer was incorrect. Invalid Map pointer broke heap iteration required to find Code object for a given pc during stack traversal. The solution is to insert free space filler in the newly allocated block just before collecting stack trace.

BUG=chromium:277984,v8:2949
R=hpayer@chromium.org, loislo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@17365 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Add window.performance.now() to the d8 shell.

TEST=mjsunit/d8-performance-now
R=hpayer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@17366 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Revert "Add window.performance.now() to the d8 shell."

This reverts commit r17366 for breaking the mozilla tests.

TBR=hpayer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@17367 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Add performance.now() to the d8 shell.

TEST=mjsunit/d8-performance-now
R=hpayer@chromium.org

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

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@17368 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Add code age subtype tracking to --track-gc-object-stats

Adds counters which track the age of code in the heap during a gc if
--track-gc-object-stats is enabled.

 - Splits RecordObjectStats into RecordObjectStats, RecordCodeSubTypeStats and
   RecordFixedArraySubTypeStats.
 - Renames kNoAge to kNoAgeCodeAge to follow other code age enums and enable
   the name to be used in Macro based initialization of the counters.

BUG=None
R=hpayer@chromium.org

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

Patch from Ross McIlroy <rmcilroy@chromium.org>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@17369 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fix shared library build after r17368.

TBR=hpayer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@17372 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Get rid of unused STRING_ADD_ERECT_FRAME flag.

R=svenpanne@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@17373 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Revert "Fix shared library build after r17368." and "Add performance.now() to the d8 shell.".

This reverts commit r17372 and r17368 for breaking the shared
library build.

TBR=hpayer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@17374 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Add performance.now() to the d8 shell.

TEST=mjsunit/d8-performance-now
R=hpayer@chromium.org

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

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

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@17375 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Handle constants in new space on arm by making macro-assembler smarter.

BUG=
R=jkummerow@chromium.org

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

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