(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.target/
aarch64/
vect-ld1r-fp.c
       1  /* { dg-do run } */
       2  /* { dg-options "-O3" } */
       3  
       4  extern void abort (void);
       5  
       6  #include "stdint.h"
       7  #include "vect-ld1r.x"
       8  
       9  DEF (float)
      10  DEF (double)
      11  
      12  #define FOOD(TYPE) \
      13    foo_ ## TYPE ## _d (&a_ ## TYPE, output_ ## TYPE)
      14  
      15  #define FOOQ(TYPE) \
      16    foo_ ## TYPE ## _q (&a_ ## TYPE, output_ ## TYPE)
      17  
      18  #define CHECKD(TYPE) \
      19    for (i = 0; i < 8 / sizeof (TYPE); i++) \
      20      if (output_ ## TYPE[i] != a_ ## TYPE) \
      21        abort ()
      22  
      23  #define CHECKQ(TYPE) \
      24    for (i = 0; i < 32 / sizeof (TYPE); i++) \
      25      if (output_ ## TYPE[i] != a_ ## TYPE) \
      26        abort ()
      27  
      28  #define DECL(TYPE) \
      29    TYPE output_ ## TYPE[32]; \
      30    TYPE a_ ## TYPE = (TYPE)12.2
      31  
      32  int
      33  main (void)
      34  {
      35  
      36    DECL(float);
      37    DECL(double);
      38    int i;
      39  
      40    FOOD (float);
      41    CHECKD (float);
      42    FOOQ (float);
      43    CHECKQ (float);
      44  
      45    FOOD (double);
      46    CHECKD (double);
      47    FOOQ (double);
      48    CHECKQ (double);
      49  
      50    return 0;
      51  }