blob: 695d8179c6c1c314a1bcd92d0696a7cd2131707e [file] [log] [blame]
nsz9560b6b2012-03-13 19:51:14 +01001#include <math.h>
Rich Felkerb69f6952012-03-13 01:17:53 -04002
3float fmaxf(float x, float y)
4{
5 if (isnan(x))
6 return y;
7 if (isnan(y))
8 return x;
9 /* handle signed zeroes, see C99 Annex F.9.9.2 */
10 if (signbit(x) != signbit(y))
11 return signbit(x) ? y : x;
12 return x < y ? y : x;
13}