https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105358

--- Comment #3 from Iain Sandoe <iains at gcc dot gnu.org> ---
(In reply to Jakub Jelinek from comment #2)
> Does
> --- libgomp/libgomp.h.jj      2022-01-11 23:11:23.890269075 +0100
> +++ libgomp/libgomp.h 2022-04-25 11:20:09.744103064 +0200
> @@ -717,6 +717,13 @@ struct gomp_team
>    /* This barrier is used for most synchronization of the team.  */
>    gomp_barrier_t barrier;
>  
> +#ifndef GOMP_USE_ALIGNED_WORK_SHARES
> +  /* If struct gomp_work_share isn't 64-byte aligned, ensure it is
> +     at least 8-byte aligned because __alignof__ (long long) is used
> +     for the inline_ordered_team_ids handling.  */
> +  struct { } pad __attribute__((aligned (__alignof__ (long long))));
> +#endif
> +
>    /* Initial work shares, to avoid allocating any gomp_work_share
>       structs in the common case.  */
>    struct gomp_work_share work_shares[8];
> fix it?

unfortunately, no presumably the size of gomp_work_share is a multiple
of 4 bytes, whatwe need is to make the align of gomp_work_share at least
'long long'.

Reply via email to