[BACK]Return to div64.h CVS log [TXT][DIR] Up to [Development] / linux-2.4-xfs / include / asm-ppc

File: [Development] / linux-2.4-xfs / include / asm-ppc / div64.h (download)

Revision 1.1, Wed Dec 31 00:54:49 2003 UTC (13 years, 9 months ago) by cattelan
Branch: MAIN
CVS Tags: HEAD

Initial Import 2.4.24pre2

#ifndef __PPC_DIV64
#define __PPC_DIV64

#include <linux/types.h>

extern u32 __div64_32(u64 *dividend, u32 div);

#define do_div(n, div)	({			\
	u64 __n = (n);				\
	u32 __d = (div);			\
	u32 __q, __r;				\
	if ((__n >> 32) == 0) {			\
		__q = (u32)__n / __d;		\
		__r = (u32)__n - __q * __d;	\
		(n) = __q;			\
	} else {				\
		__r = __div64_32(&__n, __d);	\
		(n) = __n;			\
	}					\
	__r;					\
})

#endif