[clang] 43c82a8 - [clang-installapi] Avoid repeated hash lookups (NFC) (#126677)
via cfe-commits
cfe-commits at lists.llvm.org
Tue Feb 11 09:07:50 PST 2025
Author: Kazu Hirata
Date: 2025-02-11T09:07:46-08:00
New Revision: 43c82a8e07819ad0553ef0dffedff3c8b8cecf5e
URL: https://github.com/llvm/llvm-project/commit/43c82a8e07819ad0553ef0dffedff3c8b8cecf5e
DIFF: https://github.com/llvm/llvm-project/commit/43c82a8e07819ad0553ef0dffedff3c8b8cecf5e.diff
LOG: [clang-installapi] Avoid repeated hash lookups (NFC) (#126677)
Added:
Modified:
clang/tools/clang-installapi/Options.cpp
Removed:
################################################################################
diff --git a/clang/tools/clang-installapi/Options.cpp b/clang/tools/clang-installapi/Options.cpp
index 8a2c3463189fa9..0dddcfce58ca69 100644
--- a/clang/tools/clang-installapi/Options.cpp
+++ b/clang/tools/clang-installapi/Options.cpp
@@ -263,11 +263,12 @@ bool Options::processInstallAPIXOptions(InputArgList &Args) {
}
const StringRef ASpelling = NextA->getSpelling();
const auto &AValues = NextA->getValues();
+ auto &UniqueArgs = FEOpts.UniqueArgs[Label];
if (AValues.empty())
- FEOpts.UniqueArgs[Label].emplace_back(ASpelling.str());
+ UniqueArgs.emplace_back(ASpelling.str());
else
for (const StringRef Val : AValues)
- FEOpts.UniqueArgs[Label].emplace_back((ASpelling + Val).str());
+ UniqueArgs.emplace_back((ASpelling + Val).str());
A->claim();
NextA->claim();
@@ -608,32 +609,37 @@ Options::processAndFilterOutInstallAPIOptions(ArrayRef<const char *> Args) {
ParsedArgs.hasArg(OPT_not_for_dyld_shared_cache);
for (const Arg *A : ParsedArgs.filtered(OPT_allowable_client)) {
+ auto It = ArgToArchMap.find(A);
LinkerOpts.AllowableClients[A->getValue()] =
- ArgToArchMap.count(A) ? ArgToArchMap[A] : ArchitectureSet();
+ It != ArgToArchMap.end() ? It->second : ArchitectureSet();
A->claim();
}
for (const Arg *A : ParsedArgs.filtered(OPT_reexport_l)) {
+ auto It = ArgToArchMap.find(A);
LinkerOpts.ReexportedLibraries[A->getValue()] =
- ArgToArchMap.count(A) ? ArgToArchMap[A] : ArchitectureSet();
+ It != ArgToArchMap.end() ? It->second : ArchitectureSet();
A->claim();
}
for (const Arg *A : ParsedArgs.filtered(OPT_reexport_library)) {
+ auto It = ArgToArchMap.find(A);
LinkerOpts.ReexportedLibraryPaths[A->getValue()] =
- ArgToArchMap.count(A) ? ArgToArchMap[A] : ArchitectureSet();
+ It != ArgToArchMap.end() ? It->second : ArchitectureSet();
A->claim();
}
for (const Arg *A : ParsedArgs.filtered(OPT_reexport_framework)) {
+ auto It = ArgToArchMap.find(A);
LinkerOpts.ReexportedFrameworks[A->getValue()] =
- ArgToArchMap.count(A) ? ArgToArchMap[A] : ArchitectureSet();
+ It != ArgToArchMap.end() ? It->second : ArchitectureSet();
A->claim();
}
for (const Arg *A : ParsedArgs.filtered(OPT_rpath)) {
+ auto It = ArgToArchMap.find(A);
LinkerOpts.RPaths[A->getValue()] =
- ArgToArchMap.count(A) ? ArgToArchMap[A] : ArchitectureSet();
+ It != ArgToArchMap.end() ? It->second : ArchitectureSet();
A->claim();
}
More information about the cfe-commits
mailing list