public static int previousClearBit(long v, int start) {
    if(start < 0) {
      return -1;
    }
    start = start < Long.SIZE ? start : Long.SIZE - 1;
    long cur = ~v & (LONG_ALL_BITS >>> -(start + 1));
    return cur == 0 ? -1 : 63 - Long.numberOfLeadingZeros(cur);
  }
public static int previousClearBit ( long v , int start ) { if ( start < 0 ) { return - 1 ; } start = start < Long . SIZE ? start : Long . SIZE - 1 ; long cur = ~ v & ( LONG_ALL_BITS > > > - ( start + 1 ) ) ; return cur == 0 ? - 1 : 63 - Long . numberOfLeadingZeros ( cur ) ; }
Find the previous clear bit.

@param v Values to process
@param start Start position (inclusive)
@return Position of previous clear bit, or -1.