Enable compiler_test on host.

Change-Id: I67a745ba78567af6c967cc44cd9c9640ef5ba398
diff --git a/src/compiler/codegen/GenInvoke.cc b/src/compiler/codegen/GenInvoke.cc
index c2023ff..2810936 100644
--- a/src/compiler/codegen/GenInvoke.cc
+++ b/src/compiler/codegen/GenInvoke.cc
@@ -52,11 +52,12 @@
 
     if (cUnit->numIns == 0)
         return;
-    int firstArgReg = rARG1;
 #if !defined(TARGET_X86)
-    int lastArgReg = rARG3;
+    const int numArgRegs = 3;
+    static int argRegs[] = {rARG1, rARG2, rARG3};
 #else
-    int lastArgReg = rARG2;
+    const int numArgRegs = 2;
+    static int argRegs[] = {rARG1, rARG2};
 #endif
     int startVReg = cUnit->numDalvikRegisters - cUnit->numIns;
     /*
@@ -73,15 +74,15 @@
      */
     for (int i = 0; i < cUnit->numIns; i++) {
         PromotionMap* vMap = &cUnit->promotionMap[startVReg + i];
-        if (i <= (lastArgReg - firstArgReg)) {
+        if (i < numArgRegs) {
             // If arriving in register
             bool needFlush = true;
             RegLocation* tLoc = &cUnit->regLocation[startVReg + i];
             if ((vMap->coreLocation == kLocPhysReg) && !tLoc->fp) {
-                opRegCopy(cUnit, vMap->coreReg, firstArgReg + i);
+                opRegCopy(cUnit, vMap->coreReg, argRegs[i]);
                 needFlush = false;
             } else if ((vMap->fpLocation == kLocPhysReg) && tLoc->fp) {
-                opRegCopy(cUnit, vMap->fpReg, firstArgReg + i);
+                opRegCopy(cUnit, vMap->fpReg, argRegs[i]);
                 needFlush = false;
             } else {
                 needFlush = true;
@@ -95,7 +96,7 @@
             }
             if (needFlush) {
                 storeBaseDisp(cUnit, rSP, oatSRegOffset(cUnit, startVReg + i),
-                              firstArgReg + i, kWord);
+                              argRegs[i], kWord);
             }
         } else {
             // If arriving in frame & promoted