diff -r f1879f6d7e63 -r ff9ac612c723 hotspot/src/os_cpu/bsd_x86/vm/os_bsd_x86.cpp --- a/hotspot/src/os_cpu/bsd_x86/vm/os_bsd_x86.cpp Wed May 04 17:47:05 2016 +0300 +++ b/hotspot/src/os_cpu/bsd_x86/vm/os_bsd_x86.cpp Wed May 04 15:32:26 2016 -0400 @@ -584,8 +584,7 @@ CodeBlob* cb = CodeCache::find_blob_unsafe(pc); CompiledMethod* nm = (cb != NULL) ? cb->as_compiled_method_or_null() : NULL; if (nm != NULL && nm->has_unsafe_access()) { - address next_pc = Assembler::locate_next_instruction(pc); - stub = SharedRuntime::handle_unsafe_access(thread, next_pc); + stub = StubRoutines::handler_for_unsafe_access(); } } else @@ -656,8 +655,7 @@ } else if (thread->thread_state() == _thread_in_vm && sig == SIGBUS && /* info->si_code == BUS_OBJERR && */ thread->doing_unsafe_access()) { - address next_pc = Assembler::locate_next_instruction(pc); - stub = SharedRuntime::handle_unsafe_access(thread, next_pc); + stub = StubRoutines::handler_for_unsafe_access(); } // jni_fast_GetField can trap at certain pc's if a GC kicks in