aboutsummaryrefslogtreecommitdiff
path: root/gcc/gdbhooks.py
diff options
context:
space:
mode:
authorTobias Burnus <tburnus@baylibre.com>2024-09-25 13:57:02 +0200
committerTobias Burnus <tburnus@baylibre.com>2024-09-25 13:57:02 +0200
commitfcff9c3dad4f356cbf56feaed7442893203a3003 (patch)
tree354b7baa5532894a7d9f267d10b35c09e53c3dc9 /gcc/gdbhooks.py
parent5d87b98a4ae58d7e6c0dad041c72cd73b693269d (diff)
downloadgcc-fcff9c3dad4f356cbf56feaed7442893203a3003.zip
gcc-fcff9c3dad4f356cbf56feaed7442893203a3003.tar.gz
gcc-fcff9c3dad4f356cbf56feaed7442893203a3003.tar.bz2
OpenMP: Update OMP_REQUIRES_TARGET_USED for declare_target + interop
Older versions of the OpenMP specification were not clear about what counted as device usage. Newer (like TR13) are rather clear. Hence, this commit adds GCC's target-used flag also when a 'declare target' or an 'interop' are encountered. (The latter only to Fortran as C/C++ parsing support is still missing.) TR13 also lists 'dispatch' as target-used construct (as it has the device clause) and 'device_safesync' as clause with global requirement property, but both are not yet supported in GCC. gcc/c/ChangeLog: * c-parser.cc (c_parser_omp_declare_target): Set target-used bit in omp_requires_mask. gcc/cp/ChangeLog: * parser.cc (cp_parser_omp_declare_target): Set target-used bit in omp_requires_mask. gcc/fortran/ChangeLog: * parse.cc (decode_omp_directive): Set target-used bit of omp_requires_mask when encountering the declare_target or interop directive. gcc/testsuite/ChangeLog: * gfortran.dg/gomp/interop-1.f90: Add dg-error for missing omp requires requirement and declare_variant usage. * gfortran.dg/gomp/requires-8.f90: Likewise.
Diffstat (limited to 'gcc/gdbhooks.py')
0 files changed, 0 insertions, 0 deletions