Bug 901518 - Don't try to use a double register as a memory location. r=shu, a=akeybl
--- a/js/src/jit/arm/MacroAssembler-arm.h
+++ b/js/src/jit/arm/MacroAssembler-arm.h
@@ -1194,17 +1194,17 @@ class MacroAssemblerARMCompat : public M
}
void storeDouble(FloatRegister src, BaseIndex addr) {
// Harder cases not handled yet.
JS_ASSERT(addr.offset == 0);
uint32_t scale = Imm32::ShiftOf(addr.scale).value;
ma_vstr(src, addr.base, addr.index, scale);
}
void moveDouble(FloatRegister src, FloatRegister dest) {
- ma_vstr(src, Operand(dest));
+ ma_vmov(src, dest);
}
void storeFloat(FloatRegister src, Address addr) {
ma_vstr(VFPRegister(src).singleOverlay(), Operand(addr));
}
void storeFloat(FloatRegister src, BaseIndex addr) {
// Harder cases not handled yet.
JS_ASSERT(addr.offset == 0);