[Bug middle-end/103384] [OpenMP] declare variant with device={kind(nohost)} does not use GPU, kind(gpu) works

cvs-commit at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Tue May 10 08:22:04 GMT 2022


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103384

--- Comment #5 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-10 branch has been updated by Jakub Jelinek
<jakub@gcc.gnu.org>:

https://gcc.gnu.org/g:279e48e9d8e8d99a73d5ca69f829b83638419c56

commit r10-10658-g279e48e9d8e8d99a73d5ca69f829b83638419c56
Author: Jakub Jelinek <jakub@redhat.com>
Date:   Wed Nov 24 10:30:32 2021 +0100

    openmp: Fix up handling of kind(host) and kind(nohost) in ACCEL_COMPILERs
[PR103384]

    As the testcase shows, we weren't handling kind(host) and kind(nohost)
properly
    in the ACCEL_COMPILERs, the code written in there is valid for the host
    compiler only, where if we are maybe offloaded, we defer resolution after
IPA,
    otherwise return 0 for kind(nohost) and accept it for kind(host).  Note,
    omp_maybe_offloaded is false after IPA.  If ACCEL_COMPILER is defined, it
is
    the other way around, but also we know we are after IPA.

    2021-11-24  Jakub Jelinek  <jakub@redhat.com>

            PR middle-end/103384
    gcc/
            * omp-general.c (omp_context_selector_matches): For ACCEL_COMPILER,
            return 0 for kind(host) and continue for kind(nohost).
    libgomp/
            * testsuite/libgomp.c/declare-variant-2.c: New test.

    (cherry picked from commit 5bca26742cf3357bf4e20ec97eee4c7f7de17ce0)


More information about the Gcc-bugs mailing list