[Openmp-commits] [clang] [flang] [llvm] [openmp] [Clang][OpenMP][LoopTransformations] Add support for "#pragma omp fuse" loop transformation directive and "looprange" clause (PR #139293)
Roger Ferrer Ibáñez via Openmp-commits
openmp-commits at lists.llvm.org
Thu Aug 28 08:11:27 PDT 2025
rofirrim wrote:
This change now builds on top of:
- https://github.com/llvm/llvm-project/pull/155849
- https://github.com/llvm/llvm-project/pull/155848
I added a new class `OMPCanonicalLoopSequenceTransformationDirective` which inherits from a common class `OMPLoopTransformationDirective` which is also a base class of `OMPCanonicalLoopNestTransformationDirective` (what used to be called `OMPLoopTransformationDirective`). This class only contains the number of (top-level) loop nests generated along with a some convenience methods for consistency.
`OMPFuseDirective` now inherits from `OMPCanonicalLoopSequenceTransformationDirective` as I think it doesn't make sense to make it inherit from `OMPLoopBasedDirective` like it used in an earlier version of this patch.
I have also squashed the changes for the Fuse implementation because it was getting hard to handle.
Please @Meinersbur, @alexey-bataev let me know if the refactoring seems reasonable.
https://github.com/llvm/llvm-project/pull/139293
More information about the Openmp-commits
mailing list