235 nmethod* code = mh->code(); |
235 nmethod* code = mh->code(); |
236 return (code != NULL ? code->comp_level() : CompLevel_none); |
236 return (code != NULL ? code->comp_level() : CompLevel_none); |
237 WB_END |
237 WB_END |
238 |
238 |
239 |
239 |
240 WB_ENTRY(void, WB_MakeMethodNotCompilable(JNIEnv* env, jobject o, jobject method)) |
240 WB_ENTRY(void, WB_MakeMethodNotCompilable(JNIEnv* env, jobject o, jobject method, jint comp_level)) |
241 jmethodID jmid = reflected_method_to_jmid(thread, env, method); |
241 jmethodID jmid = reflected_method_to_jmid(thread, env, method); |
242 methodHandle mh(THREAD, Method::checked_resolve_jmethod_id(jmid)); |
242 methodHandle mh(THREAD, Method::checked_resolve_jmethod_id(jmid)); |
243 mh->set_not_compilable(); |
243 mh->set_not_compilable(comp_level, true /* report */, "WhiteBox"); |
244 WB_END |
244 WB_END |
245 |
245 |
246 WB_ENTRY(jboolean, WB_TestSetDontInlineMethod(JNIEnv* env, jobject o, jobject method, jboolean value)) |
246 WB_ENTRY(jboolean, WB_TestSetDontInlineMethod(JNIEnv* env, jobject o, jobject method, jboolean value)) |
247 jmethodID jmid = reflected_method_to_jmid(thread, env, method); |
247 jmethodID jmid = reflected_method_to_jmid(thread, env, method); |
248 methodHandle mh(THREAD, Method::checked_resolve_jmethod_id(jmid)); |
248 methodHandle mh(THREAD, Method::checked_resolve_jmethod_id(jmid)); |
396 {CC"NMTUncommitMemory", CC"(JJ)V", (void*)&WB_NMTUncommitMemory }, |
396 {CC"NMTUncommitMemory", CC"(JJ)V", (void*)&WB_NMTUncommitMemory }, |
397 {CC"NMTReleaseMemory", CC"(JJ)V", (void*)&WB_NMTReleaseMemory }, |
397 {CC"NMTReleaseMemory", CC"(JJ)V", (void*)&WB_NMTReleaseMemory }, |
398 {CC"NMTWaitForDataMerge", CC"()Z", (void*)&WB_NMTWaitForDataMerge}, |
398 {CC"NMTWaitForDataMerge", CC"()Z", (void*)&WB_NMTWaitForDataMerge}, |
399 #endif // INCLUDE_NMT |
399 #endif // INCLUDE_NMT |
400 {CC"deoptimizeAll", CC"()V", (void*)&WB_DeoptimizeAll }, |
400 {CC"deoptimizeAll", CC"()V", (void*)&WB_DeoptimizeAll }, |
401 {CC"deoptimizeMethod", CC"(Ljava/lang/reflect/Method;)I", |
401 {CC"deoptimizeMethod", CC"(Ljava/lang/reflect/Executable;)I", |
402 (void*)&WB_DeoptimizeMethod }, |
402 (void*)&WB_DeoptimizeMethod }, |
403 {CC"isMethodCompiled", CC"(Ljava/lang/reflect/Method;)Z", |
403 {CC"isMethodCompiled", CC"(Ljava/lang/reflect/Executable;)Z", |
404 (void*)&WB_IsMethodCompiled }, |
404 (void*)&WB_IsMethodCompiled }, |
405 {CC"isMethodCompilable", CC"(Ljava/lang/reflect/Method;I)Z", |
405 {CC"isMethodCompilable", CC"(Ljava/lang/reflect/Executable;I)Z", |
406 (void*)&WB_IsMethodCompilable}, |
406 (void*)&WB_IsMethodCompilable}, |
407 {CC"isMethodQueuedForCompilation", |
407 {CC"isMethodQueuedForCompilation", |
408 CC"(Ljava/lang/reflect/Method;)Z", (void*)&WB_IsMethodQueuedForCompilation}, |
408 CC"(Ljava/lang/reflect/Executable;)Z", (void*)&WB_IsMethodQueuedForCompilation}, |
409 {CC"makeMethodNotCompilable", |
409 {CC"makeMethodNotCompilable", |
410 CC"(Ljava/lang/reflect/Method;)V", (void*)&WB_MakeMethodNotCompilable}, |
410 CC"(Ljava/lang/reflect/Executable;I)V", (void*)&WB_MakeMethodNotCompilable}, |
411 {CC"testSetDontInlineMethod", |
411 {CC"testSetDontInlineMethod", |
412 CC"(Ljava/lang/reflect/Method;Z)Z", (void*)&WB_TestSetDontInlineMethod}, |
412 CC"(Ljava/lang/reflect/Executable;Z)Z", (void*)&WB_TestSetDontInlineMethod}, |
413 {CC"getMethodCompilationLevel", |
413 {CC"getMethodCompilationLevel", |
414 CC"(Ljava/lang/reflect/Method;)I", (void*)&WB_GetMethodCompilationLevel}, |
414 CC"(Ljava/lang/reflect/Executable;)I", (void*)&WB_GetMethodCompilationLevel}, |
415 {CC"getCompileQueuesSize", |
415 {CC"getCompileQueuesSize", |
416 CC"()I", (void*)&WB_GetCompileQueuesSize}, |
416 CC"()I", (void*)&WB_GetCompileQueuesSize}, |
417 {CC"testSetForceInlineMethod", |
417 {CC"testSetForceInlineMethod", |
418 CC"(Ljava/lang/reflect/Method;Z)Z", (void*)&WB_TestSetForceInlineMethod}, |
418 CC"(Ljava/lang/reflect/Executable;Z)Z", (void*)&WB_TestSetForceInlineMethod}, |
419 {CC"enqueueMethodForCompilation", |
419 {CC"enqueueMethodForCompilation", |
420 CC"(Ljava/lang/reflect/Method;I)Z", (void*)&WB_EnqueueMethodForCompilation}, |
420 CC"(Ljava/lang/reflect/Executable;I)Z", (void*)&WB_EnqueueMethodForCompilation}, |
421 {CC"clearMethodState", |
421 {CC"clearMethodState", |
422 CC"(Ljava/lang/reflect/Method;)V", (void*)&WB_ClearMethodState}, |
422 CC"(Ljava/lang/reflect/Executable;)V", (void*)&WB_ClearMethodState}, |
423 {CC"isInStringTable", CC"(Ljava/lang/String;)Z", (void*)&WB_IsInStringTable }, |
423 {CC"isInStringTable", CC"(Ljava/lang/String;)Z", (void*)&WB_IsInStringTable }, |
424 {CC"fullGC", CC"()V", (void*)&WB_FullGC }, |
424 {CC"fullGC", CC"()V", (void*)&WB_FullGC }, |
425 }; |
425 }; |
426 |
426 |
427 #undef CC |
427 #undef CC |