Modified: trunk/Source/_javascript_Core/ChangeLog (103141 => 103142)
--- trunk/Source/_javascript_Core/ChangeLog 2011-12-17 04:44:04 UTC (rev 103141)
+++ trunk/Source/_javascript_Core/ChangeLog 2011-12-17 04:50:01 UTC (rev 103142)
@@ -1,14 +1,3 @@
-2011-12-16 Rafael Brandao <rafael.l...@openbossa.org>
-
- Remove unused variable after r74747 (buildfix)
- https://bugs.webkit.org/show_bug.cgi?id=74767
-
- Reviewed by Darin Adler.
-
- * dfg/DFGSpeculativeJIT.cpp:
- (JSC::DFG::SpeculativeJIT::compilePutByValForByteArray):
- (JSC::DFG::SpeculativeJIT::compilePutByValForIntTypedArray):
-
2011-12-16 Gavin Barraclough <barraclo...@apple.com>
Reverted r103120, this breaks v8 on ARMv7 DFG.
Modified: trunk/Source/_javascript_Core/dfg/DFGSpeculativeJIT.cpp (103141 => 103142)
--- trunk/Source/_javascript_Core/dfg/DFGSpeculativeJIT.cpp 2011-12-17 04:44:04 UTC (rev 103141)
+++ trunk/Source/_javascript_Core/dfg/DFGSpeculativeJIT.cpp 2011-12-17 04:50:01 UTC (rev 103142)
@@ -1553,6 +1553,7 @@
if (!isByteArrayPrediction(m_state.forNode(baseIndex).m_type))
speculationCheck(BadType, JSValueSource::unboxedCell(base), baseIndex, m_jit.branchPtr(MacroAssembler::NotEqual, MacroAssembler::Address(base, JSCell::classInfoOffset()), MacroAssembler::TrustedImmPtr(&JSByteArray::s_info)));
GPRTemporary value;
+ GPRReg valueGPR;
if (at(valueIndex).isConstant()) {
JSValue jsValue = valueOfJSConstant(valueIndex);
@@ -1571,6 +1572,7 @@
GPRReg scratchReg = scratch.gpr();
m_jit.move(Imm32((int)d), scratchReg);
value.adopt(scratch);
+ valueGPR = scratchReg;
} else if (!at(valueIndex).shouldNotSpeculateInteger()) {
SpeculateIntegerOperand valueOp(this, valueIndex);
GPRTemporary scratch(this);
@@ -1585,6 +1587,7 @@
clamped.link(&m_jit);
inBounds.link(&m_jit);
value.adopt(scratch);
+ valueGPR = scratchReg;
} else {
SpeculateDoubleOperand valueOp(this, valueIndex);
GPRTemporary result(this);
@@ -1593,6 +1596,7 @@
GPRReg gpr = result.gpr();
compileClampDoubleToByte(m_jit, gpr, fpr, floatScratch.fpr());
value.adopt(result);
+ valueGPR = gpr;
}
ASSERT_UNUSED(valueGPR, valueGPR != property);
ASSERT(valueGPR != base);
@@ -1706,6 +1710,7 @@
if (speculationRequirements != NoTypedArrayTypeSpecCheck)
speculationCheck(BadType, JSValueSource::unboxedCell(base), baseIndex, m_jit.branchPtr(MacroAssembler::NotEqual, MacroAssembler::Address(base, JSCell::classInfoOffset()), MacroAssembler::TrustedImmPtr(descriptor.m_classInfo)));
GPRTemporary value;
+ GPRReg valueGPR;
if (at(valueIndex).isConstant()) {
JSValue jsValue = valueOfJSConstant(valueIndex);
@@ -1719,12 +1724,14 @@
GPRReg scratchReg = scratch.gpr();
m_jit.move(Imm32((int)d), scratchReg);
value.adopt(scratch);
+ valueGPR = scratchReg;
} else if (!at(valueIndex).shouldNotSpeculateInteger()) {
SpeculateIntegerOperand valueOp(this, valueIndex);
GPRTemporary scratch(this);
GPRReg scratchReg = scratch.gpr();
m_jit.move(valueOp.gpr(), scratchReg);
value.adopt(scratch);
+ valueGPR = scratchReg;
} else {
SpeculateDoubleOperand valueOp(this, valueIndex);
GPRTemporary result(this);
@@ -1741,6 +1748,7 @@
m_jit.truncateDoubleToUint32(fpr, gpr);
fixed.link(&m_jit);
value.adopt(result);
+ valueGPR = gpr;
}
ASSERT_UNUSED(valueGPR, valueGPR != property);
ASSERT(valueGPR != base);