This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [patch,openacc] Set safelen to INT_MAX for oacc independent pragma
- From: Jakub Jelinek <jakub at redhat dot com>
- To: Cesar Philippidis <cesar at codesourcery dot com>
- Cc: "gcc-patches at gcc dot gnu dot org" <gcc-patches at gcc dot gnu dot org>, Thomas Schwinge <thomas at codesourcery dot com>
- Date: Tue, 4 Dec 2018 14:50:43 +0100
- Subject: Re: [patch,openacc] Set safelen to INT_MAX for oacc independent pragma
- References: <25c37643-359f-e617-d9d4-ed6d65f1f8f1@codesourcery.com>
- Reply-to: Jakub Jelinek <jakub at redhat dot com>
On Thu, Sep 20, 2018 at 11:21:28AM -0700, Cesar Philippidis wrote:
> This is another old gomp4 OpenACC patch which impacts targets that use
> simd vectorization, such as the host and AMD GCN, rather than nvptx.
> Basically, as the subject states, it sets safelen to INT_MAX for
> independent acc loops, which I believe is already being done for OpenMP
> in certain situations.
>
> The original discussion for this patch can be found here
> <https://gcc.gnu.org/ml/gcc-patches/2015-07/msg01872.html>.
>
> Is this patch OK for trunk? I bootstrapped and regtested it for x86_64
> Linux with nvptx offloading.
>
> Thanks,
> Cesar
> [OpenACC] Set safelen to INT_MAX for oacc independent pragma
>
> 2018-XX-YY Tom de Vries <tdevries@suse.de>
> Cesar Philippidis <cesar@codesourcery.com>
>
> gcc/
> * omp-expand.c (expand_omp_for): Set loop->safelen to INT_MAX if
> marked_independent.
This change is ok once the marked_independent vs. can_be_parallel etc. is
resolved.
> (cherry picked from gomp-4_0-branch r226079)
> ---
> gcc/omp-expand.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/gcc/omp-expand.c b/gcc/omp-expand.c
> index 427f329d35f..ee147f10826 100644
> --- a/gcc/omp-expand.c
> +++ b/gcc/omp-expand.c
> @@ -5718,6 +5718,7 @@ expand_omp_for (struct omp_region *region, gimple *inner_stmt)
> {
> struct loop *loop = region->cont->loop_father;
> loop->marked_independent = true;
> + loop->safelen = INT_MAX;
> }
> }
> else if (gimple_omp_for_kind (fd.for_stmt) & GF_OMP_FOR_SIMD)
> --
> 2.17.1
>
Jakub