[Mlir-commits] [mlir] [MLIR][ExecutionEngine] Restore internal _mlir_{*} symbol lookup (PR #159941)
Balint Cristian
llvmlistbot at llvm.org
Sat Sep 20 12:09:08 PDT 2025
https://github.com/cbalint13 updated https://github.com/llvm/llvm-project/pull/159941
>From a342136449eacdc08547a776b7d711e119b45b7a Mon Sep 17 00:00:00 2001
From: Balint Cristian <cristian.balint at gmail.com>
Date: Sat, 20 Sep 2025 21:42:16 +0300
Subject: [PATCH] [MLIR][ExecutionEngine] Restore internal _mlir_{*} symbol
lookup
---
mlir/lib/ExecutionEngine/ExecutionEngine.cpp | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)
diff --git a/mlir/lib/ExecutionEngine/ExecutionEngine.cpp b/mlir/lib/ExecutionEngine/ExecutionEngine.cpp
index 52162a43aeae3..85775aefd1a02 100644
--- a/mlir/lib/ExecutionEngine/ExecutionEngine.cpp
+++ b/mlir/lib/ExecutionEngine/ExecutionEngine.cpp
@@ -134,7 +134,27 @@ void ExecutionEngine::setupTargetTripleAndDataLayout(Module *llvmModule,
llvmModule->setTargetTriple(tm->getTargetTriple());
}
+static StringRef lookupBuiltinCRunnerNames(StringRef name) {
+ static const llvm::StringMap<StringRef> nameMap = {
+ {"alloc", "mlirAlloc"},
+ {"aligned_alloc", "mlirAlignedAlloc"},
+ {"malloc", "mlirAlloc"},
+ {"free", "mlirFree"},
+ {"aligned_free", "mlirAlignedFree"}};
+
+ auto it = nameMap.find(name);
+ if (it != nameMap.end()) {
+ return it->second;
+ }
+
+ return {};
+}
+
static std::string makePackedFunctionName(StringRef name) {
+ auto cfuncName = lookupBuiltinCRunnerNames(name);
+ if (!cfuncName.empty())
+ return cfuncName.str();
+
return "_mlir_" + name.str();
}
More information about the Mlir-commits
mailing list