xref: /aosp_15_r20/prebuilts/build-tools/sysroots/i686-unknown-linux-musl/include/bits/fenv.h (revision cda5da8d549138a6648c5ee6d7a49cf8f4a657be)
1*cda5da8dSAndroid Build Coastguard Worker #define FE_INVALID    1
2*cda5da8dSAndroid Build Coastguard Worker #define __FE_DENORM   2
3*cda5da8dSAndroid Build Coastguard Worker #define FE_DIVBYZERO  4
4*cda5da8dSAndroid Build Coastguard Worker #define FE_OVERFLOW   8
5*cda5da8dSAndroid Build Coastguard Worker #define FE_UNDERFLOW  16
6*cda5da8dSAndroid Build Coastguard Worker #define FE_INEXACT    32
7*cda5da8dSAndroid Build Coastguard Worker 
8*cda5da8dSAndroid Build Coastguard Worker #define FE_ALL_EXCEPT 63
9*cda5da8dSAndroid Build Coastguard Worker 
10*cda5da8dSAndroid Build Coastguard Worker #define FE_TONEAREST  0
11*cda5da8dSAndroid Build Coastguard Worker #define FE_DOWNWARD   0x400
12*cda5da8dSAndroid Build Coastguard Worker #define FE_UPWARD     0x800
13*cda5da8dSAndroid Build Coastguard Worker #define FE_TOWARDZERO 0xc00
14*cda5da8dSAndroid Build Coastguard Worker 
15*cda5da8dSAndroid Build Coastguard Worker typedef unsigned short fexcept_t;
16*cda5da8dSAndroid Build Coastguard Worker 
17*cda5da8dSAndroid Build Coastguard Worker typedef struct {
18*cda5da8dSAndroid Build Coastguard Worker 	unsigned short __control_word;
19*cda5da8dSAndroid Build Coastguard Worker 	unsigned short __unused1;
20*cda5da8dSAndroid Build Coastguard Worker 	unsigned short __status_word;
21*cda5da8dSAndroid Build Coastguard Worker 	unsigned short __unused2;
22*cda5da8dSAndroid Build Coastguard Worker 	unsigned short __tags;
23*cda5da8dSAndroid Build Coastguard Worker 	unsigned short __unused3;
24*cda5da8dSAndroid Build Coastguard Worker 	unsigned int __eip;
25*cda5da8dSAndroid Build Coastguard Worker 	unsigned short __cs_selector;
26*cda5da8dSAndroid Build Coastguard Worker 	unsigned int __opcode:11;
27*cda5da8dSAndroid Build Coastguard Worker 	unsigned int __unused4:5;
28*cda5da8dSAndroid Build Coastguard Worker 	unsigned int __data_offset;
29*cda5da8dSAndroid Build Coastguard Worker 	unsigned short __data_selector;
30*cda5da8dSAndroid Build Coastguard Worker 	unsigned short __unused5;
31*cda5da8dSAndroid Build Coastguard Worker } fenv_t;
32*cda5da8dSAndroid Build Coastguard Worker 
33*cda5da8dSAndroid Build Coastguard Worker #define FE_DFL_ENV      ((const fenv_t *) -1)
34