diff --git a/deps/v8/.editorconfig b/deps/v8/.editorconfig new file mode 100644 index 0000000000..9d08a1a828 --- /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 b1f61ed6fc..f1ec1d93a6 100644 --- a/deps/v8/.gitignore +++ b/deps/v8/.gitignore @@ -32,6 +32,7 @@ .project .pydevproject .settings +.vscode /_* /build /buildtools @@ -67,6 +68,7 @@ !/testing/gtest/include/gtest/gtest_prod.h /third_party/* !/third_party/binutils +!/third_party/eu-strip !/third_party/inspector_protocol /tools/clang /tools/gcmole/gcmole-tools diff --git a/deps/v8/AUTHORS b/deps/v8/AUTHORS index 048702701c..dab711f614 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 @@ -106,6 +109,7 @@ Paolo Giarrusso Patrick Gansterer Peter Rybin Peter Varga +Peter Wong Paul Lind Qiuyi Zhang Rafal Krypa @@ -130,4 +134,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 494ba22f29..c6a5ce21ce 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") @@ -52,11 +53,14 @@ declare_args() { v8_enable_vtunejit = false # Sets -dENABLE_HANDLE_ZAPPING. - v8_enable_handle_zapping = is_debug + v8_enable_handle_zapping = true # 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 @@ -77,7 +81,10 @@ declare_args() { v8_enable_trace_ignition = false # Sets -dV8_CONCURRENT_MARKING - v8_enable_concurrent_marking = false + v8_enable_concurrent_marking = "" + + # Sets -dV8_CSA_WRITE_BARRIER + v8_enable_csa_write_barrier = true # Build the snapshot with unwinding information for perf. # Sets -dV8_USE_SNAPSHOT_WITH_UNWINDING_INFO. @@ -100,6 +107,9 @@ declare_args() { # Similar to the ARM hard float ABI but on MIPS. v8_use_mips_abi_hardfloat = true + # Controls the threshold for on-heap/off-heap Typed Arrays. + v8_typed_array_max_size_in_heap = 64 + # List of extra files to snapshot. They will be snapshotted in order so # if files export symbols used by later files, they should go first. # @@ -140,6 +150,13 @@ if (v8_enable_v8_checks == "") { if (v8_check_microtasks_scopes_consistency == "") { v8_check_microtasks_scopes_consistency = is_debug || dcheck_always_on } +if (v8_enable_concurrent_marking == "") { + if (target_cpu == "x86" || target_cpu == "x64") { + v8_enable_concurrent_marking = true + } else { + v8_enable_concurrent_marking = false + } +} # Specifies if the target build is a simulator build. Comparing target cpu # with v8 target cpu to not affect simulator builds for making cross-compile @@ -195,8 +212,12 @@ config("libsampler_config") { # This config should only be applied to code using V8 and not any V8 code # itself. config("external_config") { + defines = [] if (is_component_build) { - defines = [ "USING_V8_SHARED" ] + defines += [ "USING_V8_SHARED" ] + } + if (v8_enable_v8_checks) { + defines += [ "V8_ENABLE_CHECKS" ] # Used in "include/v8.h". } include_dirs = [ "include", @@ -224,6 +245,8 @@ config("features") { defines += [ "V8_PROMISE_INTERNAL_FIELD_COUNT=${v8_promise_internal_field_count}" ] } + defines += + [ "V8_TYPED_ARRAY_MAX_SIZE_IN_HEAP=${v8_typed_array_max_size_in_heap}" ] if (v8_enable_future) { defines += [ "V8_ENABLE_FUTURE" ] } @@ -278,6 +301,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" ] } @@ -541,15 +567,12 @@ action("js2c") { "src/js/macros.py", "src/messages.h", "src/js/prologue.js", - "src/js/max-min.js", "src/js/v8natives.js", "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", "src/js/spread.js", "src/js/proxy.js", "src/debug/mirrors.js", @@ -795,6 +818,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") { @@ -814,6 +844,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", @@ -838,7 +869,7 @@ source_set("v8_maybe_snapshot") { } else { # Ignore v8_use_external_startup_data setting if no snapshot is used. public_deps = [ - ":v8_builtins_setup", + ":v8_init", ":v8_nosnapshot", ] } @@ -861,6 +892,15 @@ v8_source_set("v8_nosnapshot") { "src/snapshot/snapshot-empty.cc", ] + if (use_jumbo_build == true) { + jumbo_excluded_sources = [ + # TODO(mostynb@opera.com): don't exclude these http://crbug.com/752428 + # Generated source, contains same variable names as libraries.cc + "$target_gen_dir/experimental-extras-libraries.cc", + "$target_gen_dir/libraries.cc", + ] + } + configs = [ ":internal_config" ] } @@ -892,6 +932,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" ] } @@ -920,7 +969,7 @@ if (v8_use_external_startup_data) { } } -v8_source_set("v8_builtins_generators") { +v8_source_set("v8_initializers") { visibility = [ ":*", "test/cctest:*", @@ -949,11 +998,8 @@ 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", - "src/builtins/builtins-forin-gen.h", "src/builtins/builtins-function-gen.cc", "src/builtins/builtins-generator-gen.cc", "src/builtins/builtins-global-gen.cc", @@ -970,6 +1016,7 @@ 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-regexp-gen.cc", "src/builtins/builtins-regexp-gen.h", "src/builtins/builtins-sharedarraybuffer-gen.cc", @@ -980,6 +1027,7 @@ v8_source_set("v8_builtins_generators") { "src/builtins/builtins-utils-gen.h", "src/builtins/builtins-wasm-gen.cc", "src/builtins/setup-builtins-internal.cc", + "src/heap/setup-heap-internal.cc", "src/ic/accessor-assembler.cc", "src/ic/accessor-assembler.h", "src/ic/binary-op-assembler.cc", @@ -996,6 +1044,18 @@ 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", + + # This source file takes an unusually large amount of time to + # compile. Build it separately to avoid bottlenecks. + "src/builtins/builtins-regexp-gen.cc", + ] + } + if (v8_current_cpu == "x86") { sources += [ ### gcmole(arch:ia32) ### @@ -1045,11 +1105,11 @@ v8_source_set("v8_builtins_generators") { configs = [ ":internal_config" ] } -v8_source_set("v8_builtins_setup") { +v8_source_set("v8_init") { visibility = [ ":*" ] # Only targets in this file can depend on this. deps = [ - ":v8_builtins_generators", + ":v8_initializers", ] sources = [ @@ -1176,9 +1236,11 @@ 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", + "src/builtins/builtins-bigint.cc", "src/builtins/builtins-boolean.cc", "src/builtins/builtins-call.cc", "src/builtins/builtins-callsite.cc", @@ -1246,6 +1308,8 @@ v8_source_set("v8_base") { "src/compiler-dispatcher/compiler-dispatcher.h", "src/compiler-dispatcher/optimizing-compile-dispatcher.cc", "src/compiler-dispatcher/optimizing-compile-dispatcher.h", + "src/compiler-dispatcher/unoptimized-compile-job.cc", + "src/compiler-dispatcher/unoptimized-compile-job.h", "src/compiler.cc", "src/compiler.h", "src/compiler/access-builder.cc", @@ -1254,10 +1318,6 @@ v8_source_set("v8_base") { "src/compiler/access-info.h", "src/compiler/all-nodes.cc", "src/compiler/all-nodes.h", - "src/compiler/ast-graph-builder.cc", - "src/compiler/ast-graph-builder.h", - "src/compiler/ast-loop-assignment-analyzer.cc", - "src/compiler/ast-loop-assignment-analyzer.h", "src/compiler/basic-block-instrumentor.cc", "src/compiler/basic-block-instrumentor.h", "src/compiler/branch-elimination.cc", @@ -1269,8 +1329,6 @@ v8_source_set("v8_base") { "src/compiler/bytecode-liveness-map.cc", "src/compiler/bytecode-liveness-map.h", "src/compiler/c-linkage.cc", - "src/compiler/check-elimination.cc", - "src/compiler/check-elimination.h", "src/compiler/checkpoint-elimination.cc", "src/compiler/checkpoint-elimination.h", "src/compiler/code-assembler.cc", @@ -1286,8 +1344,6 @@ v8_source_set("v8_base") { "src/compiler/common-operator.h", "src/compiler/compiler-source-position-table.cc", "src/compiler/compiler-source-position-table.h", - "src/compiler/control-builders.cc", - "src/compiler/control-builders.h", "src/compiler/control-equivalence.cc", "src/compiler/control-equivalence.h", "src/compiler/control-flow-optimizer.cc", @@ -1337,8 +1393,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", @@ -1402,6 +1456,7 @@ v8_source_set("v8_base") { "src/compiler/operator.h", "src/compiler/osr.cc", "src/compiler/osr.h", + "src/compiler/persistent-map.h", "src/compiler/pipeline-statistics.cc", "src/compiler/pipeline-statistics.h", "src/compiler/pipeline.cc", @@ -1475,8 +1530,14 @@ 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-type-profile.cc", + "src/debug/debug-type-profile.h", "src/debug/debug.cc", "src/debug/debug.h", "src/debug/interface-types.h", @@ -1516,6 +1577,7 @@ v8_source_set("v8_base") { "src/extensions/trigger-failure-extension.h", "src/external-reference-table.cc", "src/external-reference-table.h", + "src/factory-inl.h", "src/factory.cc", "src/factory.h", "src/fast-dtoa.cc", @@ -1529,18 +1591,15 @@ v8_source_set("v8_base") { "src/field-index.h", "src/field-type.cc", "src/field-type.h", - "src/find-and-replace-pattern.h", "src/fixed-dtoa.cc", "src/fixed-dtoa.h", "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", @@ -1555,6 +1614,7 @@ v8_source_set("v8_base") { "src/heap/array-buffer-tracker-inl.h", "src/heap/array-buffer-tracker.cc", "src/heap/array-buffer-tracker.h", + "src/heap/barrier.h", "src/heap/code-stats.cc", "src/heap/code-stats.h", "src/heap/concurrent-marking.cc", @@ -1573,6 +1633,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", @@ -1593,8 +1656,6 @@ v8_source_set("v8_base") { "src/heap/scavenger-inl.h", "src/heap/scavenger.cc", "src/heap/scavenger.h", - "src/heap/sequential-marking-deque.cc", - "src/heap/sequential-marking-deque.h", "src/heap/slot-set.h", "src/heap/spaces-inl.h", "src/heap/spaces.cc", @@ -1610,10 +1671,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", @@ -1719,6 +1779,9 @@ v8_source_set("v8_base") { "src/objects.h", "src/objects/arguments-inl.h", "src/objects/arguments.h", + "src/objects/bigint-inl.h", + "src/objects/bigint.cc", + "src/objects/bigint.h", "src/objects/code-cache-inl.h", "src/objects/code-cache.h", "src/objects/compilation-cache-inl.h", @@ -1738,11 +1801,15 @@ 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", "src/objects/object-macros.h", + "src/objects/property-descriptor-object-inl.h", + "src/objects/property-descriptor-object.h", "src/objects/regexp-match-info.h", "src/objects/scope-info.cc", "src/objects/scope-info.h", @@ -1753,14 +1820,16 @@ v8_source_set("v8_base") { "src/objects/string-inl.h", "src/objects/string-table.h", "src/objects/string.h", + "src/objects/template-objects.cc", + "src/objects/template-objects.h", "src/ostreams.cc", "src/ostreams.h", "src/parsing/duplicate-finder.h", "src/parsing/expression-classifier.h", + "src/parsing/expression-scope-reparenter.cc", + "src/parsing/expression-scope-reparenter.h", "src/parsing/func-name-inferrer.cc", "src/parsing/func-name-inferrer.h", - "src/parsing/parameter-initializer-rewriter.cc", - "src/parsing/parameter-initializer-rewriter.h", "src/parsing/parse-info.cc", "src/parsing/parse-info.h", "src/parsing/parser-base.h", @@ -1844,10 +1913,12 @@ 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", "src/runtime/runtime-atomics.cc", + "src/runtime/runtime-bigint.cc", "src/runtime/runtime-classes.cc", "src/runtime/runtime-collections.cc", "src/runtime/runtime-compiler.cc", @@ -1885,13 +1956,22 @@ v8_source_set("v8_base") { "src/setup-isolate.h", "src/signature.h", "src/simulator.h", - "src/small-pointer-list.h", + "src/snapshot/builtin-deserializer.cc", + "src/snapshot/builtin-deserializer.h", + "src/snapshot/builtin-serializer.cc", + "src/snapshot/builtin-serializer.h", "src/snapshot/code-serializer.cc", "src/snapshot/code-serializer.h", + "src/snapshot/default-serializer-allocator.cc", + "src/snapshot/default-serializer-allocator.h", "src/snapshot/deserializer.cc", "src/snapshot/deserializer.h", "src/snapshot/natives-common.cc", "src/snapshot/natives.h", + "src/snapshot/object-deserializer.cc", + "src/snapshot/object-deserializer.h", + "src/snapshot/partial-deserializer.cc", + "src/snapshot/partial-deserializer.h", "src/snapshot/partial-serializer.cc", "src/snapshot/partial-serializer.h", "src/snapshot/serializer-common.cc", @@ -1902,6 +1982,8 @@ v8_source_set("v8_base") { "src/snapshot/snapshot-source-sink.cc", "src/snapshot/snapshot-source-sink.h", "src/snapshot/snapshot.h", + "src/snapshot/startup-deserializer.cc", + "src/snapshot/startup-deserializer.h", "src/snapshot/startup-serializer.cc", "src/snapshot/startup-serializer.h", "src/source-position-table.cc", @@ -1981,11 +2063,15 @@ 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", "src/wasm/wasm-external-refs.cc", "src/wasm/wasm-external-refs.h", + "src/wasm/wasm-heap.cc", + "src/wasm/wasm-heap.h", "src/wasm/wasm-interpreter.cc", "src/wasm/wasm-interpreter.h", "src/wasm/wasm-js.cc", @@ -1995,6 +2081,7 @@ v8_source_set("v8_base") { "src/wasm/wasm-module-builder.h", "src/wasm/wasm-module.cc", "src/wasm/wasm-module.h", + "src/wasm/wasm-objects-inl.h", "src/wasm/wasm-objects.cc", "src/wasm/wasm-objects.h", "src/wasm/wasm-opcodes.cc", @@ -2017,6 +2104,22 @@ 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 + + # These source files take an unusually large amount of time to + # compile. Build them separately to avoid bottlenecks. + "src/api.cc", + "src/code-stub-assembler.cc", + "src/elements.cc", + "src/heap/heap.cc", + "src/objects.cc", + "src/parsing/parser.cc", + ] + } + if (v8_current_cpu == "x86") { sources += [ ### gcmole(arch:ia32) ### "src/compiler/ia32/code-generator-ia32.cc", @@ -2024,7 +2127,6 @@ v8_source_set("v8_base") { "src/compiler/ia32/instruction-scheduler-ia32.cc", "src/compiler/ia32/instruction-selector-ia32.cc", "src/debug/ia32/debug-ia32.cc", - "src/full-codegen/ia32/full-codegen-ia32.cc", "src/ia32/assembler-ia32-inl.h", "src/ia32/assembler-ia32.cc", "src/ia32/assembler-ia32.h", @@ -2035,8 +2137,8 @@ v8_source_set("v8_base") { "src/ia32/cpu-ia32.cc", "src/ia32/deoptimizer-ia32.cc", "src/ia32/disasm-ia32.cc", - "src/ia32/frames-ia32.cc", - "src/ia32/frames-ia32.h", + "src/ia32/frame-constants-ia32.cc", + "src/ia32/frame-constants-ia32.h", "src/ia32/interface-descriptors-ia32.cc", "src/ia32/macro-assembler-ia32.cc", "src/ia32/macro-assembler-ia32.h", @@ -2045,7 +2147,6 @@ v8_source_set("v8_base") { "src/ia32/sse-instr.h", "src/ic/ia32/access-compiler-ia32.cc", "src/ic/ia32/handler-compiler-ia32.cc", - "src/ic/ia32/ic-ia32.cc", "src/regexp/ia32/regexp-macro-assembler-ia32.cc", "src/regexp/ia32/regexp-macro-assembler-ia32.h", ] @@ -2058,10 +2159,8 @@ v8_source_set("v8_base") { "src/compiler/x64/unwinding-info-writer-x64.cc", "src/compiler/x64/unwinding-info-writer-x64.h", "src/debug/x64/debug-x64.cc", - "src/full-codegen/x64/full-codegen-x64.cc", "src/ic/x64/access-compiler-x64.cc", "src/ic/x64/handler-compiler-x64.cc", - "src/ic/x64/ic-x64.cc", "src/regexp/x64/regexp-macro-assembler-x64.cc", "src/regexp/x64/regexp-macro-assembler-x64.h", "src/third_party/valgrind/valgrind.h", @@ -2076,8 +2175,8 @@ v8_source_set("v8_base") { "src/x64/deoptimizer-x64.cc", "src/x64/disasm-x64.cc", "src/x64/eh-frame-x64.cc", - "src/x64/frames-x64.cc", - "src/x64/frames-x64.h", + "src/x64/frame-constants-x64.cc", + "src/x64/frame-constants-x64.h", "src/x64/interface-descriptors-x64.cc", "src/x64/macro-assembler-x64.cc", "src/x64/macro-assembler-x64.h", @@ -2103,8 +2202,8 @@ v8_source_set("v8_base") { "src/arm/deoptimizer-arm.cc", "src/arm/disasm-arm.cc", "src/arm/eh-frame-arm.cc", - "src/arm/frames-arm.cc", - "src/arm/frames-arm.h", + "src/arm/frame-constants-arm.cc", + "src/arm/frame-constants-arm.h", "src/arm/interface-descriptors-arm.cc", "src/arm/interface-descriptors-arm.h", "src/arm/macro-assembler-arm.cc", @@ -2118,10 +2217,8 @@ v8_source_set("v8_base") { "src/compiler/arm/unwinding-info-writer-arm.cc", "src/compiler/arm/unwinding-info-writer-arm.h", "src/debug/arm/debug-arm.cc", - "src/full-codegen/arm/full-codegen-arm.cc", "src/ic/arm/access-compiler-arm.cc", "src/ic/arm/handler-compiler-arm.cc", - "src/ic/arm/ic-arm.cc", "src/regexp/arm/regexp-macro-assembler-arm.cc", "src/regexp/arm/regexp-macro-assembler-arm.h", ] @@ -2143,8 +2240,9 @@ 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-constants.cc", "src/arm64/instructions-arm64.cc", "src/arm64/instructions-arm64.h", "src/arm64/instrument-arm64.cc", @@ -2166,13 +2264,18 @@ 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", ] + if (use_jumbo_build) { + jumbo_excluded_sources += [ + # TODO(mostynb@opera.com): fix this code so it doesn't need + # to be excluded, see the comments inside. + "src/arm64/instructions-arm64-constants.cc", + ] + } } else if (v8_current_cpu == "mips" || v8_current_cpu == "mipsel") { sources += [ ### gcmole(arch:mipsel) ### "src/compiler/mips/code-generator-mips.cc", @@ -2180,10 +2283,8 @@ v8_source_set("v8_base") { "src/compiler/mips/instruction-scheduler-mips.cc", "src/compiler/mips/instruction-selector-mips.cc", "src/debug/mips/debug-mips.cc", - "src/full-codegen/mips/full-codegen-mips.cc", "src/ic/mips/access-compiler-mips.cc", "src/ic/mips/handler-compiler-mips.cc", - "src/ic/mips/ic-mips.cc", "src/mips/assembler-mips-inl.h", "src/mips/assembler-mips.cc", "src/mips/assembler-mips.h", @@ -2196,8 +2297,8 @@ v8_source_set("v8_base") { "src/mips/cpu-mips.cc", "src/mips/deoptimizer-mips.cc", "src/mips/disasm-mips.cc", - "src/mips/frames-mips.cc", - "src/mips/frames-mips.h", + "src/mips/frame-constants-mips.cc", + "src/mips/frame-constants-mips.h", "src/mips/interface-descriptors-mips.cc", "src/mips/macro-assembler-mips.cc", "src/mips/macro-assembler-mips.h", @@ -2213,10 +2314,8 @@ v8_source_set("v8_base") { "src/compiler/mips64/instruction-scheduler-mips64.cc", "src/compiler/mips64/instruction-selector-mips64.cc", "src/debug/mips64/debug-mips64.cc", - "src/full-codegen/mips64/full-codegen-mips64.cc", "src/ic/mips64/access-compiler-mips64.cc", "src/ic/mips64/handler-compiler-mips64.cc", - "src/ic/mips64/ic-mips64.cc", "src/mips64/assembler-mips64-inl.h", "src/mips64/assembler-mips64.cc", "src/mips64/assembler-mips64.h", @@ -2229,8 +2328,8 @@ v8_source_set("v8_base") { "src/mips64/cpu-mips64.cc", "src/mips64/deoptimizer-mips64.cc", "src/mips64/disasm-mips64.cc", - "src/mips64/frames-mips64.cc", - "src/mips64/frames-mips64.h", + "src/mips64/frame-constants-mips64.cc", + "src/mips64/frame-constants-mips64.h", "src/mips64/interface-descriptors-mips64.cc", "src/mips64/macro-assembler-mips64.cc", "src/mips64/macro-assembler-mips64.h", @@ -2246,10 +2345,8 @@ v8_source_set("v8_base") { "src/compiler/ppc/instruction-scheduler-ppc.cc", "src/compiler/ppc/instruction-selector-ppc.cc", "src/debug/ppc/debug-ppc.cc", - "src/full-codegen/ppc/full-codegen-ppc.cc", "src/ic/ppc/access-compiler-ppc.cc", "src/ic/ppc/handler-compiler-ppc.cc", - "src/ic/ppc/ic-ppc.cc", "src/ppc/assembler-ppc-inl.h", "src/ppc/assembler-ppc.cc", "src/ppc/assembler-ppc.h", @@ -2262,8 +2359,8 @@ v8_source_set("v8_base") { "src/ppc/cpu-ppc.cc", "src/ppc/deoptimizer-ppc.cc", "src/ppc/disasm-ppc.cc", - "src/ppc/frames-ppc.cc", - "src/ppc/frames-ppc.h", + "src/ppc/frame-constants-ppc.cc", + "src/ppc/frame-constants-ppc.h", "src/ppc/interface-descriptors-ppc.cc", "src/ppc/macro-assembler-ppc.cc", "src/ppc/macro-assembler-ppc.h", @@ -2279,10 +2376,8 @@ v8_source_set("v8_base") { "src/compiler/s390/instruction-scheduler-s390.cc", "src/compiler/s390/instruction-selector-s390.cc", "src/debug/s390/debug-s390.cc", - "src/full-codegen/s390/full-codegen-s390.cc", "src/ic/s390/access-compiler-s390.cc", "src/ic/s390/handler-compiler-s390.cc", - "src/ic/s390/ic-s390.cc", "src/regexp/s390/regexp-macro-assembler-s390.cc", "src/regexp/s390/regexp-macro-assembler-s390.h", "src/s390/assembler-s390-inl.h", @@ -2297,8 +2392,8 @@ v8_source_set("v8_base") { "src/s390/cpu-s390.cc", "src/s390/deoptimizer-s390.cc", "src/s390/disasm-s390.cc", - "src/s390/frames-s390.cc", - "src/s390/frames-s390.h", + "src/s390/frame-constants-s390.cc", + "src/s390/frame-constants-s390.h", "src/s390/interface-descriptors-s390.cc", "src/s390/macro-assembler-s390.cc", "src/s390/macro-assembler-s390.h", @@ -2350,7 +2445,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", @@ -2401,6 +2496,7 @@ v8_component("v8_libbase") { "src/base/sys-info.h", "src/base/template-utils.h", "src/base/timezone-cache.h", + "src/base/tsan.h", "src/base/utils/random-number-generator.cc", "src/base/utils/random-number-generator.h", ] @@ -2583,7 +2679,7 @@ if (current_toolchain == v8_snapshot_toolchain) { deps = [ ":v8_base", - ":v8_builtins_setup", + ":v8_init", ":v8_libbase", ":v8_libplatform", ":v8_nosnapshot", @@ -2696,7 +2792,7 @@ if (is_component_build) { ] if (v8_use_snapshot) { - public_deps += [ ":v8_builtins_generators" ] + public_deps += [ ":v8_initializers" ] } configs = [ ":internal_config" ] @@ -2722,7 +2818,7 @@ if (is_component_build) { ] if (v8_use_snapshot) { - public_deps += [ ":v8_builtins_generators" ] + public_deps += [ ":v8_initializers" ] } public_configs = [ ":external_config" ] diff --git a/deps/v8/ChangeLog b/deps/v8/ChangeLog index f3e2941fdd..f0ee4761a9 100644 --- a/deps/v8/ChangeLog +++ b/deps/v8/ChangeLog @@ -1,3 +1,3448 @@ +2017-09-27: Version 6.3.221 + + Performance and stability improvements on all platforms. + + +2017-09-27: Version 6.3.220 + + Performance and stability improvements on all platforms. + + +2017-09-27: Version 6.3.219 + + Performance and stability improvements on all platforms. + + +2017-09-27: Version 6.3.218 + + Performance and stability improvements on all platforms. + + +2017-09-27: Version 6.3.217 + + Performance and stability improvements on all platforms. + + +2017-09-26: Version 6.3.216 + + Performance and stability improvements on all platforms. + + +2017-09-26: Version 6.3.215 + + Performance and stability improvements on all platforms. + + +2017-09-26: Version 6.3.214 + + Performance and stability improvements on all platforms. + + +2017-09-26: Version 6.3.213 + + Performance and stability improvements on all platforms. + + +2017-09-25: Version 6.3.212 + + Performance and stability improvements on all platforms. + + +2017-09-25: Version 6.3.211 + + Performance and stability improvements on all platforms. + + +2017-09-25: Version 6.3.210 + + Performance and stability improvements on all platforms. + + +2017-09-25: Version 6.3.209 + + Performance and stability improvements on all platforms. + + +2017-09-25: Version 6.3.208 + + Performance and stability improvements on all platforms. + + +2017-09-25: Version 6.3.207 + + Performance and stability improvements on all platforms. + + +2017-09-25: Version 6.3.206 + + Performance and stability improvements on all platforms. + + +2017-09-25: Version 6.3.205 + + Performance and stability improvements on all platforms. + + +2017-09-25: Version 6.3.204 + + Performance and stability improvements on all platforms. + + +2017-09-25: Version 6.3.203 + + Performance and stability improvements on all platforms. + + +2017-09-25: Version 6.3.202 + + Performance and stability improvements on all platforms. + + +2017-09-25: Version 6.3.201 + + Performance and stability improvements on all platforms. + + +2017-09-24: Version 6.3.200 + + Performance and stability improvements on all platforms. + + +2017-09-24: Version 6.3.199 + + Performance and stability improvements on all platforms. + + +2017-09-22: Version 6.3.198 + + Performance and stability improvements on all platforms. + + +2017-09-22: Version 6.3.197 + + Performance and stability improvements on all platforms. + + +2017-09-21: Version 6.3.196 + + Performance and stability improvements on all platforms. + + +2017-09-21: Version 6.3.195 + + Performance and stability improvements on all platforms. + + +2017-09-21: Version 6.3.194 + + Performance and stability improvements on all platforms. + + +2017-09-21: Version 6.3.193 + + Performance and stability improvements on all platforms. + + +2017-09-21: Version 6.3.192 + + Performance and stability improvements on all platforms. + + +2017-09-21: Version 6.3.191 + + Performance and stability improvements on all platforms. + + +2017-09-21: Version 6.3.190 + + Performance and stability improvements on all platforms. + + +2017-09-21: Version 6.3.189 + + Performance and stability improvements on all platforms. + + +2017-09-21: Version 6.3.188 + + Performance and stability improvements on all platforms. + + +2017-09-21: Version 6.3.187 + + Performance and stability improvements on all platforms. + + +2017-09-21: Version 6.3.186 + + Performance and stability improvements on all platforms. + + +2017-09-21: Version 6.3.185 + + Performance and stability improvements on all platforms. + + +2017-09-20: Version 6.3.184 + + Performance and stability improvements on all platforms. + + +2017-09-20: Version 6.3.183 + + Performance and stability improvements on all platforms. + + +2017-09-20: Version 6.3.182 + + Performance and stability improvements on all platforms. + + +2017-09-19: Version 6.3.181 + + Performance and stability improvements on all platforms. + + +2017-09-19: Version 6.3.180 + + Performance and stability improvements on all platforms. + + +2017-09-18: Version 6.3.179 + + Performance and stability improvements on all platforms. + + +2017-09-18: Version 6.3.178 + + Performance and stability improvements on all platforms. + + +2017-09-18: Version 6.3.177 + + Performance and stability improvements on all platforms. + + +2017-09-18: Version 6.3.176 + + Performance and stability improvements on all platforms. + + +2017-09-18: Version 6.3.175 + + Performance and stability improvements on all platforms. + + +2017-09-18: Version 6.3.174 + + Performance and stability improvements on all platforms. + + +2017-09-18: Version 6.3.173 + + Performance and stability improvements on all platforms. + + +2017-09-18: Version 6.3.172 + + Performance and stability improvements on all platforms. + + +2017-09-18: Version 6.3.171 + + Performance and stability improvements on all platforms. + + +2017-09-18: Version 6.3.170 + + Performance and stability improvements on all platforms. + + +2017-09-18: Version 6.3.169 + + Performance and stability improvements on all platforms. + + +2017-09-18: Version 6.3.168 + + Performance and stability improvements on all platforms. + + +2017-09-18: Version 6.3.167 + + Performance and stability improvements on all platforms. + + +2017-09-18: Version 6.3.166 + + Performance and stability improvements on all platforms. + + +2017-09-18: Version 6.3.165 + + Performance and stability improvements on all platforms. + + +2017-09-17: Version 6.3.164 + + Performance and stability improvements on all platforms. + + +2017-09-16: Version 6.3.163 + + Performance and stability improvements on all platforms. + + +2017-09-15: Version 6.3.162 + + Performance and stability improvements on all platforms. + + +2017-09-15: Version 6.3.161 + + Performance and stability improvements on all platforms. + + +2017-09-15: Version 6.3.160 + + Performance and stability improvements on all platforms. + + +2017-09-15: Version 6.3.159 + + Performance and stability improvements on all platforms. + + +2017-09-15: Version 6.3.158 + + Performance and stability improvements on all platforms. + + +2017-09-15: Version 6.3.157 + + Performance and stability improvements on all platforms. + + +2017-09-15: Version 6.3.156 + + Performance and stability improvements on all platforms. + + +2017-09-15: Version 6.3.155 + + Performance and stability improvements on all platforms. + + +2017-09-15: Version 6.3.154 + + Performance and stability improvements on all platforms. + + +2017-09-15: Version 6.3.153 + + Performance and stability improvements on all platforms. + + +2017-09-15: Version 6.3.152 + + Performance and stability improvements on all platforms. + + +2017-09-15: Version 6.3.151 + + Performance and stability improvements on all platforms. + + +2017-09-14: Version 6.3.150 + + Performance and stability improvements on all platforms. + + +2017-09-14: Version 6.3.149 + + Performance and stability improvements on all platforms. + + +2017-09-14: Version 6.3.148 + + Performance and stability improvements on all platforms. + + +2017-09-14: Version 6.3.147 + + Performance and stability improvements on all platforms. + + +2017-09-14: Version 6.3.146 + + Performance and stability improvements on all platforms. + + +2017-09-14: Version 6.3.145 + + Performance and stability improvements on all platforms. + + +2017-09-14: Version 6.3.144 + + Performance and stability improvements on all platforms. + + +2017-09-14: Version 6.3.143 + + Performance and stability improvements on all platforms. + + +2017-09-14: Version 6.3.142 + + Performance and stability improvements on all platforms. + + +2017-09-14: Version 6.3.141 + + Performance and stability improvements on all platforms. + + +2017-09-14: Version 6.3.140 + + Performance and stability improvements on all platforms. + + +2017-09-14: Version 6.3.139 + + Performance and stability improvements on all platforms. + + +2017-09-13: Version 6.3.138 + + Performance and stability improvements on all platforms. + + +2017-09-13: Version 6.3.137 + + Performance and stability improvements on all platforms. + + +2017-09-13: Version 6.3.136 + + Performance and stability improvements on all platforms. + + +2017-09-13: Version 6.3.135 + + Performance and stability improvements on all platforms. + + +2017-09-13: Version 6.3.134 + + Performance and stability improvements on all platforms. + + +2017-09-13: Version 6.3.133 + + Performance and stability improvements on all platforms. + + +2017-09-13: Version 6.3.132 + + Performance and stability improvements on all platforms. + + +2017-09-13: Version 6.3.131 + + Performance and stability improvements on all platforms. + + +2017-09-13: Version 6.3.130 + + Performance and stability improvements on all platforms. + + +2017-09-13: Version 6.3.129 + + Performance and stability improvements on all platforms. + + +2017-09-13: Version 6.3.128 + + Performance and stability improvements on all platforms. + + +2017-09-13: Version 6.3.127 + + Performance and stability improvements on all platforms. + + +2017-09-12: Version 6.3.126 + + Performance and stability improvements on all platforms. + + +2017-09-12: Version 6.3.125 + + Performance and stability improvements on all platforms. + + +2017-09-12: Version 6.3.124 + + Performance and stability improvements on all platforms. + + +2017-09-12: Version 6.3.123 + + Performance and stability improvements on all platforms. + + +2017-09-12: Version 6.3.122 + + Performance and stability improvements on all platforms. + + +2017-09-12: Version 6.3.121 + + Performance and stability improvements on all platforms. + + +2017-09-12: Version 6.3.120 + + Performance and stability improvements on all platforms. + + +2017-09-12: Version 6.3.119 + + Performance and stability improvements on all platforms. + + +2017-09-12: Version 6.3.118 + + Performance and stability improvements on all platforms. + + +2017-09-12: Version 6.3.117 + + Performance and stability improvements on all platforms. + + +2017-09-12: Version 6.3.116 + + Performance and stability improvements on all platforms. + + +2017-09-12: Version 6.3.115 + + Performance and stability improvements on all platforms. + + +2017-09-12: Version 6.3.114 + + Performance and stability improvements on all platforms. + + +2017-09-12: Version 6.3.113 + + Performance and stability improvements on all platforms. + + +2017-09-12: Version 6.3.112 + + Performance and stability improvements on all platforms. + + +2017-09-12: Version 6.3.111 + + Performance and stability improvements on all platforms. + + +2017-09-11: Version 6.3.110 + + Performance and stability improvements on all platforms. + + +2017-09-11: Version 6.3.109 + + Performance and stability improvements on all platforms. + + +2017-09-11: Version 6.3.108 + + Performance and stability improvements on all platforms. + + +2017-09-11: Version 6.3.107 + + Performance and stability improvements on all platforms. + + +2017-09-11: Version 6.3.106 + + Performance and stability improvements on all platforms. + + +2017-09-11: Version 6.3.105 + + Performance and stability improvements on all platforms. + + +2017-09-11: Version 6.3.104 + + Performance and stability improvements on all platforms. + + +2017-09-11: Version 6.3.103 + + Performance and stability improvements on all platforms. + + +2017-09-11: Version 6.3.102 + + Performance and stability improvements on all platforms. + + +2017-09-11: Version 6.3.101 + + Performance and stability improvements on all platforms. + + +2017-09-11: Version 6.3.100 + + Performance and stability improvements on all platforms. + + +2017-09-11: Version 6.3.99 + + Performance and stability improvements on all platforms. + + +2017-09-11: Version 6.3.98 + + Performance and stability improvements on all platforms. + + +2017-09-11: Version 6.3.97 + + Performance and stability improvements on all platforms. + + +2017-09-11: Version 6.3.96 + + Performance and stability improvements on all platforms. + + +2017-09-11: Version 6.3.95 + + Performance and stability improvements on all platforms. + + +2017-09-11: Version 6.3.94 + + Performance and stability improvements on all platforms. + + +2017-09-11: Version 6.3.93 + + Performance and stability improvements on all platforms. + + +2017-09-10: Version 6.3.92 + + Performance and stability improvements on all platforms. + + +2017-09-09: Version 6.3.91 + + Performance and stability improvements on all platforms. + + +2017-09-08: Version 6.3.90 + + Performance and stability improvements on all platforms. + + +2017-09-08: Version 6.3.89 + + Performance and stability improvements on all platforms. + + +2017-09-08: Version 6.3.88 + + Performance and stability improvements on all platforms. + + +2017-09-08: Version 6.3.87 + + Performance and stability improvements on all platforms. + + +2017-09-08: Version 6.3.86 + + Performance and stability improvements on all platforms. + + +2017-09-08: Version 6.3.85 + + Performance and stability improvements on all platforms. + + +2017-09-08: Version 6.3.84 + + Performance and stability improvements on all platforms. + + +2017-09-08: Version 6.3.83 + + Performance and stability improvements on all platforms. + + +2017-09-08: Version 6.3.82 + + Performance and stability improvements on all platforms. + + +2017-09-08: Version 6.3.81 + + Performance and stability improvements on all platforms. + + +2017-09-08: Version 6.3.80 + + Performance and stability improvements on all platforms. + + +2017-09-08: Version 6.3.79 + + Performance and stability improvements on all platforms. + + +2017-09-08: Version 6.3.78 + + Performance and stability improvements on all platforms. + + +2017-09-08: Version 6.3.77 + + Performance and stability improvements on all platforms. + + +2017-09-08: Version 6.3.76 + + Performance and stability improvements on all platforms. + + +2017-09-08: Version 6.3.75 + + Performance and stability improvements on all platforms. + + +2017-09-08: Version 6.3.74 + + Performance and stability improvements on all platforms. + + +2017-09-07: Version 6.3.73 + + Performance and stability improvements on all platforms. + + +2017-09-07: Version 6.3.72 + + Performance and stability improvements on all platforms. + + +2017-09-07: Version 6.3.71 + + Performance and stability improvements on all platforms. + + +2017-09-07: Version 6.3.70 + + Performance and stability improvements on all platforms. + + +2017-09-07: Version 6.3.69 + + Performance and stability improvements on all platforms. + + +2017-09-07: Version 6.3.68 + + Performance and stability improvements on all platforms. + + +2017-09-07: Version 6.3.67 + + Performance and stability improvements on all platforms. + + +2017-09-07: Version 6.3.66 + + Performance and stability improvements on all platforms. + + +2017-09-07: Version 6.3.65 + + Performance and stability improvements on all platforms. + + +2017-09-07: Version 6.3.64 + + Performance and stability improvements on all platforms. + + +2017-09-07: Version 6.3.63 + + Performance and stability improvements on all platforms. + + +2017-09-07: Version 6.3.62 + + Performance and stability improvements on all platforms. + + +2017-09-07: Version 6.3.61 + + Performance and stability improvements on all platforms. + + +2017-09-07: Version 6.3.60 + + Performance and stability improvements on all platforms. + + +2017-09-07: Version 6.3.59 + + Performance and stability improvements on all platforms. + + +2017-09-07: Version 6.3.58 + + Performance and stability improvements on all platforms. + + +2017-09-07: Version 6.3.57 + + Performance and stability improvements on all platforms. + + +2017-09-07: Version 6.3.56 + + Performance and stability improvements on all platforms. + + +2017-09-07: Version 6.3.55 + + Performance and stability improvements on all platforms. + + +2017-09-07: Version 6.3.54 + + Performance and stability improvements on all platforms. + + +2017-09-06: Version 6.3.53 + + Performance and stability improvements on all platforms. + + +2017-09-06: Version 6.3.52 + + Performance and stability improvements on all platforms. + + +2017-09-06: Version 6.3.51 + + Performance and stability improvements on all platforms. + + +2017-09-06: Version 6.3.50 + + Performance and stability improvements on all platforms. + + +2017-09-06: Version 6.3.49 + + Performance and stability improvements on all platforms. + + +2017-09-06: Version 6.3.48 + + Performance and stability improvements on all platforms. + + +2017-09-06: Version 6.3.47 + + Performance and stability improvements on all platforms. + + +2017-09-06: Version 6.3.46 + + Performance and stability improvements on all platforms. + + +2017-09-06: Version 6.3.45 + + Performance and stability improvements on all platforms. + + +2017-09-06: Version 6.3.44 + + Performance and stability improvements on all platforms. + + +2017-09-06: Version 6.3.43 + + Performance and stability improvements on all platforms. + + +2017-09-06: Version 6.3.42 + + Performance and stability improvements on all platforms. + + +2017-09-05: Version 6.3.41 + + Performance and stability improvements on all platforms. + + +2017-09-05: Version 6.3.40 + + Performance and stability improvements on all platforms. + + +2017-09-05: Version 6.3.39 + + Performance and stability improvements on all platforms. + + +2017-09-05: Version 6.3.38 + + Performance and stability improvements on all platforms. + + +2017-09-05: Version 6.3.37 + + Performance and stability improvements on all platforms. + + +2017-09-05: Version 6.3.36 + + Performance and stability improvements on all platforms. + + +2017-09-05: Version 6.3.35 + + Performance and stability improvements on all platforms. + + +2017-09-05: Version 6.3.34 + + Performance and stability improvements on all platforms. + + +2017-09-05: Version 6.3.33 + + Performance and stability improvements on all platforms. + + +2017-09-05: Version 6.3.32 + + Performance and stability improvements on all platforms. + + +2017-09-05: Version 6.3.31 + + Performance and stability improvements on all platforms. + + +2017-09-05: Version 6.3.30 + + Performance and stability improvements on all platforms. + + +2017-09-05: Version 6.3.29 + + Performance and stability improvements on all platforms. + + +2017-09-04: Version 6.3.28 + + Performance and stability improvements on all platforms. + + +2017-09-04: Version 6.3.27 + + Performance and stability improvements on all platforms. + + +2017-09-04: Version 6.3.26 + + Performance and stability improvements on all platforms. + + +2017-09-04: Version 6.3.25 + + Performance and stability improvements on all platforms. + + +2017-09-04: Version 6.3.24 + + Performance and stability improvements on all platforms. + + +2017-09-04: Version 6.3.23 + + Performance and stability improvements on all platforms. + + +2017-09-04: Version 6.3.22 + + Performance and stability improvements on all platforms. + + +2017-09-04: Version 6.3.21 + + Performance and stability improvements on all platforms. + + +2017-09-04: Version 6.3.20 + + Performance and stability improvements on all platforms. + + +2017-09-04: Version 6.3.19 + + Performance and stability improvements on all platforms. + + +2017-09-04: Version 6.3.18 + + Performance and stability improvements on all platforms. + + +2017-09-04: Version 6.3.17 + + Performance and stability improvements on all platforms. + + +2017-09-04: Version 6.3.16 + + Performance and stability improvements on all platforms. + + +2017-09-04: Version 6.3.15 + + Performance and stability improvements on all platforms. + + +2017-09-04: Version 6.3.14 + + Performance and stability improvements on all platforms. + + +2017-09-04: Version 6.3.13 + + Performance and stability improvements on all platforms. + + +2017-09-04: Version 6.3.12 + + Performance and stability improvements on all platforms. + + +2017-09-04: Version 6.3.11 + + Performance and stability improvements on all platforms. + + +2017-09-04: Version 6.3.10 + + Performance and stability improvements on all platforms. + + +2017-09-04: Version 6.3.9 + + Performance and stability improvements on all platforms. + + +2017-09-04: Version 6.3.8 + + Performance and stability improvements on all platforms. + + +2017-09-04: Version 6.3.7 + + Performance and stability improvements on all platforms. + + +2017-09-04: Version 6.3.6 + + Performance and stability improvements on all platforms. + + +2017-09-04: Version 6.3.5 + + Performance and stability improvements on all platforms. + + +2017-09-03: Version 6.3.4 + + Performance and stability improvements on all platforms. + + +2017-09-03: Version 6.3.3 + + Performance and stability improvements on all platforms. + + +2017-09-01: Version 6.3.2 + + Performance and stability improvements on all platforms. + + +2017-09-01: Version 6.3.1 + + Performance and stability improvements on all platforms. + + +2017-08-31: Version 6.2.441 + + Performance and stability improvements on all platforms. + + +2017-08-31: Version 6.2.440 + + Performance and stability improvements on all platforms. + + +2017-08-31: Version 6.2.439 + + Performance and stability improvements on all platforms. + + +2017-08-30: Version 6.2.438 + + Performance and stability improvements on all platforms. + + +2017-08-30: Version 6.2.437 + + Performance and stability improvements on all platforms. + + +2017-08-30: Version 6.2.436 + + Performance and stability improvements on all platforms. + + +2017-08-30: Version 6.2.435 + + Performance and stability improvements on all platforms. + + +2017-08-30: Version 6.2.434 + + Performance and stability improvements on all platforms. + + +2017-08-30: Version 6.2.433 + + Performance and stability improvements on all platforms. + + +2017-08-30: Version 6.2.432 + + Performance and stability improvements on all platforms. + + +2017-08-30: Version 6.2.431 + + Performance and stability improvements on all platforms. + + +2017-08-30: Version 6.2.430 + + Performance and stability improvements on all platforms. + + +2017-08-30: Version 6.2.429 + + Performance and stability improvements on all platforms. + + +2017-08-30: Version 6.2.428 + + Performance and stability improvements on all platforms. + + +2017-08-30: Version 6.2.427 + + Performance and stability improvements on all platforms. + + +2017-08-30: Version 6.2.426 + + Performance and stability improvements on all platforms. + + +2017-08-30: Version 6.2.425 + + Performance and stability improvements on all platforms. + + +2017-08-30: Version 6.2.424 + + Performance and stability improvements on all platforms. + + +2017-08-30: Version 6.2.423 + + Performance and stability improvements on all platforms. + + +2017-08-30: Version 6.2.422 + + Performance and stability improvements on all platforms. + + +2017-08-30: Version 6.2.421 + + Performance and stability improvements on all platforms. + + +2017-08-30: Version 6.2.420 + + Performance and stability improvements on all platforms. + + +2017-08-30: Version 6.2.419 + + Performance and stability improvements on all platforms. + + +2017-08-30: Version 6.2.418 + + Performance and stability improvements on all platforms. + + +2017-08-29: Version 6.2.417 + + Performance and stability improvements on all platforms. + + +2017-08-29: Version 6.2.416 + + Performance and stability improvements on all platforms. + + +2017-08-29: Version 6.2.415 + + Performance and stability improvements on all platforms. + + +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 7752da2f40..7e2996da2a 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" + "@" + "898597f665820182fc979b13c1b2e6de06a608c4", "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" + "@" + "cbc33b9c0a9d1bb913895a4319a742c504a2d541", "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') + '/infra/luci/client-py.git' + '@' + "5e8001d9a710121ce7a68efd0804430a34b4f9e4", "v8/testing/gtest": Var("chromium_url") + "/external/github.com/google/googletest.git" + "@" + "6f8a66431cb592dad629028a50b3dd418a408c87", "v8/testing/gmock": @@ -34,21 +34,21 @@ deps = { "v8/test/mozilla/data": Var("chromium_url") + "/v8/deps/third_party/mozilla-tests.git" + "@" + "f6c578a10ea707b1a8ab0b88943fe5115ce2b9be", "v8/test/test262/data": - Var("chromium_url") + "/external/github.com/tc39/test262.git" + "@" + "1b911a8f8abf4cb63882cfbe72dcd4c82bb8ad91", + Var("chromium_url") + "/external/github.com/tc39/test262.git" + "@" + "290799bbeeba86245a355894b6ff2bb33d946d9e", "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" + "@" + "cf5e2ed6a9fe35e792587a111a4b2a515deff772", "v8/test/wasm-js": - Var("chromium_url") + "/external/github.com/WebAssembly/spec.git" + "@" + "aadd3a340c78e53078a7bb6c17cc30f105c2960c", + Var("chromium_url") + "/external/github.com/WebAssembly/spec.git" + "@" + "4f1d3114157e6459d8a06e7d8fcc8fc90288cd85", } deps_os = { "android": { "v8/third_party/android_tools": - Var("chromium_url") + "/android_tools.git" + "@" + "e9d4018e149d50172ed462a7c21137aa915940ec", + Var("chromium_url") + "/android_tools.git" + "@" + "aadb2fed04af8606545b0afe4e3060bc1a15fad7", "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" + "@" + "e3fe21f5029c7d2cd2a83f012375ea9d877733d5", }, } diff --git a/deps/v8/Makefile b/deps/v8/Makefile index b381918355..eb146ac244 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 dd96fa6b5f..621f375e33 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/PRESUBMIT.py b/deps/v8/PRESUBMIT.py index 2d79ae682c..1ef291f6fa 100644 --- a/deps/v8/PRESUBMIT.py +++ b/deps/v8/PRESUBMIT.py @@ -153,16 +153,17 @@ def _CheckUnwantedDependencies(input_api, output_api): return results +# TODO(mstarzinger): Similar checking should be made available as part of +# tools/presubmit.py (note that tools/check-inline-includes.sh exists). def _CheckNoInlineHeaderIncludesInNormalHeaders(input_api, output_api): """Attempts to prevent inclusion of inline headers into normal header files. This tries to establish a layering where inline headers can be included by other inline headers or compilation units only.""" file_inclusion_pattern = r'(?!.+-inl\.h).+\.h' include_directive_pattern = input_api.re.compile(r'#include ".+-inl.h"') - include_warning = ( - 'You might be including an inline header (e.g. foo-inl.h) within a\n' - 'normal header (e.g. bar.h) file. Can you avoid introducing the\n' - '#include? The commit queue will not block on this warning.') + include_error = ( + 'You are including an inline header (e.g. foo-inl.h) within a normal\n' + 'header (e.g. bar.h) file. This violates layering of dependencies.') def FilterFile(affected_file): black_list = (_EXCLUDED_PATHS + @@ -181,7 +182,7 @@ def _CheckNoInlineHeaderIncludesInNormalHeaders(input_api, output_api): '%s:%d\n %s' % (local_path, line_number, line.strip())) if problems: - return [output_api.PresubmitPromptOrNotify(include_warning, problems)] + return [output_api.PresubmitError(include_error, problems)] else: return [] @@ -279,6 +280,7 @@ def _CommonChecks(input_api, output_api): _CheckNoInlineHeaderIncludesInNormalHeaders(input_api, output_api)) results.extend(_CheckMissingFiles(input_api, output_api)) results.extend(_CheckJSONFiles(input_api, output_api)) + results.extend(_CheckMacroUndefs(input_api, output_api)) return results @@ -337,6 +339,66 @@ def _CheckJSONFiles(input_api, output_api): return [output_api.PresubmitError(r) for r in results] +def _CheckMacroUndefs(input_api, output_api): + """ + Checks that each #define in a .cc file is eventually followed by an #undef. + + TODO(clemensh): This check should eventually be enabled for all cc files via + tools/presubmit.py (https://crbug.com/v8/6811). + """ + def FilterFile(affected_file): + # Skip header files, as they often define type lists which are used in + # other files. + white_list = (r'.+\.cc',r'.+\.cpp',r'.+\.c') + return input_api.FilterSourceFile(affected_file, white_list=white_list) + + def TouchesMacros(f): + for line in f.GenerateScmDiff().splitlines(): + if not line.startswith('+') and not line.startswith('-'): + continue + if define_pattern.match(line[1:]) or undef_pattern.match(line[1:]): + return True + return False + + define_pattern = input_api.re.compile(r'#define (\w+)') + undef_pattern = input_api.re.compile(r'#undef (\w+)') + errors = [] + for f in input_api.AffectedFiles( + file_filter=FilterFile, include_deletes=False): + if not TouchesMacros(f): + continue + + defined_macros = dict() + with open(f.LocalPath()) as fh: + line_nr = 0 + for line in fh: + line_nr += 1 + + define_match = define_pattern.match(line) + if define_match: + name = define_match.group(1) + defined_macros[name] = line_nr + + undef_match = undef_pattern.match(line) + if undef_match: + name = undef_match.group(1) + if not name in defined_macros: + errors.append('{}:{}: Macro named \'{}\' was not defined before.' + .format(f.LocalPath(), line_nr, name)) + else: + del defined_macros[name] + for name, line_nr in sorted(defined_macros.items(), key=lambda e: e[1]): + errors.append('{}:{}: Macro missing #undef: {}' + .format(f.LocalPath(), line_nr, name)) + + if errors: + return [output_api.PresubmitPromptOrNotify( + 'Detected mismatches in #define / #undef in the file(s) where you ' + 'modified preprocessor macros.', + errors)] + return [] + + def CheckChangeOnUpload(input_api, output_api): results = [] results.extend(_CommonChecks(input_api, output_api)) diff --git a/deps/v8/benchmarks/deltablue.js b/deps/v8/benchmarks/deltablue.js index dacee3f13f..f44973cb9f 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 9a2bb3dff4..0467720f45 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 0eeec2466e..02a5b54ef7 100644 --- a/deps/v8/gypfiles/features.gypi +++ b/deps/v8/gypfiles/features.gypi @@ -29,6 +29,10 @@ { 'variables': { + 'variables': { + 'v8_target_arch%': '<(target_arch)', + }, + 'v8_enable_disassembler%': 0, 'v8_promise_internal_field_count%': 0, @@ -76,6 +80,17 @@ # Temporary flag to allow embedders to update their microtasks scopes. 'v8_check_microtasks_scopes_consistency%': 'false', + + # Enable concurrent marking. + 'conditions': [ + ['target_arch=="x64" or target_arch=="ia32"', { + 'v8_enable_concurrent_marking%': 1, + },{ + 'v8_enable_concurrent_marking%': 0, + }] + ], + # Controls the threshold for on-heap/off-heap Typed Arrays. + 'v8_typed_array_max_size_in_heap%': 64, }, 'target_defaults': { 'conditions': [ @@ -124,6 +139,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': { @@ -139,7 +157,7 @@ }, # Debug 'Release': { 'variables': { - 'v8_enable_handle_zapping%': 0, + 'v8_enable_handle_zapping%': 1, }, 'conditions': [ ['v8_enable_handle_zapping==1', { @@ -150,6 +168,7 @@ }, # configurations 'defines': [ 'V8_GYP_BUILD', + 'V8_TYPED_ARRAY_MAX_SIZE_IN_HEAP=<(v8_typed_array_max_size_in_heap)', ], # defines }, # target_defaults } diff --git a/deps/v8/gypfiles/landmine_utils.py b/deps/v8/gypfiles/landmine_utils.py index cb3499132a..8bdc2b648b 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 a30373be61..63930d8aef 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 3df78a81c0..74630b6f19 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,13 @@ 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() = 0; + typedef void (*StackTracePrinter)(); /** @@ -208,79 +224,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; - } - + protected: /** - * 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. + * 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, unsigned int flags) { - return 0; - } - - /** - * 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, - 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 b60d137f44..621ca8b215 100644 --- a/deps/v8/include/v8-profiler.h +++ b/deps/v8/include/v8-profiler.h @@ -389,7 +389,7 @@ class V8_EXPORT HeapGraphNode { kRegExp = 6, // RegExp. kHeapNumber = 7, // Number stored in the heap. kNative = 8, // Native object (not from V8 heap). - kSynthetic = 9, // Synthetic object, usualy used for grouping + kSynthetic = 9, // Synthetic object, usually used for grouping // snapshot items together. kConsString = 10, // Concatenated string. A pair of pointers to strings. kSlicedString = 11, // Sliced string. A fragment of another string. @@ -784,7 +784,7 @@ class V8_EXPORT HeapProfiler { /** * Returns the sampled profile of allocations allocated (and still live) since * StartSamplingHeapProfiler was called. The ownership of the pointer is - * transfered to the caller. Returns nullptr if sampling heap profiler is not + * transferred to the caller. Returns nullptr if sampling heap profiler is not * active. */ AllocationProfile* GetAllocationProfile(); @@ -809,9 +809,6 @@ class V8_EXPORT HeapProfiler { */ static const uint16_t kPersistentHandleNoClassId = 0; - /** Returns memory used for profiler internal data and snapshots. */ - size_t GetProfilerMemorySize(); - private: HeapProfiler(); ~HeapProfiler(); diff --git a/deps/v8/include/v8-version.h b/deps/v8/include/v8-version.h index 866f9dc826..6546a2fe41 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 38 +#define V8_MINOR_VERSION 3 +#define V8_BUILD_NUMBER 221 +#define V8_PATCH_LEVEL 0 // 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 eaac6db0a1..7663eb246d 100644 --- a/deps/v8/include/v8.h +++ b/deps/v8/include/v8.h @@ -104,6 +104,7 @@ class String; class StringObject; class Symbol; class SymbolObject; +class PrimitiveArray; class Private; class Uint32; class Utils; @@ -139,6 +140,7 @@ template class ReturnValue; namespace internal { class Arguments; +class DeferredHandles; class Heap; class HeapObject; class Isolate; @@ -148,6 +150,10 @@ template class CustomArguments; class PropertyCallbackArguments; class FunctionCallbackArguments; class GlobalHandles; + +namespace wasm { +class StreamingDecoder; +} // namespace wasm } // namespace internal namespace debug { @@ -977,6 +983,48 @@ class V8_EXPORT Data { Data(); }; +/** + * This is an unfinished experimental feature, and is only exposed + * here for internal testing purposes. DO NOT USE. + * + * A container type that holds relevant metadata for module loading. + * + * This is passed back to the embedder as part of + * HostImportModuleDynamicallyCallback for module loading. + */ +class V8_EXPORT ScriptOrModule { + public: + /** + * The name that was passed by the embedder as ResourceName to the + * ScriptOrigin. This can be either a v8::String or v8::Undefined. + */ + Local GetResourceName(); + + /** + * The options that were passed by the embedder as HostDefinedOptions to + * the ScriptOrigin. + */ + Local GetHostDefinedOptions(); +}; + +/** + * This is an unfinished experimental feature, and is only exposed + * here for internal testing purposes. DO NOT USE. + * + * An array to hold Primitive values. This is used by the embedder to + * pass host defined options to the ScriptOptions during compilation. + * + * This is passed back to the embedder as part of + * HostImportModuleDynamicallyCallback for module loading. + * + */ +class V8_EXPORT PrimitiveArray { + public: + static Local New(Isolate* isolate, int length); + int Length() const; + void Set(int index, Local item); + Local Get(int index); +}; /** * The optional attributes of ScriptOrigin. @@ -1026,13 +1074,15 @@ class ScriptOrigin { Local source_map_url = Local(), Local resource_is_opaque = Local(), Local is_wasm = Local(), - Local is_module = Local()); + Local is_module = Local(), + Local host_defined_options = Local()); V8_INLINE Local ResourceName() const; V8_INLINE Local ResourceLineOffset() const; V8_INLINE Local ResourceColumnOffset() const; V8_INLINE Local ScriptID() const; V8_INLINE Local SourceMapUrl() const; + V8_INLINE Local HostDefinedOptions() const; V8_INLINE ScriptOriginOptions Options() const { return options_; } private: @@ -1042,6 +1092,7 @@ class ScriptOrigin { ScriptOriginOptions options_; Local script_id_; Local source_map_url_; + Local host_defined_options_; }; /** @@ -1169,8 +1220,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(); }; @@ -1288,6 +1339,7 @@ class V8_EXPORT ScriptCompiler { Local resource_column_offset; ScriptOriginOptions resource_options; Local source_map_url; + Local host_defined_options; // Cached data from previous compilation (if a kConsume*Cache flag is // set), or hold newly generated cache data (kProduce*Cache flags) are @@ -1384,6 +1436,7 @@ class V8_EXPORT ScriptCompiler { kProduceParserCache, kConsumeParserCache, kProduceCodeCache, + kProduceFullCodeCache, kConsumeCodeCache }; @@ -1725,7 +1778,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. @@ -1772,7 +1834,7 @@ class V8_EXPORT JSON { * \return The corresponding string if successfully stringified. */ static V8_WARN_UNUSED_RESULT MaybeLocal Stringify( - Local context, Local json_object, + Local context, Local json_object, Local gap = Local()); }; @@ -2442,7 +2504,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 +2824,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 +2849,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 +4171,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 +4231,47 @@ 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; + std::shared_ptr streaming_decoder_; +}; + class V8_EXPORT WasmModuleObjectBuilder final { public: WasmModuleObjectBuilder(Isolate* isolate) : isolate_(isolate) {} @@ -4182,11 +4288,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 +4563,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,10 +5179,11 @@ typedef void (*NamedPropertyDeleterCallback)( Local property, const PropertyCallbackInfo& info); - /** * Returns an array containing the names of the properties the named * property getter intercepts. + * + * Note: The values in the array must be of type v8::Name. */ typedef void (*NamedPropertyEnumeratorCallback)( const PropertyCallbackInfo& info); @@ -5193,10 +5304,11 @@ 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. + * + * Note: The values in the array must be of type v8::Name. */ typedef void (*GenericNamedPropertyEnumeratorCallback)( const PropertyCallbackInfo& info); @@ -5277,7 +5389,10 @@ typedef void (*IndexedPropertyDeleterCallback)( const PropertyCallbackInfo& info); /** - * See `v8::GenericNamedPropertyEnumeratorCallback`. + * Returns an array containing the indices of the properties the indexed + * property getter intercepts. + * + * Note: The values in the array must be uint32_t. */ typedef void (*IndexedPropertyEnumeratorCallback)( const PropertyCallbackInfo& info); @@ -6080,6 +6195,9 @@ typedef void (*FatalErrorCallback)(const char* location, const char* message); typedef void (*OOMErrorCallback)(const char* location, bool is_heap_oom); +typedef void (*DcheckErrorCallback)(const char* file, int line, + const char* message); + typedef void (*MessageCallback)(Local message, Local data); // --- Tracing --- @@ -6150,12 +6268,12 @@ typedef void (*CallCompletedCallback)(Isolate*); typedef void (*DeprecatedCallCompletedCallback)(); /** - * HostImportDynamicallyCallback is called when we require the + * HostImportModuleDynamicallyCallback is called when we require the * embedder to load a module. This is used as part of the dynamic * import syntax. * - * The referrer is the name of the file which calls the dynamic - * import. The referrer can be used to resolve the module location. + * The referrer contains metadata about the script/module that calls + * import. * * The specifier is the name of the module that should be imported. * @@ -6165,10 +6283,13 @@ 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); + Local context, Local referrer, + Local specifier); /** * PromiseHook with type kInit is called when a new promise is @@ -6291,8 +6412,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 +6622,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 +6901,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 +7047,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 @@ -7362,8 +7482,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 +7700,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 +7837,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 +7860,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. @@ -7795,6 +7903,9 @@ class V8_EXPORT V8 { static StartupData WarmUpSnapshotDataBlob(StartupData cold_startup_blob, const char* warmup_source); + /** Set the callback to invoke in case of Dcheck failures. */ + static void SetDcheckErrorHandler(DcheckErrorCallback that); + /** * Adds a message listener. * @@ -8147,7 +8258,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 +8272,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 +8629,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,11 +9088,11 @@ 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 kFirstNonstringType = 0x80; - static const int kOddballType = 0x82; - static const int kForeignType = 0x86; + static const int kOddballType = 0x83; + static const int kForeignType = 0x87; + static const int kJSApiObjectType = 0xbf; + static const int kJSObjectType = 0xc0; static const int kUndefinedOddballKind = 5; static const int kNullOddballKind = 3; @@ -9495,7 +9612,8 @@ ScriptOrigin::ScriptOrigin(Local resource_name, Local script_id, Local source_map_url, Local resource_is_opaque, - Local is_wasm, Local is_module) + Local is_wasm, Local is_module, + Local host_defined_options) : resource_name_(resource_name), resource_line_offset_(resource_line_offset), resource_column_offset_(resource_column_offset), @@ -9505,10 +9623,14 @@ ScriptOrigin::ScriptOrigin(Local resource_name, !is_wasm.IsEmpty() && is_wasm->IsTrue(), !is_module.IsEmpty() && is_module->IsTrue()), script_id_(script_id), - source_map_url_(source_map_url) {} + source_map_url_(source_map_url), + host_defined_options_(host_defined_options) {} Local ScriptOrigin::ResourceName() const { return resource_name_; } +Local ScriptOrigin::HostDefinedOptions() const { + return host_defined_options_; +} Local ScriptOrigin::ResourceLineOffset() const { return resource_line_offset_; @@ -9525,7 +9647,6 @@ Local ScriptOrigin::ScriptID() const { return script_id_; } Local ScriptOrigin::SourceMapUrl() const { return source_map_url_; } - ScriptCompiler::Source::Source(Local string, const ScriptOrigin& origin, CachedData* data) : source_string(string), @@ -9534,9 +9655,9 @@ ScriptCompiler::Source::Source(Local string, const ScriptOrigin& origin, resource_column_offset(origin.ResourceColumnOffset()), resource_options(origin.Options()), source_map_url(origin.SourceMapUrl()), + host_defined_options(origin.HostDefinedOptions()), cached_data(data) {} - ScriptCompiler::Source::Source(Local string, CachedData* data) : source_string(string), cached_data(data) {} @@ -10225,14 +10346,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 adb436219a..62bae4bfdc 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 9e5188f479..9d8058da41 100644 --- a/deps/v8/samples/hello-world.cc +++ b/deps/v8/samples/hello-world.cc @@ -9,53 +9,53 @@ #include "include/libplatform/libplatform.h" #include "include/v8.h" -using namespace v8; - int main(int argc, char* argv[]) { // Initialize V8. - V8::InitializeICUDefaultLocation(argv[0]); - V8::InitializeExternalStartupData(argv[0]); - Platform* platform = platform::CreateDefaultPlatform(); - V8::InitializePlatform(platform); - V8::Initialize(); + v8::V8::InitializeICUDefaultLocation(argv[0]); + v8::V8::InitializeExternalStartupData(argv[0]); + v8::Platform* platform = v8::platform::CreateDefaultPlatform(); + v8::V8::InitializePlatform(platform); + v8::V8::Initialize(); // Create a new Isolate and make it the current one. - Isolate::CreateParams create_params; + v8::Isolate::CreateParams create_params; create_params.array_buffer_allocator = v8::ArrayBuffer::Allocator::NewDefaultAllocator(); - Isolate* isolate = Isolate::New(create_params); + v8::Isolate* isolate = v8::Isolate::New(create_params); { - Isolate::Scope isolate_scope(isolate); + v8::Isolate::Scope isolate_scope(isolate); // Create a stack-allocated handle scope. - HandleScope handle_scope(isolate); + v8::HandleScope handle_scope(isolate); // Create a new context. - Local context = Context::New(isolate); + v8::Local context = v8::Context::New(isolate); // Enter the context for compiling and running the hello world script. - Context::Scope context_scope(context); + v8::Context::Scope context_scope(context); // Create a string containing the JavaScript source code. - Local source = - String::NewFromUtf8(isolate, "'Hello' + ', World!'", - NewStringType::kNormal).ToLocalChecked(); + v8::Local source = + v8::String::NewFromUtf8(isolate, "'Hello' + ', World!'", + v8::NewStringType::kNormal) + .ToLocalChecked(); // Compile the source code. - Local