fabs.c revision 1.3
11.3Sriastrad/*	$NetBSD: fabs.c,v 1.3 2018/11/08 16:31:46 riastradh Exp $	*/
21.1Sross
31.1Sross#include <math.h>
41.1Sross
51.3Sriastrad__strong_alias(fabsl, fabs)
61.3Sriastrad
71.1Srossdouble
81.1Srossfabs(double x)
91.1Sross{
101.1Sross#ifdef _SOFT_FLOAT
111.1Sross	if (x < 0)
121.1Sross		x = -x;
131.1Sross#else
141.1Sross	__asm volatile("fabs %0,%1" : "=f"(x) : "f"(x));
151.1Sross#endif
161.1Sross	return (x);
171.1Sross}
18