This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/25661] Wrong long double to float conversion
- From: "joseph at codesourcery dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 4 Jan 2006 16:47:10 -0000
- Subject: [Bug target/25661] Wrong long double to float conversion
- References: <bug-25661-1057@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #2 from joseph at codesourcery dot com 2006-01-04 16:47 -------
Subject: Re: Wrong long double to float conversion
On Wed, 4 Jan 2006, pinskia at gcc dot gnu dot org wrote:
> Hmm, actually there is no rounding from TF to DF except for the fact that upper
> potion of the TF mode is taken only.
>
> I am thinking this testcase is invalid for 128bit IBM long double format.
>
> IBM 128bit long double format is not IEEE 128bit format at all.
C99 Annex F allows non-IEC 60559 formats for long double and it seems
conversions from such types to float must follow the IEC 60559 rules. Do
you have a pointer to a specification for double+double long double which
does something other than compute to infinite precision then round to
nearest representable value according to current rounding mode?
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25661