http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59617
--- Comment #9 from Dominique d'Humieres <dominiq at lps dot ens.fr> ---
If I compile the following test with -S -O3 -mavx512f -save-temps
// #include "avx512f-check.h"
#define N 1024
int a[N], b[N], c[N], d[N];
__attribute__((noinline, noclone)) void
foo (float *__restrict p, float *__restrict q, float *__restrict r,
int s1, int s2, int s3)
{
int i;
for (i = 0; i < N; i++)
p[i] = q[a[i] * s1 + b[i] * s2 + s3] * r[c[i] * s1 + d[i] * s2 + s3];
}
grepping the preprocess file for restrict I see
foo (float *__restrict p, float *__restrict q, float *__restrict r,
If I uncomment the include (adding
-I/opt/gcc/_clean/gcc/testsuite/gcc.target/i386/),
the restrict qualifiers disappear.