comparison src/share/vm/graal/graalCompilerToVM.cpp @ 12532:9b1cc2628961

Extend the CompilerToVM interface to explicitly avoid compilation and inlining of methods
author Matthias Grimmer <grimmer@ssw.jku.at>
date Wed, 23 Oct 2013 12:48:06 +0200
parents edacadae40a0
children e5c23a8f3dd8
comparison
equal deleted inserted replaced
12531:7d5c3ffbee64 12532:9b1cc2628961
639 if (id == NULL) { 639 if (id == NULL) {
640 fatal(err_msg("field not found: %s (%s)", name, sig)); 640 fatal(err_msg("field not found: %s (%s)", name, sig));
641 } 641 }
642 return id; 642 return id;
643 } 643 }
644
645 C2V_VMENTRY(void, dontInline,(JNIEnv *, jobject, jlong metaspace_method, jobject hotspot_method))
646 methodHandle method = asMethod(metaspace_method);
647 method->set_not_c1_compilable();
648 method->set_not_c2_compilable();
649 method->set_dont_inline(true);
650 C2V_END
644 651
645 C2V_ENTRY(void, initializeConfiguration, (JNIEnv *env, jobject, jobject config)) 652 C2V_ENTRY(void, initializeConfiguration, (JNIEnv *env, jobject, jobject config))
646 653
647 #define set_boolean(name, value) do { env->SetBooleanField(config, getFieldID(env, config, name, "Z"), value); } while (0) 654 #define set_boolean(name, value) do { env->SetBooleanField(config, getFieldID(env, config, name, "Z"), value); } while (0)
648 #define set_int(name, value) do { env->SetIntField(config, getFieldID(env, config, name, "I"), value); } while (0) 655 #define set_int(name, value) do { env->SetIntField(config, getFieldID(env, config, name, "I"), value); } while (0)
1194 {CC"hasBalancedMonitors", CC"("METASPACE_METHOD")Z", FN_PTR(hasBalancedMonitors)}, 1201 {CC"hasBalancedMonitors", CC"("METASPACE_METHOD")Z", FN_PTR(hasBalancedMonitors)},
1195 {CC"getUniqueConcreteMethod", CC"("METASPACE_METHOD"["HS_RESOLVED_TYPE")"METASPACE_METHOD, FN_PTR(getUniqueConcreteMethod)}, 1202 {CC"getUniqueConcreteMethod", CC"("METASPACE_METHOD"["HS_RESOLVED_TYPE")"METASPACE_METHOD, FN_PTR(getUniqueConcreteMethod)},
1196 {CC"getUniqueImplementor", CC"("HS_RESOLVED_TYPE")"RESOLVED_TYPE, FN_PTR(getUniqueImplementor)}, 1203 {CC"getUniqueImplementor", CC"("HS_RESOLVED_TYPE")"RESOLVED_TYPE, FN_PTR(getUniqueImplementor)},
1197 {CC"getStackTraceElement", CC"("METASPACE_METHOD"I)"STACK_TRACE_ELEMENT, FN_PTR(getStackTraceElement)}, 1204 {CC"getStackTraceElement", CC"("METASPACE_METHOD"I)"STACK_TRACE_ELEMENT, FN_PTR(getStackTraceElement)},
1198 {CC"initializeMethod", CC"("METASPACE_METHOD HS_RESOLVED_METHOD")V", FN_PTR(initializeMethod)}, 1205 {CC"initializeMethod", CC"("METASPACE_METHOD HS_RESOLVED_METHOD")V", FN_PTR(initializeMethod)},
1206 {CC"dontInline", CC"("METASPACE_METHOD HS_RESOLVED_METHOD")V", FN_PTR(dontInline)},
1199 {CC"initializeMethodData", CC"("METASPACE_METHOD_DATA METHOD_DATA")V", FN_PTR(initializeMethodData)}, 1207 {CC"initializeMethodData", CC"("METASPACE_METHOD_DATA METHOD_DATA")V", FN_PTR(initializeMethodData)},
1200 {CC"isMethodCompilable", CC"("METASPACE_METHOD")Z", FN_PTR(isMethodCompilable)}, 1208 {CC"isMethodCompilable", CC"("METASPACE_METHOD")Z", FN_PTR(isMethodCompilable)},
1201 {CC"getCompiledCodeSize", CC"("METASPACE_METHOD")I", FN_PTR(getCompiledCodeSize)}, 1209 {CC"getCompiledCodeSize", CC"("METASPACE_METHOD")I", FN_PTR(getCompiledCodeSize)},
1202 {CC"getVtableEntryOffset", CC"("METASPACE_METHOD")I", FN_PTR(getVtableEntryOffset)}, 1210 {CC"getVtableEntryOffset", CC"("METASPACE_METHOD")I", FN_PTR(getVtableEntryOffset)},
1203 {CC"hasVtableEntry", CC"("METASPACE_METHOD")Z", FN_PTR(hasVtableEntry)}, 1211 {CC"hasVtableEntry", CC"("METASPACE_METHOD")Z", FN_PTR(hasVtableEntry)},