diff options
author | Edward O'Callaghan <eocallaghan@auroraux.org> | 2009-08-09 18:41:02 +0000 |
---|---|---|
committer | Edward O'Callaghan <eocallaghan@auroraux.org> | 2009-08-09 18:41:02 +0000 |
commit | 8bf1e094893cb24796137b47ee0d46d18d299996 (patch) | |
tree | 57669837db32d106ba744be339a354b8055fcfe4 /lib/fixunsdfsi.c | |
parent | 33c134702e274fdbcb1672771a137efb82b498b2 (diff) | |
download | compiler-rt-8bf1e094893cb24796137b47ee0d46d18d299996.tar.gz compiler-rt-8bf1e094893cb24796137b47ee0d46d18d299996.tar.bz2 compiler-rt-8bf1e094893cb24796137b47ee0d46d18d299996.tar.xz |
Refactor to remove un-named struct gnu extension usage. Now ISO C89 and C99 compliant. Comment trailing endifs
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@78537 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/fixunsdfsi.c')
-rw-r--r-- | lib/fixunsdfsi.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/lib/fixunsdfsi.c b/lib/fixunsdfsi.c index f9d2b6d8..a0cba79a 100644 --- a/lib/fixunsdfsi.c +++ b/lib/fixunsdfsi.c @@ -31,12 +31,12 @@ __fixunsdfsi(double a) { double_bits fb; fb.f = a; - int e = ((fb.u.high & 0x7FF00000) >> 20) - 1023; - if (e < 0 || (fb.u.high & 0x80000000)) + int e = ((fb.u.s.high & 0x7FF00000) >> 20) - 1023; + if (e < 0 || (fb.u.s.high & 0x80000000)) return 0; return ( 0x80000000u | - ((fb.u.high & 0x000FFFFF) << 11) | - (fb.u.low >> 21) + ((fb.u.s.high & 0x000FFFFF) << 11) | + (fb.u.s.low >> 21) ) >> (31 - e); } |