1*bf5e8a78SThomas Weißschuh /* SPDX-License-Identifier: LGPL-2.1 OR MIT */ 2*bf5e8a78SThomas Weißschuh /* 3*bf5e8a78SThomas Weißschuh * math definitions for NOLIBC 4*bf5e8a78SThomas Weißschuh * Copyright (C) 2025 Thomas Weißschuh <thomas.weissschuh@linutronix.de> 5*bf5e8a78SThomas Weißschuh */ 6*bf5e8a78SThomas Weißschuh 7*bf5e8a78SThomas Weißschuh /* make sure to include all global symbols */ 8*bf5e8a78SThomas Weißschuh #include "nolibc.h" 9*bf5e8a78SThomas Weißschuh 10*bf5e8a78SThomas Weißschuh #ifndef _NOLIBC_SYS_MATH_H 11*bf5e8a78SThomas Weißschuh #define _NOLIBC_SYS_MATH_H 12*bf5e8a78SThomas Weißschuh 13*bf5e8a78SThomas Weißschuh static __inline__ fabs(double x)14*bf5e8a78SThomas Weißschuhdouble fabs(double x) 15*bf5e8a78SThomas Weißschuh { 16*bf5e8a78SThomas Weißschuh return x >= 0 ? x : -x; 17*bf5e8a78SThomas Weißschuh } 18*bf5e8a78SThomas Weißschuh 19*bf5e8a78SThomas Weißschuh static __inline__ fabsf(float x)20*bf5e8a78SThomas Weißschuhfloat fabsf(float x) 21*bf5e8a78SThomas Weißschuh { 22*bf5e8a78SThomas Weißschuh return x >= 0 ? x : -x; 23*bf5e8a78SThomas Weißschuh } 24*bf5e8a78SThomas Weißschuh 25*bf5e8a78SThomas Weißschuh static __inline__ fabsl(long double x)26*bf5e8a78SThomas Weißschuhlong double fabsl(long double x) 27*bf5e8a78SThomas Weißschuh { 28*bf5e8a78SThomas Weißschuh return x >= 0 ? x : -x; 29*bf5e8a78SThomas Weißschuh } 30*bf5e8a78SThomas Weißschuh 31*bf5e8a78SThomas Weißschuh #endif /* _NOLIBC_SYS_MATH_H */ 32