blob: ab74927016cb4f2a5fa058b837bd2f104273d5e6 [file] [log] [blame]
/* PR target/85177 */
/* { dg-do run { target { avx512f && int128 } } } */
/* { dg-options "-O -fno-tree-ccp -fno-tree-sra -mavx512f -mno-avx512bw" } */
#include "avx512f-check.h"
typedef short U __attribute__ ((vector_size (64)));
typedef __int128 V __attribute__ ((vector_size (64)));
static inline __attribute__((always_inline)) U
foo (int i, U u)
{
u[i & 1] = 1;
return u;
}
__attribute__((noipa)) int
bar ()
{
V x = (V) foo (0, (U) { });
for (unsigned i = 0; i < 4; i++)
if (x[i] != (i == 0)) __builtin_abort ();
return 0;
}
static void
avx512f_test (void)
{
bar ();
}