src/share/vm/ci/ciMethodHandle.cpp

changeset 2744
4124a5a27707
parent 2437
70427f06ea47
child 2898
e2a92dd0d3d2
equal deleted inserted replaced
2743:758ba0bf7bcc 2744:4124a5a27707
40 VM_ENTRY_MARK; 40 VM_ENTRY_MARK;
41 Handle h(get_oop()); 41 Handle h(get_oop());
42 methodHandle callee(_callee->get_methodOop()); 42 methodHandle callee(_callee->get_methodOop());
43 // We catch all exceptions here that could happen in the method 43 // We catch all exceptions here that could happen in the method
44 // handle compiler and stop the VM. 44 // handle compiler and stop the VM.
45 MethodHandleCompiler mhc(h, callee, is_invokedynamic, CATCH); 45 MethodHandleCompiler mhc(h, callee, is_invokedynamic, THREAD);
46 methodHandle m = mhc.compile(CATCH); 46 if (!HAS_PENDING_EXCEPTION) {
47 return CURRENT_ENV->get_object(m())->as_method(); 47 methodHandle m = mhc.compile(THREAD);
48 if (!HAS_PENDING_EXCEPTION) {
49 return CURRENT_ENV->get_object(m())->as_method();
50 }
51 }
52 if (PrintMiscellaneous && (Verbose || WizardMode)) {
53 tty->print("*** ciMethodHandle::get_adapter => ");
54 PENDING_EXCEPTION->print();
55 tty->print("*** get_adapter (%s): ", is_invokedynamic ? "indy" : "mh"); ((ciObject*)this)->print(); //@@
56 }
57 CLEAR_PENDING_EXCEPTION;
58 return NULL;
48 } 59 }
49 60
50 61
51 // ------------------------------------------------------------------ 62 // ------------------------------------------------------------------
52 // ciMethodHandle::print_impl 63 // ciMethodHandle::print_impl

mercurial