Lines Matching refs:size

67 static void setup(u_char *list1, u_char *list2, size_t n, size_t size, int (*cmp)(const void *, con…
68 static void insertionsort(u_char *a, size_t n, size_t size, int (*cmp)(const void *, const void *));
103 PHPAPI int php_mergesort(void *base, size_t nmemb, size_t size, int (*cmp)(const void *, const void… in php_mergesort() argument
111 if (size < PSIZE / 2) { /* Pointers must fit into 2 * size. */ in php_mergesort()
124 if (!(size % ISIZE) && !(((char *)base - (char *)0) % ISIZE)) in php_mergesort()
127 if ((list2 = malloc(nmemb * size + PSIZE)) == NULL) in php_mergesort()
131 setup(list1, list2, nmemb, size, cmp); in php_mergesort()
132 last = list2 + nmemb * size; in php_mergesort()
155 while ((b += size) < t && cmp(q, b) >sense) in php_mergesort()
161 EXPONENTIAL: for (i = size; ; i <<= 1) in php_mergesort()
163 if ((p = t - size) > b && in php_mergesort()
171 if (i == size) in php_mergesort()
176 while (t > b+size) { in php_mergesort()
177 i = (((t - b) / size) >> 1) * size; in php_mergesort()
184 FASTCASE: while (i > size) in php_mergesort()
192 i = size; in php_mergesort()
227 last = list2 + nmemb*size; in php_mergesort()
230 memmove(list2, list1, nmemb*size); in php_mergesort()
240 i = size; \
244 a -= size; \
249 i = size; \
263 static void setup(u_char *list1, u_char *list2, size_t n, size_t size, int (*cmp)(const void *, con… in setup() argument
268 size2 = size*2; in setup()
270 insertionsort(list1, n, size, cmp); in setup()
271 *EVAL(list2) = (u_char*) list2 + n*size; in setup()
279 insertionsort(list1 + (n - i) * size, i, size, cmp); in setup()
280 last = list1 + size * (n - i); in setup()
281 *EVAL(list2 + (last - list1)) = list2 + n * size; in setup()
286 sense = (cmp(f1, f1 + size) > 0); in setup()
291 if ((cmp(f2, f2+ size) > 0) != sense) in setup()
299 swap (f1, f1 + size); in setup()
304 if ((cmp(f2-size, f2) > 0) != sense) { in setup()
307 reverse(f1, f2-size); in setup()
312 reverse (f1, f2-size); in setup()
314 if (f2 < last || cmp(f2 - size, f2) > 0) in setup()
317 p2 = *EVAL(p2) = list2 + n*size; in setup()
323 if (cmp (f1, f1 + size) > 0) in setup()
324 swap(f1, f1 + size); in setup()
334 static void insertionsort(u_char *a, size_t n, size_t size, int (*cmp)(const void *, const void *)) in insertionsort() argument
339 for (ai = a+size; --n >= 1; ai += size) in insertionsort()
340 for (t = ai; t > a; t -= size) { in insertionsort()
341 u = t - size; in insertionsort()