Skip to content

Instantly share code, notes, and snippets.

Created September 24, 2014 08:22
Show Gist options
  • Save anonymous/a229748cb663aa259e93 to your computer and use it in GitHub Desktop.
Save anonymous/a229748cb663aa259e93 to your computer and use it in GitHub Desktop.
stdin
diff --git a/js/src/jit/Lowering.cpp b/js/src/jit/Lowering.cpp
--- a/js/src/jit/Lowering.cpp
+++ b/js/src/jit/Lowering.cpp
@@ -1796,17 +1796,21 @@ LIRGenerator::visitToDouble(MToDouble *c
}
case MIRType_Float32:
{
// Bug 1039993: this used to be useRegisterAtStart, and theoreticall, it
// should still be, however, there is a bug in LSRA's implementation of
// *AtStart, which is quite fundamental. This should be reverted when that
// is fixed, or lsra is deprecated.
+#if defined(JS_CODEGEN_ARM) || defined(JS_CODEGEN_MIPS)
LFloat32ToDouble *lir = new(alloc()) LFloat32ToDouble(useRegister(opd));
+#else
+ LFloat32ToDouble *lir = new(alloc()) LFloat32ToDouble(useRegisterAtStart(opd));
+#endif
return define(lir, convert);
}
case MIRType_Double:
return redefine(convert, opd);
default:
// Objects might be effectful. Symbols will throw.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment