Diff
Modified: trunk/Source/_javascript_Core/ChangeLog (192534 => 192535)
--- trunk/Source/_javascript_Core/ChangeLog 2015-11-17 22:05:15 UTC (rev 192534)
+++ trunk/Source/_javascript_Core/ChangeLog 2015-11-17 22:09:07 UTC (rev 192535)
@@ -1,5 +1,35 @@
2015-11-17 Mark Lam <mark....@apple.com>
+ Refactoring: move branchMul32's imm arg to the 3rd argument to be consistent.
+ https://bugs.webkit.org/show_bug.cgi?id=151358
+
+ Reviewed by Saam Barati.
+
+ branch32, branchAdd32, and branchSub32 all have it as the 3rd argument.
+ branchMul32 is the odd man out. This patch makes branchMul32 consistent with
+ the others.
+
+ * assembler/MacroAssembler.h:
+ (JSC::MacroAssembler::branchAdd32):
+ (JSC::MacroAssembler::branchMul32):
+ * assembler/MacroAssemblerARM.h:
+ (JSC::MacroAssemblerARM::branchMul32):
+ * assembler/MacroAssemblerARM64.h:
+ (JSC::MacroAssemblerARM64::branchMul32):
+ * assembler/MacroAssemblerARMv7.h:
+ (JSC::MacroAssemblerARMv7::branchMul32):
+ * assembler/MacroAssemblerMIPS.h:
+ (JSC::MacroAssemblerMIPS::branchMul32):
+ * assembler/MacroAssemblerSH4.h:
+ (JSC::MacroAssemblerSH4::branchNeg32):
+ (JSC::MacroAssemblerSH4::branchMul32):
+ * assembler/MacroAssemblerX86Common.h:
+ (JSC::MacroAssemblerX86Common::branchMul32):
+ * jit/JITArithmetic.cpp:
+ (JSC::JIT::emit_op_mul):
+
+2015-11-17 Mark Lam <mark....@apple.com>
+
Use the JITAddGenerator snippet in the DFG.
https://bugs.webkit.org/show_bug.cgi?id=151266
Modified: trunk/Source/_javascript_Core/assembler/MacroAssembler.h (192534 => 192535)
--- trunk/Source/_javascript_Core/assembler/MacroAssembler.h 2015-11-17 22:05:15 UTC (rev 192534)
+++ trunk/Source/_javascript_Core/assembler/MacroAssembler.h 2015-11-17 22:09:07 UTC (rev 192535)
@@ -1605,7 +1605,7 @@
return branchAdd32(cond, src, imm.asTrustedImm32(), dest);
}
- Jump branchMul32(ResultCondition cond, Imm32 imm, RegisterID src, RegisterID dest)
+ Jump branchMul32(ResultCondition cond, RegisterID src, Imm32 imm, RegisterID dest)
{
if (src == dest)
ASSERT(haveScratchRegisterForBlinding());
@@ -1618,7 +1618,7 @@
loadXorBlindedConstant(xorBlindConstant(imm), dest);
return branchMul32(cond, src, dest);
}
- return branchMul32(cond, imm.asTrustedImm32(), src, dest);
+ return branchMul32(cond, src, imm.asTrustedImm32(), dest);
}
// branchSub32 takes a scratch register as 32 bit platforms make use of this,
Modified: trunk/Source/_javascript_Core/assembler/MacroAssemblerARM.h (192534 => 192535)
--- trunk/Source/_javascript_Core/assembler/MacroAssemblerARM.h 2015-11-17 22:05:15 UTC (rev 192534)
+++ trunk/Source/_javascript_Core/assembler/MacroAssemblerARM.h 2015-11-17 22:09:07 UTC (rev 192535)
@@ -825,7 +825,7 @@
return branchMul32(cond, src, dest, dest);
}
- Jump branchMul32(ResultCondition cond, TrustedImm32 imm, RegisterID src, RegisterID dest)
+ Jump branchMul32(ResultCondition cond, RegisterID src, TrustedImm32 imm, RegisterID dest)
{
ASSERT((cond == Overflow) || (cond == Signed) || (cond == Zero) || (cond == NonZero));
if (cond == Overflow) {
Modified: trunk/Source/_javascript_Core/assembler/MacroAssemblerARM64.h (192534 => 192535)
--- trunk/Source/_javascript_Core/assembler/MacroAssemblerARM64.h 2015-11-17 22:05:15 UTC (rev 192534)
+++ trunk/Source/_javascript_Core/assembler/MacroAssemblerARM64.h 2015-11-17 22:09:07 UTC (rev 192535)
@@ -2075,7 +2075,7 @@
return branchMul32(cond, dest, src, dest);
}
- Jump branchMul32(ResultCondition cond, TrustedImm32 imm, RegisterID src, RegisterID dest)
+ Jump branchMul32(ResultCondition cond, RegisterID src, TrustedImm32 imm, RegisterID dest)
{
move(imm, getCachedDataTempRegisterIDAndInvalidate());
return branchMul32(cond, dataTempRegister, src, dest);
Modified: trunk/Source/_javascript_Core/assembler/MacroAssemblerARMv7.h (192534 => 192535)
--- trunk/Source/_javascript_Core/assembler/MacroAssemblerARMv7.h 2015-11-17 22:05:15 UTC (rev 192534)
+++ trunk/Source/_javascript_Core/assembler/MacroAssemblerARMv7.h 2015-11-17 22:09:07 UTC (rev 192535)
@@ -1615,7 +1615,7 @@
return branchMul32(cond, src, dest, dest);
}
- Jump branchMul32(ResultCondition cond, TrustedImm32 imm, RegisterID src, RegisterID dest)
+ Jump branchMul32(ResultCondition cond, RegisterID src, TrustedImm32 imm, RegisterID dest)
{
move(imm, dataTempRegister);
return branchMul32(cond, dataTempRegister, src, dest);
Modified: trunk/Source/_javascript_Core/assembler/MacroAssemblerMIPS.h (192534 => 192535)
--- trunk/Source/_javascript_Core/assembler/MacroAssemblerMIPS.h 2015-11-17 22:05:15 UTC (rev 192534)
+++ trunk/Source/_javascript_Core/assembler/MacroAssemblerMIPS.h 2015-11-17 22:09:07 UTC (rev 192535)
@@ -1819,7 +1819,7 @@
return Jump();
}
- Jump branchMul32(ResultCondition cond, TrustedImm32 imm, RegisterID src, RegisterID dest)
+ Jump branchMul32(ResultCondition cond, RegisterID src, TrustedImm32 imm, RegisterID dest)
{
move(imm, immTempRegister);
return branchMul32(cond, immTempRegister, src, dest);
Modified: trunk/Source/_javascript_Core/assembler/MacroAssemblerSH4.h (192534 => 192535)
--- trunk/Source/_javascript_Core/assembler/MacroAssemblerSH4.h 2015-11-17 22:05:15 UTC (rev 192534)
+++ trunk/Source/_javascript_Core/assembler/MacroAssemblerSH4.h 2015-11-17 22:09:07 UTC (rev 192535)
@@ -2040,7 +2040,7 @@
ASSERT((cond == Overflow) || (cond == Signed) || (cond == Zero) || (cond == NonZero));
if (cond == Overflow)
- return branchMul32(cond, TrustedImm32(-1), srcDest, srcDest);
+ return branchMul32(cond, srcDest, TrustedImm32(-1), srcDest);
neg32(srcDest);
@@ -2244,7 +2244,7 @@
return (cond == NonZero) ? branchFalse() : branchTrue();
}
- Jump branchMul32(ResultCondition cond, TrustedImm32 imm, RegisterID src, RegisterID dest)
+ Jump branchMul32(ResultCondition cond, RegisterID src, TrustedImm32 imm, RegisterID dest)
{
ASSERT((cond == Overflow) || (cond == Signed) || (cond == Zero) || (cond == NonZero));
Modified: trunk/Source/_javascript_Core/assembler/MacroAssemblerX86Common.h (192534 => 192535)
--- trunk/Source/_javascript_Core/assembler/MacroAssemblerX86Common.h 2015-11-17 22:05:15 UTC (rev 192534)
+++ trunk/Source/_javascript_Core/assembler/MacroAssemblerX86Common.h 2015-11-17 22:09:07 UTC (rev 192535)
@@ -1458,7 +1458,7 @@
return Jump(m_assembler.jCC(x86Condition(cond)));
}
- Jump branchMul32(ResultCondition cond, TrustedImm32 imm, RegisterID src, RegisterID dest)
+ Jump branchMul32(ResultCondition cond, RegisterID src, TrustedImm32 imm, RegisterID dest)
{
mul32(imm, src, dest);
if (cond != Overflow)
Modified: trunk/Source/_javascript_Core/jit/JITArithmetic.cpp (192534 => 192535)
--- trunk/Source/_javascript_Core/jit/JITArithmetic.cpp 2015-11-17 22:05:15 UTC (rev 192534)
+++ trunk/Source/_javascript_Core/jit/JITArithmetic.cpp 2015-11-17 22:09:07 UTC (rev 192535)
@@ -785,12 +785,12 @@
if (isOperandConstantInt(op1) && ((value = getOperandConstantInt(op1)) > 0)) {
emitGetVirtualRegister(op2, regT0);
emitJumpSlowCaseIfNotInt(regT0);
- addSlowCase(branchMul32(Overflow, Imm32(value), regT0, regT1));
+ addSlowCase(branchMul32(Overflow, regT0, Imm32(value), regT1));
emitTagInt(regT1, regT0);
} else if (isOperandConstantInt(op2) && ((value = getOperandConstantInt(op2)) > 0)) {
emitGetVirtualRegister(op1, regT0);
emitJumpSlowCaseIfNotInt(regT0);
- addSlowCase(branchMul32(Overflow, Imm32(value), regT0, regT1));
+ addSlowCase(branchMul32(Overflow, regT0, Imm32(value), regT1));
emitTagInt(regT1, regT0);
} else
compileBinaryArithOp(op_mul, result, op1, op2, types);