xref: /netbsd/lib/libm/arch/i387/s_scalbnf.S (revision 6550d01e)
1/*
2 * Written by J.T. Conklin <jtc@NetBSD.org>.
3 * Public domain.
4 */
5
6#include <machine/asm.h>
7
8RCSID("$NetBSD: s_scalbnf.S,v 1.8 2010/04/23 19:17:07 drochner Exp $")
9
10#ifdef WEAK_ALIAS
11WEAK_ALIAS(scalbnf,_scalbnf)
12#endif
13
14ENTRY(_scalbnf)
15#ifdef __x86_64__
16	movl %edi,-8(%rsp)
17	fildl -8(%rsp)
18	movss %xmm0,-4(%rsp)
19	flds -4(%rsp)
20	fscale
21	fstps -4(%rsp)
22	movss -4(%rsp),%xmm0
23	fstp %st(0)
24#else
25	fildl 8(%esp)
26	flds 4(%esp)
27	fscale
28	fstp %st(1)		/* clean up stack */
29#endif
30	ret
31