diff --git a/llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp b/llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp index b55b9a42e52cdfd..e42623cb385637a 100644 --- a/llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp +++ b/llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp @@ -2517,9 +2517,7 @@ static void updateRegisterMapForDbgValueListAfterMove( if (RegIt == RegisterMap.end()) return; auto &InstrVec = RegIt->getSecond(); - for (unsigned I = 0; I < InstrVec.size(); I++) - if (InstrVec[I] == InstrToReplace) - InstrVec[I] = DbgValueListInstr; + llvm::replace(InstrVec, InstrToReplace, DbgValueListInstr); }); } diff --git a/llvm/lib/Target/Hexagon/HexagonISelDAGToDAGHVX.cpp b/llvm/lib/Target/Hexagon/HexagonISelDAGToDAGHVX.cpp index ec5435949ae4a75..4e6b80284c46b35 100644 --- a/llvm/lib/Target/Hexagon/HexagonISelDAGToDAGHVX.cpp +++ b/llvm/lib/Target/Hexagon/HexagonISelDAGToDAGHVX.cpp @@ -2002,10 +2002,7 @@ SmallVector HvxSelector::getPerfectCompletions(ShuffleMask SM, if ((unsigned)llvm::popcount(P) < Count) { // Reset all occurences of P, if there are more occurrences of P // than there are bits in P. - for (unsigned &Q : Worklist) { - if (Q == P) - Q = 0; - } + llvm::replace(Worklist, P, 0U); } } diff --git a/llvm/lib/Target/X86/X86ISelLowering.cpp b/llvm/lib/Target/X86/X86ISelLowering.cpp index 97775ce40aee4f9..1a6be4eb5af1ef9 100644 --- a/llvm/lib/Target/X86/X86ISelLowering.cpp +++ b/llvm/lib/Target/X86/X86ISelLowering.cpp @@ -35781,9 +35781,7 @@ X86TargetLowering::EmitLoweredIndirectThunk(MachineInstr &MI, // Zero out any registers that are already used. for (const auto &MO : MI.operands()) { if (MO.isReg() && MO.isUse()) - for (unsigned &Reg : AvailableRegs) - if (Reg == MO.getReg()) - Reg = 0; + llvm::replace(AvailableRegs, static_cast(MO.getReg()), 0U); } // Choose the first remaining non-zero available register.