Home | History | Annotate | Line # | Download | only in i387
s_scalbnl.S revision 1.2
      1  1.1  joerg /*
      2  1.1  joerg  * Written by J.T. Conklin <jtc (at) NetBSD.org>.
      3  1.1  joerg  * Public domain.
      4  1.1  joerg  */
      5  1.1  joerg 
      6  1.1  joerg #include <machine/asm.h>
      7  1.1  joerg 
      8  1.2   matt RCSID("$NetBSD: s_scalbnl.S,v 1.2 2013/02/11 01:19:33 matt Exp $")
      9  1.1  joerg 
     10  1.1  joerg #ifdef WEAK_ALIAS
     11  1.1  joerg WEAK_ALIAS(scalbnl,_scalbnl)
     12  1.2   matt WEAK_ALIAS(scalblnl,_scalblnl)
     13  1.1  joerg #endif
     14  1.1  joerg 
     15  1.2   matt #ifdef __x86_64__
     16  1.1  joerg ENTRY(_scalbnl)
     17  1.1  joerg 	movl	%edi,-4(%rsp)
     18  1.1  joerg 	fildl	-4(%rsp)
     19  1.1  joerg 	fldt	8(%rsp)
     20  1.1  joerg 	fscale
     21  1.1  joerg 	fstp	%st(1)
     22  1.2   matt 	ret
     23  1.2   matt #elif defined(STRONG_ALIAS)
     24  1.2   matt STRONG_ALIAS(_scalbnl,_scalblnl)
     25  1.2   matt #endif
     26  1.2   matt 
     27  1.2   matt ENTRY(_scalblnl)
     28  1.2   matt #ifdef __x86_64__
     29  1.2   matt 	movq	%rdx,-8(%rsp)
     30  1.2   matt 	fildq	-8(%rsp)
     31  1.2   matt 	fldt	8(%rsp)
     32  1.2   matt 	fscale
     33  1.2   matt 	fstp	%st(1)
     34  1.1  joerg #else
     35  1.1  joerg 	fildl 16(%esp)
     36  1.1  joerg 	fldt 4(%esp)
     37  1.1  joerg 	fscale
     38  1.1  joerg 	fstp %st(1)		/* clean up stack */
     39  1.1  joerg #endif
     40  1.1  joerg 	ret
     41