1 /* 2 * Written by Michael Shalayeff. Public Domain 3 */ 4 5 #if defined(LIBM_SCCS) && !defined(lint) 6 static char rcsid[] = "$OpenBSD: s_rint.c,v 1.4 2008/12/10 01:08:24 martynas Exp $"; 7 #endif 8 9 #include <sys/cdefs.h> 10 #include <float.h> 11 #include <math.h> 12 13 double 14 rint(double x) 15 { 16 __asm__ __volatile__("frnd,dbl %0,%0" : "+f" (x)); 17 18 return (x); 19 } 20 21 #if LDBL_MANT_DIG == 53 22 #ifdef __weak_alias 23 __weak_alias(rintl, rint); 24 #endif /* __weak_alias */ 25 #endif /* LDBL_MANT_DIG == 53 */ 26