diff options
author | Lang Hames <lhames@gmail.com> | 2012-09-03 06:31:45 +0000 |
---|---|---|
committer | Lang Hames <lhames@gmail.com> | 2012-09-03 06:31:45 +0000 |
commit | 90152701ebd60fc2fee20b0d74fd17b551b553b3 (patch) | |
tree | 0dffa9b75a985a22e744a2303032f878731dc2da /llvm/lib/CodeGen | |
parent | dcc54decd5329da3ec3c7ab7cf94d72a1ed53c9b (diff) | |
download | bcm5719-llvm-90152701ebd60fc2fee20b0d74fd17b551b553b3.tar.gz bcm5719-llvm-90152701ebd60fc2fee20b0d74fd17b551b553b3.zip |
When updating live range endpoints, make sure to preserve the early clobber bit.
Fixs PR13719.
llvm-svn: 163107
Diffstat (limited to 'llvm/lib/CodeGen')
-rw-r--r-- | llvm/lib/CodeGen/LiveIntervalAnalysis.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/llvm/lib/CodeGen/LiveIntervalAnalysis.cpp b/llvm/lib/CodeGen/LiveIntervalAnalysis.cpp index 87538c42438..bdf4f2dfffc 100644 --- a/llvm/lib/CodeGen/LiveIntervalAnalysis.cpp +++ b/llvm/lib/CodeGen/LiveIntervalAnalysis.cpp @@ -1173,7 +1173,7 @@ private: SlotIndex LastUse = findLastUseBefore(LI->reg, OldIdx); if (LastUse != NewIdx) moveKillFlags(LI->reg, NewIdx, LastUse); - LR->end = LastUse.getRegSlot(); + LR->end = LastUse.getRegSlot(LR->end.isEarlyClobber()); } void moveEnteringDownFrom(SlotIndex OldIdx, IntRangePair& P) { @@ -1187,7 +1187,7 @@ private: assert(LR->end > OldIdx && "LiveRange does not cover original slot"); moveKillFlags(LI->reg, LR->end, NewIdx); } - LR->end = NewIdx.getRegSlot(); + LR->end = NewIdx.getRegSlot(LR->end.isEarlyClobber()); } } |