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:
41ad0c4
)
Also update virtRegMap when renaming virtual registers.
author
Jakob Stoklund Olesen
<stoklund@2pi.dk>
Fri, 3 Dec 2010 21:47:08 +0000
(21:47 +0000)
committer
Jakob Stoklund Olesen
<stoklund@2pi.dk>
Fri, 3 Dec 2010 21:47:08 +0000
(21:47 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120841
91177308
-0d34-0410-b5e6-
96231b3b80d8
lib/CodeGen/LiveDebugVariables.cpp
patch
|
blob
|
history
diff --git
a/lib/CodeGen/LiveDebugVariables.cpp
b/lib/CodeGen/LiveDebugVariables.cpp
index 4b428f65896582225d9c6c86e3befbaf930b2db6..73083c77157ef8aa05f08adfb72edcbcd3b6500c 100644
(file)
--- a/
lib/CodeGen/LiveDebugVariables.cpp
+++ b/
lib/CodeGen/LiveDebugVariables.cpp
@@
-583,8
+583,18
@@
renameRegister(unsigned OldReg, unsigned NewReg, unsigned SubIdx,
void LDVImpl::
renameRegister(unsigned OldReg, unsigned NewReg, unsigned SubIdx) {
- for (UserValue *UV = lookupVirtReg(OldReg); UV; UV = UV->getNext())
+ UserValue *UV = lookupVirtReg(OldReg);
+ if (!UV)
+ return;
+
+ if (TargetRegisterInfo::isVirtualRegister(NewReg))
+ mapVirtReg(NewReg, UV);
+ virtRegMap.erase(OldReg);
+
+ do {
UV->renameRegister(OldReg, NewReg, SubIdx, TRI);
+ UV = UV->getNext();
+ } while (UV);
}
void LiveDebugVariables::