summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorMark Kettenis <kettenis@cvs.openbsd.org>2009-11-06 23:30:22 +0000
committerMark Kettenis <kettenis@cvs.openbsd.org>2009-11-06 23:30:22 +0000
commitfbd3f95af0a5cdf792221bd52a4a9f5b82b7dd10 (patch)
treea75b7793a076f7de8a35187bcd15baa60ff8e57d /lib
parentd2d0d683581901c3e15080e6a4c3ed6640430b28 (diff)
Provide assembly version of sqrtl(3).
ok pirofti@
Diffstat (limited to 'lib')
-rw-r--r--lib/libm/Makefile3
-rw-r--r--lib/libm/arch/amd64/e_sqrtl.S12
2 files changed, 14 insertions, 1 deletions
diff --git a/lib/libm/Makefile b/lib/libm/Makefile
index 89ebcc67296..d59af2b54df 100644
--- a/lib/libm/Makefile
+++ b/lib/libm/Makefile
@@ -1,4 +1,4 @@
-# $OpenBSD: Makefile,v 1.73 2009/11/05 20:14:32 kettenis Exp $
+# $OpenBSD: Makefile,v 1.74 2009/11/06 23:30:21 kettenis Exp $
# $NetBSD: Makefile,v 1.28 1995/11/20 22:06:19 jtc Exp $
#
# @(#)Makefile 5.1beta 93/09/24
@@ -39,6 +39,7 @@ ARCH_SRCS = e_acos.S e_asin.S e_atan2.S e_exp.S e_fmod.S e_log.S e_log10.S \
CPPFLAGS+=-I${.CURDIR}/arch/amd64
ARCH_SRCS = e_acos.S e_asin.S e_atan2.S e_exp.S e_fmod.S e_log.S e_log10.S \
e_remainder.S e_remainderf.S e_scalb.S e_sqrt.S e_sqrtf.S \
+ e_sqrtl.S \
invtrig.c \
s_atan.S s_atanf.S s_ceil.S s_ceilf.S s_copysign.S s_copysignf.S \
s_cos.S s_cosf.S s_floor.S s_floorf.S \
diff --git a/lib/libm/arch/amd64/e_sqrtl.S b/lib/libm/arch/amd64/e_sqrtl.S
new file mode 100644
index 00000000000..37bc91cf8bd
--- /dev/null
+++ b/lib/libm/arch/amd64/e_sqrtl.S
@@ -0,0 +1,12 @@
+/* $OpenBSD: e_sqrtl.S,v 1.1 2009/11/06 23:30:21 kettenis Exp $ */
+/*
+ * Written by J.T. Conklin <jtc@netbsd.org>.
+ * Public domain.
+ */
+
+#include <machine/asm.h>
+
+ENTRY(sqrtl)
+ fldt 8(%rsp)
+ fsqrt
+ ret