[gomp5] s/void */const void */ in some omp.h APIs
Jakub Jelinek
jakub@redhat.com
Mon Jun 12 18:16:00 GMT 2017
Hi!
OpenMP 5.0 is changing a couple of APIs, so that for pointer arguments where
the pointed array is not modified we use const void * instead of void *.
Committed to gomp-5_0-branch.
2017-06-12 Jakub Jelinek <jakub@redhat.com>
* omp.h.in (omp_target_is_present, omp_target_disassociate_ptr):
Change first argument from void * to const void *.
(omp_target_memcpy, omp_target_memcpy_rect): Change second argument
from void * to const void *.
(omp_target_associate_ptr): Change first and second arguments from
void * to const void *.
* target.c (omp_target_is_present, omp_target_disassociate_ptr):
Change ptr argument from void * to const void *.
(omp_target_memcpy): Change src argument from void * to const void *.
(omp_target_memcpy_rect): Likewise.
(omp_target_memcpy_rect_worker): Likewise. Use const char * casts
instead of char * where needed.
(omp_target_associate_ptr): Change host_ptr and device_ptr arguments
from void * to const void *.
--- libgomp/omp.h.in.jj 2017-05-13 20:12:43.000000000 +0200
+++ libgomp/omp.h.in 2017-06-12 10:21:38.342724889 +0200
@@ -144,19 +144,20 @@ extern int omp_get_max_task_priority (vo
extern void *omp_target_alloc (__SIZE_TYPE__, int) __GOMP_NOTHROW;
extern void omp_target_free (void *, int) __GOMP_NOTHROW;
-extern int omp_target_is_present (void *, int) __GOMP_NOTHROW;
-extern int omp_target_memcpy (void *, void *, __SIZE_TYPE__, __SIZE_TYPE__,
- __SIZE_TYPE__, int, int) __GOMP_NOTHROW;
-extern int omp_target_memcpy_rect (void *, void *, __SIZE_TYPE__, int,
+extern int omp_target_is_present (const void *, int) __GOMP_NOTHROW;
+extern int omp_target_memcpy (void *, const void *, __SIZE_TYPE__,
+ __SIZE_TYPE__, __SIZE_TYPE__, int, int)
+ __GOMP_NOTHROW;
+extern int omp_target_memcpy_rect (void *, const void *, __SIZE_TYPE__, int,
const __SIZE_TYPE__ *,
const __SIZE_TYPE__ *,
const __SIZE_TYPE__ *,
const __SIZE_TYPE__ *,
const __SIZE_TYPE__ *, int, int)
__GOMP_NOTHROW;
-extern int omp_target_associate_ptr (void *, void *, __SIZE_TYPE__,
+extern int omp_target_associate_ptr (const void *, const void *, __SIZE_TYPE__,
__SIZE_TYPE__, int) __GOMP_NOTHROW;
-extern int omp_target_disassociate_ptr (void *, int) __GOMP_NOTHROW;
+extern int omp_target_disassociate_ptr (const void *, int) __GOMP_NOTHROW;
#ifdef __cplusplus
}
--- libgomp/target.c.jj 2017-05-13 20:12:43.000000000 +0200
+++ libgomp/target.c 2017-06-12 10:25:41.051924583 +0200
@@ -2007,7 +2007,7 @@ omp_target_free (void *device_ptr, int d
}
int
-omp_target_is_present (void *ptr, int device_num)
+omp_target_is_present (const void *ptr, int device_num)
{
if (ptr == NULL)
return 1;
@@ -2039,8 +2039,9 @@ omp_target_is_present (void *ptr, int de
}
int
-omp_target_memcpy (void *dst, void *src, size_t length, size_t dst_offset,
- size_t src_offset, int dst_device_num, int src_device_num)
+omp_target_memcpy (void *dst, const void *src, size_t length,
+ size_t dst_offset, size_t src_offset, int dst_device_num,
+ int src_device_num)
{
struct gomp_device_descr *dst_devicep = NULL, *src_devicep = NULL;
bool ret;
@@ -2107,7 +2108,7 @@ omp_target_memcpy (void *dst, void *src,
}
static int
-omp_target_memcpy_rect_worker (void *dst, void *src, size_t element_size,
+omp_target_memcpy_rect_worker (void *dst, const void *src, size_t element_size,
int num_dims, const size_t *volume,
const size_t *dst_offsets,
const size_t *src_offsets,
@@ -2129,21 +2130,25 @@ omp_target_memcpy_rect_worker (void *dst
return EINVAL;
if (dst_devicep == NULL && src_devicep == NULL)
{
- memcpy ((char *) dst + dst_off, (char *) src + src_off, length);
+ memcpy ((char *) dst + dst_off, (const char *) src + src_off,
+ length);
ret = 1;
}
else if (src_devicep == NULL)
ret = dst_devicep->host2dev_func (dst_devicep->target_id,
(char *) dst + dst_off,
- (char *) src + src_off, length);
+ (const char *) src + src_off,
+ length);
else if (dst_devicep == NULL)
ret = src_devicep->dev2host_func (src_devicep->target_id,
(char *) dst + dst_off,
- (char *) src + src_off, length);
+ (const char *) src + src_off,
+ length);
else if (src_devicep == dst_devicep)
ret = src_devicep->dev2dev_func (src_devicep->target_id,
(char *) dst + dst_off,
- (char *) src + src_off, length);
+ (const char *) src + src_off,
+ length);
else
ret = 0;
return ret ? 0 : EINVAL;
@@ -2164,7 +2169,7 @@ omp_target_memcpy_rect_worker (void *dst
for (j = 0; j < volume[0]; j++)
{
ret = omp_target_memcpy_rect_worker ((char *) dst + dst_off,
- (char *) src + src_off,
+ (const char *) src + src_off,
element_size, num_dims - 1,
volume + 1, dst_offsets + 1,
src_offsets + 1, dst_dimensions + 1,
@@ -2179,7 +2184,7 @@ omp_target_memcpy_rect_worker (void *dst
}
int
-omp_target_memcpy_rect (void *dst, void *src, size_t element_size,
+omp_target_memcpy_rect (void *dst, const void *src, size_t element_size,
int num_dims, const size_t *volume,
const size_t *dst_offsets,
const size_t *src_offsets,
@@ -2238,8 +2243,8 @@ omp_target_memcpy_rect (void *dst, void
}
int
-omp_target_associate_ptr (void *host_ptr, void *device_ptr, size_t size,
- size_t device_offset, int device_num)
+omp_target_associate_ptr (const void *host_ptr, const void *device_ptr,
+ size_t size, size_t device_offset, int device_num)
{
if (device_num == GOMP_DEVICE_HOST_FALLBACK)
return EINVAL;
@@ -2300,7 +2305,7 @@ omp_target_associate_ptr (void *host_ptr
}
int
-omp_target_disassociate_ptr (void *ptr, int device_num)
+omp_target_disassociate_ptr (const void *ptr, int device_num)
{
if (device_num == GOMP_DEVICE_HOST_FALLBACK)
return EINVAL;
Jakub
More information about the Gcc-patches
mailing list