comparison src/share/vm/interpreter/interpreterRuntime.cpp @ 4825:20334ed5ed3c

7131259: compile_method and CompilationPolicy::event shouldn't be declared TRAPS Summary: Make sure that CompilationPolicy::event() doesn't throw exceptions Reviewed-by: kvn, never
author iveresov
date Thu, 26 Jan 2012 12:15:24 -0800
parents 12d38ffcba2a
children 33df1aeaebbf e2fe93124108
comparison
equal deleted inserted replaced
4824:5dbed2f542ff 4825:20334ed5ed3c
857 assert(fr.is_interpreted_frame(), "must come from interpreter"); 857 assert(fr.is_interpreted_frame(), "must come from interpreter");
858 methodHandle method(thread, fr.interpreter_frame_method()); 858 methodHandle method(thread, fr.interpreter_frame_method());
859 const int branch_bci = branch_bcp != NULL ? method->bci_from(branch_bcp) : InvocationEntryBci; 859 const int branch_bci = branch_bcp != NULL ? method->bci_from(branch_bcp) : InvocationEntryBci;
860 const int bci = branch_bcp != NULL ? method->bci_from(fr.interpreter_frame_bcp()) : InvocationEntryBci; 860 const int bci = branch_bcp != NULL ? method->bci_from(fr.interpreter_frame_bcp()) : InvocationEntryBci;
861 861
862 assert(!HAS_PENDING_EXCEPTION, "Should not have any exceptions pending");
862 nmethod* osr_nm = CompilationPolicy::policy()->event(method, method, branch_bci, bci, CompLevel_none, NULL, thread); 863 nmethod* osr_nm = CompilationPolicy::policy()->event(method, method, branch_bci, bci, CompLevel_none, NULL, thread);
864 assert(!HAS_PENDING_EXCEPTION, "Event handler should not throw any exceptions");
863 865
864 if (osr_nm != NULL) { 866 if (osr_nm != NULL) {
865 // We may need to do on-stack replacement which requires that no 867 // We may need to do on-stack replacement which requires that no
866 // monitors in the activation are biased because their 868 // monitors in the activation are biased because their
867 // BasicObjectLocks will need to migrate during OSR. Force 869 // BasicObjectLocks will need to migrate during OSR. Force