[flang] [llvm] [mlir] [flang][OpenMP] Enable tiling (PR #143715)
Sergio Afonso via llvm-commits
llvm-commits at lists.llvm.org
Thu Aug 28 07:14:17 PDT 2025
================
@@ -614,13 +614,19 @@ def WorkshareLoopWrapperOp : OpenMP_Op<"workshare.loop_wrapper", traits = [
def LoopNestOp : OpenMP_Op<"loop_nest", traits = [
RecursiveMemoryEffects, SameVariadicOperandSize
], clauses = [
- OpenMP_LoopRelatedClause
+ OpenMP_CollapseClause,
+ OpenMP_LoopRelatedClause,
+ OpenMP_TileSizesClause
], singleRegion = true> {
let summary = "rectangular loop nest";
let description = [{
- This operation represents a collapsed rectangular loop nest. For each
- rectangular loop of the nest represented by an instance of this operation,
- lower and upper bounds, as well as a step variable, must be defined.
+ This operation represents a rectangular loop nest which may be collapsed
+ and/or tiled. For each rectangular loop of the nest represented by an
+ instance of this operation, lower and upper bounds, as well as a step
+ variable, must be defined. The collapse clause specifies how many loops
+ that should be collapsed (1 if no collapse is done) after any tiling is
+ performed. The tiling sizes is represented by the tile sizes clause.
+
----------------
skatrak wrote:
```suggestion
```
https://github.com/llvm/llvm-project/pull/143715
More information about the llvm-commits
mailing list