< prev index next >
src/hotspot/os_cpu/linux_sparc/os_linux_sparc.cpp
Print this page
rev 52430 : 8213199: GC abstraction for Assembler::needs_explicit_null_check()
*** 414,426 ****
return true;
}
return false;
}
! inline static bool checkNullPointer(address pc, intptr_t fault,
JavaThread* thread, address* stub) {
! if (!MacroAssembler::needs_explicit_null_check(fault)) {
// Determination of interpreter/vtable stub/compiled code null
// exception
*stub =
SharedRuntime::
continuation_for_implicit_exception(thread, pc,
--- 414,426 ----
return true;
}
return false;
}
! inline static bool checkNullPointer(address pc, void* fault,
JavaThread* thread, address* stub) {
! if (MacroAssembler::uses_implicit_null_check(fault)) {
// Determination of interpreter/vtable stub/compiled code null
// exception
*stub =
SharedRuntime::
continuation_for_implicit_exception(thread, pc,
*** 598,608 ****
if ((sig == SIGFPE) && checkFPFault(pc, info->si_code, thread, &stub)) {
break;
}
if ((sig == SIGSEGV) &&
! checkNullPointer(pc, (intptr_t)info->si_addr, thread, &stub)) {
break;
}
} while (0);
// jni_fast_Get<Primitive>Field can trap at certain pc's if a GC kicks in
--- 598,608 ----
if ((sig == SIGFPE) && checkFPFault(pc, info->si_code, thread, &stub)) {
break;
}
if ((sig == SIGSEGV) &&
! checkNullPointer(pc, info->si_addr, thread, &stub)) {
break;
}
} while (0);
// jni_fast_Get<Primitive>Field can trap at certain pc's if a GC kicks in
< prev index next >