xref: /openbsd-src/lib/libm/arch/hppa/s_rint.c (revision a28daedfc357b214be5c701aa8ba8adb29a7f1c2)
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