xref: /openbsd-src/gnu/llvm/compiler-rt/lib/builtins/fp_mode.h (revision 810390e339a5425391477d5d41c78d7cab2424ac)
13cab2bb3Spatrick //===----- lib/fp_mode.h - Floaing-point environment mode utilities --C -*-===//
23cab2bb3Spatrick //
33cab2bb3Spatrick // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
43cab2bb3Spatrick // See https://llvm.org/LICENSE.txt for license information.
53cab2bb3Spatrick // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
63cab2bb3Spatrick //
73cab2bb3Spatrick //===----------------------------------------------------------------------===//
83cab2bb3Spatrick //
93cab2bb3Spatrick // This file is not part of the interface of this library.
103cab2bb3Spatrick //
113cab2bb3Spatrick // This file defines an interface for accessing hardware floating point
123cab2bb3Spatrick // environment mode.
133cab2bb3Spatrick //
143cab2bb3Spatrick //===----------------------------------------------------------------------===//
153cab2bb3Spatrick 
16*810390e3Srobert #ifndef FP_MODE_H
17*810390e3Srobert #define FP_MODE_H
183cab2bb3Spatrick 
193cab2bb3Spatrick typedef enum {
20d89ec533Spatrick   CRT_FE_TONEAREST,
21d89ec533Spatrick   CRT_FE_DOWNWARD,
22d89ec533Spatrick   CRT_FE_UPWARD,
23d89ec533Spatrick   CRT_FE_TOWARDZERO
24d89ec533Spatrick } CRT_FE_ROUND_MODE;
253cab2bb3Spatrick 
26d89ec533Spatrick CRT_FE_ROUND_MODE __fe_getround(void);
271f9cb04fSpatrick int __fe_raise_inexact(void);
283cab2bb3Spatrick 
293cab2bb3Spatrick #endif // FP_MODE_H
30