Skip to content

[flang] Implement workdistribute construct lowering #140523

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 29 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
d80d54b
Add coexecute directives
ivanradanov Dec 4, 2023
9235aae
[OpenMP] Fix Coexecute definitions
skc7 May 13, 2025
e67e21e
Add omp.coexecute op
ivanradanov Dec 4, 2023
2fb623b
Initial frontend support for coexecute
ivanradanov Dec 5, 2023
21a9367
[OpenMP] Fixes for coexecute definitions
skc7 May 13, 2025
479f166
[OpenMP] Use workdistribute instead of coexecute
skc7 May 14, 2025
f7d6a3b
[OpenMP] workdistribute trivial lowering
skc7 May 14, 2025
4600101
[Flang][OpenMP] Add workdistribute lower pass to pipeline
skc7 May 14, 2025
3ad6d57
[Flang][OpenMP] Add FissionWorkdistribute lowering.
skc7 May 15, 2025
7becfee
[OpenMP][Flang] Lower teams workdistribute do_loop to wsloop.
skc7 May 18, 2025
b23969d
clang format
skc7 May 19, 2025
4470969
update to workdistribute lowering
skc7 May 27, 2025
0166ceb
Fix basic-program.fir test.
skc7 May 28, 2025
7f8b3a2
Wrap omp.target with omp.target_data
skc7 May 30, 2025
c36df10
Add fission of target region
skc7 Jun 3, 2025
611f8b9
Use fir.convert instead of unrealised cast
skc7 Jun 6, 2025
99b8d67
[Flang] Add fir omp target alloc and free ops
skc7 Jun 10, 2025
cd7eb59
[Flang] Add fir omp target alloc and free ops
skc7 Jun 10, 2025
7feb019
[Flang] Add Assign_omp fortran-rt function
skc7 Jun 13, 2025
099274d
[Flang] Fix workdistribute tests
skc7 Jun 13, 2025
73f1e0d
[Flang] Fix omp target alloc mem lowering
skc7 Jun 16, 2025
559df28
[Flang] Update assign_omp logic
skc7 Jun 18, 2025
3b34aef
[Flang] Bail out if lower-workdistribute didn't patternmatch.
skc7 Jun 18, 2025
7ab0ba7
[flang-rt] Use omp_get_mapped_ptr to get device ptrs.
skc7 Jun 19, 2025
a5adfcc
[OMP] Update OMP_Workdistribute directive definition.
skc7 Jun 23, 2025
8669a40
[Flang] Update omp::TargetOp calls
skc7 Jun 23, 2025
002610d
Remove frontend and pre-requisite chanes, as they are in seperate PRs…
skc7 Jun 27, 2025
cd3ed43
Remove older changes
skc7 Jun 27, 2025
b6ca26a
[Flang] Remove rewrite patterns in lower-workdistribute.
skc7 Jul 4, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions flang/include/flang/Optimizer/OpenMP/Passes.td
Original file line number Diff line number Diff line change
Expand Up @@ -93,6 +93,10 @@ def LowerWorkshare : Pass<"lower-workshare", "::mlir::ModuleOp"> {
let summary = "Lower workshare construct";
}

def LowerWorkdistribute : Pass<"lower-workdistribute", "::mlir::ModuleOp"> {
let summary = "Lower workdistribute construct";
}

def GenericLoopConversionPass
: Pass<"omp-generic-loop-conversion", "mlir::func::FuncOp"> {
let summary = "Converts OpenMP generic `omp.loop` to semantically "
Expand Down
1 change: 1 addition & 0 deletions flang/lib/Optimizer/OpenMP/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ add_flang_library(FlangOpenMPTransforms
MapsForPrivatizedSymbols.cpp
MapInfoFinalization.cpp
MarkDeclareTarget.cpp
LowerWorkdistribute.cpp
LowerWorkshare.cpp
LowerNontemporal.cpp

Expand Down
Loading
Loading