Fix for a smi stores optimization on x64 with a test case.

BUG=338425
LOG=N
R=verwaest@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19288 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fix environment of the optimized version of the _SetValueOf intrinsic.

R=jkummerow@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19289 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Mark faster when executing write barriers.

BUG=
R=mstarzinger@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19290 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
More check elimination improvements including partial learning on false branches of CompareMap and better handling of unreachable blocks.

R=verwaest@chromium.org

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

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

R=jkummerow@chromium.org
TBR=jkummerow@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19303 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Disable test-api/PreCompileInvalidPreparseDataError for NaCl.

More information: https://code.google.com/p/v8/issues/detail?id=3150

R=machenbach@chromium.org

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19306 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Merge experimental/a64 to bleeding_edge.

BUG=v8:3113
LOG=Y
R=jochen@chromium.org, rmcilroy@chromium.org, rodolph.perfetta@arm.com

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19311 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
A64: Skip cctests failing in debug mode

TBR=ulan@chromium.org
BUG=none
LOG=n

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19314 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Add ARM contributors to AUTHORS.

BUG=
R=ulan@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19315 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
A64: Remove two TODOs that will not be done.

- For the LDP/STP TODO: The arguments need dereferencing, so using LDP/STP would
  require some additional checks.
- For the constant pools TODO: Unless we need to, there is no benefit from
  trying to generate constant pools more often, as it would likely only pollute
  the I-cache.

R=ulan@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19316 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Move parenthesized_function_ to ParserBase.

This change is trivial (was probably overlooked when ParserBase was created).

R=yangguo@chromium.org
BUG=v8:3126
LOG=N

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19317 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
A64: Skip more known failures

TBR=ulan@chromium.org
BUG=none
LOG=n

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19318 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Refactor scope and function state tracking in (Pre)Parser.

Notes:
- PreParser::Scope was a weird combination of Parser::FunctionState and
  Scope. Split it into two (PreParser::FunctionState and PreParser::Scope). This
  is necessary for unifying the Parser and the PreParser.
- Scopes take care of language mode and tracking "with".
- FunctionStates take care of counting material literal indexes, properties
  etc. and tracking generators.
- PreParser::Scope::InsideWith was a hack to make a FunctionState-like object
  take care of tracking "with". It's now the responsibility fo PreParser::Scope
  and Scope.
- PreParser::ScopeType is unnecessarly, there is already a ScopeType enum in
v8globals.h.
- Renamed scope stack variables so that they're consistent in Parser and PreParser.
- Parser::FunctionState and Parser::BlockState had an unnecessary dependency to
  the Parser; they only need a couple of things from Parser. Broke the
  dependency.

R=ulan@chromium.org
BUG=v8:3126
LOG=N

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19319 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Improved variable-related assembler comments in fullcode.

R=bmeurer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19320 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
A64: Skip tests failing on gc stress bots

BUG=none
TBR=ulan@chromium.org
LOG=n

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19321 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Improve computation of effects for load elimination.

R=ishell@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19322 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Omit redundant smi checks in write barriers.

R=hpayer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19323 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
[a64] Omit redundant smi checks in write barriers.

R=rmcilroy@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19324 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Clean up some A64 specific code in common code that was introduced by A64 merge

 - Remove arch specific check macros
 - Remove duplicate code in code-stubs.h
 - Remove flag check in bootstrap.cc which was introduced for A64 bringup
 - Remove A64 specific test message expectations

R=rodolph.perfetta@arm.com, ulan@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19325 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fix for (One|Two)ByteSeqStringSetChar evaluation order/deopt.

This makes the evaluation order consistent between full codegen
and Hydrogen (so that deopt does not screw up stack).

R=jkummerow@chromium.org
BUG=

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

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