444b323362f9ef2db012d7a07fd2b43d96a2afb5
[dragonfly.git] / lib / libm / arch / i386 / s_ilogbf.S
1 /*
2  * Written by J.T. Conklin <jtc@NetBSD.org>.
3  * Public domain.
4  *
5  * $NetBSD: s_ilogbf.S,v 1.6 2003/07/26 19:25:02 salo Exp $
6  */
7
8 #include <machine/asm.h>
9
10 ENTRY(ilogbf)
11 #ifdef __i386__
12         pushl   %ebp
13         movl    %esp,%ebp
14         subl    $4,%esp
15
16         flds    8(%ebp)
17         fxtract
18         fstp    %st
19
20         fistpl  -4(%ebp)
21         movl    -4(%ebp),%eax
22
23         leave
24 #else
25         movss   %xmm0,-4(%rsp)
26         flds    -4(%rsp)
27         fxtract
28         fstp    %st
29         fistpl  -4(%rsp)
30         movl    -4(%rsp),%eax
31 #endif
32         ret
33 END(ilogbf)