(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.target/
aarch64/
simd/
vqdmlsl_laneq_s16_indices_1.c
       1  /* { dg-do assemble } */
       2  /* { dg-options "-std=c99" } */
       3  #include <arm_neon.h>
       4  
       5  int
       6  main (int argc, char **argv)
       7  {
       8    uint64x1_t base_b = vcreate_u64 (0x5555666677778888ULL);
       9    uint64x1_t base_a = vcreate_u64 (0x1111222233334444ULL);
      10    uint64x1_t base_c = vcreate_u64 (0x9999aaaabbbbccccULL);
      11    uint64x2_t baseq_c = vcombine_u64 (base_c, base_a);
      12    uint64x2_t baseq_a = vcombine_u64 (base_a, base_b);
      13    int16x4_t int16x4_b = vreinterpret_s16_u64 (base_b);
      14    int16x8_t int16x8_c = vreinterpretq_s16_u64 (baseq_c);
      15    int32x4_t int32x4_a = vreinterpretq_s32_u64 (baseq_a);
      16  
      17    /* { dg-error "lane -1 out of range 0 - 7" "" {target *-*-*} 0 } */
      18    vqdmlsl_laneq_s16 (int32x4_a, int16x4_b, int16x8_c, -1);
      19    /* { dg-error "lane 8 out of range 0 - 7" "" {target *-*-*} 0 } */
      20    vqdmlsl_laneq_s16 (int32x4_a, int16x4_b, int16x8_c, 8);
      21  }