Sergio Afonso
Sergio Afonso
This patch updates the definition of all OpenMP loop operations (`omp.distribute`, `omp.parallel`, `omp.wsloop`, `omp.simdloop`, `omp.taskloop`) to expect a nested `omp.loopnest` and act as wrapper operations instead. Loop information is removed...
This patch introduces the following changes: - Complete OpenMP directive sets to include masked and taskloop-related ones. - Refactor clause processing to store related operands in structures. These are combined...
This patch introduces the `omp.loopnest` MLIR operation, which contains the information of a rectangular collapsed loop nest. It mirrors the existing representation of `omp.wsloop`, `omp.simdloop` and `omp.taskloop`, with the intent...
This patch removes some internal functions from the OMPIRBuilder that are not used and do not exist upstream. They seem to have been left behind after some merge or improvements...
This PR enables Flang lowering and some preliminary MLIR to LLVM IR translation support for `teams` reductions. Translation to LLVM IR is limited at the moment: it has only been...
This patch updates Flang lowering and the `do concurrent` conversion pass to use the `host_eval` clause in `omp.target` operations to pass host information into the applicable clauses inside of the...
This patch updates the MLIR to LLVM IR lowering of `omp.target` to support passing `num_teams`, `num_threads`, `thread_limit` and SPMD loop bounds through the `host_eval` argument of `omp.target`. This replaces the...
This patch defines a map-like clause named `host_eval` used to capture host values for use inside of target regions on restricted cases: - As `num_teams` or `thread_limit` of a nested...