Skip to content

deps: V8: extend fix for inline methods to Win64 - #40000

Closed
targos wants to merge 2 commits into
nodejs:masterfrom
targos:revert-inline-fix
Closed

deps: V8: extend fix for inline methods to Win64#40000
targos wants to merge 2 commits into
nodejs:masterfrom
targos:revert-inline-fix

Conversation

@targos

@targostargos commented Sep 5, 2021

Copy link
Copy Markdown
Member

No description provided.

@nodejs-github-botnodejs-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 Sep 5, 2021
@targostargos added windows Issues and PRs related to the Windows platform. dont-land-on-v12.x request-ci Add this label to start a Jenkins CI on a PR. labels Sep 5, 2021
@github-actionsgithub-actionsBot removed the request-ci Add this label to start a Jenkins CI on a PR. label Sep 5, 2021
@nodejs-github-bot

Copy link
Copy Markdown
Collaborator

@jasnelljasnell added author ready PRs that have at least one approval, no pending requests for changes, and a CI started. fast-track PRs that do not need to wait for 48 hours to land. labels Sep 5, 2021
@github-actions

Copy link
Copy Markdown
Contributor

Fast-track has been requested by @jasnell. Please 👍 to approve.

@targostargos removed the fast-track PRs that do not need to wait for 48 hours to land. label Sep 5, 2021
@targos

Copy link
Copy Markdown
MemberAuthor

Still broken on 32-bit

14:12:12 platform-embedded-file-writer-aix.obj : error LNK2019: unresolved external symbol "public: void __thiscall v8::internal::FixedArray::set(int,class v8::internal::Smi)" (?set@FixedArray@internal@v8@@QAEXHVSmi@23@@Z) referenced in function "protected: void __thiscall v8::internal::OrderedHashTable<class v8::internal::OrderedHashMap,2>::SetNumberOfBuckets(int)" (?SetNumberOfBuckets@?$OrderedHashTable@VOrderedHashMap@internal@v8@@$01@internal@v8@@IAEXH@Z) [C:\workspace\node-compile-windows\node\tools\v8_gypfiles\mksnapshot.vcxproj]
14:12:13 platform-embedded-file-writer-generic.obj : error LNK2001: unresolved external symbol "public: void __thiscall v8::internal::FixedArray::set(int,class v8::internal::Smi)" (?set@FixedArray@internal@v8@@QAEXHVSmi@23@@Z) [C:\workspace\node-compile-windows\node\tools\v8_gypfiles\mksnapshot.vcxproj]
14:12:13 platform-embedded-file-writer-mac.obj : error LNK2001: unresolved external symbol "public: void __thiscall v8::internal::FixedArray::set(int,class v8::internal::Smi)" (?set@FixedArray@internal@v8@@QAEXHVSmi@23@@Z) [C:\workspace\node-compile-windows\node\tools\v8_gypfiles\mksnapshot.vcxproj]
14:12:13 mksnapshot.obj : error LNK2001: unresolved external symbol "public: void __thiscall v8::internal::FixedArray::set(int,class v8::internal::Smi)" (?set@FixedArray@internal@v8@@QAEXHVSmi@23@@Z) [C:\workspace\node-compile-windows\node\tools\v8_gypfiles\mksnapshot.vcxproj]
14:12:13 ..\..\out\Release\mksnapshot.exe : fatal error LNK1120: 1 unresolved externals [C:\workspace\node-compile-windows\node\tools\v8_gypfiles\mksnapshot.vcxproj]

We need to find a long-term solution to this. The failure happens on x64 too with V8 9.3

@targostargos added the blocked PRs that are blocked by other issues or PRs. label Sep 5, 2021
@targos

Copy link
Copy Markdown
MemberAuthor

I got the condition backwards 🤦🏻 . We actually need to keep the patch and extend it to x64...

@targostargos changed the title Revert "deps: fix V8 build issue with inline methods"deps: V8: extend fix for inline methods to Win64Sep 5, 2021
@targostargos added request-ci Add this label to start a Jenkins CI on a PR. and removed blocked PRs that are blocked by other issues or PRs. labels Sep 5, 2021
@github-actionsgithub-actionsBot removed the request-ci Add this label to start a Jenkins CI on a PR. label Sep 5, 2021
@nodejs-github-bot

Copy link
Copy Markdown
Collaborator

@targos

Copy link
Copy Markdown
MemberAuthor

And now it fails in debug mode 😭

17:46:37 C:\workspace\node-compile-windows-debug\node\deps\v8\src\objects\fixed-array.h(139,5): error C2027: use of undefined type 'v8::internal::Map' [C:\workspace\node-compile-windows-debug\node\tools\v8_gypfiles\v8_init.vcxproj]
17:46:37 C:\workspace\node-compile-windows-debug\node\deps\v8\src\roots\roots.h(26): message : see declaration of 'v8::internal::Map' [C:\workspace\node-compile-windows-debug\node\tools\v8_gypfiles\v8_init.vcxproj]
17:46:37 v8_pch.cc
17:46:37 C:\workspace\node-compile-windows-debug\node\deps\v8\src\objects\fixed-array.h(139,5): error C2027: use of undefined type 'v8::internal::Map' [C:\workspace\node-compile-windows-debug\node\tools\v8_gypfiles\v8_compiler.vcxproj]
17:46:37 C:\workspace\node-compile-windows-debug\node\deps\v8\src\roots\roots.h(26): message : see declaration of 'v8::internal::Map' [C:\workspace\node-compile-windows-debug\node\tools\v8_gypfiles\v8_compiler.vcxproj]
17:46:40 v8_pch.cc
17:46:40 C:\workspace\node-compile-windows-debug\node\deps\v8\src\objects\fixed-array.h(139,5): error C2027: use of undefined type 'v8::internal::Map' [C:\workspace\node-compile-windows-debug\node\tools\v8_gypfiles\v8_base_without_compiler.vcxproj]
17:46:40 C:\workspace\node-compile-windows-debug\node\deps\v8\src\roots\roots.h(26): message : see declaration of 'v8::internal::Map' [C:\workspace\node-compile-windows-debug\node\tools\v8_gypfiles\v8_base_without_compiler.vcxproj]
17:46:40 

@targostargos added blocked PRs that are blocked by other issues or PRs. and removed author ready PRs that have at least one approval, no pending requests for changes, and a CI started. labels Sep 5, 2021
@addaleax

Copy link
Copy Markdown
Member

@targos You could just comment out the DCHECK?

@mscdexmscdex mentioned this pull request Sep 6, 2021
return get(isolate, index).IsTheHole(isolate);
}

#if !defined(_WIN32) || defined(_WIN64)

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

_WIN32 actually is defined in windows 64bit mode. So this is windows ...

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

My another desperate try: #40010.

@gengjiawen

Copy link
Copy Markdown
Member

@targos You could just comment out the DCHECK?

Mostly likely won't help. It's a weird linker bug in vs.

@targos

Copy link
Copy Markdown
MemberAuthor

Closing in favor of #40010

@targostargos closed this Sep 6, 2021
@addaleax

Copy link
Copy Markdown
Member

@targos You could just comment out the DCHECK?

Mostly likely won't help. It's a weird linker bug in vs.

@gengjiawen It’s actually not and I generally do know what I’m talking about.

@gengjiawen

Copy link
Copy Markdown
Member

@gengjiawen It’s actually not and I generally do know what I’m talking about.

You are probably right. I'm just speculating from past experience handling v8 build issue :)

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

blockedPRs that are blocked by other issues or PRs.buildIssues and PRs related to build files or the CI.needs-ciPRs that need a full CI run.v8 engineIssues and PRs related to the V8 dependency.windowsIssues and PRs related to the Windows platform.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants

@targos@nodejs-github-bot@addaleax@gengjiawen@jasnell@cjihrig