From a2916ce49a9c7c2e0c6d8b91467baaca61a5f77e Mon Sep 17 00:00:00 2001 From: Misha Brukman Date: Mon, 21 Jun 2004 17:58:36 +0000 Subject: [PATCH] Intrinsic::isnan has gone away, support for it commented out. Intrinsic::isunordered has arrived, and we just use the standard lowering pass for it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14290 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Target/PowerPC/PPC32ISelSimple.cpp | 10 +++++++--- lib/Target/PowerPC/PowerPCISelSimple.cpp | 10 +++++++--- 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/lib/Target/PowerPC/PPC32ISelSimple.cpp b/lib/Target/PowerPC/PPC32ISelSimple.cpp index 279a6b62858..ac3f41ca997 100644 --- a/lib/Target/PowerPC/PPC32ISelSimple.cpp +++ b/lib/Target/PowerPC/PPC32ISelSimple.cpp @@ -1309,7 +1309,7 @@ void ISel::visitCallInst(CallInst &CI) { static Value *dyncastIsNan(Value *V) { if (CallInst *CI = dyn_cast(V)) if (Function *F = CI->getCalledFunction()) - if (F->getIntrinsicID() == Intrinsic::isnan) + if (F->getIntrinsicID() == Intrinsic::isunordered) return CI->getOperand(1); return 0; } @@ -1346,7 +1346,8 @@ void ISel::LowerUnknownIntrinsicFunctionCalls(Function &F) { case Intrinsic::vaend: case Intrinsic::returnaddress: case Intrinsic::frameaddress: - case Intrinsic::isnan: + // FIXME: should lower this ourselves + // case Intrinsic::isunordered: // We directly implement these intrinsics break; case Intrinsic::readio: { @@ -1414,6 +1415,8 @@ void ISel::visitIntrinsicCall(Intrinsic::ID ID, CallInst &CI) { } return; +#if 0 + // This may be useful for supporting isunordered case Intrinsic::isnan: // If this is only used by 'isunordered' style comparisons, don't emit it. if (isOnlyUsedByUnorderedComparisons(&CI)) return; @@ -1424,7 +1427,8 @@ void ISel::visitIntrinsicCall(Intrinsic::ID ID, CallInst &CI) { TmpReg3 = getReg(CI); BuildMI(BB, PPC32::RLWINM, 4, TmpReg3).addReg(TmpReg2).addImm(4).addImm(31).addImm(31); return; - +#endif + default: assert(0 && "Error: unknown intrinsics should have been lowered!"); } } diff --git a/lib/Target/PowerPC/PowerPCISelSimple.cpp b/lib/Target/PowerPC/PowerPCISelSimple.cpp index 279a6b62858..ac3f41ca997 100644 --- a/lib/Target/PowerPC/PowerPCISelSimple.cpp +++ b/lib/Target/PowerPC/PowerPCISelSimple.cpp @@ -1309,7 +1309,7 @@ void ISel::visitCallInst(CallInst &CI) { static Value *dyncastIsNan(Value *V) { if (CallInst *CI = dyn_cast(V)) if (Function *F = CI->getCalledFunction()) - if (F->getIntrinsicID() == Intrinsic::isnan) + if (F->getIntrinsicID() == Intrinsic::isunordered) return CI->getOperand(1); return 0; } @@ -1346,7 +1346,8 @@ void ISel::LowerUnknownIntrinsicFunctionCalls(Function &F) { case Intrinsic::vaend: case Intrinsic::returnaddress: case Intrinsic::frameaddress: - case Intrinsic::isnan: + // FIXME: should lower this ourselves + // case Intrinsic::isunordered: // We directly implement these intrinsics break; case Intrinsic::readio: { @@ -1414,6 +1415,8 @@ void ISel::visitIntrinsicCall(Intrinsic::ID ID, CallInst &CI) { } return; +#if 0 + // This may be useful for supporting isunordered case Intrinsic::isnan: // If this is only used by 'isunordered' style comparisons, don't emit it. if (isOnlyUsedByUnorderedComparisons(&CI)) return; @@ -1424,7 +1427,8 @@ void ISel::visitIntrinsicCall(Intrinsic::ID ID, CallInst &CI) { TmpReg3 = getReg(CI); BuildMI(BB, PPC32::RLWINM, 4, TmpReg3).addReg(TmpReg2).addImm(4).addImm(31).addImm(31); return; - +#endif + default: assert(0 && "Error: unknown intrinsics should have been lowered!"); } } -- 2.34.1