Lines Matching defs:cmp
46 void qsort(void *a, size_t n, size_t es, cmp_t *cmp);
85 med3(char *a, char *b, char *c, cmp_t *cmp)
87 return cmp(a, b) < 0 ?
88 (cmp(b, c) < 0 ? b : (cmp(a, c) < 0 ? c : a ))
89 :(cmp(b, c) > 0 ? b : (cmp(a, c) < 0 ? a : c ));
93 qsort(void *a, size_t n, size_t es, cmp_t *cmp)
103 for (pl = pm; pl > (char *)a && cmp(pl - es, pl) > 0;
114 pl = med3(pl, pl + d, pl + 2 * d, cmp);
115 pm = med3(pm - d, pm, pm + d, cmp);
116 pn = med3(pn - 2 * d, pn - d, pn, cmp);
118 pm = med3(pl, pm, pn, cmp);
125 while (pb <= pc && (r = cmp(pb, a)) <= 0) {
133 while (pb <= pc && (r = cmp(pc, a)) >= 0) {
150 for (pl = pm; pl > (char *)a && cmp(pl - es, pl) > 0;
162 qsort(a, r / es, es, cmp);
169 /* qsort(pn - r, r / es, es, cmp);*/