brintos

brintos / llvm-project-archived public Read only

0
0
Text · 977 B · 8f66907 Raw
24 lines · c
1// RUN: %clang_cc1 -triple aarch64 -fsyntax-only -verify -disable-llvm-passes %s2 3void test_builtin_vectorelements() {4  __builtin_vectorelements(int); // expected-error {{argument to __builtin_vectorelements must be of vector type}}5  __builtin_vectorelements(float); // expected-error {{argument to __builtin_vectorelements must be of vector type}}6  __builtin_vectorelements(long*); // expected-error {{argument to __builtin_vectorelements must be of vector type}}7 8  int a;9  __builtin_vectorelements(a); // expected-error {{argument to __builtin_vectorelements must be of vector type}}10 11  typedef int veci4 __attribute__((vector_size(16)));12  (void) __builtin_vectorelements(veci4);13 14  veci4 vec;15  (void) __builtin_vectorelements(vec);16 17  typedef veci4 some_other_vec;18  (void) __builtin_vectorelements(some_other_vec);19 20  struct Foo { int a; };21  __builtin_vectorelements(struct Foo); // expected-error {{argument to __builtin_vectorelements must be of vector type}}22}23 24