diff options
Diffstat (limited to 'llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp')
| -rw-r--r-- | llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp b/llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp index b042ee69edd2..c7b6b3579120 100644 --- a/llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp +++ b/llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp @@ -2531,8 +2531,7 @@ bool ARMPreAllocLoadStoreOpt::RescheduleLoadStoreInstrs(MachineBasicBlock *MBB) { bool RetVal = false; - DenseMap<MachineInstr*, unsigned> MI2LocMap; - using MapIt = DenseMap<unsigned, SmallVector<MachineInstr *, 4>>::iterator; + DenseMap<MachineInstr *, unsigned> MI2LocMap; using Base2InstMap = DenseMap<unsigned, SmallVector<MachineInstr *, 4>>; using BaseVec = SmallVector<unsigned, 4>; Base2InstMap Base2LdsMap; @@ -2570,10 +2569,10 @@ ARMPreAllocLoadStoreOpt::RescheduleLoadStoreInstrs(MachineBasicBlock *MBB) { Register Base = MI.getOperand(1).getReg(); int Offset = getMemoryOpOffset(MI); bool StopHere = false; - auto FindBases = [&] (Base2InstMap &Base2Ops, BaseVec &Bases) { - MapIt BI = Base2Ops.find(Base); - if (BI == Base2Ops.end()) { - Base2Ops[Base].push_back(&MI); + auto FindBases = [&](Base2InstMap &Base2Ops, BaseVec &Bases) { + auto [BI, Inserted] = Base2Ops.try_emplace(Base); + if (Inserted) { + BI->second.push_back(&MI); Bases.push_back(Base); return; } |
