From abb7aa5c8c1f014a31ca1bc0747f283027ffbd5d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C3=ABl=20Zasso?= Date: Tue, 9 Jan 2018 13:26:12 +0100 Subject: [PATCH 01/54] deps: cherry-pick c3458a8 from upstream V8 Original commit message: [parser] Add new FunctionNameInferrer state before parsing param Create new state before parsing FormalParameter because we don't want to use any of the parameters as an inferred function name. Previously the stacktrace was: test.js:3: Error: boom throw new Error('boom'); ^ Error: boom at param (test.js:3:11) at test.js:4:5 at test.js:6:3 The stacktrace with this patch: test.js:3: Error: boom throw new Error('boom'); ^ Error: boom at test.js:3:11 at test.js:4:5 at test.js:6:3 Bug: v8:6822, v8:6513 Change-Id: Ifbadc660fc4e85248af405acd67c025f11662bd4 Reviewed-on: https://chromium-review.googlesource.com/742657 Reviewed-by: Adam Klein Commit-Queue: Sathya Gunasekaran Cr-Commit-Position: refs/heads/master@{#49042} PR-URL: https://github.com/nodejs/node/pull/16413 Refs: https://github.com/v8/v8/commit/c3458a86722d735ef4c4e31f9bcaa966e5093e47 Closes: https://github.com/nodejs/node/issues/15386 --- deps/v8/include/v8-version.h | 2 +- deps/v8/src/parsing/parser-base.h | 1 + deps/v8/test/message/fail/func-name-inferrer-arg-1.js | 10 ++++++++++ deps/v8/test/message/fail/func-name-inferrer-arg-1.out | 8 ++++++++ deps/v8/test/message/fail/func-name-inferrer-arg.js | 10 ++++++++++ deps/v8/test/message/fail/func-name-inferrer-arg.out | 7 +++++++ 6 files changed, 37 insertions(+), 1 deletion(-) create mode 100644 deps/v8/test/message/fail/func-name-inferrer-arg-1.js create mode 100644 deps/v8/test/message/fail/func-name-inferrer-arg-1.out create mode 100644 deps/v8/test/message/fail/func-name-inferrer-arg.js create mode 100644 deps/v8/test/message/fail/func-name-inferrer-arg.out diff --git a/deps/v8/include/v8-version.h b/deps/v8/include/v8-version.h index 2cea4b875d452c..3d24701f5ef608 100644 --- a/deps/v8/include/v8-version.h +++ b/deps/v8/include/v8-version.h @@ -11,7 +11,7 @@ #define V8_MAJOR_VERSION 6 #define V8_MINOR_VERSION 1 #define V8_BUILD_NUMBER 534 -#define V8_PATCH_LEVEL 50 +#define V8_PATCH_LEVEL 51 // Use 1 for candidates and 0 otherwise. // (Boolean macro values are not supported by all preprocessors.) diff --git a/deps/v8/src/parsing/parser-base.h b/deps/v8/src/parsing/parser-base.h index 104e36ea9347ce..81e864c146da4d 100644 --- a/deps/v8/src/parsing/parser-base.h +++ b/deps/v8/src/parsing/parser-base.h @@ -3573,6 +3573,7 @@ void ParserBase::ParseFormalParameter(FormalParametersT* parameters, // BindingElement[?Yield, ?GeneratorParameter] bool is_rest = parameters->has_rest; + FuncNameInferrer::State fni_state(fni_); ExpressionT pattern = ParsePrimaryExpression(CHECK_OK_CUSTOM(Void)); ValidateBindingPattern(CHECK_OK_CUSTOM(Void)); diff --git a/deps/v8/test/message/fail/func-name-inferrer-arg-1.js b/deps/v8/test/message/fail/func-name-inferrer-arg-1.js new file mode 100644 index 00000000000000..6c28367d921433 --- /dev/null +++ b/deps/v8/test/message/fail/func-name-inferrer-arg-1.js @@ -0,0 +1,10 @@ +// Copyright 2017 the V8 project authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +(function (param = function() { throw new Error('boom') }) { + (() => { + param(); + })(); + +})(); diff --git a/deps/v8/test/message/fail/func-name-inferrer-arg-1.out b/deps/v8/test/message/fail/func-name-inferrer-arg-1.out new file mode 100644 index 00000000000000..3c19121a0a6efa --- /dev/null +++ b/deps/v8/test/message/fail/func-name-inferrer-arg-1.out @@ -0,0 +1,8 @@ +*%(basename)s:5: Error: boom +(function (param = function() { throw new Error('boom') }) { + ^ +Error: boom + at param (*%(basename)s:5:39) + at *%(basename)s:7:5 + at *%(basename)s:8:5 + at *%(basename)s:10:3 \ No newline at end of file diff --git a/deps/v8/test/message/fail/func-name-inferrer-arg.js b/deps/v8/test/message/fail/func-name-inferrer-arg.js new file mode 100644 index 00000000000000..3fcd044b9b1831 --- /dev/null +++ b/deps/v8/test/message/fail/func-name-inferrer-arg.js @@ -0,0 +1,10 @@ +// Copyright 2017 the V8 project authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +(function (param) { + (() => { + throw new Error('boom'); + })(); + +})(); diff --git a/deps/v8/test/message/fail/func-name-inferrer-arg.out b/deps/v8/test/message/fail/func-name-inferrer-arg.out new file mode 100644 index 00000000000000..06e001d1d5e641 --- /dev/null +++ b/deps/v8/test/message/fail/func-name-inferrer-arg.out @@ -0,0 +1,7 @@ +*%(basename)s:7: Error: boom + throw new Error('boom'); + ^ +Error: boom + at *%(basename)s:7:11 + at *%(basename)s:8:5 + at *%(basename)s:10:3 \ No newline at end of file From 705a86758423b05ba5ec011f9a4efa44054ea4ad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C3=ABl=20Zasso?= Date: Mon, 15 Jan 2018 10:17:34 +0100 Subject: [PATCH 02/54] deps: update V8 to 6.2.414.46 PR-URL: https://github.com/nodejs/node/pull/16413 --- deps/v8/.editorconfig | 9 + deps/v8/.gitignore | 1 + deps/v8/AUTHORS | 7 +- deps/v8/BUILD.gn | 159 +- deps/v8/ChangeLog | 2205 +++++++++++++ deps/v8/DEPS | 16 +- deps/v8/Makefile | 30 +- deps/v8/OWNERS | 2 + deps/v8/benchmarks/deltablue.js | 2 +- deps/v8/gni/isolate.gni | 2 - deps/v8/gni/v8.gni | 16 +- deps/v8/gypfiles/features.gypi | 10 + deps/v8/gypfiles/isolate.gypi | 1 - deps/v8/gypfiles/landmine_utils.py | 2 +- deps/v8/gypfiles/run-tests-legacy.py | 50 + deps/v8/gypfiles/standalone.gypi | 2 +- deps/v8/gypfiles/toolchain.gypi | 1 + deps/v8/include/v8-inspector.h | 2 - deps/v8/include/v8-platform.h | 95 +- deps/v8/include/v8-profiler.h | 7 +- deps/v8/include/v8-version.h | 6 +- deps/v8/include/v8.h | 274 +- deps/v8/infra/mb/mb_config.pyl | 45 +- deps/v8/samples/hello-world.cc | 2 +- deps/v8/samples/process.cc | 27 +- deps/v8/samples/shell.cc | 19 +- deps/v8/src/accessors.cc | 100 +- deps/v8/src/address-map.h | 25 +- deps/v8/src/allocation.cc | 72 +- deps/v8/src/allocation.h | 40 +- deps/v8/src/api-arguments-inl.h | 5 + deps/v8/src/api-natives.cc | 4 + deps/v8/src/api.cc | 390 +-- deps/v8/src/arm/assembler-arm-inl.h | 99 - deps/v8/src/arm/assembler-arm.cc | 31 +- deps/v8/src/arm/assembler-arm.h | 74 +- deps/v8/src/arm/code-stubs-arm.cc | 1163 +------ deps/v8/src/arm/code-stubs-arm.h | 5 - deps/v8/src/arm/codegen-arm.cc | 79 - deps/v8/src/arm/deoptimizer-arm.cc | 75 +- deps/v8/src/arm/disasm-arm.cc | 6 +- .../{frames-arm.cc => frame-constants-arm.cc} | 10 +- deps/v8/src/arm/frame-constants-arm.h | 48 + deps/v8/src/arm/frames-arm.h | 117 - deps/v8/src/arm/interface-descriptors-arm.cc | 94 +- deps/v8/src/arm/macro-assembler-arm.cc | 796 +---- deps/v8/src/arm/macro-assembler-arm.h | 328 +- deps/v8/src/arm/simulator-arm.cc | 7 +- deps/v8/src/arm/simulator-arm.h | 2 +- deps/v8/src/arm64/assembler-arm64-inl.h | 98 +- deps/v8/src/arm64/assembler-arm64.cc | 41 +- deps/v8/src/arm64/assembler-arm64.h | 49 +- deps/v8/src/arm64/code-stubs-arm64.cc | 1214 +------ deps/v8/src/arm64/code-stubs-arm64.h | 31 - deps/v8/src/arm64/codegen-arm64.cc | 71 - deps/v8/src/arm64/constants-arm64.h | 2 +- deps/v8/src/arm64/deoptimizer-arm64.cc | 78 +- deps/v8/src/arm64/disasm-arm64.cc | 57 +- ...ames-arm64.cc => frame-constants-arm64.cc} | 11 +- ...frames-arm64.h => frame-constants-arm64.h} | 26 +- .../src/arm64/interface-descriptors-arm64.cc | 101 +- deps/v8/src/arm64/macro-assembler-arm64-inl.h | 27 - deps/v8/src/arm64/macro-assembler-arm64.cc | 622 +--- deps/v8/src/arm64/macro-assembler-arm64.h | 161 +- deps/v8/src/asmjs/OWNERS | 1 + deps/v8/src/asmjs/asm-js.cc | 346 +- deps/v8/src/asmjs/asm-js.h | 7 +- deps/v8/src/asmjs/asm-parser.cc | 72 +- deps/v8/src/asmjs/asm-parser.h | 12 +- deps/v8/src/asmjs/asm-scanner.cc | 13 +- deps/v8/src/asmjs/asm-scanner.h | 8 +- deps/v8/src/asmjs/asm-types.cc | 45 - deps/v8/src/asmjs/asm-types.h | 108 +- deps/v8/src/assembler.cc | 254 +- deps/v8/src/assembler.h | 174 +- deps/v8/src/assert-scope.cc | 3 +- deps/v8/src/ast/ast-expression-rewriter.cc | 4 + deps/v8/src/ast/ast-numbering.cc | 150 +- deps/v8/src/ast/ast-source-ranges.h | 33 +- deps/v8/src/ast/ast-traversal-visitor.h | 6 + deps/v8/src/ast/ast.cc | 74 +- deps/v8/src/ast/ast.h | 356 ++- deps/v8/src/ast/modules.cc | 2 +- deps/v8/src/ast/prettyprinter.cc | 65 +- deps/v8/src/ast/prettyprinter.h | 15 +- deps/v8/src/ast/scopes.cc | 218 +- deps/v8/src/ast/scopes.h | 40 +- deps/v8/src/background-parsing-task.cc | 24 +- deps/v8/src/bailout-reason.h | 105 - deps/v8/src/base.isolate | 8 - deps/v8/src/base/DEPS | 1 - deps/v8/src/base/atomic-utils.h | 265 +- deps/v8/src/base/atomicops.h | 21 +- .../src/base/atomicops_internals_portable.h | 11 +- deps/v8/src/base/atomicops_internals_std.h | 184 ++ .../src/base/atomicops_internals_x86_msvc.h | 153 - deps/v8/src/base/bits.h | 2 +- deps/v8/src/base/cpu.cc | 4 +- deps/v8/src/base/debug/stack_trace_fuchsia.cc | 5 +- deps/v8/src/base/functional.h | 3 +- deps/v8/src/base/ieee754.cc | 2 +- deps/v8/src/base/lazy-instance.h | 8 +- deps/v8/src/base/logging.h | 70 +- deps/v8/src/base/macros.h | 59 +- deps/v8/src/base/platform/platform-aix.cc | 1 + deps/v8/src/base/platform/platform-cygwin.cc | 1 + deps/v8/src/base/platform/platform-freebsd.cc | 1 + deps/v8/src/base/platform/platform-fuchsia.cc | 126 +- deps/v8/src/base/platform/platform-linux.cc | 1 + deps/v8/src/base/platform/platform-macos.cc | 1 + deps/v8/src/base/platform/platform-openbsd.cc | 1 + .../src/base/platform/platform-posix-time.h | 5 + deps/v8/src/base/platform/platform-posix.cc | 5 +- deps/v8/src/base/platform/platform-qnx.cc | 1 + deps/v8/src/base/platform/platform-solaris.cc | 1 + deps/v8/src/base/platform/platform-win32.cc | 1 + deps/v8/src/base/platform/platform.h | 7 +- deps/v8/src/base/template-utils.h | 28 + deps/v8/src/bootstrapper.cc | 194 +- deps/v8/src/{float.h => boxed-float.h} | 13 +- deps/v8/src/builtins/arm/builtins-arm.cc | 478 +-- deps/v8/src/builtins/arm64/builtins-arm64.cc | 500 ++- .../v8/src/builtins/builtins-arguments-gen.cc | 19 +- deps/v8/src/builtins/builtins-arguments-gen.h | 5 + deps/v8/src/builtins/builtins-array-gen.cc | 130 +- deps/v8/src/builtins/builtins-array.cc | 61 +- deps/v8/src/builtins/builtins-async-gen.cc | 19 +- deps/v8/src/builtins/builtins-async-gen.h | 24 +- .../builtins/builtins-async-generator-gen.cc | 249 +- deps/v8/src/builtins/builtins-call-gen.cc | 5 +- deps/v8/src/builtins/builtins-call.cc | 12 +- .../src/builtins/builtins-collections-gen.cc | 552 +++- deps/v8/src/builtins/builtins-console-gen.cc | 1 + deps/v8/src/builtins/builtins-console.cc | 4 +- .../src/builtins/builtins-constructor-gen.cc | 132 +- .../src/builtins/builtins-constructor-gen.h | 4 +- .../src/builtins/builtins-conversion-gen.cc | 66 +- .../v8/src/builtins/builtins-conversion-gen.h | 32 - deps/v8/src/builtins/builtins-debug-gen.cc | 10 - deps/v8/src/builtins/builtins-definitions.h | 153 +- deps/v8/src/builtins/builtins-descriptors.h | 2 +- deps/v8/src/builtins/builtins-forin-gen.cc | 12 +- deps/v8/src/builtins/builtins-forin-gen.h | 6 +- deps/v8/src/builtins/builtins-function-gen.cc | 6 +- deps/v8/src/builtins/builtins-function.cc | 8 +- deps/v8/src/builtins/builtins-internal-gen.cc | 213 +- deps/v8/src/builtins/builtins-interpreter.cc | 17 +- deps/v8/src/builtins/builtins-intl-gen.cc | 2 +- deps/v8/src/builtins/builtins-iterator-gen.h | 5 + deps/v8/src/builtins/builtins-math-gen.cc | 23 +- deps/v8/src/builtins/builtins-math.cc | 7 +- deps/v8/src/builtins/builtins-number.cc | 8 +- deps/v8/src/builtins/builtins-object-gen.cc | 361 ++- deps/v8/src/builtins/builtins-promise-gen.cc | 106 +- deps/v8/src/builtins/builtins-promise-gen.h | 33 +- deps/v8/src/builtins/builtins-proxy-gen.cc | 378 ++- deps/v8/src/builtins/builtins-proxy-gen.h | 32 + .../builtins/builtins-proxy-helpers-gen.cc | 160 + .../src/builtins/builtins-proxy-helpers-gen.h | 38 + deps/v8/src/builtins/builtins-regexp-gen.cc | 174 +- deps/v8/src/builtins/builtins-regexp-gen.h | 7 + .../builtins-sharedarraybuffer-gen.cc | 3 +- deps/v8/src/builtins/builtins-string-gen.cc | 495 +-- deps/v8/src/builtins/builtins-string-gen.h | 36 +- deps/v8/src/builtins/builtins-string.cc | 62 +- .../src/builtins/builtins-typedarray-gen.cc | 6 +- deps/v8/src/builtins/builtins.cc | 227 +- deps/v8/src/builtins/builtins.h | 26 +- deps/v8/src/builtins/ia32/builtins-ia32.cc | 488 ++- deps/v8/src/builtins/mips/builtins-mips.cc | 488 ++- .../v8/src/builtins/mips64/builtins-mips64.cc | 485 ++- deps/v8/src/builtins/ppc/builtins-ppc.cc | 506 ++- deps/v8/src/builtins/s390/builtins-s390.cc | 506 ++- .../src/builtins/setup-builtins-internal.cc | 94 +- deps/v8/src/builtins/x64/builtins-x64.cc | 490 ++- deps/v8/src/code-factory.cc | 113 +- deps/v8/src/code-factory.h | 9 +- deps/v8/src/code-stub-assembler.cc | 1020 +++--- deps/v8/src/code-stub-assembler.h | 559 ++-- deps/v8/src/code-stubs.cc | 260 -- deps/v8/src/code-stubs.h | 254 +- deps/v8/src/codegen.cc | 49 +- deps/v8/src/codegen.h | 33 +- deps/v8/src/compilation-info.cc | 132 +- deps/v8/src/compilation-info.h | 179 +- deps/v8/src/compilation-statistics.cc | 2 +- .../compiler-dispatcher-job.cc | 574 +--- .../compiler-dispatcher-job.h | 162 +- .../compiler-dispatcher-tracer.cc | 14 +- .../compiler-dispatcher-tracer.h | 6 +- .../compiler-dispatcher.cc | 183 +- .../compiler-dispatcher/compiler-dispatcher.h | 34 +- .../optimizing-compile-dispatcher.cc | 5 +- .../optimizing-compile-dispatcher.h | 2 +- .../unoptimized-compile-job.cc | 492 +++ .../unoptimized-compile-job.h | 145 + deps/v8/src/compiler.cc | 1084 +++---- deps/v8/src/compiler.h | 36 +- deps/v8/src/compiler/access-builder.cc | 59 +- deps/v8/src/compiler/access-builder.h | 17 +- deps/v8/src/compiler/access-info.cc | 100 +- .../v8/src/compiler/arm/code-generator-arm.cc | 155 +- .../src/compiler/arm/instruction-codes-arm.h | 1 + .../compiler/arm/instruction-scheduler-arm.cc | 1 + .../compiler/arm/instruction-selector-arm.cc | 112 +- .../compiler/arm64/code-generator-arm64.cc | 140 +- .../compiler/arm64/instruction-codes-arm64.h | 1 + .../arm64/instruction-scheduler-arm64.cc | 4 +- .../arm64/instruction-selector-arm64.cc | 115 +- deps/v8/src/compiler/ast-graph-builder.cc | 2841 ----------------- deps/v8/src/compiler/ast-graph-builder.h | 540 ---- .../compiler/ast-loop-assignment-analyzer.cc | 322 -- .../compiler/ast-loop-assignment-analyzer.h | 80 - deps/v8/src/compiler/bytecode-analysis.cc | 92 +- deps/v8/src/compiler/bytecode-analysis.h | 8 +- .../v8/src/compiler/bytecode-graph-builder.cc | 703 ++-- deps/v8/src/compiler/bytecode-graph-builder.h | 66 +- deps/v8/src/compiler/c-linkage.cc | 17 +- deps/v8/src/compiler/check-elimination.cc | 76 - deps/v8/src/compiler/check-elimination.h | 46 - deps/v8/src/compiler/code-assembler.cc | 292 +- deps/v8/src/compiler/code-assembler.h | 766 +++-- deps/v8/src/compiler/code-generator.cc | 94 +- deps/v8/src/compiler/code-generator.h | 26 +- deps/v8/src/compiler/common-operator.cc | 114 +- deps/v8/src/compiler/common-operator.h | 31 +- deps/v8/src/compiler/control-builders.cc | 187 -- deps/v8/src/compiler/control-builders.h | 152 - deps/v8/src/compiler/control-equivalence.cc | 2 + .../src/compiler/effect-control-linearizer.cc | 464 +-- .../src/compiler/effect-control-linearizer.h | 4 +- .../src/compiler/escape-analysis-reducer.cc | 1 + deps/v8/src/compiler/escape-analysis.cc | 19 +- deps/v8/src/compiler/escape-analysis.h | 22 +- deps/v8/src/compiler/frame-states.cc | 7 +- deps/v8/src/compiler/frame.h | 2 +- deps/v8/src/compiler/gap-resolver.cc | 2 +- deps/v8/src/compiler/graph-assembler.cc | 84 +- deps/v8/src/compiler/graph-assembler.h | 282 +- deps/v8/src/compiler/graph-visualizer.cc | 21 +- .../src/compiler/ia32/code-generator-ia32.cc | 308 +- .../compiler/ia32/instruction-codes-ia32.h | 29 + .../ia32/instruction-scheduler-ia32.cc | 29 + .../ia32/instruction-selector-ia32.cc | 47 +- deps/v8/src/compiler/instruction-codes.h | 4 +- deps/v8/src/compiler/instruction-scheduler.cc | 26 +- deps/v8/src/compiler/instruction-selector.cc | 134 +- deps/v8/src/compiler/instruction-selector.h | 47 + deps/v8/src/compiler/instruction.cc | 4 +- deps/v8/src/compiler/instruction.h | 1 - deps/v8/src/compiler/js-builtin-reducer.cc | 35 +- deps/v8/src/compiler/js-builtin-reducer.h | 14 +- deps/v8/src/compiler/js-call-reducer.cc | 443 ++- deps/v8/src/compiler/js-call-reducer.h | 5 +- deps/v8/src/compiler/js-create-lowering.cc | 326 +- deps/v8/src/compiler/js-create-lowering.h | 7 +- .../src/compiler/js-frame-specialization.cc | 76 - .../v8/src/compiler/js-frame-specialization.h | 50 - deps/v8/src/compiler/js-generic-lowering.cc | 32 +- deps/v8/src/compiler/js-graph.cc | 6 +- deps/v8/src/compiler/js-inlining-heuristic.cc | 63 +- deps/v8/src/compiler/js-inlining-heuristic.h | 1 + deps/v8/src/compiler/js-inlining.cc | 66 +- deps/v8/src/compiler/js-inlining.h | 1 + deps/v8/src/compiler/js-intrinsic-lowering.cc | 74 +- deps/v8/src/compiler/js-intrinsic-lowering.h | 13 +- .../js-native-context-specialization.cc | 187 +- .../js-native-context-specialization.h | 1 - deps/v8/src/compiler/js-operator.cc | 106 +- deps/v8/src/compiler/js-operator.h | 63 +- deps/v8/src/compiler/js-type-hint-lowering.cc | 65 +- deps/v8/src/compiler/js-type-hint-lowering.h | 11 +- deps/v8/src/compiler/js-typed-lowering.cc | 667 +--- deps/v8/src/compiler/js-typed-lowering.h | 28 +- deps/v8/src/compiler/jump-threading.cc | 2 + deps/v8/src/compiler/linkage.cc | 4 +- deps/v8/src/compiler/linkage.h | 19 +- deps/v8/src/compiler/live-range-separator.cc | 1 + deps/v8/src/compiler/load-elimination.cc | 303 +- deps/v8/src/compiler/load-elimination.h | 110 +- deps/v8/src/compiler/loop-analysis.cc | 20 +- .../src/compiler/loop-variable-optimizer.cc | 5 +- .../v8/src/compiler/machine-graph-verifier.cc | 10 +- deps/v8/src/compiler/machine-operator.cc | 25 +- deps/v8/src/compiler/machine-operator.h | 68 +- deps/v8/src/compiler/memory-optimizer.cc | 25 +- deps/v8/src/compiler/memory-optimizer.h | 1 + .../src/compiler/mips/code-generator-mips.cc | 246 +- .../mips/instruction-selector-mips.cc | 138 +- .../compiler/mips64/code-generator-mips64.cc | 296 +- .../mips64/instruction-selector-mips64.cc | 138 +- deps/v8/src/compiler/move-optimizer.cc | 2 +- deps/v8/src/compiler/move-optimizer.h | 2 +- .../compiler/new-escape-analysis-reducer.cc | 411 +++ .../compiler/new-escape-analysis-reducer.h | 122 + deps/v8/src/compiler/new-escape-analysis.cc | 739 +++++ deps/v8/src/compiler/new-escape-analysis.h | 181 ++ deps/v8/src/compiler/node-properties.cc | 40 + deps/v8/src/compiler/node-properties.h | 6 + deps/v8/src/compiler/node.h | 29 +- deps/v8/src/compiler/opcodes.h | 66 +- deps/v8/src/compiler/operation-typer.cc | 21 + deps/v8/src/compiler/operation-typer.h | 1 + deps/v8/src/compiler/operator-properties.cc | 2 - deps/v8/src/compiler/osr.cc | 320 +- deps/v8/src/compiler/osr.h | 78 +- deps/v8/src/compiler/persistent-map.h | 514 +++ deps/v8/src/compiler/pipeline.cc | 428 ++- deps/v8/src/compiler/pipeline.h | 4 +- .../v8/src/compiler/ppc/code-generator-ppc.cc | 130 +- .../compiler/ppc/instruction-selector-ppc.cc | 7 +- .../src/compiler/property-access-builder.cc | 14 +- .../v8/src/compiler/property-access-builder.h | 2 + deps/v8/src/compiler/raw-machine-assembler.cc | 31 + deps/v8/src/compiler/raw-machine-assembler.h | 33 +- .../v8/src/compiler/redundancy-elimination.cc | 9 +- .../compiler/register-allocator-verifier.cc | 69 +- .../compiler/register-allocator-verifier.h | 43 +- deps/v8/src/compiler/register-allocator.cc | 7 +- deps/v8/src/compiler/representation-change.cc | 8 +- deps/v8/src/compiler/representation-change.h | 4 +- .../src/compiler/s390/code-generator-s390.cc | 124 +- .../s390/instruction-selector-s390.cc | 7 +- deps/v8/src/compiler/schedule.cc | 1 + deps/v8/src/compiler/scheduler.cc | 6 +- deps/v8/src/compiler/simd-scalar-lowering.cc | 15 +- deps/v8/src/compiler/simplified-lowering.cc | 323 +- deps/v8/src/compiler/simplified-lowering.h | 5 - deps/v8/src/compiler/simplified-operator.cc | 153 +- deps/v8/src/compiler/simplified-operator.h | 50 +- deps/v8/src/compiler/type-cache.cc | 4 +- deps/v8/src/compiler/typed-optimization.cc | 28 +- deps/v8/src/compiler/typed-optimization.h | 15 +- deps/v8/src/compiler/typer.cc | 79 +- deps/v8/src/compiler/types.cc | 58 +- deps/v8/src/compiler/types.h | 59 +- .../src/compiler/value-numbering-reducer.cc | 44 +- deps/v8/src/compiler/verifier.cc | 47 +- deps/v8/src/compiler/wasm-compiler.cc | 691 ++-- deps/v8/src/compiler/wasm-compiler.h | 118 +- deps/v8/src/compiler/wasm-linkage.cc | 104 +- .../v8/src/compiler/x64/code-generator-x64.cc | 148 +- .../compiler/x64/instruction-selector-x64.cc | 5 + deps/v8/src/contexts-inl.h | 42 +- deps/v8/src/contexts.cc | 10 +- deps/v8/src/contexts.h | 43 +- deps/v8/src/conversions-inl.h | 12 +- deps/v8/src/conversions.cc | 19 +- deps/v8/src/conversions.h | 3 + deps/v8/src/counters-inl.h | 21 +- deps/v8/src/counters.cc | 52 +- deps/v8/src/counters.h | 117 +- deps/v8/src/d8-console.cc | 6 +- deps/v8/src/d8-posix.cc | 129 +- deps/v8/src/d8-windows.cc | 5 + deps/v8/src/d8.cc | 89 +- deps/v8/src/d8.h | 10 +- deps/v8/src/debug/arm/debug-arm.cc | 103 +- deps/v8/src/debug/arm64/debug-arm64.cc | 112 +- deps/v8/src/debug/debug-coverage.cc | 51 +- deps/v8/src/debug/debug-evaluate.cc | 22 +- deps/v8/src/debug/debug-frames.cc | 50 +- deps/v8/src/debug/debug-frames.h | 30 +- deps/v8/src/debug/debug-interface.h | 94 +- deps/v8/src/debug/debug-scope-iterator.cc | 203 ++ deps/v8/src/debug/debug-scope-iterator.h | 64 + deps/v8/src/debug/debug-scopes.cc | 98 +- deps/v8/src/debug/debug-scopes.h | 8 + .../src/debug/debug-stack-trace-iterator.cc | 157 + .../v8/src/debug/debug-stack-trace-iterator.h | 46 + deps/v8/src/debug/debug.cc | 575 ++-- deps/v8/src/debug/debug.h | 121 +- deps/v8/src/debug/debug.js | 2 +- deps/v8/src/debug/ia32/debug-ia32.cc | 89 +- deps/v8/src/debug/interface-types.h | 3 + deps/v8/src/debug/liveedit.cc | 48 +- deps/v8/src/debug/liveedit.h | 2 + deps/v8/src/debug/liveedit.js | 5 + deps/v8/src/debug/mips/debug-mips.cc | 101 +- deps/v8/src/debug/mips64/debug-mips64.cc | 96 +- deps/v8/src/debug/ppc/debug-ppc.cc | 102 +- deps/v8/src/debug/s390/debug-s390.cc | 104 +- deps/v8/src/debug/x64/debug-x64.cc | 83 +- deps/v8/src/deoptimize-reason.h | 135 +- deps/v8/src/deoptimizer.cc | 220 +- deps/v8/src/deoptimizer.h | 27 +- deps/v8/src/disassembler.cc | 4 - deps/v8/src/elements-kind.cc | 5 +- deps/v8/src/elements.cc | 3 +- .../externalize-string-extension.cc | 5 +- .../ignition-statistics-extension.cc | 3 +- .../v8/src/extensions/statistics-extension.cc | 2 +- .../extensions/trigger-failure-extension.cc | 8 +- deps/v8/src/external-reference-table.cc | 94 +- deps/v8/src/external-reference-table.h | 27 +- deps/v8/src/factory.cc | 71 +- deps/v8/src/factory.h | 20 +- deps/v8/src/feedback-vector-inl.h | 76 +- deps/v8/src/feedback-vector.cc | 60 +- deps/v8/src/feedback-vector.h | 311 +- deps/v8/src/field-index-inl.h | 1 + deps/v8/src/flag-definitions.h | 210 +- deps/v8/src/frame-constants.h | 338 ++ deps/v8/src/frames-inl.h | 44 +- deps/v8/src/frames.cc | 305 +- deps/v8/src/frames.h | 395 +-- deps/v8/src/full-codegen/OWNERS | 12 - .../src/full-codegen/arm/full-codegen-arm.cc | 2553 --------------- .../full-codegen/arm64/full-codegen-arm64.cc | 2538 --------------- deps/v8/src/full-codegen/full-codegen.cc | 1524 --------- deps/v8/src/full-codegen/full-codegen.h | 854 ----- .../full-codegen/ia32/full-codegen-ia32.cc | 2417 -------------- deps/v8/src/full-codegen/mips/OWNERS | 3 - .../full-codegen/mips/full-codegen-mips.cc | 2527 --------------- deps/v8/src/full-codegen/mips64/OWNERS | 3 - .../mips64/full-codegen-mips64.cc | 2537 --------------- deps/v8/src/full-codegen/ppc/OWNERS | 6 - .../src/full-codegen/ppc/full-codegen-ppc.cc | 2475 -------------- deps/v8/src/full-codegen/s390/OWNERS | 6 - .../full-codegen/s390/full-codegen-s390.cc | 2418 -------------- .../src/full-codegen/x64/full-codegen-x64.cc | 2438 -------------- deps/v8/src/futex-emulation.cc | 2 +- deps/v8/src/globals.h | 31 +- deps/v8/src/heap-symbols.h | 96 +- deps/v8/src/heap/array-buffer-tracker-inl.h | 42 + deps/v8/src/heap/array-buffer-tracker.cc | 37 - deps/v8/src/heap/array-buffer-tracker.h | 3 +- deps/v8/src/heap/code-stats.h | 5 + deps/v8/src/heap/concurrent-marking.cc | 253 +- deps/v8/src/heap/concurrent-marking.h | 31 +- deps/v8/src/heap/gc-idle-time-handler.cc | 2 +- deps/v8/src/heap/gc-tracer.cc | 87 +- deps/v8/src/heap/gc-tracer.h | 95 +- deps/v8/src/heap/heap-inl.h | 86 +- deps/v8/src/heap/heap.cc | 885 +++-- deps/v8/src/heap/heap.h | 256 +- deps/v8/src/heap/incremental-marking-inl.h | 10 +- deps/v8/src/heap/incremental-marking-job.cc | 3 +- deps/v8/src/heap/incremental-marking.cc | 251 +- deps/v8/src/heap/incremental-marking.h | 96 +- deps/v8/src/heap/invalidated-slots-inl.h | 70 + deps/v8/src/heap/invalidated-slots.cc | 35 + deps/v8/src/heap/invalidated-slots.h | 54 + deps/v8/src/heap/local-allocator.h | 62 +- deps/v8/src/heap/mark-compact-inl.h | 56 +- deps/v8/src/heap/mark-compact.cc | 1500 ++++----- deps/v8/src/heap/mark-compact.h | 358 ++- deps/v8/src/heap/marking.cc | 6 +- deps/v8/src/heap/object-stats.cc | 52 +- deps/v8/src/heap/object-stats.h | 28 +- deps/v8/src/heap/objects-visiting-inl.h | 93 +- deps/v8/src/heap/objects-visiting.cc | 6 +- deps/v8/src/heap/objects-visiting.h | 13 +- deps/v8/src/heap/remembered-set.h | 50 +- deps/v8/src/heap/scavenge-job.cc | 4 + deps/v8/src/heap/scavenge-job.h | 2 - deps/v8/src/heap/scavenger-inl.h | 114 +- deps/v8/src/heap/scavenger.cc | 58 +- deps/v8/src/heap/scavenger.h | 122 +- deps/v8/src/heap/sequential-marking-deque.cc | 20 +- deps/v8/src/heap/sequential-marking-deque.h | 5 +- deps/v8/src/heap/slot-set.h | 18 +- deps/v8/src/heap/spaces-inl.h | 36 +- deps/v8/src/heap/spaces.cc | 667 ++-- deps/v8/src/heap/spaces.h | 444 ++- deps/v8/src/heap/store-buffer.cc | 47 +- deps/v8/src/heap/store-buffer.h | 6 +- deps/v8/src/heap/worklist.h | 35 +- deps/v8/src/ia32/assembler-ia32-inl.h | 119 +- deps/v8/src/ia32/assembler-ia32.cc | 139 +- deps/v8/src/ia32/assembler-ia32.h | 75 +- deps/v8/src/ia32/code-stubs-ia32.cc | 1040 +----- deps/v8/src/ia32/code-stubs-ia32.h | 7 +- deps/v8/src/ia32/codegen-ia32.cc | 68 - deps/v8/src/ia32/deoptimizer-ia32.cc | 155 +- deps/v8/src/ia32/disasm-ia32.cc | 25 +- ...frames-ia32.cc => frame-constants-ia32.cc} | 11 +- .../{frames-ia32.h => frame-constants-ia32.h} | 43 +- .../v8/src/ia32/interface-descriptors-ia32.cc | 93 +- deps/v8/src/ia32/macro-assembler-ia32.cc | 872 +---- deps/v8/src/ia32/macro-assembler-ia32.h | 218 +- deps/v8/src/ia32/sse-instr.h | 6 + deps/v8/src/ic/accessor-assembler.cc | 231 +- deps/v8/src/ic/arm/handler-compiler-arm.cc | 1 + deps/v8/src/ic/arm/ic-arm.cc | 110 - .../v8/src/ic/arm64/handler-compiler-arm64.cc | 1 + deps/v8/src/ic/arm64/ic-arm64.cc | 104 - deps/v8/src/ic/binary-op-assembler.cc | 3 +- deps/v8/src/ic/handler-compiler.h | 1 - deps/v8/src/ic/handler-configuration-inl.h | 27 + deps/v8/src/ic/handler-configuration.cc | 82 + deps/v8/src/ic/handler-configuration.h | 29 +- deps/v8/src/ic/ia32/handler-compiler-ia32.cc | 5 +- deps/v8/src/ic/ia32/ic-ia32.cc | 84 - deps/v8/src/ic/ic-inl.h | 43 - deps/v8/src/ic/ic-state.cc | 166 - deps/v8/src/ic/ic-state.h | 59 - deps/v8/src/ic/ic.cc | 353 +- deps/v8/src/ic/ic.h | 68 +- deps/v8/src/ic/keyed-store-generic.cc | 90 +- deps/v8/src/ic/mips/handler-compiler-mips.cc | 1 + deps/v8/src/ic/mips/ic-mips.cc | 138 - .../src/ic/mips64/handler-compiler-mips64.cc | 1 + deps/v8/src/ic/mips64/ic-mips64.cc | 138 - deps/v8/src/ic/ppc/handler-compiler-ppc.cc | 1 + deps/v8/src/ic/ppc/ic-ppc.cc | 112 - deps/v8/src/ic/s390/handler-compiler-s390.cc | 1 + deps/v8/src/ic/s390/ic-s390.cc | 136 - deps/v8/src/ic/x64/handler-compiler-x64.cc | 7 +- deps/v8/src/ic/x64/ic-x64.cc | 85 - deps/v8/src/inspector/BUILD.gn | 24 +- deps/v8/src/inspector/OWNERS | 2 +- deps/v8/src/inspector/PRESUBMIT.py | 4 +- .../v8/src/inspector/build/compile-scripts.py | 19 - deps/v8/src/inspector/debugger-script.js | 497 --- .../src/inspector/debugger_script_externs.js | 382 --- .../src/inspector/injected-script-source.js | 29 +- deps/v8/src/inspector/injected-script.cc | 243 +- deps/v8/src/inspector/injected-script.h | 24 + deps/v8/src/inspector/inspected-context.cc | 1 - deps/v8/src/inspector/inspector.gyp | 25 - deps/v8/src/inspector/inspector.gypi | 9 +- .../src/inspector/java-script-call-frame.cc | 157 - .../v8/src/inspector/java-script-call-frame.h | 81 - deps/v8/src/inspector/js_protocol.json | 21 +- deps/v8/src/inspector/v8-console.cc | 52 +- deps/v8/src/inspector/v8-console.h | 2 + .../src/inspector/v8-debugger-agent-impl.cc | 443 ++- .../v8/src/inspector/v8-debugger-agent-impl.h | 12 +- deps/v8/src/inspector/v8-debugger-script.cc | 30 + deps/v8/src/inspector/v8-debugger-script.h | 11 +- deps/v8/src/inspector/v8-debugger.cc | 467 +-- deps/v8/src/inspector/v8-debugger.h | 51 +- .../src/inspector/v8-injected-script-host.cc | 18 +- deps/v8/src/inspector/v8-inspector-impl.cc | 11 +- deps/v8/src/inspector/v8-inspector-impl.h | 9 +- .../inspector/v8-inspector-session-impl.cc | 3 +- .../src/inspector/v8-profiler-agent-impl.cc | 27 +- .../v8/src/inspector/v8-profiler-agent-impl.h | 3 +- .../v8/src/inspector/v8-runtime-agent-impl.cc | 250 +- deps/v8/src/inspector/v8-runtime-agent-impl.h | 3 + .../{v8-value-copier.cc => v8-value-utils.cc} | 78 +- .../{v8-value-copier.h => v8-value-utils.h} | 9 +- deps/v8/src/inspector/wasm-translation.cc | 11 + deps/v8/src/interface-descriptors.cc | 89 +- deps/v8/src/interface-descriptors.h | 254 +- .../src/interpreter/bytecode-array-builder.cc | 46 +- .../src/interpreter/bytecode-array-builder.h | 23 +- deps/v8/src/interpreter/bytecode-generator.cc | 801 +++-- deps/v8/src/interpreter/bytecode-generator.h | 32 +- deps/v8/src/interpreter/bytecode-operands.h | 3 + .../interpreter/bytecode-register-allocator.h | 16 - deps/v8/src/interpreter/bytecode-register.cc | 12 - deps/v8/src/interpreter/bytecode-register.h | 11 +- deps/v8/src/interpreter/bytecodes.cc | 63 +- deps/v8/src/interpreter/bytecodes.h | 38 +- .../src/interpreter/control-flow-builders.cc | 64 +- .../src/interpreter/control-flow-builders.h | 103 +- .../src/interpreter/handler-table-builder.h | 1 + .../src/interpreter/interpreter-assembler.cc | 673 ++-- .../src/interpreter/interpreter-assembler.h | 69 +- .../src/interpreter/interpreter-generator.cc | 242 +- .../interpreter-intrinsics-generator.cc | 32 +- .../src/interpreter/interpreter-intrinsics.h | 1 + deps/v8/src/interpreter/interpreter.cc | 79 +- deps/v8/src/interpreter/interpreter.h | 8 +- .../interpreter/setup-interpreter-internal.cc | 11 + deps/v8/src/isolate-inl.h | 22 +- deps/v8/src/isolate.cc | 106 +- deps/v8/src/isolate.h | 71 +- deps/v8/src/js/array.js | 10 +- deps/v8/src/js/collection.js | 281 -- deps/v8/src/js/intl.js | 113 +- deps/v8/src/js/macros.py | 33 - deps/v8/src/js/string.js | 23 +- deps/v8/src/js/typedarray.js | 77 +- deps/v8/src/js/weak-collection.js | 16 +- deps/v8/src/json-parser.cc | 15 +- deps/v8/src/json-stringifier.cc | 10 +- deps/v8/src/layout-descriptor-inl.h | 2 +- deps/v8/src/list.h | 7 - deps/v8/src/log-utils.cc | 49 +- deps/v8/src/log-utils.h | 10 +- deps/v8/src/log.cc | 194 +- deps/v8/src/log.h | 8 +- deps/v8/src/lookup-cache-inl.h | 5 + deps/v8/src/lookup.cc | 109 +- deps/v8/src/lookup.h | 20 +- deps/v8/src/machine-type.cc | 12 + deps/v8/src/machine-type.h | 8 + deps/v8/src/macro-assembler.h | 24 - deps/v8/src/map-updater.cc | 24 +- deps/v8/src/messages.cc | 44 +- deps/v8/src/messages.h | 20 +- deps/v8/src/mips/assembler-mips-inl.h | 107 +- deps/v8/src/mips/assembler-mips.cc | 136 +- deps/v8/src/mips/assembler-mips.h | 144 +- deps/v8/src/mips/code-stubs-mips.cc | 1213 +------ deps/v8/src/mips/code-stubs-mips.h | 5 - deps/v8/src/mips/codegen-mips.cc | 91 +- deps/v8/src/mips/constants-mips.h | 26 + deps/v8/src/mips/deoptimizer-mips.cc | 68 +- deps/v8/src/mips/disasm-mips.cc | 63 + ...frames-mips.cc => frame-constants-mips.cc} | 11 +- deps/v8/src/mips/frame-constants-mips.h | 52 + deps/v8/src/mips/frames-mips.h | 173 - .../v8/src/mips/interface-descriptors-mips.cc | 93 +- deps/v8/src/mips/macro-assembler-mips.cc | 1803 ++++------- deps/v8/src/mips/macro-assembler-mips.h | 422 +-- deps/v8/src/mips/simulator-mips.cc | 343 +- deps/v8/src/mips/simulator-mips.h | 12 + deps/v8/src/mips64/assembler-mips64-inl.h | 107 +- deps/v8/src/mips64/assembler-mips64.cc | 143 +- deps/v8/src/mips64/assembler-mips64.h | 145 +- deps/v8/src/mips64/code-stubs-mips64.cc | 1222 +------ deps/v8/src/mips64/code-stubs-mips64.h | 5 - deps/v8/src/mips64/codegen-mips64.cc | 93 +- deps/v8/src/mips64/constants-mips64.h | 30 + deps/v8/src/mips64/deoptimizer-mips64.cc | 69 +- deps/v8/src/mips64/disasm-mips64.cc | 95 +- ...es-mips64.cc => frame-constants-mips64.cc} | 11 +- deps/v8/src/mips64/frame-constants-mips64.h | 52 + deps/v8/src/mips64/frames-mips64.h | 173 - .../mips64/interface-descriptors-mips64.cc | 92 +- deps/v8/src/mips64/macro-assembler-mips64.cc | 2204 ++++--------- deps/v8/src/mips64/macro-assembler-mips64.h | 501 +-- deps/v8/src/mips64/simulator-mips64.cc | 374 ++- deps/v8/src/mips64/simulator-mips64.h | 11 + deps/v8/src/objects-body-descriptors-inl.h | 236 +- deps/v8/src/objects-body-descriptors.h | 36 - deps/v8/src/objects-debug.cc | 157 +- deps/v8/src/objects-inl.h | 427 ++- deps/v8/src/objects-printer.cc | 250 +- deps/v8/src/objects.cc | 1715 +++------- deps/v8/src/objects.h | 1213 +++---- deps/v8/src/objects/arguments-inl.h | 4 - deps/v8/src/objects/arguments.h | 20 +- deps/v8/src/objects/debug-objects-inl.h | 16 +- deps/v8/src/objects/debug-objects.cc | 62 +- deps/v8/src/objects/debug-objects.h | 25 +- deps/v8/src/objects/descriptor-array.h | 3 - deps/v8/src/objects/dictionary.h | 16 +- deps/v8/src/objects/hash-table.h | 11 +- deps/v8/src/objects/intl-objects.cc | 336 +- deps/v8/src/objects/intl-objects.h | 38 + deps/v8/src/objects/literal-objects.h | 2 + deps/v8/src/objects/map.h | 28 +- deps/v8/src/objects/module-info.h | 133 - deps/v8/src/objects/module-inl.h | 67 + deps/v8/src/objects/module.cc | 873 +++++ deps/v8/src/objects/module.h | 329 ++ deps/v8/src/objects/name-inl.h | 5 + deps/v8/src/objects/name.h | 14 + deps/v8/src/objects/object-macros-undef.h | 2 + deps/v8/src/objects/object-macros.h | 40 +- deps/v8/src/objects/scope-info.cc | 40 +- deps/v8/src/objects/scope-info.h | 17 +- .../v8/src/objects/shared-function-info-inl.h | 63 +- deps/v8/src/objects/shared-function-info.h | 142 +- deps/v8/src/objects/string-inl.h | 3 +- deps/v8/src/objects/string.h | 22 +- deps/v8/src/ostreams.cc | 21 +- deps/v8/src/ostreams.h | 27 +- deps/v8/src/parsing/OWNERS | 2 +- ...iter.cc => expression-scope-reparenter.cc} | 64 +- ...writer.h => expression-scope-reparenter.h} | 9 +- deps/v8/src/parsing/parse-info.cc | 90 +- deps/v8/src/parsing/parse-info.h | 90 +- deps/v8/src/parsing/parser-base.h | 882 ++--- deps/v8/src/parsing/parser.cc | 895 +----- deps/v8/src/parsing/parser.h | 209 +- deps/v8/src/parsing/parsing.cc | 46 +- deps/v8/src/parsing/parsing.h | 23 +- deps/v8/src/parsing/pattern-rewriter.cc | 386 ++- deps/v8/src/parsing/preparsed-scope-data.cc | 61 +- deps/v8/src/parsing/preparsed-scope-data.h | 51 +- deps/v8/src/parsing/preparser.cc | 55 +- deps/v8/src/parsing/preparser.h | 554 ++-- deps/v8/src/parsing/rewriter.cc | 13 +- deps/v8/src/parsing/rewriter.h | 2 +- .../src/parsing/scanner-character-streams.cc | 14 + deps/v8/src/parsing/scanner.cc | 2 +- deps/v8/src/parsing/scanner.h | 3 + deps/v8/src/parsing/token.h | 35 +- deps/v8/src/perf-jit.cc | 11 +- deps/v8/src/ppc/assembler-ppc-inl.h | 111 - deps/v8/src/ppc/assembler-ppc.cc | 25 +- deps/v8/src/ppc/assembler-ppc.h | 157 +- deps/v8/src/ppc/code-stubs-ppc.cc | 1212 +------ deps/v8/src/ppc/code-stubs-ppc.h | 5 - deps/v8/src/ppc/codegen-ppc.cc | 83 - deps/v8/src/ppc/deoptimizer-ppc.cc | 75 +- deps/v8/src/ppc/disasm-ppc.cc | 4 +- .../{frames-ppc.cc => frame-constants-ppc.cc} | 10 +- deps/v8/src/ppc/frame-constants-ppc.h | 50 + deps/v8/src/ppc/frames-ppc.h | 188 -- deps/v8/src/ppc/interface-descriptors-ppc.cc | 94 +- deps/v8/src/ppc/macro-assembler-ppc.cc | 1019 +----- deps/v8/src/ppc/macro-assembler-ppc.h | 401 +-- deps/v8/src/ppc/simulator-ppc.cc | 6 +- deps/v8/src/ppc/simulator-ppc.h | 2 +- deps/v8/src/profiler/circular-queue-inl.h | 4 +- deps/v8/src/profiler/heap-profiler.cc | 38 +- deps/v8/src/profiler/heap-profiler.h | 6 +- .../profiler/heap-snapshot-generator-inl.h | 2 +- .../src/profiler/heap-snapshot-generator.cc | 496 +-- .../v8/src/profiler/heap-snapshot-generator.h | 37 +- deps/v8/src/profiler/profile-generator.cc | 4 +- deps/v8/src/profiler/profile-generator.h | 4 +- deps/v8/src/profiler/profiler-listener.cc | 29 +- deps/v8/src/profiler/profiler-listener.h | 3 +- .../v8/src/profiler/sampling-heap-profiler.cc | 6 + deps/v8/src/profiler/sampling-heap-profiler.h | 7 +- deps/v8/src/profiler/strings-storage.cc | 15 +- deps/v8/src/profiler/strings-storage.h | 2 +- deps/v8/src/regexp/jsregexp.cc | 65 +- .../regexp/ppc/regexp-macro-assembler-ppc.h | 1 - deps/v8/src/regexp/regexp-ast.h | 6 +- deps/v8/src/regexp/regexp-parser.cc | 113 +- deps/v8/src/regexp/regexp-parser.h | 10 +- deps/v8/src/regexp/regexp-utils.cc | 7 +- .../regexp/s390/regexp-macro-assembler-s390.h | 1 - deps/v8/src/register-configuration.cc | 162 +- deps/v8/src/register-configuration.h | 14 +- deps/v8/src/reglist.h | 24 + deps/v8/src/runtime-profiler.cc | 199 +- deps/v8/src/runtime-profiler.h | 13 +- deps/v8/src/runtime/runtime-array.cc | 57 +- deps/v8/src/runtime/runtime-classes.cc | 1 - deps/v8/src/runtime/runtime-collections.cc | 41 +- deps/v8/src/runtime/runtime-compiler.cc | 31 +- deps/v8/src/runtime/runtime-debug.cc | 39 +- deps/v8/src/runtime/runtime-function.cc | 7 +- deps/v8/src/runtime/runtime-generator.cc | 34 +- deps/v8/src/runtime/runtime-internal.cc | 53 +- deps/v8/src/runtime/runtime-interpreter.cc | 15 - deps/v8/src/runtime/runtime-intl.cc | 201 +- deps/v8/src/runtime/runtime-literals.cc | 10 +- deps/v8/src/runtime/runtime-liveedit.cc | 9 +- deps/v8/src/runtime/runtime-module.cc | 11 +- deps/v8/src/runtime/runtime-object.cc | 17 +- deps/v8/src/runtime/runtime-proxy.cc | 108 +- deps/v8/src/runtime/runtime-regexp.cc | 74 +- deps/v8/src/runtime/runtime-scopes.cc | 30 +- deps/v8/src/runtime/runtime-strings.cc | 73 +- deps/v8/src/runtime/runtime-test.cc | 94 +- deps/v8/src/runtime/runtime-typedarray.cc | 123 +- deps/v8/src/runtime/runtime-wasm.cc | 56 +- deps/v8/src/runtime/runtime.h | 84 +- deps/v8/src/s390/assembler-s390-inl.h | 109 - deps/v8/src/s390/assembler-s390.cc | 29 +- deps/v8/src/s390/assembler-s390.h | 167 +- deps/v8/src/s390/code-stubs-s390.cc | 1176 +------ deps/v8/src/s390/code-stubs-s390.h | 6 +- deps/v8/src/s390/codegen-s390.cc | 82 - deps/v8/src/s390/deoptimizer-s390.cc | 71 +- deps/v8/src/s390/disasm-s390.cc | 4 +- ...frames-s390.cc => frame-constants-s390.cc} | 9 +- deps/v8/src/s390/frame-constants-s390.h | 48 + deps/v8/src/s390/frames-s390.h | 189 -- .../v8/src/s390/interface-descriptors-s390.cc | 87 +- deps/v8/src/s390/macro-assembler-s390.cc | 798 +---- deps/v8/src/s390/macro-assembler-s390.h | 368 +-- deps/v8/src/s390/simulator-s390.cc | 20 +- deps/v8/src/safepoint-table.cc | 38 +- deps/v8/src/safepoint-table.h | 51 +- deps/v8/src/setup-isolate.h | 7 + deps/v8/src/snapshot/OWNERS | 2 +- deps/v8/src/snapshot/code-serializer.cc | 93 +- deps/v8/src/snapshot/code-serializer.h | 29 +- deps/v8/src/snapshot/deserializer.cc | 560 ++-- deps/v8/src/snapshot/deserializer.h | 140 +- deps/v8/src/snapshot/mksnapshot.cc | 5 - deps/v8/src/snapshot/natives-external.cc | 30 +- deps/v8/src/snapshot/object-deserializer.cc | 121 + deps/v8/src/snapshot/object-deserializer.h | 41 + deps/v8/src/snapshot/partial-deserializer.cc | 93 + deps/v8/src/snapshot/partial-deserializer.h | 44 + deps/v8/src/snapshot/partial-serializer.cc | 59 +- deps/v8/src/snapshot/partial-serializer.h | 2 +- deps/v8/src/snapshot/serializer-common.cc | 64 +- deps/v8/src/snapshot/serializer-common.h | 69 +- deps/v8/src/snapshot/serializer.cc | 238 +- deps/v8/src/snapshot/serializer.h | 39 +- deps/v8/src/snapshot/snapshot-common.cc | 151 +- deps/v8/src/snapshot/snapshot-source-sink.cc | 2 +- deps/v8/src/snapshot/snapshot-source-sink.h | 8 +- deps/v8/src/snapshot/snapshot.h | 39 +- deps/v8/src/snapshot/startup-deserializer.cc | 100 + deps/v8/src/snapshot/startup-deserializer.h | 34 + deps/v8/src/snapshot/startup-serializer.cc | 36 +- deps/v8/src/snapshot/startup-serializer.h | 3 +- deps/v8/src/source-position-table.cc | 2 +- deps/v8/src/source-position-table.h | 13 + deps/v8/src/string-builder.h | 13 + deps/v8/src/third_party/valgrind/valgrind.h | 2 +- deps/v8/src/third_party/vtune/jitprofiling.h | 10 +- deps/v8/src/third_party/vtune/vtune-jit.cc | 2 +- deps/v8/src/transitions-inl.h | 154 +- deps/v8/src/transitions.cc | 583 ++-- deps/v8/src/transitions.h | 373 ++- deps/v8/src/trap-handler/OWNERS | 1 + deps/v8/src/trap-handler/handler-inside.cc | 2 +- deps/v8/src/trap-handler/trap-handler.h | 5 + deps/v8/src/type-hints.cc | 4 +- deps/v8/src/type-hints.h | 2 +- deps/v8/src/utils.h | 24 +- deps/v8/src/v8.cc | 5 + deps/v8/src/v8.gyp | 150 +- deps/v8/src/v8.h | 1 - deps/v8/src/value-serializer.cc | 13 +- deps/v8/src/visitors.h | 6 +- deps/v8/src/vm-state-inl.h | 4 + deps/v8/src/wasm/OWNERS | 1 + deps/v8/src/wasm/decoder.h | 12 +- deps/v8/src/wasm/function-body-decoder-impl.h | 1844 ++++++++++- deps/v8/src/wasm/function-body-decoder.cc | 2197 +++---------- deps/v8/src/wasm/function-body-decoder.h | 9 + deps/v8/src/wasm/local-decl-encoder.cc | 11 + deps/v8/src/wasm/module-compiler.cc | 679 ++-- deps/v8/src/wasm/module-compiler.h | 52 +- deps/v8/src/wasm/module-decoder.cc | 174 +- deps/v8/src/wasm/module-decoder.h | 20 +- deps/v8/src/wasm/signature-map.h | 1 + deps/v8/src/wasm/streaming-decoder.cc | 11 + deps/v8/src/wasm/wasm-api.cc | 31 + deps/v8/src/wasm/wasm-api.h | 35 + deps/v8/src/wasm/wasm-code-specialization.cc | 62 +- deps/v8/src/wasm/wasm-code-specialization.h | 8 +- deps/v8/src/wasm/wasm-debug.cc | 224 +- deps/v8/src/wasm/wasm-interpreter.cc | 313 +- deps/v8/src/wasm/wasm-interpreter.h | 14 +- deps/v8/src/wasm/wasm-js.cc | 162 +- deps/v8/src/wasm/wasm-module-builder.cc | 23 +- deps/v8/src/wasm/wasm-module-builder.h | 5 + deps/v8/src/wasm/wasm-module.cc | 140 +- deps/v8/src/wasm/wasm-module.h | 185 +- deps/v8/src/wasm/wasm-objects.cc | 229 +- deps/v8/src/wasm/wasm-objects.h | 148 +- deps/v8/src/wasm/wasm-opcodes.h | 47 +- deps/v8/src/wasm/wasm-text.cc | 21 +- deps/v8/src/x64/assembler-x64-inl.h | 115 +- deps/v8/src/x64/assembler-x64.cc | 166 +- deps/v8/src/x64/assembler-x64.h | 35 +- deps/v8/src/x64/code-stubs-x64.cc | 1015 +----- deps/v8/src/x64/code-stubs-x64.h | 5 +- deps/v8/src/x64/codegen-x64.cc | 72 - deps/v8/src/x64/deoptimizer-x64.cc | 72 +- .../{frames-x64.cc => frame-constants-x64.cc} | 11 +- .../{frames-x64.h => frame-constants-x64.h} | 27 +- deps/v8/src/x64/interface-descriptors-x64.cc | 97 +- deps/v8/src/x64/macro-assembler-x64.cc | 1479 +-------- deps/v8/src/x64/macro-assembler-x64.h | 383 +-- deps/v8/src/zone/accounting-allocator.cc | 6 +- deps/v8/src/zone/zone-chunk-list.h | 2 +- deps/v8/src/zone/zone-containers.h | 32 + deps/v8/src/zone/zone-handle-set.h | 9 + deps/v8/src/zone/zone.cc | 2 +- deps/v8/test/cctest/BUILD.gn | 11 +- deps/v8/test/cctest/cctest.gyp | 11 +- deps/v8/test/cctest/cctest.h | 70 +- deps/v8/test/cctest/cctest.status | 8 + .../test/cctest/compiler/function-tester.cc | 30 +- .../cctest/compiler/test-code-assembler.cc | 9 +- .../cctest/compiler/test-code-generator.cc | 199 ++ .../test/cctest/compiler/test-gap-resolver.cc | 8 +- .../cctest/compiler/test-js-typed-lowering.cc | 195 +- deps/v8/test/cctest/compiler/test-linkage.cc | 21 +- .../compiler/test-loop-assignment-analysis.cc | 286 -- .../cctest/compiler/test-multiple-return.cc | 2 +- deps/v8/test/cctest/compiler/test-node.cc | 6 + deps/v8/test/cctest/compiler/test-operator.cc | 3 + .../test-run-bytecode-graph-builder.cc | 116 +- .../v8/test/cctest/compiler/test-run-deopt.cc | 5 - .../cctest/compiler/test-run-jsexceptions.cc | 14 - .../v8/test/cctest/compiler/test-run-jsops.cc | 2 - .../cctest/compiler/test-run-load-store.cc | 1 - .../test/cctest/compiler/test-run-machops.cc | 165 +- .../cctest/compiler/test-run-native-calls.cc | 2 +- .../cctest/compiler/test-run-stackcheck.cc | 1 - .../v8/test/cctest/compiler/test-run-stubs.cc | 128 +- .../cctest/compiler/test-run-variables.cc | 5 - .../cctest/compiler/test-run-wasm-machops.cc | 9 +- deps/v8/test/cctest/compiler/value-helper.h | 12 + deps/v8/test/cctest/heap/heap-tester.h | 40 +- deps/v8/test/cctest/heap/heap-utils.cc | 1 - deps/v8/test/cctest/heap/test-alloc.cc | 34 +- .../cctest/heap/test-array-buffer-tracker.cc | 10 +- deps/v8/test/cctest/heap/test-compaction.cc | 8 +- .../cctest/heap/test-concurrent-marking.cc | 11 +- deps/v8/test/cctest/heap/test-heap.cc | 722 ++--- .../cctest/heap/test-incremental-marking.cc | 40 +- .../cctest/heap/test-invalidated-slots.cc | 187 ++ deps/v8/test/cctest/heap/test-lab.cc | 2 + deps/v8/test/cctest/heap/test-mark-compact.cc | 13 +- .../test/cctest/heap/test-page-promotion.cc | 8 +- deps/v8/test/cctest/heap/test-spaces.cc | 114 +- .../bytecode-expectations-printer.cc | 4 +- .../ArrayLiterals.golden | 28 +- .../ArrayLiteralsWide.golden | 2 +- .../AssignmentsInBinaryExpression.golden | 50 +- .../AsyncGenerators.golden | 1175 +++---- .../BasicBlockToBoolean.golden | 6 +- .../bytecode_expectations/BasicLoops.golden | 108 +- .../BreakableBlocks.golden | 20 +- .../CallAndSpread.golden | 30 +- .../bytecode_expectations/CallGlobal.golden | 8 +- .../CallLookupSlot.golden | 36 +- .../bytecode_expectations/CallNew.golden | 12 +- .../bytecode_expectations/CallRuntime.golden | 2 +- .../ClassAndSuperClass.golden | 26 +- .../ClassDeclarations.golden | 34 +- .../bytecode_expectations/CompareNil.golden | 2 +- .../CompoundExpressions.golden | 24 +- .../bytecode_expectations/Conditional.golden | 2 +- .../ConstVariableContextSlot.golden | 8 +- .../ContextParameters.golden | 8 +- .../ContextVariables.golden | 24 +- .../CountOperators.golden | 66 +- .../CreateArguments.golden | 4 +- .../CreateRestParameter.golden | 8 +- .../DeclareGlobals.golden | 10 +- .../bytecode_expectations/Delete.golden | 10 +- .../bytecode_expectations/DoExpression.golden | 2 +- .../bytecode_expectations/Eval.golden | 28 +- .../bytecode_expectations/ForAwaitOf.golden | 1086 +++---- .../bytecode_expectations/ForIn.golden | 34 +- .../bytecode_expectations/ForOf.golden | 136 +- .../bytecode_expectations/ForOfLoop.golden | 885 +++-- .../FunctionLiterals.golden | 10 +- .../GenerateTestUndetectable.golden | 16 +- .../bytecode_expectations/Generators.golden | 462 ++- .../GlobalCompoundExpressions.golden | 12 +- .../GlobalCountOperators.golden | 28 +- .../bytecode_expectations/GlobalDelete.golden | 26 +- .../bytecode_expectations/IfConditions.golden | 26 +- .../JumpsRequiringConstantWideOperands.golden | 8 +- .../LetVariableContextSlot.golden | 8 +- .../bytecode_expectations/LoadGlobal.golden | 266 +- .../LogicalExpressions.golden | 8 +- .../bytecode_expectations/LookupSlot.golden | 146 +- .../LookupSlotInEval.golden | 4 +- .../LookupSlotWideInEval.golden | 4 +- .../bytecode_expectations/Modules.golden | 384 +-- .../bytecode_expectations/NewAndSpread.golden | 24 +- .../bytecode_expectations/NewTarget.golden | 8 +- .../ObjectLiterals.golden | 80 +- .../ObjectLiteralsWide.golden | 2 +- .../OuterContextVariables.golden | 2 +- .../PrimitiveExpressions.golden | 44 +- .../bytecode_expectations/PropertyCall.golden | 288 +- .../PropertyLoads.golden | 532 +-- .../PropertyStores.golden | 1056 +++--- .../RegExpLiterals.golden | 10 +- .../RegExpLiteralsWide.golden | 2 +- .../RemoveRedundantLdar.golden | 10 +- .../StandardForLoop.golden | 401 ++- .../bytecode_expectations/StoreGlobal.golden | 528 +-- .../bytecode_expectations/StringConcat.golden | 38 +- .../SuperCallAndSpread.golden | 24 +- .../bytecode_expectations/Switch.golden | 34 +- .../TopLevelObjectLiterals.golden | 8 +- .../bytecode_expectations/TryFinally.golden | 15 +- .../bytecode_expectations/Typeof.golden | 2 +- .../UnaryOperators.golden | 18 +- .../WideRegisters.golden | 16 +- .../WithStatement.golden | 2 +- .../generate-bytecode-expectations.cc | 5 +- .../cctest/interpreter/interpreter-tester.cc | 1 - .../cctest/interpreter/interpreter-tester.h | 2 +- .../interpreter/test-bytecode-generator.cc | 1 - .../cctest/interpreter/test-interpreter.cc | 157 +- .../interpreter/test-source-positions.cc | 4 - .../cctest/parsing/test-parse-decision.cc | 6 +- deps/v8/test/cctest/parsing/test-preparser.cc | 127 +- deps/v8/test/cctest/parsing/test-scanner.cc | 6 +- deps/v8/test/cctest/print-extension.cc | 2 +- deps/v8/test/cctest/test-allocation.cc | 154 + deps/v8/test/cctest/test-api-interceptors.cc | 10 +- deps/v8/test/cctest/test-api.cc | 482 +-- deps/v8/test/cctest/test-api.h | 5 + deps/v8/test/cctest/test-assembler-arm64.cc | 90 +- deps/v8/test/cctest/test-assembler-ia32.cc | 57 - deps/v8/test/cctest/test-assembler-mips.cc | 652 ++++ deps/v8/test/cctest/test-assembler-mips64.cc | 659 +++- deps/v8/test/cctest/test-assembler-x64.cc | 6 +- deps/v8/test/cctest/test-ast.cc | 67 - deps/v8/test/cctest/test-bignum-dtoa.cc | 7 +- deps/v8/test/cctest/test-bignum.cc | 7 +- deps/v8/test/cctest/test-bit-vector.cc | 6 +- deps/v8/test/cctest/test-code-cache.cc | 11 +- deps/v8/test/cctest/test-code-layout.cc | 6 +- .../test/cctest/test-code-stub-assembler.cc | 96 +- deps/v8/test/cctest/test-code-stubs-arm.cc | 6 +- deps/v8/test/cctest/test-code-stubs-arm64.cc | 6 +- deps/v8/test/cctest/test-code-stubs-ia32.cc | 6 +- deps/v8/test/cctest/test-code-stubs-mips.cc | 6 +- deps/v8/test/cctest/test-code-stubs-mips64.cc | 2 +- deps/v8/test/cctest/test-code-stubs-x64.cc | 2 +- deps/v8/test/cctest/test-compiler.cc | 7 +- deps/v8/test/cctest/test-constantpool.cc | 6 +- deps/v8/test/cctest/test-conversions.cc | 7 +- deps/v8/test/cctest/test-cpu-profiler.cc | 63 +- deps/v8/test/cctest/test-date.cc | 6 +- deps/v8/test/cctest/test-debug.cc | 251 +- deps/v8/test/cctest/test-decls.cc | 4 +- deps/v8/test/cctest/test-deoptimization.cc | 2 +- deps/v8/test/cctest/test-dictionary.cc | 34 +- deps/v8/test/cctest/test-disasm-arm.cc | 3 +- deps/v8/test/cctest/test-disasm-arm64.cc | 13 + deps/v8/test/cctest/test-disasm-ia32.cc | 32 +- deps/v8/test/cctest/test-disasm-mips.cc | 13 + deps/v8/test/cctest/test-disasm-mips64.cc | 17 + deps/v8/test/cctest/test-disasm-ppc.cc | 1 + deps/v8/test/cctest/test-disasm-s390.cc | 1 + deps/v8/test/cctest/test-disasm-x64.cc | 10 +- deps/v8/test/cctest/test-diy-fp.cc | 8 +- deps/v8/test/cctest/test-double.cc | 8 +- deps/v8/test/cctest/test-dtoa.cc | 8 +- deps/v8/test/cctest/test-elements-kind.cc | 7 +- deps/v8/test/cctest/test-fast-dtoa.cc | 6 +- deps/v8/test/cctest/test-feedback-vector.cc | 48 +- deps/v8/test/cctest/test-feedback-vector.h | 2 +- .../test/cctest/test-field-type-tracking.cc | 27 +- deps/v8/test/cctest/test-fixed-dtoa.cc | 6 +- deps/v8/test/cctest/test-flags.cc | 6 +- deps/v8/test/cctest/test-global-handles.cc | 6 +- deps/v8/test/cctest/test-global-object.cc | 2 +- deps/v8/test/cctest/test-hashcode.cc | 231 ++ deps/v8/test/cctest/test-hashing.cc | 173 - deps/v8/test/cctest/test-heap-profiler.cc | 632 ++-- deps/v8/test/cctest/test-identity-map.cc | 4 +- .../cctest/test-inobject-slack-tracking.cc | 13 +- deps/v8/test/cctest/test-list.cc | 6 +- deps/v8/test/cctest/test-liveedit.cc | 7 +- deps/v8/test/cctest/test-lockers.cc | 61 +- deps/v8/test/cctest/test-log-stack-tracer.cc | 18 +- deps/v8/test/cctest/test-log.cc | 4 +- .../test/cctest/test-macro-assembler-ia32.cc | 161 - .../test/cctest/test-macro-assembler-mips.cc | 4 +- .../cctest/test-macro-assembler-mips64.cc | 339 +- .../test/cctest/test-macro-assembler-x64.cc | 1231 +------ deps/v8/test/cctest/test-managed.cc | 7 +- deps/v8/test/cctest/test-mementos.cc | 7 +- deps/v8/test/cctest/test-object.cc | 6 +- deps/v8/test/cctest/test-orderedhashtable.cc | 47 +- deps/v8/test/cctest/test-parsing.cc | 370 +-- deps/v8/test/cctest/test-platform-linux.cc | 7 +- deps/v8/test/cctest/test-profile-generator.cc | 29 +- .../cctest/test-random-number-generator.cc | 7 +- deps/v8/test/cctest/test-regexp.cc | 11 +- deps/v8/test/cctest/test-representation.cc | 7 +- .../cctest/test-run-wasm-relocation-ia32.cc | 2 +- .../cctest/test-run-wasm-relocation-x64.cc | 9 +- deps/v8/test/cctest/test-serialize.cc | 631 ++-- deps/v8/test/cctest/test-strings.cc | 13 +- deps/v8/test/cctest/test-strtod.cc | 6 +- deps/v8/test/cctest/test-symbols.cc | 7 +- deps/v8/test/cctest/test-threads.cc | 16 +- deps/v8/test/cctest/test-trace-event.cc | 112 +- deps/v8/test/cctest/test-transitions.cc | 163 +- deps/v8/test/cctest/test-transitions.h | 31 + deps/v8/test/cctest/test-typedarrays.cc | 6 +- deps/v8/test/cctest/test-types.cc | 9 +- deps/v8/test/cctest/test-unboxed-doubles.cc | 15 +- deps/v8/test/cctest/test-usecounters.cc | 26 + deps/v8/test/cctest/test-utils.cc | 7 +- deps/v8/test/cctest/test-version.cc | 9 +- deps/v8/test/cctest/test-weakmaps.cc | 16 +- deps/v8/test/cctest/test-weaksets.cc | 14 +- deps/v8/test/cctest/wasm/OWNERS | 1 + deps/v8/test/cctest/wasm/test-c-wasm-entry.cc | 197 ++ deps/v8/test/cctest/wasm/test-run-wasm-64.cc | 74 +- .../test/cctest/wasm/test-run-wasm-asmjs.cc | 82 +- .../test/cctest/wasm/test-run-wasm-atomics.cc | 188 ++ .../cctest/wasm/test-run-wasm-interpreter.cc | 18 +- deps/v8/test/cctest/wasm/test-run-wasm-js.cc | 29 +- .../cctest/wasm/test-run-wasm-relocation.cc | 10 +- .../v8/test/cctest/wasm/test-run-wasm-simd.cc | 66 +- deps/v8/test/cctest/wasm/test-run-wasm.cc | 284 +- .../test/cctest/wasm/test-wasm-breakpoints.cc | 20 +- .../wasm/test-wasm-interpreter-entry.cc | 4 +- deps/v8/test/cctest/wasm/test-wasm-stack.cc | 36 +- .../cctest/wasm/test-wasm-trap-position.cc | 27 +- deps/v8/test/cctest/wasm/wasm-run-utils.h | 315 +- .../v8/test/common/wasm/wasm-module-runner.cc | 7 +- .../debug/debug-evaluate-locals-capturing.js | 1 + .../debug-evaluate-locals-optimized-double.js | 1 - .../debug/debug-evaluate-locals-optimized.js | 1 - ...debug-evaluate-modify-catch-block-scope.js | 1 + .../debug-evaluate-no-side-effect-async.js | 2 - ...ebug-evaluate-no-side-effect-builtins-2.js | 2 - .../debug-evaluate-no-side-effect-builtins.js | 2 - .../debug-evaluate-no-side-effect-control.js | 2 - .../debug-evaluate-no-side-effect-iife.js | 2 - .../debug-evaluate-no-side-effect-ops.js | 2 - .../debug/debug-evaluate-no-side-effect.js | 2 - deps/v8/test/debugger/debug/debug-optimize.js | 2 +- deps/v8/test/debugger/debug/debug-receiver.js | 2 +- .../debug-scopes-suspended-generators.js | 6 +- deps/v8/test/debugger/debug/debug-script.js | 2 +- .../debugger/debug/debug-stepin-accessor.js | 2 +- .../debug-stepin-property-function-call.js | 2 +- .../debug/regress/regress-crbug-171715.js | 1 + .../regress-debug-code-recompilation.js | 2 - deps/v8/test/debugger/debugger.status | 20 - .../test/debugger/regress/regress-5901-1.js | 2 - deps/v8/test/fuzzer/regexp.cc | 14 +- deps/v8/test/fuzzer/wasm-async.cc | 14 +- deps/v8/test/fuzzer/wasm-call.cc | 12 + deps/v8/test/fuzzer/wasm-code.cc | 12 + deps/v8/test/fuzzer/wasm-compile.cc | 12 + deps/v8/test/fuzzer/wasm-data-section.cc | 5 +- .../test/fuzzer/wasm-function-sigs-section.cc | 5 +- deps/v8/test/fuzzer/wasm-fuzzer-common.cc | 11 + deps/v8/test/fuzzer/wasm-globals-section.cc | 5 +- deps/v8/test/fuzzer/wasm-imports-section.cc | 5 +- deps/v8/test/fuzzer/wasm-memory-section.cc | 5 +- deps/v8/test/fuzzer/wasm-names-section.cc | 5 +- deps/v8/test/fuzzer/wasm-types-section.cc | 5 +- deps/v8/test/fuzzer/wasm_async/valid.wasm | Bin 0 -> 99 bytes .../console/let-const-with-api-expected.txt | 20 - .../inspector/console/let-const-with-api.js | 54 - .../console/scoped-variables-expected.txt | 41 + .../inspector/console/scoped-variables.js | 26 + .../cpu-profiler/coverage-block-expected.txt | 121 +- .../inspector/cpu-profiler/coverage-block.js | 20 +- .../cpu-profiler/coverage-expected.txt | 67 - .../test/inspector/cpu-profiler/coverage.js | 16 +- ...stop-without-preceeding-start-expected.txt | 2 +- .../stop-without-preceeding-start.js | 2 +- ...asm-js-breakpoint-before-exec-expected.txt | 38 +- ...asm-js-breakpoint-during-exec-expected.txt | 27 +- .../clear-breakpoints-on-disable-expected.txt | 4 + .../debugger/clear-breakpoints-on-disable.js | 28 + .../get-possible-breakpoints-master.js | 2 - ...sync-call-stack-depth-changed-expected.txt | 5 - .../max-async-call-stack-depth-changed.js | 16 - ...t-preview-internal-properties-expected.txt | 60 +- .../object-preview-internal-properties.js | 8 +- .../pause-at-negative-offset-expected.txt | 2 + .../debugger/pause-at-negative-offset.js | 15 + .../debugger/script-parsed-hash-expected.txt | 48 +- .../inspector/debugger/script-parsed-hash.js | 50 +- .../script-with-negative-offset-expected.txt | 19 - .../debugger/script-with-negative-offset.js | 31 - .../debugger/set-script-source-2-expected.txt | 72 + .../inspector/debugger/set-script-source-2.js | 97 + .../side-effect-free-debug-evaluate.js | 1 - deps/v8/test/inspector/debugger/step-into.js | 2 - deps/v8/test/inspector/inspector-test.cc | 42 +- deps/v8/test/inspector/inspector.isolate | 2 + deps/v8/test/inspector/inspector.status | 17 - deps/v8/test/inspector/isolate-data.cc | 28 +- deps/v8/test/inspector/isolate-data.h | 5 +- deps/v8/test/inspector/protocol-test.js | 20 +- .../call-function-on-async-expected.txt | 23 +- .../runtime/call-function-on-async.js | 205 +- .../runtime/command-line-api-expected.txt | 71 + .../inspector/runtime/command-line-api.js | 34 + .../runtime/evaluate-async-expected.txt | 82 +- .../test/inspector/runtime/evaluate-async.js | 125 +- .../length-or-size-description-expected.txt | 12 + .../runtime/length-or-size-description.js | 10 +- .../runtime/query-objects-expected.txt | 96 + .../test/inspector/runtime/query-objects.js | 139 + .../runtime/run-script-async-expected.txt | 12 +- .../inspector/runtime/run-script-async.js | 2 +- ...able-preserve-injected-script-expected.txt | 26 + ...untime-disable-preserve-injected-script.js | 25 + .../sessions/create-session-expected.txt | 8 +- ...gger-stepping-and-breakpoints-expected.txt | 105 +- .../debugger-stepping-and-breakpoints.js | 22 +- .../pause-on-console-assert-expected.txt | 10 +- .../runtime-console-api-called-expected.txt | 16 +- .../runtime-evaluate-exception-expected.txt | 24 +- deps/v8/test/inspector/task-runner.cc | 11 +- deps/v8/test/intl/general/case-mapping.js | 2 +- deps/v8/test/intl/general/invalid-locale.js | 39 + deps/v8/test/js-perf-test/Array/join.js | 52 + deps/v8/test/js-perf-test/Array/run.js | 2 + deps/v8/test/js-perf-test/Array/to-string.js | 52 + .../js-perf-test/Classes/leaf-constructors.js | 31 + deps/v8/test/js-perf-test/Classes/run.js | 1 + .../test/js-perf-test/Inspector/debugger.js | 41 +- deps/v8/test/js-perf-test/Inspector/run.js | 8 + deps/v8/test/js-perf-test/JSTests.json | 77 +- .../ManyClosures/create-many-closures.js | 51 + deps/v8/test/js-perf-test/ManyClosures/run.js | 26 + .../test/js-perf-test/Modules/basic-export.js | 55 +- .../test/js-perf-test/Modules/basic-import.js | 57 +- .../js-perf-test/Modules/basic-namespace.js | 34 +- deps/v8/test/js-perf-test/Modules/run.js | 10 +- deps/v8/test/js-perf-test/Modules/value.js | 21 + deps/v8/test/js-perf-test/Proxies/proxies.js | 314 +- .../TypedArrays/set-from-arraylike.js | 16 + .../TypedArrays/set-from-different-type.js | 42 + .../TypedArrays/set-from-same-type.js | 17 + ...e-inferrer-arg-1.js => await-non-async.js} | 7 +- deps/v8/test/message/await-non-async.out | 4 + .../message/call-undeclared-constructor.js | 5 + .../message/call-undeclared-constructor.out | 9 + .../destructuring-function-non-iterable.js | 6 + .../destructuring-function-non-iterable.out | 5 + ...destructuring-new-callable-non-iterable.js | 6 + ...estructuring-new-callable-non-iterable.out | 5 + ...destructuring-non-function-non-iterable.js | 6 + ...estructuring-non-function-non-iterable.out | 5 + .../message/fail/func-name-inferrer-arg-1.out | 8 - .../message/fail/func-name-inferrer-arg.out | 7 - deps/v8/test/message/get-iterator1.out | 4 +- .../v8/test/message/regress/regress-4829-1.js | 2 + .../test/message/regress/regress-4829-1.out | 2 +- .../v8/test/message/regress/regress-4829-2.js | 2 + .../test/message/regress/regress-4829-2.out | 2 +- deps/v8/test/message/testcfg.py | 2 +- deps/v8/test/message/typedarray.js | 6 + deps/v8/test/message/typedarray.out | 9 + deps/v8/test/message/var-conflict-in-with.js | 5 + deps/v8/test/message/var-conflict-in-with.out | 4 + .../mjsunit/accessors-on-global-object.js | 8 +- deps/v8/test/mjsunit/allocation-site-info.js | 3 +- deps/v8/test/mjsunit/arguments.js | 10 +- .../mjsunit/array-constructor-feedback.js | 3 +- deps/v8/test/mjsunit/array-feedback.js | 161 +- .../v8/test/mjsunit/array-literal-feedback.js | 146 +- .../test/mjsunit/array-literal-transitions.js | 9 +- deps/v8/test/mjsunit/array-push5.js | 2 +- deps/v8/test/mjsunit/array-shift5.js | 15 + deps/v8/test/mjsunit/array-store-and-grow.js | 2 +- deps/v8/test/mjsunit/asm/poppler/poppler.js | 4 +- deps/v8/test/mjsunit/asm/regress-674089.js | 2 +- deps/v8/test/mjsunit/assert-opt-and-deopt.js | 164 - deps/v8/test/mjsunit/code-coverage-ad-hoc.js | 25 +- .../test/mjsunit/code-coverage-block-noopt.js | 43 + .../test/mjsunit/code-coverage-block-opt.js | 46 + deps/v8/test/mjsunit/code-coverage-block.js | 221 +- deps/v8/test/mjsunit/code-coverage-precise.js | 20 +- deps/v8/test/mjsunit/code-coverage-utils.js | 49 + .../mjsunit/compiler/alloc-object-huge.js | 4 +- ...-no-harmony-restrict-constructor-return.js | 2 +- .../mjsunit/compiler/constructor-inlining.js | 2 +- .../mjsunit/compiler/deopt-eager-and-lazy.js | 27 + .../compiler/deopt-eager-var-mutation-ite.js | 28 + .../compiler/deopt-eager-with-freeze.js | 20 + .../mjsunit/compiler/deopt-followed-by-gc.js | 23 + .../compiler/deopt-inlined-from-call.js | 2 +- .../mjsunit/compiler/deopt-lazy-freeze.js | 28 + .../compiler/deopt-lazy-shape-mutation.js | 23 + .../compiler/deopt-lazy-var-mutation.js | 26 + .../test/mjsunit/compiler/deopt-many-lazy.js | 33 + .../test/mjsunit/compiler/deopt-now-lazy.js | 12 + .../mjsunit/compiler/deopt-simple-eager.js | 17 + .../mjsunit/compiler/deopt-simple-lazy.js | 19 + .../mjsunit/compiler/deopt-soft-simple.js | 21 + .../mjsunit/compiler/deopt-twice-on-call.js | 22 + deps/v8/test/mjsunit/compiler/deopt-twice.js | 18 + .../mjsunit/compiler/deoptimize-lazy-weak.js | 47 + .../mjsunit/compiler/escape-analysis-cycle.js | 22 + ...cape-analysis-type-none-in-object-state.js | 23 + .../compiler/escape-analysis-typeguard.js | 23 + ...ative-context-specialization-hole-check.js | 2 +- ...ve-context-specialization-string-concat.js | 4 +- .../v8/test/mjsunit/compiler/osr-try-catch.js | 59 + .../test/mjsunit/compiler/regress-758983.js | 19 + .../test/mjsunit/compiler/regress-v8-6631.js | 22 + .../mjsunit/compiler/string-add-try-catch.js | 2 +- .../compiler/string-concat-try-catch.js | 2 +- deps/v8/test/mjsunit/count-based-osr.js | 38 - deps/v8/test/mjsunit/cyrillic.js | 2 +- deps/v8/test/mjsunit/d8-worker.js | 9 + deps/v8/test/mjsunit/date-parse.js | 2 +- .../mjsunit/deopt-recursive-eager-once.js | 5 +- .../test/mjsunit/deopt-recursive-lazy-once.js | 5 +- .../test/mjsunit/deopt-recursive-soft-once.js | 5 +- deps/v8/test/mjsunit/deopt-unlinked.js | 6 +- deps/v8/test/mjsunit/deopt-with-fp-regs.js | 2 +- .../mjsunit/ensure-growing-store-learns.js | 2 +- deps/v8/test/mjsunit/es6/array-species.js | 5 +- deps/v8/test/mjsunit/es6/new-target.js | 62 + deps/v8/test/mjsunit/es6/proxies-construct.js | 14 + deps/v8/test/mjsunit/es6/proxies-get.js | 86 + deps/v8/test/mjsunit/es6/proxies-has.js | 67 +- .../mjsunit/es6/reflect-define-property.js | 2 +- deps/v8/test/mjsunit/es6/templates.js | 2 + deps/v8/test/mjsunit/es6/typedarray-slice.js | 2 +- deps/v8/test/mjsunit/es6/typedarray.js | 5 + deps/v8/test/mjsunit/es8/async-await-basic.js | 39 + deps/v8/test/mjsunit/field-type-tracking.js | 2 +- deps/v8/test/mjsunit/getters-on-elements.js | 2 +- .../harmony/async-generators-resume-return.js | 150 + .../harmony/async-generators-return.js | 119 + .../mjsunit/harmony/async-generators-yield.js | 68 + .../do-expressions-arrow-param-scope.js | 95 + .../v8/test/mjsunit/harmony/do-expressions.js | 3 +- .../harmony/intl-pluralrules-select.js | 52 + .../test/mjsunit/harmony/modules-import-16.js | 36 + .../test/mjsunit/harmony/private-symbols.js | 3 +- .../harmony/promise-prototype-finally.js | 659 ++-- .../mjsunit/harmony/regexp-dotall-disabled.js | 71 - deps/v8/test/mjsunit/harmony/regexp-dotall.js | 2 - .../harmony/regexp-property-char-class.js | 3 +- deps/v8/test/mjsunit/hash-code.js | 25 + .../ignition/ignition-statistics-extension.js | 2 +- .../mjsunit/ignition/osr-from-bytecode.js | 2 +- deps/v8/test/mjsunit/ignition/print-ast.js | 13 + .../ignition/regress-599001-verifyheap.js | 2 +- .../test/mjsunit/ignition/regress-616064.js | 2 - .../v8/test/mjsunit/ignition/throw-if-hole.js | 2 +- .../mjsunit/keyed-load-hole-to-undefined.js | 3 +- .../mjsunit/keyed-load-with-symbol-key.js | 2 +- deps/v8/test/mjsunit/large-object-literal.js | 2 +- deps/v8/test/mjsunit/messages.js | 21 +- deps/v8/test/mjsunit/migrations.js | 2 +- deps/v8/test/mjsunit/mjsunit.js | 131 +- deps/v8/test/mjsunit/mjsunit.status | 31 +- deps/v8/test/mjsunit/modules-init4.js | 8 + deps/v8/test/mjsunit/modules-skip-init4a.js | 8 + deps/v8/test/mjsunit/modules-skip-init4b.js | 7 + deps/v8/test/mjsunit/never-baseline.js | 24 - .../v8/test/mjsunit/object-define-property.js | 2 +- deps/v8/test/mjsunit/object-seal.js | 2 +- deps/v8/test/mjsunit/optimized-foreach.js | 36 +- deps/v8/test/mjsunit/optimized-map.js | 73 +- deps/v8/test/mjsunit/parse-tasks.js | 55 - deps/v8/test/mjsunit/regress/regress-1708.js | 2 +- deps/v8/test/mjsunit/regress/regress-2595.js | 2 +- deps/v8/test/mjsunit/regress/regress-2618.js | 15 +- .../v8/test/mjsunit/regress/regress-336820.js | 2 +- .../v8/test/mjsunit/regress/regress-347914.js | 3 +- .../v8/test/mjsunit/regress/regress-3650-3.js | 2 +- deps/v8/test/mjsunit/regress/regress-3709.js | 2 +- deps/v8/test/mjsunit/regress/regress-3718.js | 1 + .../v8/test/mjsunit/regress/regress-385565.js | 2 +- deps/v8/test/mjsunit/regress/regress-394.js | 4 +- deps/v8/test/mjsunit/regress/regress-5252.js | 2 +- deps/v8/test/mjsunit/regress/regress-5262.js | 2 +- deps/v8/test/mjsunit/regress/regress-5404.js | 6 +- .../v8/test/mjsunit/regress/regress-605470.js | 2 - .../v8/test/mjsunit/regress/regress-618657.js | 2 - deps/v8/test/mjsunit/regress/regress-6288.js | 2 +- .../v8/test/mjsunit/regress/regress-632289.js | 2 +- .../v8/test/mjsunit/regress/regress-639270.js | 2 +- .../v8/test/mjsunit/regress/regress-653407.js | 2 +- .../v8/test/mjsunit/regress/regress-655573.js | 2 + deps/v8/test/mjsunit/regress/regress-6677.js | 27 + deps/v8/test/mjsunit/regress/regress-6681.js | 10 + deps/v8/test/mjsunit/regress/regress-6700.js | 90 + deps/v8/test/mjsunit/regress/regress-6707.js | 13 + deps/v8/test/mjsunit/regress/regress-6708.js | 12 + deps/v8/test/mjsunit/regress/regress-6733.js | 22 + .../v8/test/mjsunit/regress/regress-677685.js | 2 +- .../v8/test/mjsunit/regress/regress-678917.js | 2 +- .../v8/test/mjsunit/regress/regress-718891.js | 2 +- .../v8/test/mjsunit/regress/regress-746909.js | 8 + .../v8/test/mjsunit/regress/regress-748069.js | 12 + .../v8/test/mjsunit/regress/regress-751789.js | 5 + .../v8/test/mjsunit/regress/regress-752764.js | 8 + .../v8/test/mjsunit/regress/regress-756608.js | 7 + .../v8/test/mjsunit/regress/regress-758763.js | 7 + .../v8/test/mjsunit/regress/regress-761831.js | 13 + .../v8/test/mjsunit/regress/regress-776338.js | 44 + .../mjsunit/regress/regress-crbug-632800.js | 2 +- .../mjsunit/regress/regress-crbug-635923.js | 2 +- .../mjsunit/regress/regress-crbug-638551.js | 2 +- .../mjsunit/regress/regress-crbug-644111.js | 2 +- .../mjsunit/regress/regress-crbug-645103.js | 2 +- .../mjsunit/regress/regress-crbug-645888.js | 2 +- .../mjsunit/regress/regress-crbug-647217.js | 2 +- .../mjsunit/regress/regress-crbug-651403.js | 2 +- .../mjsunit/regress/regress-crbug-658691.js | 2 +- .../mjsunit/regress/regress-crbug-668795.js | 2 +- .../mjsunit/regress/regress-crbug-702798.js | 2 +- .../mjsunit/regress/regress-crbug-722783.js | 21 + .../mjsunit/regress/regress-crbug-740398.js | 8 +- .../mjsunit/regress/regress-crbug-740591.js | 32 + .../mjsunit/regress/regress-crbug-743154.js | 22 + .../mjsunit/regress/regress-crbug-746835.js | 112 + .../mjsunit/regress/regress-crbug-747062.js | 37 + .../regress/regress-crbug-751109.js} | 7 +- .../mjsunit/regress/regress-crbug-751715.js | 16 + .../mjsunit/regress/regress-crbug-752481.js | 32 + .../mjsunit/regress/regress-crbug-752712.js | 24 + .../mjsunit/regress/regress-crbug-752826.js | 22 + .../mjsunit/regress/regress-crbug-752846.js | 21 + .../mjsunit/regress/regress-crbug-754175.js | 19 + .../mjsunit/regress/regress-crbug-754177.js | 12 + .../mjsunit/regress/regress-crbug-755044.js | 15 + .../mjsunit/regress/regress-crbug-756332.js | 13 + .../mjsunit/regress/regress-crbug-757199.js | 31 + .../mjsunit/regress/regress-crbug-758773.js | 6 + .../mjsunit/regress/regress-crbug-759327.js | 23 + .../mjsunit/regress/regress-crbug-762472.js | 26 + .../mjsunit/regress/regress-crbug-762874-1.js | 2 +- .../mjsunit/regress/regress-crbug-762874-2.js | 2 +- .../mjsunit/regress/regress-crbug-763683.js | 22 + .../mjsunit/regress/regress-crbug-768158.js | 23 + .../mjsunit/regress/regress-crbug-771428.js | 24 + .../regress/regress-regexp-codeflush.js | 2 +- .../test/mjsunit/regress/regress-v8-6706.js | 37 + .../test/mjsunit/regress/regress-v8-6712.js | 16 + .../mjsunit/regress/wasm/regress-776677.js | 30 + .../mjsunit/regress/wasm/regression-648079.js | 5 + .../mjsunit/regress/wasm/regression-702460.js | 5 + .../mjsunit/regress/wasm/regression-739768.js | 2 +- .../mjsunit/regress/wasm/regression-753496.js | 17 + .../mjsunit/regress/wasm/regression-757217.js | 20 + .../mjsunit/regress/wasm/regression-763439.js | 22 + .../mjsunit/shared-function-tier-up-turbo.js | 2 +- .../skipping-inner-functions-bailout.js | 78 + .../test/mjsunit/skipping-inner-functions.js | 96 +- deps/v8/test/mjsunit/smi-mul-const.js | 2 +- deps/v8/test/mjsunit/smi-mul.js | 2 +- deps/v8/test/mjsunit/stack-traces-custom.js | 25 + deps/v8/test/mjsunit/string-oom-array-join.js | 7 +- ...g-oom-replace-global-regexp-with-string.js | 11 +- ...oom-replace-regexp-global-with-function.js | 8 +- .../type-profile/collect-type-profile.js | 14 +- deps/v8/test/mjsunit/unicode-test.js | 6 +- deps/v8/test/mjsunit/wasm/OWNERS | 1 + deps/v8/test/mjsunit/wasm/async-compile.js | 2 +- deps/v8/test/mjsunit/wasm/atomics.js | 257 ++ .../test/mjsunit/wasm/bounds-check-64bit.js | 33 + .../wasm/compiled-module-management.js | 2 + .../wasm/compiled-module-serialization.js | 2 +- deps/v8/test/mjsunit/wasm/errors.js | 105 +- deps/v8/test/mjsunit/wasm/exceptions.js | 80 +- deps/v8/test/mjsunit/wasm/export-global.js | 17 + .../mjsunit/wasm/grow-memory-in-branch.js | 292 ++ .../test/mjsunit/wasm/grow-memory-in-call.js | 437 +++ .../test/mjsunit/wasm/grow-memory-in-loop.js | 253 ++ deps/v8/test/mjsunit/wasm/grow-memory.js | 5 +- deps/v8/test/mjsunit/wasm/import-memory.js | 64 +- deps/v8/test/mjsunit/wasm/indirect-calls.js | 4 +- deps/v8/test/mjsunit/wasm/indirect-tables.js | 51 +- .../v8/test/mjsunit/wasm/interpreter-mixed.js | 117 + deps/v8/test/mjsunit/wasm/js-api.js | 34 +- deps/v8/test/mjsunit/wasm/jsapi-harness.js | 43 +- deps/v8/test/mjsunit/wasm/many-parameters.js | 55 + deps/v8/test/mjsunit/wasm/memory.js | 3 +- deps/v8/test/mjsunit/wasm/table-grow.js | 302 ++ deps/v8/test/mjsunit/wasm/table.js | 4 + .../mjsunit/wasm/test-wasm-module-builder.js | 9 + deps/v8/test/mjsunit/wasm/trap-location.js | 46 +- deps/v8/test/mjsunit/wasm/wasm-constants.js | 87 +- .../test/mjsunit/wasm/wasm-module-builder.js | 61 +- deps/v8/test/mozilla/mozilla.status | 8 +- deps/v8/test/promises-aplus/lib/require.js | 2 +- deps/v8/test/test262/test262.status | 80 +- deps/v8/test/test262/testcfg.py | 1 - deps/v8/test/unittests/BUILD.gn | 6 +- .../unittests/api/remote-object-unittest.cc | 6 +- .../test/unittests/api/v8-object-unittest.cc | 194 ++ .../unittests/asmjs/asm-scanner-unittest.cc | 144 +- .../unittests/asmjs/asm-types-unittest.cc | 198 -- .../unittests/base/atomic-utils-unittest.cc | 272 +- .../v8/test/unittests/base/macros-unittest.cc | 25 + .../test/unittests/base/ostreams-unittest.cc | 67 + .../unittests/base/platform/time-unittest.cc | 4 +- .../unittests/base/template-utils-unittest.cc | 84 + .../compiler-dispatcher-tracer-unittest.cc | 4 +- .../compiler-dispatcher-unittest.cc | 377 +-- .../optimizing-compile-dispatcher-unittest.cc | 10 +- ...cc => unoptimized-compile-job-unittest.cc} | 255 +- .../compiler/bytecode-analysis-unittest.cc | 74 +- .../compiler/graph-reducer-unittest.cc | 12 +- .../compiler/instruction-selector-unittest.cc | 2 +- .../compiler/js-builtin-reducer-unittest.cc | 3 +- .../js-intrinsic-lowering-unittest.cc | 3 +- .../compiler/js-operator-unittest.cc | 1 - .../compiler/js-typed-lowering-unittest.cc | 240 +- .../compiler/load-elimination-unittest.cc | 17 +- .../instruction-selector-mips-unittest.cc | 4 +- .../instruction-selector-mips64-unittest.cc | 4 +- .../unittests/compiler/node-test-utils.cc | 152 - .../unittests/compiler/persistent-unittest.cc | 126 + .../compiler/simplified-operator-unittest.cc | 75 - .../compiler/typed-optimization-unittest.cc | 4 +- deps/v8/test/unittests/heap/heap-unittest.cc | 21 +- .../test/unittests/heap/unmapper-unittest.cc | 2 - .../bytecode-array-builder-unittest.cc | 13 +- .../interpreter-assembler-unittest.cc | 21 - deps/v8/test/unittests/test-helpers.cc | 2 +- deps/v8/test/unittests/test-helpers.h | 11 - deps/v8/test/unittests/unittests.gyp | 6 +- .../unittests/value-serializer-unittest.cc | 28 +- deps/v8/test/unittests/wasm/OWNERS | 1 + .../wasm/function-body-decoder-unittest.cc | 350 +- .../unittests/wasm/module-decoder-unittest.cc | 196 +- .../v8/test/wasm-spec-tests/tests.tar.gz.sha1 | 2 +- .../array-reset-large-index-expected.txt | 2 +- .../v8/test/webkit/array-reset-large-index.js | 2 +- deps/v8/test/webkit/dfg-inline-unused-this.js | 2 +- .../test/webkit/dfg-intrinsic-unused-this.js | 2 +- .../webkit/fast/js/kde/Number-expected.txt | 18 +- deps/v8/test/webkit/fast/js/kde/operators.js | 2 +- .../fast/js/number-tofixed-expected.txt | 20 +- .../fast/js/number-toprecision-expected.txt | 22 +- .../test/webkit/fast/js/read-modify-eval.js | 2 +- .../webkit/number-toExponential-expected.txt | 12 +- .../webkit/regexp-compile-crash-expected.txt | 2 +- deps/v8/test/webkit/regexp-compile-crash.js | 2 +- deps/v8/test/webkit/webkit.status | 4 +- deps/v8/tools/adb-d8.py | 241 ++ deps/v8/tools/callstats.html | 3 +- deps/v8/tools/callstats.py | 3 +- deps/v8/tools/check-unused-bailouts.sh | 23 +- deps/v8/tools/concatenate-files.py | 6 +- .../tools/foozzie/testdata/failure_output.txt | 4 +- deps/v8/tools/foozzie/v8_foozzie.py | 19 +- deps/v8/tools/gcmole/gcmole.lua | 11 +- deps/v8/tools/grokdump.py | 3 +- deps/v8/tools/ic-explorer.html | 13 +- deps/v8/tools/ic-processor.js | 29 - deps/v8/tools/js2c.py | 4 +- deps/v8/tools/linux-tick-processor | 3 +- deps/v8/tools/luci-go/linux64/isolate.sha1 | 2 +- deps/v8/tools/luci-go/mac64/isolate.sha1 | 2 +- deps/v8/tools/luci-go/win64/isolate.exe.sha1 | 2 +- deps/v8/tools/mb/docs/design_spec.md | 4 +- deps/v8/tools/mb/docs/user_guide.md | 27 +- deps/v8/tools/mb/mb.py | 592 ++-- deps/v8/tools/mb/mb_unittest.py | 274 +- deps/v8/tools/presubmit.py | 24 + deps/v8/tools/profile.js | 105 +- deps/v8/tools/profview/profile-utils.js | 19 +- deps/v8/tools/profview/profview.js | 12 + .../tools/profviz/gnuplot-4.6.3-emscripten.js | 4 +- deps/v8/tools/release/backport_node.py | 4 +- deps/v8/tools/release/test_backport_node.py | 2 +- deps/v8/tools/release/update_node.py | 2 +- deps/v8/tools/run-deopt-fuzzer.py | 1 + deps/v8/tools/run-tests.py | 22 +- deps/v8/tools/stats-viewer.py | 4 +- deps/v8/tools/testrunner/local/testsuite.py | 21 +- deps/v8/tools/testrunner/local/variants.py | 10 +- deps/v8/tools/testrunner/testrunner.isolate | 8 +- .../testrunner/utils/dump_build_config.py | 4 +- .../testrunner/utils/dump_build_config_gyp.py | 54 + deps/v8/tools/tickprocessor.js | 31 +- deps/v8/tools/ubsan/vptr_blacklist.txt | 12 + deps/v8/tools/v8heapconst.py | 317 +- deps/v8/tools/whitespace.txt | 2 +- 1543 files changed, 66260 insertions(+), 101544 deletions(-) create mode 100644 deps/v8/.editorconfig create mode 100755 deps/v8/gypfiles/run-tests-legacy.py rename deps/v8/src/arm/{frames-arm.cc => frame-constants-arm.cc} (80%) create mode 100644 deps/v8/src/arm/frame-constants-arm.h delete mode 100644 deps/v8/src/arm/frames-arm.h rename deps/v8/src/arm64/{frames-arm64.cc => frame-constants-arm64.cc} (77%) rename deps/v8/src/arm64/{frames-arm64.h => frame-constants-arm64.h} (56%) create mode 100644 deps/v8/src/base/atomicops_internals_std.h delete mode 100644 deps/v8/src/base/atomicops_internals_x86_msvc.h rename deps/v8/src/{float.h => boxed-float.h} (85%) delete mode 100644 deps/v8/src/builtins/builtins-conversion-gen.h create mode 100644 deps/v8/src/builtins/builtins-proxy-gen.h create mode 100644 deps/v8/src/builtins/builtins-proxy-helpers-gen.cc create mode 100644 deps/v8/src/builtins/builtins-proxy-helpers-gen.h create mode 100644 deps/v8/src/compiler-dispatcher/unoptimized-compile-job.cc create mode 100644 deps/v8/src/compiler-dispatcher/unoptimized-compile-job.h delete mode 100644 deps/v8/src/compiler/ast-graph-builder.cc delete mode 100644 deps/v8/src/compiler/ast-graph-builder.h delete mode 100644 deps/v8/src/compiler/ast-loop-assignment-analyzer.cc delete mode 100644 deps/v8/src/compiler/ast-loop-assignment-analyzer.h delete mode 100644 deps/v8/src/compiler/check-elimination.cc delete mode 100644 deps/v8/src/compiler/check-elimination.h delete mode 100644 deps/v8/src/compiler/control-builders.cc delete mode 100644 deps/v8/src/compiler/control-builders.h delete mode 100644 deps/v8/src/compiler/js-frame-specialization.cc delete mode 100644 deps/v8/src/compiler/js-frame-specialization.h create mode 100644 deps/v8/src/compiler/new-escape-analysis-reducer.cc create mode 100644 deps/v8/src/compiler/new-escape-analysis-reducer.h create mode 100644 deps/v8/src/compiler/new-escape-analysis.cc create mode 100644 deps/v8/src/compiler/new-escape-analysis.h create mode 100644 deps/v8/src/compiler/persistent-map.h create mode 100644 deps/v8/src/debug/debug-scope-iterator.cc create mode 100644 deps/v8/src/debug/debug-scope-iterator.h create mode 100644 deps/v8/src/debug/debug-stack-trace-iterator.cc create mode 100644 deps/v8/src/debug/debug-stack-trace-iterator.h create mode 100644 deps/v8/src/frame-constants.h delete mode 100644 deps/v8/src/full-codegen/OWNERS delete mode 100644 deps/v8/src/full-codegen/arm/full-codegen-arm.cc delete mode 100644 deps/v8/src/full-codegen/arm64/full-codegen-arm64.cc delete mode 100644 deps/v8/src/full-codegen/full-codegen.cc delete mode 100644 deps/v8/src/full-codegen/full-codegen.h delete mode 100644 deps/v8/src/full-codegen/ia32/full-codegen-ia32.cc delete mode 100644 deps/v8/src/full-codegen/mips/OWNERS delete mode 100644 deps/v8/src/full-codegen/mips/full-codegen-mips.cc delete mode 100644 deps/v8/src/full-codegen/mips64/OWNERS delete mode 100644 deps/v8/src/full-codegen/mips64/full-codegen-mips64.cc delete mode 100644 deps/v8/src/full-codegen/ppc/OWNERS delete mode 100644 deps/v8/src/full-codegen/ppc/full-codegen-ppc.cc delete mode 100644 deps/v8/src/full-codegen/s390/OWNERS delete mode 100644 deps/v8/src/full-codegen/s390/full-codegen-s390.cc delete mode 100644 deps/v8/src/full-codegen/x64/full-codegen-x64.cc create mode 100644 deps/v8/src/heap/invalidated-slots-inl.h create mode 100644 deps/v8/src/heap/invalidated-slots.cc create mode 100644 deps/v8/src/heap/invalidated-slots.h rename deps/v8/src/ia32/{frames-ia32.cc => frame-constants-ia32.cc} (77%) rename deps/v8/src/ia32/{frames-ia32.h => frame-constants-ia32.h} (53%) delete mode 100644 deps/v8/src/ic/arm/ic-arm.cc delete mode 100644 deps/v8/src/ic/arm64/ic-arm64.cc create mode 100644 deps/v8/src/ic/handler-configuration.cc delete mode 100644 deps/v8/src/ic/ia32/ic-ia32.cc delete mode 100644 deps/v8/src/ic/ic-state.cc delete mode 100644 deps/v8/src/ic/ic-state.h delete mode 100644 deps/v8/src/ic/mips/ic-mips.cc delete mode 100644 deps/v8/src/ic/mips64/ic-mips64.cc delete mode 100644 deps/v8/src/ic/ppc/ic-ppc.cc delete mode 100644 deps/v8/src/ic/s390/ic-s390.cc delete mode 100644 deps/v8/src/ic/x64/ic-x64.cc delete mode 100644 deps/v8/src/inspector/debugger-script.js delete mode 100644 deps/v8/src/inspector/debugger_script_externs.js delete mode 100644 deps/v8/src/inspector/java-script-call-frame.cc delete mode 100644 deps/v8/src/inspector/java-script-call-frame.h rename deps/v8/src/inspector/{v8-value-copier.cc => v8-value-utils.cc} (62%) rename deps/v8/src/inspector/{v8-value-copier.h => v8-value-utils.h} (74%) delete mode 100644 deps/v8/src/js/collection.js rename deps/v8/src/mips/{frames-mips.cc => frame-constants-mips.cc} (77%) create mode 100644 deps/v8/src/mips/frame-constants-mips.h delete mode 100644 deps/v8/src/mips/frames-mips.h rename deps/v8/src/mips64/{frames-mips64.cc => frame-constants-mips64.cc} (77%) create mode 100644 deps/v8/src/mips64/frame-constants-mips64.h delete mode 100644 deps/v8/src/mips64/frames-mips64.h delete mode 100644 deps/v8/src/objects/module-info.h create mode 100644 deps/v8/src/objects/module-inl.h create mode 100644 deps/v8/src/objects/module.cc create mode 100644 deps/v8/src/objects/module.h rename deps/v8/src/parsing/{parameter-initializer-rewriter.cc => expression-scope-reparenter.cc} (60%) rename deps/v8/src/parsing/{parameter-initializer-rewriter.h => expression-scope-reparenter.h} (73%) rename deps/v8/src/ppc/{frames-ppc.cc => frame-constants-ppc.cc} (91%) create mode 100644 deps/v8/src/ppc/frame-constants-ppc.h delete mode 100644 deps/v8/src/ppc/frames-ppc.h create mode 100644 deps/v8/src/reglist.h rename deps/v8/src/s390/{frames-s390.cc => frame-constants-s390.cc} (79%) create mode 100644 deps/v8/src/s390/frame-constants-s390.h delete mode 100644 deps/v8/src/s390/frames-s390.h create mode 100644 deps/v8/src/snapshot/object-deserializer.cc create mode 100644 deps/v8/src/snapshot/object-deserializer.h create mode 100644 deps/v8/src/snapshot/partial-deserializer.cc create mode 100644 deps/v8/src/snapshot/partial-deserializer.h create mode 100644 deps/v8/src/snapshot/startup-deserializer.cc create mode 100644 deps/v8/src/snapshot/startup-deserializer.h create mode 100644 deps/v8/src/wasm/wasm-api.cc create mode 100644 deps/v8/src/wasm/wasm-api.h rename deps/v8/src/x64/{frames-x64.cc => frame-constants-x64.cc} (77%) rename deps/v8/src/x64/{frames-x64.h => frame-constants-x64.h} (70%) create mode 100644 deps/v8/test/cctest/compiler/test-code-generator.cc delete mode 100644 deps/v8/test/cctest/compiler/test-loop-assignment-analysis.cc create mode 100644 deps/v8/test/cctest/heap/test-invalidated-slots.cc create mode 100644 deps/v8/test/cctest/test-allocation.cc delete mode 100644 deps/v8/test/cctest/test-ast.cc create mode 100644 deps/v8/test/cctest/test-hashcode.cc delete mode 100644 deps/v8/test/cctest/test-hashing.cc delete mode 100644 deps/v8/test/cctest/test-macro-assembler-ia32.cc create mode 100644 deps/v8/test/cctest/test-transitions.h create mode 100644 deps/v8/test/cctest/wasm/test-c-wasm-entry.cc create mode 100644 deps/v8/test/cctest/wasm/test-run-wasm-atomics.cc create mode 100644 deps/v8/test/fuzzer/wasm_async/valid.wasm delete mode 100644 deps/v8/test/inspector/console/let-const-with-api-expected.txt delete mode 100644 deps/v8/test/inspector/console/let-const-with-api.js create mode 100644 deps/v8/test/inspector/console/scoped-variables-expected.txt create mode 100644 deps/v8/test/inspector/console/scoped-variables.js create mode 100644 deps/v8/test/inspector/debugger/clear-breakpoints-on-disable-expected.txt create mode 100644 deps/v8/test/inspector/debugger/clear-breakpoints-on-disable.js delete mode 100644 deps/v8/test/inspector/debugger/max-async-call-stack-depth-changed-expected.txt delete mode 100644 deps/v8/test/inspector/debugger/max-async-call-stack-depth-changed.js create mode 100644 deps/v8/test/inspector/debugger/pause-at-negative-offset-expected.txt create mode 100644 deps/v8/test/inspector/debugger/pause-at-negative-offset.js delete mode 100644 deps/v8/test/inspector/debugger/script-with-negative-offset-expected.txt delete mode 100644 deps/v8/test/inspector/debugger/script-with-negative-offset.js create mode 100644 deps/v8/test/inspector/debugger/set-script-source-2-expected.txt create mode 100644 deps/v8/test/inspector/debugger/set-script-source-2.js create mode 100644 deps/v8/test/inspector/runtime/query-objects-expected.txt create mode 100644 deps/v8/test/inspector/runtime/query-objects.js create mode 100644 deps/v8/test/inspector/runtime/runtime-disable-preserve-injected-script-expected.txt create mode 100644 deps/v8/test/inspector/runtime/runtime-disable-preserve-injected-script.js create mode 100644 deps/v8/test/intl/general/invalid-locale.js create mode 100644 deps/v8/test/js-perf-test/Array/join.js create mode 100644 deps/v8/test/js-perf-test/Array/to-string.js create mode 100644 deps/v8/test/js-perf-test/Classes/leaf-constructors.js create mode 100644 deps/v8/test/js-perf-test/ManyClosures/create-many-closures.js create mode 100644 deps/v8/test/js-perf-test/ManyClosures/run.js create mode 100644 deps/v8/test/js-perf-test/TypedArrays/set-from-arraylike.js create mode 100644 deps/v8/test/js-perf-test/TypedArrays/set-from-different-type.js create mode 100644 deps/v8/test/js-perf-test/TypedArrays/set-from-same-type.js rename deps/v8/test/message/{fail/func-name-inferrer-arg-1.js => await-non-async.js} (62%) create mode 100644 deps/v8/test/message/await-non-async.out create mode 100644 deps/v8/test/message/call-undeclared-constructor.js create mode 100644 deps/v8/test/message/call-undeclared-constructor.out create mode 100644 deps/v8/test/message/destructuring-function-non-iterable.js create mode 100644 deps/v8/test/message/destructuring-function-non-iterable.out create mode 100644 deps/v8/test/message/destructuring-new-callable-non-iterable.js create mode 100644 deps/v8/test/message/destructuring-new-callable-non-iterable.out create mode 100644 deps/v8/test/message/destructuring-non-function-non-iterable.js create mode 100644 deps/v8/test/message/destructuring-non-function-non-iterable.out delete mode 100644 deps/v8/test/message/fail/func-name-inferrer-arg-1.out delete mode 100644 deps/v8/test/message/fail/func-name-inferrer-arg.out create mode 100644 deps/v8/test/message/typedarray.js create mode 100644 deps/v8/test/message/typedarray.out create mode 100644 deps/v8/test/message/var-conflict-in-with.js create mode 100644 deps/v8/test/message/var-conflict-in-with.out delete mode 100644 deps/v8/test/mjsunit/assert-opt-and-deopt.js create mode 100644 deps/v8/test/mjsunit/code-coverage-block-noopt.js create mode 100644 deps/v8/test/mjsunit/code-coverage-block-opt.js create mode 100644 deps/v8/test/mjsunit/code-coverage-utils.js create mode 100644 deps/v8/test/mjsunit/compiler/deopt-eager-and-lazy.js create mode 100644 deps/v8/test/mjsunit/compiler/deopt-eager-var-mutation-ite.js create mode 100644 deps/v8/test/mjsunit/compiler/deopt-eager-with-freeze.js create mode 100644 deps/v8/test/mjsunit/compiler/deopt-followed-by-gc.js create mode 100644 deps/v8/test/mjsunit/compiler/deopt-lazy-freeze.js create mode 100644 deps/v8/test/mjsunit/compiler/deopt-lazy-shape-mutation.js create mode 100644 deps/v8/test/mjsunit/compiler/deopt-lazy-var-mutation.js create mode 100644 deps/v8/test/mjsunit/compiler/deopt-many-lazy.js create mode 100644 deps/v8/test/mjsunit/compiler/deopt-now-lazy.js create mode 100644 deps/v8/test/mjsunit/compiler/deopt-simple-eager.js create mode 100644 deps/v8/test/mjsunit/compiler/deopt-simple-lazy.js create mode 100644 deps/v8/test/mjsunit/compiler/deopt-soft-simple.js create mode 100644 deps/v8/test/mjsunit/compiler/deopt-twice-on-call.js create mode 100644 deps/v8/test/mjsunit/compiler/deopt-twice.js create mode 100644 deps/v8/test/mjsunit/compiler/deoptimize-lazy-weak.js create mode 100644 deps/v8/test/mjsunit/compiler/escape-analysis-cycle.js create mode 100644 deps/v8/test/mjsunit/compiler/escape-analysis-type-none-in-object-state.js create mode 100644 deps/v8/test/mjsunit/compiler/escape-analysis-typeguard.js create mode 100644 deps/v8/test/mjsunit/compiler/osr-try-catch.js create mode 100644 deps/v8/test/mjsunit/compiler/regress-758983.js create mode 100644 deps/v8/test/mjsunit/compiler/regress-v8-6631.js delete mode 100644 deps/v8/test/mjsunit/count-based-osr.js create mode 100644 deps/v8/test/mjsunit/harmony/async-generators-resume-return.js create mode 100644 deps/v8/test/mjsunit/harmony/async-generators-return.js create mode 100644 deps/v8/test/mjsunit/harmony/async-generators-yield.js create mode 100644 deps/v8/test/mjsunit/harmony/do-expressions-arrow-param-scope.js create mode 100644 deps/v8/test/mjsunit/harmony/intl-pluralrules-select.js create mode 100644 deps/v8/test/mjsunit/harmony/modules-import-16.js delete mode 100644 deps/v8/test/mjsunit/harmony/regexp-dotall-disabled.js create mode 100644 deps/v8/test/mjsunit/hash-code.js create mode 100644 deps/v8/test/mjsunit/ignition/print-ast.js create mode 100644 deps/v8/test/mjsunit/modules-init4.js create mode 100644 deps/v8/test/mjsunit/modules-skip-init4a.js create mode 100644 deps/v8/test/mjsunit/modules-skip-init4b.js delete mode 100644 deps/v8/test/mjsunit/never-baseline.js delete mode 100644 deps/v8/test/mjsunit/parse-tasks.js create mode 100644 deps/v8/test/mjsunit/regress/regress-6677.js create mode 100644 deps/v8/test/mjsunit/regress/regress-6681.js create mode 100644 deps/v8/test/mjsunit/regress/regress-6700.js create mode 100644 deps/v8/test/mjsunit/regress/regress-6707.js create mode 100644 deps/v8/test/mjsunit/regress/regress-6708.js create mode 100644 deps/v8/test/mjsunit/regress/regress-6733.js create mode 100644 deps/v8/test/mjsunit/regress/regress-746909.js create mode 100644 deps/v8/test/mjsunit/regress/regress-748069.js create mode 100644 deps/v8/test/mjsunit/regress/regress-751789.js create mode 100644 deps/v8/test/mjsunit/regress/regress-752764.js create mode 100644 deps/v8/test/mjsunit/regress/regress-756608.js create mode 100644 deps/v8/test/mjsunit/regress/regress-758763.js create mode 100644 deps/v8/test/mjsunit/regress/regress-761831.js create mode 100644 deps/v8/test/mjsunit/regress/regress-776338.js create mode 100644 deps/v8/test/mjsunit/regress/regress-crbug-722783.js create mode 100644 deps/v8/test/mjsunit/regress/regress-crbug-743154.js create mode 100644 deps/v8/test/mjsunit/regress/regress-crbug-746835.js create mode 100644 deps/v8/test/mjsunit/regress/regress-crbug-747062.js rename deps/v8/test/{message/fail/func-name-inferrer-arg.js => mjsunit/regress/regress-crbug-751109.js} (69%) create mode 100644 deps/v8/test/mjsunit/regress/regress-crbug-751715.js create mode 100644 deps/v8/test/mjsunit/regress/regress-crbug-752481.js create mode 100644 deps/v8/test/mjsunit/regress/regress-crbug-752712.js create mode 100644 deps/v8/test/mjsunit/regress/regress-crbug-752826.js create mode 100644 deps/v8/test/mjsunit/regress/regress-crbug-752846.js create mode 100644 deps/v8/test/mjsunit/regress/regress-crbug-754175.js create mode 100644 deps/v8/test/mjsunit/regress/regress-crbug-754177.js create mode 100644 deps/v8/test/mjsunit/regress/regress-crbug-755044.js create mode 100644 deps/v8/test/mjsunit/regress/regress-crbug-756332.js create mode 100644 deps/v8/test/mjsunit/regress/regress-crbug-757199.js create mode 100644 deps/v8/test/mjsunit/regress/regress-crbug-758773.js create mode 100644 deps/v8/test/mjsunit/regress/regress-crbug-759327.js create mode 100644 deps/v8/test/mjsunit/regress/regress-crbug-762472.js create mode 100644 deps/v8/test/mjsunit/regress/regress-crbug-763683.js create mode 100644 deps/v8/test/mjsunit/regress/regress-crbug-768158.js create mode 100644 deps/v8/test/mjsunit/regress/regress-crbug-771428.js create mode 100644 deps/v8/test/mjsunit/regress/regress-v8-6706.js create mode 100644 deps/v8/test/mjsunit/regress/regress-v8-6712.js create mode 100644 deps/v8/test/mjsunit/regress/wasm/regress-776677.js create mode 100644 deps/v8/test/mjsunit/regress/wasm/regression-753496.js create mode 100644 deps/v8/test/mjsunit/regress/wasm/regression-757217.js create mode 100644 deps/v8/test/mjsunit/regress/wasm/regression-763439.js create mode 100644 deps/v8/test/mjsunit/skipping-inner-functions-bailout.js create mode 100644 deps/v8/test/mjsunit/wasm/atomics.js create mode 100644 deps/v8/test/mjsunit/wasm/bounds-check-64bit.js create mode 100644 deps/v8/test/mjsunit/wasm/grow-memory-in-branch.js create mode 100644 deps/v8/test/mjsunit/wasm/grow-memory-in-call.js create mode 100644 deps/v8/test/mjsunit/wasm/grow-memory-in-loop.js create mode 100644 deps/v8/test/mjsunit/wasm/many-parameters.js create mode 100644 deps/v8/test/mjsunit/wasm/table-grow.js create mode 100644 deps/v8/test/unittests/base/macros-unittest.cc create mode 100644 deps/v8/test/unittests/base/ostreams-unittest.cc create mode 100644 deps/v8/test/unittests/base/template-utils-unittest.cc rename deps/v8/test/unittests/compiler-dispatcher/{compiler-dispatcher-job-unittest.cc => unoptimized-compile-job-unittest.cc} (51%) create mode 100644 deps/v8/test/unittests/compiler/persistent-unittest.cc create mode 100755 deps/v8/tools/adb-d8.py create mode 100644 deps/v8/tools/testrunner/utils/dump_build_config_gyp.py create mode 100644 deps/v8/tools/ubsan/vptr_blacklist.txt diff --git a/deps/v8/.editorconfig b/deps/v8/.editorconfig new file mode 100644 index 00000000000000..9d08a1a828a3bd --- /dev/null +++ b/deps/v8/.editorconfig @@ -0,0 +1,9 @@ +root = true + +[*] +charset = utf-8 +indent_style = space +indent_size = 2 +end_of_line = lf +insert_final_newline = true +trim_trailing_whitespace = true diff --git a/deps/v8/.gitignore b/deps/v8/.gitignore index b1f61ed6fcf908..cf459308893968 100644 --- a/deps/v8/.gitignore +++ b/deps/v8/.gitignore @@ -32,6 +32,7 @@ .project .pydevproject .settings +.vscode /_* /build /buildtools diff --git a/deps/v8/AUTHORS b/deps/v8/AUTHORS index 048702701c4211..c54cad02b2d15e 100644 --- a/deps/v8/AUTHORS +++ b/deps/v8/AUTHORS @@ -28,6 +28,8 @@ Amazon, Inc <*@amazon.com> ST Microelectronics <*@st.com> Yandex LLC <*@yandex-team.ru> StrongLoop, Inc. <*@strongloop.com> +Facebook, Inc. <*@fb.com> +Facebook, Inc. <*@oculus.com> Aaron Bieber Abdulla Kamar @@ -88,6 +90,7 @@ Luis Reis Luke Zarko Maciej Małecki Marcin Cieślak +Mateusz Czeladka Mathias Bynens Matt Hanselman Matthew Sporleder @@ -100,12 +103,14 @@ Mike Pennisi Milton Chiang Myeong-bo Shim Nicolas Antonius Ernst Leopold Maria Kaiser +Niklas Hambüchen Noj Vek Oleksandr Chekhovskyi Paolo Giarrusso Patrick Gansterer Peter Rybin Peter Varga +Peter Wong Paul Lind Qiuyi Zhang Rafal Krypa @@ -130,4 +135,4 @@ Wiktor Garbacz Yu Yin Zac Hansen Zhongping Wang -柳荣一 +柳荣一 \ No newline at end of file diff --git a/deps/v8/BUILD.gn b/deps/v8/BUILD.gn index 494ba22f2934d6..9d95036a958fc8 100644 --- a/deps/v8/BUILD.gn +++ b/deps/v8/BUILD.gn @@ -6,6 +6,7 @@ import("//build/config/android/config.gni") import("//build/config/arm.gni") import("//build/config/dcheck_always_on.gni") import("//build/config/host_byteorder.gni") +import("//build/config/jumbo.gni") import("//build/config/mips.gni") import("//build/config/sanitizers/sanitizers.gni") @@ -57,6 +58,9 @@ declare_args() { # Enable slow dchecks. v8_enable_slow_dchecks = false + # Enable fast mksnapshot runs. + v8_enable_fast_mksnapshot = false + # Enable code-generation-time checking of types in the CodeStubAssembler. v8_enable_verify_csa = false @@ -79,6 +83,9 @@ declare_args() { # Sets -dV8_CONCURRENT_MARKING v8_enable_concurrent_marking = false + # Sets -dV8_CSA_WRITE_BARRIER + v8_enable_csa_write_barrier = false + # Build the snapshot with unwinding information for perf. # Sets -dV8_USE_SNAPSHOT_WITH_UNWINDING_INFO. v8_perf_prof_unwinding_info = false @@ -278,6 +285,9 @@ config("features") { if (v8_enable_concurrent_marking) { defines += [ "V8_CONCURRENT_MARKING" ] } + if (v8_enable_csa_write_barrier) { + defines += [ "V8_CSA_WRITE_BARRIER" ] + } if (v8_check_microtasks_scopes_consistency) { defines += [ "V8_CHECK_MICROTASKS_SCOPES_CONSISTENCY" ] } @@ -546,7 +556,6 @@ action("js2c") { "src/js/array.js", "src/js/string.js", "src/js/typedarray.js", - "src/js/collection.js", "src/js/weak-collection.js", "src/js/messages.js", "src/js/templates.js", @@ -795,6 +804,13 @@ action("run_mksnapshot") { sources += [ v8_embed_script ] args += [ rebase_path(v8_embed_script, root_build_dir) ] } + + if (v8_enable_fast_mksnapshot) { + args += [ + "--no-turbo-rewrite-far-jumps", + "--no-turbo-verify-allocation", + ] + } } action("v8_dump_build_config") { @@ -805,7 +821,6 @@ action("v8_dump_build_config") { is_gcov_coverage = v8_code_coverage && !is_clang args = [ rebase_path("$root_out_dir/v8_build_config.json", root_build_dir), - "current_cpu=\"$current_cpu\"", "dcheck_always_on=$dcheck_always_on", "is_asan=$is_asan", "is_cfi=$is_cfi", @@ -814,8 +829,8 @@ action("v8_dump_build_config") { "is_gcov_coverage=$is_gcov_coverage", "is_msan=$is_msan", "is_tsan=$is_tsan", + "is_ubsan_vptr=$is_ubsan_vptr", "target_cpu=\"$target_cpu\"", - "v8_current_cpu=\"$v8_current_cpu\"", "v8_enable_i18n_support=$v8_enable_i18n_support", "v8_target_cpu=\"$v8_target_cpu\"", "v8_use_snapshot=$v8_use_snapshot", @@ -861,6 +876,15 @@ v8_source_set("v8_nosnapshot") { "src/snapshot/snapshot-empty.cc", ] + if (use_jumbo_build == true) { + jumbo_excluded_sources = [ + # TODO(mostynb@opera.com): don't exclude these http://crbug.com/752428 + # Generated source, contains same variable names as libraries.cc + "$target_gen_dir/experimental-extras-libraries.cc", + "$target_gen_dir/libraries.cc", + ] + } + configs = [ ":internal_config" ] } @@ -892,6 +916,15 @@ v8_source_set("v8_snapshot") { "src/setup-isolate-deserialize.cc", ] + if (use_jumbo_build == true) { + jumbo_excluded_sources = [ + # TODO(mostynb@opera.com): don't exclude these http://crbug.com/752428 + # Generated source, contains same variable names as libraries.cc + "$target_gen_dir/experimental-extras-libraries.cc", + "$target_gen_dir/libraries.cc", + ] + } + configs = [ ":internal_config" ] } @@ -949,7 +982,6 @@ v8_source_set("v8_builtins_generators") { "src/builtins/builtins-constructor-gen.h", "src/builtins/builtins-constructor.h", "src/builtins/builtins-conversion-gen.cc", - "src/builtins/builtins-conversion-gen.h", "src/builtins/builtins-date-gen.cc", "src/builtins/builtins-debug-gen.cc", "src/builtins/builtins-forin-gen.cc", @@ -970,6 +1002,9 @@ v8_source_set("v8_builtins_generators") { "src/builtins/builtins-promise-gen.cc", "src/builtins/builtins-promise-gen.h", "src/builtins/builtins-proxy-gen.cc", + "src/builtins/builtins-proxy-gen.h", + "src/builtins/builtins-proxy-helpers-gen.cc", + "src/builtins/builtins-proxy-helpers-gen.h", "src/builtins/builtins-regexp-gen.cc", "src/builtins/builtins-regexp-gen.h", "src/builtins/builtins-sharedarraybuffer-gen.cc", @@ -996,6 +1031,14 @@ v8_source_set("v8_builtins_generators") { "src/interpreter/setup-interpreter.h", ] + if (use_jumbo_build == true) { + jumbo_excluded_sources = [ + # TODO(mostynb@opera.com): don't exclude these http://crbug.com/752428 + "src/builtins/builtins-async-iterator-gen.cc", + "src/builtins/builtins-async-generator-gen.cc", + ] + } + if (v8_current_cpu == "x86") { sources += [ ### gcmole(arch:ia32) ### @@ -1176,6 +1219,7 @@ v8_source_set("v8_base") { "src/bit-vector.h", "src/bootstrapper.cc", "src/bootstrapper.h", + "src/boxed-float.h", "src/builtins/builtins-api.cc", "src/builtins/builtins-array.cc", "src/builtins/builtins-arraybuffer.cc", @@ -1246,6 +1290,8 @@ v8_source_set("v8_base") { "src/compiler-dispatcher/compiler-dispatcher.h", "src/compiler-dispatcher/optimizing-compile-dispatcher.cc", "src/compiler-dispatcher/optimizing-compile-dispatcher.h", + "src/compiler-dispatcher/unoptimized-compile-job.cc", + "src/compiler-dispatcher/unoptimized-compile-job.h", "src/compiler.cc", "src/compiler.h", "src/compiler/access-builder.cc", @@ -1254,10 +1300,6 @@ v8_source_set("v8_base") { "src/compiler/access-info.h", "src/compiler/all-nodes.cc", "src/compiler/all-nodes.h", - "src/compiler/ast-graph-builder.cc", - "src/compiler/ast-graph-builder.h", - "src/compiler/ast-loop-assignment-analyzer.cc", - "src/compiler/ast-loop-assignment-analyzer.h", "src/compiler/basic-block-instrumentor.cc", "src/compiler/basic-block-instrumentor.h", "src/compiler/branch-elimination.cc", @@ -1269,8 +1311,6 @@ v8_source_set("v8_base") { "src/compiler/bytecode-liveness-map.cc", "src/compiler/bytecode-liveness-map.h", "src/compiler/c-linkage.cc", - "src/compiler/check-elimination.cc", - "src/compiler/check-elimination.h", "src/compiler/checkpoint-elimination.cc", "src/compiler/checkpoint-elimination.h", "src/compiler/code-assembler.cc", @@ -1286,8 +1326,6 @@ v8_source_set("v8_base") { "src/compiler/common-operator.h", "src/compiler/compiler-source-position-table.cc", "src/compiler/compiler-source-position-table.h", - "src/compiler/control-builders.cc", - "src/compiler/control-builders.h", "src/compiler/control-equivalence.cc", "src/compiler/control-equivalence.h", "src/compiler/control-flow-optimizer.cc", @@ -1337,8 +1375,6 @@ v8_source_set("v8_base") { "src/compiler/js-context-specialization.h", "src/compiler/js-create-lowering.cc", "src/compiler/js-create-lowering.h", - "src/compiler/js-frame-specialization.cc", - "src/compiler/js-frame-specialization.h", "src/compiler/js-generic-lowering.cc", "src/compiler/js-generic-lowering.h", "src/compiler/js-graph.cc", @@ -1381,6 +1417,10 @@ v8_source_set("v8_base") { "src/compiler/memory-optimizer.h", "src/compiler/move-optimizer.cc", "src/compiler/move-optimizer.h", + "src/compiler/new-escape-analysis-reducer.cc", + "src/compiler/new-escape-analysis-reducer.h", + "src/compiler/new-escape-analysis.cc", + "src/compiler/new-escape-analysis.h", "src/compiler/node-aux-data.h", "src/compiler/node-cache.cc", "src/compiler/node-cache.h", @@ -1402,6 +1442,7 @@ v8_source_set("v8_base") { "src/compiler/operator.h", "src/compiler/osr.cc", "src/compiler/osr.h", + "src/compiler/persistent-map.h", "src/compiler/pipeline-statistics.cc", "src/compiler/pipeline-statistics.h", "src/compiler/pipeline.cc", @@ -1475,8 +1516,12 @@ v8_source_set("v8_base") { "src/debug/debug-frames.cc", "src/debug/debug-frames.h", "src/debug/debug-interface.h", + "src/debug/debug-scope-iterator.cc", + "src/debug/debug-scope-iterator.h", "src/debug/debug-scopes.cc", "src/debug/debug-scopes.h", + "src/debug/debug-stack-trace-iterator.cc", + "src/debug/debug-stack-trace-iterator.h", "src/debug/debug.cc", "src/debug/debug.h", "src/debug/interface-types.h", @@ -1535,12 +1580,10 @@ v8_source_set("v8_base") { "src/flag-definitions.h", "src/flags.cc", "src/flags.h", - "src/float.h", + "src/frame-constants.h", "src/frames-inl.h", "src/frames.cc", "src/frames.h", - "src/full-codegen/full-codegen.cc", - "src/full-codegen/full-codegen.h", "src/futex-emulation.cc", "src/futex-emulation.h", "src/gdb-jit.cc", @@ -1573,6 +1616,9 @@ v8_source_set("v8_base") { "src/heap/incremental-marking-job.h", "src/heap/incremental-marking.cc", "src/heap/incremental-marking.h", + "src/heap/invalidated-slots-inl.h", + "src/heap/invalidated-slots.cc", + "src/heap/invalidated-slots.h", "src/heap/item-parallel-job.h", "src/heap/local-allocator.h", "src/heap/mark-compact-inl.h", @@ -1610,10 +1656,9 @@ v8_source_set("v8_base") { "src/ic/handler-compiler.cc", "src/ic/handler-compiler.h", "src/ic/handler-configuration-inl.h", + "src/ic/handler-configuration.cc", "src/ic/handler-configuration.h", "src/ic/ic-inl.h", - "src/ic/ic-state.cc", - "src/ic/ic-state.h", "src/ic/ic-stats.cc", "src/ic/ic-stats.h", "src/ic/ic.cc", @@ -1738,7 +1783,9 @@ v8_source_set("v8_base") { "src/objects/literal-objects.h", "src/objects/map-inl.h", "src/objects/map.h", - "src/objects/module-info.h", + "src/objects/module-inl.h", + "src/objects/module.cc", + "src/objects/module.h", "src/objects/name-inl.h", "src/objects/name.h", "src/objects/object-macros-undef.h", @@ -1757,10 +1804,10 @@ v8_source_set("v8_base") { "src/ostreams.h", "src/parsing/duplicate-finder.h", "src/parsing/expression-classifier.h", + "src/parsing/expression-scope-reparenter.cc", + "src/parsing/expression-scope-reparenter.h", "src/parsing/func-name-inferrer.cc", "src/parsing/func-name-inferrer.h", - "src/parsing/parameter-initializer-rewriter.cc", - "src/parsing/parameter-initializer-rewriter.h", "src/parsing/parse-info.cc", "src/parsing/parse-info.h", "src/parsing/parser-base.h", @@ -1844,6 +1891,7 @@ v8_source_set("v8_base") { "src/regexp/regexp-utils.h", "src/register-configuration.cc", "src/register-configuration.h", + "src/reglist.h", "src/runtime-profiler.cc", "src/runtime-profiler.h", "src/runtime/runtime-array.cc", @@ -1892,6 +1940,10 @@ v8_source_set("v8_base") { "src/snapshot/deserializer.h", "src/snapshot/natives-common.cc", "src/snapshot/natives.h", + "src/snapshot/object-deserializer.cc", + "src/snapshot/object-deserializer.h", + "src/snapshot/partial-deserializer.cc", + "src/snapshot/partial-deserializer.h", "src/snapshot/partial-serializer.cc", "src/snapshot/partial-serializer.h", "src/snapshot/serializer-common.cc", @@ -1902,6 +1954,8 @@ v8_source_set("v8_base") { "src/snapshot/snapshot-source-sink.cc", "src/snapshot/snapshot-source-sink.h", "src/snapshot/snapshot.h", + "src/snapshot/startup-deserializer.cc", + "src/snapshot/startup-deserializer.h", "src/snapshot/startup-serializer.cc", "src/snapshot/startup-serializer.h", "src/source-position-table.cc", @@ -1981,6 +2035,8 @@ v8_source_set("v8_base") { "src/wasm/signature-map.h", "src/wasm/streaming-decoder.cc", "src/wasm/streaming-decoder.h", + "src/wasm/wasm-api.cc", + "src/wasm/wasm-api.h", "src/wasm/wasm-code-specialization.cc", "src/wasm/wasm-code-specialization.h", "src/wasm/wasm-debug.cc", @@ -2017,6 +2073,15 @@ v8_source_set("v8_base") { "src/zone/zone.h", ] + if (use_jumbo_build == true) { + jumbo_excluded_sources = [ + # TODO(mostynb@opera.com): don't exclude these http://crbug.com/752428 + "src/profiler/heap-snapshot-generator.cc", # Macro clash in mman-linux.h + "src/compiler/escape-analysis.cc", # Symbol clashes with new-escape-analysis.cc + "src/compiler/escape-analysis-reducer.cc", # Symbol clashes with new-escape-analysis-reducer.cc + ] + } + if (v8_current_cpu == "x86") { sources += [ ### gcmole(arch:ia32) ### "src/compiler/ia32/code-generator-ia32.cc", @@ -2024,7 +2089,6 @@ v8_source_set("v8_base") { "src/compiler/ia32/instruction-scheduler-ia32.cc", "src/compiler/ia32/instruction-selector-ia32.cc", "src/debug/ia32/debug-ia32.cc", - "src/full-codegen/ia32/full-codegen-ia32.cc", "src/ia32/assembler-ia32-inl.h", "src/ia32/assembler-ia32.cc", "src/ia32/assembler-ia32.h", @@ -2035,8 +2099,8 @@ v8_source_set("v8_base") { "src/ia32/cpu-ia32.cc", "src/ia32/deoptimizer-ia32.cc", "src/ia32/disasm-ia32.cc", - "src/ia32/frames-ia32.cc", - "src/ia32/frames-ia32.h", + "src/ia32/frame-constants-ia32.cc", + "src/ia32/frame-constants-ia32.h", "src/ia32/interface-descriptors-ia32.cc", "src/ia32/macro-assembler-ia32.cc", "src/ia32/macro-assembler-ia32.h", @@ -2045,7 +2109,6 @@ v8_source_set("v8_base") { "src/ia32/sse-instr.h", "src/ic/ia32/access-compiler-ia32.cc", "src/ic/ia32/handler-compiler-ia32.cc", - "src/ic/ia32/ic-ia32.cc", "src/regexp/ia32/regexp-macro-assembler-ia32.cc", "src/regexp/ia32/regexp-macro-assembler-ia32.h", ] @@ -2058,10 +2121,8 @@ v8_source_set("v8_base") { "src/compiler/x64/unwinding-info-writer-x64.cc", "src/compiler/x64/unwinding-info-writer-x64.h", "src/debug/x64/debug-x64.cc", - "src/full-codegen/x64/full-codegen-x64.cc", "src/ic/x64/access-compiler-x64.cc", "src/ic/x64/handler-compiler-x64.cc", - "src/ic/x64/ic-x64.cc", "src/regexp/x64/regexp-macro-assembler-x64.cc", "src/regexp/x64/regexp-macro-assembler-x64.h", "src/third_party/valgrind/valgrind.h", @@ -2076,8 +2137,8 @@ v8_source_set("v8_base") { "src/x64/deoptimizer-x64.cc", "src/x64/disasm-x64.cc", "src/x64/eh-frame-x64.cc", - "src/x64/frames-x64.cc", - "src/x64/frames-x64.h", + "src/x64/frame-constants-x64.cc", + "src/x64/frame-constants-x64.h", "src/x64/interface-descriptors-x64.cc", "src/x64/macro-assembler-x64.cc", "src/x64/macro-assembler-x64.h", @@ -2103,8 +2164,8 @@ v8_source_set("v8_base") { "src/arm/deoptimizer-arm.cc", "src/arm/disasm-arm.cc", "src/arm/eh-frame-arm.cc", - "src/arm/frames-arm.cc", - "src/arm/frames-arm.h", + "src/arm/frame-constants-arm.cc", + "src/arm/frame-constants-arm.h", "src/arm/interface-descriptors-arm.cc", "src/arm/interface-descriptors-arm.h", "src/arm/macro-assembler-arm.cc", @@ -2118,10 +2179,8 @@ v8_source_set("v8_base") { "src/compiler/arm/unwinding-info-writer-arm.cc", "src/compiler/arm/unwinding-info-writer-arm.h", "src/debug/arm/debug-arm.cc", - "src/full-codegen/arm/full-codegen-arm.cc", "src/ic/arm/access-compiler-arm.cc", "src/ic/arm/handler-compiler-arm.cc", - "src/ic/arm/ic-arm.cc", "src/regexp/arm/regexp-macro-assembler-arm.cc", "src/regexp/arm/regexp-macro-assembler-arm.h", ] @@ -2143,8 +2202,8 @@ v8_source_set("v8_base") { "src/arm64/disasm-arm64.cc", "src/arm64/disasm-arm64.h", "src/arm64/eh-frame-arm64.cc", - "src/arm64/frames-arm64.cc", - "src/arm64/frames-arm64.h", + "src/arm64/frame-constants-arm64.cc", + "src/arm64/frame-constants-arm64.h", "src/arm64/instructions-arm64.cc", "src/arm64/instructions-arm64.h", "src/arm64/instrument-arm64.cc", @@ -2166,10 +2225,8 @@ v8_source_set("v8_base") { "src/compiler/arm64/unwinding-info-writer-arm64.cc", "src/compiler/arm64/unwinding-info-writer-arm64.h", "src/debug/arm64/debug-arm64.cc", - "src/full-codegen/arm64/full-codegen-arm64.cc", "src/ic/arm64/access-compiler-arm64.cc", "src/ic/arm64/handler-compiler-arm64.cc", - "src/ic/arm64/ic-arm64.cc", "src/regexp/arm64/regexp-macro-assembler-arm64.cc", "src/regexp/arm64/regexp-macro-assembler-arm64.h", ] @@ -2180,10 +2237,8 @@ v8_source_set("v8_base") { "src/compiler/mips/instruction-scheduler-mips.cc", "src/compiler/mips/instruction-selector-mips.cc", "src/debug/mips/debug-mips.cc", - "src/full-codegen/mips/full-codegen-mips.cc", "src/ic/mips/access-compiler-mips.cc", "src/ic/mips/handler-compiler-mips.cc", - "src/ic/mips/ic-mips.cc", "src/mips/assembler-mips-inl.h", "src/mips/assembler-mips.cc", "src/mips/assembler-mips.h", @@ -2196,8 +2251,8 @@ v8_source_set("v8_base") { "src/mips/cpu-mips.cc", "src/mips/deoptimizer-mips.cc", "src/mips/disasm-mips.cc", - "src/mips/frames-mips.cc", - "src/mips/frames-mips.h", + "src/mips/frame-constants-mips.cc", + "src/mips/frame-constants-mips.h", "src/mips/interface-descriptors-mips.cc", "src/mips/macro-assembler-mips.cc", "src/mips/macro-assembler-mips.h", @@ -2213,10 +2268,8 @@ v8_source_set("v8_base") { "src/compiler/mips64/instruction-scheduler-mips64.cc", "src/compiler/mips64/instruction-selector-mips64.cc", "src/debug/mips64/debug-mips64.cc", - "src/full-codegen/mips64/full-codegen-mips64.cc", "src/ic/mips64/access-compiler-mips64.cc", "src/ic/mips64/handler-compiler-mips64.cc", - "src/ic/mips64/ic-mips64.cc", "src/mips64/assembler-mips64-inl.h", "src/mips64/assembler-mips64.cc", "src/mips64/assembler-mips64.h", @@ -2229,8 +2282,8 @@ v8_source_set("v8_base") { "src/mips64/cpu-mips64.cc", "src/mips64/deoptimizer-mips64.cc", "src/mips64/disasm-mips64.cc", - "src/mips64/frames-mips64.cc", - "src/mips64/frames-mips64.h", + "src/mips64/frame-constants-mips64.cc", + "src/mips64/frame-constants-mips64.h", "src/mips64/interface-descriptors-mips64.cc", "src/mips64/macro-assembler-mips64.cc", "src/mips64/macro-assembler-mips64.h", @@ -2246,10 +2299,8 @@ v8_source_set("v8_base") { "src/compiler/ppc/instruction-scheduler-ppc.cc", "src/compiler/ppc/instruction-selector-ppc.cc", "src/debug/ppc/debug-ppc.cc", - "src/full-codegen/ppc/full-codegen-ppc.cc", "src/ic/ppc/access-compiler-ppc.cc", "src/ic/ppc/handler-compiler-ppc.cc", - "src/ic/ppc/ic-ppc.cc", "src/ppc/assembler-ppc-inl.h", "src/ppc/assembler-ppc.cc", "src/ppc/assembler-ppc.h", @@ -2262,8 +2313,8 @@ v8_source_set("v8_base") { "src/ppc/cpu-ppc.cc", "src/ppc/deoptimizer-ppc.cc", "src/ppc/disasm-ppc.cc", - "src/ppc/frames-ppc.cc", - "src/ppc/frames-ppc.h", + "src/ppc/frame-constants-ppc.cc", + "src/ppc/frame-constants-ppc.h", "src/ppc/interface-descriptors-ppc.cc", "src/ppc/macro-assembler-ppc.cc", "src/ppc/macro-assembler-ppc.h", @@ -2279,10 +2330,8 @@ v8_source_set("v8_base") { "src/compiler/s390/instruction-scheduler-s390.cc", "src/compiler/s390/instruction-selector-s390.cc", "src/debug/s390/debug-s390.cc", - "src/full-codegen/s390/full-codegen-s390.cc", "src/ic/s390/access-compiler-s390.cc", "src/ic/s390/handler-compiler-s390.cc", - "src/ic/s390/ic-s390.cc", "src/regexp/s390/regexp-macro-assembler-s390.cc", "src/regexp/s390/regexp-macro-assembler-s390.h", "src/s390/assembler-s390-inl.h", @@ -2297,8 +2346,8 @@ v8_source_set("v8_base") { "src/s390/cpu-s390.cc", "src/s390/deoptimizer-s390.cc", "src/s390/disasm-s390.cc", - "src/s390/frames-s390.cc", - "src/s390/frames-s390.h", + "src/s390/frame-constants-s390.cc", + "src/s390/frame-constants-s390.h", "src/s390/interface-descriptors-s390.cc", "src/s390/macro-assembler-s390.cc", "src/s390/macro-assembler-s390.h", @@ -2350,7 +2399,7 @@ v8_component("v8_libbase") { "src/base/atomicops.h", "src/base/atomicops_internals_atomicword_compat.h", "src/base/atomicops_internals_portable.h", - "src/base/atomicops_internals_x86_msvc.h", + "src/base/atomicops_internals_std.h", "src/base/base-export.h", "src/base/bits.cc", "src/base/bits.h", diff --git a/deps/v8/ChangeLog b/deps/v8/ChangeLog index f3e2941fddd5aa..ffd5fb388dfab5 100644 --- a/deps/v8/ChangeLog +++ b/deps/v8/ChangeLog @@ -1,3 +1,2208 @@ +2017-08-29: Version 6.2.414 + + Performance and stability improvements on all platforms. + + +2017-08-29: Version 6.2.413 + + Performance and stability improvements on all platforms. + + +2017-08-29: Version 6.2.412 + + Performance and stability improvements on all platforms. + + +2017-08-29: Version 6.2.411 + + Performance and stability improvements on all platforms. + + +2017-08-29: Version 6.2.410 + + Performance and stability improvements on all platforms. + + +2017-08-29: Version 6.2.409 + + Performance and stability improvements on all platforms. + + +2017-08-29: Version 6.2.408 + + Performance and stability improvements on all platforms. + + +2017-08-29: Version 6.2.407 + + Performance and stability improvements on all platforms. + + +2017-08-29: Version 6.2.406 + + Performance and stability improvements on all platforms. + + +2017-08-29: Version 6.2.405 + + Performance and stability improvements on all platforms. + + +2017-08-29: Version 6.2.404 + + Performance and stability improvements on all platforms. + + +2017-08-29: Version 6.2.403 + + Performance and stability improvements on all platforms. + + +2017-08-29: Version 6.2.402 + + Performance and stability improvements on all platforms. + + +2017-08-29: Version 6.2.401 + + Performance and stability improvements on all platforms. + + +2017-08-29: Version 6.2.400 + + Performance and stability improvements on all platforms. + + +2017-08-29: Version 6.2.399 + + Performance and stability improvements on all platforms. + + +2017-08-28: Version 6.2.398 + + Performance and stability improvements on all platforms. + + +2017-08-28: Version 6.2.397 + + Performance and stability improvements on all platforms. + + +2017-08-28: Version 6.2.396 + + Performance and stability improvements on all platforms. + + +2017-08-28: Version 6.2.395 + + Performance and stability improvements on all platforms. + + +2017-08-28: Version 6.2.394 + + Performance and stability improvements on all platforms. + + +2017-08-28: Version 6.2.393 + + Performance and stability improvements on all platforms. + + +2017-08-28: Version 6.2.392 + + Performance and stability improvements on all platforms. + + +2017-08-28: Version 6.2.391 + + Performance and stability improvements on all platforms. + + +2017-08-28: Version 6.2.390 + + Performance and stability improvements on all platforms. + + +2017-08-28: Version 6.2.389 + + Performance and stability improvements on all platforms. + + +2017-08-28: Version 6.2.388 + + Performance and stability improvements on all platforms. + + +2017-08-28: Version 6.2.387 + + Performance and stability improvements on all platforms. + + +2017-08-28: Version 6.2.386 + + Performance and stability improvements on all platforms. + + +2017-08-28: Version 6.2.385 + + Performance and stability improvements on all platforms. + + +2017-08-28: Version 6.2.384 + + Performance and stability improvements on all platforms. + + +2017-08-28: Version 6.2.383 + + Performance and stability improvements on all platforms. + + +2017-08-28: Version 6.2.382 + + Performance and stability improvements on all platforms. + + +2017-08-28: Version 6.2.381 + + Performance and stability improvements on all platforms. + + +2017-08-28: Version 6.2.380 + + Performance and stability improvements on all platforms. + + +2017-08-28: Version 6.2.379 + + Performance and stability improvements on all platforms. + + +2017-08-27: Version 6.2.378 + + Performance and stability improvements on all platforms. + + +2017-08-25: Version 6.2.377 + + Performance and stability improvements on all platforms. + + +2017-08-25: Version 6.2.376 + + Performance and stability improvements on all platforms. + + +2017-08-25: Version 6.2.375 + + Performance and stability improvements on all platforms. + + +2017-08-25: Version 6.2.374 + + Performance and stability improvements on all platforms. + + +2017-08-25: Version 6.2.373 + + Performance and stability improvements on all platforms. + + +2017-08-25: Version 6.2.372 + + Performance and stability improvements on all platforms. + + +2017-08-25: Version 6.2.371 + + Performance and stability improvements on all platforms. + + +2017-08-25: Version 6.2.370 + + Performance and stability improvements on all platforms. + + +2017-08-25: Version 6.2.369 + + Performance and stability improvements on all platforms. + + +2017-08-25: Version 6.2.368 + + Performance and stability improvements on all platforms. + + +2017-08-25: Version 6.2.367 + + Performance and stability improvements on all platforms. + + +2017-08-25: Version 6.2.366 + + Performance and stability improvements on all platforms. + + +2017-08-25: Version 6.2.365 + + Performance and stability improvements on all platforms. + + +2017-08-25: Version 6.2.364 + + Performance and stability improvements on all platforms. + + +2017-08-24: Version 6.2.363 + + Performance and stability improvements on all platforms. + + +2017-08-24: Version 6.2.362 + + Performance and stability improvements on all platforms. + + +2017-08-24: Version 6.2.361 + + Performance and stability improvements on all platforms. + + +2017-08-24: Version 6.2.360 + + Performance and stability improvements on all platforms. + + +2017-08-24: Version 6.2.359 + + Performance and stability improvements on all platforms. + + +2017-08-24: Version 6.2.358 + + Performance and stability improvements on all platforms. + + +2017-08-24: Version 6.2.357 + + Performance and stability improvements on all platforms. + + +2017-08-24: Version 6.2.356 + + Performance and stability improvements on all platforms. + + +2017-08-23: Version 6.2.355 + + Performance and stability improvements on all platforms. + + +2017-08-23: Version 6.2.354 + + Performance and stability improvements on all platforms. + + +2017-08-23: Version 6.2.353 + + Performance and stability improvements on all platforms. + + +2017-08-23: Version 6.2.352 + + Performance and stability improvements on all platforms. + + +2017-08-23: Version 6.2.351 + + Performance and stability improvements on all platforms. + + +2017-08-23: Version 6.2.350 + + Performance and stability improvements on all platforms. + + +2017-08-23: Version 6.2.349 + + Performance and stability improvements on all platforms. + + +2017-08-23: Version 6.2.348 + + Performance and stability improvements on all platforms. + + +2017-08-23: Version 6.2.347 + + Performance and stability improvements on all platforms. + + +2017-08-23: Version 6.2.346 + + Performance and stability improvements on all platforms. + + +2017-08-23: Version 6.2.345 + + Performance and stability improvements on all platforms. + + +2017-08-23: Version 6.2.344 + + Performance and stability improvements on all platforms. + + +2017-08-23: Version 6.2.343 + + Performance and stability improvements on all platforms. + + +2017-08-23: Version 6.2.342 + + Performance and stability improvements on all platforms. + + +2017-08-23: Version 6.2.341 + + Performance and stability improvements on all platforms. + + +2017-08-23: Version 6.2.340 + + Performance and stability improvements on all platforms. + + +2017-08-23: Version 6.2.339 + + Performance and stability improvements on all platforms. + + +2017-08-23: Version 6.2.338 + + Performance and stability improvements on all platforms. + + +2017-08-22: Version 6.2.337 + + Performance and stability improvements on all platforms. + + +2017-08-22: Version 6.2.336 + + Performance and stability improvements on all platforms. + + +2017-08-22: Version 6.2.335 + + Performance and stability improvements on all platforms. + + +2017-08-22: Version 6.2.334 + + Performance and stability improvements on all platforms. + + +2017-08-22: Version 6.2.333 + + Performance and stability improvements on all platforms. + + +2017-08-22: Version 6.2.332 + + Performance and stability improvements on all platforms. + + +2017-08-22: Version 6.2.331 + + Performance and stability improvements on all platforms. + + +2017-08-22: Version 6.2.330 + + Performance and stability improvements on all platforms. + + +2017-08-22: Version 6.2.329 + + Performance and stability improvements on all platforms. + + +2017-08-22: Version 6.2.328 + + Performance and stability improvements on all platforms. + + +2017-08-22: Version 6.2.327 + + Performance and stability improvements on all platforms. + + +2017-08-22: Version 6.2.326 + + Performance and stability improvements on all platforms. + + +2017-08-22: Version 6.2.325 + + Performance and stability improvements on all platforms. + + +2017-08-22: Version 6.2.324 + + Performance and stability improvements on all platforms. + + +2017-08-21: Version 6.2.323 + + Performance and stability improvements on all platforms. + + +2017-08-21: Version 6.2.322 + + Performance and stability improvements on all platforms. + + +2017-08-21: Version 6.2.321 + + Performance and stability improvements on all platforms. + + +2017-08-21: Version 6.2.320 + + Performance and stability improvements on all platforms. + + +2017-08-21: Version 6.2.319 + + Performance and stability improvements on all platforms. + + +2017-08-21: Version 6.2.318 + + Performance and stability improvements on all platforms. + + +2017-08-21: Version 6.2.317 + + Performance and stability improvements on all platforms. + + +2017-08-21: Version 6.2.316 + + Performance and stability improvements on all platforms. + + +2017-08-21: Version 6.2.315 + + Performance and stability improvements on all platforms. + + +2017-08-21: Version 6.2.314 + + Performance and stability improvements on all platforms. + + +2017-08-21: Version 6.2.313 + + Performance and stability improvements on all platforms. + + +2017-08-21: Version 6.2.312 + + Performance and stability improvements on all platforms. + + +2017-08-21: Version 6.2.311 + + Performance and stability improvements on all platforms. + + +2017-08-21: Version 6.2.310 + + Performance and stability improvements on all platforms. + + +2017-08-21: Version 6.2.309 + + Performance and stability improvements on all platforms. + + +2017-08-21: Version 6.2.308 + + Performance and stability improvements on all platforms. + + +2017-08-21: Version 6.2.307 + + Performance and stability improvements on all platforms. + + +2017-08-21: Version 6.2.306 + + Performance and stability improvements on all platforms. + + +2017-08-21: Version 6.2.305 + + Performance and stability improvements on all platforms. + + +2017-08-21: Version 6.2.304 + + Performance and stability improvements on all platforms. + + +2017-08-20: Version 6.2.303 + + Performance and stability improvements on all platforms. + + +2017-08-19: Version 6.2.302 + + Performance and stability improvements on all platforms. + + +2017-08-19: Version 6.2.301 + + Performance and stability improvements on all platforms. + + +2017-08-19: Version 6.2.300 + + Performance and stability improvements on all platforms. + + +2017-08-19: Version 6.2.299 + + Performance and stability improvements on all platforms. + + +2017-08-19: Version 6.2.298 + + Performance and stability improvements on all platforms. + + +2017-08-19: Version 6.2.297 + + Performance and stability improvements on all platforms. + + +2017-08-18: Version 6.2.296 + + Performance and stability improvements on all platforms. + + +2017-08-18: Version 6.2.295 + + Performance and stability improvements on all platforms. + + +2017-08-18: Version 6.2.294 + + Performance and stability improvements on all platforms. + + +2017-08-18: Version 6.2.293 + + Performance and stability improvements on all platforms. + + +2017-08-18: Version 6.2.292 + + Performance and stability improvements on all platforms. + + +2017-08-18: Version 6.2.291 + + Performance and stability improvements on all platforms. + + +2017-08-18: Version 6.2.290 + + Performance and stability improvements on all platforms. + + +2017-08-18: Version 6.2.289 + + Performance and stability improvements on all platforms. + + +2017-08-18: Version 6.2.288 + + Performance and stability improvements on all platforms. + + +2017-08-18: Version 6.2.287 + + Performance and stability improvements on all platforms. + + +2017-08-18: Version 6.2.286 + + Performance and stability improvements on all platforms. + + +2017-08-18: Version 6.2.285 + + Performance and stability improvements on all platforms. + + +2017-08-18: Version 6.2.284 + + Performance and stability improvements on all platforms. + + +2017-08-18: Version 6.2.283 + + Performance and stability improvements on all platforms. + + +2017-08-18: Version 6.2.282 + + Performance and stability improvements on all platforms. + + +2017-08-17: Version 6.2.281 + + Performance and stability improvements on all platforms. + + +2017-08-17: Version 6.2.280 + + Performance and stability improvements on all platforms. + + +2017-08-17: Version 6.2.279 + + Performance and stability improvements on all platforms. + + +2017-08-17: Version 6.2.278 + + Performance and stability improvements on all platforms. + + +2017-08-17: Version 6.2.277 + + Performance and stability improvements on all platforms. + + +2017-08-17: Version 6.2.276 + + Performance and stability improvements on all platforms. + + +2017-08-17: Version 6.2.275 + + Performance and stability improvements on all platforms. + + +2017-08-17: Version 6.2.274 + + Performance and stability improvements on all platforms. + + +2017-08-17: Version 6.2.273 + + Performance and stability improvements on all platforms. + + +2017-08-17: Version 6.2.272 + + Performance and stability improvements on all platforms. + + +2017-08-17: Version 6.2.271 + + Performance and stability improvements on all platforms. + + +2017-08-17: Version 6.2.270 + + Performance and stability improvements on all platforms. + + +2017-08-16: Version 6.2.269 + + Performance and stability improvements on all platforms. + + +2017-08-16: Version 6.2.268 + + Performance and stability improvements on all platforms. + + +2017-08-16: Version 6.2.267 + + Performance and stability improvements on all platforms. + + +2017-08-16: Version 6.2.266 + + Performance and stability improvements on all platforms. + + +2017-08-16: Version 6.2.265 + + Performance and stability improvements on all platforms. + + +2017-08-16: Version 6.2.264 + + Performance and stability improvements on all platforms. + + +2017-08-16: Version 6.2.263 + + Performance and stability improvements on all platforms. + + +2017-08-16: Version 6.2.262 + + Performance and stability improvements on all platforms. + + +2017-08-16: Version 6.2.261 + + Performance and stability improvements on all platforms. + + +2017-08-16: Version 6.2.260 + + Performance and stability improvements on all platforms. + + +2017-08-16: Version 6.2.259 + + Performance and stability improvements on all platforms. + + +2017-08-16: Version 6.2.258 + + Performance and stability improvements on all platforms. + + +2017-08-16: Version 6.2.257 + + Performance and stability improvements on all platforms. + + +2017-08-16: Version 6.2.256 + + Performance and stability improvements on all platforms. + + +2017-08-16: Version 6.2.255 + + Performance and stability improvements on all platforms. + + +2017-08-16: Version 6.2.254 + + Performance and stability improvements on all platforms. + + +2017-08-16: Version 6.2.253 + + Performance and stability improvements on all platforms. + + +2017-08-16: Version 6.2.252 + + Performance and stability improvements on all platforms. + + +2017-08-16: Version 6.2.251 + + Performance and stability improvements on all platforms. + + +2017-08-16: Version 6.2.250 + + Performance and stability improvements on all platforms. + + +2017-08-16: Version 6.2.249 + + Performance and stability improvements on all platforms. + + +2017-08-15: Version 6.2.248 + + Performance and stability improvements on all platforms. + + +2017-08-15: Version 6.2.247 + + Performance and stability improvements on all platforms. + + +2017-08-15: Version 6.2.246 + + Performance and stability improvements on all platforms. + + +2017-08-15: Version 6.2.245 + + Performance and stability improvements on all platforms. + + +2017-08-15: Version 6.2.244 + + Performance and stability improvements on all platforms. + + +2017-08-15: Version 6.2.243 + + Performance and stability improvements on all platforms. + + +2017-08-15: Version 6.2.242 + + Performance and stability improvements on all platforms. + + +2017-08-14: Version 6.2.241 + + Performance and stability improvements on all platforms. + + +2017-08-14: Version 6.2.240 + + Performance and stability improvements on all platforms. + + +2017-08-14: Version 6.2.239 + + Performance and stability improvements on all platforms. + + +2017-08-14: Version 6.2.238 + + Performance and stability improvements on all platforms. + + +2017-08-14: Version 6.2.237 + + Performance and stability improvements on all platforms. + + +2017-08-14: Version 6.2.236 + + Performance and stability improvements on all platforms. + + +2017-08-14: Version 6.2.235 + + Performance and stability improvements on all platforms. + + +2017-08-14: Version 6.2.234 + + Performance and stability improvements on all platforms. + + +2017-08-14: Version 6.2.233 + + Performance and stability improvements on all platforms. + + +2017-08-14: Version 6.2.232 + + Performance and stability improvements on all platforms. + + +2017-08-14: Version 6.2.231 + + Performance and stability improvements on all platforms. + + +2017-08-14: Version 6.2.230 + + Performance and stability improvements on all platforms. + + +2017-08-14: Version 6.2.229 + + Performance and stability improvements on all platforms. + + +2017-08-14: Version 6.2.228 + + Performance and stability improvements on all platforms. + + +2017-08-14: Version 6.2.227 + + Performance and stability improvements on all platforms. + + +2017-08-14: Version 6.2.226 + + Performance and stability improvements on all platforms. + + +2017-08-14: Version 6.2.225 + + Performance and stability improvements on all platforms. + + +2017-08-14: Version 6.2.224 + + Performance and stability improvements on all platforms. + + +2017-08-14: Version 6.2.223 + + Performance and stability improvements on all platforms. + + +2017-08-14: Version 6.2.222 + + Performance and stability improvements on all platforms. + + +2017-08-14: Version 6.2.221 + + Performance and stability improvements on all platforms. + + +2017-08-13: Version 6.2.220 + + Performance and stability improvements on all platforms. + + +2017-08-12: Version 6.2.219 + + Performance and stability improvements on all platforms. + + +2017-08-12: Version 6.2.218 + + Performance and stability improvements on all platforms. + + +2017-08-11: Version 6.2.217 + + Performance and stability improvements on all platforms. + + +2017-08-11: Version 6.2.216 + + Performance and stability improvements on all platforms. + + +2017-08-11: Version 6.2.215 + + Performance and stability improvements on all platforms. + + +2017-08-11: Version 6.2.214 + + Performance and stability improvements on all platforms. + + +2017-08-11: Version 6.2.213 + + Performance and stability improvements on all platforms. + + +2017-08-11: Version 6.2.212 + + Performance and stability improvements on all platforms. + + +2017-08-11: Version 6.2.211 + + Performance and stability improvements on all platforms. + + +2017-08-11: Version 6.2.210 + + Performance and stability improvements on all platforms. + + +2017-08-11: Version 6.2.209 + + Performance and stability improvements on all platforms. + + +2017-08-11: Version 6.2.208 + + Performance and stability improvements on all platforms. + + +2017-08-11: Version 6.2.207 + + Performance and stability improvements on all platforms. + + +2017-08-11: Version 6.2.206 + + Performance and stability improvements on all platforms. + + +2017-08-10: Version 6.2.205 + + Performance and stability improvements on all platforms. + + +2017-08-10: Version 6.2.204 + + Performance and stability improvements on all platforms. + + +2017-08-10: Version 6.2.203 + + Performance and stability improvements on all platforms. + + +2017-08-10: Version 6.2.202 + + Performance and stability improvements on all platforms. + + +2017-08-10: Version 6.2.201 + + Performance and stability improvements on all platforms. + + +2017-08-10: Version 6.2.200 + + Performance and stability improvements on all platforms. + + +2017-08-10: Version 6.2.199 + + Performance and stability improvements on all platforms. + + +2017-08-10: Version 6.2.198 + + Performance and stability improvements on all platforms. + + +2017-08-10: Version 6.2.197 + + Performance and stability improvements on all platforms. + + +2017-08-10: Version 6.2.196 + + Performance and stability improvements on all platforms. + + +2017-08-10: Version 6.2.195 + + Performance and stability improvements on all platforms. + + +2017-08-10: Version 6.2.194 + + Performance and stability improvements on all platforms. + + +2017-08-10: Version 6.2.193 + + Performance and stability improvements on all platforms. + + +2017-08-10: Version 6.2.192 + + Performance and stability improvements on all platforms. + + +2017-08-10: Version 6.2.191 + + Performance and stability improvements on all platforms. + + +2017-08-10: Version 6.2.190 + + Performance and stability improvements on all platforms. + + +2017-08-09: Version 6.2.189 + + Performance and stability improvements on all platforms. + + +2017-08-09: Version 6.2.188 + + Performance and stability improvements on all platforms. + + +2017-08-09: Version 6.2.187 + + Performance and stability improvements on all platforms. + + +2017-08-09: Version 6.2.186 + + Performance and stability improvements on all platforms. + + +2017-08-09: Version 6.2.185 + + Performance and stability improvements on all platforms. + + +2017-08-09: Version 6.2.184 + + Performance and stability improvements on all platforms. + + +2017-08-09: Version 6.2.183 + + Performance and stability improvements on all platforms. + + +2017-08-09: Version 6.2.182 + + Performance and stability improvements on all platforms. + + +2017-08-09: Version 6.2.181 + + Performance and stability improvements on all platforms. + + +2017-08-09: Version 6.2.180 + + Performance and stability improvements on all platforms. + + +2017-08-09: Version 6.2.179 + + Performance and stability improvements on all platforms. + + +2017-08-09: Version 6.2.178 + + Performance and stability improvements on all platforms. + + +2017-08-09: Version 6.2.177 + + Performance and stability improvements on all platforms. + + +2017-08-09: Version 6.2.176 + + Performance and stability improvements on all platforms. + + +2017-08-09: Version 6.2.175 + + Performance and stability improvements on all platforms. + + +2017-08-09: Version 6.2.174 + + Performance and stability improvements on all platforms. + + +2017-08-09: Version 6.2.173 + + Performance and stability improvements on all platforms. + + +2017-08-08: Version 6.2.172 + + Performance and stability improvements on all platforms. + + +2017-08-08: Version 6.2.171 + + Performance and stability improvements on all platforms. + + +2017-08-08: Version 6.2.170 + + Performance and stability improvements on all platforms. + + +2017-08-08: Version 6.2.169 + + Performance and stability improvements on all platforms. + + +2017-08-08: Version 6.2.168 + + Performance and stability improvements on all platforms. + + +2017-08-08: Version 6.2.167 + + Performance and stability improvements on all platforms. + + +2017-08-08: Version 6.2.166 + + Performance and stability improvements on all platforms. + + +2017-08-07: Version 6.2.165 + + Performance and stability improvements on all platforms. + + +2017-08-07: Version 6.2.164 + + Performance and stability improvements on all platforms. + + +2017-08-07: Version 6.2.163 + + Performance and stability improvements on all platforms. + + +2017-08-07: Version 6.2.162 + + Performance and stability improvements on all platforms. + + +2017-08-07: Version 6.2.161 + + Performance and stability improvements on all platforms. + + +2017-08-07: Version 6.2.160 + + Performance and stability improvements on all platforms. + + +2017-08-07: Version 6.2.159 + + Performance and stability improvements on all platforms. + + +2017-08-07: Version 6.2.158 + + Performance and stability improvements on all platforms. + + +2017-08-07: Version 6.2.157 + + Performance and stability improvements on all platforms. + + +2017-08-07: Version 6.2.156 + + Performance and stability improvements on all platforms. + + +2017-08-07: Version 6.2.155 + + Performance and stability improvements on all platforms. + + +2017-08-07: Version 6.2.154 + + Performance and stability improvements on all platforms. + + +2017-08-06: Version 6.2.153 + + Performance and stability improvements on all platforms. + + +2017-08-05: Version 6.2.152 + + Performance and stability improvements on all platforms. + + +2017-08-04: Version 6.2.151 + + Performance and stability improvements on all platforms. + + +2017-08-04: Version 6.2.150 + + Performance and stability improvements on all platforms. + + +2017-08-04: Version 6.2.149 + + Performance and stability improvements on all platforms. + + +2017-08-04: Version 6.2.148 + + Performance and stability improvements on all platforms. + + +2017-08-04: Version 6.2.147 + + Performance and stability improvements on all platforms. + + +2017-08-04: Version 6.2.146 + + Performance and stability improvements on all platforms. + + +2017-08-03: Version 6.2.145 + + Performance and stability improvements on all platforms. + + +2017-08-03: Version 6.2.144 + + Performance and stability improvements on all platforms. + + +2017-08-03: Version 6.2.143 + + Performance and stability improvements on all platforms. + + +2017-08-03: Version 6.2.142 + + Performance and stability improvements on all platforms. + + +2017-08-03: Version 6.2.141 + + Performance and stability improvements on all platforms. + + +2017-08-03: Version 6.2.140 + + Performance and stability improvements on all platforms. + + +2017-08-03: Version 6.2.139 + + Performance and stability improvements on all platforms. + + +2017-08-03: Version 6.2.138 + + Performance and stability improvements on all platforms. + + +2017-08-03: Version 6.2.137 + + Performance and stability improvements on all platforms. + + +2017-08-03: Version 6.2.136 + + Performance and stability improvements on all platforms. + + +2017-08-03: Version 6.2.135 + + Performance and stability improvements on all platforms. + + +2017-08-03: Version 6.2.134 + + Performance and stability improvements on all platforms. + + +2017-08-03: Version 6.2.133 + + Performance and stability improvements on all platforms. + + +2017-08-02: Version 6.2.132 + + Performance and stability improvements on all platforms. + + +2017-08-02: Version 6.2.131 + + Performance and stability improvements on all platforms. + + +2017-08-02: Version 6.2.130 + + Performance and stability improvements on all platforms. + + +2017-08-02: Version 6.2.129 + + Performance and stability improvements on all platforms. + + +2017-08-02: Version 6.2.128 + + Performance and stability improvements on all platforms. + + +2017-08-02: Version 6.2.127 + + Performance and stability improvements on all platforms. + + +2017-08-02: Version 6.2.126 + + Performance and stability improvements on all platforms. + + +2017-08-02: Version 6.2.125 + + Performance and stability improvements on all platforms. + + +2017-08-02: Version 6.2.124 + + Performance and stability improvements on all platforms. + + +2017-08-02: Version 6.2.123 + + Performance and stability improvements on all platforms. + + +2017-08-02: Version 6.2.122 + + Performance and stability improvements on all platforms. + + +2017-08-02: Version 6.2.121 + + Performance and stability improvements on all platforms. + + +2017-08-02: Version 6.2.120 + + Performance and stability improvements on all platforms. + + +2017-08-01: Version 6.2.119 + + Performance and stability improvements on all platforms. + + +2017-08-01: Version 6.2.118 + + Performance and stability improvements on all platforms. + + +2017-08-01: Version 6.2.117 + + Performance and stability improvements on all platforms. + + +2017-08-01: Version 6.2.116 + + Performance and stability improvements on all platforms. + + +2017-08-01: Version 6.2.115 + + Performance and stability improvements on all platforms. + + +2017-08-01: Version 6.2.114 + + Performance and stability improvements on all platforms. + + +2017-08-01: Version 6.2.113 + + Performance and stability improvements on all platforms. + + +2017-08-01: Version 6.2.112 + + Performance and stability improvements on all platforms. + + +2017-08-01: Version 6.2.111 + + Performance and stability improvements on all platforms. + + +2017-08-01: Version 6.2.110 + + Performance and stability improvements on all platforms. + + +2017-08-01: Version 6.2.109 + + Performance and stability improvements on all platforms. + + +2017-08-01: Version 6.2.108 + + Performance and stability improvements on all platforms. + + +2017-08-01: Version 6.2.107 + + Performance and stability improvements on all platforms. + + +2017-08-01: Version 6.2.106 + + Performance and stability improvements on all platforms. + + +2017-08-01: Version 6.2.105 + + Performance and stability improvements on all platforms. + + +2017-07-31: Version 6.2.104 + + Performance and stability improvements on all platforms. + + +2017-07-31: Version 6.2.103 + + Performance and stability improvements on all platforms. + + +2017-07-31: Version 6.2.102 + + Performance and stability improvements on all platforms. + + +2017-07-31: Version 6.2.101 + + Performance and stability improvements on all platforms. + + +2017-07-31: Version 6.2.100 + + Performance and stability improvements on all platforms. + + +2017-07-31: Version 6.2.99 + + Performance and stability improvements on all platforms. + + +2017-07-31: Version 6.2.98 + + Performance and stability improvements on all platforms. + + +2017-07-31: Version 6.2.97 + + Performance and stability improvements on all platforms. + + +2017-07-31: Version 6.2.96 + + Performance and stability improvements on all platforms. + + +2017-07-31: Version 6.2.95 + + Performance and stability improvements on all platforms. + + +2017-07-31: Version 6.2.94 + + Performance and stability improvements on all platforms. + + +2017-07-31: Version 6.2.93 + + Performance and stability improvements on all platforms. + + +2017-07-31: Version 6.2.92 + + Performance and stability improvements on all platforms. + + +2017-07-31: Version 6.2.91 + + Performance and stability improvements on all platforms. + + +2017-07-31: Version 6.2.90 + + Performance and stability improvements on all platforms. + + +2017-07-31: Version 6.2.89 + + Performance and stability improvements on all platforms. + + +2017-07-31: Version 6.2.88 + + Performance and stability improvements on all platforms. + + +2017-07-31: Version 6.2.87 + + Performance and stability improvements on all platforms. + + +2017-07-31: Version 6.2.86 + + Performance and stability improvements on all platforms. + + +2017-07-31: Version 6.2.85 + + Performance and stability improvements on all platforms. + + +2017-07-29: Version 6.2.84 + + Performance and stability improvements on all platforms. + + +2017-07-28: Version 6.2.83 + + Performance and stability improvements on all platforms. + + +2017-07-28: Version 6.2.82 + + Performance and stability improvements on all platforms. + + +2017-07-28: Version 6.2.81 + + Performance and stability improvements on all platforms. + + +2017-07-28: Version 6.2.80 + + Performance and stability improvements on all platforms. + + +2017-07-28: Version 6.2.79 + + Performance and stability improvements on all platforms. + + +2017-07-28: Version 6.2.78 + + Performance and stability improvements on all platforms. + + +2017-07-28: Version 6.2.77 + + Performance and stability improvements on all platforms. + + +2017-07-28: Version 6.2.76 + + Performance and stability improvements on all platforms. + + +2017-07-28: Version 6.2.75 + + Performance and stability improvements on all platforms. + + +2017-07-28: Version 6.2.74 + + Performance and stability improvements on all platforms. + + +2017-07-28: Version 6.2.73 + + Performance and stability improvements on all platforms. + + +2017-07-28: Version 6.2.72 + + Performance and stability improvements on all platforms. + + +2017-07-28: Version 6.2.71 + + Performance and stability improvements on all platforms. + + +2017-07-28: Version 6.2.70 + + Performance and stability improvements on all platforms. + + +2017-07-28: Version 6.2.69 + + Performance and stability improvements on all platforms. + + +2017-07-28: Version 6.2.68 + + Performance and stability improvements on all platforms. + + +2017-07-28: Version 6.2.67 + + Performance and stability improvements on all platforms. + + +2017-07-28: Version 6.2.66 + + Performance and stability improvements on all platforms. + + +2017-07-27: Version 6.2.65 + + Performance and stability improvements on all platforms. + + +2017-07-27: Version 6.2.64 + + Performance and stability improvements on all platforms. + + +2017-07-27: Version 6.2.63 + + Performance and stability improvements on all platforms. + + +2017-07-27: Version 6.2.62 + + Performance and stability improvements on all platforms. + + +2017-07-27: Version 6.2.61 + + Performance and stability improvements on all platforms. + + +2017-07-27: Version 6.2.60 + + Performance and stability improvements on all platforms. + + +2017-07-27: Version 6.2.59 + + Performance and stability improvements on all platforms. + + +2017-07-27: Version 6.2.58 + + Performance and stability improvements on all platforms. + + +2017-07-27: Version 6.2.57 + + Performance and stability improvements on all platforms. + + +2017-07-27: Version 6.2.56 + + Performance and stability improvements on all platforms. + + +2017-07-27: Version 6.2.55 + + Performance and stability improvements on all platforms. + + +2017-07-27: Version 6.2.54 + + Performance and stability improvements on all platforms. + + +2017-07-27: Version 6.2.53 + + Performance and stability improvements on all platforms. + + +2017-07-26: Version 6.2.52 + + Performance and stability improvements on all platforms. + + +2017-07-26: Version 6.2.51 + + Performance and stability improvements on all platforms. + + +2017-07-26: Version 6.2.50 + + Performance and stability improvements on all platforms. + + +2017-07-26: Version 6.2.49 + + Performance and stability improvements on all platforms. + + +2017-07-26: Version 6.2.48 + + Performance and stability improvements on all platforms. + + +2017-07-26: Version 6.2.47 + + Performance and stability improvements on all platforms. + + +2017-07-26: Version 6.2.46 + + Performance and stability improvements on all platforms. + + +2017-07-25: Version 6.2.45 + + Performance and stability improvements on all platforms. + + +2017-07-25: Version 6.2.44 + + Performance and stability improvements on all platforms. + + +2017-07-25: Version 6.2.43 + + Performance and stability improvements on all platforms. + + +2017-07-25: Version 6.2.42 + + Performance and stability improvements on all platforms. + + +2017-07-25: Version 6.2.41 + + Performance and stability improvements on all platforms. + + +2017-07-25: Version 6.2.40 + + Performance and stability improvements on all platforms. + + +2017-07-25: Version 6.2.39 + + Performance and stability improvements on all platforms. + + +2017-07-25: Version 6.2.38 + + Performance and stability improvements on all platforms. + + +2017-07-25: Version 6.2.37 + + Performance and stability improvements on all platforms. + + +2017-07-25: Version 6.2.36 + + Performance and stability improvements on all platforms. + + +2017-07-25: Version 6.2.35 + + Performance and stability improvements on all platforms. + + +2017-07-25: Version 6.2.34 + + Performance and stability improvements on all platforms. + + +2017-07-25: Version 6.2.33 + + Performance and stability improvements on all platforms. + + +2017-07-25: Version 6.2.32 + + Performance and stability improvements on all platforms. + + +2017-07-25: Version 6.2.31 + + Performance and stability improvements on all platforms. + + +2017-07-25: Version 6.2.30 + + Performance and stability improvements on all platforms. + + +2017-07-25: Version 6.2.29 + + Performance and stability improvements on all platforms. + + +2017-07-25: Version 6.2.28 + + Performance and stability improvements on all platforms. + + +2017-07-25: Version 6.2.27 + + Performance and stability improvements on all platforms. + + +2017-07-24: Version 6.2.26 + + Performance and stability improvements on all platforms. + + +2017-07-24: Version 6.2.25 + + Performance and stability improvements on all platforms. + + +2017-07-24: Version 6.2.24 + + Performance and stability improvements on all platforms. + + +2017-07-24: Version 6.2.23 + + Performance and stability improvements on all platforms. + + +2017-07-24: Version 6.2.22 + + Performance and stability improvements on all platforms. + + +2017-07-24: Version 6.2.21 + + Performance and stability improvements on all platforms. + + +2017-07-24: Version 6.2.20 + + Performance and stability improvements on all platforms. + + +2017-07-24: Version 6.2.19 + + Performance and stability improvements on all platforms. + + +2017-07-24: Version 6.2.18 + + Performance and stability improvements on all platforms. + + +2017-07-24: Version 6.2.17 + + Performance and stability improvements on all platforms. + + +2017-07-24: Version 6.2.16 + + Performance and stability improvements on all platforms. + + +2017-07-24: Version 6.2.15 + + Performance and stability improvements on all platforms. + + +2017-07-24: Version 6.2.14 + + Performance and stability improvements on all platforms. + + +2017-07-24: Version 6.2.13 + + Performance and stability improvements on all platforms. + + +2017-07-24: Version 6.2.12 + + Performance and stability improvements on all platforms. + + +2017-07-24: Version 6.2.11 + + Performance and stability improvements on all platforms. + + +2017-07-24: Version 6.2.10 + + Performance and stability improvements on all platforms. + + +2017-07-24: Version 6.2.9 + + Performance and stability improvements on all platforms. + + +2017-07-24: Version 6.2.8 + + Performance and stability improvements on all platforms. + + +2017-07-24: Version 6.2.7 + + Performance and stability improvements on all platforms. + + +2017-07-24: Version 6.2.6 + + Performance and stability improvements on all platforms. + + +2017-07-23: Version 6.2.5 + + Performance and stability improvements on all platforms. + + +2017-07-23: Version 6.2.4 + + Performance and stability improvements on all platforms. + + +2017-07-22: Version 6.2.3 + + Performance and stability improvements on all platforms. + + +2017-07-21: Version 6.2.2 + + Performance and stability improvements on all platforms. + + +2017-07-21: Version 6.2.1 + + Performance and stability improvements on all platforms. + + +2017-07-20: Version 6.1.561 + + Performance and stability improvements on all platforms. + + +2017-07-20: Version 6.1.560 + + Performance and stability improvements on all platforms. + + +2017-07-20: Version 6.1.559 + + Performance and stability improvements on all platforms. + + +2017-07-20: Version 6.1.558 + + Performance and stability improvements on all platforms. + + +2017-07-19: Version 6.1.557 + + Performance and stability improvements on all platforms. + + +2017-07-19: Version 6.1.556 + + Performance and stability improvements on all platforms. + + +2017-07-19: Version 6.1.555 + + Performance and stability improvements on all platforms. + + +2017-07-19: Version 6.1.554 + + Performance and stability improvements on all platforms. + + +2017-07-19: Version 6.1.553 + + Performance and stability improvements on all platforms. + + +2017-07-19: Version 6.1.552 + + Performance and stability improvements on all platforms. + + +2017-07-19: Version 6.1.551 + + Performance and stability improvements on all platforms. + + +2017-07-19: Version 6.1.550 + + Performance and stability improvements on all platforms. + + +2017-07-19: Version 6.1.549 + + Performance and stability improvements on all platforms. + + +2017-07-19: Version 6.1.548 + + Performance and stability improvements on all platforms. + + +2017-07-19: Version 6.1.547 + + Performance and stability improvements on all platforms. + + +2017-07-19: Version 6.1.546 + + Performance and stability improvements on all platforms. + + +2017-07-19: Version 6.1.545 + + Performance and stability improvements on all platforms. + + +2017-07-19: Version 6.1.544 + + Performance and stability improvements on all platforms. + + +2017-07-19: Version 6.1.543 + + Performance and stability improvements on all platforms. + + +2017-07-19: Version 6.1.542 + + Performance and stability improvements on all platforms. + + +2017-07-19: Version 6.1.541 + + Performance and stability improvements on all platforms. + + +2017-07-19: Version 6.1.540 + + Performance and stability improvements on all platforms. + + +2017-07-18: Version 6.1.539 + + Performance and stability improvements on all platforms. + + +2017-07-18: Version 6.1.538 + + Performance and stability improvements on all platforms. + + +2017-07-18: Version 6.1.537 + + Performance and stability improvements on all platforms. + + +2017-07-18: Version 6.1.536 + + Performance and stability improvements on all platforms. + + +2017-07-18: Version 6.1.535 + + Performance and stability improvements on all platforms. + + 2017-07-18: Version 6.1.534 Performance and stability improvements on all platforms. diff --git a/deps/v8/DEPS b/deps/v8/DEPS index 7752da2f40f817..4b64895ced3a6e 100644 --- a/deps/v8/DEPS +++ b/deps/v8/DEPS @@ -8,15 +8,15 @@ vars = { deps = { "v8/build": - Var("chromium_url") + "/chromium/src/build.git" + "@" + "1808a907ce42f13b224c263e9843d718fc6d9c39", + Var("chromium_url") + "/chromium/src/build.git" + "@" + "48a2b7b39debc7c77c868c9ddb0a360af1ebc367", "v8/tools/gyp": - Var("chromium_url") + "/external/gyp.git" + "@" + "eb296f67da078ec01f5e3a9ea9cdc6d26d680161", + Var("chromium_url") + "/external/gyp.git" + "@" + "d61a9397e668fa9843c4aa7da9e79460fe590bfb", "v8/third_party/icu": - Var("chromium_url") + "/chromium/deps/icu.git" + "@" + "dfa798fe694702b43a3debc3290761f22b1acaf8", + Var("chromium_url") + "/chromium/deps/icu.git" + "@" + "21d33b1a09a77f033478ea4ffffb61e6970f83bd", "v8/third_party/instrumented_libraries": Var("chromium_url") + "/chromium/src/third_party/instrumented_libraries.git" + "@" + "644afd349826cb68204226a16c38bde13abe9c3c", "v8/buildtools": - Var("chromium_url") + "/chromium/buildtools.git" + "@" + "5ad14542a6a74dd914f067b948c5d3e8d170396b", + Var("chromium_url") + "/chromium/buildtools.git" + "@" + "5af0a3a8b89827a8634132080a39ab4b63dee489", "v8/base/trace_event/common": Var("chromium_url") + "/chromium/src/base/trace_event/common.git" + "@" + "65d1d42a5df6c0a563a6fdfa58a135679185e5d9", "v8/third_party/jinja2": @@ -24,7 +24,7 @@ deps = { "v8/third_party/markupsafe": Var("chromium_url") + "/chromium/src/third_party/markupsafe.git" + "@" + "8f45f5cfa0009d2a70589bcda0349b8cb2b72783", "v8/tools/swarming_client": - Var('chromium_url') + '/external/swarming.client.git' + '@' + "a56c2b39ca23bdf41458421a7f825ddbf3f43f28", + Var('chromium_url') + '/external/swarming.client.git' + '@' + "42721e128da760b345ab60d7cf34e300269112d7", "v8/testing/gtest": Var("chromium_url") + "/external/github.com/google/googletest.git" + "@" + "6f8a66431cb592dad629028a50b3dd418a408c87", "v8/testing/gmock": @@ -38,9 +38,9 @@ deps = { "v8/test/test262/harness": Var("chromium_url") + "/external/github.com/test262-utils/test262-harness-py.git" + "@" + "0f2acdd882c84cff43b9d60df7574a1901e2cdcd", "v8/tools/clang": - Var("chromium_url") + "/chromium/src/tools/clang.git" + "@" + "844603c1fcd47f578931b3ccd583e19f816a3842", + Var("chromium_url") + "/chromium/src/tools/clang.git" + "@" + "40f69660bf3cd407e72b8ae240fdd6c513dddbfe", "v8/test/wasm-js": - Var("chromium_url") + "/external/github.com/WebAssembly/spec.git" + "@" + "aadd3a340c78e53078a7bb6c17cc30f105c2960c", + Var("chromium_url") + "/external/github.com/WebAssembly/spec.git" + "@" + "17b4a4d98c80b1ec736649d5a73496a0e6d12d4c", } deps_os = { @@ -48,7 +48,7 @@ deps_os = { "v8/third_party/android_tools": Var("chromium_url") + "/android_tools.git" + "@" + "e9d4018e149d50172ed462a7c21137aa915940ec", "v8/third_party/catapult": - Var('chromium_url') + "/external/github.com/catapult-project/catapult.git" + "@" + "44b022b2a09508ec025ae76a26308e89deb2cf69", + Var('chromium_url') + "/external/github.com/catapult-project/catapult.git" + "@" + "7149cbfdfd26a5dd8e5d96cbb1da9356e2813a5d", }, } diff --git a/deps/v8/Makefile b/deps/v8/Makefile index b381918355602d..167ebf8c082015 100644 --- a/deps/v8/Makefile +++ b/deps/v8/Makefile @@ -63,6 +63,10 @@ endif ifeq ($(tracemaps), on) GYPFLAGS += -Dv8_trace_maps=1 endif +# concurrentmarking=on +ifeq ($(concurrentmarking), on) + GYPFLAGS += -Dv8_enable_concurrent_marking=1 +endif # backtrace=off ifeq ($(backtrace), off) GYPFLAGS += -Dv8_enable_backtrace=0 @@ -334,32 +338,32 @@ $(ANDROID_BUILDS): $(GYPFILES) $(ENVFILE) Makefile.android # Test targets. check: all - @tools/run-tests.py $(TESTJOBS) --outdir=$(OUTDIR) \ + @gypfiles/run-tests-legacy.py $(TESTJOBS) --outdir=$(OUTDIR) \ --arch=$(shell echo $(DEFAULT_ARCHES) | sed -e 's/ /,/g') \ $(TESTFLAGS) $(addsuffix .check,$(MODES)): $$(basename $$@) - @tools/run-tests.py $(TESTJOBS) --outdir=$(OUTDIR) \ + @gypfiles/run-tests-legacy.py $(TESTJOBS) --outdir=$(OUTDIR) \ --mode=$(basename $@) $(TESTFLAGS) $(addsuffix .check,$(ARCHES)): $$(basename $$@) - @tools/run-tests.py $(TESTJOBS) --outdir=$(OUTDIR) \ + @gypfiles/run-tests-legacy.py $(TESTJOBS) --outdir=$(OUTDIR) \ --arch=$(basename $@) $(TESTFLAGS) $(CHECKS): $$(basename $$@) - @tools/run-tests.py $(TESTJOBS) --outdir=$(OUTDIR) \ + @gypfiles/run-tests-legacy.py $(TESTJOBS) --outdir=$(OUTDIR) \ --arch-and-mode=$(basename $@) $(TESTFLAGS) $(addsuffix .quickcheck,$(MODES)): $$(basename $$@) - @tools/run-tests.py $(TESTJOBS) --outdir=$(OUTDIR) \ + @gypfiles/run-tests-legacy.py $(TESTJOBS) --outdir=$(OUTDIR) \ --mode=$(basename $@) $(TESTFLAGS) --quickcheck $(addsuffix .quickcheck,$(ARCHES)): $$(basename $$@) - @tools/run-tests.py $(TESTJOBS) --outdir=$(OUTDIR) \ + @gypfiles/run-tests-legacy.py $(TESTJOBS) --outdir=$(OUTDIR) \ --arch=$(basename $@) $(TESTFLAGS) --quickcheck $(QUICKCHECKS): $$(basename $$@) - @tools/run-tests.py $(TESTJOBS) --outdir=$(OUTDIR) \ + @gypfiles/run-tests-legacy.py $(TESTJOBS) --outdir=$(OUTDIR) \ --arch-and-mode=$(basename $@) $(TESTFLAGS) --quickcheck $(addsuffix .sync, $(ANDROID_BUILDS)): $$(basename $$@) @@ -367,7 +371,7 @@ $(addsuffix .sync, $(ANDROID_BUILDS)): $$(basename $$@) $(shell pwd) $(ANDROID_V8) $(addsuffix .check, $(ANDROID_BUILDS)): $$(basename $$@).sync - @tools/run-tests.py $(TESTJOBS) --outdir=$(OUTDIR) \ + @gypfiles/run-tests-legacy.py $(TESTJOBS) --outdir=$(OUTDIR) \ --arch-and-mode=$(basename $@) \ --timeout=600 \ --command-prefix="tools/android-run.py" $(TESTFLAGS) @@ -376,7 +380,7 @@ $(addsuffix .check, $(ANDROID_ARCHES)): \ $(addprefix $$(basename $$@).,$(MODES)).check native.check: native - @tools/run-tests.py $(TESTJOBS) --outdir=$(OUTDIR)/native \ + @gypfiles/run-tests-legacy.py $(TESTJOBS) --outdir=$(OUTDIR)/native \ --arch-and-mode=. $(TESTFLAGS) SUPERFASTTESTMODES = ia32.release @@ -387,18 +391,18 @@ COMMA = , EMPTY = SPACE = $(EMPTY) $(EMPTY) quickcheck: $(subst $(COMMA),$(SPACE),$(FASTCOMPILEMODES)) - tools/run-tests.py $(TESTJOBS) --outdir=$(OUTDIR) \ + gypfiles/run-tests-legacy.py $(TESTJOBS) --outdir=$(OUTDIR) \ --arch-and-mode=$(SUPERFASTTESTMODES) $(TESTFLAGS) --quickcheck \ --download-data mozilla webkit - tools/run-tests.py $(TESTJOBS) --outdir=$(OUTDIR) \ + gypfiles/run-tests-legacy.py $(TESTJOBS) --outdir=$(OUTDIR) \ --arch-and-mode=$(FASTTESTMODES) $(TESTFLAGS) --quickcheck qc: quickcheck turbocheck: $(subst $(COMMA),$(SPACE),$(FASTCOMPILEMODES)) - tools/run-tests.py $(TESTJOBS) --outdir=$(OUTDIR) \ + gypfiles/run-tests-legacy.py $(TESTJOBS) --outdir=$(OUTDIR) \ --arch-and-mode=$(SUPERFASTTESTMODES) $(TESTFLAGS) \ --quickcheck --variants=turbofan --download-data mozilla webkit - tools/run-tests.py $(TESTJOBS) --outdir=$(OUTDIR) \ + gypfiles/run-tests-legacy.py $(TESTJOBS) --outdir=$(OUTDIR) \ --arch-and-mode=$(FASTTESTMODES) $(TESTFLAGS) \ --quickcheck --variants=turbofan tc: turbocheck diff --git a/deps/v8/OWNERS b/deps/v8/OWNERS index dd96fa6b5fe586..621f375e336d0c 100644 --- a/deps/v8/OWNERS +++ b/deps/v8/OWNERS @@ -7,7 +7,9 @@ bradnelson@chromium.org cbruni@chromium.org clemensh@chromium.org danno@chromium.org +eholk@chromium.org franzih@chromium.org +gdeepti@chromium.org gsathya@chromium.org hablich@chromium.org hpayer@chromium.org diff --git a/deps/v8/benchmarks/deltablue.js b/deps/v8/benchmarks/deltablue.js index dacee3f13ff0de..f44973cb9f8762 100644 --- a/deps/v8/benchmarks/deltablue.js +++ b/deps/v8/benchmarks/deltablue.js @@ -790,7 +790,7 @@ Plan.prototype.execute = function () { * In case 1, the added constraint is stronger than the stay * constraint and values must propagate down the entire length of the * chain. In case 2, the added constraint is weaker than the stay - * constraint so it cannot be accomodated. The cost in this case is, + * constraint so it cannot be accommodated. The cost in this case is, * of course, very low. Typical situations lie somewhere between these * two extremes. */ diff --git a/deps/v8/gni/isolate.gni b/deps/v8/gni/isolate.gni index 82dc8cf3fbc005..f5453e560653e6 100644 --- a/deps/v8/gni/isolate.gni +++ b/deps/v8/gni/isolate.gni @@ -156,8 +156,6 @@ template("v8_isolate_run") { "--config-variable", "icu_use_data_file_flag=$icu_use_data_file_flag", "--config-variable", - "is_gn=1", - "--config-variable", "msan=$msan", "--config-variable", "tsan=$tsan", diff --git a/deps/v8/gni/v8.gni b/deps/v8/gni/v8.gni index 9a2bb3dff4ffa6..0467720f456680 100644 --- a/deps/v8/gni/v8.gni +++ b/deps/v8/gni/v8.gni @@ -2,6 +2,7 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. +import("//build/config/jumbo.gni") import("//build/config/sanitizers/sanitizers.gni") import("//build/config/v8_target_cpu.gni") import("//build/split_static_library.gni") @@ -109,7 +110,11 @@ template("v8_source_set") { } else if (defined(v8_static_library) && v8_static_library) { link_target_type = "static_library" } else { - link_target_type = "source_set" + if (use_jumbo_build) { + link_target_type = "jumbo_source_set" + } else { + link_target_type = "source_set" + } } target(link_target_type, target_name) { forward_variables_from(invoker, "*", [ "configs" ]) @@ -120,7 +125,7 @@ template("v8_source_set") { } template("v8_header_set") { - source_set(target_name) { + jumbo_source_set(target_name) { forward_variables_from(invoker, "*", [ "configs" ]) configs += invoker.configs configs -= v8_remove_configs @@ -151,14 +156,13 @@ template("v8_executable") { # reasons. if (is_clang) { configs -= [ "//build/config/sanitizers:default_sanitizer_flags" ] - configs += [ "//build/config/sanitizers:default_sanitizer_flags_but_coverage" ] + configs += + [ "//build/config/sanitizers:default_sanitizer_flags_but_coverage" ] } else { configs -= [ v8_path_prefix + ":v8_gcov_coverage_cflags" ] } } - deps += [ - v8_path_prefix + ":v8_dump_build_config", - ] + deps += [ v8_path_prefix + ":v8_dump_build_config" ] } } diff --git a/deps/v8/gypfiles/features.gypi b/deps/v8/gypfiles/features.gypi index 0eeec2466ebc51..55b250ddc143e5 100644 --- a/deps/v8/gypfiles/features.gypi +++ b/deps/v8/gypfiles/features.gypi @@ -29,6 +29,10 @@ { 'variables': { + 'variables': { + 'v8_target_arch%': '<(target_arch)', + }, + 'v8_enable_disassembler%': 0, 'v8_promise_internal_field_count%': 0, @@ -76,6 +80,9 @@ # Temporary flag to allow embedders to update their microtasks scopes. 'v8_check_microtasks_scopes_consistency%': 'false', + + # Enable concurrent marking. + 'v8_enable_concurrent_marking%': 0, }, 'target_defaults': { 'conditions': [ @@ -124,6 +131,9 @@ ['v8_check_microtasks_scopes_consistency=="true"', { 'defines': ['V8_CHECK_MICROTASKS_SCOPES_CONSISTENCY',], }], + ['v8_enable_concurrent_marking==1', { + 'defines': ['V8_CONCURRENT_MARKING',], + }], ], # conditions 'configurations': { 'DebugBaseCommon': { diff --git a/deps/v8/gypfiles/isolate.gypi b/deps/v8/gypfiles/isolate.gypi index 11b05705307625..149818c8d0636f 100644 --- a/deps/v8/gypfiles/isolate.gypi +++ b/deps/v8/gypfiles/isolate.gypi @@ -74,7 +74,6 @@ '--config-variable', 'gcmole=<(gcmole)', '--config-variable', 'has_valgrind=<(has_valgrind)', '--config-variable', 'icu_use_data_file_flag=<(icu_use_data_file_flag)', - '--config-variable', 'is_gn=0', '--config-variable', 'msan=<(msan)', '--config-variable', 'tsan=<(tsan)', '--config-variable', 'coverage=<(coverage)', diff --git a/deps/v8/gypfiles/landmine_utils.py b/deps/v8/gypfiles/landmine_utils.py index cb3499132a3c2f..8bdc2b648b32b9 100644 --- a/deps/v8/gypfiles/landmine_utils.py +++ b/deps/v8/gypfiles/landmine_utils.py @@ -76,7 +76,7 @@ def distributor(): @memoize() def platform(): """ - Returns a string representing the platform this build is targetted for. + Returns a string representing the platform this build is targeted for. Possible values: 'win', 'mac', 'linux', 'ios', 'android' """ if 'OS' in gyp_defines(): diff --git a/deps/v8/gypfiles/run-tests-legacy.py b/deps/v8/gypfiles/run-tests-legacy.py new file mode 100755 index 00000000000000..f1ea478c62d62e --- /dev/null +++ b/deps/v8/gypfiles/run-tests-legacy.py @@ -0,0 +1,50 @@ +#!/usr/bin/env python +# Copyright 2017 the V8 project authors. All rights reserved. +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. + +""" +Legacy test-runner wrapper supporting a product of multiple architectures and +modes. +""" + +import argparse +import itertools +from os.path import abspath, dirname, join +import subprocess +import sys + +BASE_DIR = dirname(dirname(abspath(__file__))) +RUN_TESTS = join(BASE_DIR, 'tools', 'run-tests.py') + +def main(): + parser = argparse.ArgumentParser(description='Legacy test-runner wrapper') + parser.add_argument( + '--arch', help='Comma-separated architectures to run tests on') + parser.add_argument( + '--mode', help='Comma-separated modes to run tests on') + parser.add_argument( + '--arch-and-mode', + help='Architecture and mode in the format \'arch.mode\'', + ) + + args, remaining_args = parser.parse_known_args(sys.argv) + if (args.arch or args.mode) and args.arch_and_mode: + parser.error('The flags --arch-and-mode and --arch/--mode are exclusive.') + arch = (args.arch or 'ia32,x64,arm').split(',') + mode = (args.mode or 'release,debug').split(',') + if args.arch_and_mode: + arch_and_mode = map( + lambda am: am.split('.'), + args.arch_and_mode.split(',')) + arch = map(lambda am: am[0], arch_and_mode) + mode = map(lambda am: am[1], arch_and_mode) + + ret_code = 0 + for a, m in itertools.product(arch, mode): + ret_code |= subprocess.check_call( + [RUN_TESTS] + remaining_args[1:] + ['--arch', a, '--mode', m]) + return ret_code + +if __name__ == '__main__': + sys.exit(main()) diff --git a/deps/v8/gypfiles/standalone.gypi b/deps/v8/gypfiles/standalone.gypi index a30373be6129e1..63930d8aef10b1 100644 --- a/deps/v8/gypfiles/standalone.gypi +++ b/deps/v8/gypfiles/standalone.gypi @@ -754,7 +754,7 @@ '-Wno-unused-parameter', '-pthread', '-pedantic', - '-Wmissing-field-initializers', + '-Wno-missing-field-initializers', '-Wno-gnu-zero-variadic-macro-arguments', ], 'cflags_cc': [ diff --git a/deps/v8/gypfiles/toolchain.gypi b/deps/v8/gypfiles/toolchain.gypi index 5733d2d54ca130..80844cecc671ef 100644 --- a/deps/v8/gypfiles/toolchain.gypi +++ b/deps/v8/gypfiles/toolchain.gypi @@ -32,6 +32,7 @@ 'msvs_use_common_release': 0, 'clang%': 0, 'asan%': 0, + 'cfi_vptr%': 0, 'lsan%': 0, 'msan%': 0, 'tsan%': 0, diff --git a/deps/v8/include/v8-inspector.h b/deps/v8/include/v8-inspector.h index d0bb9b47fe4d69..43bf3b4f60b1c8 100644 --- a/deps/v8/include/v8-inspector.h +++ b/deps/v8/include/v8-inspector.h @@ -211,8 +211,6 @@ class V8_EXPORT V8InspectorClient { // TODO(dgozman): this was added to support service worker shadow page. We // should not connect at all. virtual bool canExecuteScripts(int contextGroupId) { return true; } - - virtual void maxAsyncCallStackDepthChanged(int depth) {} }; class V8_EXPORT V8Inspector { diff --git a/deps/v8/include/v8-platform.h b/deps/v8/include/v8-platform.h index 3df78a81c0a837..ed2acc3a74e16c 100644 --- a/deps/v8/include/v8-platform.h +++ b/deps/v8/include/v8-platform.h @@ -132,6 +132,15 @@ class Platform { virtual ~Platform() = default; + /** + * Enables the embedder to respond in cases where V8 can't allocate large + * blocks of memory. V8 retries the failed allocation once after calling this + * method. On success, execution continues; otherwise V8 exits with a fatal + * error. + * Embedder overrides of this function must NOT call back into V8. + */ + virtual void OnCriticalMemoryPressure() {} + /** * Gets the number of threads that are used to execute background tasks. Is * used to estimate the number of tasks a work package should be split into. @@ -195,6 +204,16 @@ class Platform { * the epoch. **/ virtual double MonotonicallyIncreasingTime() = 0; + + /** + * Current wall-clock time in milliseconds since epoch. + * This function is expected to return at least millisecond-precision values. + */ + virtual double CurrentClockTimeMillis() { + // TODO(dats): Make pure virtual after V8 roll in Chromium. + return 0.0; + } + typedef void (*StackTracePrinter)(); /** @@ -208,79 +227,13 @@ class Platform { */ virtual TracingController* GetTracingController() = 0; - // DEPRECATED methods, use TracingController interface instead. - - /** - * Called by TRACE_EVENT* macros, don't call this directly. - * The name parameter is a category group for example: - * TRACE_EVENT0("v8,parse", "V8.Parse") - * The pointer returned points to a value with zero or more of the bits - * defined in CategoryGroupEnabledFlags. - **/ - virtual const uint8_t* GetCategoryGroupEnabled(const char* name) { - static uint8_t no = 0; - return &no; - } - - /** - * Gets the category group name of the given category_enabled_flag pointer. - * Usually used while serliazing TRACE_EVENTs. - **/ - virtual const char* GetCategoryGroupName( - const uint8_t* category_enabled_flag) { - static const char dummy[] = "dummy"; - return dummy; - } - - /** - * Adds a trace event to the platform tracing system. This function call is - * usually the result of a TRACE_* macro from trace_event_common.h when - * tracing and the category of the particular trace are enabled. It is not - * advisable to call this function on its own; it is really only meant to be - * used by the trace macros. The returned handle can be used by - * UpdateTraceEventDuration to update the duration of COMPLETE events. - */ - virtual uint64_t AddTraceEvent( - char phase, const uint8_t* category_enabled_flag, const char* name, - const char* scope, uint64_t id, uint64_t bind_id, int32_t num_args, - const char** arg_names, const uint8_t* arg_types, - const uint64_t* arg_values, unsigned int flags) { - return 0; - } - + protected: /** - * Adds a trace event to the platform tracing system. This function call is - * usually the result of a TRACE_* macro from trace_event_common.h when - * tracing and the category of the particular trace are enabled. It is not - * advisable to call this function on its own; it is really only meant to be - * used by the trace macros. The returned handle can be used by - * UpdateTraceEventDuration to update the duration of COMPLETE events. + * Default implementation of current wall-clock time in milliseconds + * since epoch. Useful for implementing |CurrentClockTimeMillis| if + * nothing special needed. */ - virtual uint64_t AddTraceEvent( - char phase, const uint8_t* category_enabled_flag, const char* name, - const char* scope, uint64_t id, uint64_t bind_id, int32_t num_args, - const char** arg_names, const uint8_t* arg_types, - const uint64_t* arg_values, - std::unique_ptr* arg_convertables, - unsigned int flags) { - return AddTraceEvent(phase, category_enabled_flag, name, scope, id, bind_id, - num_args, arg_names, arg_types, arg_values, flags); - } - - /** - * Sets the duration field of a COMPLETE trace event. It must be called with - * the handle returned from AddTraceEvent(). - **/ - virtual void UpdateTraceEventDuration(const uint8_t* category_enabled_flag, - const char* name, uint64_t handle) {} - - typedef v8::TracingController::TraceStateObserver TraceStateObserver; - - /** Adds tracing state change observer. */ - virtual void AddTraceStateObserver(TraceStateObserver*) {} - - /** Removes tracing state change observer. */ - virtual void RemoveTraceStateObserver(TraceStateObserver*) {} + static double SystemClockTimeMillis(); }; } // namespace v8 diff --git a/deps/v8/include/v8-profiler.h b/deps/v8/include/v8-profiler.h index b60d137f4479e6..621ca8b215762d 100644 --- a/deps/v8/include/v8-profiler.h +++ b/deps/v8/include/v8-profiler.h @@ -389,7 +389,7 @@ class V8_EXPORT HeapGraphNode { kRegExp = 6, // RegExp. kHeapNumber = 7, // Number stored in the heap. kNative = 8, // Native object (not from V8 heap). - kSynthetic = 9, // Synthetic object, usualy used for grouping + kSynthetic = 9, // Synthetic object, usually used for grouping // snapshot items together. kConsString = 10, // Concatenated string. A pair of pointers to strings. kSlicedString = 11, // Sliced string. A fragment of another string. @@ -784,7 +784,7 @@ class V8_EXPORT HeapProfiler { /** * Returns the sampled profile of allocations allocated (and still live) since * StartSamplingHeapProfiler was called. The ownership of the pointer is - * transfered to the caller. Returns nullptr if sampling heap profiler is not + * transferred to the caller. Returns nullptr if sampling heap profiler is not * active. */ AllocationProfile* GetAllocationProfile(); @@ -809,9 +809,6 @@ class V8_EXPORT HeapProfiler { */ static const uint16_t kPersistentHandleNoClassId = 0; - /** Returns memory used for profiler internal data and snapshots. */ - size_t GetProfilerMemorySize(); - private: HeapProfiler(); ~HeapProfiler(); diff --git a/deps/v8/include/v8-version.h b/deps/v8/include/v8-version.h index 3d24701f5ef608..2760fe3f297be8 100644 --- a/deps/v8/include/v8-version.h +++ b/deps/v8/include/v8-version.h @@ -9,9 +9,9 @@ // NOTE these macros are used by some of the tool scripts and the build // system so their names cannot be changed without changing the scripts. #define V8_MAJOR_VERSION 6 -#define V8_MINOR_VERSION 1 -#define V8_BUILD_NUMBER 534 -#define V8_PATCH_LEVEL 51 +#define V8_MINOR_VERSION 2 +#define V8_BUILD_NUMBER 414 +#define V8_PATCH_LEVEL 46 // Use 1 for candidates and 0 otherwise. // (Boolean macro values are not supported by all preprocessors.) diff --git a/deps/v8/include/v8.h b/deps/v8/include/v8.h index 931dd9a6280c29..eec2256aeab025 100644 --- a/deps/v8/include/v8.h +++ b/deps/v8/include/v8.h @@ -139,6 +139,7 @@ template class ReturnValue; namespace internal { class Arguments; +class DeferredHandles; class Heap; class HeapObject; class Isolate; @@ -1169,8 +1170,8 @@ class V8_EXPORT Module { V8_WARN_UNUSED_RESULT MaybeLocal Evaluate(Local context); /** - * Returns the namespace object of this module. The module must have - * been successfully instantiated before and must not be errored. + * Returns the namespace object of this module. + * The module's status must be kEvaluated. */ Local GetModuleNamespace(); }; @@ -1725,7 +1726,16 @@ class V8_EXPORT StackFrame { // A StateTag represents a possible state of the VM. -enum StateTag { JS, GC, COMPILER, OTHER, EXTERNAL, IDLE }; +enum StateTag { + JS, + GC, + PARSER, + BYTECODE_COMPILER, + COMPILER, + OTHER, + EXTERNAL, + IDLE +}; // A RegisterState represents the current state of registers used // by the sampling profiler API. @@ -2442,7 +2452,8 @@ enum class NewStringType { */ class V8_EXPORT String : public Name { public: - static const int kMaxLength = (1 << 28) - 16; + static constexpr int kMaxLength = + sizeof(void*) == 4 ? (1 << 28) - 16 : (1 << 30) - 1 - 24; enum Encoding { UNKNOWN_ENCODING = 0x1, @@ -2761,7 +2772,9 @@ class V8_EXPORT String : public Name { */ class V8_EXPORT Utf8Value { public: - explicit Utf8Value(Local obj); + V8_DEPRECATE_SOON("Use Isolate version", + explicit Utf8Value(Local obj)); + Utf8Value(Isolate* isolate, Local obj); ~Utf8Value(); char* operator*() { return str_; } const char* operator*() const { return str_; } @@ -2784,7 +2797,9 @@ class V8_EXPORT String : public Name { */ class V8_EXPORT Value { public: - explicit Value(Local obj); + V8_DEPRECATE_SOON("Use Isolate version", + explicit Value(Local obj)); + Value(Isolate* isolate, Local obj); ~Value(); uint16_t* operator*() { return str_; } const uint16_t* operator*() const { return str_; } @@ -3097,12 +3112,9 @@ class V8_EXPORT Object : public Value { // // Note also that this only works for named properties. V8_DEPRECATED("Use CreateDataProperty / DefineOwnProperty", - bool ForceSet(Local key, Local value, - PropertyAttribute attribs = None)); - V8_DEPRECATE_SOON("Use CreateDataProperty / DefineOwnProperty", - Maybe ForceSet(Local context, - Local key, Local value, - PropertyAttribute attribs = None)); + Maybe ForceSet(Local context, Local key, + Local value, + PropertyAttribute attribs = None)); V8_DEPRECATE_SOON("Use maybe version", Local Get(Local key)); V8_WARN_UNUSED_RESULT MaybeLocal Get(Local context, @@ -4107,12 +4119,10 @@ class V8_EXPORT WasmCompiledModule : public Object { // supports move semantics, and does not support copy semantics. class TransferrableModule final { public: - TransferrableModule(TransferrableModule&& src) - : compiled_code(std::move(src.compiled_code)), - wire_bytes(std::move(src.wire_bytes)) {} + TransferrableModule(TransferrableModule&& src) = default; TransferrableModule(const TransferrableModule& src) = delete; - TransferrableModule& operator=(TransferrableModule&& src); + TransferrableModule& operator=(TransferrableModule&& src) = default; TransferrableModule& operator=(const TransferrableModule& src) = delete; private: @@ -4169,6 +4179,46 @@ class V8_EXPORT WasmCompiledModule : public Object { static void CheckCast(Value* obj); }; +// TODO(mtrofin): when streaming compilation is done, we can rename this +// to simply WasmModuleObjectBuilder +class V8_EXPORT WasmModuleObjectBuilderStreaming final { + public: + WasmModuleObjectBuilderStreaming(Isolate* isolate); + // The buffer passed into OnBytesReceived is owned by the caller. + void OnBytesReceived(const uint8_t*, size_t size); + void Finish(); + void Abort(Local exception); + Local GetPromise(); + + ~WasmModuleObjectBuilderStreaming(); + + private: + typedef std::pair, size_t> Buffer; + + WasmModuleObjectBuilderStreaming(const WasmModuleObjectBuilderStreaming&) = + delete; + WasmModuleObjectBuilderStreaming(WasmModuleObjectBuilderStreaming&&) = + default; + WasmModuleObjectBuilderStreaming& operator=( + const WasmModuleObjectBuilderStreaming&) = delete; + WasmModuleObjectBuilderStreaming& operator=( + WasmModuleObjectBuilderStreaming&&) = default; + Isolate* isolate_ = nullptr; + +#if V8_CC_MSVC + // We don't need the static Copy API, so the default + // NonCopyablePersistentTraits would be sufficient, however, + // MSVC eagerly instantiates the Copy. + // We ensure we don't use Copy, however, by compiling with the + // defaults everywhere else. + Persistent> promise_; +#else + Persistent promise_; +#endif + std::vector received_buffers_; + size_t total_size_ = 0; +}; + class V8_EXPORT WasmModuleObjectBuilder final { public: WasmModuleObjectBuilder(Isolate* isolate) : isolate_(isolate) {} @@ -4185,11 +4235,9 @@ class V8_EXPORT WasmModuleObjectBuilder final { // Disable copy semantics *in this implementation*. We can choose to // relax this, albeit it's not clear why. WasmModuleObjectBuilder(const WasmModuleObjectBuilder&) = delete; - WasmModuleObjectBuilder(WasmModuleObjectBuilder&& src) - : received_buffers_(std::move(src.received_buffers_)), - total_size_(src.total_size_) {} + WasmModuleObjectBuilder(WasmModuleObjectBuilder&&) = default; WasmModuleObjectBuilder& operator=(const WasmModuleObjectBuilder&) = delete; - WasmModuleObjectBuilder& operator=(WasmModuleObjectBuilder&&); + WasmModuleObjectBuilder& operator=(WasmModuleObjectBuilder&&) = default; std::vector received_buffers_; size_t total_size_ = 0; @@ -4295,7 +4343,18 @@ class V8_EXPORT ArrayBuffer : public Object { */ class V8_EXPORT Contents { // NOLINT public: - Contents() : data_(NULL), byte_length_(0) {} + Contents() + : data_(nullptr), + byte_length_(0), + allocation_base_(nullptr), + allocation_length_(0), + allocation_mode_(Allocator::AllocationMode::kNormal) {} + + void* AllocationBase() const { return allocation_base_; } + size_t AllocationLength() const { return allocation_length_; } + Allocator::AllocationMode AllocationMode() const { + return allocation_mode_; + } void* Data() const { return data_; } size_t ByteLength() const { return byte_length_; } @@ -4303,6 +4362,9 @@ class V8_EXPORT ArrayBuffer : public Object { private: void* data_; size_t byte_length_; + void* allocation_base_; + size_t allocation_length_; + Allocator::AllocationMode allocation_mode_; friend class ArrayBuffer; }; @@ -4448,6 +4510,12 @@ class V8_EXPORT ArrayBufferView : public Object { */ class V8_EXPORT TypedArray : public ArrayBufferView { public: + /* + * The largest typed array size that can be constructed using New. + */ + static constexpr size_t kMaxLength = + sizeof(void*) == 4 ? (1u << 30) - 1 : (1u << 31) - 1; + /** * Number of elements in this typed array * (e.g. for Int16Array, |ByteLength|/2). @@ -4651,7 +4719,18 @@ class V8_EXPORT SharedArrayBuffer : public Object { */ class V8_EXPORT Contents { // NOLINT public: - Contents() : data_(NULL), byte_length_(0) {} + Contents() + : data_(nullptr), + byte_length_(0), + allocation_base_(nullptr), + allocation_length_(0), + allocation_mode_(ArrayBuffer::Allocator::AllocationMode::kNormal) {} + + void* AllocationBase() const { return allocation_base_; } + size_t AllocationLength() const { return allocation_length_; } + ArrayBuffer::Allocator::AllocationMode AllocationMode() const { + return allocation_mode_; + } void* Data() const { return data_; } size_t ByteLength() const { return byte_length_; } @@ -4659,6 +4738,9 @@ class V8_EXPORT SharedArrayBuffer : public Object { private: void* data_; size_t byte_length_; + void* allocation_base_; + size_t allocation_length_; + ArrayBuffer::Allocator::AllocationMode allocation_mode_; friend class SharedArrayBuffer; }; @@ -4905,8 +4987,8 @@ class V8_EXPORT External : public Value { F(ArrayProto_forEach, array_for_each_iterator) \ F(ArrayProto_keys, array_keys_iterator) \ F(ArrayProto_values, array_values_iterator) \ - F(IteratorPrototype, initial_iterator_prototype) \ F(ErrorPrototype, initial_error_prototype) \ + F(IteratorPrototype, initial_iterator_prototype) enum Intrinsic { #define V8_DECL_INTRINSIC(name, iname) k##name, @@ -5044,7 +5126,6 @@ typedef void (*NamedPropertyDeleterCallback)( Local property, const PropertyCallbackInfo& info); - /** * Returns an array containing the names of the properties the named * property getter intercepts. @@ -5168,7 +5249,6 @@ typedef void (*GenericNamedPropertyQueryCallback)( typedef void (*GenericNamedPropertyDeleterCallback)( Local property, const PropertyCallbackInfo& info); - /** * Returns an array containing the names of the properties the named * property getter intercepts. @@ -5970,6 +6050,8 @@ V8_INLINE Local False(Isolate* isolate); * * The arguments for set_max_semi_space_size, set_max_old_space_size, * set_max_executable_size, set_code_range_size specify limits in MB. + * + * The argument for set_max_semi_space_size_in_kb is in KB. */ class V8_EXPORT ResourceConstraints { public: @@ -5987,10 +6069,28 @@ class V8_EXPORT ResourceConstraints { void ConfigureDefaults(uint64_t physical_memory, uint64_t virtual_memory_limit); - int max_semi_space_size() const { return max_semi_space_size_; } - void set_max_semi_space_size(int limit_in_mb) { - max_semi_space_size_ = limit_in_mb; + // Returns the max semi-space size in MB. + V8_DEPRECATE_SOON("Use max_semi_space_size_in_kb()", + int max_semi_space_size()) { + return static_cast(max_semi_space_size_in_kb_ / 1024); + } + + // Sets the max semi-space size in MB. + V8_DEPRECATE_SOON("Use set_max_semi_space_size_in_kb(size_t limit_in_kb)", + void set_max_semi_space_size(int limit_in_mb)) { + max_semi_space_size_in_kb_ = limit_in_mb * 1024; + } + + // Returns the max semi-space size in KB. + size_t max_semi_space_size_in_kb() const { + return max_semi_space_size_in_kb_; } + + // Sets the max semi-space size in KB. + void set_max_semi_space_size_in_kb(size_t limit_in_kb) { + max_semi_space_size_in_kb_ = limit_in_kb; + } + int max_old_space_size() const { return max_old_space_size_; } void set_max_old_space_size(int limit_in_mb) { max_old_space_size_ = limit_in_mb; @@ -6016,7 +6116,10 @@ class V8_EXPORT ResourceConstraints { } private: - int max_semi_space_size_; + // max_semi_space_size_ is in KB + size_t max_semi_space_size_in_kb_; + + // The remaining limits are in MB int max_old_space_size_; int max_executable_size_; uint32_t* stack_limit_; @@ -6117,7 +6220,9 @@ typedef void (*DeprecatedCallCompletedCallback)(); * The Promise returned from this function is forwarded to userland * JavaScript. The embedder must resolve this promise with the module * namespace object. In case of an exception, the embedder must reject - * this promise with the exception. + * this promise with the exception. If the promise creation itself + * fails (e.g. due to stack overflow), the embedder must propagate + * that exception by returning an empty MaybeLocal. */ typedef MaybeLocal (*HostImportModuleDynamicallyCallback)( Local context, Local referrer, Local specifier); @@ -6243,24 +6348,8 @@ typedef void (*FailedAccessCheckCallback)(Local target, * Callback to check if code generation from strings is allowed. See * Context::AllowCodeGenerationFromStrings. */ -typedef bool (*DeprecatedAllowCodeGenerationFromStringsCallback)( - Local context); -// The naming of this alias is for **Node v8.x releases only** -// plain V8 >= 6.1 just calls it AllowCodeGenerationFromStringsCallback -typedef bool (*FreshNewAllowCodeGenerationFromStringsCallback)( - Local context, Local source); - -// a) no addon uses this anyway -// b) this is sufficient because c++ type mangling takes care of resolving -// the typedefs -// c) doing it this way allows people to use the Fresh New variant -#ifdef USING_V8_SHARED -typedef DeprecatedAllowCodeGenerationFromStringsCallback - AllowCodeGenerationFromStringsCallback; -#else -typedef FreshNewAllowCodeGenerationFromStringsCallback - AllowCodeGenerationFromStringsCallback; -#endif +typedef bool (*AllowCodeGenerationFromStringsCallback)(Local context, + Local source); // --- WebAssembly compilation callbacks --- typedef bool (*ExtensionCallback)(const FunctionCallbackInfo&); @@ -6469,7 +6558,7 @@ struct JitCodeEvent { struct line_info_t { // PC offset size_t offset; - // Code postion + // Code position size_t pos; // The position type. PositionType position_type; @@ -6748,7 +6837,7 @@ class V8_EXPORT Isolate { * deserialization. This array and its content must stay valid for the * entire lifetime of the isolate. */ - intptr_t* external_references; + const intptr_t* external_references; /** * Whether calling Atomics.wait (a function that may block) is allowed in @@ -6894,6 +6983,7 @@ class V8_EXPORT Isolate { kAssigmentExpressionLHSIsCallInStrict = 37, kPromiseConstructorReturnedUndefined = 38, kConstructorNonUndefinedPrimitiveReturn = 39, + kLabeledExpressionStatement = 40, // If you add new values here, you'll also need to update Chromium's: // UseCounter.h, V8PerIsolateData.cpp, histograms.xml @@ -7169,8 +7259,6 @@ class V8_EXPORT Isolate { typedef void (*GCCallback)(Isolate* isolate, GCType type, GCCallbackFlags flags); - typedef void (*GCCallbackWithData)(Isolate* isolate, GCType type, - GCCallbackFlags flags, void* data); /** * Enables the host application to receive a notification before a @@ -7181,8 +7269,6 @@ class V8_EXPORT Isolate { * not possible to register the same callback function two times with * different GCType filters. */ - void AddGCPrologueCallback(GCCallbackWithData callback, void* data = nullptr, - GCType gc_type_filter = kGCTypeAll); void AddGCPrologueCallback(GCCallback callback, GCType gc_type_filter = kGCTypeAll); @@ -7190,7 +7276,6 @@ class V8_EXPORT Isolate { * This function removes callback which was installed by * AddGCPrologueCallback function. */ - void RemoveGCPrologueCallback(GCCallbackWithData, void* data = nullptr); void RemoveGCPrologueCallback(GCCallback callback); /** @@ -7207,8 +7292,6 @@ class V8_EXPORT Isolate { * not possible to register the same callback function two times with * different GCType filters. */ - void AddGCEpilogueCallback(GCCallbackWithData callback, void* data = nullptr, - GCType gc_type_filter = kGCTypeAll); void AddGCEpilogueCallback(GCCallback callback, GCType gc_type_filter = kGCTypeAll); @@ -7216,8 +7299,6 @@ class V8_EXPORT Isolate { * This function removes callback which was installed by * AddGCEpilogueCallback function. */ - void RemoveGCEpilogueCallback(GCCallbackWithData callback, - void* data = nullptr); void RemoveGCEpilogueCallback(GCCallback callback); typedef size_t (*GetExternallyAllocatedMemoryInBytesCallback)(); @@ -7328,8 +7409,8 @@ class V8_EXPORT Isolate { DeprecatedCallCompletedCallback callback)); /** - * Experimental: Set the PromiseHook callback for various promise - * lifecycle events. + * Set the PromiseHook callback for various promise lifecycle + * events. */ void SetPromiseHook(PromiseHook hook); @@ -7545,10 +7626,7 @@ class V8_EXPORT Isolate { * strings should be allowed. */ void SetAllowCodeGenerationFromStringsCallback( - FreshNewAllowCodeGenerationFromStringsCallback callback); - V8_DEPRECATED("Use callback with source parameter.", - void SetAllowCodeGenerationFromStringsCallback( - DeprecatedAllowCodeGenerationFromStringsCallback callback)); + AllowCodeGenerationFromStringsCallback callback); /** * Embedder over{ride|load} injection points for wasm APIs. The expectation @@ -7666,6 +7744,7 @@ class V8_EXPORT Isolate { friend class PersistentValueMapBase; void ReportExternalAllocationLimitReached(); + void CheckMemoryPressure(); }; class V8_EXPORT StartupData { @@ -7685,7 +7764,7 @@ typedef bool (*EntropySource)(unsigned char* buffer, size_t length); * ReturnAddressLocationResolver is used as a callback function when v8 is * resolving the location of a return address on the stack. Profilers that * change the return address on the stack can use this to resolve the stack - * location to whereever the profiler stashed the original return address. + * location to wherever the profiler stashed the original return address. * * \param return_addr_location A location on stack where a machine * return address resides. @@ -7708,15 +7787,6 @@ class V8_EXPORT V8 { "Use isolate version", void SetFatalErrorHandler(FatalErrorCallback that)); - /** - * Set the callback to invoke to check if code generation from - * strings should be allowed. - */ - V8_INLINE static V8_DEPRECATED( - "Use isolate version", - void SetAllowCodeGenerationFromStringsCallback( - DeprecatedAllowCodeGenerationFromStringsCallback that)); - /** * Check if V8 is dead and therefore unusable. This is the case after * fatal errors such as out-of-memory situations. @@ -8026,7 +8096,7 @@ class V8_EXPORT V8 { */ static void ShutdownPlatform(); -#if V8_OS_LINUX && V8_TARGET_ARCH_X64 && !V8_OS_ANDROID +#if V8_OS_POSIX /** * Give the V8 signal handler a chance to handle a fault. * @@ -8047,7 +8117,7 @@ class V8_EXPORT V8 { * points to a ucontext_t structure. */ static bool TryHandleSignal(int signal_number, void* info, void* context); -#endif // V8_OS_LINUX && V8_TARGET_ARCH_X64 && !V8_OS_ANDROID +#endif // V8_OS_POSIX /** * Enable the default signal handler rather than using one provided by the @@ -8112,7 +8182,7 @@ class V8_EXPORT SnapshotCreator { * \param external_references a null-terminated array of external references * that must be equivalent to CreateParams::external_references. */ - SnapshotCreator(intptr_t* external_references = nullptr, + SnapshotCreator(const intptr_t* external_references = nullptr, StartupData* existing_blob = nullptr); ~SnapshotCreator(); @@ -8126,8 +8196,12 @@ class V8_EXPORT SnapshotCreator { * Set the default context to be included in the snapshot blob. * The snapshot will not contain the global proxy, and we expect one or a * global object template to create one, to be provided upon deserialization. + * + * \param callback optional callback to serialize internal fields. */ - void SetDefaultContext(Local context); + void SetDefaultContext(Local context, + SerializeInternalFieldsCallback callback = + SerializeInternalFieldsCallback()); /** * Add additional context to be included in the snapshot blob. @@ -8479,7 +8553,9 @@ class V8_EXPORT Context { static Local New( Isolate* isolate, ExtensionConfiguration* extensions = NULL, MaybeLocal global_template = MaybeLocal(), - MaybeLocal global_object = MaybeLocal()); + MaybeLocal global_object = MaybeLocal(), + DeserializeInternalFieldsCallback internal_fields_deserializer = + DeserializeInternalFieldsCallback()); /** * Create a new context from a (non-default) context snapshot. There @@ -8915,6 +8991,8 @@ class Internals { static const int kExternalMemoryOffset = 4 * kApiPointerSize; static const int kExternalMemoryLimitOffset = kExternalMemoryOffset + kApiInt64Size; + static const int kExternalMemoryAtLastMarkCompactOffset = + kExternalMemoryLimitOffset + kApiInt64Size; static const int kIsolateRootsOffset = kExternalMemoryLimitOffset + kApiInt64Size + kApiInt64Size + kApiPointerSize + kApiPointerSize; @@ -8934,8 +9012,8 @@ class Internals { static const int kNodeIsIndependentShift = 3; static const int kNodeIsActiveShift = 4; - static const int kJSApiObjectType = 0xbb; - static const int kJSObjectType = 0xbc; + static const int kJSApiObjectType = 0xbd; + static const int kJSObjectType = 0xbe; static const int kFirstNonstringType = 0x80; static const int kOddballType = 0x82; static const int kForeignType = 0x86; @@ -10133,13 +10211,32 @@ uint32_t Isolate::GetNumberOfDataSlots() { int64_t Isolate::AdjustAmountOfExternalAllocatedMemory( int64_t change_in_bytes) { typedef internal::Internals I; + const int64_t kMemoryReducerActivationLimit = 32 * 1024 * 1024; int64_t* external_memory = reinterpret_cast( reinterpret_cast(this) + I::kExternalMemoryOffset); - const int64_t external_memory_limit = *reinterpret_cast( + int64_t* external_memory_limit = reinterpret_cast( reinterpret_cast(this) + I::kExternalMemoryLimitOffset); + int64_t* external_memory_at_last_mc = + reinterpret_cast(reinterpret_cast(this) + + I::kExternalMemoryAtLastMarkCompactOffset); const int64_t amount = *external_memory + change_in_bytes; + *external_memory = amount; - if (change_in_bytes > 0 && amount > external_memory_limit) { + + int64_t allocation_diff_since_last_mc = + *external_memory_at_last_mc - *external_memory; + allocation_diff_since_last_mc = allocation_diff_since_last_mc < 0 + ? -allocation_diff_since_last_mc + : allocation_diff_since_last_mc; + if (allocation_diff_since_last_mc > kMemoryReducerActivationLimit) { + CheckMemoryPressure(); + } + + if (change_in_bytes < 0) { + *external_memory_limit += change_in_bytes; + } + + if (change_in_bytes > 0 && amount > *external_memory_limit) { ReportExternalAllocationLimitReached(); } return *external_memory; @@ -10169,15 +10266,6 @@ void* Context::GetAlignedPointerFromEmbedderData(int index) { #endif } -void V8::SetAllowCodeGenerationFromStringsCallback( - DeprecatedAllowCodeGenerationFromStringsCallback callback) { - Isolate* isolate = Isolate::GetCurrent(); - isolate->SetAllowCodeGenerationFromStringsCallback( - reinterpret_cast( - callback)); -} - - bool V8::IsDead() { Isolate* isolate = Isolate::GetCurrent(); return isolate->IsDead(); diff --git a/deps/v8/infra/mb/mb_config.pyl b/deps/v8/infra/mb/mb_config.pyl index adb436219a9463..62bae4bfdca483 100644 --- a/deps/v8/infra/mb/mb_config.pyl +++ b/deps/v8/infra/mb/mb_config.pyl @@ -78,6 +78,7 @@ 'V8 Win64 - debug': 'gn_debug_x64_minimal_symbols', # TODO(machenbach): Switch plugins on when errors are fixed. 'V8 Win64 - clang': 'gn_release_x64_clang', + 'V8 Win64 ASAN': 'gn_release_x64_asan_no_lsan', # Mac. 'V8 Mac': 'gn_release_x86', 'V8 Mac - debug': 'gn_debug_x86', @@ -106,6 +107,10 @@ 'V8 Random Deopt Fuzzer - debug': 'gn_debug_x86', }, 'client.v8.clusterfuzz': { + 'V8 Mac64 ASAN - release builder': + 'gn_release_x64_asan_no_lsan_edge_verify_heap', + 'V8 Mac64 ASAN - debug builder': + 'gn_debug_x64_asan_no_lsan_static_edge', 'V8 Linux64 - release builder': 'gn_release_x64_correctness_fuzzer', 'V8 Linux64 - debug builder': 'gn_debug_x64', 'V8 Linux64 ASAN no inline - release builder': @@ -122,6 +127,9 @@ 'gn_release_simulate_arm64_msan_no_origins_edge', 'V8 Linux MSAN chained origins': 'gn_release_simulate_arm64_msan_edge', + 'V8 Linux64 UBSan - release builder': 'gn_release_x64_ubsan_recover', + 'V8 Linux64 UBSanVptr - release builder': + 'gn_release_x64_ubsan_vptr_recover_edge', }, 'client.v8.ports': { # Arm. @@ -205,6 +213,7 @@ 'v8_win_rel_ng': 'gn_release_x86_trybot', 'v8_win_nosnap_shared_rel_ng': 'gn_release_x86_no_snap_shared_minimal_symbols', + 'v8_win64_asan_rel_ng': 'gn_release_x64_asan_no_lsan', 'v8_win64_dbg': 'gn_debug_x64_minimal_symbols', 'v8_win64_rel_ng': 'gn_release_x64_trybot', 'v8_mac_rel_ng': 'gn_release_x86_trybot', @@ -375,6 +384,9 @@ 'minimal_symbols', 'swarming'], 'gn_release_x64_asan_no_lsan': [ 'gn', 'release_bot', 'x64', 'asan', 'swarming'], + 'gn_release_x64_asan_no_lsan_edge_verify_heap': [ + 'gn', 'release_bot', 'x64', 'asan', 'edge', 'swarming', + 'v8_verify_heap'], 'gn_release_x64_asan_symbolized_edge_verify_heap': [ 'gn', 'release_bot', 'x64', 'asan', 'edge', 'lsan', 'symbolized', 'v8_verify_heap'], @@ -389,7 +401,7 @@ 'gn_release_x64_correctness_fuzzer' : [ 'gn', 'release_bot', 'x64', 'v8_correctness_fuzzer'], 'gn_release_x64_gcc_coverage': [ - 'gn', 'release_bot', 'x64', 'coverage', 'gcc', 'no_custom_libcxx'], + 'gn', 'release_bot', 'x64', 'coverage', 'gcc'], 'gn_release_x64_internal': [ 'gn', 'release_bot', 'x64', 'swarming', 'v8_snapshot_internal'], 'gn_release_x64_minimal_symbols': [ @@ -406,10 +418,14 @@ 'minimal_symbols', 'swarming'], 'gn_release_x64_tsan_minimal_symbols': [ 'gn', 'release_bot', 'x64', 'tsan', 'minimal_symbols', 'swarming'], + 'gn_release_x64_ubsan_recover': [ + 'gn', 'release_bot', 'x64', 'ubsan_recover', 'swarming'], 'gn_release_x64_ubsan_vptr': [ - 'gn', 'release_bot', 'x64', 'ubsan_vptr'], + 'gn', 'release_bot', 'x64', 'ubsan_vptr', 'swarming'], + 'gn_release_x64_ubsan_vptr_recover_edge': [ + 'gn', 'release_bot', 'x64', 'edge', 'ubsan_vptr_recover', 'swarming'], 'gn_release_x64_ubsan_vptr_minimal_symbols': [ - 'gn', 'release_bot', 'x64', 'ubsan_vptr', 'minimal_symbols'], + 'gn', 'release_bot', 'x64', 'ubsan_vptr', 'minimal_symbols', 'swarming'], 'gn_release_x64_valgrind': [ 'gn', 'release_bot', 'x64', 'swarming', 'valgrind', 'no_custom_libcxx'], @@ -425,10 +441,13 @@ 'gn', 'debug_bot', 'x64', 'swarming'], 'gn_debug_x64_asan_edge': [ 'gn', 'debug_bot', 'x64', 'asan', 'lsan', 'edge'], + 'gn_debug_x64_asan_no_lsan_static_edge': [ + 'gn', 'debug', 'static', 'goma', 'v8_enable_slow_dchecks', + 'v8_optimized_debug', 'x64', 'asan', 'edge', 'swarming'], 'gn_debug_x64_custom': [ 'gn', 'debug_bot', 'x64', 'swarming', 'v8_snapshot_custom'], 'gn_debug_x64_gcc': [ - 'gn', 'debug_bot', 'x64', 'gcc', 'no_custom_libcxx'], + 'gn', 'debug_bot', 'x64', 'gcc'], 'gn_debug_x64_minimal_symbols': [ 'gn', 'debug_bot', 'x64', 'minimal_symbols', 'swarming'], 'gn_debug_x64_trybot': [ @@ -462,10 +481,9 @@ 'gn_release_x86_disassembler': [ 'gn', 'release_bot', 'x86', 'v8_enable_disassembler'], 'gn_release_x86_gcc': [ - 'gn', 'release_bot', 'x86', 'gcc', 'no_custom_libcxx'], + 'gn', 'release_bot', 'x86', 'gcc'], 'gn_release_x86_gcc_minimal_symbols': [ - 'gn', 'release_bot', 'x86', 'gcc', 'minimal_symbols', - 'no_custom_libcxx'], + 'gn', 'release_bot', 'x86', 'gcc', 'minimal_symbols'], 'gn_release_x86_gcmole': [ 'gn', 'release_bot', 'x86', 'gcmole', 'swarming'], 'gn_release_x86_gcmole_trybot': [ @@ -591,7 +609,8 @@ }, 'gcc': { - 'gn_args': 'is_clang=false use_sysroot=false', + # TODO(machenbach): Remove cxx11 restriction when updating gcc version. + 'gn_args': 'is_clang=false use_cxx11=true', 'gyp_defines': 'clang=0', }, @@ -726,6 +745,11 @@ 'gyp_defines': 'clang=1 tsan=1', }, + 'ubsan_recover': { + # Ubsan with recovery. + 'gn_args': 'is_ubsan=true is_ubsan_no_recover=false', + }, + 'ubsan_vptr': { # TODO(krasin): Remove is_ubsan_no_recover=true when # https://llvm.org/bugs/show_bug.cgi?id=25569 is fixed and just use @@ -733,6 +757,11 @@ 'gn_args': 'is_ubsan_vptr=true is_ubsan_no_recover=true', }, + 'ubsan_vptr_recover': { + # Ubsan vptr with recovery. + 'gn_args': 'is_ubsan_vptr=true is_ubsan_no_recover=false', + }, + 'valgrind': { 'gn_args': 'v8_has_valgrind=true', 'gyp_defines': 'has_valgrind=1', diff --git a/deps/v8/samples/hello-world.cc b/deps/v8/samples/hello-world.cc index 9e5188f4792ca8..8a2122c96bfbf0 100644 --- a/deps/v8/samples/hello-world.cc +++ b/deps/v8/samples/hello-world.cc @@ -48,7 +48,7 @@ int main(int argc, char* argv[]) { Local result = script->Run(context).ToLocalChecked(); // Convert the result to an UTF8 string and print it. - String::Utf8Value utf8(result); + String::Utf8Value utf8(isolate, result); printf("%s\n", *utf8); } diff --git a/deps/v8/samples/process.cc b/deps/v8/samples/process.cc index 29ddb5cf2f187c..5ebe1dbfc4fac4 100644 --- a/deps/v8/samples/process.cc +++ b/deps/v8/samples/process.cc @@ -144,9 +144,10 @@ class JsHttpRequestProcessor : public HttpRequestProcessor { static void LogCallback(const v8::FunctionCallbackInfo& args) { if (args.Length() < 1) return; - HandleScope scope(args.GetIsolate()); + Isolate* isolate = args.GetIsolate(); + HandleScope scope(isolate); Local arg = args[0]; - String::Utf8Value value(arg); + String::Utf8Value value(isolate, arg); HttpRequestProcessor::Log(*value); } @@ -221,7 +222,7 @@ bool JsHttpRequestProcessor::ExecuteScript(Local script) { // Compile the script and check for errors. Local