mirror of
https://github.com/KolibriOS/kolibrios.git
synced 2024-11-29 04:03:09 +03:00
2336060a0c
git-svn-id: svn://kolibrios.org@1906 a494cfbc-eb01-0410-851d-a64ba20cac60
20 lines
333 B
C
20 lines
333 B
C
#include <math.h>
|
|
#include <errno.h>
|
|
|
|
long double ldexpl(long double x, int expn)
|
|
{
|
|
long double res;
|
|
if (!isfinite (x) || x == 0.0L)
|
|
return x;
|
|
|
|
__asm__ ("fscale"
|
|
: "=t" (res)
|
|
: "0" (x), "u" ((long double) expn));
|
|
|
|
if (!isfinite (res) || res == 0.0L)
|
|
errno = ERANGE;
|
|
|
|
return res;
|
|
}
|
|
|