#define ASORT_PREFIX(x) SORT_PREFIX(array_##x)
#define ASORT_KEY_TYPE P(key)
#define ASORT_LT(x,y) (P(compare)(&(x), &(y)) < 0)
-#define ASORT_PAGE_ALIGNED
+#ifdef SORT_INTERNAL_RADIX
+# define ASORT_HASH(x) P(hash)(&(x))
+# ifdef SORT_LONG_HASH
+# define ASORT_LONG_HASH
+# endif
+#endif
#include "lib/sorter/array.h"
/*
#ifdef SORT_UNIFY
workspace = sizeof(P(key) *);
#endif
-#ifdef SORT_HASH_BITS // FIXME: Another switch?
+#ifdef SORT_INTERNAL_RADIX
workspace = MAX(workspace, sizeof(P(key)));
#endif
return workspace;
timestamp_t timer;
init_timer(&timer);
buf = P(array_sort)(buf, n,
-#ifdef SORT_HASH_BITS
+#ifdef SORT_INTERNAL_RADIX
workspace, bin->hash_bits
#else
NULL, 0