--- old/src/share/vm/runtime/vframeArray.cpp 2010-02-15 19:36:20.646495656 +0100 +++ new/src/share/vm/runtime/vframeArray.cpp 2010-02-15 19:36:20.323858105 +0100 @@ -223,7 +223,7 @@ break; case Deoptimization::Unpack_exception: // exception is pending - pc = SharedRuntime::raw_exception_handler_for_return_address(pc); + pc = SharedRuntime::raw_exception_handler_for_return_address(thread, pc); // [phh] We're going to end up in some handler or other, so it doesn't // matter what mdp we point to. See exception_handler_for_exception() // in interpreterRuntime.cpp.