This patch adds support for lowering target-related combined constructs from PFT to MLIR. The lowering of OpenMP loop constructs is generalized in preparation for later supporting different combinations of target, teams, distribute, parallel and simd directives.
Currently enabled by this patch are the following combined constructs:
- do simd
- parallel do simd
- target parallel do simd
- target parallel do
- target simd
Nit: While you are are here, is it possible to print the name of the directive?