From: ljrittle Date: Mon, 3 Nov 2003 23:27:51 +0000 (+0000) Subject: * real.c (encode_ieee_single): Ensure proper promotion. X-Git-Url: http://git.sourceforge.jp/view?p=pf3gnuchains%2Fgcc-fork.git;a=commitdiff_plain;h=1676fbf44f4da4c2b0ea481aa8d18ff45888d489;hp=8e04d21120986713672b2a645a5c5691fe89aa09 * real.c (encode_ieee_single): Ensure proper promotion. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@73232 138bc75d-0d04-0410-961f-82ee72b054a4 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index a5c41aba581..9aa90f65773 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2003-11-03 Alexander Kabaev + + * real.c (encode_ieee_single): Ensure proper promotion. + 2003-11-03 Volker Reichelt * doc/contrib.texi: Add Giovanni Bajo, Dara Hazeghi, Falk Hueffner, diff --git a/gcc/real.c b/gcc/real.c index 87246807f2f..f7af346db60 100644 --- a/gcc/real.c +++ b/gcc/real.c @@ -2536,9 +2536,10 @@ encode_ieee_single (const struct real_format *fmt, long *buf, const REAL_VALUE_TYPE *r) { unsigned long image, sig, exp; + unsigned long sign = r->sign; bool denormal = (r->sig[SIGSZ-1] & SIG_MSB) == 0; - image = r->sign << 31; + image = sign << 31; sig = (r->sig[SIGSZ-1] >> (HOST_BITS_PER_LONG - 24)) & 0x7fffff; switch (r->class)