[og12] Address cast to pointer from integer of different size in 'libgomp/target.c:gomp_target_rev' (was: [OG12][committed] openmp: Add support for the 'present' modifier)
Commit Message
Hi!
On 2023-02-09T21:17:44+0000, Kwok Cheung Yeung <kcy@codesourcery.com> wrote:
> I've ported my patch for supporting the OpenMP 5.1 'present' modifier
> and committed it to the devel/omp/gcc-12 development branch:
>
> 229b705862c openmp: Add support for the 'present' modifier
>
> Tested with offloading on amdgcn and nvptx.
I've pushed to devel/omp/gcc-12 branch
commit cd377354c5faa326bdfa5f10e4193c1d1a686801
"Address cast to pointer from integer of different size in 'libgomp/target.c:gomp_target_rev'",
see attached.
Note that this likewise applies to the current upstream submission:
<https://inbox.sourceware.org/gcc-patches/6eb5d0dd-da2a-6d8e-eaa2-d14bf708cf36@codesourcery.com>
"openmp: Add support for 'present' modifier".
Grüße
Thomas
-----------------
Siemens Electronic Design Automation GmbH; Anschrift: Arnulfstraße 201, 80634 München; Gesellschaft mit beschränkter Haftung; Geschäftsführer: Thomas Heurung, Frank Thürauf; Sitz der Gesellschaft: München; Registergericht München, HRB 106955
From cd377354c5faa326bdfa5f10e4193c1d1a686801 Mon Sep 17 00:00:00 2001
From: Thomas Schwinge <thomas@codesourcery.com>
Date: Tue, 14 Feb 2023 23:34:45 +0100
Subject: [PATCH] Address cast to pointer from integer of different size in
'libgomp/target.c:gomp_target_rev'
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
For example, for '-m32' multilib of x86_64-pc-linux-gnu:
[...]/libgomp/target.c: In function ‘gomp_target_rev’:
[...]/libgomp/target.c:3699:33: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast]
3699 | (void *) devaddrs[i],
| ^
Fix-up for recent og12 commit 229b705862c1d7f9634f72272b77c22970baf821
"openmp: Add support for the 'present' modifier".
libgomp/
* target.c (gomp_target_rev): Address cast to pointer from integer
of different size.
---
libgomp/ChangeLog.omp | 5 +++++
libgomp/target.c | 4 ++--
2 files changed, 7 insertions(+), 2 deletions(-)
@@ -1,3 +1,8 @@
+2023-02-14 Thomas Schwinge <thomas@codesourcery.com>
+
+ * target.c (gomp_target_rev): Address cast to pointer from integer
+ of different size.
+
2023-02-09 Kwok Cheung Yeung <kcy@codesourcery.com>
* target.c (gomp_to_device_kind_p): Add map kinds with 'present'
@@ -3696,12 +3696,12 @@ gomp_target_rev (uint64_t fn_ptr, uint64_t mapnum, uint64_t devaddrs_ptr,
#ifdef HAVE_INTTYPES_H
gomp_fatal ("present clause: no corresponding data on "
"parent device at %p with size %"PRIu64,
- (void *) devaddrs[i],
+ (void *) (uintptr_t) devaddrs[i],
(uint64_t) sizes[i]);
#else
gomp_fatal ("present clause: no corresponding data on "
"parent device at %p with size %lu",
- (void *) devaddrs[i],
+ (void *) (uintptr_t) devaddrs[i],
(unsigned long) sizes[i]);
#endif
break;
--
2.25.1