[Bug target/59797] GCC doesn't warn AVX-512 ABI change

2014-02-19 Thread ubizjak at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59797

Uroš Bizjak ubizjak at gmail dot com changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |DUPLICATE

--- Comment #3 from Uroš Bizjak ubizjak at gmail dot com ---
Dup.

*** This bug has been marked as a duplicate of bug 60205 ***

[Bug target/59797] GCC doesn't warn AVX-512 ABI change

2014-02-19 Thread ubizjak at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59797
Bug 59797 depends on bug 59794, which changed state.

Bug 59794 Summary: [4.7/4.8 Regression] i386 backend fails to detect 
MMX/SSE/AVX ABI changes
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59794

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED


[Bug target/59797] GCC doesn't warn AVX-512 ABI change

2014-01-14 Thread hjl.tools at gmail dot com
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.

[Bug target/59797] GCC doesn't warn AVX-512 ABI change

2014-01-13 Thread hjl.tools at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59797

H.J. Lu hjl.tools at gmail dot com changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2014-01-13
   Target Milestone|--- |4.9.0
 Ever confirmed|0   |1


[Bug target/59797] GCC doesn't warn AVX-512 ABI change

2014-01-13 Thread kirill.yukhin at intel dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59797

--- Comment #1 from Yukhin Kirill kirill.yukhin at intel dot com ---
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
 f1(__m256i x, __m256i y)
 ^
2.c:4:1: warning: AVX vector argument without AVX enabled changes the ABI
[enabled by default]

Difference is that AVX[2] warns about using data types without enabling
AVX2. Is that the case