xref: /aosp_15_r20/external/llvm-libc/include/llvm-libc-macros/fenv-macros.h (revision 71db0c75aadcf003ffe3238005f61d7618a3fead)
1 //===-- Definition of macros from fenv.h ----------------------------------===//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===----------------------------------------------------------------------===//
8 
9 #ifndef LLVM_LIBC_MACROS_FENV_MACROS_H
10 #define LLVM_LIBC_MACROS_FENV_MACROS_H
11 
12 #define FE_DIVBYZERO 0x1
13 #define FE_INEXACT 0x2
14 #define FE_INVALID 0x4
15 #define FE_OVERFLOW 0x8
16 #define FE_UNDERFLOW 0x10
17 #define __FE_DENORM 0x20
18 #define FE_ALL_EXCEPT                                                          \
19   (FE_DIVBYZERO | FE_INEXACT | FE_INVALID | FE_OVERFLOW | FE_UNDERFLOW)
20 
21 #define FE_DOWNWARD 0x400
22 #define FE_TONEAREST 0
23 #define FE_TOWARDZERO 0xC00
24 #define FE_UPWARD 0x800
25 
26 #define FE_DFL_ENV ((fenv_t *)-1)
27 
28 #endif // LLVM_LIBC_MACROS_FENV_MACROS_H
29