< prev index next >
src/cpu/zero/vm/cppInterpreter_zero.cpp
Print this page
rev 13142 : 8183198: Factor out thread state serialization into a proper helper function
Reviewed-by:
*** 376,393 ****
// here because it does not check for asynchronous exceptions.
// We have to manage the transition ourself.
thread->set_thread_state(_thread_in_native_trans);
// Make sure new state is visible in the GC thread
! if (os::is_MP()) {
! if (UseMembar) {
! OrderAccess::fence();
! }
! else {
! InterfaceSupport::serialize_memory(thread);
! }
! }
// Handle safepoint operations, pending suspend requests,
// and pending asynchronous exceptions.
if (SafepointSynchronize::do_call_back() ||
thread->has_special_condition_for_native_trans()) {
--- 376,386 ----
// here because it does not check for asynchronous exceptions.
// We have to manage the transition ourself.
thread->set_thread_state(_thread_in_native_trans);
// Make sure new state is visible in the GC thread
! InterfaceSupport::serialize_thread_state(thread);
// Handle safepoint operations, pending suspend requests,
// and pending asynchronous exceptions.
if (SafepointSynchronize::do_call_back() ||
thread->has_special_condition_for_native_trans()) {
< prev index next >