< prev index next >
src/hotspot/share/opto/callGenerator.cpp
Print this page
@@ -44,13 +44,21 @@
// Utility function.
const TypeFunc* CallGenerator::tf() const {
return TypeFunc::make(method());
}
-bool CallGenerator::is_inlined_method_handle_intrinsic(JVMState* jvms, ciMethod* callee) {
- ciMethod* symbolic_info = jvms->method()->get_method_at_bci(jvms->bci());
- return symbolic_info->is_method_handle_intrinsic() && !callee->is_method_handle_intrinsic();
+bool CallGenerator::is_inlined_method_handle_intrinsic(JVMState* jvms, ciMethod* m) {
+ return is_inlined_method_handle_intrinsic(jvms->method(), jvms->bci(), m);
+}
+
+bool CallGenerator::is_inlined_method_handle_intrinsic(ciMethod* caller, int bci, ciMethod* m) {
+ ciMethod* symbolic_info = caller->get_method_at_bci(bci);
+ return is_inlined_method_handle_intrinsic(symbolic_info, m);
+}
+
+bool CallGenerator::is_inlined_method_handle_intrinsic(ciMethod* symbolic_info, ciMethod* m) {
+ return symbolic_info->is_method_handle_intrinsic() && !m->is_method_handle_intrinsic();
}
//-----------------------------ParseGenerator---------------------------------
// Internal class which handles all direct bytecode traversal.
class ParseGenerator : public InlineCallGenerator {
< prev index next >