[nvptx] Add asserts in nvptx_goacc_validate_dims
authorTom de Vries <tdevries@suse.de>
Mon, 7 Jan 2019 08:09:58 +0000 (08:09 +0000)
committerTom de Vries <vries@gcc.gnu.org>
Mon, 7 Jan 2019 08:09:58 +0000 (08:09 +0000)
Add a few asserts to nvptx_goacc_validate_dims.

2019-01-07  Tom de Vries  <tdevries@suse.de>

* config/nvptx/nvptx.c (nvptx_goacc_validate_dims): Add asserts.

From-SVN: r267625

gcc/ChangeLog
gcc/config/nvptx/nvptx.c

index a2d4e60..91f71bc 100644 (file)
@@ -1,5 +1,9 @@
 2019-01-07  Tom de Vries  <tdevries@suse.de>
 
+       * config/nvptx/nvptx.c (nvptx_goacc_validate_dims): Add asserts.
+
+2019-01-07  Tom de Vries  <tdevries@suse.de>
+
        * omp-offload.c (oacc_get_min_dim): New function.
        * omp-offload.h (oacc_get_min_dim): Declare.
 
index 5d0bab6..c0a58f3 100644 (file)
@@ -5421,6 +5421,10 @@ nvptx_goacc_validate_dims (tree decl, int dims[], int fn_level)
 
   nvptx_goacc_validate_dims_1 (decl, dims, fn_level);
 
+  gcc_assert (dims[GOMP_DIM_VECTOR] != 0);
+  if (dims[GOMP_DIM_WORKER] > 0 && dims[GOMP_DIM_VECTOR] > 0)
+    gcc_assert (dims[GOMP_DIM_WORKER] * dims[GOMP_DIM_VECTOR] <= PTX_CTA_SIZE);
+
   for (i = 0; i < GOMP_DIM_MAX; ++i)
     if (old_dims[i] != dims[i])
       return true;