[webkit-changes] [WebKit/WebKit] eef42e: [JSC] GetByOffset etc. should return DoubleResult ...
Yusuke Suzuki
noreply at github.com
Wed Sep 18 10:08:59 PDT 2024
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: eef42e8b581b2886013a135b634ee0344fb93b35
https://github.com/WebKit/WebKit/commit/eef42e8b581b2886013a135b634ee0344fb93b35
Author: Yusuke Suzuki <ysuzuki at apple.com>
Date: 2024-09-18 (Wed, 18 Sep 2024)
Changed paths:
M Source/JavaScriptCore/dfg/DFGAbstractInterpreterInlines.h
M Source/JavaScriptCore/dfg/DFGClobberize.h
M Source/JavaScriptCore/dfg/DFGMayExit.cpp
M Source/JavaScriptCore/dfg/DFGValueRepReductionPhase.cpp
M Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp
Log Message:
-----------
[JSC] GetByOffset etc. should return DoubleResult and wipe unnecessary fmov
https://bugs.webkit.org/show_bug.cgi?id=279857
rdar://136189239
Reviewed by Yijia Huang.
This patch adds GetByOffset, MultiGetByOffset, GetClosureVar, GetGlobalVariable
hanldings in DFGValueRepReductionPhase. When entire GetByOffset etc. use is limited
to DoubleRep, we should load it as double and do unboxing in FPRReg
instead of moving it from GPRReg so that we can remove unnecessary fmov
instructions.
* Source/JavaScriptCore/assembler/MacroAssemblerARM64.h:
* Source/JavaScriptCore/dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
* Source/JavaScriptCore/dfg/DFGClobberize.h:
(JSC::DFG::clobberize):
* Source/JavaScriptCore/dfg/DFGValueRepReductionPhase.cpp:
(JSC::DFG::ValueRepReductionPhase::convertValueRepsToDouble):
* Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::unboxRealNumberDouble):
(JSC::FTL::DFG::LowerDFGToB3::compileGetByOffset):
(JSC::FTL::DFG::LowerDFGToB3::compileMultiGetByOffset):
(JSC::FTL::DFG::LowerDFGToB3::compileGetGlobalVariable):
(JSC::FTL::DFG::LowerDFGToB3::compileGetClosureVar):
Canonical link: https://commits.webkit.org/283849@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