xref: /third_party/FreeBSD/contrib/gdtoa/gdtoa_fltrnds.h
  • Home
  • History
  • Annotate Annotate
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
  • only in /third_party/FreeBSD/contrib/gdtoa/
1f9f848faSopenharmony_ci	FPI *fpi, fpi1;
2f9f848faSopenharmony_ci	int Rounding;
3f9f848faSopenharmony_ci#ifdef Trust_FLT_ROUNDS /*{{ only define this if FLT_ROUNDS really works! */
4f9f848faSopenharmony_ci	Rounding = Flt_Rounds;
5f9f848faSopenharmony_ci#else /*}{*/
6f9f848faSopenharmony_ci	Rounding = 1;
7f9f848faSopenharmony_ci	switch(fegetround()) {
8f9f848faSopenharmony_ci	  case FE_TOWARDZERO:	Rounding = 0; break;
9f9f848faSopenharmony_ci	  case FE_UPWARD:	Rounding = 2; break;
10f9f848faSopenharmony_ci	  case FE_DOWNWARD:	Rounding = 3;
11f9f848faSopenharmony_ci	  }
12f9f848faSopenharmony_ci#endif /*}}*/
13f9f848faSopenharmony_ci	fpi = &fpi0;
14f9f848faSopenharmony_ci	if (Rounding != 1) {
15f9f848faSopenharmony_ci		fpi1 = fpi0;
16f9f848faSopenharmony_ci		fpi = &fpi1;
17f9f848faSopenharmony_ci		fpi1.rounding = Rounding;
18f9f848faSopenharmony_ci		}
19

Indexes created Thu Nov 07 10:32:03 CST 2024