MIPS: Make KeyedLoads from a sloppy arguments array use a handler.

Port r24120 (eed5963)

Original commit message:
Before, a custom stub was installed.

BUG=
R=paul.lind@imgtec.com

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24126 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Add histogram timers for (de-)serialization during compilation.

R=yangguo@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24127 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
X87: Make KeyedLoads from a sloppy arguments array use a handler.

port r24120.

original commit message:
   Make KeyedLoads from a sloppy arguments array use a handler.
   Before, a custom stub was installed

BUG=
R=weiliang.lin@intel.com

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

Patch from Chunyang Dai <chunyang.dai@intel.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24128 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
X87: Further improve deopt reason output

port r24123.  R24123 does not cover all required code change in X87.

original commit message:
   Further improve deopt reason output.
   * Make the detailed deopt reason mandatory on x64, other platforms will
     follow in separate CLs.

   * Extracted and improved jump table entry sharing logic: When --trace-deopt
     is on, we get separate entries for different deopt reasons. This enables
     us to distinguish the several reasons single instructions can have.

   * Don't emit superfluous jump table comments: The bailout ID is still visible,
     and the jump table entry number is not interesting (but easy to determine
     if really needed).

   * Unify the internal name of the jump table member across platforms.

BUG=
R=weiliang.lin@intel.com

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

Patch from Chunyang Dai <chunyang.dai@intel.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24129 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Forcibly inline bit_cast when building with GCC.

R=svenpanne@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24130 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Removed superfluous deopt for ROR on ia32.

We only synthesize a ROR when we have an expression with a toplevel
'|', which returns a signed value by definition, so deopting on
negative values is not needed. ia32 was the only platform where this
was done, all other didn't have the check.

R=ulan@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24133 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Add a PRESUBMIT check that production code does not call test code

This is based on a regular expression matching anything in a namespace
ending in test, or a method containing the words ForTest, ForTesting,
for_test, or for_testing.

It is possible to blacklist entire directories or individual files.

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

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24134 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Extend JSBuiltinReducer to cover Math.max as well.

R=svenpanne@chromium.org
TEST=cctest/test-js-typed-lowering/BuiltinMathMax

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24135 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
[Turbofan] Insert nops for lazy bailout patching, fix translation of literals.

The code for EnsureSpaceForLazyDeopt is taken from lithium-codegen-*.

BUG=
R=bmeurer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24138 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fix method dispatch in Keyed/StoreIC, and JumpIfNotUniqueName usage

R=ishell@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24139 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Refactoring: Remove more legacy from release scripts.

- Remove an unused feature that allowed to check for required
  data before each script step.
- Use a relative path to the version file. In the production
  environment, this will point to the cwd/version_file, while
  in the test environment it is fake_cwd/version_file.

TBR=tandrii@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24140 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Move test for reduction of Math.imul to unittest.

R=bmeurer@chromium.org
TEST=compiler-unittests/JSBuiltinReducerTest.MathImul

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24144 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Remove temporary work-around for PDFium

BUG=none
R=bmeurer@chromium.org, svenpanne@chromium.org
LOG=n

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24145 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Made the detailed reason for deopts mandatory on ia32. Unified and improved things.

The number of different detail strings has been reduced a bit without
any loss of information. Furthermore, DoubleToI is a bit more
informative now. Tiny reason fixes.

R=jarin@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24146 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Move test for reduction of Math.max to unittest.

R=bmeurer@chromium.org
TEST=compiler-unittests/JSBuiltinReducerTest.MathMax

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24147 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fix Makefile regeneration for compiler-unittests.

R=bmeurer@chromium.org

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

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

Forgot a few kNear occurences, only happens with --deopt-every-n-times.
Death to manual jump distance calculation! :-P

TBR=jarin@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24151 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Preserve message when rethrowing exception

A new message was always generated if there is a the top-most verbose
TryCatch, even when rethrowing an exception from a TryCatch that is going
out of scope, and we already have a message.

BUG=v8:3583
LOG=Y
R=yangguo@chromium.org

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

Patch from Jens Widell <jl@opera.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24152 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
[Auto-roll] Bump up version to 3.29.85.0

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24153 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Refactoring: Remove global configs in release scripts.

TBR=tandrii@chromium.org
TEST=script_test.py

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

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