Skip to content

Commit 0a08d71

Browse files
[DebugInfo] Avoid repeated hash lookups (NFC) (#132586)
1 parent 6ecc1ff commit 0a08d71

File tree

1 file changed

+4
-3
lines changed

1 file changed

+4
-3
lines changed

llvm/lib/DebugInfo/PDB/Native/SymbolCache.cpp

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -627,14 +627,15 @@ SymbolCache::getSourceFileById(SymIndexId FileId) const {
627627

628628
SymIndexId
629629
SymbolCache::getOrCreateSourceFile(const FileChecksumEntry &Checksums) const {
630-
auto Iter = FileNameOffsetToId.find(Checksums.FileNameOffset);
631-
if (Iter != FileNameOffsetToId.end())
630+
auto [Iter, Inserted] =
631+
FileNameOffsetToId.try_emplace(Checksums.FileNameOffset);
632+
if (!Inserted)
632633
return Iter->second;
633634

634635
SymIndexId Id = SourceFiles.size();
635636
auto SrcFile = std::make_unique<NativeSourceFile>(Session, Id, Checksums);
636637
SourceFiles.push_back(std::move(SrcFile));
637-
FileNameOffsetToId[Checksums.FileNameOffset] = Id;
638+
Iter->second = Id;
638639
return Id;
639640
}
640641

0 commit comments

Comments
 (0)