764 return method->is_ignored_by_security_stack_walk(); |
764 return method->is_ignored_by_security_stack_walk(); |
765 C2V_END |
765 C2V_END |
766 |
766 |
767 C2V_VMENTRY(jboolean, isCompilable,(JNIEnv *, jobject, jobject jvmci_method)) |
767 C2V_VMENTRY(jboolean, isCompilable,(JNIEnv *, jobject, jobject jvmci_method)) |
768 methodHandle method = CompilerToVM::asMethod(jvmci_method); |
768 methodHandle method = CompilerToVM::asMethod(jvmci_method); |
769 // Skip redefined methods |
769 constantPoolHandle cp = method->constMethod()->constants(); |
770 if (method->is_old()) { |
770 assert(!cp.is_null(), "npe"); |
771 return false; |
771 // don't inline method when constant pool contains a CONSTANT_Dynamic |
772 } |
772 return !method->is_not_compilable(CompLevel_full_optimization) && !cp->has_dynamic_constant(); |
773 return !method->is_not_compilable(CompLevel_full_optimization); |
|
774 C2V_END |
773 C2V_END |
775 |
774 |
776 C2V_VMENTRY(jboolean, hasNeverInlineDirective,(JNIEnv *, jobject, jobject jvmci_method)) |
775 C2V_VMENTRY(jboolean, hasNeverInlineDirective,(JNIEnv *, jobject, jobject jvmci_method)) |
777 methodHandle method = CompilerToVM::asMethod(jvmci_method); |
776 methodHandle method = CompilerToVM::asMethod(jvmci_method); |
778 return !Inline || CompilerOracle::should_not_inline(method) || method->dont_inline(); |
777 return !Inline || CompilerOracle::should_not_inline(method) || method->dont_inline(); |