Home | History | Annotate | Line # | Download | only in gen
      1  1.4  uebayasi /*	$NetBSD: fpgetsticky.S,v 1.4 2014/05/22 15:01:56 uebayasi Exp $	*/
      2  1.1      fvdl 
      3  1.1      fvdl /*
      4  1.3      fvdl  * Written by Frank van der Linden at Wasabi Systems for NetBSD.
      5  1.1      fvdl  * Public domain.
      6  1.3      fvdl  *
      7  1.1      fvdl  */
      8  1.1      fvdl 
      9  1.1      fvdl #include <machine/asm.h>
     10  1.1      fvdl 
     11  1.3      fvdl /*
     12  1.3      fvdl  * XXX read both the x87 and SSE status words here, and OR
     13  1.3      fvdl  * them to get a complete picture of exceptions.
     14  1.3      fvdl  */
     15  1.3      fvdl 
     16  1.2   thorpej #ifdef WEAK_ALIAS
     17  1.2   thorpej WEAK_ALIAS(fpgetsticky, _fpgetsticky)
     18  1.2   thorpej ENTRY(_fpgetsticky)
     19  1.2   thorpej #else
     20  1.1      fvdl ENTRY(fpgetsticky)
     21  1.2   thorpej #endif
     22  1.3      fvdl 	fnstsw	-4(%rsp)
     23  1.3      fvdl 	stmxcsr	-8(%rsp)
     24  1.3      fvdl 	movl	-4(%rsp),%eax
     25  1.3      fvdl 	orl	-8(%rsp),%eax
     26  1.3      fvdl 	andl	$63,%eax
     27  1.1      fvdl 	ret
     28  1.4  uebayasi #ifdef WEAK_ALIAS
     29  1.4  uebayasi END(_fpgetsticky)
     30  1.4  uebayasi #else
     31  1.4  uebayasi END(fpgetsticky)
     32  1.4  uebayasi #endif
     33