From 259967238423f2b11479dadbab6eae77cd038096 Mon Sep 17 00:00:00 2001 From: Damien George Date: Tue, 29 Mar 2016 22:12:07 +0100 Subject: [PATCH] py/parsenum: Use pow function to apply exponent to decimal number. Pow is already a dependency when compiling with floats, so may as well use it here to reduce code size and speed up the conversion for most cases. --- py/parsenum.c | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/py/parsenum.c b/py/parsenum.c index 0915098d6..83a6abd20 100644 --- a/py/parsenum.c +++ b/py/parsenum.c @@ -263,12 +263,7 @@ mp_obj_t mp_parse_num_decimal(const char *str, size_t len, bool allow_imag, bool } // apply the exponent - for (; exp_val > 0; exp_val--) { - dec_val *= 10; - } - for (; exp_val < 0; exp_val++) { - dec_val *= 0.1; - } + dec_val *= MICROPY_FLOAT_C_FUN(pow)(10, exp_val); } // negate value if needed