[clang] Handle __declspec() attributes in using
[llvm-project.git] / clang / test / Sema / builtin-cpu-supports.c
blobece695a1a65135bb94ff5eaffb67d2468cfe2823
1 // RUN: %clang_cc1 -fsyntax-only -triple x86_64-pc-linux-gnu -verify %s
2 // RUN: %clang_cc1 -fsyntax-only -triple powerpc64le-linux-gnu -verify %s
4 extern void a(const char *);
6 extern const char *str;
8 int main(void) {
9 #ifdef __x86_64__
10 if (__builtin_cpu_supports("ss")) // expected-error {{invalid cpu feature string}}
11 a("sse4.2");
13 if (__builtin_cpu_supports(str)) // expected-error {{expression is not a string literal}}
14 a(str);
16 if (__builtin_cpu_is("int")) // expected-error {{invalid cpu name for builtin}}
17 a("intel");
19 (void)__builtin_cpu_is("x86-64"); // expected-error {{invalid cpu name for builtin}}
20 (void)__builtin_cpu_is("x86-64-v2"); // expected-error {{invalid cpu name for builtin}}
21 (void)__builtin_cpu_is("x86-64-v3"); // expected-error {{invalid cpu name for builtin}}
22 (void)__builtin_cpu_is("x86-64-v4"); // expected-error {{invalid cpu name for builtin}}
23 #else
24 if (__builtin_cpu_supports("vsx")) // expected-error {{use of unknown builtin}}
25 a("vsx");
27 if (__builtin_cpu_is("pwr9")) // expected-error {{use of unknown builtin}}
28 a("pwr9");
29 #endif
31 return 0;