deps: get new v8 building for ARM64 Windows#26087
Closed
jkunkee wants to merge 19 commits intonodejs:masterfrom
Closed
deps: get new v8 building for ARM64 Windows#26087jkunkee wants to merge 19 commits intonodejs:masterfrom
jkunkee wants to merge 19 commits intonodejs:masterfrom
Conversation
Major V8 updates are usually API/ABI incompatible with previous versions. This commit adapts NODE_MODULE_VERSION for V8 7.3. Refs: https://github.com/nodejs/CTC/blob/master/meetings/2016-09-28.md
Co-authored-by: Ujjwal Sharma <usharma1998@gmail.com> win: add v8_init to dependencies Fixes: nodejs/node-v8#89 Co-authored-by: Bartosz Sosnowski <bartosz@janeasystems.com>
Original commit message:
[snapshot] Always align embedded blob code pointer and size
Other platforms besides ARM64 Windows may also have alignment
requirements, e.g. PPC and s390. These requirements may affect
both the code pointer field and the size field, and so they
each need alignment directives because they are stored in
different sections.
Since aligning wastes a handful of bytes at most, not making
alignment conditional on the platform type seems like a good idea.
Refs: nodejs#24875
Change-Id: I1f58606af294be65e74a1f107cd05fc21e032704
Reviewed-on: https://chromium-review.googlesource.com/c/1433778
Commit-Queue: Jakob Gruber <jgruber@chromium.org>
Reviewed-by: Jakob Gruber <jgruber@chromium.org>
Cr-Commit-Position: refs/heads/master@{#59058}
Refs: v8/v8@fc0ddf5
Bump minimum version of ICU needed to build node to 63. Refs: v8/v8@30a350f Co-authored-by: Steven R Loomis <srloomis@us.ibm.com>
New heap space: code_large_object_space
Adapt to changes in async stack traces and function name inference
The V8 7.3 update requires the following adjustments to the postmortem debugging metadata constants: - v8dbg_prop_idx_first was removed in v8/v8@1ad0cd5 - v8dbg_jsarray_buffer_was_neutered_mask was renamed to v8dbg_jsarray_buffer_was_detached_mask in v8/v8@f68ee6e - v8dbg_jsarray_buffer_was_neutered_shift was renamed to v8dbg_jsarray_buffer_was_detached_shift in v8/v8@f68ee6e - v8dbg_class_Map__instance_descriptors__DescriptorArray moved to v8dbg_class_Map__raw_instance_descriptors__DescriptorArray and began using ACCESSORS2 in v8/v8@799dfad The following postmortem debugging constants were also impacted by V8's introduction of ACCESSORS2, but do not need to be updated the test: - v8dbg_class_ThinString__actual__String changed in v8/v8@0f581e4 - v8dbg_class_UncompiledData__inferred_name__String changed in v8/v8@0f581e4 - v8dbg_class_JSFunction__shared__SharedFunctionInfo changed in v8/v8@8162090 - v8dbg_class_SharedFunctionInfo__function_data__Object had its accessor removed in v8/v8@a55803a This has been fixed in gen-postmortem-metadata.py.
This is a backport of a fix already in upstream v8 that addresses errors about TurboAssembler referencing deleted functions.
When source line information was added to v8's mksnapshot process, ARM64 was missed. This change adds the missing SourceInfo and DeclareExternalFilename definitions. This change has already been upstreamed.
When building this revision of v8 as a component build using the MSVC toolchain targeting ARM64, the link phase emits a missing symbol error about XRegFromCode. This change moves the code that generates the unfulfilled reference to its corresponding .cc file to avoid the error. This no longer repros in upstream v8.
This was referenced Feb 13, 2019
Member
|
For the backports, could you follow the guidelines in https://github.com/nodejs/node/blob/master/doc/guides/maintaining-V8.md? |
Contributor
Author
|
@richardlau - Absolutely. Thanks for the pointer. |
Contributor
Author
|
Looks like 7.3, the 7 Feb 2019 release, is still maintained upstream, so the backports can be done upstream. |
Contributor
Author
v8 bug: Merge and backport new fixes |
Contributor
Author
|
This is closed because #25852 now incorporates my changes. Note that the upstream change to v7.3, https://chromium-review.googlesource.com/c/v8/v8/+/1506201 , has not yet been approved and merged, but should be soon. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This should be rebased and merged after #25852 is merged. It backports two fixes and works around another issue fixed in upstream v8.
Checklist
make -j4 test(UNIX), orvcbuild test(Windows) passes