mirror of
git://sourceware.org/git/glibc.git
synced 2025-01-24 12:25:35 +08:00
m68k: remove __kernel_{sin,cos,tan} implementations
This commit is contained in:
parent
a9e6c76aae
commit
d8e510fa7f
@ -1,3 +1,15 @@
|
|||||||
|
2012-02-26 Andreas Schwab <schwab@linux-m68k.org>
|
||||||
|
|
||||||
|
* sysdeps/m68k/m680x0/fpu/k_sinl.c: Replace by empty file.
|
||||||
|
* sysdeps/m68k/m680x0/fpu/k_cosl.c: Likewise.
|
||||||
|
* sysdeps/m68k/m680x0/fpu/k_tanf.c: Likewise.
|
||||||
|
* sysdeps/m68k/m680x0/fpu/k_tanl.c: Likewise.
|
||||||
|
* sysdeps/m68k/m680x0/fpu/k_sin.c: Remove.
|
||||||
|
* sysdeps/m68k/m680x0/fpu/k_sinf.c: Remove.
|
||||||
|
* sysdeps/m68k/m680x0/fpu/k_cos.c: Remove.
|
||||||
|
* sysdeps/m68k/m680x0/fpu/k_cosf.c: Remove.
|
||||||
|
* sysdeps/m68k/m680x0/fpu/k_tan.c: Remove.
|
||||||
|
|
||||||
2012-02-25 Andreas Schwab <schwab@linux-m68k.org>
|
2012-02-25 Andreas Schwab <schwab@linux-m68k.org>
|
||||||
|
|
||||||
* sysdeps/m68k/m680x0/fpu/s_ccosh.c: Avoid raising invalid
|
* sysdeps/m68k/m680x0/fpu/s_ccosh.c: Avoid raising invalid
|
||||||
|
@ -1,42 +0,0 @@
|
|||||||
/* Copyright (C) 1996, 1997 Free Software Foundation, Inc.
|
|
||||||
This file is part of the GNU C Library.
|
|
||||||
|
|
||||||
The GNU C Library is free software; you can redistribute it and/or
|
|
||||||
modify it under the terms of the GNU Lesser General Public
|
|
||||||
License as published by the Free Software Foundation; either
|
|
||||||
version 2.1 of the License, or (at your option) any later version.
|
|
||||||
|
|
||||||
The GNU C 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
|
|
||||||
Lesser General Public License for more details.
|
|
||||||
|
|
||||||
You should have received a copy of the GNU Lesser General Public
|
|
||||||
License along with the GNU C Library; if not, write to the Free
|
|
||||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
|
||||||
02111-1307 USA. */
|
|
||||||
|
|
||||||
#include <math.h>
|
|
||||||
#include "math_private.h"
|
|
||||||
|
|
||||||
#ifndef FUNC
|
|
||||||
#define FUNC cos
|
|
||||||
#endif
|
|
||||||
#ifndef float_type
|
|
||||||
#define float_type double
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define __CONCATX(a,b) __CONCAT(a,b)
|
|
||||||
|
|
||||||
float_type
|
|
||||||
__CONCATX(__kernel_,FUNC) (x, y)
|
|
||||||
float_type x;
|
|
||||||
float_type y;
|
|
||||||
{
|
|
||||||
float_type sin_x, cos_x, sin_y, cos_y;
|
|
||||||
__asm__ __volatile__ ("fsincosx %2,%0:%1" : "=f" (cos_x), "=f" (sin_x)
|
|
||||||
: "f" (x));
|
|
||||||
__asm__ __volatile__ ("fsincosx %2,%0:%1" : "=f" (cos_y), "=f" (sin_y)
|
|
||||||
: "f" (y));
|
|
||||||
return cos_x * cos_y - sin_x * sin_y;
|
|
||||||
}
|
|
@ -1,3 +0,0 @@
|
|||||||
#define FUNC cosf
|
|
||||||
#define float_type float
|
|
||||||
#include <k_cos.c>
|
|
@ -1,3 +1 @@
|
|||||||
#define FUNC cosl
|
/* Not needed. */
|
||||||
#define float_type long double
|
|
||||||
#include <k_cos.c>
|
|
||||||
|
@ -1,45 +0,0 @@
|
|||||||
/* Copyright (C) 1996, 1997 Free Software Foundation, Inc.
|
|
||||||
This file is part of the GNU C Library.
|
|
||||||
|
|
||||||
The GNU C Library is free software; you can redistribute it and/or
|
|
||||||
modify it under the terms of the GNU Lesser General Public
|
|
||||||
License as published by the Free Software Foundation; either
|
|
||||||
version 2.1 of the License, or (at your option) any later version.
|
|
||||||
|
|
||||||
The GNU C 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
|
|
||||||
Lesser General Public License for more details.
|
|
||||||
|
|
||||||
You should have received a copy of the GNU Lesser General Public
|
|
||||||
License along with the GNU C Library; if not, write to the Free
|
|
||||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
|
||||||
02111-1307 USA. */
|
|
||||||
|
|
||||||
#include <math.h>
|
|
||||||
#include "math_private.h"
|
|
||||||
|
|
||||||
#ifndef FUNC
|
|
||||||
#define FUNC sin
|
|
||||||
#endif
|
|
||||||
#ifndef float_type
|
|
||||||
#define float_type double
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define __CONCATX(a,b) __CONCAT(a,b)
|
|
||||||
|
|
||||||
float_type
|
|
||||||
__CONCATX(__kernel_,FUNC) (x, y, iy)
|
|
||||||
float_type x;
|
|
||||||
float_type y;
|
|
||||||
int iy;
|
|
||||||
{
|
|
||||||
float_type sin_x, cos_x, sin_y, cos_y;
|
|
||||||
if (iy == 0)
|
|
||||||
return __m81_u(__CONCATX(__,FUNC)) (x);
|
|
||||||
__asm__ __volatile__ ("fsincosx %2,%0:%1" : "=f" (cos_x), "=f" (sin_x)
|
|
||||||
: "f" (x));
|
|
||||||
__asm__ __volatile__ ("fsincosx %2,%0:%1" : "=f" (cos_y), "=f" (sin_y)
|
|
||||||
: "f" (y));
|
|
||||||
return sin_x * cos_y + cos_x * sin_y;
|
|
||||||
}
|
|
@ -1,3 +0,0 @@
|
|||||||
#define FUNC sinf
|
|
||||||
#define float_type float
|
|
||||||
#include <k_sin.c>
|
|
@ -1,3 +1 @@
|
|||||||
#define FUNC sinl
|
/* Not needed. */
|
||||||
#define float_type long double
|
|
||||||
#include <k_sin.c>
|
|
||||||
|
@ -1,44 +0,0 @@
|
|||||||
/* Copyright (C) 1996, 1997 Free Software Foundation, Inc.
|
|
||||||
This file is part of the GNU C Library.
|
|
||||||
|
|
||||||
The GNU C Library is free software; you can redistribute it and/or
|
|
||||||
modify it under the terms of the GNU Lesser General Public
|
|
||||||
License as published by the Free Software Foundation; either
|
|
||||||
version 2.1 of the License, or (at your option) any later version.
|
|
||||||
|
|
||||||
The GNU C 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
|
|
||||||
Lesser General Public License for more details.
|
|
||||||
|
|
||||||
You should have received a copy of the GNU Lesser General Public
|
|
||||||
License along with the GNU C Library; if not, write to the Free
|
|
||||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
|
||||||
02111-1307 USA. */
|
|
||||||
|
|
||||||
#include <math.h>
|
|
||||||
#include "math_private.h"
|
|
||||||
|
|
||||||
#ifndef FUNC
|
|
||||||
#define FUNC tan
|
|
||||||
#endif
|
|
||||||
#ifndef float_type
|
|
||||||
#define float_type double
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define __CONCATX(a,b) __CONCAT(a,b)
|
|
||||||
|
|
||||||
float_type
|
|
||||||
__CONCATX(__kernel_,FUNC) (x, y, iy)
|
|
||||||
float_type x;
|
|
||||||
float_type y;
|
|
||||||
int iy;
|
|
||||||
{
|
|
||||||
float_type tan_x, tan_y;
|
|
||||||
tan_x = __m81_u(__CONCATX(__,FUNC)) (x);
|
|
||||||
tan_y = __m81_u(__CONCATX(__,FUNC)) (y);
|
|
||||||
if (iy > 0)
|
|
||||||
return (tan_x + tan_y) / (1 - tan_x * tan_y);
|
|
||||||
else
|
|
||||||
return (tan_x * tan_y - 1) / (tan_x + tan_y);
|
|
||||||
}
|
|
@ -1,3 +1 @@
|
|||||||
#define FUNC tanf
|
/* Not needed. */
|
||||||
#define float_type float
|
|
||||||
#include <k_tan.c>
|
|
||||||
|
@ -1,3 +1 @@
|
|||||||
#define FUNC tanl
|
/* Not needed. */
|
||||||
#define float_type long double
|
|
||||||
#include <k_tan.c>
|
|
||||||
|
Loading…
Reference in New Issue
Block a user