diff options
author | Michael Kruse <llvm-project@meinersbur.de> | 2021-06-10 14:24:17 -0500 |
---|---|---|
committer | Michael Kruse <llvm-project@meinersbur.de> | 2021-06-10 14:30:17 -0500 |
commit | a22236120f17074532bec70f5916a235beddd475 (patch) | |
tree | e35ff3802c63414060214adf61922971595a5beb /clang/lib/CodeGen/CodeGenFunction.h | |
parent | e0c605f6383c5a3aa8f5fa34ed4be9dc51b4a2ae (diff) | |
download | llvm-a22236120f17074532bec70f5916a235beddd475.zip llvm-a22236120f17074532bec70f5916a235beddd475.tar.gz llvm-a22236120f17074532bec70f5916a235beddd475.tar.bz2 |
[OpenMP] Implement '#pragma omp unroll'.
Implementation of the unroll directive introduced in OpenMP 5.1. Follows the approach from D76342 for the tile directive (i.e. AST-based, not using the OpenMPIRBuilder). Tries to use `llvm.loop.unroll.*` metadata where possible, but has to fall back to an AST representation of the outer loop if the partially unrolled generated loop is associated with another directive (because it needs to compute the number of iterations).
Reviewed By: ABataev
Differential Revision: https://reviews.llvm.org/D99459
Diffstat (limited to 'clang/lib/CodeGen/CodeGenFunction.h')
-rw-r--r-- | clang/lib/CodeGen/CodeGenFunction.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/clang/lib/CodeGen/CodeGenFunction.h b/clang/lib/CodeGen/CodeGenFunction.h index 564063d..56120c4 100644 --- a/clang/lib/CodeGen/CodeGenFunction.h +++ b/clang/lib/CodeGen/CodeGenFunction.h @@ -3441,6 +3441,7 @@ public: void EmitOMPParallelDirective(const OMPParallelDirective &S); void EmitOMPSimdDirective(const OMPSimdDirective &S); void EmitOMPTileDirective(const OMPTileDirective &S); + void EmitOMPUnrollDirective(const OMPUnrollDirective &S); void EmitOMPForDirective(const OMPForDirective &S); void EmitOMPForSimdDirective(const OMPForSimdDirective &S); void EmitOMPSectionsDirective(const OMPSectionsDirective &S); |