public void shiftLeftDestructive(int bits) {
    this.mag.shiftLeftDestructive(bits);
    if (this.mag.getV3() < 0) {
      SqlMathUtil.throwOverflowException();
    }
    assert (this.mag.getV3() >= 0);
  }
Left-shift for the given number of bits. This bit-shift is equivalent to
Java's signed bit shift "&lt;&lt;". This method does not throw an error
even if overflow happens. This version is destructive, meaning it modifies
this object.

@param bits
         the number of bits. must be positive
common/src/java/org/apache/hadoop/hive/common/type/SignedInt128.java