diff options
author | Ian Rogers <irogers@google.com> | 2014-03-13 23:45:53 -0700 |
---|---|---|
committer | Ian Rogers <irogers@google.com> | 2014-03-14 11:28:10 -0700 |
commit | 53b8b09fc80329539585dcf43657bc5f4ecefdff (patch) | |
tree | cac0f82fbb89bd907104e3fed6c36203e11a3de0 /runtime/native/dalvik_system_VMDebug.cc | |
parent | 0dea9872082bc3e576ed6cefed86b0d6c0c45ffd (diff) | |
download | art-53b8b09fc80329539585dcf43657bc5f4ecefdff.zip art-53b8b09fc80329539585dcf43657bc5f4ecefdff.tar.gz art-53b8b09fc80329539585dcf43657bc5f4ecefdff.tar.bz2 |
Refactor reflective method invocation.
Move invocation code out of JNI internal into reflection, including ArgArray
code. Make reflective invocation use the ArgArray to build arguments rather
than allocating a jvalue[] and unboxing arguments into that.
Move reflection part of jni_internal_test into reflection_test.
Make greater use of fast JNI.
Change-Id: Ib381372df5f9a83679e30e7275de24fa0e6b1057
Diffstat (limited to 'runtime/native/dalvik_system_VMDebug.cc')
-rw-r--r-- | runtime/native/dalvik_system_VMDebug.cc | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/runtime/native/dalvik_system_VMDebug.cc b/runtime/native/dalvik_system_VMDebug.cc index 6482917..0b58af4 100644 --- a/runtime/native/dalvik_system_VMDebug.cc +++ b/runtime/native/dalvik_system_VMDebug.cc @@ -29,7 +29,7 @@ #include "jni_internal.h" #include "mirror/class.h" #include "ScopedUtfChars.h" -#include "scoped_thread_state_change.h" +#include "scoped_fast_native_object_access.h" #include "toStringArray.h" #include "trace.h" @@ -153,12 +153,12 @@ static void VMDebug_resetInstructionCount(JNIEnv* env, jclass) { } static void VMDebug_printLoadedClasses(JNIEnv* env, jclass, jint flags) { - ScopedObjectAccess soa(env); + ScopedFastNativeObjectAccess soa(env); return Runtime::Current()->GetClassLinker()->DumpAllClasses(flags); } static jint VMDebug_getLoadedClassCount(JNIEnv* env, jclass) { - ScopedObjectAccess soa(env); + ScopedFastNativeObjectAccess soa(env); return Runtime::Current()->GetClassLinker()->NumLoadedClasses(); } @@ -318,14 +318,14 @@ static JNINativeMethod gMethods[] = { NATIVE_METHOD(VMDebug, getAllocCount, "(I)I"), NATIVE_METHOD(VMDebug, getHeapSpaceStats, "([J)V"), NATIVE_METHOD(VMDebug, getInstructionCount, "([I)V"), - NATIVE_METHOD(VMDebug, getLoadedClassCount, "()I"), + NATIVE_METHOD(VMDebug, getLoadedClassCount, "!()I"), NATIVE_METHOD(VMDebug, getVmFeatureList, "()[Ljava/lang/String;"), NATIVE_METHOD(VMDebug, infopoint, "(I)V"), - NATIVE_METHOD(VMDebug, isDebuggerConnected, "()Z"), - NATIVE_METHOD(VMDebug, isDebuggingEnabled, "()Z"), + NATIVE_METHOD(VMDebug, isDebuggerConnected, "!()Z"), + NATIVE_METHOD(VMDebug, isDebuggingEnabled, "!()Z"), NATIVE_METHOD(VMDebug, getMethodTracingMode, "()I"), - NATIVE_METHOD(VMDebug, lastDebuggerActivity, "()J"), - NATIVE_METHOD(VMDebug, printLoadedClasses, "(I)V"), + NATIVE_METHOD(VMDebug, lastDebuggerActivity, "!()J"), + NATIVE_METHOD(VMDebug, printLoadedClasses, "!(I)V"), NATIVE_METHOD(VMDebug, resetAllocCount, "(I)V"), NATIVE_METHOD(VMDebug, resetInstructionCount, "()V"), NATIVE_METHOD(VMDebug, startAllocCounting, "()V"), @@ -338,7 +338,7 @@ static JNINativeMethod gMethods[] = { NATIVE_METHOD(VMDebug, stopEmulatorTracing, "()V"), NATIVE_METHOD(VMDebug, stopInstructionCounting, "()V"), NATIVE_METHOD(VMDebug, stopMethodTracing, "()V"), - NATIVE_METHOD(VMDebug, threadCpuTimeNanos, "()J"), + NATIVE_METHOD(VMDebug, threadCpuTimeNanos, "!()J"), }; void register_dalvik_system_VMDebug(JNIEnv* env) { |