[Mlir-commits] [mlir] c1d030e - [MLIR][ExecutionEngine] Don't create a `_mlir_` wrapper function for internal linkage (#171115)

llvmlistbot at llvm.org llvmlistbot at llvm.org
Mon Dec 8 05:42:05 PST 2025


Author: Mehdi Amini
Date: 2025-12-08T14:42:00+01:00
New Revision: c1d030e9a48c2167b52b8b296c9e30ecfb7adb40

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

LOG: [MLIR][ExecutionEngine] Don't create a `_mlir_` wrapper function for internal linkage (#171115)

This is somehow NFC, we were creating wrapper for interal functions,
which are de-facto not callable.

Added: 
    

Modified: 
    mlir/lib/ExecutionEngine/ExecutionEngine.cpp

Removed: 
    


################################################################################
diff  --git a/mlir/lib/ExecutionEngine/ExecutionEngine.cpp b/mlir/lib/ExecutionEngine/ExecutionEngine.cpp
index 2255633c746b3..287c52a262c11 100644
--- a/mlir/lib/ExecutionEngine/ExecutionEngine.cpp
+++ b/mlir/lib/ExecutionEngine/ExecutionEngine.cpp
@@ -146,12 +146,10 @@ static void packFunctionArguments(Module *module) {
   llvm::IRBuilder<> builder(ctx);
   DenseSet<llvm::Function *> interfaceFunctions;
   for (auto &func : module->getFunctionList()) {
-    if (func.isDeclaration()) {
+    if (func.isDeclaration() || func.hasLocalLinkage())
       continue;
-    }
-    if (interfaceFunctions.count(&func)) {
+    if (interfaceFunctions.count(&func))
       continue;
-    }
 
     // Given a function `foo(<...>)`, define the interface function
     // `mlir_foo(i8**)`.


        


More information about the Mlir-commits mailing list