- webkitgtk 2.41.90 - Ubuntu 23.10 - https://salsa.debian.org/webkit-team/webkit/-/blob/wk2/experimental/debian/rules - https://salsa.debian.org/webkit-team/webkit/-/blob/wk2/experimental/debian/control webkitgtk 2.41.90 fails to build on riscv64 but seems to build ok on our other architectures. Full build log --------------- https://launchpad.net/ubuntu/+source/webkit2gtk/2.41.90-1ubuntu1 Build log excerpt ------------------ In file included from JavaScriptCore/DerivedSources/unified-sources/UnifiedSource-15db4ad9-1.cpp:1: /<<PKGBUILDDIR>>/Source/JavaScriptCore/wasm/WasmB3IRGenerator.cpp: In member function ‘JSC::Wasm::B3IRGenerator::PartialResult JSC::Wasm::B3IRGenerator::addI32Popcnt(ExpressionType, JSC::B3::Variable*&)’: /<<PKGBUILDDIR>>/Source/JavaScriptCore/wasm/WasmB3IRGenerator.cpp:5214:25: error: ‘supportsCountPopulation’ is not a member of ‘JSC::MacroAssembler’ 5214 | if (MacroAssembler::supportsCountPopulation()) { | ^~~~~~~~~~~~~~~~~~~~~~~ /<<PKGBUILDDIR>>/Source/JavaScriptCore/wasm/WasmB3IRGenerator.cpp: In lambda function: /<<PKGBUILDDIR>>/Source/JavaScriptCore/wasm/WasmB3IRGenerator.cpp:5224:17: error: ‘class JSC::CCallHelpers’ has no member named ‘countPopulation32’ 5224 | jit.countPopulation32(params[1].gpr(), params[0].gpr(), params.fpScratch(0)); | ^~~~~~~~~~~~~~~~~ /<<PKGBUILDDIR>>/Source/JavaScriptCore/wasm/WasmB3IRGenerator.cpp: In member function ‘JSC::Wasm::B3IRGenerator::PartialResult JSC::Wasm::B3IRGenerator::addI64Popcnt(ExpressionType, JSC::B3::Variable*&)’: /<<PKGBUILDDIR>>/Source/JavaScriptCore/wasm/WasmB3IRGenerator.cpp:5241:25: error: ‘supportsCountPopulation’ is not a member of ‘JSC::MacroAssembler’ 5241 | if (MacroAssembler::supportsCountPopulation()) { | ^~~~~~~~~~~~~~~~~~~~~~~ /<<PKGBUILDDIR>>/Source/JavaScriptCore/wasm/WasmB3IRGenerator.cpp: In lambda function: /<<PKGBUILDDIR>>/Source/JavaScriptCore/wasm/WasmB3IRGenerator.cpp:5251:17: error: ‘class JSC::CCallHelpers’ has no member named ‘countPopulation64’ 5251 | jit.countPopulation64(params[1].gpr(), params[0].gpr(), params.fpScratch(0)); | ^~~~~~~~~~~~~~~~~
Debian is in the process of rebootstrapping their riscv64 architecture in preparation for it to become an official "release" architecture so the latest webkitgtk isn't yet buildable there. But it had the same error in 2.41.4, 2.41.5, and 2.41.6 https://buildd.debian.org/status/logs.php?pkg=webkit2gtk&arch=riscv64
So ENABLE_FTL_DEFAULT is on in riscv64, that enables WEBASSEMBLY_B3JIT, which is what results in WasmB3IRGenerator.cpp being built. However supportsCountPopulation() is not defined in Source/JavaScriptCore/assembler/MacroAssemblerRISCV64.h I don't know what's the best way to proceed here, but I suppose that disabling FTL in riscv64 would work around the problem.