Lines Matching full:merge
12 * to chaining of merge() calls: null-terminated, no reserved or
16 static struct list_head *merge(void *priv, list_cmp_func_t cmp, in merge() function
45 * Combine final list merge with restoration of standard doubly-linked
46 * list structure. This approach duplicates code from merge(), but
83 * If the merge is highly unbalanced (e.g. the input is in merge_final()
144 * for each bit, when count increments to 2^k), we merge two lists of
147 * This merge happens exactly when the count reaches an odd multiple of
149 * so it's safe to merge away two lists of size 2^k.
170 * (merge and loop back to state 2)
174 * merge them away in the 5->2 transition. Note in particular that just
178 * When we reach the end of the input, we merge all the pending
180 * 5 above, you can see that the number of elements we merge with a list
182 * 2^(k+1) - 1 (second merge of case 5 when x == 2^(k-1) - 1).
208 * That ensures each later final merge will be at worst 2:1. in list_sort()
221 /* Do the indicated merge */ in list_sort()
225 a = merge(priv, cmp, b, a); in list_sort()
239 /* End of input; merge together all the pending lists. */ in list_sort()
247 list = merge(priv, cmp, pending, list); in list_sort()
250 /* The final merge, rebuilding prev links */ in list_sort()