Support for deoptimization needed for debugging.
The deoptimization code is untested, and some sanity checks in the
instrumentation are disabled because they need debugging.
Change-Id: I1b60a65a60bddc9b107ad4659da097b55ce901c3
diff --git a/src/native/dalvik_system_VMStack.cc b/src/native/dalvik_system_VMStack.cc
index 0e6e675..8ce022d 100644
--- a/src/native/dalvik_system_VMStack.cc
+++ b/src/native/dalvik_system_VMStack.cc
@@ -51,7 +51,8 @@
}
}
-static jint VMStack_fillStackTraceElements(JNIEnv* env, jclass, jobject javaThread, jobjectArray javaSteArray) {
+static jint VMStack_fillStackTraceElements(JNIEnv* env, jclass, jobject javaThread,
+ jobjectArray javaSteArray) {
jobject trace = GetThreadStack(env, javaThread);
if (trace == NULL) {
return 0;
@@ -69,10 +70,11 @@
return soa.AddLocalReference<jobject>(visitor.caller->GetDeclaringClass()->GetClassLoader());
}
-static jobject VMStack_getClosestUserClassLoader(JNIEnv* env, jclass, jobject javaBootstrap, jobject javaSystem) {
+static jobject VMStack_getClosestUserClassLoader(JNIEnv* env, jclass, jobject javaBootstrap,
+ jobject javaSystem) {
struct ClosestUserClassLoaderVisitor : public StackVisitor {
ClosestUserClassLoaderVisitor(const ManagedStack* stack,
- const std::vector<InstrumentationStackFrame>* instrumentation_stack,
+ const std::deque<InstrumentationStackFrame>* instrumentation_stack,
Object* bootstrap, Object* system)
: StackVisitor(stack, instrumentation_stack, NULL),
bootstrap(bootstrap), system(system), class_loader(NULL) {}