[flang-commits] [flang] [flang] `do concurrent`: fix reduction symbol resolution when mapping to OpenMP (PR #155355)

Kareem Ergawy via flang-commits flang-commits at lists.llvm.org
Tue Aug 26 22:11:57 PDT 2025


================
@@ -368,22 +368,28 @@ class DoConcurrentConversion
 
         mlir::OpBuilder::InsertionGuard guard(rewriter);
         rewriter.setInsertionPointAfter(firReducer);
-
-        auto ompReducer = mlir::omp::DeclareReductionOp::create(
-            rewriter, firReducer.getLoc(),
-            sym.getLeafReference().str() + ".omp",
-            firReducer.getTypeAttr().getValue());
-
-        cloneFIRRegionToOMP(firReducer.getAllocRegion(),
-                            ompReducer.getAllocRegion());
-        cloneFIRRegionToOMP(firReducer.getInitializerRegion(),
-                            ompReducer.getInitializerRegion());
-        cloneFIRRegionToOMP(firReducer.getReductionRegion(),
-                            ompReducer.getReductionRegion());
-        cloneFIRRegionToOMP(firReducer.getAtomicReductionRegion(),
-                            ompReducer.getAtomicReductionRegion());
-        cloneFIRRegionToOMP(firReducer.getCleanupRegion(),
-                            ompReducer.getCleanupRegion());
+        std::string ompReducerName = sym.getLeafReference().str() + ".omp";
+
+        auto ompReducer = mlir::SymbolTable::lookupNearestSymbolFrom<
----------------
ergawy wrote:

Thanks for the review. Done in ef29557e33199b42b423c53858dc9e8ece46109b.

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


More information about the flang-commits mailing list