Skip to content
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’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

deps: update V8 to 9.6 #40488

Closed
wants to merge 16 commits into from
Closed

deps: update V8 to 9.6 #40488

wants to merge 16 commits into from

Conversation

targos
Copy link
Member

@targos targos commented Oct 17, 2021

@targos targos added the semver-minor PRs that contain new features and should be released in the next minor version. label Oct 17, 2021
@nodejs-github-bot nodejs-github-bot added build Issues and PRs related to build files or the CI. needs-ci PRs that need a full CI run. v8 engine Issues and PRs related to the V8 dependency. labels Oct 17, 2021
@nodejs-github-bot
Copy link
Collaborator

nodejs-github-bot commented Oct 17, 2021

@targos targos added the request-ci Add this label to start a Jenkins CI on a PR. label Oct 17, 2021
@github-actions github-actions bot removed the request-ci Add this label to start a Jenkins CI on a PR. label Oct 17, 2021
@nodejs-github-bot
Copy link
Collaborator

@targos
Copy link
Member Author

targos commented Oct 17, 2021

@nodejs/platform-windows-arm Can you please help with the build failure on arm64?

I tried to make our GYP config closer to the GN one, but it's still failing

4d1e094
https://ci.nodejs.org/job/node-compile-windows/42438/nodes=win-vs2019-arm64/console

14:25:53      Creating library ..\..\out\Release\mksnapshot_host.lib and object ..\..\out\Release\mksnapshot_host.exp
14:25:59 v8_base_without_compiler_host.lib(api.obj) : error LNK2019: unresolved external symbol "bool __cdecl v8::internal::trap_handler::TryHandleWasmTrap(struct _EXCEPTION_POINTERS *)" (?TryHandleWasmTrap@trap_handler@internal@v8@@YA_NPEAU_EXCEPTION_POINTERS@@@Z) referenced in function "bool __cdecl v8::TryHandleWebAssemblyTrapWindows(struct _EXCEPTION_POINTERS *)" (?TryHandleWebAssemblyTrapWindows@v8@@YA_NPEAU_EXCEPTION_POINTERS@@@Z) [C:\workspace\node-compile-windows\node\tools\v8_gypfiles\mksnapshot_host.vcxproj]
14:26:00 v8_base_without_compiler_host.lib(handler-outside.obj) : error LNK2019: unresolved external symbol "bool __cdecl v8::internal::trap_handler::RegisterDefaultTrapHandler(void)" (?RegisterDefaultTrapHandler@trap_handler@internal@v8@@YA_NXZ) referenced in function "bool __cdecl v8::internal::trap_handler::EnableTrapHandler(bool)" (?EnableTrapHandler@trap_handler@internal@v8@@YA_N_N@Z) [C:\workspace\node-compile-windows\node\tools\v8_gypfiles\mksnapshot_host.vcxproj]
14:26:00 v8_base_without_compiler_host.lib(simulator-arm64.obj) : error LNK2019: unresolved external symbol ProbeMemory referenced in function "protected: void __cdecl v8::internal::Simulator::LoadStoreHelper(class v8::internal::Instruction *,__int64,enum v8::internal::AddrMode)" (?LoadStoreHelper@Simulator@internal@v8@@IEAAXPEAVInstruction@23@_JW4AddrMode@23@@Z) [C:\workspace\node-compile-windows\node\tools\v8_gypfiles\mksnapshot_host.vcxproj]
14:26:00     Hint on symbols that are defined and could potentially match:
14:26:00       "protected: bool __cdecl v8::internal::Simulator::ProbeMemory(unsigned __int64,unsigned __int64)" (?ProbeMemory@Simulator@internal@v8@@IEAA_N_K0@Z)
14:26:00 ..\..\out\Release\mksnapshot_host.exe : fatal error LNK1120: 3 unresolved externals [C:\workspace\node-compile-windows\node\tools\v8_gypfiles\mksnapshot_host.vcxproj]
14:26:00 

@targos
Copy link
Member Author

targos commented Oct 19, 2021

I'm pretty sure the problem is that handler-outside-win.cc' is not being compiled, so something is wrong with the gyp condition.

@targos targos added the request-ci Add this label to start a Jenkins CI on a PR. label Oct 19, 2021
@github-actions github-actions bot removed the request-ci Add this label to start a Jenkins CI on a PR. label Oct 19, 2021
@nodejs-github-bot
Copy link
Collaborator

@targos
Copy link
Member Author

targos commented Oct 19, 2021

I opened a V8 issue: https://bugs.chromium.org/p/v8/issues/detail?id=12327

@targos targos marked this pull request as draft October 19, 2021 18:18
@targos
Copy link
Member Author

targos commented Oct 19, 2021

@nodejs-github-bot
Copy link
Collaborator

@nodejs-github-bot
Copy link
Collaborator

@nodejs-github-bot
Copy link
Collaborator

@targos
Copy link
Member Author

targos commented Oct 19, 2021

So, we've got a problem with gyp that I have no idea how to solve:

https://github.com/targos/node/blob/5dae1dba882f6ce71016a7b08f7f120e3015b342/tools/v8_gypfiles/v8.gyp#L871

  • With conditions, _toolset is not defined, because toolsets is defined conditionally (it has to be).
  • With target_conditions, _toolset is defined, but host_arch is not.

@nodejs-github-bot
Copy link
Collaborator

@nodejs-github-bot
Copy link
Collaborator

nodejs-github-bot pushed a commit to nodejs/node-v8 that referenced this pull request Sep 3, 2022
`handler-outside-simulator.cc` uses inline assembly, which is not
supported by MSVC.

PR-URL: nodejs/node#40488
Reviewed-By: Jiawen Geng <[email protected]>
Reviewed-By: James M Snell <[email protected]>
nodejs-github-bot pushed a commit to nodejs/node-v8 that referenced this pull request Sep 4, 2022
`handler-outside-simulator.cc` uses inline assembly, which is not
supported by MSVC.

PR-URL: nodejs/node#40488
Reviewed-By: Jiawen Geng <[email protected]>
Reviewed-By: James M Snell <[email protected]>
nodejs-github-bot pushed a commit to nodejs/node-v8 that referenced this pull request Sep 5, 2022
`handler-outside-simulator.cc` uses inline assembly, which is not
supported by MSVC.

PR-URL: nodejs/node#40488
Reviewed-By: Jiawen Geng <[email protected]>
Reviewed-By: James M Snell <[email protected]>
nodejs-github-bot pushed a commit to nodejs/node-v8 that referenced this pull request Sep 6, 2022
`handler-outside-simulator.cc` uses inline assembly, which is not
supported by MSVC.

PR-URL: nodejs/node#40488
Reviewed-By: Jiawen Geng <[email protected]>
Reviewed-By: James M Snell <[email protected]>
nodejs-github-bot pushed a commit to nodejs/node-v8 that referenced this pull request Sep 7, 2022
`handler-outside-simulator.cc` uses inline assembly, which is not
supported by MSVC.

PR-URL: nodejs/node#40488
Reviewed-By: Jiawen Geng <[email protected]>
Reviewed-By: James M Snell <[email protected]>
nodejs-github-bot pushed a commit to nodejs/node-v8 that referenced this pull request Sep 7, 2022
`handler-outside-simulator.cc` uses inline assembly, which is not
supported by MSVC.

PR-URL: nodejs/node#40488
Reviewed-By: Jiawen Geng <[email protected]>
Reviewed-By: James M Snell <[email protected]>
targos added a commit that referenced this pull request Sep 8, 2022
`handler-outside-simulator.cc` uses inline assembly, which is not
supported by MSVC.

PR-URL: #40488
Reviewed-By: Jiawen Geng <[email protected]>
Reviewed-By: James M Snell <[email protected]>
nodejs-github-bot pushed a commit to nodejs/node-v8 that referenced this pull request Sep 8, 2022
`handler-outside-simulator.cc` uses inline assembly, which is not
supported by MSVC.

PR-URL: nodejs/node#40488
Reviewed-By: Jiawen Geng <[email protected]>
Reviewed-By: James M Snell <[email protected]>
nodejs-github-bot pushed a commit to nodejs/node-v8 that referenced this pull request Sep 9, 2022
`handler-outside-simulator.cc` uses inline assembly, which is not
supported by MSVC.

PR-URL: nodejs/node#40488
Reviewed-By: Jiawen Geng <[email protected]>
Reviewed-By: James M Snell <[email protected]>
nodejs-github-bot pushed a commit to nodejs/node-v8 that referenced this pull request Sep 10, 2022
`handler-outside-simulator.cc` uses inline assembly, which is not
supported by MSVC.

PR-URL: nodejs/node#40488
Reviewed-By: Jiawen Geng <[email protected]>
Reviewed-By: James M Snell <[email protected]>
nodejs-github-bot pushed a commit to nodejs/node-v8 that referenced this pull request Sep 11, 2022
`handler-outside-simulator.cc` uses inline assembly, which is not
supported by MSVC.

PR-URL: nodejs/node#40488
Reviewed-By: Jiawen Geng <[email protected]>
Reviewed-By: James M Snell <[email protected]>
nodejs-github-bot pushed a commit to nodejs/node-v8 that referenced this pull request Sep 12, 2022
`handler-outside-simulator.cc` uses inline assembly, which is not
supported by MSVC.

PR-URL: nodejs/node#40488
Reviewed-By: Jiawen Geng <[email protected]>
Reviewed-By: James M Snell <[email protected]>
nodejs-github-bot pushed a commit to nodejs/node-v8 that referenced this pull request Sep 13, 2022
`handler-outside-simulator.cc` uses inline assembly, which is not
supported by MSVC.

PR-URL: nodejs/node#40488
Reviewed-By: Jiawen Geng <[email protected]>
Reviewed-By: James M Snell <[email protected]>
nodejs-github-bot pushed a commit to nodejs/node-v8 that referenced this pull request Sep 14, 2022
`handler-outside-simulator.cc` uses inline assembly, which is not
supported by MSVC.

PR-URL: nodejs/node#40488
Reviewed-By: Jiawen Geng <[email protected]>
Reviewed-By: James M Snell <[email protected]>
nodejs-github-bot pushed a commit to nodejs/node-v8 that referenced this pull request Sep 15, 2022
`handler-outside-simulator.cc` uses inline assembly, which is not
supported by MSVC.

PR-URL: nodejs/node#40488
Reviewed-By: Jiawen Geng <[email protected]>
Reviewed-By: James M Snell <[email protected]>
nodejs-github-bot pushed a commit to nodejs/node-v8 that referenced this pull request Sep 16, 2022
`handler-outside-simulator.cc` uses inline assembly, which is not
supported by MSVC.

PR-URL: nodejs/node#40488
Reviewed-By: Jiawen Geng <[email protected]>
Reviewed-By: James M Snell <[email protected]>
nodejs-github-bot pushed a commit to nodejs/node-v8 that referenced this pull request Sep 17, 2022
`handler-outside-simulator.cc` uses inline assembly, which is not
supported by MSVC.

PR-URL: nodejs/node#40488
Reviewed-By: Jiawen Geng <[email protected]>
Reviewed-By: James M Snell <[email protected]>
nodejs-github-bot pushed a commit to nodejs/node-v8 that referenced this pull request Sep 18, 2022
`handler-outside-simulator.cc` uses inline assembly, which is not
supported by MSVC.

PR-URL: nodejs/node#40488
Reviewed-By: Jiawen Geng <[email protected]>
Reviewed-By: James M Snell <[email protected]>
nodejs-github-bot pushed a commit to nodejs/node-v8 that referenced this pull request Sep 19, 2022
`handler-outside-simulator.cc` uses inline assembly, which is not
supported by MSVC.

PR-URL: nodejs/node#40488
Reviewed-By: Jiawen Geng <[email protected]>
Reviewed-By: James M Snell <[email protected]>
nodejs-github-bot pushed a commit to nodejs/node-v8 that referenced this pull request Sep 20, 2022
`handler-outside-simulator.cc` uses inline assembly, which is not
supported by MSVC.

PR-URL: nodejs/node#40488
Reviewed-By: Jiawen Geng <[email protected]>
Reviewed-By: James M Snell <[email protected]>
nodejs-github-bot pushed a commit to nodejs/node-v8 that referenced this pull request Sep 21, 2022
`handler-outside-simulator.cc` uses inline assembly, which is not
supported by MSVC.

PR-URL: nodejs/node#40488
Reviewed-By: Jiawen Geng <[email protected]>
Reviewed-By: James M Snell <[email protected]>
targos added a commit that referenced this pull request Sep 21, 2022
`handler-outside-simulator.cc` uses inline assembly, which is not
supported by MSVC.

PR-URL: #40488
Reviewed-By: Jiawen Geng <[email protected]>
Reviewed-By: James M Snell <[email protected]>
targos added a commit to targos/node that referenced this pull request Sep 21, 2022
`handler-outside-simulator.cc` uses inline assembly, which is not
supported by MSVC.

PR-URL: nodejs#40488
Reviewed-By: Jiawen Geng <[email protected]>
Reviewed-By: James M Snell <[email protected]>
targos added a commit to targos/node that referenced this pull request Sep 21, 2022
`handler-outside-simulator.cc` uses inline assembly, which is not
supported by MSVC.

PR-URL: nodejs#40488
Reviewed-By: Jiawen Geng <[email protected]>
Reviewed-By: James M Snell <[email protected]>
nodejs-github-bot pushed a commit to nodejs/node-v8 that referenced this pull request Sep 22, 2022
`handler-outside-simulator.cc` uses inline assembly, which is not
supported by MSVC.

PR-URL: nodejs/node#40488
Reviewed-By: Jiawen Geng <[email protected]>
Reviewed-By: James M Snell <[email protected]>
nodejs-github-bot pushed a commit to nodejs/node-v8 that referenced this pull request Sep 23, 2022
`handler-outside-simulator.cc` uses inline assembly, which is not
supported by MSVC.

PR-URL: nodejs/node#40488
Reviewed-By: Jiawen Geng <[email protected]>
Reviewed-By: James M Snell <[email protected]>
nodejs-github-bot pushed a commit to nodejs/node-v8 that referenced this pull request Sep 24, 2022
`handler-outside-simulator.cc` uses inline assembly, which is not
supported by MSVC.

PR-URL: nodejs/node#40488
Reviewed-By: Jiawen Geng <[email protected]>
Reviewed-By: James M Snell <[email protected]>
nodejs-github-bot pushed a commit to nodejs/node-v8 that referenced this pull request Sep 25, 2022
`handler-outside-simulator.cc` uses inline assembly, which is not
supported by MSVC.

PR-URL: nodejs/node#40488
Reviewed-By: Jiawen Geng <[email protected]>
Reviewed-By: James M Snell <[email protected]>
abhishekumar-tyagi pushed a commit to abhishekumar-tyagi/node that referenced this pull request May 5, 2024
PR-URL: nodejs/node#40488
Reviewed-By: Jiawen Geng <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
build Issues and PRs related to build files or the CI. dont-land-on-v18.x PRs that should not land on the v18.x-staging branch and should not be released in v18.x. needs-ci PRs that need a full CI run. semver-minor PRs that contain new features and should be released in the next minor version. v8 engine Issues and PRs related to the V8 dependency.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants