[Mlir-commits] [mlir] 6ce4426 - [mlir] Use heterogenous lookups with std::map (NFC) (#115426)
llvmlistbot at llvm.org
llvmlistbot at llvm.org
Fri Nov 8 07:34:05 PST 2024
Author: Kazu Hirata
Date: 2024-11-08T07:33:59-08:00
New Revision: 6ce44266fc2d06dfcbefd8146279473ccada52ca
URL: https://github.com/llvm/llvm-project/commit/6ce44266fc2d06dfcbefd8146279473ccada52ca
DIFF: https://github.com/llvm/llvm-project/commit/6ce44266fc2d06dfcbefd8146279473ccada52ca.diff
LOG: [mlir] Use heterogenous lookups with std::map (NFC) (#115426)
Heterogenous lookups allow us to call find with StringRef, avoiding a
temporary heap allocation of std::string.
Added:
Modified:
mlir/include/mlir/IR/DialectRegistry.h
mlir/lib/IR/Dialect.cpp
Removed:
################################################################################
diff --git a/mlir/include/mlir/IR/DialectRegistry.h b/mlir/include/mlir/IR/DialectRegistry.h
index 2c1f6964998e83..d3d53488fe72df 100644
--- a/mlir/include/mlir/IR/DialectRegistry.h
+++ b/mlir/include/mlir/IR/DialectRegistry.h
@@ -138,7 +138,8 @@ bool hasPromisedInterface(Dialect &dialect) {
/// encountered.
class DialectRegistry {
using MapTy =
- std::map<std::string, std::pair<TypeID, DialectAllocatorFunction>>;
+ std::map<std::string, std::pair<TypeID, DialectAllocatorFunction>,
+ std::less<>>;
public:
explicit DialectRegistry();
diff --git a/mlir/lib/IR/Dialect.cpp b/mlir/lib/IR/Dialect.cpp
index cc80677a4078f8..47568594947cfc 100644
--- a/mlir/lib/IR/Dialect.cpp
+++ b/mlir/lib/IR/Dialect.cpp
@@ -217,7 +217,7 @@ DialectRegistry::DialectRegistry() { insert<BuiltinDialect>(); }
DialectAllocatorFunctionRef
DialectRegistry::getDialectAllocator(StringRef name) const {
- auto it = registry.find(name.str());
+ auto it = registry.find(name);
if (it == registry.end())
return nullptr;
return it->second.second;
More information about the Mlir-commits
mailing list