https://gcc.gnu.org/g:a1fb7891131e003162b769944db311b72384cd6a

commit a1fb7891131e003162b769944db311b72384cd6a
Author: Paul-Antoine Arras <par...@baylibre.com>
Date:   Fri Jun 7 20:29:40 2024 +0200

    Fix strided `target update`
    
    OG14 fixup for mainline commit 25072a477a5
    "OpenMP: Call cuMemcpy2D/cuMemcpy3D for nvptx for omp_target_memcpy_rect"

Diff:
---
 libgomp/target.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/libgomp/target.c b/libgomp/target.c
index 806f9587d2b..d381a131539 100644
--- a/libgomp/target.c
+++ b/libgomp/target.c
@@ -5231,6 +5231,9 @@ omp_target_memcpy_rect_worker (void *dst, const void 
*src, size_t element_size,
 
   /* host->device, device->host and intra device.  */
   if (num_dims == 2
+      && (!strides || (strides[0] == 1
+                      && strides[1] == 1
+                      && element_size == span))
       && ((src_devicep
           && src_devicep == dst_devicep
           && src_devicep->memcpy2d_func)
@@ -5257,6 +5260,10 @@ omp_target_memcpy_rect_worker (void *dst, const void 
*src, size_t element_size,
        return ret ? 0 : EINVAL;
     }
   else if (num_dims == 3
+          && (!strides || (strides[0] == 1
+                           && strides[1] == 1
+                           && strides[2] == 1
+                           && element_size == span))
           && ((src_devicep
                && src_devicep == dst_devicep
                && src_devicep->memcpy3d_func)

Reply via email to