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 7efbe319fd8cca..deedf82d11b7c5 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") @@ -39,9 +40,6 @@ declare_args() { # Embeds the given script into the snapshot. v8_embed_script = "" - # Allows the embedder to add a custom suffix to the version string. - v8_embedder_string = "" - # Sets -dENABLE_DISASSEMBLER. v8_enable_disassembler = "" @@ -60,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 @@ -82,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 @@ -220,9 +224,6 @@ config("features") { defines = [] - if (v8_embedder_string != "") { - defines += [ "V8_EMBEDDER_STRING=\"$v8_embedder_string\"" ] - } if (v8_enable_disassembler) { defines += [ "ENABLE_DISASSEMBLER" ] } @@ -284,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" ] } @@ -552,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", @@ -801,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") { @@ -820,6 +830,7 @@ 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", @@ -867,6 +878,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" ] } @@ -898,6 +918,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" ] } @@ -955,7 +984,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", @@ -976,6 +1004,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", @@ -1002,6 +1033,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) ### @@ -1182,6 +1221,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", @@ -1252,6 +1292,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", @@ -1260,10 +1302,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", @@ -1275,8 +1313,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", @@ -1292,8 +1328,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", @@ -1343,8 +1377,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", @@ -1387,6 +1419,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", @@ -1408,6 +1444,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", @@ -1481,8 +1518,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", @@ -1541,12 +1582,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", @@ -1579,6 +1618,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", @@ -1616,10 +1658,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", @@ -1744,7 +1785,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", @@ -1763,10 +1806,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", @@ -1850,6 +1893,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", @@ -1898,6 +1942,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", @@ -1908,6 +1956,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", @@ -1987,6 +2037,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", @@ -2023,6 +2075,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", @@ -2030,7 +2091,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", @@ -2041,8 +2101,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", @@ -2051,7 +2111,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", ] @@ -2064,10 +2123,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", @@ -2082,8 +2139,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", @@ -2109,8 +2166,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", @@ -2124,10 +2181,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", ] @@ -2149,8 +2204,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", @@ -2172,10 +2227,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", ] @@ -2186,10 +2239,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", @@ -2202,8 +2253,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", @@ -2219,10 +2270,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", @@ -2235,8 +2284,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", @@ -2252,10 +2301,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", @@ -2268,8 +2315,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", @@ -2285,10 +2332,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", @@ -2303,8 +2348,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", @@ -2356,7 +2401,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..ee8526106aad70 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" + "@" + "08cb956852a5ccdba7f9c941728bb833529ba3c6", "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..eb146ac24472af 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 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/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 a17dc556e6bc7e..55b250ddc143e5 100644 --- a/deps/v8/gypfiles/features.gypi +++ b/deps/v8/gypfiles/features.gypi @@ -29,8 +29,9 @@ { 'variables': { - # Allows the embedder to add a custom suffix to the version string. - 'v8_embedder_string%': '', + 'variables': { + 'v8_target_arch%': '<(target_arch)', + }, 'v8_enable_disassembler%': 0, @@ -79,12 +80,12 @@ # 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': [ - ['v8_embedder_string!=""', { - 'defines': ['V8_EMBEDDER_STRING="<(v8_embedder_string)"',], - }], ['v8_enable_disassembler==1', { 'defines': ['ENABLE_DISASSEMBLER',], }], @@ -130,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/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/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/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-string.h b/deps/v8/include/v8-version-string.h index eab0934804efd4..075282de4ca0e2 100644 --- a/deps/v8/include/v8-version-string.h +++ b/deps/v8/include/v8-version-string.h @@ -16,10 +16,6 @@ #define V8_CANDIDATE_STRING "" #endif -#ifndef V8_EMBEDDER_STRING -#define V8_EMBEDDER_STRING "" -#endif - #define V8_SX(x) #x #define V8_S(x) V8_SX(x) @@ -27,7 +23,7 @@ #define V8_VERSION_STRING \ V8_S(V8_MAJOR_VERSION) \ "." V8_S(V8_MINOR_VERSION) "." V8_S(V8_BUILD_NUMBER) "." V8_S( \ - V8_PATCH_LEVEL) V8_EMBEDDER_STRING V8_CANDIDATE_STRING + V8_PATCH_LEVEL) V8_CANDIDATE_STRING #else #define V8_VERSION_STRING \ V8_S(V8_MAJOR_VERSION) \ diff --git a/deps/v8/include/v8-version.h b/deps/v8/include/v8-version.h index b2c1e5384eceea..bcd166b03e7153 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 42 +#define V8_MINOR_VERSION 2 +#define V8_BUILD_NUMBER 414 +#define V8_PATCH_LEVEL 32 // 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 eaac6db0a17dad..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_; } @@ -4104,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: @@ -4166,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) {} @@ -4182,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; @@ -4459,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). @@ -5069,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. @@ -5193,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. @@ -6165,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); @@ -6291,8 +6348,6 @@ typedef void (*FailedAccessCheckCallback)(Local target, * Callback to check if code generation from strings is allowed. See * Context::AllowCodeGenerationFromStrings. */ -typedef bool (*DeprecatedAllowCodeGenerationFromStringsCallback)( - Local context); typedef bool (*AllowCodeGenerationFromStringsCallback)(Local context, Local source); @@ -6503,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; @@ -6782,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 @@ -6928,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 @@ -7203,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 @@ -7215,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); @@ -7224,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); /** @@ -7241,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); @@ -7250,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)(); @@ -7362,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); @@ -7580,9 +7627,6 @@ class V8_EXPORT Isolate { */ void SetAllowCodeGenerationFromStringsCallback( AllowCodeGenerationFromStringsCallback callback); - V8_DEPRECATED("Use callback with source parameter.", - void SetAllowCodeGenerationFromStringsCallback( - DeprecatedAllowCodeGenerationFromStringsCallback callback)); /** * Embedder over{ride|load} injection points for wasm APIs. The expectation @@ -7720,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. @@ -7743,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. @@ -8147,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(); @@ -8161,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. @@ -8514,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 @@ -8971,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; @@ -10225,14 +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