This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/59797] GCC doesn't warn AVX-512 ABI change
- From: "hjl.tools at gmail dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Tue, 14 Jan 2014 13:00:39 +0000
- Subject: [Bug target/59797] GCC doesn't warn AVX-512 ABI change
- Auto-submitted: auto-generated
- References: <bug-59797-4 at http dot gcc dot gnu dot org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59797
--- Comment #2 from H.J. Lu <hjl.tools at gmail dot com> ---
(In reply to Yukhin Kirill from comment #1)
> Sorry, didn't get the problem.
>
> According to output you provided - GCC warns ABI changes
>
> Here is analogue for AVX2:
> $ cat 2.c
> typedef long long __m256i __attribute__ ((__vector_size__ (32),
> __may_alias__));
>
> __m256i
> f1(__m256i x, __m256i y)
> {
> return y;
> }
> $ gcc -S 2.c
> 2.c: In function âf1â:
> 2.c:4:1: note: The ABI for passing parameters with 32-byte alignment has
> changed in GCC 4.6
This isn't a ABI change warning. It just informs users
that GCC has changed ABI in GCC 4.6.
> f1(__m256i x, __m256i y)
> ^
> 2.c:4:1: warning: AVX vector argument without AVX enabled changes the ABI
> [enabled by default]
This is the ABI change warning for __m256i when AVX is disabled.
> Difference is that AVX[2] warns about using data types without enabling
> AVX2. Is that the case
We need a similar warning for __m512i when AVX-512 is disabled.