Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: e3098206e15faab0ba2e81ceb226134f6371999a
https://github.com/WebKit/WebKit/commit/e3098206e15faab0ba2e81ceb226134f6371999a
Author: Yusuke Suzuki <[email protected]>
Date: 2024-08-19 (Mon, 19 Aug 2024)
Changed paths:
M Source/JavaScriptCore/bytecode/CheckPrivateBrandStatus.cpp
M Source/JavaScriptCore/bytecode/DeleteByStatus.cpp
M Source/JavaScriptCore/bytecode/GetByStatus.cpp
M Source/JavaScriptCore/bytecode/InByStatus.cpp
M Source/JavaScriptCore/bytecode/InlineCacheCompiler.cpp
M Source/JavaScriptCore/bytecode/InlineCacheCompiler.h
M Source/JavaScriptCore/bytecode/InstanceOfStatus.cpp
M Source/JavaScriptCore/bytecode/PutByStatus.cpp
M Source/JavaScriptCore/bytecode/SetPrivateBrandStatus.cpp
M Source/JavaScriptCore/bytecode/StructureStubInfo.cpp
M Source/JavaScriptCore/bytecode/StructureStubInfo.h
Log Message:
-----------
[JSC] Not using PolymorphicAccess in Handler IC
https://bugs.webkit.org/show_bug.cgi?id=278283
rdar://134159625
Reviewed by Yijia Huang.
Handler IC is already keeping AccessCase information in handlers. Thus
PolymorphicAccess is unnecessary abstraction.
This patch refactors the architecture so that we no longer have
PolymorphicAccess in Handler IC. Once FTL moves to Handler IC,
64bit IC will completely remove PolymorphicAccess, using chain of handlers.
* Source/JavaScriptCore/bytecode/CheckPrivateBrandStatus.cpp:
(JSC::CheckPrivateBrandStatus::computeForStubInfoWithoutExitSiteFeedback):
* Source/JavaScriptCore/bytecode/DeleteByStatus.cpp:
(JSC::DeleteByStatus::computeForStubInfoWithoutExitSiteFeedback):
* Source/JavaScriptCore/bytecode/GetByStatus.cpp:
(JSC::GetByStatus::computeForStubInfoWithoutExitSiteFeedback):
* Source/JavaScriptCore/bytecode/InByStatus.cpp:
(JSC::InByStatus::computeForStubInfoWithoutExitSiteFeedback):
* Source/JavaScriptCore/bytecode/InlineCacheCompiler.cpp:
(JSC::InlineCacheHandler::propagateTransitions const):
(JSC::InlineCacheHandler::visitAggregateImpl):
(JSC::InlineCacheCompiler::tryFoldToMegamorphic):
(JSC::InlineCacheCompiler::compileHandler):
(JSC::InlineCacheCompiler::compileOneAccessCaseHandler):
(JSC::InlineCacheHandler::visitWeak):
* Source/JavaScriptCore/bytecode/InlineCacheCompiler.h:
(JSC::PolymorphicAccess::at):
(JSC::PolymorphicAccess::operator[]):
* Source/JavaScriptCore/bytecode/InstanceOfStatus.cpp:
(JSC::InstanceOfStatus::computeForStubInfo):
* Source/JavaScriptCore/bytecode/PutByStatus.cpp:
(JSC::PutByStatus::computeForStubInfo):
* Source/JavaScriptCore/bytecode/SetPrivateBrandStatus.cpp:
(JSC::SetPrivateBrandStatus::computeForStubInfoWithoutExitSiteFeedback):
* Source/JavaScriptCore/bytecode/StructureStubInfo.cpp:
(JSC::StructureStubInfo::upgradeForPolyProtoIfNecessary):
(JSC::StructureStubInfo::addAccessCase):
(JSC::StructureStubInfo::reset):
(JSC::StructureStubInfo::visitAggregateImpl):
(JSC::StructureStubInfo::visitWeakReferences):
(JSC::StructureStubInfo::propagateTransitions):
(JSC::StructureStubInfo::summary const):
(JSC::StructureStubInfo::summary):
(JSC::StructureStubInfo::containsPC const):
(JSC::StructureStubInfo::listedAccessCases const):
* Source/JavaScriptCore/bytecode/StructureStubInfo.h:
Canonical link: https://commits.webkit.org/282431@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