Some interpreter cleanup.

- Pass result pointer to interpreter to interpreter entry point.
- Avoid using MethodHelper.ChangeMethod in DoInvoke.

Change-Id: I714b78d50fb14d7a0edced54cd4de78ae54021da
diff --git a/src/interpreter/interpreter.h b/src/interpreter/interpreter.h
index 94fdff1..96fa050 100644
--- a/src/interpreter/interpreter.h
+++ b/src/interpreter/interpreter.h
@@ -47,7 +47,7 @@
                                        ShadowFrame& shadow_frame)
     SHARED_LOCKS_REQUIRED(Locks::mutator_lock_);
 
-extern JValue EnterInterpreterFromInterpreter(Thread* self, ShadowFrame* shadow_frame)
+extern void EnterInterpreterFromInterpreter(Thread* self, ShadowFrame* shadow_frame, JValue* result)
     SHARED_LOCKS_REQUIRED(Locks::mutator_lock_);
 
 }  // namespace interpreter