Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros
div64.h File Reference
#include <linux/types.h>
#include <asm/compiler.h>

Go to the source code of this file.

Macros

#define __xl   "r0"
 
#define __xh   "r1"
 
#define __do_div_asm(n, base)
 
#define do_div(n, base)   __do_div_asm(n, base)
 

Macro Definition Documentation

#define __do_div_asm (   n,
  base 
)
Value:
({ \
register unsigned int __base asm("r4") = base; \
register unsigned long long __n asm("r0") = n; \
register unsigned long long __res asm("r2"); \
register unsigned int __rem asm(__xh); \
asm( __asmeq("%0", __xh) \
__asmeq("%1", "r2") \
__asmeq("%2", "r0") \
__asmeq("%3", "r4") \
"bl __do_div64" \
: "=r" (__rem), "=r" (__res) \
: "r" (__n), "r" (__base) \
: "ip", "lr", "cc"); \
n = __res; \
__rem; \
})

Definition at line 31 of file div64.h.

#define __xh   "r1"

Definition at line 28 of file div64.h.

#define __xl   "r0"

Definition at line 27 of file div64.h.

#define do_div (   n,
  base 
)    __do_div_asm(n, base)

Definition at line 59 of file div64.h.