/* PR middle-end/85090 */ /* { dg-do compile } */ /* { dg-options "-O2 -mavx512f -mno-avx512bw -mtune=intel -masm=att" } */ typedef short V __attribute__((vector_size (64))); V f1 (V x, int y) { x[0] = y; return x; } V f2 (V x, int y) { x[7] = y; return x; } V f3 (V x, int y) { x[11] = y; return x; } V f4 (V x, int y) { x[29] = y; return x; } /* { dg-final { scan-assembler-times "vpinsrw\t" 4 } } */ /* { dg-final { scan-assembler-times "vextracti32x4\t" 2 } } */ /* { dg-final { scan-assembler-times "vinserti32x4\t" 4 } } */