1 /* SPDX-License-Identifier: GPL-2.0-only */
2 #ifndef __ASM_GENERIC_DIV64
3 #define __ASM_GENERIC_DIV64
4 
5 #include <xen/types.h>
6 
7 #if BITS_PER_LONG == 64
8 
9 #define do_div(n, divisor) ({                   \
10     uint32_t divisor_ = (divisor);              \
11     uint32_t rem_ = (uint64_t)(n) % divisor_;   \
12     (n) = (uint64_t)(n) / divisor_;             \
13     rem_;                                       \
14 })
15 
16 #endif /* BITS_PER_LONG */
17 
18 #endif
19 
20 /*
21  * Local variables:
22  * mode: C
23  * c-file-style: "BSD"
24  * c-basic-offset: 4
25  * indent-tabs-mode: nil
26  * End:
27  */
28