[llvm-branch-commits] [mlir] 91eb719 - Revert "[mlir][ExecutionEngine] Add support for global constructors and destructors"

via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Mon Jan 15 06:10:14 PST 2024


Author: Cullen Rhodes
Date: 2024-01-15T14:10:08Z
New Revision: 91eb719cae57c7787af56401d2e63545cc53bc75

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

LOG: Revert "[mlir][ExecutionEngine] Add support for global constructors and destructors"

Added: 
    

Modified: 
    mlir/lib/ExecutionEngine/ExecutionEngine.cpp

Removed: 
    mlir/test/mlir-cpu-runner/global-constructors.mlir


################################################################################
diff  --git a/mlir/lib/ExecutionEngine/ExecutionEngine.cpp b/mlir/lib/ExecutionEngine/ExecutionEngine.cpp
index d4ad2da045e2c4..267ec236d3fd59 100644
--- a/mlir/lib/ExecutionEngine/ExecutionEngine.cpp
+++ b/mlir/lib/ExecutionEngine/ExecutionEngine.cpp
@@ -219,9 +219,6 @@ ExecutionEngine::ExecutionEngine(bool enableObjectDump,
 }
 
 ExecutionEngine::~ExecutionEngine() {
-  // Execute the global destructors from the module being processed.
-  if (jit)
-    llvm::consumeError(jit->deinitialize(jit->getMainJITDylib()));
   // Run all dynamic library destroy callbacks to prepare for the shutdown.
   for (LibraryDestroyFn destroy : destroyFns)
     destroy();
@@ -399,9 +396,6 @@ ExecutionEngine::create(Operation *m, const ExecutionEngineOptions &options,
   };
   engine->registerSymbols(runtimeSymbolMap);
 
-  // Execute the global constructors from the module being processed.
-  cantFail(engine->jit->initialize(engine->jit->getMainJITDylib()));
-
   return std::move(engine);
 }
 

diff  --git a/mlir/test/mlir-cpu-runner/global-constructors.mlir b/mlir/test/mlir-cpu-runner/global-constructors.mlir
deleted file mode 100644
index 3ebcaeccc83e32..00000000000000
--- a/mlir/test/mlir-cpu-runner/global-constructors.mlir
+++ /dev/null
@@ -1,32 +0,0 @@
-// RUN: mlir-cpu-runner %s -e entry -entry-point-result=void  \
-// RUN: -shared-libs=%mlir_c_runner_utils | \
-// RUN: FileCheck %s
-
-// Test that the `ctor` executes before `entry` and that `dtor` executes last.
-module {
-  llvm.func @printNewline()
-  llvm.func @printI64(i64)
-  llvm.mlir.global_ctors {ctors = [@ctor], priorities = [0 : i32]}
-  llvm.mlir.global_dtors {dtors = [@dtor], priorities = [0 : i32]}
-  llvm.func @ctor() {
-    %0 = llvm.mlir.constant(1 : i64) : i64
-    llvm.call @printI64(%0) : (i64) -> ()
-    llvm.call @printNewline() : () -> ()
-    // CHECK: 1
-    llvm.return
-  }
-  llvm.func @entry() {
-    %0 = llvm.mlir.constant(2 : i64) : i64
-    llvm.call @printI64(%0) : (i64) -> ()
-    llvm.call @printNewline() : () -> ()
-    // CHECK: 2
-    llvm.return
-  }
-  llvm.func @dtor() {
-    %0 = llvm.mlir.constant(3 : i64) : i64
-    llvm.call @printI64(%0) : (i64) -> ()
-    llvm.call @printNewline() : () -> ()
-    // CHECK: 3
-    llvm.return
-  }
-}


        


More information about the llvm-branch-commits mailing list