diff src/share/vm/graal/graalCompilerToVM.cpp @ 8527:8a526d8b4604

Always clear 'queued for compilation' flag at the end of a compilation task
author Gilles Duboscq <duboscq@ssw.jku.at>
date Wed, 27 Mar 2013 14:35:10 +0100
parents 3a105dec912f
children cd9e8dd9f488
line wrap: on
line diff
--- a/src/share/vm/graal/graalCompilerToVM.cpp	Wed Mar 27 14:20:07 2013 +0100
+++ b/src/share/vm/graal/graalCompilerToVM.cpp	Wed Mar 27 14:35:10 2013 +0100
@@ -839,6 +839,11 @@
   return result;
 C2V_END
 
+C2V_VMENTRY(void, clearQueuedForCompilation, (JNIEnv *jniEnv, jobject, jobject resolvedMethod))
+  methodHandle method = getMethodFromHotSpotMethod(JNIHandles::resolve(resolvedMethod));
+  method->clear_queued_for_compilation();
+C2V_END
+
 C2V_VMENTRY(jobject, getCode, (JNIEnv *jniEnv, jobject,  jlong metaspace_nmethod))
   ResourceMark rm;
   HandleMark hm;
@@ -1100,6 +1105,7 @@
   {CC"getLineNumberTable",            CC"("HS_RESOLVED_METHOD")[J",                                     FN_PTR(getLineNumberTable)},
   {CC"getLocalVariableTable",         CC"("HS_RESOLVED_METHOD")["LOCAL,                                 FN_PTR(getLocalVariableTable)},
   {CC"getFileName",                   CC"("HS_RESOLVED_JAVA_TYPE")"STRING,                              FN_PTR(getFileName)},
+  {CC"clearQueuedForCompilation",     CC"("HS_RESOLVED_METHOD")V",                                      FN_PTR(clearQueuedForCompilation)},
 };
 
 int CompilerToVM_methods_count() {