void regularIncrement ( long e ) { int hash = spread ( Long . hashCode ( e ) ) ; int start = ( hash & 3 ) << 2 ; // Loop unrolling improves throughput by 5m ops/s int index0 = indexOf ( hash , 0 ) ; int index1 = indexOf ( hash , 1 ) ; int index2 = indexOf ( hash , 2 ) ; int index3 = indexOf ( hash , 3 ) ; boolean added = incrementAt ( index0 , start , step ) ; added |= incrementAt ( index1 , start + 1 , step ) ; added |= incrementAt ( index2 , start + 2 , step ) ; added |= incrementAt ( index3 , start + 3 , step ) ; tryReset ( added ) ; }
Increments all of the associated counters .