gdtoa_fltrnds.h revision 1.1
11.1Schristos FPI *fpi, fpi1; 21.1Schristos int Rounding; 31.1Schristos#ifdef Trust_FLT_ROUNDS /*{{ only define this if FLT_ROUNDS really works! */ 41.1Schristos Rounding = Flt_Rounds; 51.1Schristos#else /*}{*/ 61.1Schristos Rounding = 1; 71.1Schristos switch(fegetround()) { 81.1Schristos case FE_TOWARDZERO: Rounding = 0; break; 91.1Schristos case FE_UPWARD: Rounding = 2; break; 101.1Schristos case FE_DOWNWARD: Rounding = 3; 111.1Schristos } 121.1Schristos#endif /*}}*/ 131.1Schristos fpi = &fpi0; 141.1Schristos if (Rounding != 1) { 151.1Schristos fpi1 = fpi0; 161.1Schristos fpi = &fpi1; 171.1Schristos fpi1.rounding = Rounding; 181.1Schristos } 19