Fix return value of push() and unshift() on Array.prototype.

R=ulan@chromium.org
TEST=mjsunit/regress/regress-builtinbust-3

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@20602 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Make new space iterable when transitioning double array to objects

R=hpayer@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@20603 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Allow race-full access of map instance size when sweeping concurrently.

BUG=
R=jarin@chromium.org, mstarzinger@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@20604 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Use abstract configurations to switch between opt debug settings

The problem is that conditions are evaluated before configuration inheritance is resolved, so we can't just define a configuration like this:

'Optdebug': {
  'inherits_from': ['Debug'],
  'variables': {
    'v8_optimized_debug': 2,
  }
}

Instead, we have to put the different settings depending on the optimization level into separate configurations, and use conditions inside the concrete configurations to inherit from the correct base class.

Common settings go in the base configuration DebugBaseCommon, and v8_optimized_debug dependent settings go into DebugBase{0,1,2}

The new Debug configuration inherits from DebugBaseCommon and DebugBase<(v8_optimized_debug), while the new configuration Optdebug inherits from DebugBaseCommon and DebugBase2.

BUG=v8:3252
R=machenbach@chromium.org, jkummerow@chromium.org
LOG=n

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@20605 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Further ElementsAccessor handlification (GetKeyForIndex(), GetCapacity(), GetType() and GetAttributes()).

R=verwaest@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@20606 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Revert "Further ElementsAccessor handlification (GetKeyForIndex(), GetCapacity(), GetType() and GetAttributes())."

This reverts commit r20606 for breaking tests on windows.

TBR=dcarney@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@20607 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fix build with gcc 4.8 on Linux.

This fixes a build failure on Linux with gcc 4.8, after r20581.

BUG=
R=ishell@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@20608 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fix various bugs in the type systems, and improve test coverage.

R=rossberg@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@20609 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Use no barrier size accessor in FreeListCategory::SumFreeList.

BUG=
R=jarin@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@20610 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Remove calls to non-handlified version of GetProperty(name).

R=ishell@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@20611 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Turn on concurrent sweeping.

BUG=
R=jarin@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@20612 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
ARM64: Use pair memory access in deoptimizer entry

BUG=
R=ulan@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@20613 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fix argument expectation Runtime_StringParseInt.

R=svenpanne@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@20614 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Allow the embedder to pass the virtual memory limit to v8

The getrlimit() call might be sandboxed, so it's not safe to use it.

BUG=none
R=mstarzinger@chromium.org
LOG=y

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@20615 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Reland of r20606: Further ElementsAccessor handlification (GetKeyForIndex(), GetCapacity(), GetType() and GetAttributes()).
It was not related to test failures.

R=yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@20616 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Add the ability to disable tests in nosnap mode.

BUG=v8:3216
LOG=n
R=dcarney@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@20617 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Skip tests in nosnap mode.

Depends on https://codereview.chromium.org/230743002/.

BUG=v8:3216
LOG=n
R=dcarney@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@20618 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Remove uses of non-handlified GetProperty.

R=ishell@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@20619 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Avoid hydrogen compare-objects-equal assertions in dead code

ClusterFuzz test is triggering assertions for dead code. This fix issues
HDeoptimize instruction when it finds out that the compare instruction
is dead (because of previous checks).

R=yangguo@chromium.org
BUG=359491
LOG=N

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@20620 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
ElementsAccessor::SetLength() maybehandlified.

R=yangguo@chromium.org

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

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