summaryrefslogtreecommitdiffstats
path: root/llvm/lib
diff options
context:
space:
mode:
authorEric Christopher <echristo@apple.com>2009-09-15 21:56:46 +0000
committerEric Christopher <echristo@apple.com>2009-09-15 21:56:46 +0000
commit17f54d0f42ace3e9b331f5c8bd265483e3308bfc (patch)
tree98384147ab9502111346e3ca89a4977e81cda142 /llvm/lib
parenta1874a91b6063c25df244bd3c712ce06737523e3 (diff)
downloadbcm5719-llvm-17f54d0f42ace3e9b331f5c8bd265483e3308bfc.tar.gz
bcm5719-llvm-17f54d0f42ace3e9b331f5c8bd265483e3308bfc.zip
Expand on comment.
llvm-svn: 81928
Diffstat (limited to 'llvm/lib')
-rw-r--r--llvm/lib/CodeGen/DwarfEHPrepare.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/llvm/lib/CodeGen/DwarfEHPrepare.cpp b/llvm/lib/CodeGen/DwarfEHPrepare.cpp
index be6205e174a..8dc7e86fd21 100644
--- a/llvm/lib/CodeGen/DwarfEHPrepare.cpp
+++ b/llvm/lib/CodeGen/DwarfEHPrepare.cpp
@@ -107,7 +107,9 @@ FunctionPass *llvm::createDwarfEHPass(const TargetLowering *tli, bool fast) {
/// NormalizeLandingPads - Normalize and discover landing pads, noting them
/// in the LandingPads set. A landing pad is normal if the only CFG edges
-/// that end at it are unwind edges from invoke instructions.
+/// that end at it are unwind edges from invoke instructions. If we inlined
+/// through an invoke we could have a normal branch from the previous
+/// unwind block through to the landing pad for the original invoke.
/// Abnormal landing pads are fixed up by redirecting all unwind edges to
/// a new basic block which falls through to the original.
bool DwarfEHPrepare::NormalizeLandingPads() {
@@ -132,6 +134,7 @@ bool DwarfEHPrepare::NormalizeLandingPads() {
break;
}
}
+
if (OnlyUnwoundTo) {
// Only unwind edges lead to the landing pad. Remember the landing pad.
LandingPads.insert(LPad);
OpenPOWER on IntegriCloud