Fix MIPS invoke stub.
Floating point result pointer could be unaligned, causing a segfault
if stored as a double.
Change-Id: I6ed2e2e9ca339d948f81fac82c7fe63c86d5d8b9
diff --git a/src/oat/runtime/mips/runtime_support_mips.S b/src/oat/runtime/mips/runtime_support_mips.S
index cc41d14..480e5c8 100644
--- a/src/oat/runtime/mips/runtime_support_mips.S
+++ b/src/oat/runtime/mips/runtime_support_mips.S
@@ -479,8 +479,9 @@
sw $v0, 0($t0) # store the result
sw $v1, 4($t0) # store the other half of the result
lw $t0, 20($sp) # get floating point result pointer
+ s.s $f0, 0($t0) # store floating point result
jr $ra
- s.d $f0, 0($t0) # store floating point result
+ s.s $f1, 4($t0) # store other half of floating point result
END art_quick_invoke_stub
/*