On Thu, Jan 29, 2026 at 01:23:45AM +0100, Carlos Alberto Lopez Perez wrote:
> Try disabling JIT (performance will be way worse with pages using JavaScript,
> but maybe works).
> Also try to use system malloc.
> In other words, try this patch that enables those defaults for non-linux
> systems:
Thank you for the suggestion on the patch.
I tried it but I got a new compilation error:
...
/tmp/wip/webkit-gtk/work/webkitgtk-2.50.4/cmake-pkgsrc-build/WTF/Headers/wtf/Variant.h:1593:78:
error: static assertion failed: `visit` requires the visitor to be exhaustive.
1593 | static_assert(visitor<Visitor>::template
does_not_handle<Values...>(),
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
...
/tmp/wip/webkit-gtk/work/webkitgtk-2.50.4/cmake-pkgsrc-build/WTF/Headers/wtf/Variant.h:1598:45:
error: no matching function for call to
'invoke(WTF::Visitor<JSC::JITInlineCacheGenerator::JITInlineCacheGenerator(JSC::CodeBlock*,
JSC::CompileTimeStructureStubInfo, JSC::JITType, JSC::CodeOrigin,
JSC::AccessType)::<lambda(JSC::StructureStubInfo*)>,
JSC::JITInlineCacheGenerator::JITInlineCacheGenerator(JSC::CodeBlock*,
JSC::CompileTimeStructureStubInfo, JSC::JITType, JSC::CodeOrigin,
JSC::AccessType)::<lambda(JSC::BaselineUnlinkedStructureStubInfo*)> >,
JSC::DFG::UnlinkedStructureStubInfo*&)'
1598 |
DECLTYPE_AUTO_RETURN(lib::invoke(lib::forward<Visitor>(visitor),
|
~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1599 |
lib::forward<Values>(values)...))
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
...
/tmp/wip/webkit-gtk/work/webkitgtk-2.50.4/cmake-pkgsrc-build/WTF/Headers/wtf/Variant.h:1248:48:
error: no matching function for call to
'invoke(mpark::detail::visitation::variant::value_visitor<WTF::Visitor<JSC::JITInlineCacheGenerator::JITInlineCacheGenerator(JSC::CodeBlock*,
JSC::CompileTimeStructureStubInfo, JSC::JITType, JSC::CodeOrigin,
JSC::AccessType)::<lambda(JSC::StructureStubInfo*)>,
JSC::JITInlineCacheGenerator::JITInlineCacheGenerator(JSC::CodeBlock*,
JSC::CompileTimeStructureStubInfo, JSC::JITType, JSC::CodeOrigin,
JSC::AccessType)::<lambda(JSC::BaselineUnlinkedStructureStubInfo*)> > >,
mpark::detail::alt<2, JSC::DFG::UnlinkedStructureStubInfo*>&)'
1248 | using Actual = decltype(lib::invoke(
| ~~~~~~~~~~~^
1249 | lib::forward<F>(f),
| ~~~~~~~~~~~~~~~~~~~
1250 | access::base::get_alt<ITs::value>(
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1251 | lib::forward<typename ITs::type>(visited_vs))...));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
...
/tmp/wip/webkit-gtk/work/webkitgtk-2.50.4/cmake-pkgsrc-build/WTF/Headers/wtf/Variant.h:705:36:
error: no matching function for call to
'invoke(mpark::detail::visitation::variant::value_visitor<WTF::Visitor<JSC::JITInlineCacheGenerator::JITInlineCacheGenerator(JSC::CodeBlock*,
JSC::CompileTimeStructureStubInfo, JSC::JITType, JSC::CodeOrigin,
JSC::AccessType)::<lambda(JSC::StructureStubInfo*)>,
JSC::JITInlineCacheGenerator::JITInlineCacheGenerator(JSC::CodeBlock*,
JSC::CompileTimeStructureStubInfo, JSC::JITType, JSC::CodeOrigin,
JSC::AccessType)::<lambda(JSC::BaselineUnlinkedStructureStubInfo*)> > >,
mpark::detail::alt<2, JSC::DFG::UnlinkedStructureStubInfo*>&)'
705 | MPARK_RETURN(detail::invoke(lib::forward<F>(f),
| ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
706 | lib::forward<Args>(args)...))
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
...
/tmp/wip/webkit-gtk/work/webkitgtk-2.50.4/Source/JavaScriptCore/jit/JITInlineCacheGenerator.h:219:22:
error: invalid use of incomplete type 'struct
JSC::DFG::UnlinkedStructureStubInfo'
219 | stubInfo.m_extraGPR = thisRegs.payloadGPR();
| ~~~~~~~~~^~~~~~~~~~
...
/tmp/wip/webkit-gtk/work/webkitgtk-2.50.4/Source/JavaScriptCore/jit/JITInlineCacheGenerator.h:246:22:
error: invalid use of incomplete type 'struct
JSC::DFG::UnlinkedStructureStubInfo'
246 | stubInfo.usedRegisters.remove(scratchGPR);
| ~~~~~~~~~^~~~~~~~~~~~~
...
/tmp/wip/webkit-gtk/work/webkitgtk-2.50.4/Source/JavaScriptCore/jit/JITInlineCacheGenerator.h:335:22:
error: invalid use of incomplete type 'struct
JSC::DFG::UnlinkedStructureStubInfo'
335 | stubInfo.m_baseGPR = baseRegs.payloadGPR();
| ~~~~~~~~~^~~~~~~~~
/tmp/wip/webkit-gtk/work/webkitgtk-2.50.4/Source/JavaScriptCore/jit/JITInlineCacheGenerator.h:42:8:
note: forward declaration of 'struct JSC::DFG::UnlinkedStructureStubInfo'
42 | struct UnlinkedStructureStubInfo;
| ^~~~~~~~~~~~~~~~~~~~~~~~~
/tmp/wip/webkit-gtk/work/webkitgtk-2.50.4/Source/JavaScriptCore/jit/JITInlineCacheGenerator.h:336:22:
error: invalid use of incomplete type 'struct
JSC::DFG::UnlinkedStructureStubInfo'
336 | stubInfo.m_extraGPR = propertyRegs.payloadGPR();
| ~~~~~~~~~^~~~~~~~~~
/tmp/wip/webkit-gtk/work/webkitgtk-2.50.4/Source/JavaScriptCore/jit/JITInlineCacheGenerator.h:42:8:
note: forward declaration of 'struct JSC::DFG::UnlinkedStructureStubInfo'
42 | struct UnlinkedStructureStubInfo;
| ^~~~~~~~~~~~~~~~~~~~~~~~~
/tmp/wip/webkit-gtk/work/webkitgtk-2.50.4/Source/JavaScriptCore/jit/JITInlineCacheGenerator.h:337:22:
error: invalid use of incomplete type 'struct
JSC::DFG::UnlinkedStructureStubInfo'
337 | stubInfo.m_valueGPR = resultRegs.payloadGPR();
| ~~~~~~~~~^~~~~~~~~~
/tmp/wip/webkit-gtk/work/webkitgtk-2.50.4/Source/JavaScriptCore/jit/JITInlineCacheGenerator.h:42:8:
note: forward declaration of 'struct JSC::DFG::UnlinkedStructureStubInfo'
42 | struct UnlinkedStructureStubInfo;
| ^~~~~~~~~~~~~~~~~~~~~~~~~
/tmp/wip/webkit-gtk/work/webkitgtk-2.50.4/Source/JavaScriptCore/jit/JITInlineCacheGenerator.h:338:22:
error: invalid use of incomplete type 'struct
JSC::DFG::UnlinkedStructureStubInfo'
338 | stubInfo.m_stubInfoGPR = stubInfoGPR;
| ~~~~~~~~~^~~~~~~~~~~~~
/tmp/wip/webkit-gtk/work/webkitgtk-2.50.4/Source/JavaScriptCore/jit/JITInlineCacheGenerator.h:42:8:
note: forward declaration of 'struct JSC::DFG::UnlinkedStructureStubInfo'
42 | struct UnlinkedStructureStubInfo;
| ^~~~~~~~~~~~~~~~~~~~~~~~~
That's with gcc 14.3.0 on NetBSD-11.99.5/x86_64 in case it matters.
Looks like these options have bit-rotted a bit?
Thomas