Make muldiv() inline instead of a #define, too.
This commit is contained in:
parent
d49c0745d5
commit
e0959f7ce2
13
dda_maths.h
13
dda_maths.h
|
|
@ -6,13 +6,18 @@
|
|||
#include "config.h"
|
||||
|
||||
// return rounded result of multiplicand * multiplier / divisor
|
||||
#define muldiv(multiplicand, multiplier, divisor) \
|
||||
muldivQR(multiplicand, multiplier / divisor, multiplier % divisor, divisor)
|
||||
|
||||
// same as before, but with quotient and remainder precalculated elsewhere
|
||||
// this version is with quotient and remainder precalculated elsewhere
|
||||
const int32_t muldivQR(int32_t multiplicand, uint32_t qn, uint32_t rn,
|
||||
uint32_t divisor);
|
||||
|
||||
// return rounded result of multiplicand * multiplier / divisor
|
||||
static int32_t muldiv(int32_t, uint32_t, uint32_t) __attribute__ ((always_inline));
|
||||
inline int32_t muldiv(int32_t multiplicand, uint32_t multiplier,
|
||||
uint32_t divisor) {
|
||||
return muldivQR(multiplicand, multiplier / divisor,
|
||||
multiplier % divisor, divisor);
|
||||
}
|
||||
|
||||
/*
|
||||
micrometer distance <=> motor step distance conversions
|
||||
*/
|
||||
|
|
|
|||
Loading…
Reference in New Issue