Lines Matching +full:high +full:- +full:bit
1 /* SPDX-License-Identifier: GPL-2.0 */
16 * - modifies the 64-bit dividend _in_place_
17 * - returns the 32-bit remainder
27 __mod = n & (__base - 1); \
64 * gcc tends to zero extend 32bit values and do full 64bit maths.
71 u32 high, low; in mul_u32_u32() local
73 asm ("mull %[b]" : "=a" (low), "=d" (high) in mul_u32_u32()
76 return low | ((u64)high) << 32; in mul_u32_u32()
82 u32 high = a >> 32, low = a; in add_u64_u32() local
84 asm ("addl %[b], %[low]; adcl $0, %[high]" in add_u64_u32()
85 : [low] "+r" (low), [high] "+r" (high) in add_u64_u32()
88 return low | (u64)high << 32; in add_u64_u32()
100 # include <asm-generic/div64.h>