summaryrefslogtreecommitdiffstats
path: root/llvm/lib
diff options
context:
space:
mode:
authorMisha Brukman <brukman+llvm@gmail.com>2004-06-21 17:58:36 +0000
committerMisha Brukman <brukman+llvm@gmail.com>2004-06-21 17:58:36 +0000
commit11f74d7072e37a86b38bc9e6134d64513337bb07 (patch)
tree35c92b4a5e85eaffaf076bdfac9d2617b3ebcd68 /llvm/lib
parentc3a0b330c959c9749e07d3cae8212d13430878d6 (diff)
downloadbcm5719-llvm-11f74d7072e37a86b38bc9e6134d64513337bb07.tar.gz
bcm5719-llvm-11f74d7072e37a86b38bc9e6134d64513337bb07.zip
Intrinsic::isnan has gone away, support for it commented out.
Intrinsic::isunordered has arrived, and we just use the standard lowering pass for it. llvm-svn: 14290
Diffstat (limited to 'llvm/lib')
-rw-r--r--llvm/lib/Target/PowerPC/PPC32ISelSimple.cpp10
-rw-r--r--llvm/lib/Target/PowerPC/PowerPCISelSimple.cpp10
2 files changed, 14 insertions, 6 deletions
diff --git a/llvm/lib/Target/PowerPC/PPC32ISelSimple.cpp b/llvm/lib/Target/PowerPC/PPC32ISelSimple.cpp
index 279a6b62858..ac3f41ca997 100644
--- a/llvm/lib/Target/PowerPC/PPC32ISelSimple.cpp
+++ b/llvm/lib/Target/PowerPC/PPC32ISelSimple.cpp
@@ -1309,7 +1309,7 @@ void ISel::visitCallInst(CallInst &CI) {
static Value *dyncastIsNan(Value *V) {
if (CallInst *CI = dyn_cast<CallInst>(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/llvm/lib/Target/PowerPC/PowerPCISelSimple.cpp b/llvm/lib/Target/PowerPC/PowerPCISelSimple.cpp
index 279a6b62858..ac3f41ca997 100644
--- a/llvm/lib/Target/PowerPC/PowerPCISelSimple.cpp
+++ b/llvm/lib/Target/PowerPC/PowerPCISelSimple.cpp
@@ -1309,7 +1309,7 @@ void ISel::visitCallInst(CallInst &CI) {
static Value *dyncastIsNan(Value *V) {
if (CallInst *CI = dyn_cast<CallInst>(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!");
}
}
OpenPOWER on IntegriCloud