stdlib: An implementation of SDL_scalbn using ldexp() (thanks, Ozkan!).

Fixes Bugzilla #3767.

--HG--
extra : rebase_source : c8dfcbc036ca99ce20808a33204cd87ae9b3e4d2
This commit is contained in:
Ryan C. Gordon 2017-08-29 00:36:17 -04:00
parent 1641fd7c50
commit a32e087d07

View file

@ -187,6 +187,10 @@ SDL_scalbn(double x, int n)
return scalbn(x, n); return scalbn(x, n);
#elif defined(HAVE__SCALB) #elif defined(HAVE__SCALB)
return _scalb(x, n); return _scalb(x, n);
#elif defined(HAVE_LIBC) && defined(HAVE_FLOAT_H) && (FLT_RADIX == 2)
/* from scalbn(3): If FLT_RADIX equals 2 (which is
* usual), then scalbn() is equivalent to ldexp(3). */
return ldexp(x, n);
#else #else
return SDL_uclibc_scalbn(x, n); return SDL_uclibc_scalbn(x, n);
#endif /* HAVE_SCALBN */ #endif /* HAVE_SCALBN */