Changeset 197685 in webkit
- Timestamp:
- Mar 7, 2016, 10:23:46 AM (11 years ago)
- Location:
- trunk/Source/JavaScriptCore
- Files:
-
- 3 edited
-
ChangeLog (modified) (1 diff)
-
jit/JITArithmetic.cpp (modified) (1 diff)
-
jit/JITMulGenerator.cpp (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/JavaScriptCore/ChangeLog
r197684 r197685 1 2016-03-07 Benjamin Poulain <benjamin@webkit.org> 2 3 [JSC] Remove a useless "Move" from baseline-JIT op_mul's fast path 4 https://bugs.webkit.org/show_bug.cgi?id=155071 5 6 Reviewed by Geoffrey Garen. 7 8 We do not need to multiply to a scratch and then move the result 9 to the destination. We can just multiply to the destination. 10 11 * jit/JITArithmetic.cpp: 12 (JSC::JIT::emit_op_mul): 13 * jit/JITMulGenerator.cpp: 14 (JSC::JITMulGenerator::generateFastPath): 15 1 16 2016-03-07 Yusuke Suzuki <utatane.tea@gmail.com> 2 17 -
trunk/Source/JavaScriptCore/jit/JITArithmetic.cpp
r196273 r197685 823 823 JSValueRegs leftRegs = JSValueRegs(regT0); 824 824 JSValueRegs rightRegs = JSValueRegs(regT1); 825 JSValueRegs resultRegs = leftRegs;826 GPRReg scratchGPR = regT 2;825 JSValueRegs resultRegs = JSValueRegs(regT2); 826 GPRReg scratchGPR = regT3; 827 827 FPRReg scratchFPR = InvalidFPRReg; 828 828 #else -
trunk/Source/JavaScriptCore/jit/JITMulGenerator.cpp
r194669 r197685 61 61 CCallHelpers::Jump notInt32 = jit.branchIfNotInt32(var); 62 62 63 m_slowPathJumpList.append(jit.branchMul32(CCallHelpers::Overflow, var.payloadGPR(), CCallHelpers::Imm32(constOpr.asConstInt32()), m_scratchGPR)); 63 GPRReg multiplyResultGPR = m_result.payloadGPR(); 64 if (multiplyResultGPR == var.payloadGPR()) 65 multiplyResultGPR = m_scratchGPR; 64 66 65 jit.boxInt32(m_scratchGPR, m_result); 67 m_slowPathJumpList.append(jit.branchMul32(CCallHelpers::Overflow, var.payloadGPR(), CCallHelpers::Imm32(constOpr.asConstInt32()), multiplyResultGPR)); 68 69 jit.boxInt32(multiplyResultGPR, m_result); 66 70 m_endJumpList.append(jit.jump()); 67 71
Note:
See TracChangeset
for help on using the changeset viewer.