diff --git a/llvm/tools/llvm-jitlink/llvm-jitlink-elf.cpp b/llvm/tools/llvm-jitlink/llvm-jitlink-elf.cpp index 6aa89413b7230..8bd17ebb6317a 100644 --- a/llvm/tools/llvm-jitlink/llvm-jitlink-elf.cpp +++ b/llvm/tools/llvm-jitlink/llvm-jitlink-elf.cpp @@ -104,14 +104,15 @@ Error registerELFGraphInfo(Session &S, LinkGraph &G) { std::lock_guard Lock(S.M); auto FileName = sys::path::filename(G.getName()); - if (S.FileInfos.count(FileName)) { + auto [It, Inserted] = S.FileInfos.try_emplace(FileName); + if (!Inserted) { return make_error("When -check is passed, file names must be " "distinct (duplicate: \"" + FileName + "\")", inconvertibleErrorCode()); } - auto &FileInfo = S.FileInfos[FileName]; + auto &FileInfo = It->second; LLVM_DEBUG({ dbgs() << "Registering ELF file info for \"" << FileName << "\"\n"; });