(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.target/
aarch64/
vect-ld1r.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 (int8_t)
      10  DEF (int16_t)
      11  DEF (int32_t)
      12  DEF (int64_t)
      13  
      14  #define FOOD(TYPE) \
      15    foo_ ## TYPE ## _d (&a_ ## TYPE, output_ ## TYPE)
      16  
      17  #define FOOQ(TYPE) \
      18    foo_ ## TYPE ## _q (&a_ ## TYPE, output_ ## TYPE)
      19  
      20  #define CHECKD(TYPE) \
      21    for (i = 0; i < 8 / sizeof (TYPE); i++) \
      22      if (output_ ## TYPE[i] != a_ ## TYPE) \
      23        abort ()
      24  
      25  #define CHECKQ(TYPE) \
      26    for (i = 0; i < 32 / sizeof (TYPE); i++) \
      27      if (output_ ## TYPE[i] != a_ ## TYPE) \
      28        abort ()
      29  
      30  #define DECL(TYPE) \
      31    TYPE output_ ## TYPE[32]; \
      32    TYPE a_ ## TYPE = (TYPE)12
      33  
      34  int
      35  main (void)
      36  {
      37  
      38    DECL(int8_t);
      39    DECL(int16_t);
      40    DECL(int32_t);
      41    DECL(int64_t);
      42    int i;
      43  
      44    FOOD (int8_t);
      45    CHECKD (int8_t);
      46    FOOQ (int8_t);
      47    CHECKQ (int8_t);
      48  
      49    FOOD (int16_t);
      50    CHECKD (int16_t);
      51    FOOQ (int16_t);
      52    CHECKQ (int16_t);
      53  
      54    FOOD (int32_t);
      55    CHECKD (int32_t);
      56    FOOQ (int32_t);
      57    CHECKQ (int32_t);
      58  
      59    FOOD (int64_t);
      60    CHECKD (int64_t);
      61    FOOQ (int64_t);
      62    CHECKQ (int64_t);
      63  
      64    return 0;
      65  }