diff options
author | Paul Sokolovsky <pfalcon@users.sourceforge.net> | 2015-11-13 13:24:39 +0200 |
---|---|---|
committer | Paul Sokolovsky <pfalcon@users.sourceforge.net> | 2015-11-13 15:24:48 +0200 |
commit | 6d1eabfeaa44cab32a6ea37d3c041a9b06ac5798 (patch) | |
tree | ca4bd99d9855abb28359d599c9a8d96bf7693586 | |
parent | 432e8275a9b383ba7f33b4a582d6dde0e1a1e35d (diff) | |
download | micropython-6d1eabfeaa44cab32a6ea37d3c041a9b06ac5798.tar.gz micropython-6d1eabfeaa44cab32a6ea37d3c041a9b06ac5798.zip |
unix/mpconfigport: Move log2() definition to modmath.c.
It's safer to define it where it's used, defining it for all source files
may lead to hard to diagnose conflicts in corner cases.
-rw-r--r-- | py/modmath.c | 5 | ||||
-rw-r--r-- | unix/mpconfigport.h | 3 |
2 files changed, 6 insertions, 2 deletions
diff --git a/py/modmath.c b/py/modmath.c index ec74e974e8..48ba470582 100644 --- a/py/modmath.c +++ b/py/modmath.c @@ -52,6 +52,11 @@ STATIC mp_obj_t mp_math_ ## py_name(mp_obj_t x_obj) { mp_int_t x = MICROPY_FLOAT_C_FUN(c_name)(mp_obj_get_float(x_obj)); return mp_obj_new_int(x); } \ STATIC MP_DEFINE_CONST_FUN_OBJ_1(mp_math_## py_name ## _obj, mp_math_ ## py_name); +#if MP_NEED_LOG2 +// 1.442695040888963407354163704 is 1/_M_LN2 +#define log2(x) (log(x) * 1.442695040888963407354163704) +#endif + /// \function sqrt(x) /// Returns the square root of `x`. MATH_FUN_1(sqrt, sqrt) diff --git a/unix/mpconfigport.h b/unix/mpconfigport.h index 0e1fb6a401..4dbb8ee2e3 100644 --- a/unix/mpconfigport.h +++ b/unix/mpconfigport.h @@ -204,8 +204,7 @@ void mp_unix_mark_exec(void); #include <android/api-level.h> #if __ANDROID_API__ < 4 // Bionic libc in Android 1.5 misses these 2 functions -// 1.442695040888963407354163704 is 1/_M_LN2 -#define log2(x) (log(x) * 1.442695040888963407354163704) +#define MP_NEED_LOG2 (1) #define nan(x) NAN #endif #endif |