llvmbot wrote:

<!--LLVM PR SUMMARY COMMENT-->

@llvm/pr-subscribers-flang-fir-hlfir

Author: Tom Eccles (tblah)

<details>
<summary>Changes</summary>

TBAA builder assumed that all loads/stores are inside of functions and hit an 
assertion once it found loads and stores inside of an omp::ReductionDeclareOp.

For now just don't add TBAA tags to those loads and stores. They would end up 
in a different TBAA tree to the host function after OpenMPIRBuilder inlines 
them anyway so there isn't an easy way of making this work.

Commit series for by-ref OpenMP reductions: 2/3

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


1 Files Affected:

- (modified) flang/lib/Optimizer/CodeGen/TBAABuilder.cpp (+2-1) 


``````````diff
diff --git a/flang/lib/Optimizer/CodeGen/TBAABuilder.cpp 
b/flang/lib/Optimizer/CodeGen/TBAABuilder.cpp
index 8e7f59f76383c9..b1b0e9b766a625 100644
--- a/flang/lib/Optimizer/CodeGen/TBAABuilder.cpp
+++ b/flang/lib/Optimizer/CodeGen/TBAABuilder.cpp
@@ -102,7 +102,8 @@ void TBAABuilder::attachTBAATag(AliasAnalysisOpInterface 
op, Type baseFIRType,
     return;
 
   mlir::LLVM::LLVMFuncOp func = op->getParentOfType<mlir::LLVM::LLVMFuncOp>();
-  assert(func && "func.func should have already been converted to llvm.func");
+  if (!func)
+    return;
 
   ++tagAttachmentCounter;
   if (tagAttachmentLimit != kTagAttachmentUnlimited &&

``````````

</details>


https://github.com/llvm/llvm-project/pull/84305
_______________________________________________
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

Reply via email to