implement sincosf and sincosl functions; add prototypes
presumably broken gcc may generate calls to these, and it's said that ffmpeg makes use of sincosf.
This commit is contained in:
parent
46702f68f9
commit
5657cc58e5
3 changed files with 19 additions and 0 deletions
|
|
@ -382,6 +382,9 @@ long double ynl(int, long double);
|
||||||
double scalb(double, double);
|
double scalb(double, double);
|
||||||
float scalbf(float, float);
|
float scalbf(float, float);
|
||||||
long double scalbl(long double, long double);
|
long double scalbl(long double, long double);
|
||||||
|
void sincosf(float, float *, float *);
|
||||||
|
void sincos(double, double *, double *);
|
||||||
|
void sincosl(long double, long double *, long double *);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
|
|
|
||||||
8
src/linux/sincosf.c
Normal file
8
src/linux/sincosf.c
Normal file
|
|
@ -0,0 +1,8 @@
|
||||||
|
#define _GNU_SOURCE
|
||||||
|
#include <math.h>
|
||||||
|
|
||||||
|
void sincosf(float t, float *y, float *x)
|
||||||
|
{
|
||||||
|
*y = sinf(t);
|
||||||
|
*x = cosf(t);
|
||||||
|
}
|
||||||
8
src/linux/sincosl.c
Normal file
8
src/linux/sincosl.c
Normal file
|
|
@ -0,0 +1,8 @@
|
||||||
|
#define _GNU_SOURCE
|
||||||
|
#include <math.h>
|
||||||
|
|
||||||
|
void sincosl(long double t, long double *y, long double *x)
|
||||||
|
{
|
||||||
|
*y = sinl(t);
|
||||||
|
*x = cosl(t);
|
||||||
|
}
|
||||||
Loading…
Add table
Add a link
Reference in a new issue