1.1 --- a/src/share/vm/utilities/taskqueue.hpp Wed Oct 07 10:09:57 2009 -0400 1.2 +++ b/src/share/vm/utilities/taskqueue.hpp Wed Oct 07 09:48:42 2009 -0400 1.3 @@ -207,7 +207,7 @@ 1.4 // Actually means 0, so do the push. 1.5 uint localBot = _bottom; 1.6 _elems[localBot] = t; 1.7 - _bottom = increment_index(localBot); 1.8 + OrderAccess::release_store(&_bottom, increment_index(localBot)); 1.9 return true; 1.10 } 1.11 return false; 1.12 @@ -485,7 +485,7 @@ 1.13 assert((dirty_n_elems >= 0) && (dirty_n_elems < N), "n_elems out of range."); 1.14 if (dirty_n_elems < max_elems()) { 1.15 _elems[localBot] = t; 1.16 - _bottom = increment_index(localBot); 1.17 + OrderAccess::release_store(&_bottom, increment_index(localBot)); 1.18 return true; 1.19 } else { 1.20 return push_slow(t, dirty_n_elems);