[Mlir-commits] [mlir] [TableGen] Avoid repeated hash lookups (NFC) (PR #107429)

Kazu Hirata llvmlistbot at llvm.org
Thu Sep 5 09:59:57 PDT 2024


https://github.com/kazutakahirata created https://github.com/llvm/llvm-project/pull/107429

None

>From eebc235a2dec602480789ad74b2dfa7b90c576b2 Mon Sep 17 00:00:00 2001
From: Kazu Hirata <kazu at google.com>
Date: Thu, 5 Sep 2024 08:52:23 -0700
Subject: [PATCH] [TableGen] Avoid repeated hash lookups (NFC)

---
 mlir/lib/TableGen/Pattern.cpp | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/mlir/lib/TableGen/Pattern.cpp b/mlir/lib/TableGen/Pattern.cpp
index afb69e7cc55866..1be0e744ffbc86 100644
--- a/mlir/lib/TableGen/Pattern.cpp
+++ b/mlir/lib/TableGen/Pattern.cpp
@@ -137,11 +137,10 @@ llvm::StringRef DagNode::getSymbol() const { return node->getNameStr(); }
 
 Operator &DagNode::getDialectOp(RecordOperatorMap *mapper) const {
   llvm::Record *opDef = cast<llvm::DefInit>(node->getOperator())->getDef();
-  auto it = mapper->find(opDef);
-  if (it != mapper->end())
-    return *it->second;
-  return *mapper->try_emplace(opDef, std::make_unique<Operator>(opDef))
-              .first->second;
+  auto [it, inserted] = mapper->try_emplace(opDef);
+  if (inserted)
+    it->second = std::make_unique<Operator>(opDef);
+  return *it->second;
 }
 
 int DagNode::getNumOps() const {



More information about the Mlir-commits mailing list