diff options
author | 2004-03-23 20:02:18 +0000 | |
---|---|---|
committer | 2004-03-23 20:02:18 +0000 | |
commit | 78c5984c21efc5998e66036d9b2addf153b640cf (patch) | |
tree | 6de87cccbeb03c9289c398d4e048bc6a6ddb2d7a /lib/libc | |
parent | Oops, gremlins (diff) | |
download | wireguard-openbsd-78c5984c21efc5998e66036d9b2addf153b640cf.tar.xz wireguard-openbsd-78c5984c21efc5998e66036d9b2addf153b640cf.zip |
gcc3 doesn't align things the same as gcc2. Casting upwards is dangerous
to a program's health, avoid it. ok deraadt
Diffstat (limited to 'lib/libc')
-rw-r--r-- | lib/libc/arch/sparc64/fpu/fpu_explode.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/libc/arch/sparc64/fpu/fpu_explode.c b/lib/libc/arch/sparc64/fpu/fpu_explode.c index 176d1dd3aa2..19a05500fbb 100644 --- a/lib/libc/arch/sparc64/fpu/fpu_explode.c +++ b/lib/libc/arch/sparc64/fpu/fpu_explode.c @@ -1,4 +1,4 @@ -/* $OpenBSD: fpu_explode.c,v 1.1 2003/07/21 18:41:30 jason Exp $ */ +/* $OpenBSD: fpu_explode.c,v 1.2 2004/03/23 20:02:18 jason Exp $ */ /* * Copyright (c) 1992, 1993 @@ -130,7 +130,8 @@ __fpu_xtof(fp, i) * fpu_norm()'s handling of `supernormals'; see fpu_subr.c. */ fp->fp_exp = FP_LG2; - *((int64_t*)fp->fp_mant) = (int64_t)i < 0 ? -i : i; + fp->fp_mant[0] = (i >> 32) & 0xffffffff; + fp->fp_mant[1] = (i >> 0) & 0xffffffff; fp->fp_mant[2] = 0; fp->fp_mant[3] = 0; __fpu_norm(fp); |