//===-- IsInf.cpp ---------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file was developed by the LLVM research group and is distributed under // the University of Illinois Open Source License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // // Platform-independent wrapper around C99 isinf(). // //===----------------------------------------------------------------------===// #include "llvm/Config/config.h" #if HAVE_ISINF_IN_MATH_H # include #elif HAVE_ISINF_IN_CMATH # include #elif HAVE_STD_ISINF_IN_CMATH # include using std::isinf; #elif HAVE_FINITE_IN_IEEEFP_H // A handy workaround I found at http://www.unixguide.net/sun/faq ... // apparently this has been a problem with Solaris for years. # include static int isinf(double x) { return !finite(x) && x==x; } #else # error "Don't know how to get isinf()" #endif namespace llvm { int IsInf (float f) { return isinf (f); } int IsInf (double d) { return isinf (d); } }; // end namespace llvm;