Lines Matching refs:half
66 * mask(max) is 2 ** 64 - 1, and half is 2 ** 63.
68 * 0 half mask
70 * half range ( 2 ** 63 )
73 * in the "half range", normal integer comparison is enough.
75 * If the distance is bigger than half of the range, one of them must
81 * the distance will be in half range again.
84 * happen too often. If the distance is really bigger than half range,
85 * (1 is expected, but half + 2 arrives) we really don't know if it's a
93 uint64_t half;
103 half = 1 + (mask >> 1);
113 /* rule 2: in the same half range, normal comparison is enough */
114 if (diff < half)
117 n1 &= half;
119 /* rule 3: different half, and n1 is on upper, n2 is bigger */
120 /* rule 4: different half, and n1 is on lower, n1 is bigger */