[flang-commits] [flang] [Flang][OpenMP] Skip unrelated passes in simd-only mode (PR #219193)

Tom Eccles via flang-commits flang-commits at lists.llvm.org
Wed Sep 2 08:36:10 PDT 2026


================
@@ -377,6 +382,10 @@ void createOpenMPFIRPassPipeline(mlir::PassManager &pm,
   using DoConcurrentMappingKind =
       Fortran::frontend::CodeGenOptions::DoConcurrentMappingKind;
 
+  // None of the passes below apply to simd constructs, so skip them.
+  if (opts.isSimdOnly)
+    return;
+
   if (opts.doConcurrentMappingKind != DoConcurrentMappingKind::DCMK_None)
     pm.addPass(flangomp::createDoConcurrentConversionPass(
         opts.doConcurrentMappingKind == DoConcurrentMappingKind::DCMK_Device));
----------------
tblah wrote:

Sorry for the delay in me looking at this.

>From codex: `-fopenmp-simd -fdo-concurrent-to-openmp=...` does not do the openmp mapping (as it is now after the early return) and does not warn.

Usually, having `-fdo-concurrent-to-openmp=` without `-fopenmp` would create a warning.

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


More information about the flang-commits mailing list