diff --git a/clang/tools/clang-offload-packager/ClangOffloadPackager.cpp b/clang/tools/clang-offload-packager/ClangOffloadPackager.cpp index c6d5b31ab512c..49cb0d70f492b 100644 --- a/clang/tools/clang-offload-packager/ClangOffloadPackager.cpp +++ b/clang/tools/clang-offload-packager/ClangOffloadPackager.cpp @@ -70,10 +70,9 @@ static DenseMap getImageArguments(StringRef Image, DenseMap Args; for (StringRef Arg : llvm::split(Image, ",")) { auto [Key, Value] = Arg.split("="); - if (Args.count(Key)) - Args[Key] = Saver.save(Args[Key] + "," + Value); - else - Args[Key] = Value; + auto [It, Inserted] = Args.try_emplace(Key, Value); + if (!Inserted) + It->second = Saver.save(It->second + "," + Value); } return Args;