diff options
Diffstat (limited to 'lib/CodeGen/TwoAddressInstructionPass.cpp')
| -rw-r--r-- | lib/CodeGen/TwoAddressInstructionPass.cpp | 9 | 
1 files changed, 3 insertions, 6 deletions
diff --git a/lib/CodeGen/TwoAddressInstructionPass.cpp b/lib/CodeGen/TwoAddressInstructionPass.cpp index 0ba38433c220b..c840b3968cd3c 100644 --- a/lib/CodeGen/TwoAddressInstructionPass.cpp +++ b/lib/CodeGen/TwoAddressInstructionPass.cpp @@ -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;  | 
