Linux 6.13-rc4
[linux.git] / arch / sh / lib / div64-generic.c
blob0b67fbc44f6fefb59790b1f43cccc706ec6cf77e
1 // SPDX-License-Identifier: GPL-2.0
2 /*
3 * Generic __div64_32 wrapper for __xdiv64_32.
4 */
6 #include <linux/types.h>
7 #include <asm/div64.h>
9 extern uint64_t __xdiv64_32(u64 n, u32 d);
11 uint32_t __div64_32(u64 *xp, u32 y)
13 uint32_t rem;
14 uint64_t q = __xdiv64_32(*xp, y);
16 rem = *xp - q * y;
17 *xp = q;
19 return rem;