Lines Matching refs:half
36 saidx_t half, i;
37 for(i = 0, half = size >> 1;
39 size = half, half >>= 1) {
40 if(A[i + half] < value) {
41 i += half + 1;
42 half -= (size & 1) ^ 1;
263 saidx_t size, lsize, rsize, half;
275 for(i = j = k = 0, lmatch = rmatch = 0, size = SAsize, half = size >> 1;
277 size = half, half >>= 1) {
279 r = _compare(T, Tsize, P, Psize, SA[i + half], &match);
281 i += half + 1;
282 half -= (size & 1) ^ 1;
287 lsize = half, j = i, rsize = size - half - 1, k = i + half + 1;
290 for(llmatch = lmatch, lrmatch = match, half = lsize >> 1;
292 lsize = half, half >>= 1) {
294 r = _compare(T, Tsize, P, Psize, SA[j + half], &lmatch);
296 j += half + 1;
297 half -= (lsize & 1) ^ 1;
305 for(rlmatch = match, rrmatch = rmatch, half = rsize >> 1;
307 rsize = half, half >>= 1) {
309 r = _compare(T, Tsize, P, Psize, SA[k + half], &rmatch);
311 k += half + 1;
312 half -= (rsize & 1) ^ 1;
332 saidx_t size, lsize, rsize, half;
340 for(i = j = k = 0, size = SAsize, half = size >> 1;
342 size = half, half >>= 1) {
343 p = SA[i + half];
346 i += half + 1;
347 half -= (size & 1) ^ 1;
349 lsize = half, j = i, rsize = size - half - 1, k = i + half + 1;
352 for(half = lsize >> 1;
354 lsize = half, half >>= 1) {
355 p = SA[j + half];
358 j += half + 1;
359 half -= (lsize & 1) ^ 1;
364 for(half = rsize >> 1;
366 rsize = half, half >>= 1) {
367 p = SA[k + half];
370 k += half + 1;
371 half -= (rsize & 1) ^ 1;