(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.target/
i386/
avx512cd-vpbroadcastmb2q-2.c
       1  /* { dg-do run } */
       2  /* { dg-options "-O2 -mavx512cd" } */
       3  /* { dg-require-effective-target avx512cd } */
       4  
       5  #define HAVE_512
       6  #define AVX512CD
       7  
       8  #include "avx512f-helper.h"
       9  
      10  #define SIZE (AVX512F_LEN / 64)
      11  
      12  static void
      13  CALC (long long *res, __mmask8 src)
      14  {
      15    int i;
      16  
      17    for (i = 0; i < SIZE; i++)
      18      res[i] = src;
      19  }
      20  
      21  void
      22  TEST (void)
      23  {
      24    int i;
      25    UNION_TYPE (AVX512F_LEN, i_q) res;
      26    long long res_ref[SIZE];
      27    __mmask8 src = 0;
      28  
      29    for (i = 0; i < SIZE; i++)
      30      {
      31        res.a[i] = -1;
      32      }
      33  
      34    res.x = INTRINSIC (_broadcastmb_epi64) (src);
      35  
      36    CALC (res_ref, src);
      37  
      38    if (UNION_CHECK (AVX512F_LEN, i_q) (res, res_ref))
      39      abort ();
      40  }