[webkit-changes] [WebKit/WebKit] e29643: [JSC] ArrayProfile should keep DFG OSR exit data
Yusuke Suzuki
noreply at github.com
Tue Sep 24 13:37:10 PDT 2024
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: e296432e532bfe96c3905930ded1f48395b6adee
https://github.com/WebKit/WebKit/commit/e296432e532bfe96c3905930ded1f48395b6adee
Author: Yusuke Suzuki <ysuzuki at apple.com>
Date: 2024-09-24 (Tue, 24 Sep 2024)
Changed paths:
M Source/JavaScriptCore/assembler/MacroAssemblerARM64.h
M Source/JavaScriptCore/assembler/MacroAssemblerARMv7.h
M Source/JavaScriptCore/bytecode/ArrayProfile.cpp
M Source/JavaScriptCore/bytecode/ArrayProfile.h
M Source/JavaScriptCore/dfg/DFGOSRExit.cpp
M Source/JavaScriptCore/ftl/FTLOSRExitCompiler.cpp
Log Message:
-----------
[JSC] ArrayProfile should keep DFG OSR exit data
https://bugs.webkit.org/show_bug.cgi?id=280248
rdar://136554895
Reviewed by Mark Lam and Michael Saboff.
As the same to ValueProfile, we should keep OSR exit feedback information
separate in ArrayProfile too so that we will always propagate OSR exit
reason feedback to the ArrayProfile. Otherwise, lastSeenStructureID can
be overridden in the normal execution and DFG / FTL will not see the
updated ArrayProfile data.
* Source/JavaScriptCore/assembler/MacroAssemblerARM64.h:
(JSC::MacroAssemblerARM64::or32):
* Source/JavaScriptCore/assembler/MacroAssemblerARMv7.h:
(JSC::MacroAssemblerARMv7::or32):
* Source/JavaScriptCore/bytecode/ArrayProfile.cpp:
(JSC::ArrayProfile::computeUpdatedPrediction):
* Source/JavaScriptCore/bytecode/ArrayProfile.h:
(JSC::ArrayProfile::clear):
(JSC::ArrayProfile::addressOfSpeculationFailureStructureID):
(JSC::ArrayProfile::offsetOfSpeculationFailureStructureID):
(JSC::ArrayProfile::offsetOfArrayProfileFlags):
(JSC::ArrayProfile::offsetOfArrayModes):
(JSC::ArrayProfile::addressOfLastSeenStructureID): Deleted.
* Source/JavaScriptCore/dfg/DFGOSRExit.cpp:
(JSC::DFG::OSRExit::compileExit):
* Source/JavaScriptCore/ftl/FTLOSRExitCompiler.cpp:
(JSC::FTL::compileStub):
Canonical link: https://commits.webkit.org/284178@main
To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications
More information about the webkit-changes
mailing list