about summary refs log tree commit diff
path: root/src/linux
diff options
context:
space:
mode:
authorRich Felker <dalias@aerifal.cx>2012-03-15 02:38:42 -0400
committerRich Felker <dalias@aerifal.cx>2012-03-15 02:38:42 -0400
commit5657cc58e5e135bba85c9a7045e10d8de4b1be0a (patch)
tree9eb1a46ac4ea495e3b90d11a42f33c05102a854b /src/linux
parent46702f68f98244f7384d6ac1742a452f0d7a2610 (diff)
downloadmusl-5657cc58e5e135bba85c9a7045e10d8de4b1be0a.tar.gz
musl-5657cc58e5e135bba85c9a7045e10d8de4b1be0a.tar.xz
musl-5657cc58e5e135bba85c9a7045e10d8de4b1be0a.zip
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.
Diffstat (limited to 'src/linux')
-rw-r--r--src/linux/sincosf.c8
-rw-r--r--src/linux/sincosl.c8
2 files changed, 16 insertions, 0 deletions
diff --git a/src/linux/sincosf.c b/src/linux/sincosf.c
new file mode 100644
index 00000000..5d8d4458
--- /dev/null
+++ b/src/linux/sincosf.c
@@ -0,0 +1,8 @@
+#define _GNU_SOURCE
+#include <math.h>
+
+void sincosf(float t, float *y, float *x)
+{
+	*y = sinf(t);
+	*x = cosf(t);
+}
diff --git a/src/linux/sincosl.c b/src/linux/sincosl.c
new file mode 100644
index 00000000..2bfc4862
--- /dev/null
+++ b/src/linux/sincosl.c
@@ -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);
+}