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

Side by Side Diff: fusl/src/math/frexp.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 <math.h> 1 #include <math.h>
2 #include <stdint.h> 2 #include <stdint.h>
3 3
4 double frexp(double x, int *e) 4 double frexp(double x, int* e) {
5 { 5 union {
6 » union { double d; uint64_t i; } y = { x }; 6 double d;
7 » int ee = y.i>>52 & 0x7ff; 7 uint64_t i;
8 } y = {x};
9 int ee = y.i >> 52 & 0x7ff;
8 10
9 » if (!ee) { 11 if (!ee) {
10 » » if (x) { 12 if (x) {
11 » » » x = frexp(x*0x1p64, e); 13 x = frexp(x * 0x1p64, e);
12 » » » *e -= 64; 14 *e -= 64;
13 » » } else *e = 0; 15 } else
14 » » return x; 16 *e = 0;
15 » } else if (ee == 0x7ff) { 17 return x;
16 » » return x; 18 } else if (ee == 0x7ff) {
17 » } 19 return x;
20 }
18 21
19 » *e = ee - 0x3fe; 22 *e = ee - 0x3fe;
20 » y.i &= 0x800fffffffffffffull; 23 y.i &= 0x800fffffffffffffull;
21 » y.i |= 0x3fe0000000000000ull; 24 y.i |= 0x3fe0000000000000ull;
22 » return y.d; 25 return y.d;
23 } 26 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698