Commit a709b986 authored by Joel E. Denny's avatar Joel E. Denny
Browse files

[Clacc][OpenACC] Extend implicit worker/vector clause options

This patch adds `-fopenacc-implicit-worker=vector`, which instructs
Clacc's Clang to implicitly determine `worker` clauses only on `loop`
constructs with explicit `vector` clauses.  This choice can be useful
when compiling OpenACC applications primarily employing explicit
`gang` and `vector` clauses while targeting an OpenMP implementation
(like Clacc's) for which `omp simd` (to which Clacc translates
`vector`) does not increase parallelism for the given offload devices.

This patch also adds `-fopenacc-implicit-(worker|vector)=none|outer`
as aliases for `-f[no-]openacc-implicit-(worker|vector)`.

Finally, it adds `-fopenacc-implicit-worker=vector-outer`, which
instructs Clacc's Clang to apply `-fopenacc-implicit-worker=vector`
followed by `-fopenacc-implicit-worker=outer`.
parent 36a30419
Loading
Loading
Loading
Loading