summaryrefslogtreecommitdiff
path: root/gcc/real.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/real.c')
-rw-r--r--gcc/real.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/real.c b/gcc/real.c
index 74f430c29ae..c79dd288b62 100644
--- a/gcc/real.c
+++ b/gcc/real.c
@@ -2705,7 +2705,8 @@ decode_ieee_single (fmt, r, buf)
{
r->class = rvc_nan;
r->sign = sign;
- r->signalling = ((image >> 22) & 1) ^ fmt->qnan_msb_set;
+ r->signalling = (((image >> (HOST_BITS_PER_LONG - 2)) & 1)
+ ^ fmt->qnan_msb_set);
r->sig[SIGSZ-1] = image;
}
else