Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/newlib
diff options
context:
space:
mode:
authorCorinna Vinschen <corinna@vinschen.de>2015-01-23 13:16:00 +0300
committerCorinna Vinschen <corinna@vinschen.de>2015-01-23 13:16:00 +0300
commit2ee3908b45157408ed14eceb8f7501a0d5d8f6bb (patch)
treee427bb6691be3eed2bea1b0021e92ac04dd9052d /newlib
parent5ae2368e92e1e69c2ec85502ada9c52096e000da (diff)
Complete action from 2001-12-18:
* libc/machine/i386/f_*: Remove duplicate files.
Diffstat (limited to 'newlib')
-rw-r--r--newlib/ChangeLog5
-rw-r--r--newlib/libc/machine/i386/f_atan2.S37
-rw-r--r--newlib/libc/machine/i386/f_atan2f.S37
-rw-r--r--newlib/libc/machine/i386/f_exp.c47
-rw-r--r--newlib/libc/machine/i386/f_expf.c47
-rw-r--r--newlib/libc/machine/i386/f_frexp.S48
-rw-r--r--newlib/libc/machine/i386/f_frexpf.S48
-rw-r--r--newlib/libc/machine/i386/f_ldexp.S38
-rw-r--r--newlib/libc/machine/i386/f_ldexpf.S38
-rw-r--r--newlib/libc/machine/i386/f_log.S40
-rw-r--r--newlib/libc/machine/i386/f_log10.S40
-rw-r--r--newlib/libc/machine/i386/f_log10f.S40
-rw-r--r--newlib/libc/machine/i386/f_logf.S40
-rw-r--r--newlib/libc/machine/i386/f_math.h29
-rw-r--r--newlib/libc/machine/i386/f_pow.c47
-rw-r--r--newlib/libc/machine/i386/f_powf.c47
-rw-r--r--newlib/libc/machine/i386/f_tan.S37
-rw-r--r--newlib/libc/machine/i386/f_tanf.S37
18 files changed, 5 insertions, 697 deletions
diff --git a/newlib/ChangeLog b/newlib/ChangeLog
index 31222426c..c2270b52b 100644
--- a/newlib/ChangeLog
+++ b/newlib/ChangeLog
@@ -1,3 +1,8 @@
+2015-01-23 Corinna Vinschen <vinschen@redhat.com>
+
+ Complete action from 2001-12-18:
+ * libc/machine/i386/f_*: Remove duplicate files.
+
2015-01-22 Yaakov Selkowitz <yselkowi@redhat.com>
* libc/sys/sparc64/sys/time.h: #include <sys/types.h> for time_t.
diff --git a/newlib/libc/machine/i386/f_atan2.S b/newlib/libc/machine/i386/f_atan2.S
deleted file mode 100644
index 5bb074f80..000000000
--- a/newlib/libc/machine/i386/f_atan2.S
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
- * ====================================================
- * Copyright (C) 1998, 2002 by Red Hat Inc. All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this
- * software is freely granted, provided that this notice
- * is preserved.
- * ====================================================
- */
-
-#if !defined(_SOFT_FLOAT)
-
-/*
-Fast version of atan2 using Intel float instructions.
-
- double _f_atan2 (double y, double x);
-
-Function computes arctan ( y / x ).
-There is no error checking or setting of errno.
-*/
-
- #include "i386mach.h"
-
- .global SYM (_f_atan2)
- SOTYPE_FUNCTION(_f_atan2)
-
-SYM (_f_atan2):
- pushl ebp
- movl esp,ebp
- fldl 8(ebp)
- fldl 16(ebp)
- fpatan
-
- leave
- ret
-
-#endif
diff --git a/newlib/libc/machine/i386/f_atan2f.S b/newlib/libc/machine/i386/f_atan2f.S
deleted file mode 100644
index 6df0c7539..000000000
--- a/newlib/libc/machine/i386/f_atan2f.S
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
- * ====================================================
- * Copyright (C) 1998, 2002 by Red Hat Inc. All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this
- * software is freely granted, provided that this notice
- * is preserved.
- * ====================================================
- */
-
-#if !defined(_SOFT_FLOAT)
-
-/*
-Fast version of atan2f using Intel float instructions.
-
- float _f_atan2f (float y, float x);
-
-Function computes arctan ( y / x ).
-There is no error checking or setting of errno.
-*/
-
- #include "i386mach.h"
-
- .global SYM (_f_atan2f)
- SOTYPE_FUNCTION(_f_atan2f)
-
-SYM (_f_atan2f):
- pushl ebp
- movl esp,ebp
- flds 8(ebp)
- flds 12(ebp)
- fpatan
-
- leave
- ret
-
-#endif
diff --git a/newlib/libc/machine/i386/f_exp.c b/newlib/libc/machine/i386/f_exp.c
deleted file mode 100644
index 0ec721b7b..000000000
--- a/newlib/libc/machine/i386/f_exp.c
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- * ====================================================
- * Copyright (C) 1998,2002 by Red Hat Inc. All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this
- * software is freely granted, provided that this notice
- * is preserved.
- * ====================================================
- */
-
-#if !defined(_SOFT_FLOAT)
-
-/*
-Fast version of exp using Intel float instructions.
-
- double _f_exp (double x);
-
-Function computes e ** x. The following special cases exist:
- 1. if x is 0.0 ==> return 1.0
- 2. if x is infinity ==> return infinity
- 3. if x is -infinity ==> return 0.0
- 4. if x is NaN ==> return x
-There is no error checking or setting of errno.
-*/
-
-
-#include <math.h>
-#include <ieeefp.h>
-#include "f_math.h"
-
-double _f_exp (double x)
-{
- if (check_finite(x))
- {
- double result;
- asm ("fldl2e; fmulp; fld %%st; frndint; fsub %%st,%%st(1); fxch;" \
- "fchs; f2xm1; fld1; faddp; fxch; fld1; fscale; fstp %%st(1); fmulp" :
- "=t"(result) : "0"(x));
- return result;
- }
- else if (x == -infinity())
- return 0.0;
-
- return x;
-}
-
-#endif
diff --git a/newlib/libc/machine/i386/f_expf.c b/newlib/libc/machine/i386/f_expf.c
deleted file mode 100644
index b32d1f208..000000000
--- a/newlib/libc/machine/i386/f_expf.c
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- * ====================================================
- * Copyright (C) 1998, 2002 by Red Hat Inc. All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this
- * software is freely granted, provided that this notice
- * is preserved.
- * ====================================================
- */
-
-#if !defined(_SOFT_FLOAT)
-
-/*
-Fast version of exp using Intel float instructions.
-
- float _f_expf (float x);
-
-Function computes e ** x. The following special cases exist:
- 1. if x is 0.0 ==> return 1.0
- 2. if x is infinity ==> return infinity
- 3. if x is -infinity ==> return 0.0
- 4. if x is NaN ==> return x
-There is no error checking or setting of errno.
-*/
-
-
-#include <math.h>
-#include <ieeefp.h>
-#include "f_math.h"
-
-float _f_expf (float x)
-{
- if (check_finitef(x))
- {
- float result;
- asm ("fldl2e; fmulp; fld %%st; frndint; fsub %%st,%%st(1); fxch;" \
- "fchs; f2xm1; fld1; faddp; fxch; fld1; fscale; fstp %%st(1); fmulp" :
- "=t"(result) : "0"(x));
- return result;
- }
- else if (x == -infinityf())
- return 0.0;
-
- return x;
-}
-
-#endif
diff --git a/newlib/libc/machine/i386/f_frexp.S b/newlib/libc/machine/i386/f_frexp.S
deleted file mode 100644
index febe115bc..000000000
--- a/newlib/libc/machine/i386/f_frexp.S
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * ====================================================
- * Copyright (C) 1998, 2002 by Red Hat Inc. All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this
- * software is freely granted, provided that this notice
- * is preserved.
- * ====================================================
- */
-
-#if !defined(_SOFT_FLOAT)
-
-/*
-Fast version of frexp using Intel float instructions.
-
- double _f_frexp (double x, int *exp);
-
-Function splits x into y * 2 ** z. It then
-returns the value of y and updates *exp with z.
-There is no error checking or setting of errno.
-*/
-
- #include "i386mach.h"
-
- .global SYM (_f_frexp)
- SOTYPE_FUNCTION(_f_frexp)
-
-SYM (_f_frexp):
- pushl ebp
- movl esp,ebp
- fldl 8(ebp)
- movl 16(ebp),eax
-
- fxtract
- fld1
- fchs
- fxch
- fscale
- fstp st1
- fxch
- fld1
- faddp
- fistpl 0(eax)
-
- leave
- ret
-
-#endif
diff --git a/newlib/libc/machine/i386/f_frexpf.S b/newlib/libc/machine/i386/f_frexpf.S
deleted file mode 100644
index 909026d66..000000000
--- a/newlib/libc/machine/i386/f_frexpf.S
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * ====================================================
- * Copyright (C) 1998, 2002 by Red Hat Inc. All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this
- * software is freely granted, provided that this notice
- * is preserved.
- * ====================================================
- */
-
-#if !defined(_SOFT_FLOAT)
-
-/*
-Fast version of frexpf using Intel float instructions.
-
- float _f_frexpf (float x, int *exp);
-
-Function splits x into y * 2 ** z. It then
-returns the value of y and updates *exp with z.
-There is no error checking or setting of errno.
-*/
-
- #include "i386mach.h"
-
- .global SYM (_f_frexpf)
- SOTYPE_FUNCTION(_f_frexpf)
-
-SYM (_f_frexpf):
- pushl ebp
- movl esp,ebp
- flds 8(ebp)
- movl 12(ebp),eax
-
- fxtract
- fld1
- fchs
- fxch
- fscale
- fstp st1
- fxch
- fld1
- faddp
- fistpl 0(eax)
-
- leave
- ret
-
-#endif
diff --git a/newlib/libc/machine/i386/f_ldexp.S b/newlib/libc/machine/i386/f_ldexp.S
deleted file mode 100644
index e7b83c438..000000000
--- a/newlib/libc/machine/i386/f_ldexp.S
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * ====================================================
- * Copyright (C) 1998, 2002 by Red Hat Inc. All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this
- * software is freely granted, provided that this notice
- * is preserved.
- * ====================================================
- */
-
-#if !defined(_SOFT_FLOAT)
-
-/*
-Fast version of ldexp using Intel float instructions.
-
- double _f_ldexp (double x, int exp);
-
-Function calculates x * 2 ** exp.
-There is no error checking or setting of errno.
-*/
-
- #include "i386mach.h"
-
- .global SYM (_f_ldexp)
- SOTYPE_FUNCTION(_f_ldexp)
-
-SYM (_f_ldexp):
- pushl ebp
- movl esp,ebp
- fild 16(ebp)
- fldl 8(ebp)
- fscale
- fstp st1
-
- leave
- ret
-
-#endif
diff --git a/newlib/libc/machine/i386/f_ldexpf.S b/newlib/libc/machine/i386/f_ldexpf.S
deleted file mode 100644
index 59d53548c..000000000
--- a/newlib/libc/machine/i386/f_ldexpf.S
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * ====================================================
- * Copyright (C) 1998, 2002 by Red Hat Inc. All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this
- * software is freely granted, provided that this notice
- * is preserved.
- * ====================================================
- */
-
-#if !defined(_SOFT_FLOAT)
-
-/*
-Fast version of ldexpf using Intel float instructions.
-
- float _f_ldexpf (float x, int exp);
-
-Function calculates x * 2 ** exp.
-There is no error checking or setting of errno.
-*/
-
- #include "i386mach.h"
-
- .global SYM (_f_ldexpf)
- SOTYPE_FUNCTION(_f_ldexpf)
-
-SYM (_f_ldexpf):
- pushl ebp
- movl esp,ebp
- fild 12(ebp)
- flds 8(ebp)
- fscale
- fstp st1
-
- leave
- ret
-
-#endif
diff --git a/newlib/libc/machine/i386/f_log.S b/newlib/libc/machine/i386/f_log.S
deleted file mode 100644
index 70e62cbc5..000000000
--- a/newlib/libc/machine/i386/f_log.S
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * ====================================================
- * Copyright (C) 1998, 2002 by Red Hat Inc. All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this
- * software is freely granted, provided that this notice
- * is preserved.
- * ====================================================
- */
-
-#if !defined(_SOFT_FLOAT)
-
-/*
-Fast version of log using Intel float instructions.
-
- double _f_log (double x);
-
-Function calculates the log base e of x.
-There is no error checking or setting of errno.
-*/
-
- #include "i386mach.h"
-
- .global SYM (_f_log)
- SOTYPE_FUNCTION(_f_log)
-
-SYM (_f_log):
- pushl ebp
- movl esp,ebp
-
- fld1
- fldl2e
- fdivrp
- fldl 8(ebp)
- fyl2x
-
- leave
- ret
-
-#endif
diff --git a/newlib/libc/machine/i386/f_log10.S b/newlib/libc/machine/i386/f_log10.S
deleted file mode 100644
index 8d1b87319..000000000
--- a/newlib/libc/machine/i386/f_log10.S
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * ====================================================
- * Copyright (C) 1998, 2002 by Red Hat Inc. All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this
- * software is freely granted, provided that this notice
- * is preserved.
- * ====================================================
- */
-
-#if !defined(_SOFT_FLOAT)
-
-/*
-Fast version of log10 using Intel float instructions.
-
- double _f_log10 (double x);
-
-Function calculates the log base 10 of x.
-There is no error checking or setting of errno.
-*/
-
- #include "i386mach.h"
-
- .global SYM (_f_log10)
- SOTYPE_FUNCTION(_f_log10)
-
-SYM (_f_log10):
- pushl ebp
- movl esp,ebp
-
- fld1
- fldl2t
- fdivrp
- fldl 8(ebp)
- fyl2x
-
- leave
- ret
-
-#endif
diff --git a/newlib/libc/machine/i386/f_log10f.S b/newlib/libc/machine/i386/f_log10f.S
deleted file mode 100644
index 66ec5062e..000000000
--- a/newlib/libc/machine/i386/f_log10f.S
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * ====================================================
- * Copyright (C) 1998, 2002 by Red Hat Inc. All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this
- * software is freely granted, provided that this notice
- * is preserved.
- * ====================================================
- */
-
-#if !defined(_SOFT_FLOAT)
-
-/*
-Fast version of logf using Intel float instructions.
-
- float _f_log10f (float x);
-
-Function calculates the log base 10 of x.
-There is no error checking or setting of errno.
-*/
-
- #include "i386mach.h"
-
- .global SYM (_f_log10f)
- SOTYPE_FUNCTION(_f_log10f)
-
-SYM (_f_log10f):
- pushl ebp
- movl esp,ebp
-
- fld1
- fldl2t
- fdivrp
- flds 8(ebp)
- fyl2x
-
- leave
- ret
-
-#endif
diff --git a/newlib/libc/machine/i386/f_logf.S b/newlib/libc/machine/i386/f_logf.S
deleted file mode 100644
index 3fafa8d84..000000000
--- a/newlib/libc/machine/i386/f_logf.S
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * ====================================================
- * Copyright (C) 1998, 2002 by Red Hat Inc. All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this
- * software is freely granted, provided that this notice
- * is preserved.
- * ====================================================
- */
-
-#if !defined(_SOFT_FLOAT)
-
-/*
-Fast version of logf using Intel float instructions.
-
- float _f_logf (float x);
-
-Function calculates the log base e of x.
-There is no error checking or setting of errno.
-*/
-
- #include "i386mach.h"
-
- .global SYM (_f_logf)
- SOTYPE_FUNCTION(_f_logf)
-
-SYM (_f_logf):
- pushl ebp
- movl esp,ebp
-
- fld1
- fldl2e
- fdivrp
- flds 8(ebp)
- fyl2x
-
- leave
- ret
-
-#endif
diff --git a/newlib/libc/machine/i386/f_math.h b/newlib/libc/machine/i386/f_math.h
deleted file mode 100644
index bd44b1e92..000000000
--- a/newlib/libc/machine/i386/f_math.h
+++ /dev/null
@@ -1,29 +0,0 @@
-#ifndef __F_MATH_H__
-#define __F_MATH_H__
-
-#include <_ansi.h>
-#include "fdlibm.h"
-
-__inline__
-static
-int
-_DEFUN (check_finite, (x),
- double x)
-{
- __int32_t hx;
- GET_HIGH_WORD(hx,x);
- return (int)((__uint32_t)((hx&0x7fffffff)-0x7ff00000)>>31);
-}
-
-__inline__
-static
-int
-_DEFUN (check_finitef, (x),
- float x)
-{
- __int32_t ix;
- GET_FLOAT_WORD(ix,x);
- return (int)((__uint32_t)((ix&0x7fffffff)-0x7f800000)>>31);
-}
-
-#endif /* __F_MATH_H__ */
diff --git a/newlib/libc/machine/i386/f_pow.c b/newlib/libc/machine/i386/f_pow.c
deleted file mode 100644
index 050faa371..000000000
--- a/newlib/libc/machine/i386/f_pow.c
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- * ====================================================
- * Copyright (C) 1998, 2002 by Red Hat Inc. All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this
- * software is freely granted, provided that this notice
- * is preserved.
- * ====================================================
- */
-
-#if !defined(_SOFT_FLOAT)
-
-/*
-Fast version of pow using Intel float instructions.
-
- double _f_pow (double x, double y);
-
-Function calculates x to power of y.
-The function optimizes the case where x is >0.0 and y is finite.
-In such a case, there is no error checking or setting of errno.
-All other cases defer to normal pow() function which will
-set errno as normal.
-*/
-
-#include <math.h>
-#include <ieeefp.h>
-#include "f_math.h"
-
-double _f_pow (double x, double y)
-{
- /* following sequence handles the majority of cases for pow() */
- if (x > 0.0 && check_finite(y))
- {
- double result;
- /* calculate x ** y as 2 ** (y log2(x)). On Intel, can only
- raise 2 to an integer or a small fraction, thus, we have
- to perform two steps 2**integer portion * 2**fraction. */
- asm ("fldl 8(%%ebp); fyl2x; fld %%st; frndint; fsub %%st,%%st(1);" \
- "fxch; fchs; f2xm1; fld1; faddp; fxch; fld1; fscale; fstp %%st(1);"\
- "fmulp" : "=t" (result) : "0" (y));
- return result;
- }
- else /* all other strange cases, defer to normal pow() */
- return pow (x,y);
-}
-
-#endif
diff --git a/newlib/libc/machine/i386/f_powf.c b/newlib/libc/machine/i386/f_powf.c
deleted file mode 100644
index ca3ef60c7..000000000
--- a/newlib/libc/machine/i386/f_powf.c
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- * ====================================================
- * Copyright (C) 1998, 2002 by Red Hat Inc. All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this
- * software is freely granted, provided that this notice
- * is preserved.
- * ====================================================
- */
-
-#if !defined(_SOFT_FLOAT)
-
-/*
-Fast version of pow using Intel float instructions.
-
- float _f_powf (float x, float y);
-
-Function calculates x to power of y.
-The function optimizes the case where x is >0.0 and y is finite.
-In such a case, there is no error checking or setting of errno.
-All other cases defer to normal powf() function which will
-set errno as normal.
-*/
-
-#include <math.h>
-#include <ieeefp.h>
-#include "f_math.h"
-
-float _f_powf (float x, float y)
-{
- /* following sequence handles the majority of cases for pow() */
- if (x > 0.0 && check_finitef(y))
- {
- float result;
- /* calculate x ** y as 2 ** (y log2(x)). On Intel, can only
- raise 2 to an integer or a small fraction, thus, we have
- to perform two steps 2**integer portion * 2**fraction. */
- asm ("flds 8(%%ebp); fyl2x; fld %%st; frndint; fsub %%st,%%st(1);" \
- "fxch; fchs; f2xm1; fld1; faddp; fxch; fld1; fscale; fstp %%st(1);"\
- "fmulp" : "=t" (result) : "0" (y));
- return result;
- }
- else /* all other strange cases, defer to normal pow() */
- return powf (x,y);
-}
-
-#endif
diff --git a/newlib/libc/machine/i386/f_tan.S b/newlib/libc/machine/i386/f_tan.S
deleted file mode 100644
index c7c370470..000000000
--- a/newlib/libc/machine/i386/f_tan.S
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
- * ====================================================
- * Copyright (C) 1998, 2002 by Red Hat Inc. All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this
- * software is freely granted, provided that this notice
- * is preserved.
- * ====================================================
- */
-
-#if !defined(_SOFT_FLOAT)
-
-/*
-Fast version of tan using Intel float instructions.
-
- double _f_tan (double x);
-
-Function calculates the tangent of x.
-There is no error checking or setting of errno.
-*/
-
- #include "i386mach.h"
-
- .global SYM (_f_tan)
- SOTYPE_FUNCTION(_f_tan)
-
-SYM (_f_tan):
- pushl ebp
- movl esp,ebp
- fldl 8(ebp)
- fptan
- fincstp
-
- leave
- ret
-
-#endif
diff --git a/newlib/libc/machine/i386/f_tanf.S b/newlib/libc/machine/i386/f_tanf.S
deleted file mode 100644
index 6afda9e73..000000000
--- a/newlib/libc/machine/i386/f_tanf.S
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
- * ====================================================
- * Copyright (C) 1998, 2002 by Red Hat Inc. All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this
- * software is freely granted, provided that this notice
- * is preserved.
- * ====================================================
- */
-
-#if !defined(_SOFT_FLOAT)
-
-/*
-Fast version of tanf using Intel float instructions.
-
- float _f_tanf (float x);
-
-Function calculates the tangent of x.
-There is no error checking or setting of errno.
-*/
-
- #include "i386mach.h"
-
- .global SYM (_f_tanf)
- SOTYPE_FUNCTION(_f_tanf)
-
-SYM (_f_tanf):
- pushl ebp
- movl esp,ebp
- flds 8(ebp)
- fptan
- fincstp
-
- leave
- ret
-
-#endif