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
diff options
context:
space:
mode:
Diffstat (limited to 'newlib/libm/machine/spu/headers/atanf.h')
-rw-r--r--newlib/libm/machine/spu/headers/atanf.h112
1 files changed, 0 insertions, 112 deletions
diff --git a/newlib/libm/machine/spu/headers/atanf.h b/newlib/libm/machine/spu/headers/atanf.h
deleted file mode 100644
index ec01c1ec8..000000000
--- a/newlib/libm/machine/spu/headers/atanf.h
+++ /dev/null
@@ -1,112 +0,0 @@
-/*
- (C) Copyright 2001,2006,
- International Business Machines Corporation,
- Sony Computer Entertainment, Incorporated,
- Toshiba Corporation,
-
- All rights reserved.
-
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice,
- this list of conditions and the following disclaimer.
- * Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
- * Neither the names of the copyright holders nor the names of their
- contributors may be used to endorse or promote products derived from this
- software without specific prior written permission.
-
- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
- IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
- PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER
- OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
- LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
- NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
- SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-*/
-#ifndef _ATANF_H_
-#define _ATANF_H_ 1
-
-#ifndef M_PI_2
-#define M_PI_2 1.5707963267949f
-#endif /* M_PI_2 */
-
-/*
- * FUNCTION
- * float _atanf(float x)
- *
- * DESCRIPTION
- * _atanf computes the arc tangent of the value x; that is the value
- * whose tangent is x.
- *
- * _atanf returns the arc tangent in radians and the value is
- * mathematically defined to be in the range -PI/2 to PI/2.
- *
- * The arc tangent function is computed using a polynomial approximation
- * (B. Carlson, M. Goldstein, Los Alamos Scientific Laboratiry, 1955).
- * __8__
- * \
- * \
- * atanf(x) = / Ci*x^(2*i+1)
- * /____
- * i=0
- *
- * for x in the range -1 to 1. The remaining regions are defined to be:
- *
- * [1, infinity] : PI/2 + atanf(-1/x)
- * [-infinity, -1] : -PI/2 + atanf(-1/x)
- */
-
-static __inline float _atanf(float x)
-{
- float xabs;
- float bias;
- float x2, x3, x4, x8, x9;
- float hi, lo;
- float result;
-
- bias = 0.0f;
- xabs = (x < 0.0f) ? -x : x;
-
- if (xabs >= 1.0f) {
- bias = M_PI_2;
- if (x < 0.0f) {
- bias = -bias;
- }
- x = -1.0f / x;
- }
- /* Instruction counts can be reduced if the polynomial was
- * computed entirely from nested (dependent) fma's. However,
- * to reduce the number of pipeline stalls, the polygon is evaluated
- * in two halves(hi and lo).
- */
- bias += x;
-
- x2 = x * x;
- x3 = x2 * x;
- x4 = x2 * x2;
- x8 = x4 * x4;
- x9 = x8 * x;
- hi = 0.0028662257f * x2 - 0.0161657367f;
- hi = hi * x2 + 0.0429096138f;
- hi = hi * x2 - 0.0752896400f;
- hi = hi * x2 + 0.1065626393f;
- lo = -0.1420889944f * x2 + 0.1999355085f;
- lo = lo * x2 - 0.3333314528f;
- lo = lo * x3 + bias;
-
- result = hi * x9 + lo;
-
- return (result);
-}
-
-#endif /* _ATANF_H_ */
-
-
-