comparison src/share/vm/opto/runtime.cpp @ 1368:93767e6a2dfd

6941529: SharedRuntime::raw_exception_handler_for_return_address must reset thread MethodHandle flag Summary: During testing a bug was hit when an exception returned to the interpreter and the SP was wrong. Reviewed-by: kvn, never
author twisti
date Thu, 08 Apr 2010 10:55:40 +0200
parents 3cf667df43ef
children c18cbe5936b8
comparison
equal deleted inserted replaced
1367:9e321dcfa5b7 1368:93767e6a2dfd
863 thread->set_exception_pc(pc); 863 thread->set_exception_pc(pc);
864 thread->set_exception_handler_pc(handler_address); 864 thread->set_exception_handler_pc(handler_address);
865 thread->set_exception_stack_size(0); 865 thread->set_exception_stack_size(0);
866 866
867 // Check if the exception PC is a MethodHandle call site. 867 // Check if the exception PC is a MethodHandle call site.
868 thread->set_is_method_handle_exception(nm->is_method_handle_return(pc)); 868 thread->set_is_method_handle_return(nm->is_method_handle_return(pc));
869 } 869 }
870 870
871 // Restore correct return pc. Was saved above. 871 // Restore correct return pc. Was saved above.
872 thread->set_exception_oop(exception()); 872 thread->set_exception_oop(exception());
873 return handler_address; 873 return handler_address;