http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59797

            Bug ID: 59797
           Summary: GCC doesn't warn AVX-512 ABI change
           Product: gcc
           Version: 4.9.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: hjl.tools at gmail dot com
                CC: kirill.yukhin at intel dot com

[hjl@gnu-6 gcc]$ cat /tmp/z.i
typedef long long __m512i __attribute__ ((__vector_size__ (64),
__may_alias__));

__m512i
f1(__m512i x, __m512i y)
{
  return y;
}
[hjl@gnu-6 gcc]$ ./xgcc -B./ -S -O /tmp/z.i
/tmp/z.i: In function ‘f1’:
/tmp/z.i:4:1: note: The ABI for passing parameters with 64-byte alignment has
changed in GCC 4.6
 f1(__m512i x, __m512i y)
 ^
[hjl@gnu-6 gcc]$ ./xgcc -B./ -S -O /tmp/z.i -mavx512f
[hjl@gnu-6 gcc]$ 

When -mavx512f isn't used, GCC should warn ABI changes for passing/returning
AVX vector values.

Reply via email to