Add a do_div() wrapper macro, lldiv().
Add a do_div() wrapper, lldiv(). The new inline function 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 <sposelenov@emcraft.com>
This commit is contained in:
parent
6dadc9195a
commit
3feb647f3f
|
@ -36,4 +36,14 @@ extern uint32_t __div64_32(uint64_t *dividend, uint32_t divisor);
|
||||||
__rem; \
|
__rem; \
|
||||||
})
|
})
|
||||||
|
|
||||||
|
/* Wrapper for do_div(). Doesn't modify dividend and returns
|
||||||
|
* the result, not reminder.
|
||||||
|
*/
|
||||||
|
static inline uint64_t lldiv(uint64_t dividend, uint32_t divisor)
|
||||||
|
{
|
||||||
|
uint64_t __res = dividend;
|
||||||
|
do_div(__res, divisor);
|
||||||
|
return(__res);
|
||||||
|
}
|
||||||
|
|
||||||
#endif /* _ASM_GENERIC_DIV64_H */
|
#endif /* _ASM_GENERIC_DIV64_H */
|
||||||
|
|
Loading…
Reference in New Issue