xref: /aosp_15_r20/external/musl/src/fenv/__flt_rounds.c (revision c9945492fdd68bbe62686c5b452b4dc1be3f8453)
1*c9945492SAndroid Build Coastguard Worker #include <float.h>
2*c9945492SAndroid Build Coastguard Worker #include <fenv.h>
3*c9945492SAndroid Build Coastguard Worker 
__flt_rounds()4*c9945492SAndroid Build Coastguard Worker int __flt_rounds()
5*c9945492SAndroid Build Coastguard Worker {
6*c9945492SAndroid Build Coastguard Worker 	switch (fegetround()) {
7*c9945492SAndroid Build Coastguard Worker #ifdef FE_TOWARDZERO
8*c9945492SAndroid Build Coastguard Worker 	case FE_TOWARDZERO: return 0;
9*c9945492SAndroid Build Coastguard Worker #endif
10*c9945492SAndroid Build Coastguard Worker 	case FE_TONEAREST: return 1;
11*c9945492SAndroid Build Coastguard Worker #ifdef FE_UPWARD
12*c9945492SAndroid Build Coastguard Worker 	case FE_UPWARD: return 2;
13*c9945492SAndroid Build Coastguard Worker #endif
14*c9945492SAndroid Build Coastguard Worker #ifdef FE_DOWNWARD
15*c9945492SAndroid Build Coastguard Worker 	case FE_DOWNWARD: return 3;
16*c9945492SAndroid Build Coastguard Worker #endif
17*c9945492SAndroid Build Coastguard Worker 	}
18*c9945492SAndroid Build Coastguard Worker 	return -1;
19*c9945492SAndroid Build Coastguard Worker }
20