]> git.ipfire.org Git - thirdparty/gcc.git/commit
libgomp/gcn: fix/improve struct output
authorTobias Burnus <tobias@codesourcery.com>
Mon, 21 Nov 2022 14:25:48 +0000 (15:25 +0100)
committerTobias Burnus <tobias@codesourcery.com>
Mon, 21 Nov 2022 14:25:48 +0000 (15:25 +0100)
commit20fe373390a51a167555ff55f87495b2a93be7c1
tree5784ea7c89cff9d4cb412325fc19f5c47e8cfa48
parent27aad787b4e5a598c00b3eb946f81873063cc319
libgomp/gcn: fix/improve struct output

output.printf_data.(value union) contains text[128], which has the size
of 128 bytes, sufficient for 16 uint64_t variables; hence value_u64[2]
could be extended to value_u64[6] - sufficient for all required arguments
to gomp_target_rev.  Additionally, next_output.printf_data.(msg union)
contained msg_u64 which then is no longer needed and also caused 32bit
vs 64bit alignment issues.

libgomp/
* config/gcn/libgomp-gcn.h (struct output):
Remove 'msg_u64' from the union, change
value_u64[2] to value_u64[6].
* config/gcn/target.c (GOMP_target_ext): Update accordingly.
* plugin/plugin-gcn.c (process_reverse_offload, console_output):
Likewise.

(cherry picked from commit 6edcb5dc42625cb0cf84b19c6fe4f944f6322ea0)
libgomp/ChangeLog.omp
libgomp/config/gcn/libgomp-gcn.h
libgomp/config/gcn/target.c
libgomp/plugin/plugin-gcn.c