New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We鈥檒l occasionally send you account related emails.
Already on GitHub? Sign in to your account
deps: update V8 to 7.4 #26685
deps: update V8 to 7.4 #26685
Commits on Mar 28, 2019
-
PR-URL: nodejs#26685 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Micha毛l Zasso <targos@protonmail.com> Reviewed-By: Refael Ackermann <refack@gmail.com>
-
build: reset embedder string to "-node.0"
PR-URL: nodejs#26685 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Micha毛l Zasso <targos@protonmail.com> Reviewed-By: Refael Ackermann <refack@gmail.com>
-
src: update NODE_MODULE_VERSION to 72
Major V8 updates are usually API/ABI incompatible with previous versions. This commit adapts NODE_MODULE_VERSION for V8 7.4. Refs: https://github.com/nodejs/CTC/blob/master/meetings/2016-09-28.md PR-URL: nodejs#26685 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Micha毛l Zasso <targos@protonmail.com> Reviewed-By: Refael Ackermann <refack@gmail.com>
-
deps: sync V8 gypfiles with 7.4
Normalized boolean options in the gypfiles for consistency both internally and with the V8 GN config. Co-authored-by: Micha毛l Zasso <targos@protonmail.com> PR-URL: nodejs#26685 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Micha毛l Zasso <targos@protonmail.com> Reviewed-By: Refael Ackermann <refack@gmail.com>
-
Original commit message: Deprecate MicrotasksCompletedCallback in favor to use *WithData version This adds overloads of v8::Isolate::{Add,Remove}MicrotaskCompletedCallback, that use MicrotasksCompletedCallbackWithData, and marks the original one as V8_DEPRECATE_SOON for transition. Bug: v8:8124 Change-Id: I124c3108545e1a2b29cd95620f36901431663c65 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1493766 Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Taiju Tsuiki <tzik@chromium.org> Cr-Commit-Position: refs/heads/master@{#60045} Refs: v8/v8@2f79d68 PR-URL: nodejs#26685 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Micha毛l Zasso <targos@protonmail.com> Reviewed-By: Refael Ackermann <refack@gmail.com>
-
Original commit message: [ptr-compr][x64] Define kTaggedSize as kInt32Size ... when pointer compression is enabled and some number of cleanups. Bug: v8:7703 Change-Id: If7344abf68a1c4d54e4a79d066dc185f25055d7d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1477737 Commit-Queue: Igor Sheludko <ishell@chromium.org> Auto-Submit: Igor Sheludko <ishell@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#60056} Refs: v8/v8@392316d PR-URL: nodejs#26685 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Micha毛l Zasso <targos@protonmail.com> Reviewed-By: Refael Ackermann <refack@gmail.com>
-
Original commit message: [ubsan] Fix various ClusterFuzz-found issues Fixing a few float and int overflows. Drive-by fix: with --experimental-wasm-bigint, Number values may not be used to initialize i64-typed globals. The existing code for doing that relied on UB; since it's a spec violation the fix is to throw instead. No regression test for 933103 because it will OOM anyway. No regression test for 932896 because it would be extremely slow. Bug: chromium:927894, chromium:927996, chromium:930086, chromium:932679, chromium:932896, chromium:933103, chromium:933134 Change-Id: Iae1c1ff1038af4512a52d3e56b8c4b75f2233314 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1495911 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#60075} Refs: v8/v8@91f0cd0 PR-URL: nodejs#26685 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Micha毛l Zasso <targos@protonmail.com> Reviewed-By: Refael Ackermann <refack@gmail.com>
-
Original commit message: Give the implementation of v8::MicrotaskQueue::New This adds the entrypoint to MicrotaskQueue, which used to miss the implementation. Bug: v8:8124 Change-Id: I114fb69d975ee75c86b19349ca76789e425ea910 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1505232 Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Taiju Tsuiki <tzik@chromium.org> Cr-Commit-Position: refs/heads/master@{#60076} Refs: v8/v8@5b0510d PR-URL: nodejs#26685 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Micha毛l Zasso <targos@protonmail.com> Reviewed-By: Refael Ackermann <refack@gmail.com>
-
Original commit message: [api] remove LegacyBuildEmbedderGraphCallback This should not be used anymore (and it definitely is not by Node.js or Chromium). Change-Id: I4a1ce1fda98efd197a64ce0969dae5c8b18f6e97 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1511484 Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#60139} Refs: v8/v8@f0bb5d2 PR-URL: nodejs#26685 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Micha毛l Zasso <targos@protonmail.com> Reviewed-By: Refael Ackermann <refack@gmail.com>
-
Original commit message: [api] Remove deprecated WasmCompiledModule Embedders should use WasmModuleObject instead. R=adamk@chromium.org Change-Id: Ibe5e4b160bb917bcd9f895be1b954acc40a045d8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1513616 Reviewed-by: Adam Klein <adamk@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#60184} Refs: v8/v8@6b09d21 PR-URL: nodejs#26685 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Micha毛l Zasso <targos@protonmail.com> Reviewed-By: Refael Ackermann <refack@gmail.com>
-
Original commit message: [api] Remove unowned Extensions interface Extensions are now always passed via unique_ptr and are owned by V8. This CL removes the deprecated API where the embedder would own the Extension, but has no mechanism for deleting it. R=ulan@chromium.org Bug: v8:8725 Change-Id: Icb83660fad9d04c66f8db2265091ebabcbb197c4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1514493 Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#60186} Refs: v8/v8@d5f08e4 PR-URL: nodejs#26685 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Micha毛l Zasso <targos@protonmail.com> Reviewed-By: Refael Ackermann <refack@gmail.com>
-
Original commit message: [cleanup] Remove unused stack_trace_ member from PromiseRejectMessage R=yangguo@chromium.org Bug: v8:8742 Change-Id: I307097021893617ed5178f1e967f9360a55cd929 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1520710 Auto-Submit: Simon Z眉nd <szuend@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#60221} Refs: v8/v8@e5f01ba PR-URL: nodejs#26685 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Micha毛l Zasso <targos@protonmail.com> Reviewed-By: Refael Ackermann <refack@gmail.com>
-
Original commit message: [api] Add unique_ptr constructor for StreamedSource Since StreamedSource takes ownership of the ExternalSourceStream passed into it, it should take it by unique_ptr rather than raw pointer to signal this transfer of ownership. The old constructor is now deprecated. Change-Id: I24681926c2f3141f7dd3664f72019a4c6deabfd7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1520713 Commit-Queue: Yang Guo <yangguo@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Auto-Submit: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#60232} Refs: v8/v8@d82c9af PR-URL: nodejs#26685 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Micha毛l Zasso <targos@protonmail.com> Reviewed-By: Refael Ackermann <refack@gmail.com>
-
deps: V8: cherry-pick 6 commits
Cherry-pick ad49f12. Original commit message: [cleanup] Move Compressed[XXX]Slot definitions to separate header ... and fix header includes to please the respective bot. Drive-by-fix: decompression implementation is now MSVC friendly. Bug: v8:7703, v8:8834 Change-Id: Iaf589138e5bafb32b0d9feab5cf074b71f241a3c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1505579 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#60074} Refs: v8/v8@ad49f12 Cherry-pick 14f07a8. Original commit message: [ptr-compr] Define kTaggedPayloadOffset correctly on Big Endian smi size is sill 8 bytes when V8_COMPRESS_POINTERS is undefined. Bug: v8:7703 Change-Id: I0d1e757e42e8b1e6b10960420135245e24553175 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1508572 Commit-Queue: Junliang Yan <jyan@ca.ibm.com> Auto-Submit: Junliang Yan <jyan@ca.ibm.com> Reviewed-by: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#60097} Refs: v8/v8@14f07a8 Cherry-pick 676014b. Original commit message: [ptr-compr] Fix MSVC build ... which complained about truncating uintptr_t constant to uint32_t. Bug: v8:7703 Change-Id: I6fae2bf1e5de79e6131479b84a8d8aa5b9de909f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1508672 Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#60100} Refs: v8/v8@676014b Cherry-pick 4e6a1a7. Original commit message: [heap] Clean-up some weak map entries in scavenger This change enables clean-up of weak map entries in the scavenger of the weak map is in the young generation. With this change, the scavenger treats keys in ephemerons as weak instead of strong, but does not implement full ephemeron semantics: Values are treated always as strong, independently of whether the key is live or not. This approach ensures that no value is cleaned up accidentally. After scavenging, all entries with dead keys are removed from weak maps. After that, some values that are not referenced anywhere anymore might still be in the heap, and those can be cleaned up in the next scavenge. What the scavenger does, amounts to one iteration of the fixed-point algorithm required to implement ephemeron semantics. We hope that this is a reasonable trade-off between time spent tracing and cleaned-up entries. This change does not affect weak maps that reside in old space. Bug: v8:8557 Change-Id: Ic5618b3b863ad8c314c87449571150e756fecbf0 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1467182 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#60101} Refs: v8/v8@4e6a1a7 Cherry-pick afbfd75. Original commit message: [ptr-compr] Fix ptr-compr broken by 4e6a1a75 (https://chromium-review.googlesource.com/c/v8/v8/+/1467182) Bug: v8:7703 Change-Id: Ia6b74b985735af67bde56b30e4a709247eb591be Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1508674 Commit-Queue: Igor Sheludko <ishell@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#60102} Refs: v8/v8@afbfd75 Cherry-pick f792eb8. Original commit message: [ptr-compr][arm64] Update pointer compression arm64's implementation Since kTaggedSize got shrinked and we are actually compressing the pointers (as oppposed to zeroing their upper bits), we need to update the arm64 codebase to accommodate this change. Cq-Include-Trybots: luci.v8.try:v8_linux64_arm64_pointer_compression_rel_ng Bug: v8:7703 Change-Id: I890f3ab8c046f47232e80f85830f9ae8f4dbced4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1499498 Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#60172} Refs: v8/v8@f792eb8 PR-URL: nodejs#26685 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Micha毛l Zasso <targos@protonmail.com> Reviewed-By: Refael Ackermann <refack@gmail.com>
-
deps: V8: un-cherry-pick bd019bd
Original commit message: [testrunner] delete ancient junit compatible format support Testrunner has ancient support for JUnit compatible XML output. This CL removes this old feature. R=mstarzinger@chromium.org,jgruber@chromium.org,jkummerow@chromium.org CC=鈥媘achenbach@chromium.org Bug: v8:8728 Change-Id: I7e1beb011dbaec3aa1a27398a5c52abdd778eaf0 Reviewed-on: https://chromium-review.googlesource.com/c/1430065 Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Tamer Tas <tmrts@chromium.org> Cr-Commit-Position: refs/heads/master@{#59045} Refs: v8/v8@bd019bd PR-URL: nodejs#26685 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Micha毛l Zasso <targos@protonmail.com> Reviewed-By: Refael Ackermann <refack@gmail.com>
-
deps: update postmortem metadata generation script
Update postmortem metadata constants for V8 7.4 in Node.js. PR-URL: nodejs#26685 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Micha毛l Zasso <targos@protonmail.com> Reviewed-By: Refael Ackermann <refack@gmail.com>
-
deps: silence irrelevant V8 warning
PR-URL: nodejs#26685 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Micha毛l Zasso <targos@protonmail.com> Reviewed-By: Refael Ackermann <refack@gmail.com>
-
deps,build: refactor v8 gypfiles
* make `generate_snapshot` into a target with no debug symbols on XCode * cleanup PR-URL: nodejs#26685 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Micha毛l Zasso <targos@protonmail.com> Reviewed-By: Refael Ackermann <refack@gmail.com>
-
deps,build: compute torque_outputs in v8.gyp
PR-URL: nodejs#26685 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Micha毛l Zasso <targos@protonmail.com> Reviewed-By: Refael Ackermann <refack@gmail.com>
-
deps,build: move gypfiles out 1/2 - required changes
* Add `<(V8_ROOT)` to file paths PR-URL: nodejs#26685 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Micha毛l Zasso <targos@protonmail.com> Reviewed-By: Refael Ackermann <refack@gmail.com>
-
build,deps: move gypfiles out 2/2 - moving
* move all used files to `tools/v8_gypfiles` directory * fix references in node configuration PR-URL: nodejs#26685 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Micha毛l Zasso <targos@protonmail.com> Reviewed-By: Refael Ackermann <refack@gmail.com>
-
util: only the first line of the error message
V8 extends the error message for JSON#stringify when encountering circular structures. The first line of the new error message is equivalent to the old error message and stays the same across all circular structure errors. PR-URL: nodejs#26685 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Micha毛l Zasso <targos@protonmail.com> Reviewed-By: Refael Ackermann <refack@gmail.com>
-
test: update postmortem metadata test for V8 7.4
Summary of changes: - v8dbg_class_FixedTypedArrayBase__external_pointer__Object - Type changed in v8/v8@f70bb59#diff-f3f182b0510ba2ee39ae87e421ff110b. - Use v8dbg_class_FixedTypedArrayBase__external_pointer__uintptr_t - v8dbg_class_JSArrayBuffer__backing_store__Object - Type changed in v8/v8@f70bb59#diff-f3f182b0510ba2ee39ae87e421ff110b. - Use v8dbg_class_JSArrayBuffer__backing_store__uintptr_t - v8dbg_class_Map__raw_instance_descriptors__DescriptorArray - Changed in v8/v8@d7b08b6#diff-59788e25dc5196c356894d5e1fac6425 - New constant added to V8: v8dbg_class_Map__instance_descriptors_offset - v8dbg_PointerSizeLog2 - Changed in v8/v8@46d1986#diff-f3f182b0510ba2ee39ae87e421ff110b - Refs: https://bugs.chromium.org/p/v8/issues/detail?id=8477 - Use new constants: v8dbg_SystemPointerSize, v8dbg_SystemPointerSizeLog2, v8dbg_TaggedSize, and v8dbg_TaggedSizeLog2 PR-URL: nodejs#26685 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Micha毛l Zasso <targos@protonmail.com> Reviewed-By: Refael Ackermann <refack@gmail.com>