ART: ReEnable check for a gap between method's arg "in" vregs and rest of its vregs

The Quick backend's runtime model includes a gap between a method's
argument ("in") vregs and the rest of its vregs.  Handling a range instruction
which spans the gap is somewhat complicated, and should not happen
in normal usage of dx. Punt to the interpreter if it happened.

This issue relates to https://code.google.com/p/android/issues/detail?id=66371
Which was fixed, but the problem returned after some changes in the verify
flags set for the range bytecodes.

Change-Id: I214f32e7b4227a450257f30607135930d0adff53
Signed-off-by: Katkov, Serguei I <serguei.i.katkov@intel.com>
Signed-off-by: Alexei Zavjalov <alexei.zavjalov@intel.com>
diff --git a/compiler/dex/mir_graph.cc b/compiler/dex/mir_graph.cc
index 331af21..8d0a5a3 100644
--- a/compiler/dex/mir_graph.cc
+++ b/compiler/dex/mir_graph.cc
@@ -795,7 +795,8 @@
     } else if (flags & Instruction::kSwitch) {
       cur_block = ProcessCanSwitch(cur_block, insn, current_offset_, width, flags);
     }
-    if (verify_flags & Instruction::kVerifyVarArgRange) {
+    if (verify_flags & Instruction::kVerifyVarArgRange ||
+        verify_flags & Instruction::kVerifyVarArgRangeNonZero) {
       /*
        * The Quick backend's runtime model includes a gap between a method's
        * argument ("in") vregs and the rest of its vregs.  Handling a range instruction