1 // REQUIRES: hexagon-registered-target 2 // RUN: %clang_cc1 -triple hexagon %s -target-feature +hvx-length128b -target-feature +hvxv62 -target-cpu hexagonv62 -fsyntax-only -verify 3 4 typedef long Vect1024 __attribute__((__vector_size__(128))) 5 __attribute__((aligned(128))); 6 typedef long Vect2048 __attribute__((__vector_size__(256))) 7 __attribute__((aligned(128))); 8 9 typedef Vect1024 HVX_Vector; 10 typedef Vect2048 HVX_VectorPair; 11 12 builtin_needs_v60(HVX_VectorPair a)13HVX_Vector builtin_needs_v60(HVX_VectorPair a) { 14 return __builtin_HEXAGON_V6_hi_128B(a); 15 } 16 builtin_needs_v62(char a)17HVX_Vector builtin_needs_v62(char a) { 18 return __builtin_HEXAGON_V6_lvsplatb_128B(a); 19 } 20 builtin_needs_v65()21HVX_VectorPair builtin_needs_v65() { 22 // expected-error@+1 {{builtin is not supported on this version of HVX}} 23 return __builtin_HEXAGON_V6_vdd0_128B(); 24 } 25