[Mlir-commits] [mlir] [mlir][LLVMIR] Add LLVMDialect check in `DIScopeForLLVMFuncOp` (PR #110427)

llvmlistbot at llvm.org llvmlistbot at llvm.org
Sun Sep 29 08:43:07 PDT 2024


llvmbot wrote:


<!--LLVM PR SUMMARY COMMENT-->

@llvm/pr-subscribers-mlir

Author: Longsheng Mou (CoTinker)

<details>
<summary>Changes</summary>

This PR adds an LLVMDialect check in `DIScopeForLLVMFuncOp` to prevent crashes. Fixes #<!-- -->108390.

---
Full diff: https://github.com/llvm/llvm-project/pull/110427.diff


1 Files Affected:

- (modified) mlir/lib/Dialect/LLVMIR/Transforms/DIScopeForLLVMFuncOp.cpp (+4) 


``````````diff
diff --git a/mlir/lib/Dialect/LLVMIR/Transforms/DIScopeForLLVMFuncOp.cpp b/mlir/lib/Dialect/LLVMIR/Transforms/DIScopeForLLVMFuncOp.cpp
index 2cfaffa7c8efce..a4733bd14c9f67 100644
--- a/mlir/lib/Dialect/LLVMIR/Transforms/DIScopeForLLVMFuncOp.cpp
+++ b/mlir/lib/Dialect/LLVMIR/Transforms/DIScopeForLLVMFuncOp.cpp
@@ -91,6 +91,10 @@ struct DIScopeForLLVMFuncOp
     Location loc = module.getLoc();
 
     MLIRContext *context = &getContext();
+    if (!context->getLoadedDialect<LLVM::LLVMDialect>()) {
+      emitError(loc, "LLVM dialect is not loaded.");
+      return;
+    }
 
     // To find a DICompileUnitAttr attached to a parent (the module for
     // example), otherwise create a default one.

``````````

</details>


https://github.com/llvm/llvm-project/pull/110427


More information about the Mlir-commits mailing list