[clang] cf5947b - [TableGen] Avoid repeated map lookups (NFC) (#126381)

via cfe-commits cfe-commits at lists.llvm.org
Sat Feb 8 11:36:38 PST 2025


Author: Kazu Hirata
Date: 2025-02-08T11:36:35-08:00
New Revision: cf5947be13e7af67219379e07bc0128f1f1e7f88

URL: https://github.com/llvm/llvm-project/commit/cf5947be13e7af67219379e07bc0128f1f1e7f88
DIFF: https://github.com/llvm/llvm-project/commit/cf5947be13e7af67219379e07bc0128f1f1e7f88.diff

LOG: [TableGen] Avoid repeated map lookups (NFC) (#126381)

Added: 
    

Modified: 
    clang/utils/TableGen/ClangOptionDocEmitter.cpp

Removed: 
    


################################################################################
diff  --git a/clang/utils/TableGen/ClangOptionDocEmitter.cpp b/clang/utils/TableGen/ClangOptionDocEmitter.cpp
index e08fb11df31002..b6c1aad90b5cb9 100644
--- a/clang/utils/TableGen/ClangOptionDocEmitter.cpp
+++ b/clang/utils/TableGen/ClangOptionDocEmitter.cpp
@@ -109,13 +109,17 @@ Documentation extractDocumentation(const RecordKeeper &Records,
     // Pretend no-X and Xno-Y options are aliases of X and XY.
     std::string Name = std::string(R->getValueAsString("Name"));
     if (Name.size() >= 4) {
-      if (Name.substr(0, 3) == "no-" && OptionsByName[Name.substr(3)]) {
-        Aliases[OptionsByName[Name.substr(3)]].push_back(R);
-        continue;
+      if (Name.substr(0, 3) == "no-") {
+        if (const Record *Opt = OptionsByName[Name.substr(3)]) {
+          Aliases[Opt].push_back(R);
+          continue;
+        }
       }
-      if (Name.substr(1, 3) == "no-" && OptionsByName[Name[0] + Name.substr(4)]) {
-        Aliases[OptionsByName[Name[0] + Name.substr(4)]].push_back(R);
-        continue;
+      if (Name.substr(1, 3) == "no-") {
+        if (const Record *Opt = OptionsByName[Name[0] + Name.substr(4)]) {
+          Aliases[Opt].push_back(R);
+          continue;
+        }
       }
     }
 


        


More information about the cfe-commits mailing list