Lines Matching refs:head
92 static void sift(unsigned char *head, size_t width, cmpfun cmp, void *arg, int pshift, size_t lp[])
98 ar[0] = head;
100 rt = head - width;
101 lf = head - width - lp[pshift - 2];
108 head = lf;
112 head = rt;
119 static void trinkle(unsigned char *head, size_t width, cmpfun cmp, void *arg, size_t pp[2], int pshift, int trusty, size_t lp[])
131 ar[0] = head;
133 stepson = head - lp[pshift];
138 rt = head - width;
139 lf = head - width - lp[pshift - 2];
146 head = stepson;
154 sift(head, width, cmp, arg, pshift, lp);
162 unsigned char *head, *high;
169 head = base;
170 high = head + size - width;
175 while(head < high) {
177 sift(head, width, cmp, arg, pshift, lp);
181 if(lp[pshift - 1] >= high - head) {
182 trinkle(head, width, cmp, arg, p, pshift, 0, lp);
184 sift(head, width, cmp, arg, pshift, lp);
197 head += width;
200 trinkle(head, width, cmp, arg, p, pshift, 0, lp);
212 trinkle(head - lp[pshift] - width, width, cmp, arg, p, pshift + 1, 1, lp);
215 trinkle(head - width, width, cmp, arg, p, pshift, 1, lp);
217 head -= width;