Modified: trunk/Source/_javascript_Core/ChangeLog (159424 => 159425)
--- trunk/Source/_javascript_Core/ChangeLog 2013-11-18 16:54:03 UTC (rev 159424)
+++ trunk/Source/_javascript_Core/ChangeLog 2013-11-18 16:58:05 UTC (rev 159425)
@@ -1,3 +1,16 @@
+2013-11-18 Balazs Kilvady <[email protected]>
+
+ Add missing load8/branch8 with AbsoluteAddress parameter to MIPS port.
+
+ [MIPS] Build fails since r159395.
+ https://bugs.webkit.org/show_bug.cgi?id=124491
+
+ Reviewed by Michael Saboff.
+
+ * assembler/MacroAssemblerMIPS.h:
+ (JSC::MacroAssemblerMIPS::load8):
+ (JSC::MacroAssemblerMIPS::branch8):
+
2013-11-18 Csaba Osztrogonác <[email protected]>
REGRESSION(r159351): It made zillion tests assert on !CF platforms
Modified: trunk/Source/_javascript_Core/assembler/MacroAssemblerMIPS.h (159424 => 159425)
--- trunk/Source/_javascript_Core/assembler/MacroAssemblerMIPS.h 2013-11-18 16:54:03 UTC (rev 159424)
+++ trunk/Source/_javascript_Core/assembler/MacroAssemblerMIPS.h 2013-11-18 16:58:05 UTC (rev 159425)
@@ -692,6 +692,21 @@
}
}
+ ALWAYS_INLINE void load8(AbsoluteAddress address, RegisterID dest)
+ {
+ load8(address.m_ptr, dest);
+ }
+
+ void load8(const void* address, RegisterID dest)
+ {
+ /*
+ li addrTemp, address
+ lbu dest, 0(addrTemp)
+ */
+ move(TrustedImmPtr(address), addrTempRegister);
+ m_assembler.lbu(dest, addrTempRegister, 0);
+ }
+
void load8Signed(BaseIndex address, RegisterID dest)
{
if (address.offset >= -32768 && address.offset <= 32767
@@ -1293,6 +1308,15 @@
return branch32(cond, dataTempRegister, immTempRegister);
}
+ Jump branch8(RelationalCondition cond, AbsoluteAddress left, TrustedImm32 right)
+ {
+ // Make sure the immediate value is unsigned 8 bits.
+ ASSERT(!(right.m_value & 0xFFFFFF00));
+ load8(left, dataTempRegister);
+ move(right, immTempRegister);
+ return branch32(cond, dataTempRegister, immTempRegister);
+ }
+
void compare8(RelationalCondition cond, Address left, TrustedImm32 right, RegisterID dest)
{
// Make sure the immediate value is unsigned 8 bits.