summaryrefslogtreecommitdiffstats
path: root/mdk-stage1/dietlibc/libm/pow.c
diff options
context:
space:
mode:
Diffstat (limited to 'mdk-stage1/dietlibc/libm/pow.c')
-rw-r--r--mdk-stage1/dietlibc/libm/pow.c42
1 files changed, 0 insertions, 42 deletions
diff --git a/mdk-stage1/dietlibc/libm/pow.c b/mdk-stage1/dietlibc/libm/pow.c
deleted file mode 100644
index e0e5a2983..000000000
--- a/mdk-stage1/dietlibc/libm/pow.c
+++ /dev/null
@@ -1,42 +0,0 @@
-
-#include <math.h>
-#include "dietlibm.h"
-
-double pow ( double mant, double expo )
-{
- unsigned int e;
- long double ret;
-
- /* special cases 0^x */
- if ( mant == 0. ) {
- if ( expo > 0. )
- return 0.;
- else if ( expo == 0. )
- return 1.;
- else
- return 1./mant;
- }
-
- /* special cases x^n with n is integer */
- if ( expo == (int) (e = (int) expo) ) {
-
- if ( (int)e < 0 ) {
- e = -e;
- mant = 1./mant;
- }
-
- ret = 1.;
-
- while (1) {
- if ( e & 1 )
- ret *= mant;
- if ( (e >>= 1) == 0 )
- break;
- mant *= mant;
- }
- return ret;
- }
-
- /* normal case */
- return exp2 ( log2 (mant) * expo );
-}