Improve tracing of hydrogen stub compilation.

R=svenpanne@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@13630 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Added new GetHeapStatistics API entry and deprecated old one.

Simplified the HeapStatistics class a bit, following Uncle Bob's advice that
adding accessors to DTOs only satisfies some design fundamentalists, but serves
no other purpose. :-)

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@13631 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Add additional flags to control array abuse tracing

R=jkummerow@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@13632 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fix bugs in DeoptimizeIf when lazy deopt is requested.

This also implements --trap-on-deopt on x64 and simplifies the
implementation of this flag on all architectures.

R=danno@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@13633 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Work around nifty VS10 compiler bug

VS10 generates bogus code for specific arguments to the Number::New function when invoked in specific places of an ExpectRecords array definition, passing a garbage value to the function (as printf debugging reveals). Changing the argument from 1 to 7 apparently circumvents the problem.

R=jkummerow@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@13637 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Don't use TLS for space iterators.

This is not only inherently slow, but it also forces the caller to enter an
Isolate before. Both is bad, so we have to do some heap plumbing.

BUG=v8:2531

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@13638 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Print deoptimization index when printing lithium environment.

Output of --trace-deopt --code-comments does not always allow to reliably match deoptimization to the lithium instruction (and it is actually never accurate on x64 due to one level of indirection). This change allows to reliably figure out which instruction deoptimized just by looking up bailout id in the hydrogen.cfg.

R=danno@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@13639 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Get rid of x87 in ia32 LCodeGen::DoBranch

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@13640 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fix code flusher disabling while marking incrementally.

This fixes a corner case where the code flusher is disabled while the
incremental marker is still running. This can happen when the debugger
is loaded and a scavenge is triggered. Make sure that all flushing
decisions are revisited after the candidates lists are evicted.

R=hpayer@chromium.org
BUG=chromium:173458,chromium:168582
TEST=cctest/test-heap/Regress173458

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@13641 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Don't use local variable after its scoped has been left.

TBR=yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@13642 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
MIPS: Fix bugs in DeoptimizeIf when lazy deopt is requested.

Port r13633 (9e314349)

BUG=
TEST=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@13643 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Calculate proper receiver map for monomorphic transitioning ICs.
This fixes a regression caused by
https://chromiumcodereview.appspot.com/11953025/

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@13644 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Separated smi check from HBoundsCheck.

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@13645 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fixed a memory leak in v8 and another one in d8.

Cleaned up a few tests on the way. This CL brings us down to 5 leaks for d8.

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@13646 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Remove instructions properly (stack check elimination was leaving "dangling uses" around).

BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@13647 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Don't try to unlink instructions twice during GVN

BUG=chrome:175141

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@13648 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Split AccessorInfo into DeclaredAccessorInfo and ExecutableAccessorInfo

R=svenpanne@chromium.org
BUG=

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

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

BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@13650 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fix verify heap problem when parallel sweeping is enabled.

BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@13651 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Reduces memory consumption for parallel sweeping.

BUG=

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

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