diff options
author | Cameron Zwarich <zwarich@apple.com> | 2013-02-23 04:49:22 +0000 |
---|---|---|
committer | Cameron Zwarich <zwarich@apple.com> | 2013-02-23 04:49:22 +0000 |
commit | b4bd022731b28a80f59818870cc7df5d4771d793 (patch) | |
tree | 069f29b60ee5817066fd487d3fdf2aaf893a52fb /lib/CodeGen/TwoAddressInstructionPass.cpp | |
parent | 4c57942608094a74543920b7c809e442fa90dd72 (diff) |
Fix a bug with the LiveIntervals updating in the two-address pass found by
running ASCI_Purple/SMG2000 in the test-suite.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175957 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/TwoAddressInstructionPass.cpp')
-rw-r--r-- | lib/CodeGen/TwoAddressInstructionPass.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/CodeGen/TwoAddressInstructionPass.cpp b/lib/CodeGen/TwoAddressInstructionPass.cpp index cbe07db3fc..aca85b2aa1 100644 --- a/lib/CodeGen/TwoAddressInstructionPass.cpp +++ b/lib/CodeGen/TwoAddressInstructionPass.cpp @@ -370,7 +370,7 @@ static bool isPlainlyKilled(MachineInstr *MI, unsigned Reg, SlotIndex useIdx = LIS->getInstructionIndex(MI); LiveInterval::const_iterator I = LI.find(useIdx); assert(I != LI.end() && "Reg must be live-in to use."); - return SlotIndex::isSameInstr(I->end, useIdx); + return !I->end.isBlock() && SlotIndex::isSameInstr(I->end, useIdx); } return MI->killsRegister(Reg); |