[flang-commits] [flang] [flang][fir] Add affine optimization pass pipeline. (PR #138627)

Kiran Chandramohan via flang-commits flang-commits at lists.llvm.org
Wed May 7 02:27:32 PDT 2025


================
@@ -211,6 +211,23 @@ void createDefaultFIROptimizerPassPipeline(mlir::PassManager &pm,
 
   addNestedPassToAllTopLevelOperations<PassConstructor>(
       pm, fir::createStackReclaim);
+
+  if (enableAffineOpt && pc.OptLevel.isOptimizingForSpeed()) {
+    pm.addPass(fir::createPromoteToAffinePass());
+    pm.addPass(mlir::createCSEPass());
+    pm.addPass(mlir::affine::createAffineLoopInvariantCodeMotionPass());
+    pm.addPass(mlir::affine::createAffineLoopNormalizePass());
+    pm.addPass(mlir::affine::createSimplifyAffineStructuresPass());
+    pm.addPass(mlir::affine::createAffineParallelize(
----------------
kiranchandramohan wrote:

Is `AffineParallelize` specific for parallelizing to multiple threads or is it also applicable for single-thread transformations as well?

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


More information about the flang-commits mailing list