Home | History | Annotate | Line # | Download | only in i387
      1   1.1       jtc /*
      2   1.6      salo  * Written by J.T. Conklin <jtc (at) NetBSD.org>.
      3   1.2       jtc  * Public domain.
      4   1.1       jtc  */
      5   1.1       jtc 
      6   1.1       jtc #include <machine/asm.h>
      7   1.1       jtc 
      8  1.14   mlelstv RCSID("$NetBSD: s_scalbnf.S,v 1.14 2013/05/20 20:27:43 mlelstv Exp $")
      9   1.1       jtc 
     10   1.8  drochner #ifdef WEAK_ALIAS
     11   1.8  drochner WEAK_ALIAS(scalbnf,_scalbnf)
     12   1.9      matt WEAK_ALIAS(scalblnf,_scalblnf)
     13  1.14   mlelstv WEAK_ALIAS(ldexpf,_scalbnf)
     14   1.8  drochner #endif
     15   1.8  drochner 
     16   1.9      matt #ifdef __x86_64__
     17   1.8  drochner ENTRY(_scalbnf)
     18   1.7  drochner 	movl %edi,-8(%rsp)
     19   1.7  drochner 	fildl -8(%rsp)
     20   1.7  drochner 	movss %xmm0,-4(%rsp)
     21   1.7  drochner 	flds -4(%rsp)
     22   1.7  drochner 	fscale
     23   1.7  drochner 	fstps -4(%rsp)
     24   1.7  drochner 	movss -4(%rsp),%xmm0
     25   1.7  drochner 	fstp %st(0)
     26   1.9      matt 	ret
     27   1.9      matt #elif defined(STRONG_ALIAS)
     28  1.11      matt STRONG_ALIAS(_scalbnf,_scalblnf)
     29   1.9      matt #endif
     30   1.9      matt 
     31   1.9      matt ENTRY(_scalblnf)
     32   1.9      matt #ifdef __x86_64__
     33  1.12     joerg 	movq %rdi,-16(%rsp)
     34   1.9      matt 	fildq -16(%rsp)
     35   1.9      matt 	movss %xmm0,-4(%rsp)
     36   1.9      matt 	flds -4(%rsp)
     37   1.9      matt 	fscale
     38   1.9      matt 	fstps -4(%rsp)
     39   1.9      matt 	movss -4(%rsp),%xmm0
     40   1.9      matt 	fstp %st(0)
     41   1.7  drochner #else
     42   1.7  drochner 	fildl 8(%esp)
     43   1.7  drochner 	flds 4(%esp)
     44   1.1       jtc 	fscale
     45   1.7  drochner 	fstp %st(1)		/* clean up stack */
     46   1.7  drochner #endif
     47   1.1       jtc 	ret
     48