< prev index next >

src/os/solaris/vm/os_solaris.cpp

Print this page
rev 13069 : imported patch ClearFPUAtPark

*** 5101,5115 **** } guarantee(v >= 0, "invariant"); if (v == 0) { // Do this the hard way by blocking ... // See http://monaco.sfbay/detail.jsf?cr=5094058. - // TODO-FIXME: for Solaris SPARC set fprs.FEF=0 prior to parking. - // Only for SPARC >= V8PlusA - #if defined(__sparc) && defined(COMPILER2) - if (ClearFPUAtPark) { _mark_fpu_nosave(); } - #endif int status = os::Solaris::mutex_lock(_mutex); assert_status(status == 0, status, "mutex_lock"); guarantee(_nParked == 0, "invariant"); ++_nParked; while (_Event < 0) { --- 5101,5110 ----
*** 5148,5162 **** int ret = OS_TIMEOUT; timestruc_t abst; compute_abstime(&abst, millis); // See http://monaco.sfbay/detail.jsf?cr=5094058. - // For Solaris SPARC set fprs.FEF=0 prior to parking. - // Only for SPARC >= V8PlusA - #if defined(__sparc) && defined(COMPILER2) - if (ClearFPUAtPark) { _mark_fpu_nosave(); } - #endif int status = os::Solaris::mutex_lock(_mutex); assert_status(status == 0, status, "mutex_lock"); guarantee(_nParked == 0, "invariant"); ++_nParked; while (_Event < 0) { --- 5143,5152 ----
*** 5345,5360 **** jt->set_suspend_equivalent(); // cleared by handle_special_suspend_equivalent_condition() or java_suspend_self() // Do this the hard way by blocking ... // See http://monaco.sfbay/detail.jsf?cr=5094058. - // TODO-FIXME: for Solaris SPARC set fprs.FEF=0 prior to parking. - // Only for SPARC >= V8PlusA - #if defined(__sparc) && defined(COMPILER2) - if (ClearFPUAtPark) { _mark_fpu_nosave(); } - #endif - if (time == 0) { status = os::Solaris::cond_wait(_cond, _mutex); } else { status = os::Solaris::cond_timedwait (_cond, _mutex, &absTime); } --- 5335,5344 ----
< prev index next >