[flang-commits] [flang] [flang][hlfir] optimize hlfir.eval_in_mem bufferization (PR #118069)

via flang-commits flang-commits at lists.llvm.org
Mon Dec 2 02:04:49 PST 2024


================
@@ -1108,6 +1108,113 @@ class ReductionMaskConversion : public mlir::OpRewritePattern<Op> {
   }
 };
 
+class EvaluateIntoMemoryAssignBufferization
+    : public mlir::OpRewritePattern<hlfir::EvaluateInMemoryOp> {
+
+public:
+  using mlir::OpRewritePattern<hlfir::EvaluateInMemoryOp>::OpRewritePattern;
+
+  llvm::LogicalResult
+  matchAndRewrite(hlfir::EvaluateInMemoryOp,
+                  mlir::PatternRewriter &rewriter) const override;
+};
+
+static bool mayReadOrWrite(mlir::Region &region, mlir::Value var) {
----------------
jeanPerier wrote:

I actually moved this to AliasAnalysis.h/cpp as `AliasAnalysis::getModRef(mlir::Region&)` because that is a better fit and could be used elsewhere.

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


More information about the flang-commits mailing list