From 864dc9f9c5b011d5fcfb050c29ba3affa0e82011 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Fri, 18 Oct 2019 12:55:18 -0400 Subject: [PATCH] No need for duplicate definition of mp_get_double --- include/cyclone/types.h | 1 - runtime.c | 18 ------------------ 2 files changed, 19 deletions(-) diff --git a/include/cyclone/types.h b/include/cyclone/types.h index 16e77856..5788618c 100644 --- a/include/cyclone/types.h +++ b/include/cyclone/types.h @@ -1444,7 +1444,6 @@ void **vpbuffer_add(void **buf, int *len, int i, void *obj); void vpbuffer_free(void **buf); /* Bignum utility functions */ -double mp_get_double(const mp_int *a); int Cyc_bignum_cmp(bn_cmp_type type, object x, int tx, object y, int ty); void Cyc_int2bignum(int n, mp_int *bn); diff --git a/runtime.c b/runtime.c index 412a6f86..77509f4b 100644 --- a/runtime.c +++ b/runtime.c @@ -1478,24 +1478,6 @@ object Cyc_num_cmp_va_list(void *data, int argc, return boolean_t; } -/** - * Convert from a bignum to a double - * Code is from: https://github.com/libtom/libtommath/issues/3 - */ -#define PRECISION 53 -double mp_get_double(const mp_int *a) -{ - int i; - double d = 0.0, fac = 1.0; - for (i = 0; i < DIGIT_BIT; ++i) { - fac *= 2.0; - } - for (i = a->used; i --> 0;) { - d = (d * fac) + (double)DIGIT(a, i); - } - return (a->sign == MP_NEG) ? -d : d; -} - // Convert a bignum back to fixnum if possible object Cyc_bignum_normalize(void *data, object n) {