[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 a2d4e60b92629417a73dd2a44917f429290ed786..91f71bc94db1b315d14f694aff842becd09943f6 100644 (file)
@@ -1,3 +1,7 @@
+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.
index 5d0bab65d076f0f73bf636e035f0deaa21a0e5ee..c0a58f3aee5738b86f91953363a3ded0d447bea8 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;