[llvm-commits] [llvm] r49198 - /llvm/trunk/lib/CodeGen/PHIElimination.cpp
Evan Cheng
evan.cheng at apple.com
Thu Apr 3 18:20:06 PDT 2008
Author: evancheng
Date: Thu Apr 3 20:20:05 2008
New Revision: 49198
URL: http://llvm.org/viewvc/llvm-project?rev=49198&view=rev
Log:
Undo PHI elimination copy placement patch. This causes coalescing (performace) issues.
Modified:
llvm/trunk/lib/CodeGen/PHIElimination.cpp
Modified: llvm/trunk/lib/CodeGen/PHIElimination.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/PHIElimination.cpp?rev=49198&r1=49197&r2=49198&view=diff
==============================================================================
--- llvm/trunk/lib/CodeGen/PHIElimination.cpp (original)
+++ llvm/trunk/lib/CodeGen/PHIElimination.cpp Thu Apr 3 20:20:05 2008
@@ -49,12 +49,6 @@
}
private:
- /// findInsertionPoint - Find a safe location to insert a move to copy
- /// source of a PHI instruction.
- MachineBasicBlock::iterator
- findInsertionPoint(MachineBasicBlock &MBB, MachineInstr *DefMI,
- unsigned DstReg, unsigned SrcReg) const;
-
/// EliminatePHINodes - Eliminate phi nodes by inserting copy instructions
/// in predecessor basic blocks.
///
@@ -132,28 +126,6 @@
return true;
}
-/// findInsertionPoint - Find a safe location to insert a move to copy
-/// source of a PHI instruction.
-MachineBasicBlock::iterator
-PNE::findInsertionPoint(MachineBasicBlock &MBB, MachineInstr *DefMI,
- unsigned DstReg, unsigned SrcReg) const {
- if (DefMI->getOpcode() == TargetInstrInfo::PHI ||
- DefMI->getParent() != &MBB)
- return MBB.getFirstTerminator();
-
- for (MachineRegisterInfo::use_iterator I = MRI->use_begin(SrcReg),
- E = MRI->use_end(); I != E; ++I)
- if (I->getParent() == &MBB)
- return MBB.getFirstTerminator();
- for (MachineRegisterInfo::use_iterator I = MRI->use_begin(DstReg),
- E = MRI->use_end(); I != E; ++I)
- if (I->getParent() == &MBB)
- return MBB.getFirstTerminator();
-
- MachineBasicBlock::iterator I = DefMI;
- return ++I;
-}
-
/// LowerAtomicPHINode - Lower the PHI node at the top of the specified block,
/// under the assuption that it needs to be lowered in a way that supports
/// atomic execution of PHIs. This lowering method is always correct all of the
@@ -242,8 +214,7 @@
// Find a safe location to insert the copy, this may be the first
// terminator in the block (or end()).
- MachineBasicBlock::iterator InsertPos =
- findInsertionPoint(opBlock, DefMI, IncomingReg, SrcReg);
+ MachineBasicBlock::iterator InsertPos = opBlock.getFirstTerminator();
// Insert the copy.
TII->copyRegToReg(opBlock, InsertPos, IncomingReg, SrcReg, RC, RC);
More information about the llvm-commits
mailing list