public void shiftRightDestructive(int bits, boolean roundUp) {
    this.mag.shiftRightDestructive(bits, roundUp);
    if (this.mag.isZero() && this.negative) {
      this.negative = false;
    }
  }
Right-shift for the given number of bits. This bit-shift is equivalent to
Java's signed bit shift "&gt;&gt;". This version is destructive, meaning it
modifies this object. NOTE: So far we don't provide an equivalent of the
unsigned right bit shift "&gt;&gt;&gt;" because we recommend to simply use
{@link UnsignedInt128} for unsigned use.

@param bits
         the number of bits. must be positive
@param roundUp
         whether to round up the most significant bit that was discarded
common/src/java/org/apache/hadoop/hive/common/type/SignedInt128.java