Changeset 251669 in webkit
- Timestamp:
- Oct 28, 2019 1:44:03 PM (5 years ago)
- Location:
- trunk/Source/JavaScriptCore
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/JavaScriptCore/ChangeLog
r251667 r251669 1 2019-10-28 Yusuke Suzuki <ysuzuki@apple.com> 2 3 [JSC] Use FTLOutput::callWithoutSideEffects if operation does not have side effects 4 https://bugs.webkit.org/show_bug.cgi?id=203485 5 6 Reviewed by Mark Lam. 7 8 This makes Call's Effect none, and encourages optimizations around it. 9 10 * ftl/FTLLowerDFGToB3.cpp: 11 (JSC::FTL::DFG::LowerDFGToB3::doubleToInt32): 12 (JSC::FTL::DFG::LowerDFGToB3::sensibleDoubleToInt32): 13 (JSC::FTL::DFG::LowerDFGToB3::jsValueToStrictInt52): 14 1 15 2019-10-28 Tuomas Karkkainen <tuomas.webkit@apple.com> 2 16 -
trunk/Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp
r251584 r251669 15296 15296 15297 15297 m_out.appendTo(slowPath, continuation); 15298 results.append(m_out.anchor(m_out.call (Int32, m_out.operation(operationToInt32), doubleValue)));15298 results.append(m_out.anchor(m_out.callWithoutSideEffects(Int32, operationToInt32, doubleValue))); 15299 15299 m_out.jump(continuation); 15300 15300 … … 15336 15336 15337 15337 LBasicBlock lastNext = m_out.appendTo(slowPath, continuation); 15338 ValueFromBlock slowResult = m_out.anchor( 15339 m_out.call(Int32, m_out.operation(operationToInt32SensibleSlow), doubleValue)); 15338 ValueFromBlock slowResult = m_out.anchor(m_out.callWithoutSideEffects(Int32, operationToInt32SensibleSlow, doubleValue)); 15340 15339 m_out.jump(continuation); 15341 15340 … … 16030 16029 m_out.appendTo(doubleCase, continuation); 16031 16030 16032 LValue possibleResult = m_out.call( 16033 Int64, m_out.operation(operationConvertBoxedDoubleToInt52), boxedValue); 16031 LValue possibleResult = m_out.callWithoutSideEffects(Int64, operationConvertBoxedDoubleToInt52, boxedValue); 16034 16032 FTL_TYPE_CHECK( 16035 16033 jsValueValue(boxedValue), edge, SpecInt32Only | SpecAnyIntAsDouble,
Note: See TracChangeset
for help on using the changeset viewer.