Lines Matching defs:shift
23 // Z := X << shift
24 // Z and X may alias for an in-place shift.
25 void LeftShift(RWDigits Z, Digits X, int shift) {
26 DCHECK(shift >= 0);
27 DCHECK(shift < kDigitBits);
29 if (shift == 0) return Copy(Z, X);
34 Z[i] = (d << shift) | carry;
35 carry = d >> (kDigitBits - shift);
45 // Z := X >> shift
46 // Z and X may alias for an in-place shift.
47 void RightShift(RWDigits Z, Digits X, int shift) {
48 DCHECK(shift >= 0);
49 DCHECK(shift < kDigitBits);
52 if (shift == 0) return Copy(Z, X);
55 digit_t carry = X[0] >> shift;
59 Z[i] = (d << (kDigitBits - shift)) | carry;
60 carry = d >> shift;