Subject: Re: toolchain/21414: double to unsigned int conversion broken
To: None <email@example.com>
From: David Laight <firstname.lastname@example.org>
Date: 05/01/2003 20:22:36
> > So 0x7fffffff is fine...
> Duh, you are right.
No, I'm wrong...
For some reason best known to itself, gcc calls _Qp_dtoq then _Qp_qtoui
when converting double to unsigned int (ie it converts the value
to a 128bit float first!).
_Qp_qtoui (quad to unsigned) is implemented in
return (unsigned int)float128_to_int32(*a);
which is just plain wrong...
In particular an unsigned version of roundAndPackInt32 (and Int64)
David Laight: email@example.com