8228758: assert(_no_handle_mark_nesting == 0) failed: allocating handle inside NoHandleMark
Reviewed-by: coleenp, dcubed, dholmes
This commit is contained in:
parent
de87e8e860
commit
ffa889731a
@ -559,7 +559,7 @@ JNI_ENTRY(jclass, jni_GetSuperclass(JNIEnv *env, jclass sub))
|
||||
return obj;
|
||||
JNI_END
|
||||
|
||||
JNI_QUICK_ENTRY(jboolean, jni_IsAssignableFrom(JNIEnv *env, jclass sub, jclass super))
|
||||
JNI_ENTRY_NO_PRESERVE(jboolean, jni_IsAssignableFrom(JNIEnv *env, jclass sub, jclass super))
|
||||
JNIWrapper("IsSubclassOf");
|
||||
|
||||
HOTSPOT_JNI_ISASSIGNABLEFROM_ENTRY(env, sub, super);
|
||||
@ -694,7 +694,7 @@ JNI_ENTRY_NO_PRESERVE(void, jni_ExceptionDescribe(JNIEnv *env))
|
||||
JNI_END
|
||||
|
||||
|
||||
JNI_QUICK_ENTRY(void, jni_ExceptionClear(JNIEnv *env))
|
||||
JNI_ENTRY_NO_PRESERVE(void, jni_ExceptionClear(JNIEnv *env))
|
||||
JNIWrapper("ExceptionClear");
|
||||
|
||||
HOTSPOT_JNI_EXCEPTIONCLEAR_ENTRY(env);
|
||||
@ -791,7 +791,7 @@ JNI_ENTRY_NO_PRESERVE(void, jni_DeleteGlobalRef(JNIEnv *env, jobject ref))
|
||||
HOTSPOT_JNI_DELETEGLOBALREF_RETURN();
|
||||
JNI_END
|
||||
|
||||
JNI_QUICK_ENTRY(void, jni_DeleteLocalRef(JNIEnv *env, jobject obj))
|
||||
JNI_ENTRY_NO_PRESERVE(void, jni_DeleteLocalRef(JNIEnv *env, jobject obj))
|
||||
JNIWrapper("DeleteLocalRef");
|
||||
|
||||
HOTSPOT_JNI_DELETELOCALREF_ENTRY(env, obj);
|
||||
@ -801,7 +801,7 @@ JNI_QUICK_ENTRY(void, jni_DeleteLocalRef(JNIEnv *env, jobject obj))
|
||||
HOTSPOT_JNI_DELETELOCALREF_RETURN();
|
||||
JNI_END
|
||||
|
||||
JNI_QUICK_ENTRY(jboolean, jni_IsSameObject(JNIEnv *env, jobject r1, jobject r2))
|
||||
JNI_ENTRY_NO_PRESERVE(jboolean, jni_IsSameObject(JNIEnv *env, jobject r1, jobject r2))
|
||||
JNIWrapper("IsSameObject");
|
||||
|
||||
HOTSPOT_JNI_ISSAMEOBJECT_ENTRY(env, r1, r2);
|
||||
@ -1277,7 +1277,7 @@ JNI_ENTRY(jclass, jni_GetObjectClass(JNIEnv *env, jobject obj))
|
||||
return ret;
|
||||
JNI_END
|
||||
|
||||
JNI_QUICK_ENTRY(jboolean, jni_IsInstanceOf(JNIEnv *env, jobject obj, jclass clazz))
|
||||
JNI_ENTRY_NO_PRESERVE(jboolean, jni_IsInstanceOf(JNIEnv *env, jobject obj, jclass clazz))
|
||||
JNIWrapper("IsInstanceOf");
|
||||
|
||||
HOTSPOT_JNI_ISINSTANCEOF_ENTRY(env, obj, clazz);
|
||||
@ -2066,7 +2066,7 @@ JNI_END
|
||||
DT_RETURN_MARK_DECL_FOR(Result, Get##Result##Field, Return \
|
||||
, ReturnProbe); \
|
||||
\
|
||||
JNI_QUICK_ENTRY(Return, jni_Get##Result##Field(JNIEnv *env, jobject obj, jfieldID fieldID)) \
|
||||
JNI_ENTRY_NO_PRESERVE(Return, jni_Get##Result##Field(JNIEnv *env, jobject obj, jfieldID fieldID)) \
|
||||
JNIWrapper("Get" XSTR(Result) "Field"); \
|
||||
\
|
||||
EntryProbe; \
|
||||
@ -2137,7 +2137,7 @@ address jni_GetDoubleField_addr() {
|
||||
return (address)jni_GetDoubleField;
|
||||
}
|
||||
|
||||
JNI_QUICK_ENTRY(void, jni_SetObjectField(JNIEnv *env, jobject obj, jfieldID fieldID, jobject value))
|
||||
JNI_ENTRY_NO_PRESERVE(void, jni_SetObjectField(JNIEnv *env, jobject obj, jfieldID fieldID, jobject value))
|
||||
JNIWrapper("SetObjectField");
|
||||
HOTSPOT_JNI_SETOBJECTFIELD_ENTRY(env, obj, (uintptr_t) fieldID, value);
|
||||
oop o = JNIHandles::resolve_non_null(obj);
|
||||
@ -2159,7 +2159,7 @@ JNI_END
|
||||
#define DEFINE_SETFIELD(Argument,Fieldname,Result,SigType,unionType \
|
||||
, EntryProbe, ReturnProbe) \
|
||||
\
|
||||
JNI_QUICK_ENTRY(void, jni_Set##Result##Field(JNIEnv *env, jobject obj, jfieldID fieldID, Argument value)) \
|
||||
JNI_ENTRY_NO_PRESERVE(void, jni_Set##Result##Field(JNIEnv *env, jobject obj, jfieldID fieldID, Argument value)) \
|
||||
JNIWrapper("Set" XSTR(Result) "Field"); \
|
||||
\
|
||||
EntryProbe; \
|
||||
@ -2425,7 +2425,7 @@ JNI_ENTRY(jstring, jni_NewString(JNIEnv *env, const jchar *unicodeChars, jsize l
|
||||
JNI_END
|
||||
|
||||
|
||||
JNI_QUICK_ENTRY(jsize, jni_GetStringLength(JNIEnv *env, jstring string))
|
||||
JNI_ENTRY_NO_PRESERVE(jsize, jni_GetStringLength(JNIEnv *env, jstring string))
|
||||
JNIWrapper("GetStringLength");
|
||||
HOTSPOT_JNI_GETSTRINGLENGTH_ENTRY(env, string);
|
||||
jsize ret = 0;
|
||||
@ -2436,7 +2436,7 @@ JNI_QUICK_ENTRY(jsize, jni_GetStringLength(JNIEnv *env, jstring string))
|
||||
JNI_END
|
||||
|
||||
|
||||
JNI_QUICK_ENTRY(const jchar*, jni_GetStringChars(
|
||||
JNI_ENTRY_NO_PRESERVE(const jchar*, jni_GetStringChars(
|
||||
JNIEnv *env, jstring string, jboolean *isCopy))
|
||||
JNIWrapper("GetStringChars");
|
||||
HOTSPOT_JNI_GETSTRINGCHARS_ENTRY(env, string, (uintptr_t *) isCopy);
|
||||
@ -2471,7 +2471,7 @@ JNI_QUICK_ENTRY(const jchar*, jni_GetStringChars(
|
||||
JNI_END
|
||||
|
||||
|
||||
JNI_QUICK_ENTRY(void, jni_ReleaseStringChars(JNIEnv *env, jstring str, const jchar *chars))
|
||||
JNI_ENTRY_NO_PRESERVE(void, jni_ReleaseStringChars(JNIEnv *env, jstring str, const jchar *chars))
|
||||
JNIWrapper("ReleaseStringChars");
|
||||
HOTSPOT_JNI_RELEASESTRINGCHARS_ENTRY(env, str, (uint16_t *) chars);
|
||||
//%note jni_6
|
||||
@ -2543,7 +2543,7 @@ HOTSPOT_JNI_RELEASESTRINGUTFCHARS_RETURN();
|
||||
JNI_END
|
||||
|
||||
|
||||
JNI_QUICK_ENTRY(jsize, jni_GetArrayLength(JNIEnv *env, jarray array))
|
||||
JNI_ENTRY_NO_PRESERVE(jsize, jni_GetArrayLength(JNIEnv *env, jarray array))
|
||||
JNIWrapper("GetArrayLength");
|
||||
HOTSPOT_JNI_GETARRAYLENGTH_ENTRY(env, array);
|
||||
arrayOop a = arrayOop(JNIHandles::resolve_non_null(array));
|
||||
@ -2700,7 +2700,7 @@ static char* get_bad_address() {
|
||||
#define DEFINE_GETSCALARARRAYELEMENTS(ElementTag,ElementType,Result, Tag \
|
||||
, EntryProbe, ReturnProbe) \
|
||||
\
|
||||
JNI_QUICK_ENTRY(ElementType*, \
|
||||
JNI_ENTRY_NO_PRESERVE(ElementType*, \
|
||||
jni_Get##Result##ArrayElements(JNIEnv *env, ElementType##Array array, jboolean *isCopy)) \
|
||||
JNIWrapper("Get" XSTR(Result) "ArrayElements"); \
|
||||
EntryProbe; \
|
||||
@ -2762,7 +2762,7 @@ DEFINE_GETSCALARARRAYELEMENTS(T_DOUBLE, jdouble, Double, double
|
||||
#define DEFINE_RELEASESCALARARRAYELEMENTS(ElementTag,ElementType,Result,Tag \
|
||||
, EntryProbe, ReturnProbe);\
|
||||
\
|
||||
JNI_QUICK_ENTRY(void, \
|
||||
JNI_ENTRY_NO_PRESERVE(void, \
|
||||
jni_Release##Result##ArrayElements(JNIEnv *env, ElementType##Array array, \
|
||||
ElementType *buf, jint mode)) \
|
||||
JNIWrapper("Release" XSTR(Result) "ArrayElements"); \
|
||||
@ -3262,7 +3262,7 @@ JNI_ENTRY(void, jni_DeleteWeakGlobalRef(JNIEnv *env, jweak ref))
|
||||
JNI_END
|
||||
|
||||
|
||||
JNI_QUICK_ENTRY(jboolean, jni_ExceptionCheck(JNIEnv *env))
|
||||
JNI_ENTRY_NO_PRESERVE(jboolean, jni_ExceptionCheck(JNIEnv *env))
|
||||
JNIWrapper("jni_ExceptionCheck");
|
||||
HOTSPOT_JNI_EXCEPTIONCHECK_ENTRY(env);
|
||||
jni_check_async_exceptions(thread);
|
||||
|
@ -1105,7 +1105,7 @@ JVM_ENTRY(jobjectArray, JVM_GetClassInterfaces(JNIEnv *env, jclass cls))
|
||||
JVM_END
|
||||
|
||||
|
||||
JVM_QUICK_ENTRY(jboolean, JVM_IsInterface(JNIEnv *env, jclass cls))
|
||||
JVM_ENTRY(jboolean, JVM_IsInterface(JNIEnv *env, jclass cls))
|
||||
JVMWrapper("JVM_IsInterface");
|
||||
oop mirror = JNIHandles::resolve_non_null(cls);
|
||||
if (java_lang_Class::is_primitive(mirror)) {
|
||||
@ -1278,14 +1278,14 @@ JVM_ENTRY(jobject, JVM_GetStackAccessControlContext(JNIEnv *env, jclass cls))
|
||||
JVM_END
|
||||
|
||||
|
||||
JVM_QUICK_ENTRY(jboolean, JVM_IsArrayClass(JNIEnv *env, jclass cls))
|
||||
JVM_ENTRY(jboolean, JVM_IsArrayClass(JNIEnv *env, jclass cls))
|
||||
JVMWrapper("JVM_IsArrayClass");
|
||||
Klass* k = java_lang_Class::as_Klass(JNIHandles::resolve_non_null(cls));
|
||||
return (k != NULL) && k->is_array_klass() ? true : false;
|
||||
JVM_END
|
||||
|
||||
|
||||
JVM_QUICK_ENTRY(jboolean, JVM_IsPrimitiveClass(JNIEnv *env, jclass cls))
|
||||
JVM_ENTRY(jboolean, JVM_IsPrimitiveClass(JNIEnv *env, jclass cls))
|
||||
JVMWrapper("JVM_IsPrimitiveClass");
|
||||
oop mirror = JNIHandles::resolve_non_null(cls);
|
||||
return (jboolean) java_lang_Class::is_primitive(mirror);
|
||||
@ -2253,7 +2253,7 @@ JVM_ENTRY(const char*, JVM_GetClassNameUTF(JNIEnv *env, jclass cls))
|
||||
JVM_END
|
||||
|
||||
|
||||
JVM_QUICK_ENTRY(void, JVM_GetClassCPTypes(JNIEnv *env, jclass cls, unsigned char *types))
|
||||
JVM_ENTRY(void, JVM_GetClassCPTypes(JNIEnv *env, jclass cls, unsigned char *types))
|
||||
JVMWrapper("JVM_GetClassCPTypes");
|
||||
Klass* k = java_lang_Class::as_Klass(JNIHandles::resolve_non_null(cls));
|
||||
k = JvmtiThreadState::class_to_verify_considering_redefinition(k, thread);
|
||||
@ -2269,7 +2269,7 @@ JVM_QUICK_ENTRY(void, JVM_GetClassCPTypes(JNIEnv *env, jclass cls, unsigned char
|
||||
JVM_END
|
||||
|
||||
|
||||
JVM_QUICK_ENTRY(jint, JVM_GetClassCPEntriesCount(JNIEnv *env, jclass cls))
|
||||
JVM_ENTRY(jint, JVM_GetClassCPEntriesCount(JNIEnv *env, jclass cls))
|
||||
JVMWrapper("JVM_GetClassCPEntriesCount");
|
||||
Klass* k = java_lang_Class::as_Klass(JNIHandles::resolve_non_null(cls));
|
||||
k = JvmtiThreadState::class_to_verify_considering_redefinition(k, thread);
|
||||
@ -2277,7 +2277,7 @@ JVM_QUICK_ENTRY(jint, JVM_GetClassCPEntriesCount(JNIEnv *env, jclass cls))
|
||||
JVM_END
|
||||
|
||||
|
||||
JVM_QUICK_ENTRY(jint, JVM_GetClassFieldsCount(JNIEnv *env, jclass cls))
|
||||
JVM_ENTRY(jint, JVM_GetClassFieldsCount(JNIEnv *env, jclass cls))
|
||||
JVMWrapper("JVM_GetClassFieldsCount");
|
||||
Klass* k = java_lang_Class::as_Klass(JNIHandles::resolve_non_null(cls));
|
||||
k = JvmtiThreadState::class_to_verify_considering_redefinition(k, thread);
|
||||
@ -2285,7 +2285,7 @@ JVM_QUICK_ENTRY(jint, JVM_GetClassFieldsCount(JNIEnv *env, jclass cls))
|
||||
JVM_END
|
||||
|
||||
|
||||
JVM_QUICK_ENTRY(jint, JVM_GetClassMethodsCount(JNIEnv *env, jclass cls))
|
||||
JVM_ENTRY(jint, JVM_GetClassMethodsCount(JNIEnv *env, jclass cls))
|
||||
JVMWrapper("JVM_GetClassMethodsCount");
|
||||
Klass* k = java_lang_Class::as_Klass(JNIHandles::resolve_non_null(cls));
|
||||
k = JvmtiThreadState::class_to_verify_considering_redefinition(k, thread);
|
||||
@ -2298,7 +2298,7 @@ JVM_END
|
||||
// Typically, these methods are called in a loop with bounds determined
|
||||
// by the results of JVM_GetClass{Fields,Methods}Count, which return
|
||||
// zero for arrays.
|
||||
JVM_QUICK_ENTRY(void, JVM_GetMethodIxExceptionIndexes(JNIEnv *env, jclass cls, jint method_index, unsigned short *exceptions))
|
||||
JVM_ENTRY(void, JVM_GetMethodIxExceptionIndexes(JNIEnv *env, jclass cls, jint method_index, unsigned short *exceptions))
|
||||
JVMWrapper("JVM_GetMethodIxExceptionIndexes");
|
||||
Klass* k = java_lang_Class::as_Klass(JNIHandles::resolve_non_null(cls));
|
||||
k = JvmtiThreadState::class_to_verify_considering_redefinition(k, thread);
|
||||
@ -2313,7 +2313,7 @@ JVM_QUICK_ENTRY(void, JVM_GetMethodIxExceptionIndexes(JNIEnv *env, jclass cls, j
|
||||
JVM_END
|
||||
|
||||
|
||||
JVM_QUICK_ENTRY(jint, JVM_GetMethodIxExceptionsCount(JNIEnv *env, jclass cls, jint method_index))
|
||||
JVM_ENTRY(jint, JVM_GetMethodIxExceptionsCount(JNIEnv *env, jclass cls, jint method_index))
|
||||
JVMWrapper("JVM_GetMethodIxExceptionsCount");
|
||||
Klass* k = java_lang_Class::as_Klass(JNIHandles::resolve_non_null(cls));
|
||||
k = JvmtiThreadState::class_to_verify_considering_redefinition(k, thread);
|
||||
@ -2322,7 +2322,7 @@ JVM_QUICK_ENTRY(jint, JVM_GetMethodIxExceptionsCount(JNIEnv *env, jclass cls, ji
|
||||
JVM_END
|
||||
|
||||
|
||||
JVM_QUICK_ENTRY(void, JVM_GetMethodIxByteCode(JNIEnv *env, jclass cls, jint method_index, unsigned char *code))
|
||||
JVM_ENTRY(void, JVM_GetMethodIxByteCode(JNIEnv *env, jclass cls, jint method_index, unsigned char *code))
|
||||
JVMWrapper("JVM_GetMethodIxByteCode");
|
||||
Klass* k = java_lang_Class::as_Klass(JNIHandles::resolve_non_null(cls));
|
||||
k = JvmtiThreadState::class_to_verify_considering_redefinition(k, thread);
|
||||
@ -2331,7 +2331,7 @@ JVM_QUICK_ENTRY(void, JVM_GetMethodIxByteCode(JNIEnv *env, jclass cls, jint meth
|
||||
JVM_END
|
||||
|
||||
|
||||
JVM_QUICK_ENTRY(jint, JVM_GetMethodIxByteCodeLength(JNIEnv *env, jclass cls, jint method_index))
|
||||
JVM_ENTRY(jint, JVM_GetMethodIxByteCodeLength(JNIEnv *env, jclass cls, jint method_index))
|
||||
JVMWrapper("JVM_GetMethodIxByteCodeLength");
|
||||
Klass* k = java_lang_Class::as_Klass(JNIHandles::resolve_non_null(cls));
|
||||
k = JvmtiThreadState::class_to_verify_considering_redefinition(k, thread);
|
||||
@ -2340,7 +2340,7 @@ JVM_QUICK_ENTRY(jint, JVM_GetMethodIxByteCodeLength(JNIEnv *env, jclass cls, jin
|
||||
JVM_END
|
||||
|
||||
|
||||
JVM_QUICK_ENTRY(void, JVM_GetMethodIxExceptionTableEntry(JNIEnv *env, jclass cls, jint method_index, jint entry_index, JVM_ExceptionTableEntryType *entry))
|
||||
JVM_ENTRY(void, JVM_GetMethodIxExceptionTableEntry(JNIEnv *env, jclass cls, jint method_index, jint entry_index, JVM_ExceptionTableEntryType *entry))
|
||||
JVMWrapper("JVM_GetMethodIxExceptionTableEntry");
|
||||
Klass* k = java_lang_Class::as_Klass(JNIHandles::resolve_non_null(cls));
|
||||
k = JvmtiThreadState::class_to_verify_considering_redefinition(k, thread);
|
||||
@ -2353,7 +2353,7 @@ JVM_QUICK_ENTRY(void, JVM_GetMethodIxExceptionTableEntry(JNIEnv *env, jclass cls
|
||||
JVM_END
|
||||
|
||||
|
||||
JVM_QUICK_ENTRY(jint, JVM_GetMethodIxExceptionTableLength(JNIEnv *env, jclass cls, int method_index))
|
||||
JVM_ENTRY(jint, JVM_GetMethodIxExceptionTableLength(JNIEnv *env, jclass cls, int method_index))
|
||||
JVMWrapper("JVM_GetMethodIxExceptionTableLength");
|
||||
Klass* k = java_lang_Class::as_Klass(JNIHandles::resolve_non_null(cls));
|
||||
k = JvmtiThreadState::class_to_verify_considering_redefinition(k, thread);
|
||||
@ -2362,7 +2362,7 @@ JVM_QUICK_ENTRY(jint, JVM_GetMethodIxExceptionTableLength(JNIEnv *env, jclass cl
|
||||
JVM_END
|
||||
|
||||
|
||||
JVM_QUICK_ENTRY(jint, JVM_GetMethodIxModifiers(JNIEnv *env, jclass cls, int method_index))
|
||||
JVM_ENTRY(jint, JVM_GetMethodIxModifiers(JNIEnv *env, jclass cls, int method_index))
|
||||
JVMWrapper("JVM_GetMethodIxModifiers");
|
||||
Klass* k = java_lang_Class::as_Klass(JNIHandles::resolve_non_null(cls));
|
||||
k = JvmtiThreadState::class_to_verify_considering_redefinition(k, thread);
|
||||
@ -2371,7 +2371,7 @@ JVM_QUICK_ENTRY(jint, JVM_GetMethodIxModifiers(JNIEnv *env, jclass cls, int meth
|
||||
JVM_END
|
||||
|
||||
|
||||
JVM_QUICK_ENTRY(jint, JVM_GetFieldIxModifiers(JNIEnv *env, jclass cls, int field_index))
|
||||
JVM_ENTRY(jint, JVM_GetFieldIxModifiers(JNIEnv *env, jclass cls, int field_index))
|
||||
JVMWrapper("JVM_GetFieldIxModifiers");
|
||||
Klass* k = java_lang_Class::as_Klass(JNIHandles::resolve_non_null(cls));
|
||||
k = JvmtiThreadState::class_to_verify_considering_redefinition(k, thread);
|
||||
@ -2379,7 +2379,7 @@ JVM_QUICK_ENTRY(jint, JVM_GetFieldIxModifiers(JNIEnv *env, jclass cls, int field
|
||||
JVM_END
|
||||
|
||||
|
||||
JVM_QUICK_ENTRY(jint, JVM_GetMethodIxLocalsCount(JNIEnv *env, jclass cls, int method_index))
|
||||
JVM_ENTRY(jint, JVM_GetMethodIxLocalsCount(JNIEnv *env, jclass cls, int method_index))
|
||||
JVMWrapper("JVM_GetMethodIxLocalsCount");
|
||||
Klass* k = java_lang_Class::as_Klass(JNIHandles::resolve_non_null(cls));
|
||||
k = JvmtiThreadState::class_to_verify_considering_redefinition(k, thread);
|
||||
@ -2388,7 +2388,7 @@ JVM_QUICK_ENTRY(jint, JVM_GetMethodIxLocalsCount(JNIEnv *env, jclass cls, int me
|
||||
JVM_END
|
||||
|
||||
|
||||
JVM_QUICK_ENTRY(jint, JVM_GetMethodIxArgsSize(JNIEnv *env, jclass cls, int method_index))
|
||||
JVM_ENTRY(jint, JVM_GetMethodIxArgsSize(JNIEnv *env, jclass cls, int method_index))
|
||||
JVMWrapper("JVM_GetMethodIxArgsSize");
|
||||
Klass* k = java_lang_Class::as_Klass(JNIHandles::resolve_non_null(cls));
|
||||
k = JvmtiThreadState::class_to_verify_considering_redefinition(k, thread);
|
||||
@ -2397,7 +2397,7 @@ JVM_QUICK_ENTRY(jint, JVM_GetMethodIxArgsSize(JNIEnv *env, jclass cls, int metho
|
||||
JVM_END
|
||||
|
||||
|
||||
JVM_QUICK_ENTRY(jint, JVM_GetMethodIxMaxStack(JNIEnv *env, jclass cls, int method_index))
|
||||
JVM_ENTRY(jint, JVM_GetMethodIxMaxStack(JNIEnv *env, jclass cls, int method_index))
|
||||
JVMWrapper("JVM_GetMethodIxMaxStack");
|
||||
Klass* k = java_lang_Class::as_Klass(JNIHandles::resolve_non_null(cls));
|
||||
k = JvmtiThreadState::class_to_verify_considering_redefinition(k, thread);
|
||||
@ -2406,7 +2406,7 @@ JVM_QUICK_ENTRY(jint, JVM_GetMethodIxMaxStack(JNIEnv *env, jclass cls, int metho
|
||||
JVM_END
|
||||
|
||||
|
||||
JVM_QUICK_ENTRY(jboolean, JVM_IsConstructorIx(JNIEnv *env, jclass cls, int method_index))
|
||||
JVM_ENTRY(jboolean, JVM_IsConstructorIx(JNIEnv *env, jclass cls, int method_index))
|
||||
JVMWrapper("JVM_IsConstructorIx");
|
||||
ResourceMark rm(THREAD);
|
||||
Klass* k = java_lang_Class::as_Klass(JNIHandles::resolve_non_null(cls));
|
||||
@ -2416,7 +2416,7 @@ JVM_QUICK_ENTRY(jboolean, JVM_IsConstructorIx(JNIEnv *env, jclass cls, int metho
|
||||
JVM_END
|
||||
|
||||
|
||||
JVM_QUICK_ENTRY(jboolean, JVM_IsVMGeneratedMethodIx(JNIEnv *env, jclass cls, int method_index))
|
||||
JVM_ENTRY(jboolean, JVM_IsVMGeneratedMethodIx(JNIEnv *env, jclass cls, int method_index))
|
||||
JVMWrapper("JVM_IsVMGeneratedMethodIx");
|
||||
ResourceMark rm(THREAD);
|
||||
Klass* k = java_lang_Class::as_Klass(JNIHandles::resolve_non_null(cls));
|
||||
@ -2593,7 +2593,7 @@ JVM_ENTRY(jint, JVM_GetCPFieldModifiers(JNIEnv *env, jclass cls, int cp_index, j
|
||||
JVM_END
|
||||
|
||||
|
||||
JVM_QUICK_ENTRY(jint, JVM_GetCPMethodModifiers(JNIEnv *env, jclass cls, int cp_index, jclass called_cls))
|
||||
JVM_ENTRY(jint, JVM_GetCPMethodModifiers(JNIEnv *env, jclass cls, int cp_index, jclass called_cls))
|
||||
JVMWrapper("JVM_GetCPMethodModifiers");
|
||||
Klass* k = java_lang_Class::as_Klass(JNIHandles::resolve_non_null(cls));
|
||||
Klass* k_called = java_lang_Class::as_Klass(JNIHandles::resolve_non_null(called_cls));
|
||||
@ -3064,7 +3064,7 @@ JVM_ENTRY(void, JVM_Interrupt(JNIEnv* env, jobject jthread))
|
||||
JVM_END
|
||||
|
||||
|
||||
JVM_QUICK_ENTRY(jboolean, JVM_IsInterrupted(JNIEnv* env, jobject jthread, jboolean clear_interrupted))
|
||||
JVM_ENTRY(jboolean, JVM_IsInterrupted(JNIEnv* env, jobject jthread, jboolean clear_interrupted))
|
||||
JVMWrapper("JVM_IsInterrupted");
|
||||
|
||||
ThreadsListHandle tlh(thread);
|
||||
|
@ -393,16 +393,6 @@ class RuntimeHistogramElement : public HistogramElement {
|
||||
/* begin of body */
|
||||
|
||||
|
||||
// QUICK_ENTRY routines behave like ENTRY but without a handle mark
|
||||
|
||||
#define VM_QUICK_ENTRY_BASE(result_type, header, thread) \
|
||||
TRACE_CALL(result_type, header) \
|
||||
debug_only(NoHandleMark __hm;) \
|
||||
Thread* THREAD = thread; \
|
||||
os::verify_stack_alignment(); \
|
||||
/* begin of body */
|
||||
|
||||
|
||||
#define JRT_ENTRY(result_type, header) \
|
||||
result_type header { \
|
||||
ThreadInVMfromJava __tiv(thread); \
|
||||
@ -474,18 +464,6 @@ extern "C" { \
|
||||
VM_ENTRY_BASE(result_type, header, thread)
|
||||
|
||||
|
||||
// Ensure that the VMNativeEntryWrapper constructor, which can cause
|
||||
// a GC, is called outside the NoHandleMark (set via VM_QUICK_ENTRY_BASE).
|
||||
#define JNI_QUICK_ENTRY(result_type, header) \
|
||||
extern "C" { \
|
||||
result_type JNICALL header { \
|
||||
JavaThread* thread=JavaThread::thread_from_jni_environment(env); \
|
||||
assert( !VerifyJNIEnvThread || (thread == Thread::current()), "JNIEnv is only valid in same thread"); \
|
||||
ThreadInVMfromNative __tiv(thread); \
|
||||
debug_only(VMNativeEntryWrapper __vew;) \
|
||||
VM_QUICK_ENTRY_BASE(result_type, header, thread)
|
||||
|
||||
|
||||
#define JNI_LEAF(result_type, header) \
|
||||
extern "C" { \
|
||||
result_type JNICALL header { \
|
||||
@ -519,15 +497,6 @@ extern "C" { \
|
||||
VM_ENTRY_BASE(result_type, header, thread)
|
||||
|
||||
|
||||
#define JVM_QUICK_ENTRY(result_type, header) \
|
||||
extern "C" { \
|
||||
result_type JNICALL header { \
|
||||
JavaThread* thread=JavaThread::thread_from_jni_environment(env); \
|
||||
ThreadInVMfromNative __tiv(thread); \
|
||||
debug_only(VMNativeEntryWrapper __vew;) \
|
||||
VM_QUICK_ENTRY_BASE(result_type, header, thread)
|
||||
|
||||
|
||||
#define JVM_LEAF(result_type, header) \
|
||||
extern "C" { \
|
||||
result_type JNICALL header { \
|
||||
|
Loading…
Reference in New Issue
Block a user