Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 527e2a01d73c94cc018b1fa060fdffc15bab69d6 https://github.com/WebKit/WebKit/commit/527e2a01d73c94cc018b1fa060fdffc15bab69d6 Author: Yijia Huang <yijia_hu...@apple.com> Date: 2023-01-24 (Tue, 24 Jan 2023)
Changed paths: A JSTests/wasm/stress/referenced-function.js A JSTests/wasm/stress/resources/funcref-race.wasm M Source/JavaScriptCore/wasm/WasmBBQPlan.cpp M Source/JavaScriptCore/wasm/WasmLLIntPlan.cpp M Source/JavaScriptCore/wasm/WasmModuleInformation.h M Source/JavaScriptCore/wasm/WasmSectionParser.cpp M Source/WTF/WTF.xcodeproj/project.pbxproj M Source/WTF/wtf/BitVector.h M Source/WTF/wtf/CMakeLists.txt A Source/WTF/wtf/FixedBitVector.h M Tools/TestWebKitAPI/CMakeLists.txt M Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj A Tools/TestWebKitAPI/Tests/WTF/FixedBitVector.cpp Log Message: ----------- Fix race condition for wasm referenced functions https://bugs.webkit.org/show_bug.cgi?id=250847 rdar://104332636 Reviewed by Mark Lam. Fix race condition for updating referenced functions while compiling wasm functions concurrently. * JSTests/wasm/stress/referenced-function.js: Added. (async let): (j.catch): * JSTests/wasm/stress/resources/funcref-race.wasm: Added. * Source/JavaScriptCore/wasm/WasmBBQPlan.cpp: (JSC::Wasm::BBQPlan::compileFunction): * Source/JavaScriptCore/wasm/WasmLLIntPlan.cpp: (JSC::Wasm::LLIntPlan::didCompleteCompilation): * Source/JavaScriptCore/wasm/WasmModuleInformation.h: (JSC::Wasm::ModuleInformation::referencedFunctions const): (JSC::Wasm::ModuleInformation::hasReferencedFunction const): (JSC::Wasm::ModuleInformation::addReferencedFunction const): * Source/WTF/WTF.xcodeproj/project.pbxproj: * Source/WTF/wtf/CMakeLists.txt: * Source/WTF/wtf/FixedBitVector.h: Added. (WTF::FixedBitVector::concurrentAllocateOnce): (WTF::FixedBitVector::concurrentTest): (WTF::FixedBitVector::concurrentTestAndSet): (WTF::FixedBitVector::testAndSet): (WTF::FixedBitVector::test): (WTF::FixedBitVector::findBit const): (WTF::FixedBitVector::operator== const): (WTF::FixedBitVector::hash const): (WTF::FixedBitVector::get const): (WTF::FixedBitVector::dump const): (WTF::FixedBitVectorHash::hash): (WTF::FixedBitVectorHash::equal): * Tools/TestWebKitAPI/CMakeLists.txt: * Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: * Tools/TestWebKitAPI/Tests/WTF/FixedBitVector.cpp: Added. (TestWebKitAPI::testFixedBitVectorSize): (TestWebKitAPI::testFixedBitVectorTest): (TestWebKitAPI::testFixedBitVectorTestAndSet): (TestWebKitAPI::testFixedBitVectorConcurrentTest): (TestWebKitAPI::testFixedBitVectorConcurrentTestAndSet): (TestWebKitAPI::TEST): Canonical link: https://commits.webkit.org/259323@main _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes