From d35bc4114b971545e22985ed82bc290aaa7e675f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zsolt=20Borb=C3=A9ly?= Date: Wed, 10 Feb 2016 08:51:23 +0100 Subject: [PATCH] Remove unused functions from ecma-helpers-number. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit JerryScript-DCO-1.0-Signed-off-by: Zsolt Borbély zsborbely.u-szeged@partner.samsung.com --- jerry-core/ecma/base/ecma-helpers-number.cpp | 174 ------------------- jerry-core/ecma/base/ecma-helpers.h | 4 - 2 files changed, 178 deletions(-) diff --git a/jerry-core/ecma/base/ecma-helpers-number.cpp b/jerry-core/ecma/base/ecma-helpers-number.cpp index 8b7d1a340..2160d9998 100644 --- a/jerry-core/ecma/base/ecma-helpers-number.cpp +++ b/jerry-core/ecma/base/ecma-helpers-number.cpp @@ -742,180 +742,6 @@ ecma_number_divide (ecma_number_t left_num, /**< left operand */ return left_num / right_num; } /* ecma_number_divide */ -/** - * Helper for calculating absolute value - * - * Warning: - * argument should be valid number - * - * @return absolute value of the argument - */ -ecma_number_t -ecma_number_abs (ecma_number_t num) /**< valid number */ -{ - JERRY_ASSERT (!ecma_number_is_nan (num)); - - if (num < 0) - { - return ecma_number_negate (num); - } - else - { - return num; - } -} /* ecma_number_abs */ - -/** - * Helper for calculating square root using Newton's method. - * - * @return square root of specified number - */ -ecma_number_t -ecma_number_sqrt (ecma_number_t num) /**< valid finite - positive number */ -{ - JERRY_ASSERT (!ecma_number_is_nan (num)); - JERRY_ASSERT (!ecma_number_is_infinity (num)); - JERRY_ASSERT (!ecma_number_is_negative (num)); - - ecma_number_t x = ECMA_NUMBER_ONE; - ecma_number_t diff = ecma_number_make_infinity (false); - - while (ecma_number_divide (diff, x) > ecma_number_relative_eps) - { - ecma_number_t x_next = ecma_number_multiply (ECMA_NUMBER_HALF, - (ecma_number_add (x, - ecma_number_divide (num, x)))); - - diff = ecma_number_substract (x, x_next); - if (diff < 0) - { - diff = ecma_number_negate (diff); - } - - x = x_next; - } - - return x; -} /* ecma_number_sqrt */ - -/** - * Helper for calculating natural logarithm. - * - * @return natural logarithm of specified number - */ -ecma_number_t -ecma_number_ln (ecma_number_t num) /**< valid finite - positive number */ -{ - JERRY_ASSERT (!ecma_number_is_nan (num)); - JERRY_ASSERT (!ecma_number_is_infinity (num)); - JERRY_ASSERT (!ecma_number_is_negative (num)); - - if (num == ECMA_NUMBER_ONE) - { - return ECMA_NUMBER_ZERO; - } - - /* Taylor series of ln (1 + x) around x = 0 is x - x^2/2 + x^3/3 - x^4/4 + ... */ - - ecma_number_t x = num; - ecma_number_t multiplier = ECMA_NUMBER_ONE; - - while (ecma_number_abs (ecma_number_substract (x, - ECMA_NUMBER_ONE)) > ECMA_NUMBER_HALF) - { - x = ecma_number_sqrt (x); - multiplier = ecma_number_multiply (multiplier, ECMA_NUMBER_TWO); - } - - x = ecma_number_substract (x, ECMA_NUMBER_ONE); - - ecma_number_t sum = ECMA_NUMBER_ZERO; - ecma_number_t next_power = x; - ecma_number_t next_divisor = ECMA_NUMBER_ONE; - - ecma_number_t diff; - - do - { - ecma_number_t next_sum = ecma_number_add (sum, - ecma_number_divide (next_power, - next_divisor)); - - next_divisor = ecma_number_add (next_divisor, ECMA_NUMBER_ONE); - next_power = ecma_number_multiply (next_power, x); - next_power = ecma_number_negate (next_power); - - diff = ecma_number_abs (ecma_number_substract (sum, next_sum)); - - sum = next_sum; - } - while (ecma_number_abs (ecma_number_divide (diff, - sum)) > ecma_number_relative_eps); - - sum = ecma_number_multiply (sum, multiplier); - - return sum; -} /* ecma_number_ln */ - -/** - * Helper for calculating exponent of a number - * - * @return exponent of specified number - */ -ecma_number_t -ecma_number_exp (ecma_number_t num) /**< valid finite number */ -{ - JERRY_ASSERT (!ecma_number_is_nan (num)); - JERRY_ASSERT (!ecma_number_is_infinity (num)); - - bool invert = false; - ecma_number_t pow_e; - - if (ecma_number_is_negative (num)) - { - invert = true; - pow_e = ecma_number_negate (num); - } - else - { - pow_e = num; - } - - /* Taylor series of e^x is 1 + x/1! + x^2/2! + x^3/3! + ... + x^n/n! + ... */ - - ecma_number_t sum = ECMA_NUMBER_ONE; - ecma_number_t next_addendum = ecma_number_divide (pow_e, ECMA_NUMBER_ONE); - ecma_number_t next_factorial_factor = ECMA_NUMBER_ONE; - - ecma_number_t diff = ecma_number_make_infinity (false); - - while (ecma_number_divide (diff, sum) > ecma_number_relative_eps) - { - ecma_number_t next_sum = ecma_number_add (sum, next_addendum); - - next_factorial_factor = ecma_number_add (next_factorial_factor, ECMA_NUMBER_ONE); - next_addendum = ecma_number_multiply (next_addendum, pow_e); - next_addendum = ecma_number_divide (next_addendum, next_factorial_factor); - - diff = ecma_number_substract (sum, next_sum); - if (diff < 0) - { - diff = ecma_number_negate (diff); - } - - sum = next_sum; - } - - if (invert) - { - sum = ecma_number_divide (ECMA_NUMBER_ONE, sum); - } - - return sum; -} /* ecma_number_exp */ - /** * @} * @} diff --git a/jerry-core/ecma/base/ecma-helpers.h b/jerry-core/ecma/base/ecma-helpers.h index 7e17da018..63c609971 100644 --- a/jerry-core/ecma/base/ecma-helpers.h +++ b/jerry-core/ecma/base/ecma-helpers.h @@ -161,10 +161,6 @@ extern ecma_number_t ecma_number_add (ecma_number_t, ecma_number_t); extern ecma_number_t ecma_number_substract (ecma_number_t, ecma_number_t); extern ecma_number_t ecma_number_multiply (ecma_number_t, ecma_number_t); extern ecma_number_t ecma_number_divide (ecma_number_t, ecma_number_t); -extern ecma_number_t ecma_number_sqrt (ecma_number_t); -extern ecma_number_t ecma_number_abs (ecma_number_t); -extern ecma_number_t ecma_number_ln (ecma_number_t); -extern ecma_number_t ecma_number_exp (ecma_number_t); extern void ecma_number_to_decimal (ecma_number_t, uint64_t *, int32_t *, int32_t *); /* ecma-helpers-values-collection.cpp */