2 * This file is subject to the terms and conditions of the GNU General Public
3 * License. See the file "COPYING" in the main directory of this archive
10 * Don't use this one in new code
12 #define do_div64_32(res, high, low, base) ({ \
13 unsigned int __quot, __mod; \
14 unsigned long __div; \
15 unsigned int __low, __high, __base; \
20 __div = __div << 32 | __low; \
23 __mod = __div % __base; \
24 __div = __div / __base; \
31 * Hey, we're already 64-bit, no
32 * need to play games..
34 #define do_div(n, base) ({ \
35 unsigned long __quot; \
37 unsigned long __div; \
38 unsigned int __base; \
43 __mod = __div % __base; \
44 __quot = __div / __base; \
49 #endif /* _ASM_DIV64_H */