mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-10-21 03:53:04 +02:00
Dead live-in detection bug.
llvm-svn: 34843
This commit is contained in:
parent
ce6c3c3004
commit
5bd925036c
@ -938,11 +938,11 @@ bool LiveIntervals::JoinCopy(MachineInstr *CopyMI,
|
||||
if (JoinIntervals(DestInt, SrcInt)) {
|
||||
if (isDead) {
|
||||
// Result of the copy is dead. Propagate this property.
|
||||
if (SrcStart == 0 && MRegisterInfo::isPhysicalRegister(SrcReg)) {
|
||||
if (SrcStart == 0 && MRegisterInfo::isPhysicalRegister(repSrcReg)) {
|
||||
// Live-in to the function but dead. Remove it from MBB live-in set.
|
||||
// JoinIntervals may end up swapping the two intervals.
|
||||
MachineBasicBlock *MBB = CopyMI->getParent();
|
||||
MBB->removeLiveIn(SrcReg);
|
||||
MBB->removeLiveIn(repSrcReg);
|
||||
} else {
|
||||
MachineInstr *SrcMI = getInstructionFromIndex(SrcStart);
|
||||
if (SrcMI) {
|
||||
|
Loading…
Reference in New Issue
Block a user