Enable all JNI internal compiler tests on the host.

(cherry picked from commit abda43c90f70963909128c1cc495190d60fd8372)

Change-Id: I0a7fc96e84dacf34108551271760aae13d5ee010
diff --git a/src/compiler/codegen/GenCommon.cc b/src/compiler/codegen/GenCommon.cc
index 72a596a..aee5b50 100644
--- a/src/compiler/codegen/GenCommon.cc
+++ b/src/compiler/codegen/GenCommon.cc
@@ -248,7 +248,7 @@
     loadConstant(cUnit, rARG0, type_idx);            // arg0 <- type_id
     loadValueDirectFixed(cUnit, rlSrc, rARG2);       // arg2 <- count
     callRuntimeHelper(cUnit, rTgt);
-    RegLocation rlResult = oatGetReturn(cUnit);
+    RegLocation rlResult = oatGetReturn(cUnit, false);
     storeValue(cUnit, rlDest, rlResult);
 }
 
@@ -567,10 +567,10 @@
         loadConstant(cUnit, rARG0, fieldIdx);
         callRuntimeHelper(cUnit, rTgt);
         if (isLongOrDouble) {
-            RegLocation rlResult = oatGetReturnWide(cUnit);
+            RegLocation rlResult = oatGetReturnWide(cUnit, rlDest.fp);
             storeValueWide(cUnit, rlDest, rlResult);
         } else {
-            RegLocation rlResult = oatGetReturn(cUnit);
+            RegLocation rlResult = oatGetReturn(cUnit, rlDest.fp);
             storeValue(cUnit, rlDest, rlResult);
         }
     }
@@ -761,10 +761,10 @@
         loadConstant(cUnit, rARG0, fieldIdx);
         callRuntimeHelper(cUnit, rTgt);
         if (isLongOrDouble) {
-            RegLocation rlResult = oatGetReturnWide(cUnit);
+            RegLocation rlResult = oatGetReturnWide(cUnit, rlDest.fp);
             storeValueWide(cUnit, rlDest, rlResult);
         } else {
-            RegLocation rlResult = oatGetReturn(cUnit);
+            RegLocation rlResult = oatGetReturn(cUnit, rlDest.fp);
             storeValue(cUnit, rlDest, rlResult);
         }
     }
@@ -851,7 +851,7 @@
         opRegCopy(cUnit, rARG1, rlMethod.lowReg);
         loadConstant(cUnit, rARG0, type_idx);
         callRuntimeHelper(cUnit, rTgt);
-        RegLocation rlResult = oatGetReturn(cUnit);
+        RegLocation rlResult = oatGetReturn(cUnit, false);
         storeValue(cUnit, rlDest, rlResult);
     } else {
         // We're don't need access checks, load type from dex cache
@@ -884,7 +884,7 @@
             opRegCopy(cUnit, rARG1, rlMethod.lowReg);
             loadConstant(cUnit, rARG0, type_idx);
             callRuntimeHelper(cUnit, rTgt);
-            RegLocation rlResult = oatGetReturn(cUnit);
+            RegLocation rlResult = oatGetReturn(cUnit, false);
             storeValue(cUnit, rlDest, rlResult);
             /*
              * Because we have stores of the target value on two paths,
@@ -938,7 +938,7 @@
         branch->target = target;
 #endif
         genBarrier(cUnit);
-        storeValue(cUnit, rlDest, oatGetReturn(cUnit));
+        storeValue(cUnit, rlDest, oatGetReturn(cUnit, false));
     } else {
         RegLocation rlMethod = loadCurrMethod(cUnit);
         int resReg = oatAllocTemp(cUnit);
@@ -971,7 +971,7 @@
     loadCurrMethodDirect(cUnit, rARG1);    // arg1 <= Method*
     loadConstant(cUnit, rARG0, type_idx);  // arg0 <- type_idx
     callRuntimeHelper(cUnit, rTgt);
-    RegLocation rlResult = oatGetReturn(cUnit);
+    RegLocation rlResult = oatGetReturn(cUnit, false);
     storeValue(cUnit, rlDest, rlResult);
 }
 
@@ -1050,7 +1050,7 @@
     oatClobberCalleeSave(cUnit);
     /* branch targets here */
     LIR* target = newLIR0(cUnit, kPseudoTargetLabel);
-    RegLocation rlResult = oatGetReturn(cUnit);
+    RegLocation rlResult = oatGetReturn(cUnit, false);
     storeValue(cUnit, rlDest, rlResult);
     branch1->target = target;
 #if !defined(TARGET_ARM)
@@ -1434,7 +1434,7 @@
     loadValueDirectWideFixed(cUnit, rlSrc1, rARG0, rARG1);
     loadValueDirect(cUnit, rlShift, rARG2);
     callRuntimeHelper(cUnit, rTgt);
-    RegLocation rlResult = oatGetReturnWide(cUnit);
+    RegLocation rlResult = oatGetReturnWide(cUnit, false);
     storeValueWide(cUnit, rlDest, rlResult);
     return false;
 }
@@ -1559,7 +1559,7 @@
         }
         callRuntimeHelper(cUnit, rTgt);
         if (retReg == rRET0)
-            rlResult = oatGetReturn(cUnit);
+            rlResult = oatGetReturn(cUnit, false);
         else
             rlResult = oatGetReturnAlt(cUnit);
         storeValue(cUnit, rlDest, rlResult);
@@ -1807,7 +1807,7 @@
             loadConstant(cUnit, rARG1, lit);
             callRuntimeHelper(cUnit, rTgt);
             if (isDiv)
-                rlResult = oatGetReturn(cUnit);
+                rlResult = oatGetReturn(cUnit, false);
             else
                 rlResult = oatGetReturnAlt(cUnit);
             storeValue(cUnit, rlDest, rlResult);
@@ -1957,7 +1957,7 @@
         callRuntimeHelper(cUnit, rTgt);
         // Adjust return regs in to handle case of rem returning rARG2/rARG3
         if (retReg == rRET0)
-            rlResult = oatGetReturnWide(cUnit);
+            rlResult = oatGetReturnWide(cUnit, false);
         else
             rlResult = oatGetReturnWideAlt(cUnit);
         storeValueWide(cUnit, rlDest, rlResult);
@@ -1987,12 +1987,12 @@
     if (tgtSize == 1) {
         RegLocation rlResult;
         rlDest = oatGetDest(cUnit, mir, 0);
-        rlResult = oatGetReturn(cUnit);
+        rlResult = oatGetReturn(cUnit, rlDest.fp);
         storeValue(cUnit, rlDest, rlResult);
     } else {
         RegLocation rlResult;
         rlDest = oatGetDestWide(cUnit, mir, 0, 1);
-        rlResult = oatGetReturnWide(cUnit);
+        rlResult = oatGetReturnWide(cUnit, rlDest.fp);
         storeValueWide(cUnit, rlDest, rlResult);
     }
     return false;
@@ -2039,7 +2039,7 @@
     loadValueDirectFixed(cUnit, rlSrc1, rARG0);
     loadValueDirectFixed(cUnit, rlSrc2, rARG1);
     callRuntimeHelper(cUnit, rTgt);
-    rlResult = oatGetReturn(cUnit);
+    rlResult = oatGetReturn(cUnit, true);
     storeValue(cUnit, rlDest, rlResult);
     return false;
 }
@@ -2089,7 +2089,7 @@
     loadValueDirectWideFixed(cUnit, rlSrc2, rARG2, rARG3);
 #endif
     callRuntimeHelper(cUnit, rTgt);
-    rlResult = oatGetReturnWide(cUnit);
+    rlResult = oatGetReturnWide(cUnit, true);
     storeValueWide(cUnit, rlDest, rlResult);
     return false;
 }