diff options
Diffstat (limited to 'contrib/libstdc++/libmath/stubs.c')
-rw-r--r-- | contrib/libstdc++/libmath/stubs.c | 455 |
1 files changed, 0 insertions, 455 deletions
diff --git a/contrib/libstdc++/libmath/stubs.c b/contrib/libstdc++/libmath/stubs.c deleted file mode 100644 index 72c4f75a9d18..000000000000 --- a/contrib/libstdc++/libmath/stubs.c +++ /dev/null @@ -1,455 +0,0 @@ -/* Stub definitions for libmath subpart of libstdc++. */ - -/* Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc. - - This file is part of the GNU ISO C++ Library. This library is free - software; you can redistribute it and/or modify it under the - terms of the GNU General Public License as published by the - Free Software Foundation; either version 2, or (at your option) - any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this library; see the file COPYING. If not, write to the Free - Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, - USA. - - As a special exception, you may use this file as part of a free software - library without restriction. Specifically, if other files instantiate - templates or use macros or inline functions from this file, or you compile - this file and link it with other files to produce an executable, this - file does not by itself cause the resulting executable to be covered by - the GNU General Public License. This exception does not however - invalidate any other reasons why the executable file might be covered by - the GNU General Public License. */ - -#include <math.h> -#include "config.h" - -/* For targets which do not have support for long double versions, - we use the crude approximation. We'll do better later. */ - - -#ifndef HAVE_FABSF -float -fabsf(float x) -{ - return (float) fabs(x); -} -#endif - -#ifndef HAVE_FABSL -long double -fabsl(long double x) -{ - return fabs((double) x); -} -#endif - - -#ifndef HAVE_ACOSF -float -acosf(float x) -{ - return (float) acos(x); -} -#endif - -#ifndef HAVE_ACOSL -long double -acosl(long double x) -{ - return acos((double) x); -} -#endif - - -#ifndef HAVE_ASINF -float -asinf(float x) -{ - return (float) asin(x); -} -#endif - -#ifndef HAVE_ASINL -long double -asinl(long double x) -{ - return asin((double) x); -} -#endif - - -#ifndef HAVE_ATANF -float -atanf(float x) -{ - return (float) atan(x); -} -#endif - -#ifndef HAVE_ATANL -long double -atanl(long double x) -{ - return atan ((double) x); -} -#endif - - -#ifndef HAVE_ATAN2F -float -atan2f(float x, float y) -{ - return (float) atan2(x, y); -} -#endif - -#ifndef HAVE_ATAN2L -long double -atan2l(long double x, long double y) -{ - return atan2((double) x, (double) y); -} -#endif - - -#ifndef HAVE_CEILF -float -ceilf(float x) -{ - return (float) ceil(x); -} -#endif - -#ifndef HAVE_CEILL -long double -ceill(long double x) -{ - return ceil((double) x); -} -#endif - - -#ifndef HAVE_COSF -float -cosf(float x) -{ - return (float) cos(x); -} -#endif - -#ifndef HAVE_COSL -long double -cosl(long double x) -{ - return cos((double) x); -} -#endif - - -#ifndef HAVE_COSHF -float -coshf(float x) -{ - return (float) cosh(x); -} -#endif - -#ifndef HAVE_COSHL -long double -coshl(long double x) -{ - return cosh((double) x); -} -#endif - - -#ifndef HAVE_EXPF -float -expf(float x) -{ - return (float) exp(x); -} -#endif - -#ifndef HAVE_EXPL -long double -expl(long double x) -{ - return exp((double) x); -} -#endif - - -#ifndef HAVE_FLOORF -float -floorf(float x) -{ - return (float) floor(x); -} -#endif - -#ifndef HAVE_FLOORL -long double -floorl(long double x) -{ - return floor((double) x); -} -#endif - - -#ifndef HAVE_FMODF -float -fmodf(float x, float y) -{ - return (float) fmod(x, y); -} -#endif - -#ifndef HAVE_FMODL -long double -fmodl(long double x, long double y) -{ - return fmod((double) x, (double) y); -} -#endif - - -#ifndef HAVE_FREXPF -float -frexpf(float x, int *exp) -{ - return (float) frexp(x, exp); -} -#endif - -#ifndef HAVE_FREXPL -long double -frexpl(long double x, int *exp) -{ - return frexp((double) x, exp); -} -#endif - - -#ifndef HAVE_SQRTF -float -sqrtf(float x) -{ - return (float) sqrt(x); -} -#endif - -#ifndef HAVE_SQRTL -long double -sqrtl(long double x) -{ - return sqrt((double) x); -} -#endif - - -/* Compute the hypothenuse of a right triangle with side x and y. */ -#ifndef HAVE_HYPOTF -float -hypotf(float x, float y) -{ - float s = fabsf(x) + fabsf(y); - if (s == 0.0F) - return s; - x /= s; y /= s; - return s * sqrtf(x * x + y * y); -} -#endif - -#ifndef HAVE_HYPOT -double -hypot(double x, double y) -{ - double s = fabs(x) + fabs(y); - if (s == 0.0) - return s; - x /= s; y /= s; - return s * sqrt(x * x + y * y); -} -#endif - -#ifndef HAVE_HYPOTL -long double -hypotl(long double x, long double y) -{ - long double s = fabsl(x) + fabsl(y); - if (s == 0.0L) - return s; - x /= s; y /= s; - return s * sqrtl(x * x + y * y); -} -#endif - - - -#ifndef HAVE_LDEXPF -float -ldexpf(float x, int exp) -{ - return (float) ldexp(x, exp); -} -#endif - -#ifndef HAVE_LDEXPL -long double -ldexpl(long double x, int exp) -{ - return ldexp((double) x, exp); -} -#endif - - -#ifndef HAVE_LOGF -float -logf(float x) -{ - return (float) log(x); -} -#endif - -#ifndef HAVE_LOGL -long double -logl(long double x) -{ - return log((double) x); -} -#endif - - -#ifndef HAVE_LOG10F -float -log10f(float x) -{ - return (float) log10(x); -} -#endif - -#ifndef HAVE_LOG10L -long double -log10l(long double x) -{ - return log10((double) x); -} -#endif - - -#ifndef HAVE_MODFF -float -modff(float x, float *iptr) -{ - double result, temp; - - result = modf(x, &temp); - *iptr = (float) temp; - return (float) result; -} -#endif - -#ifndef HAVE_MODFL -long double -modfl(long double x, long double *iptr) -{ - double result, temp; - - result = modf((double) x, &temp); - *iptr = temp; - return result; -} -#endif - - -#ifndef HAVE_POWF -float -powf(float x, float y) -{ - return (float) pow(x, y); -} -#endif - -#ifndef HAVE_POWL -long double -powl(long double x, long double y) -{ - return pow((double) x, (double) y); -} -#endif - - -#ifndef HAVE_SINF -float -sinf(float x) -{ - return (float) sin(x); -} -#endif - -#ifndef HAVE_SINL -long double -sinl(long double x) -{ - return sin((double) x); -} -#endif - - -#ifndef HAVE_SINHF -float -sinhf(float x) -{ - return (float) sinh(x); -} -#endif - -#ifndef HAVE_SINHL -long double -sinhl(long double x) -{ - return sinh((double) x); -} -#endif - - -#ifndef HAVE_TANF -float -tanf(float x) -{ - return (float) tan(x); -} -#endif - -#ifndef HAVE_TANL -long double -tanl(long double x) -{ - return tan((double) x); -} -#endif - - -#ifndef HAVE_TANHF -float -tanhf(float x) -{ - return (float) tanh(x); -} -#endif - -#ifndef HAVE_TANHL -long double -tanhl(long double x) -{ - return tanh((double) x); -} -#endif |