Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 82de5bb8778460c45a1eda6245f1de2b93f46952
https://github.com/WebKit/WebKit/commit/82de5bb8778460c45a1eda6245f1de2b93f46952
Author: Yusuke Suzuki <[email protected]>
Date: 2025-06-26 (Thu, 26 Jun 2025)
Changed paths:
M Source/JavaScriptCore/bytecode/CodeBlock.cpp
M Source/JavaScriptCore/bytecode/CodeBlockHash.cpp
M Source/JavaScriptCore/bytecode/CodeBlockHash.h
M Source/JavaScriptCore/parser/SourceProvider.cpp
M Source/JavaScriptCore/parser/SourceProvider.h
M Source/WebCore/bindings/js/CachedScriptSourceProvider.h
M Source/WebCore/bindings/js/ScriptBufferSourceProvider.h
M Source/WebCore/loader/TextResourceDecoder.cpp
M Source/WebCore/loader/TextResourceDecoder.h
M Source/WebCore/loader/cache/CachedScript.cpp
M Source/WebCore/loader/cache/CachedScript.h
Log Message:
-----------
[JSC] Concurrently computing CodeBlockHash
https://bugs.webkit.org/show_bug.cgi?id=295000
rdar://154307835
Reviewed by Yijia Huang.
This patch fixes an issue for concurrent CodeBlockHash. We put some
locks around CachedScriptSourceProvider / ScriptBufferSourceProvider
to ensure that we can touch these source code safely (do not ref them.
This is concurrently touched).
* Source/JavaScriptCore/bytecode/CodeBlock.cpp:
(JSC::CodeBlock::hash const):
* Source/JavaScriptCore/bytecode/CodeBlockHash.cpp:
(JSC::CodeBlockHash::CodeBlockHash):
* Source/JavaScriptCore/bytecode/CodeBlockHash.h:
* Source/JavaScriptCore/parser/SourceProvider.cpp:
(JSC::SourceProvider::codeBlockHashConcurrently):
* Source/JavaScriptCore/parser/SourceProvider.h:
(JSC::SourceProviderBufferGuard::provider):
* Source/WebCore/bindings/js/CachedScriptSourceProvider.h:
* Source/WebCore/bindings/js/ScriptBufferSourceProvider.h:
* Source/WebCore/loader/TextResourceDecoder.cpp:
(WebCore::TextResourceDecoder::TextResourceDecoder):
(WebCore::TextResourceDecoder::create):
* Source/WebCore/loader/TextResourceDecoder.h:
(WebCore::TextResourceDecoder::contentType const):
(WebCore::TextResourceDecoder::usesEncodingDetector const):
* Source/WebCore/loader/cache/CachedScript.cpp:
(WebCore::CachedScript::script):
(WebCore::CachedScript::codeBlockHashConcurrently):
(WebCore::CachedScript::destroyDecodedData):
(WebCore::CachedScript::setBodyDataFrom):
* Source/WebCore/loader/cache/CachedScript.h:
Canonical link: https://commits.webkit.org/296668@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes