Add MachineRegisterInfo::hasOneUse and hasOneNonDBGUse.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97663 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Evan Cheng
2010-03-03 21:18:38 +00:00
parent 14c85cbf54
commit 1423c70b8f
3 changed files with 24 additions and 6 deletions

View File

@ -454,13 +454,10 @@ MachineInstr *findOnlyInterestingUse(unsigned Reg, MachineBasicBlock *MBB,
const TargetInstrInfo *TII,
bool &IsCopy,
unsigned &DstReg, bool &IsDstPhys) {
MachineRegisterInfo::use_nodbg_iterator UI = MRI->use_nodbg_begin(Reg);
if (UI == MRI->use_nodbg_end())
return 0;
MachineInstr &UseMI = *UI;
if (++UI != MRI->use_nodbg_end())
// More than one use.
if (!MRI->hasOneNonDBGUse(Reg))
// None or more than one use.
return 0;
MachineInstr &UseMI = *MRI->use_nodbg_begin(Reg);
if (UseMI.getParent() != MBB)
return 0;
unsigned SrcReg;