Lines Matching refs:base
21 * @base: pointer to data
26 * The size must be a multiple of the alignment, and the base address must
33 static bool is_aligned(const void *base, size_t size, unsigned char align)
37 (void)base;
39 lsbits |= (unsigned char)(uintptr_t)base;
50 * Exchange the two objects in memory. This exploits base+index addressing,
73 * Exchange the two objects in memory. This exploits base+index
78 * one requires base+index+4 addressing which x86 has but most other
91 /* Use two 32-bit transfers to avoid base+index+4 addressing */
193 * @base: pointer to data to sort
210 void sort_r(void *base, size_t num, size_t size,
227 if (is_aligned(base, size, 8))
229 else if (is_aligned(base, size, 4))
248 do_swap(base, base + n, size, swap_func, priv);
265 b = do_cmp(base + c, base + d, cmp_func, priv) >= 0 ? c : d;
270 while (b != a && do_cmp(base + a, base + b, cmp_func, priv) >= 0)
275 do_swap(base + b, base + c, size, swap_func, priv);
281 void sort(void *base, size_t num, size_t size,
290 return sort_r(base, num, size, _CMP_WRAPPER, SWAP_WRAPPER, &w);