Skip to content

Commit 160b727

Browse files
[CodeGen] Use DenseMap::try_emplace (NFC) (#165165)
With try_emplace, we can pass the key and the arguments for the value's constructor, which is a lot shorter than: Map.insert(std::make_pair(Key, ValueType(Arg1, Arg2)))
1 parent abdef44 commit 160b727

File tree

2 files changed

+4
-5
lines changed

2 files changed

+4
-5
lines changed

llvm/lib/CodeGen/AsmPrinter/AddressPool.cpp

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,7 @@ using namespace llvm;
1818

1919
unsigned AddressPool::getIndex(const MCSymbol *Sym, bool TLS) {
2020
resetUsedFlag(true);
21-
auto IterBool =
22-
Pool.insert(std::make_pair(Sym, AddressPoolEntry(Pool.size(), TLS)));
21+
auto IterBool = Pool.try_emplace(Sym, Pool.size(), TLS);
2322
return IterBool.first->second.Number;
2423
}
2524

llvm/lib/CodeGen/TailDuplicator.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -363,7 +363,7 @@ void TailDuplicator::processPHI(
363363
Register SrcReg = MI->getOperand(SrcOpIdx).getReg();
364364
unsigned SrcSubReg = MI->getOperand(SrcOpIdx).getSubReg();
365365
const TargetRegisterClass *RC = MRI->getRegClass(DefReg);
366-
LocalVRMap.insert(std::make_pair(DefReg, RegSubRegPair(SrcReg, SrcSubReg)));
366+
LocalVRMap.try_emplace(DefReg, SrcReg, SrcSubReg);
367367

368368
// Insert a copy from source to the end of the block. The def register is the
369369
// available value liveout of the block.
@@ -411,7 +411,7 @@ void TailDuplicator::duplicateInstruction(
411411
const TargetRegisterClass *RC = MRI->getRegClass(Reg);
412412
Register NewReg = MRI->createVirtualRegister(RC);
413413
MO.setReg(NewReg);
414-
LocalVRMap.insert(std::make_pair(Reg, RegSubRegPair(NewReg, 0)));
414+
LocalVRMap.try_emplace(Reg, NewReg, 0);
415415
if (isDefLiveOut(Reg, TailBB, MRI) || UsedByPhi.count(Reg))
416416
addSSAUpdateEntry(Reg, NewReg, PredBB);
417417
continue;
@@ -463,7 +463,7 @@ void TailDuplicator::duplicateInstruction(
463463
NewReg)
464464
.addReg(VI->second.Reg, 0, VI->second.SubReg);
465465
LocalVRMap.erase(VI);
466-
LocalVRMap.insert(std::make_pair(Reg, RegSubRegPair(NewReg, 0)));
466+
LocalVRMap.try_emplace(Reg, NewReg, 0);
467467
MO.setReg(NewReg);
468468
// The composed VI.Reg:VI.SubReg is replaced with NewReg, which
469469
// is equivalent to the whole register Reg. Hence, Reg:subreg

0 commit comments

Comments
 (0)