Fix for 2542488 JIT codegen bug with overlapping wide operands

Change-Id: I2f31492f68cb753f76dd664cd6b0a52d7d32de4c
diff --git a/vm/compiler/codegen/arm/Codegen.h b/vm/compiler/codegen/arm/Codegen.h
index 0674b8b..8a340e5 100644
--- a/vm/compiler/codegen/arm/Codegen.h
+++ b/vm/compiler/codegen/arm/Codegen.h
@@ -45,6 +45,8 @@
 
 static void genMonitorPortable(CompilationUnit *cUnit, MIR *mir);
 
+static void genInterpSingleStep(CompilationUnit *cUnit, MIR *mir);
+
 #if defined(WITH_SELF_VERIFICATION)
 /* Self Verification memory instruction decoder */
 void dvmSelfVerificationMemOpDecode(int lr, int* sp);
diff --git a/vm/compiler/codegen/arm/Thumb/Gen.c b/vm/compiler/codegen/arm/Thumb/Gen.c
index aca68ef..e014795 100644
--- a/vm/compiler/codegen/arm/Thumb/Gen.c
+++ b/vm/compiler/codegen/arm/Thumb/Gen.c
@@ -60,7 +60,7 @@
     storeValueWide(cUnit, rlDest, rlResult);
 }
 
-static void partialOverlap(int sreg1, int sreg2)
+static bool partialOverlap(int sreg1, int sreg2)
 {
     return abs(sreg1 - sreg2) == 1;
 }