Enter interpreter stub.
Untested code that when set as the code for a AbstractMethod* will force the
next invocation of the Method to transition into the interpreter.
Change-Id: I557bca3a2caf4a78551b39aa5ac4ffb4c486105b
diff --git a/src/oat/runtime/support_proxy.cc b/src/oat/runtime/support_proxy.cc
index 5bf3cde..f0f07a1 100644
--- a/src/oat/runtime/support_proxy.cc
+++ b/src/oat/runtime/support_proxy.cc
@@ -52,11 +52,11 @@
val.j = *reinterpret_cast<jlong*>(GetParamAddress());
}
break;
- case Primitive::kPrimBoolean:
- case Primitive::kPrimByte:
- case Primitive::kPrimChar:
- case Primitive::kPrimShort:
- case Primitive::kPrimInt:
+ case Primitive::kPrimBoolean: // Fall-through.
+ case Primitive::kPrimByte: // Fall-through.
+ case Primitive::kPrimChar: // Fall-through.
+ case Primitive::kPrimShort: // Fall-through.
+ case Primitive::kPrimInt: // Fall-through.
case Primitive::kPrimFloat:
val.i = *reinterpret_cast<jint*>(GetParamAddress());
break;
@@ -71,6 +71,8 @@
private:
ScopedObjectAccessUnchecked& soa_;
std::vector<jvalue>& args_;
+
+ DISALLOW_COPY_AND_ASSIGN(BuildArgumentVisitor);
};
// Handler for invocation on proxy methods. On entry a frame will exist for the proxy object method