summaryrefslogtreecommitdiff
path: root/lib/fixunsdfsi.c
diff options
context:
space:
mode:
authorEdward O'Callaghan <eocallaghan@auroraux.org>2009-08-09 18:41:02 +0000
committerEdward O'Callaghan <eocallaghan@auroraux.org>2009-08-09 18:41:02 +0000
commit8bf1e094893cb24796137b47ee0d46d18d299996 (patch)
tree57669837db32d106ba744be339a354b8055fcfe4 /lib/fixunsdfsi.c
parent33c134702e274fdbcb1672771a137efb82b498b2 (diff)
downloadcompiler-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.c8
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);
}