Fixes to make jni_compiler_test work on MIPS.

Fixed the jni compiler in numerous ways:
- Added NOP for delay slot of branches/jumps
- Made calling convention match registers pushed by stubs
- Fixes to assembly and added noreorder directive

Change-Id: I32bc55985fbbc58b5b5358149766b8738b3ac955
diff --git a/src/runtime.cc b/src/runtime.cc
index 9983c7d..b4dfcfe 100644
--- a/src/runtime.cc
+++ b/src/runtime.cc
@@ -1009,27 +1009,13 @@
                           (1 << art::mips::S5) | (1 << art::mips::S6) | (1 << art::mips::S7) |
                           (1 << art::mips::FP);
     uint32_t arg_spills = (1 << art::mips::A1) | (1 << art::mips::A2) | (1 << art::mips::A3);
-    uint32_t all_spills = (1 << art::mips::S1) | (1 << art::mips::SP);
     uint32_t core_spills = ref_spills | (type == kRefsAndArgs ? arg_spills : 0) |
-                           (type == kSaveAll ? all_spills : 0) | (1 << art::mips::RA);
-    uint32_t fp_all_spills = (1 << art::mips::F0)  | (1 << art::mips::F1)  | (1 << art::mips::F2) |
-                             (1 << art::mips::F3)  | (1 << art::mips::F4)  | (1 << art::mips::F5) |
-                             (1 << art::mips::F6)  | (1 << art::mips::F7)  | (1 << art::mips::F8) |
-                             (1 << art::mips::F9)  | (1 << art::mips::F10) | (1 << art::mips::F11) |
-                             (1 << art::mips::F12) | (1 << art::mips::F13) | (1 << art::mips::F14) |
-                             (1 << art::mips::F15) | (1 << art::mips::F16) | (1 << art::mips::F17) |
-                             (1 << art::mips::F18) | (1 << art::mips::F19) | (1 << art::mips::F20) |
-                             (1 << art::mips::F21) | (1 << art::mips::F22) | (1 << art::mips::F23) |
-                             (1 << art::mips::F24) | (1 << art::mips::F25) | (1 << art::mips::F26) |
-                             (1 << art::mips::F27) | (1 << art::mips::F28) | (1 << art::mips::F29) |
-                             (1 << art::mips::F30) | (1 << art::mips::F31);
-    uint32_t fp_spills = type == kSaveAll ? fp_all_spills : 0;
+                           (1 << art::mips::RA);
     size_t frame_size = RoundUp((__builtin_popcount(core_spills) /* gprs */ +
-                                 __builtin_popcount(fp_spills) /* fprs */ +
                                  1 /* Method* */) * kPointerSize, kStackAlignment);
     method->SetFrameSizeInBytes(frame_size);
     method->SetCoreSpillMask(core_spills);
-    method->SetFpSpillMask(fp_spills);
+    method->SetFpSpillMask(0);
   } else if (instruction_set == kX86) {
     uint32_t ref_spills = (1 << art::x86::EBP) | (1 << art::x86::ESI) | (1 << art::x86::EDI);
     uint32_t arg_spills = (1 << art::x86::ECX) | (1 << art::x86::EDX) | (1 << art::x86::EBX);