Lines Matching refs:es
94 size_t es;
151 #define SWAPINIT(a, es) swaptype = ((char *)a - (char *)0) % sizeof(long) || \
152 es % sizeof(long) ? 2 : es == sizeof(long)? 0 : 1;
171 swapfunc(a, b, es, swaptype)
212 _psort(void *a, size_t n, size_t es,
233 heapsort_b(a, n, es, cmp);
235 __heapsort_r(a, n, es, thunk, cmp);
237 heapsort(a, n, es, cmp);
241 SWAPINIT(a, es);
244 for (pm = (char *)a + es; pm < (char *)a + n * es; pm += es)
246 pl > (char *)a && CMP(thunk, pl - es, pl) > 0;
247 pl -= es)
248 swap(pl, pl - es);
251 pm = (char *)a + (n / 2) * es;
254 pn = (char *)a + (n - 1) * es;
256 d = (n / 8) * es;
264 pa = pb = (char *)a + es;
266 pc = pd = (char *)a + (n - 1) * es;
272 pa += es;
274 pb += es;
280 pd -= es;
282 pc -= es;
288 pb += es;
289 pc -= es;
292 pn = (char *)a + n * es;
295 r = min(pd - pc, pn - pd - es);
300 for (pm = (char *)a + es; pm < (char *)a + n * es; pm += es)
302 pl > (char *)a && CMP(thunk, pl - es, pl) > 0;
303 pl -= es) {
304 swap(pl, pl - es);
311 if ((r = pb - pa) > es) {
312 r /= es;
326 _psort(a, r, es, thunk, cmp, depth_limit, NULL);
328 _psort(a, r, es, cmp, depth_limit, NULL);
332 if ((r = pd - pc) > es) {
335 n = r / es;
338 /* psort(pn - r, r / es, es, cmp);*/
347 _psort(args->a, args->n, shared->es,
365 psort_r(void *a, size_t n, size_t es, void *thunk, cmp_t *cmp)
367 psort_b(void *a, size_t n, size_t es, cmp_t ^cmp)
369 psort(void *a, size_t n, size_t es, cmp_t *cmp)
389 shared.es = es;
424 qsort_r(a, n, es, thunk, cmp);
426 qsort_b(a, n, es, cmp);
428 qsort(a, n, es, cmp);