/* * A fast, small, non-recursive O(nlog n) sort for the Linux kernel * * Jan 23 2005 Matt Mackall */ #include #include "sort.h" /* a simple boot-time regression test */ static int cmpint(const void *a, const void *b) { return *(int *)a - *(int *)b; } int main(void) { int a[1000]; int i, r = 1; for (i = 0; i < 1000; i++) { r = (r * 725861) % 6599; a[i] = r; } sort(a, 1000, sizeof(int), cmpint, NULL); for (i = 0; i < 999; i++) if (a[i] > a[i+1]) { fprintf(stderr, "sort() failed, %d>%d!\n", a[i], a[i+1]); break; } return 0; }