jni: Switch to @FastNative for all JNI functions. Deprecate !bang JNI.
Switches all (248) methods that previously used !bang JNI in art/libcore
to all use @FastNative.
Also deprecate !bang JNI since nothing in Android seems to (or should
be) using it anymore.
This measures to be a 3% startup time improvement in system_server.
Test: make test-art-host
Bug: 34955272
Change-Id: I0881f401c7660c79f275235362777bfa58241deb
diff --git a/runtime/native/java_lang_Object.cc b/runtime/native/java_lang_Object.cc
index 6493865..6989244 100644
--- a/runtime/native/java_lang_Object.cc
+++ b/runtime/native/java_lang_Object.cc
@@ -20,7 +20,6 @@
#include "mirror/object-inl.h"
#include "scoped_fast_native_object_access-inl.h"
-
namespace art {
static jobject Object_internalClone(JNIEnv* env, jobject java_this) {
@@ -50,11 +49,11 @@
}
static JNINativeMethod gMethods[] = {
- NATIVE_METHOD(Object, internalClone, "!()Ljava/lang/Object;"),
- NATIVE_METHOD(Object, notify, "!()V"),
- NATIVE_METHOD(Object, notifyAll, "!()V"),
- OVERLOADED_NATIVE_METHOD(Object, wait, "!()V", wait),
- OVERLOADED_NATIVE_METHOD(Object, wait, "!(JI)V", waitJI),
+ FAST_NATIVE_METHOD(Object, internalClone, "()Ljava/lang/Object;"),
+ FAST_NATIVE_METHOD(Object, notify, "()V"),
+ FAST_NATIVE_METHOD(Object, notifyAll, "()V"),
+ OVERLOADED_FAST_NATIVE_METHOD(Object, wait, "()V", wait),
+ OVERLOADED_FAST_NATIVE_METHOD(Object, wait, "(JI)V", waitJI),
};
void register_java_lang_Object(JNIEnv* env) {