Module Name:    src
Committed By:   joerg
Date:           Tue Jul 26 17:03:23 UTC 2011

Added Files:
        src/lib/libm/arch/i387: s_scalbnl.S

Log Message:
Add optimised version of scalbnl for x86.


To generate a diff of this commit:
cvs rdiff -u -r0 -r1.1 src/lib/libm/arch/i387/s_scalbnl.S

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Added files:

Index: src/lib/libm/arch/i387/s_scalbnl.S
diff -u /dev/null src/lib/libm/arch/i387/s_scalbnl.S:1.1
--- /dev/null	Tue Jul 26 17:03:23 2011
+++ src/lib/libm/arch/i387/s_scalbnl.S	Tue Jul 26 17:03:23 2011
@@ -0,0 +1,27 @@
+/*
+ * Written by J.T. Conklin <[email protected]>.
+ * Public domain.
+ */
+
+#include <machine/asm.h>
+
+RCSID("$NetBSD: s_scalbnl.S,v 1.1 2011/07/26 17:03:23 joerg Exp $")
+
+#ifdef WEAK_ALIAS
+WEAK_ALIAS(scalbnl,_scalbnl)
+#endif
+
+ENTRY(_scalbnl)
+#ifdef __x86_64__
+	movl	%edi,-4(%rsp)
+	fildl	-4(%rsp)
+	fldt	8(%rsp)
+	fscale
+	fstp	%st(1)
+#else
+	fildl 16(%esp)
+	fldt 4(%esp)
+	fscale
+	fstp %st(1)		/* clean up stack */
+#endif
+	ret

Reply via email to