https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105640
Bug ID: 105640
Summary: [OpenMP] Context selectors missing for PowerPC
Product: gcc
Version: 13.0
Status: UNCONFIRMED
Keywords: openmp
Severity: normal
Priority: P3
Component: middle-end
Assignee: unassigned at gcc dot gnu.org
Reporter: burnus at gcc dot gnu.org
CC: jakub at gcc dot gnu.org
Target Milestone: ---
Target: powerpc64le,powerpc
Looking at https://gcc.gnu.org/onlinedocs/libgomp/OpenMP-Context-Selectors.html
, I realized that we do now have OpenMP context selectors for PowerPC, which is
somewhat widely used with HPC and offloading and, thus, a relevant omission.
I think something like:
arch = powerpc, powerpc64, powerpc64le, rs64
?
kind = cpu
isa = ?
maybe all values of RS6000_CPU (in rs6000-cpus.def) excluding or not the
ones from arch
= documentation wise, -mcpu= w/o 'native' (and possibly the values from arch)
Any other ISA flag?
https://gcc.gnu.org/onlinedocs/gcc/RS_002f6000-and-PowerPC-Options.html
Namely:
* TARGET_OMP_DEVICE_KIND_ARCH_ISA needs to be defined +
associated rs6000_omp_device_kind_arch_isa be created
* t-omp-device be created
* libgomp.texi updated (cf. link above)
* a test to – or eqiuvalent:
gcc/testsuite/c-c++-common/gomp/declare-variant-11.c