Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(103)

Side by Side Diff: fusl/src/math/rintl.c

Issue 1714623002: [fusl] clang-format fusl (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: headers too Created 4 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 #include "libm.h" 1 #include "libm.h"
2 2
3 #if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024 3 #if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
4 long double rintl(long double x) 4 long double rintl(long double x) {
5 { 5 return rint(x);
6 » return rint(x);
7 } 6 }
8 #elif (LDBL_MANT_DIG == 64 || LDBL_MANT_DIG == 113) && LDBL_MAX_EXP == 16384 7 #elif (LDBL_MANT_DIG == 64 || LDBL_MANT_DIG == 113) && LDBL_MAX_EXP == 16384
9 8
10 static const long double toint = 1/LDBL_EPSILON; 9 static const long double toint = 1 / LDBL_EPSILON;
11 10
12 long double rintl(long double x) 11 long double rintl(long double x) {
13 { 12 union ldshape u = {x};
14 » union ldshape u = {x}; 13 int e = u.i.se & 0x7fff;
15 » int e = u.i.se & 0x7fff; 14 int s = u.i.se >> 15;
16 » int s = u.i.se >> 15; 15 long double y;
17 » long double y;
18 16
19 » if (e >= 0x3fff+LDBL_MANT_DIG-1) 17 if (e >= 0x3fff + LDBL_MANT_DIG - 1)
20 » » return x; 18 return x;
21 » if (s) 19 if (s)
22 » » y = x - toint + toint; 20 y = x - toint + toint;
23 » else 21 else
24 » » y = x + toint - toint; 22 y = x + toint - toint;
25 » if (y == 0) 23 if (y == 0)
26 » » return 0*x; 24 return 0 * x;
27 » return y; 25 return y;
28 } 26 }
29 #endif 27 #endif
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698