-
Notifications
You must be signed in to change notification settings - Fork 16
[flang][OpenMP] Added support for lowering OpenMP barrier construct #248
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
Conversation
This patch adds lowering support for OpenMP barrier construct to OpenMP Dialect operations. In order to support lowering, this patch registers OpenMPDialect and also adds OpenMPDialect to the legalizer.
Unfortunately, we are still upstreaming code. Merging into fir-dev for the moment to eliminate divergence will benefit everyone involved. It allows building, testing, coordinating, and the upstreaming process not to be derailed by creating diverging forks of the code. The good news is that upstreaming is continuing to close the gap. |
- Replace switch case with individual case statement as per enum. - Modified test case to use tco tool for validating lowering to llvmir.
Summary: This patch implements lowering of OpenMP barrier construct from pft to OpenMPDialect. Patch is carved out of following merged PR's from fir-dev branch of https://github.com/flang-compiler/f18-llvm-project/ PR's: flang-compiler#248 flang-compiler#251 Unfortunately primary tool `bbc` for functional validation is not yet upstreamed. So this patch includes a unittest for lowering `!OMP barrier` construct. Some part of the these PR's still remains downstream(functional test and dialect registration to legalizer) for obvious reasons. Will upstream them when the dependencies are upstreamed. Reviewed By: schweitz, kiranchandramohan Differential Revision: https://reviews.llvm.org/D83659
Summary: This patch implements lowering of OpenMP barrier construct from pft to OpenMPDialect. Patch is carved out of following merged PR's from fir-dev branch of https://github.com/flang-compiler/f18-llvm-project/ PR's: flang-compiler/f18-llvm-project#248 flang-compiler/f18-llvm-project#251 Unfortunately primary tool `bbc` for functional validation is not yet upstreamed. So this patch includes a unittest for lowering `!OMP barrier` construct. Some part of the these PR's still remains downstream(functional test and dialect registration to legalizer) for obvious reasons. Will upstream them when the dependencies are upstreamed. Reviewed By: schweitz, kiranchandramohan Differential Revision: https://reviews.llvm.org/D83659
Summary: This patch implements lowering of OpenMP barrier construct from pft to OpenMPDialect. Patch is carved out of following merged PR's from fir-dev branch of https://github.com/flang-compiler/f18-llvm-project/ PR's: flang-compiler/f18-llvm-project#248 flang-compiler/f18-llvm-project#251 Unfortunately primary tool `bbc` for functional validation is not yet upstreamed. So this patch includes a unittest for lowering `!OMP barrier` construct. Some part of the these PR's still remains downstream(functional test and dialect registration to legalizer) for obvious reasons. Will upstream them when the dependencies are upstreamed. Reviewed By: schweitz, kiranchandramohan Differential Revision: https://reviews.llvm.org/D83659
Merge attempt by ../aomp/trunk/merge_from_main.sh into branch amd-trunk-dev
This patch adds lowering support for OpenMP barrier construct to OpenMP Dialect operations.
Since this is the very first patch in this direction, so in order to support lowering, this patch do following infra setup:
registers OpenMPDialect for lowering.
registers OpenMPDialect as a legal Dialect to the legalizer.
Also setup some basic infrastructure to lower other OpenMP constructs. This is in spirit to convey the overall design of lowering to OpenMP Dialect.
Patch is mergeable/upstream, but since upstream flang doesn't have bbc so this can't be validated in upstream. However if community wants we can have review here and merge it in upstream(leaving the test case down stream in this branch).