[flang-commits] [flang] [flang][OpenACC] Skip non-loop evaluations when descending a collapsed/tiled DO nest (PR #223579)
via flang-commits
flang-commits at lists.llvm.org
Wed Sep 16 05:43:12 PDT 2026
================
@@ -3461,6 +3461,21 @@ class FirConverter : public Fortran::lower::AbstractConverter {
attachToDoStmt(e);
}
+ /// Warn about each compiler directive (e.g. !DIR$ IVDEP) found in
+ /// \p skipped. These are evaluations that were skipped over while
+ /// descending a collapsed or tiled loop nest to find the next inner
+ /// DO CONSTRUCT (see findNestedDoConstructEvaluation): since the
+ /// directive is neither part of the collapsed loop's body nor attached
+ /// to a DO statement that is separately lowered, it has no effect.
+ void warnAboutSkippedDirectives(
+ llvm::ArrayRef<Fortran::lower::pft::Evaluation *> skipped) {
+ for (Fortran::lower::pft::Evaluation *e : skipped)
+ if (e->isDirective())
----------------
jeanPerier wrote:
Do you know what are the other nodes that are now silently ignored?
I would advise using a positive list of what is can be ignored and to emit a TODO/assert if something unexpected is ignored here.
https://github.com/llvm/llvm-project/pull/223579
More information about the flang-commits
mailing list