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:
95325b0
)
make sure to handle dbg_value instructions in the middle of the block, not
author
Jim Grosbach
<grosbach@apple.com>
Fri, 25 Jun 2010 23:05:46 +0000
(23:05 +0000)
committer
Jim Grosbach
<grosbach@apple.com>
Fri, 25 Jun 2010 23:05:46 +0000
(23:05 +0000)
just at the head, when doing diamond if-conversion. rdar://
7797940
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106907
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 ea4e68dbdaf6f94c803c1c44586ef3af23f97069..51fea7f94e5e93d3e2847a9545b57349f05eef2b 100644
(file)
--- a/
lib/CodeGen/IfConversion.cpp
+++ b/
lib/CodeGen/IfConversion.cpp
@@
-1228,10
+1228,18
@@
bool IfConverter::IfConvertDiamond(BBInfo &BBI, IfcvtKind Kind,
++DI2;
BBI1->NonPredSize -= NumDups1;
BBI2->NonPredSize -= NumDups1;
- while (NumDups1 != 0) {
+
+ // Skip past the dups on each side separately since there may be
+ // differing dbg_value entries.
+ for (unsigned i = 0; i < NumDups1; ++i) {
++DI1;
+ if (!DI1->isDebugValue())
+ ++i;
+ }
+ while (NumDups1 != 0) {
++DI2;
- --NumDups1;
+ if (!DI2->isDebugValue())
+ --NumDups1;
}
UpdatePredRedefs(BBI1->BB->begin(), DI1, Redefs, TRI);