/* Public domain. */ | |
typedef int SItype __attribute__ ((mode (SI))); | |
typedef unsigned int USItype __attribute__ ((mode (SI))); | |
typedef float DFtype __attribute__ ((mode (DF))); | |
DFtype | |
__floatunsidf (USItype u) | |
{ | |
SItype s = (SItype) u; | |
DFtype r = (DFtype) s; | |
if (s < 0) | |
r += (DFtype)2.0 * (DFtype) ((USItype) 1 | |
<< (sizeof (USItype) * __CHAR_BIT__ - 1)); | |
return r; | |
} |