blob: 856889d86545f540e0e03730795ff8c2ca9e8135 [file] [log] [blame]
Daniel Dunbarddf18902011-11-16 07:33:00 +00001/* ===-- int_math.h - internal math inlines ---------------------------------===
2 *
3 * The LLVM Compiler Infrastructure
4 *
5 * This file is dual licensed under the MIT and the University of Illinois Open
6 * Source Licenses. See LICENSE.TXT for details.
7 *
8 * ===-----------------------------------------------------------------------===
9 *
10 * This file is not part of the interface of this library.
11 *
12 * This file defines substitutes for the libm functions used in some of the
13 * compiler-rt implementations, defined in such a way that there is not a direct
14 * dependency on libm or math.h. Instead, we use the compiler builtin versions
15 * where available. This reduces our dependencies on the system SDK by foisting
16 * the responsibility onto the compiler.
17 *
18 * ===-----------------------------------------------------------------------===
19 */
20
21#ifndef INT_MATH_H
22#define INT_MATH_H
23
24#define crt_isfinite(x) __builtin_isfinite((x))
25#define crt_isinf(x) __builtin_isinf((x))
26#define crt_isnan(x) __builtin_isnan((x))
27
28#endif /* INT_MATH_H */