1208737Sjmallett/* Public domain. */ 2208737Sjmalletttypedef unsigned int USItype __attribute__ ((mode (SI))); 3208737Sjmalletttypedef int SItype __attribute__ ((mode (SI))); 4208737Sjmalletttypedef float SFtype __attribute__ ((mode (SF))); 5208737Sjmalletttypedef float DFtype __attribute__ ((mode (DF))); 6208737Sjmallett 7208737SjmallettUSItype __fixunsdfsi (DFtype); 8208737Sjmallett 9208737Sjmallett#define SItype_MIN \ 10208737Sjmallett (- ((SItype) (((USItype) 1 << ((sizeof (SItype) * 8) - 1)) - 1)) - 1) 11208737Sjmallett 12208737SjmallettUSItype 13208737Sjmallett__fixunsdfsi (DFtype a) 14208737Sjmallett{ 15208737Sjmallett if (a >= - (DFtype) SItype_MIN) 16208737Sjmallett return (SItype) (a + SItype_MIN) - SItype_MIN; 17208737Sjmallett return (SItype) a; 18208737Sjmallett} 19