[clang] [llvm] [Clang] [OpenMP] Add support for '#pragma omp stripe'. (PR #119891)
Zahira Ammarguellat via llvm-commits
llvm-commits at lists.llvm.org
Tue Dec 24 12:35:57 PST 2024
================
@@ -5621,6 +5623,81 @@ class OMPTileDirective final : public OMPLoopTransformationDirective {
}
};
+class OMPStripeDirective final : public OMPLoopTransformationDirective {
+ friend class ASTStmtReader;
+ friend class OMPExecutableDirective;
+
+ /// Default list of offsets.
+ enum {
+ PreInitsOffset = 0,
+ TransformedStmtOffset,
+ };
+
+ explicit OMPStripeDirective(SourceLocation StartLoc, SourceLocation EndLoc,
+ unsigned NumLoops)
+ : OMPLoopTransformationDirective(OMPStripeDirectiveClass,
+ llvm::omp::OMPD_stripe, StartLoc, EndLoc,
+ NumLoops) {
+ setNumGeneratedLoops(3 * NumLoops);
----------------
zahiraam wrote:
I think so. The behavior of `stripe` is the same than `tile` (chapter 11.7) So I basically just used the same number of generated loops.
https://github.com/llvm/llvm-project/pull/119891
More information about the llvm-commits
mailing list