From 5e7ebc7af6d08d4e31cf66f4ae22d29c688ef814 Mon Sep 17 00:00:00 2001 From: Ben Noordhuis Date: Sat, 17 Jan 2015 23:02:56 +0100 Subject: [PATCH 1/3] deps: upgrade v8 to 4.1.0.7 This commit upgrades V8 from 3.31.74.1 to 4.1.0.7. Despite the major version bump, there are no API or ABI changes, it's a bug fix release only. PR-URL: https://github.com/iojs/io.js/pull/490 Reviewed-By: Colin Ihrig Reviewed-By: Fedor Indutny Reviewed-By: Kenan Sulayman Reviewed-By: Rod Vagg --- deps/v8/ChangeLog | 31 ++ deps/v8/DEPS | 2 +- deps/v8/build/features.gypi | 2 +- deps/v8/src/api.cc | 1 + deps/v8/src/base/platform/platform-freebsd.cc | 2 +- deps/v8/src/base/platform/platform-posix.cc | 2 +- deps/v8/src/compiler/control-reducer.cc | 24 +- deps/v8/src/compiler/js-typed-lowering.cc | 192 +++------- deps/v8/src/compiler/js-typed-lowering.h | 3 +- deps/v8/src/compiler/opcodes.h | 1 + deps/v8/src/compiler/pipeline.cc | 2 +- deps/v8/src/compiler/simplified-lowering.cc | 41 ++- deps/v8/src/compiler/simplified-lowering.h | 6 +- .../compiler/simplified-operator-reducer.cc | 40 ++- .../compiler/simplified-operator-reducer.h | 4 + deps/v8/src/compiler/simplified-operator.cc | 1 + deps/v8/src/compiler/simplified-operator.h | 2 + deps/v8/src/compiler/typer.cc | 49 +-- deps/v8/src/compiler/verifier.cc | 4 + deps/v8/src/d8.cc | 2 +- deps/v8/src/debug.cc | 2 +- deps/v8/src/deoptimizer.cc | 15 +- deps/v8/src/flag-definitions.h | 11 +- deps/v8/src/heap/heap.cc | 2 +- deps/v8/src/heap/heap.h | 2 +- deps/v8/src/heap/incremental-marking.cc | 2 +- deps/v8/src/heap/spaces.cc | 3 +- deps/v8/src/ia32/assembler-ia32.cc | 33 +- deps/v8/src/parser.h | 3 +- deps/v8/src/preparser.h | 2 +- deps/v8/src/runtime.js | 2 +- deps/v8/src/unique.h | 2 +- deps/v8/src/version.cc | 8 +- deps/v8/src/x64/assembler-x64.cc | 33 +- .../cctest/compiler/test-js-typed-lowering.cc | 43 +-- .../compiler/test-simplified-lowering.cc | 58 +++- deps/v8/test/cctest/test-alloc.cc | 3 +- deps/v8/test/cctest/test-api.cc | 42 ++- .../test/mjsunit/compiler/regress-445876.js | 12 + .../test/mjsunit/compiler/regress-446156.js | 11 + .../test/mjsunit/compiler/regress-446778.js | 17 + .../mjsunit/compiler/regress-ntl-effect.js | 16 + .../v8/test/mjsunit/regress/regress-447756.js | 48 +++ .../compiler/change-lowering-unittest.cc | 4 +- .../compiler/js-builtin-reducer-unittest.cc | 9 +- .../compiler/js-typed-lowering-unittest.cc | 327 +++++++++++++----- .../machine-operator-reducer-unittest.cc | 16 +- .../unittests/compiler/node-test-utils.cc | 1 + .../test/unittests/compiler/node-test-utils.h | 1 + .../simplified-operator-reducer-unittest.cc | 67 +++- .../compiler/simplified-operator-unittest.cc | 1 + .../Object-getOwnPropertyNames-expected.txt | 2 +- .../fast/js/Object-getOwnPropertyNames.js | 2 +- deps/v8/testing/gmock-support.h | 38 +- .../tools/push-to-trunk/generate_version.py | 78 +++++ deps/v8/tools/run_perf.py | 19 +- deps/v8/tools/whitespace.txt | 2 +- 57 files changed, 962 insertions(+), 386 deletions(-) create mode 100644 deps/v8/test/mjsunit/compiler/regress-445876.js create mode 100644 deps/v8/test/mjsunit/compiler/regress-446156.js create mode 100644 deps/v8/test/mjsunit/compiler/regress-446778.js create mode 100644 deps/v8/test/mjsunit/compiler/regress-ntl-effect.js create mode 100644 deps/v8/test/mjsunit/regress/regress-447756.js create mode 100755 deps/v8/tools/push-to-trunk/generate_version.py diff --git a/deps/v8/ChangeLog b/deps/v8/ChangeLog index d016b794ffa147..d42a2f1564de79 100644 --- a/deps/v8/ChangeLog +++ b/deps/v8/ChangeLog @@ -1,3 +1,34 @@ +2015-01-07: Version 3.32.3 + + Performance and stability improvements on all platforms. + + +2015-01-07: Version 3.32.2 + + Performance and stability improvements on all platforms. + + +2015-01-07: Version 3.32.1 + + [turbofan] Don't crash when typing load from a Uint8ClampedArray + (Chromium issue 446156). + + [turbofan] Truncation of Bit/Word8/16 to Word32 is a no-op (Chromium + issue 445859). + + [x64] Rearrange code for OOB integer loads (Chromium issue 445858). + + Fix %NeverOptimizeFunction() intrinsic (Chromium issue 445732). + + [turbofan] Fix invalid bounds check with overflowing offset (Chromium + issue 445267). + + [turbofan] Raise max virtual registers and call parameter limit (issue + 3786). + + Performance and stability improvements on all platforms. + + 2014-12-23: Version 3.31.74 [turbofan] Turn DCHECK for fixed slot index into a CHECK (Chromium issue diff --git a/deps/v8/DEPS b/deps/v8/DEPS index e85604b0b79543..a81c7ecc38837f 100644 --- a/deps/v8/DEPS +++ b/deps/v8/DEPS @@ -18,7 +18,7 @@ deps = { "v8/testing/gmock": Var("git_url") + "/external/googlemock.git" + "@" + "29763965ab52f24565299976b936d1265cb6a271", # from svn revision 501 "v8/tools/clang": - Var("git_url") + "/chromium/src/tools/clang.git" + "@" + "90fb65e7a9a5c9d6d9613dfb0e78921c52ca9cfc", + Var("git_url") + "/chromium/src/tools/clang.git" + "@" + "c945be21f6485fa177b43814f910b76cce921653", } deps_os = { diff --git a/deps/v8/build/features.gypi b/deps/v8/build/features.gypi index 25041ce42fde0b..465eba91480d72 100644 --- a/deps/v8/build/features.gypi +++ b/deps/v8/build/features.gypi @@ -117,7 +117,7 @@ 'Release': { 'variables': { 'v8_enable_extra_checks%': 0, - 'v8_enable_handle_zapping%': 1, + 'v8_enable_handle_zapping%': 0, }, 'conditions': [ ['v8_enable_extra_checks==1', { diff --git a/deps/v8/src/api.cc b/deps/v8/src/api.cc index 61e565f97b7a5d..88d3c889b96cab 100644 --- a/deps/v8/src/api.cc +++ b/deps/v8/src/api.cc @@ -1780,6 +1780,7 @@ Local