aboutsummaryrefslogtreecommitdiff
path: root/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2011-06-12 05:57:01 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2011-06-12 05:57:01 +0000
commit1edc08b09ff723f3ff80dba28401b58b3ee4569e (patch)
tree4341fb8dcc54682a991986e1327d973e4d5311c7 /lib/CodeGen/AsmPrinter/AsmPrinter.cpp
parentc1e903ceb3cfc3a091a8d3c0fd9ec7243f36584c (diff)
Really fix the fall-through logic.
Add a triple to the tests. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132885 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/AsmPrinter/AsmPrinter.cpp')
-rw-r--r--lib/CodeGen/AsmPrinter/AsmPrinter.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/CodeGen/AsmPrinter/AsmPrinter.cpp b/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
index 00f3501fcf..f324148cea 100644
--- a/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
+++ b/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
@@ -1941,6 +1941,9 @@ isBlockOnlyReachableByFallthrough(const MachineBasicBlock *MBB) const {
if (TII->AnalyzeBranch(*Pred, PredTBB, PredFBB, PredCond))
return false;
+ if (PredTBB == MBB || PredFBB == MBB)
+ return false;
+
// This is a fall through if there is no conditions in the bb
// or if there is no explicit false branch.
return PredCond.empty() || !PredFBB;