< prev index next >
src/hotspot/cpu/x86/templateInterpreterGenerator_x86_32.cpp
Print this page
rev 48494 : 8195112: x86 (32 bit): implementation for Thread-local handshakes
Reviewed-by:
*** 59,72 ****
// rdx: scratch
// rdi: scratch
Label slow_path;
// If we need a safepoint check, generate full interpreter entry.
! ExternalAddress state(SafepointSynchronize::address_of_state());
! __ cmp32(ExternalAddress(SafepointSynchronize::address_of_state()),
! SafepointSynchronize::_not_synchronized);
! __ jcc(Assembler::notEqual, slow_path);
// We don't generate local frame and don't align stack because
// we call stub code and there is no safepoint on this path.
// Load parameters
--- 59,69 ----
// rdx: scratch
// rdi: scratch
Label slow_path;
// If we need a safepoint check, generate full interpreter entry.
! __ safepoint_poll(slow_path, noreg, rdi);
// We don't generate local frame and don't align stack because
// we call stub code and there is no safepoint on this path.
// Load parameters
*** 111,124 ****
// rdx: scratch
// rdi: scratch
Label slow_path;
// If we need a safepoint check, generate full interpreter entry.
! ExternalAddress state(SafepointSynchronize::address_of_state());
! __ cmp32(ExternalAddress(SafepointSynchronize::address_of_state()),
! SafepointSynchronize::_not_synchronized);
! __ jcc(Assembler::notEqual, slow_path);
// We don't generate local frame and don't align stack because
// we call stub code and there is no safepoint on this path.
// Load parameters
--- 108,118 ----
// rdx: scratch
// rdi: scratch
Label slow_path;
// If we need a safepoint check, generate full interpreter entry.
! __ safepoint_poll(slow_path, noreg, rdi);
// We don't generate local frame and don't align stack because
// we call stub code and there is no safepoint on this path.
// Load parameters
< prev index next >