From 1f2b892b4b6e5989f3bfe8938901deefdbb212b1 Mon Sep 17 00:00:00 2001 From: Brian Gaeke Date: Wed, 23 Jun 2004 00:25:35 +0000 Subject: [PATCH] Use new IsNAN() wrapper. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14340 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Transforms/Utils/Local.cpp | 17 ++--------------- 1 file changed, 2 insertions(+), 15 deletions(-) diff --git a/lib/Transforms/Utils/Local.cpp b/lib/Transforms/Utils/Local.cpp index 677a7dcc1ca..41454ae0cb1 100644 --- a/lib/Transforms/Utils/Local.cpp +++ b/lib/Transforms/Utils/Local.cpp @@ -12,6 +12,7 @@ // //===----------------------------------------------------------------------===// +#include "Support/MathExtras.h" #include "llvm/Transforms/Utils/Local.h" #include "llvm/Constants.h" #include "llvm/Instructions.h" @@ -20,18 +21,6 @@ #include using namespace llvm; -#if 0 -#if defined(__POWERPC__) && defined(__APPLE_CC__) -// FIXME: Currently it seems that isnan didn't make its way into the Apple -// C++ headers, although it IS in the C headers (which confuses autoconf -// in a big way). This is a quick fix to get things compiling, until one of -// us has time to write a more complicated autoconf test. -extern "C" int isnan (double d); -namespace std { int isnan (double d) { return ::isnan (d); } } -#endif - -#endif - //===----------------------------------------------------------------------===// // Local constant propagation... // @@ -303,11 +292,9 @@ Constant *llvm::ConstantFoldCall(Function *F, if (ConstantFP *Op2 = dyn_cast(Operands[1])) { double Op1V = Op1->getValue(), Op2V = Op2->getValue(); -#if 0 if (Name == "llvm.isunordered") - return ConstantBool::get(std::isnan(Op1V) | std::isnan(Op2V)); + return ConstantBool::get(IsNAN(Op1V) || IsNAN(Op2V)); else -#endif if (Name == "pow") { errno = 0; double V = pow(Op1V, Op2V); -- 2.34.1