xref: /openbsd/lib/libc/arch/m88k/gen/fpgetsticky.c (revision 0b514a07)
1*0b514a07Smiod /*	$OpenBSD: fpgetsticky.c,v 1.4 2013/01/05 11:20:55 miod Exp $	*/
2d5b3c078Smiod 
3443998a4Ssmurph /*
4443998a4Ssmurph  * Written by J.T. Conklin, Apr 10, 1995
5443998a4Ssmurph  * Public domain.
6443998a4Ssmurph  * Ported to 88k by Nivas Madhur
7443998a4Ssmurph  */
8443998a4Ssmurph 
9443998a4Ssmurph #include <ieeefp.h>
10443998a4Ssmurph 
11443998a4Ssmurph fp_except
fpgetsticky()12443998a4Ssmurph fpgetsticky()
13443998a4Ssmurph {
14443998a4Ssmurph 	int x;
15443998a4Ssmurph 
16*0b514a07Smiod 	__asm__ volatile("fldcr %0, %%fcr62" : "=r" (x));
17443998a4Ssmurph 	return x & 0x1f;
18443998a4Ssmurph }
19