Skip to content

Commit e16585a

Browse files
committed
[flang][OpenMP] Implement flexible OpenMP clause representation
Introduce a set of generic classes (templates) that represent OpenMP clauses in a language-agnostic manner. OpenMP clauses can contain expressions and data objects and the exact representation of each depends on the source language of the compiled program. To deal with this, the templates depend on two type parameters: - IdType: type that represent object's identity (in a way that satisfied OpenMP requirements), and - ExprType: type that can represent numeric values, as well as data references (e.g. x.y[1].z[2]). In addition to that, implement code instantiating these templates from flang's AST. This patch only introduces the new classes, they are not yet used anywhere.
1 parent c9afd1a commit e16585a

File tree

4 files changed

+1641
-0
lines changed

4 files changed

+1641
-0
lines changed

flang/lib/Lower/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ add_flang_library(FortranLower
2525
Mangler.cpp
2626
OpenACC.cpp
2727
OpenMP/ClauseProcessor.cpp
28+
OpenMP/Clauses.cpp
2829
OpenMP/DataSharingProcessor.cpp
2930
OpenMP/OpenMP.cpp
3031
OpenMP/ReductionProcessor.cpp

0 commit comments

Comments
 (0)