1/* Public domain. */ 2typedef int SItype __attribute__ ((mode (SI))); 3typedef unsigned int USItype __attribute__ ((mode (SI))); 4typedef float DFtype __attribute__ ((mode (DF))); 5 6DFtype 7__floatunsidf (USItype u) 8{ 9 SItype s = (SItype) u; 10 DFtype r = (DFtype) s; 11 if (s < 0) 12 r += (DFtype)2.0 * (DFtype) ((USItype) 1 13 << (sizeof (USItype) * __CHAR_BIT__ - 1)); 14 return r; 15} 16