summaryrefslogtreecommitdiffstats
path: root/llvm
diff options
context:
space:
mode:
authorNate Begeman <natebegeman@mac.com>2005-03-24 20:07:16 +0000
committerNate Begeman <natebegeman@mac.com>2005-03-24 20:07:16 +0000
commitd73c87a424a282dfb13869da14c8844c78770d57 (patch)
treec5bee67ee123bda1fad964dfa05644bc52c23f6b /llvm
parent923d925953e05eca49818991dc7e456ea96094fe (diff)
downloadbcm5719-llvm-d73c87a424a282dfb13869da14c8844c78770d57.tar.gz
bcm5719-llvm-d73c87a424a282dfb13869da14c8844c78770d57.zip
Commit Gabor Greif's patch to use iterators in lowering intrinsics.
llvm-svn: 20816
Diffstat (limited to 'llvm')
-rw-r--r--llvm/lib/Target/PowerPC/PPC32ISelSimple.cpp15
1 files changed, 8 insertions, 7 deletions
diff --git a/llvm/lib/Target/PowerPC/PPC32ISelSimple.cpp b/llvm/lib/Target/PowerPC/PPC32ISelSimple.cpp
index f2b5cec2e19..4793e4b73c9 100644
--- a/llvm/lib/Target/PowerPC/PPC32ISelSimple.cpp
+++ b/llvm/lib/Target/PowerPC/PPC32ISelSimple.cpp
@@ -1928,15 +1928,16 @@ void PPC32ISel::LowerUnknownIntrinsicFunctionCalls(Function &F) {
BB->getInstList().erase(CI);
break;
}
- default:
+ default: {
// All other intrinsic calls we must lower.
- Instruction *Before = CI->getPrev();
+ BasicBlock::iterator me(CI);
+ bool atBegin(BB->begin() == me);
+ if (!atBegin)
+ --me;
TM.getIntrinsicLowering().LowerIntrinsicCall(CI);
- if (Before) { // Move iterator to instruction after call
- I = Before; ++I;
- } else {
- I = BB->begin();
- }
+ // Move iterator to instruction after call
+ I = atBegin ? BB->begin() : ++me;
+ }
}
}
OpenPOWER on IntegriCloud