projects
/
oota-llvm.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
a301a16
)
Do not ifcvt if either true / false path is a backedge. Not profitable in almost...
author
Evan Cheng
<evan.cheng@apple.com>
Tue, 5 Jun 2007 20:38:42 +0000
(20:38 +0000)
committer
Evan Cheng
<evan.cheng@apple.com>
Tue, 5 Jun 2007 20:38:42 +0000
(20:38 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37440
91177308
-0d34-0410-b5e6-
96231b3b80d8
lib/CodeGen/IfConversion.cpp
patch
|
blob
|
history
diff --git
a/lib/CodeGen/IfConversion.cpp
b/lib/CodeGen/IfConversion.cpp
index c0c6b383e6c233112a83234ffe834e7285b29c2c..9a35d1d11e9906d64d432240326737f31f3fa558 100644
(file)
--- a/
lib/CodeGen/IfConversion.cpp
+++ b/
lib/CodeGen/IfConversion.cpp
@@
-237,6
+237,9
@@
void IfConverter::StructuralAnalysis(MachineBasicBlock *BB) {
!TII->AnalyzeBranch(*BB, BBI.TrueBB, BBI.FalseBB, BBI.BrCond);
if (!BBI.IsAnalyzable || BBI.BrCond.size() == 0)
return;
+ // Do not ifcvt if either path is a back edge to the entry block.
+ if (BBI.TrueBB == BB || BBI.FalseBB == BB)
+ return;
StructuralAnalysis(BBI.TrueBB);
BBInfo &TrueBBI = BBAnalysis[BBI.TrueBB->getNumber()];