>From 9ccffd30d2f3fbc5e35e5ce445834c53d1d2a4fa Mon Sep 17 00:00:00 2001
From: Sergei Poselenov <[EMAIL PROTECTED]>
Date: Wed, 29 Oct 2008 13:04:16 +0100
Subject: [PATCH] Added a do_div() wrapper macro, lldiv().
The new macro doesn't modify the dividend and returns the result of division,
so it is useful in complex expressions, i.e. "return(a/b)" ->
"return(lldiv(a,b))"
Signed-off-by: Sergei Poselenov <[EMAIL PROTECTED]>
---
include/div64.h | 8 ++++++++
1 files changed, 8 insertions(+), 0 deletions(-)
diff --git a/include/div64.h b/include/div64.h
index c495aef..df3f73b 100644
--- a/include/div64.h
+++ b/include/div64.h
@@ -36,4 +36,12 @@ extern uint32_t __div64_32(uint64_t *dividend, uint32_t
divisor);
__rem; \
})
+/* Wrapper for do_div()
+ */
+# define lldiv(a,b) ({ \
+ uint64_t __temp = (a); \
+ do_div(__temp, (b)); \
+ __temp; \
+ })
+
#endif /* _ASM_GENERIC_DIV64_H */
--
1.5.6.1
_______________________________________________
U-Boot mailing list
[email protected]
http://lists.denx.de/mailman/listinfo/u-boot