From a0e66873053c2ce57a493294584da48ae600cafd Mon Sep 17 00:00:00 2001 From: Yusuke Endoh Date: Wed, 13 Sep 2023 19:21:52 +0900 Subject: Use log2(b) instead of (log(b) / M_LN2) Co-Authored-By: Nobuyoshi Nakada --- math.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'math.c') diff --git a/math.c b/math.c index 24e52ba59c..6cef826812 100644 --- a/math.c +++ b/math.c @@ -538,6 +538,7 @@ math_log_split(VALUE x, size_t *numbits) # define log_intermediate log2 #else # define log_intermediate log10 +double log2(double x); #endif VALUE @@ -561,7 +562,7 @@ rb_math_log(int argc, const VALUE *argv) return DBL2NUM(-0.0); } d = log_intermediate(d) / log_intermediate(b); - d += (numbits - numbits_2) * M_LN2 / log(b); + d += (numbits - numbits_2) / log2(b); } else { /* check for pole error */ -- cgit v1.2.3