comparison src/share/vm/interpreter/interpreterRuntime.cpp @ 7469:0c8717a92b2d

8001341: SIGSEGV in methodOopDesc::fast_exception_handler_bci_for(KlassHandle,int,Thread*)+0x3e9. Summary: Use methodHandle. Reviewed-by: coleenp, acorn, twisti, sspitsyn
author jiangli
date Tue, 08 Jan 2013 13:01:19 -0500
parents cd3d6a6b95d9
children 989155e2d07a cc32ccaaf47f aeaca88565e6
comparison
equal deleted inserted replaced
7468:608b2e8a0063 7469:0c8717a92b2d
415 // for AbortVMOnException flag 415 // for AbortVMOnException flag
416 NOT_PRODUCT(Exceptions::debug_check_abort(h_exception)); 416 NOT_PRODUCT(Exceptions::debug_check_abort(h_exception));
417 417
418 // exception handler lookup 418 // exception handler lookup
419 KlassHandle h_klass(THREAD, h_exception->klass()); 419 KlassHandle h_klass(THREAD, h_exception->klass());
420 handler_bci = h_method->fast_exception_handler_bci_for(h_klass, current_bci, THREAD); 420 handler_bci = Method::fast_exception_handler_bci_for(h_method, h_klass, current_bci, THREAD);
421 if (HAS_PENDING_EXCEPTION) { 421 if (HAS_PENDING_EXCEPTION) {
422 // We threw an exception while trying to find the exception handler. 422 // We threw an exception while trying to find the exception handler.
423 // Transfer the new exception to the exception handle which will 423 // Transfer the new exception to the exception handle which will
424 // be set into thread local storage, and do another lookup for an 424 // be set into thread local storage, and do another lookup for an
425 // exception handler for this exception, this time starting at the 425 // exception handler for this exception, this time starting at the