Fix store buffer ensure space heuristics.

This change results in less scan on scavenge memory chunks.

BUG=
R=mstarzinger@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@15037 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Array access fix: g++ darwin 4.2.1 compiler clamped array index to 0 when confronted with negative indices.

BUG=247303
R=jkummerow@chromium.org, ulan@chromium.org

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

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

R=jkummerow@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@15039 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
remove equality kind from compare nil ic

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@15042 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
also remove the constant

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@15044 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
use compare nil ic only for non-strict equality. strict-equality only has one check and cannot deopt. should therefore not be part of the stub.

BUG=
R=rossberg@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@15045 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fix compilation with gdbjit=on.

r14919 forgot three AssertNoAllocation -> DisallowHeapAllocation replacements.

BUG=v8:2719
R=yangguo@chromium.org

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

Patch from Kang-Hao (Kenny) Lu <kennyluck@csail.mit.edu>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@15046 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
MIPS: add a default value for return value

Port r15024 (1a76177)

BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@15047 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
MIPS: Fix LoadIC calling convention.

Port r15027 (3ffb343)

Original commit message:
The comments in ic-arm.cc::LoadIC indicated that the receiver should be
both in a register and on the stack. This isn't true in fact: the code
is careful to spill the receiver if needed.

This CL also fixes up a mistaken use of this convention in VisitYield.

BUG=

Review URL: https://codereview.chromium.org/16131004
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@15048 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
MIPS: Generator object "next" method takes optional send value.

Port r15028 (258a047)

Original commit message:
Update the generators implementation to make "next" also do the job of
what was previously called "send" by taking an optional argument.
Remove send, and do a bunch of renamings.

BUG=v8:2355, v8:2715

Review URL: https://codereview.chromium.org/16735005
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@15049 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
MIPS: Use compare nil ic only for non-strict equality.

Port r15045 (cce366f)

Original commit message:
Strict-equality only has one check and cannot deopt. Should therefore not be part of the stub.

BUG=

Review URL: https://codereview.chromium.org/16690008
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@15050 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
MIPS: Fix abs_d instruction in the simulator.

The abs_d instruction was implemented wrongly in the simulator,
it doesn't reverse the sign of the -0 number.

This commit fixes the abs_d instruction implementation.

TEST=msjunit/math-abs

BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@15053 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
make empty string returnable by ReturnValue

R=svenpanne@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@15054 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Make sure CallIC is in monomorphic state when starting profiling in NativeAccessorNameInProfile2

Changed cctest/test-cpu-profiler/NativeAccessorNameInProfile2 to make a few warm-up cycles before starting profiler so that accessor invocations performed via monomorphic inline caches and slow paths traces do not distort the profile.

Drive-by: removed logging code that was used to diagnose NativeAccessorNameInProfile2 failures on Windows.

BUG=None
R=jkummerow@chromium.org, loislo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@15055 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Change ArrayBuffer API and implementation to use embedder-provided allocator.

R=svenpanne@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@15056 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Increase sanity of integer division handling on ARM

- In the INT32 BinaryOpStub, fix type feedback collection for DIV,
  bringing it in line with other platforms.
- In Lithium codegen, emit proper inlined code, don't call the stub.
- Drive-by fix: assert appropriate CpuFeaturesScope for SDIV.

R=ulan@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@15057 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
interceptor return values escape their scope

R=svenpanne@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@15058 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fix crasher when checking for "of", but next token has no literal buffer

Also fix a typo in an assertion in scanner.h.

R=mstarzinger@chromium.org
BUG=248025
TEST=mjsunit/regress/regress-crbug-248025.js

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@15059 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Skip some conditional deopts for Div/Mul when all uses are truncating.

- set "can be minus zero" flag properly so minus-zero checks are skipped
- skip "integer result?" check in division code when uses are truncating
- drive-by cleanup: consolidated computation of kCanOverflow flag for Add/Sub into range inference phase

BUG=v8:2132
R=svenpanne@chromium.org

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

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