1/* { dg-do assemble } */ 2/* { dg-options "-std=c99" } */ 3#include <arm_neon.h> 4 5int 6main (int argc, char **argv) 7{ 8 uint64x1_t base_a = vcreate_u64 (0x1111222233334444ULL); 9 uint64x1_t base_b = vcreate_u64 (0x5555666677778888ULL); 10 uint64x1_t base_c = vcreate_u64 (0x9999aaaabbbbccccULL); 11 uint64x2_t baseq_b = vcombine_u64 (base_b, base_c); 12 int16x4_t int16x4_a = vreinterpret_s16_u64 (base_a); 13 int16x8_t int16x8_b = vreinterpretq_s16_u64 (baseq_b); 14 15 /* { dg-error "lane -1 out of range 0 - 7" "" {target *-*-*} 0 } */ 16 vqdmull_laneq_s16 (int16x4_a, int16x8_b, -1); 17 /* { dg-error "lane 8 out of range 0 - 7" "" {target *-*-*} 0 } */ 18 vqdmull_laneq_s16 (int16x4_a, int16x8_b, 8); 19} 20