diff options
author | Alan Modra <amodra@bigpond.net.au> | 2004-03-11 13:39:57 +0000 |
---|---|---|
committer | Alan Modra <amodra@bigpond.net.au> | 2004-03-11 13:39:57 +0000 |
commit | 07dbcdfc780b1c4b6cc832f88057b4ae99b50115 (patch) | |
tree | e977d99500e84e3d5ac691bf24d2c44db0543f58 /gcc/real.c | |
parent | 45ace9478bf93399fe004e9d6e96924e438eb66b (diff) |
* real.c (encode_ibm_extended): Do round low word.
git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@79321 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/real.c')
-rw-r--r-- | gcc/real.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/gcc/real.c b/gcc/real.c index d578ace0883..72766bbec76 100644 --- a/gcc/real.c +++ b/gcc/real.c @@ -3248,9 +3248,8 @@ encode_ibm_extended (const struct real_format *fmt, long *buf, if (u.class == rvc_normal) { do_add (&v, &normr, &u, 1); - /* The low double won't need rounding, since we round to a 106 bit - mantissa before calling this function, and we've just - subtracted off the top 54 bits. (53+1 because u is rounded.) */ + /* Call round_for_format since we might need to denormalize. */ + round_for_format (base_fmt, &v); encode_ieee_double (base_fmt, &buf[2], &v); } else |