Lines Matching refs:vli
122 static void vli_clear(u64 *vli, unsigned int ndigits)
127 vli[i] = 0;
130 /* Returns true if vli == 0, false otherwise. */
131 bool vli_is_zero(const u64 *vli, unsigned int ndigits)
136 if (vli[i])
144 /* Returns nonzero if bit of vli is set. */
145 static u64 vli_test_bit(const u64 *vli, unsigned int bit)
147 return (vli[bit / 64] & ((u64)1 << (bit % 64)));
150 static bool vli_is_negative(const u64 *vli, unsigned int ndigits)
152 return vli_test_bit(vli, ndigits * 64 - 1);
155 /* Counts the number of 64-bit "digits" in vli. */
156 static unsigned int vli_num_digits(const u64 *vli, unsigned int ndigits)
164 for (i = ndigits - 1; i >= 0 && vli[i] == 0; i--);
169 /* Counts the number of bits required for vli. */
170 unsigned int vli_num_bits(const u64 *vli, unsigned int ndigits)
175 num_digits = vli_num_digits(vli, ndigits);
179 digit = vli[num_digits - 1];
252 /* Computes vli = vli >> 1. */
253 static void vli_rshift1(u64 *vli, unsigned int ndigits)
255 u64 *end = vli;
258 vli += ndigits;
260 while (vli-- > end) {
261 u64 temp = *vli;
262 *vli = (temp >> 1) | carry;
985 #define EVEN(vli) (!(vli[0] & 1))