1*c9945492SAndroid Build Coastguard Worker #include <fenv.h> 2*c9945492SAndroid Build Coastguard Worker #include <features.h> 3*c9945492SAndroid Build Coastguard Worker 4*c9945492SAndroid Build Coastguard Worker /* __fesetround wrapper for arch independent argument check */ 5*c9945492SAndroid Build Coastguard Worker 6*c9945492SAndroid Build Coastguard Worker hidden int __fesetround(int); 7*c9945492SAndroid Build Coastguard Worker fesetround(int r)8*c9945492SAndroid Build Coastguard Workerint fesetround(int r) 9*c9945492SAndroid Build Coastguard Worker { 10*c9945492SAndroid Build Coastguard Worker if (r != FE_TONEAREST 11*c9945492SAndroid Build Coastguard Worker #ifdef FE_DOWNWARD 12*c9945492SAndroid Build Coastguard Worker && r != FE_DOWNWARD 13*c9945492SAndroid Build Coastguard Worker #endif 14*c9945492SAndroid Build Coastguard Worker #ifdef FE_UPWARD 15*c9945492SAndroid Build Coastguard Worker && r != FE_UPWARD 16*c9945492SAndroid Build Coastguard Worker #endif 17*c9945492SAndroid Build Coastguard Worker #ifdef FE_TOWARDZERO 18*c9945492SAndroid Build Coastguard Worker && r != FE_TOWARDZERO 19*c9945492SAndroid Build Coastguard Worker #endif 20*c9945492SAndroid Build Coastguard Worker ) 21*c9945492SAndroid Build Coastguard Worker return -1; 22*c9945492SAndroid Build Coastguard Worker return __fesetround(r); 23*c9945492SAndroid Build Coastguard Worker } 24