diff -r 4a969f79e3e6 -r 44f076e3d2a4 hotspot/src/share/vm/opto/node.hpp --- a/hotspot/src/share/vm/opto/node.hpp Tue Sep 30 15:53:55 2008 -0700 +++ b/hotspot/src/share/vm/opto/node.hpp Thu Oct 02 08:37:44 2008 -0700 @@ -1320,7 +1320,8 @@ Node *pop() { if( _clock_index >= size() ) _clock_index = 0; Node *b = at(_clock_index); - map( _clock_index++, Node_List::pop()); + map( _clock_index, Node_List::pop()); + if (size() != 0) _clock_index++; // Always start from 0 _in_worklist >>= b->_idx; return b; }