Home | History | Annotate | Line # | Download | only in gen
      1 /*	$NetBSD: fpsetsticky.S,v 1.7 2014/05/23 02:34:19 uebayasi Exp $	*/
      2 
      3 /*
      4  * Written by Charles M. Hannum, Apr 9, 1995
      5  * Public domain.
      6  */
      7 
      8 #include <machine/asm.h>
      9 
     10 #ifdef WEAK_ALIAS
     11 WEAK_ALIAS(fpsetsticky, _fpsetsticky)
     12 ENTRY(_fpsetsticky)
     13 #else
     14 ENTRY(fpsetsticky)
     15 #endif
     16 	subl $28,%esp
     17 
     18 	fnstenv (%esp)
     19 	movl 4(%esp),%eax
     20 	movl %eax,%edx
     21 
     22 	andl $63,%eax
     23 
     24 	subl %eax,%edx
     25 	movl 32(%esp),%ecx
     26 	andl $63,%ecx
     27 	addl %ecx,%edx
     28 	movl %edx,4(%esp)
     29 	fldenv (%esp)
     30 
     31 	addl $28,%esp
     32 	ret
     33 #ifdef WEAK_ALIAS
     34 END(_fpsetsticky)
     35 #else
     36 END(fpsetsticky)
     37 #endif
     38