diff --git a/llvm/lib/Target/AMDGPU/SIFormMemoryClauses.cpp b/llvm/lib/Target/AMDGPU/SIFormMemoryClauses.cpp index 0d3a221970bf85..ddfa7790cabc6b 100644 --- a/llvm/lib/Target/AMDGPU/SIFormMemoryClauses.cpp +++ b/llvm/lib/Target/AMDGPU/SIFormMemoryClauses.cpp @@ -227,11 +227,9 @@ void SIFormMemoryClauses::collectRegUses(const MachineInstr &MI, : LaneBitmask::getAll(); RegUse &Map = MO.isDef() ? Defs : Uses; - auto Loc = Map.find(Reg); unsigned State = getMopState(MO); - if (Loc == Map.end()) { - Map[Reg] = std::pair(State, Mask); - } else { + auto [Loc, Inserted] = Map.try_emplace(Reg, State, Mask); + if (!Inserted) { Loc->second.first |= State; Loc->second.second |= Mask; }