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

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |openmp
                 CC|                            |iverbin at gcc dot gnu.org,
                   |                            |kyukhin at gcc dot gnu.org

--- Comment #1 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
For the "implementation defined" alignment, omp-low.c normally uses
omp_clause_aligned_alignment function to compute the alignment, but
unfortunately that is very much dependent on the ISA options.
When it is used in declare simd, it is unfortunately part of the ABI.
I can't seem to find anything about that case in the Intel ABI document
(version 0.9.7 or older).  Looking at what (older) icc emits, it seems it uses
alignment of 1 (i.e. a useless, but safe alignment), is that what we want to
put into the ABI?

Note, aligned attribute doesn't really make much sense on non-uniform arguments
(especially in this case when it is passed as a vector of pointers).  Plus the
array really isn't aligned any way, so it is unlikely it will be aligned say if
you use aligned(i_x:128) uniform(i_x).

Reply via email to