Support for stopping all threads in a Jit environment.
diff --git a/vm/interp/Jit.c b/vm/interp/Jit.c
index e23361b..f2b3c50 100644
--- a/vm/interp/Jit.c
+++ b/vm/interp/Jit.c
@@ -206,28 +206,6 @@
     }
 }
 
-/* Returns the signed branch displacement of a Dalvik instruction. */
-int dvmGetBranchDisplacement( DecodedInstruction* decInsn )
-{
-    int res = 0;
-    switch (dexGetInstrFormat(gDvm.instrFormat, decInsn->opCode)) {
-        case kFmt22t:
-            res = decInsn->vC;
-            break;
-        case kFmt20t:
-        case kFmt21t:
-            res = decInsn->vB;
-            break;
-        case kFmt10t:
-        case kFmt30t:
-            res = decInsn->vA;
-            break;
-        default:
-            dvmAbort();
-    }
-    return res;
-}
-
 /*
  * Adds to the current trace request one instruction at a time, just
  * before that instruction is interpreted.  This is the primary trace
@@ -395,6 +373,11 @@
 {
     int idx = dvmJitHash(dPC);
 
+    /* If anything is suspended, don't re-enter the code cache */
+    if (gDvm.sumThreadSuspendCount > 0) {
+        return NULL;
+    }
+
     /* Expect a high hit rate on 1st shot */
     if (gDvmJit.pJitEntryTable[idx].dPC == dPC) {
 #if defined(EXIT_STATS)