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  <tdevr...@suse.de>
	    Cesar Philippidis  <ce...@codesourcery.com>

	gcc/
	* omp-expand.c (expand_omp_for): Set loop->safelen to INT_MAX if
	marked_independent.

(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

Reply via email to