aboutsummaryrefslogtreecommitdiffstats
path: root/libm/fake_long_double.c
diff options
context:
space:
mode:
Diffstat (limited to 'libm/fake_long_double.c')
-rw-r--r--libm/fake_long_double.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/libm/fake_long_double.c b/libm/fake_long_double.c
index 5edf839cf..20148a3b2 100644
--- a/libm/fake_long_double.c
+++ b/libm/fake_long_double.c
@@ -30,7 +30,9 @@ long double fmodl(long double a1, long double a2) { return fmod(a1, a2); }
long double fminl(long double a1, long double a2) { return fmin(a1, a2); }
int ilogbl(long double a1) { return ilogb(a1); }
long long llrintl(long double a1) { return llrint(a1); }
+#if !defined(__i386__) // x86 has an assembler lrint/lrintl.
long lrintl(long double a1) { return lrint(a1); }
+#endif
long long llroundl(long double a1) { return llround(a1); }
long lroundl(long double a1) { return lround(a1); }
long double modfl(long double a1, long double* a2) { double i; double f = modf(a1, &i); *a2 = i; return f; }