1 // RUN: %clang_cc1 -triple aarch64-linux-gnu -emit-llvm -o - %s | FileCheck %s -check-prefix=CHECKC
2 // RUN: %clang_cc1 -triple aarch64-linux-gnu -emit-llvm -x c++ -o - %s | FileCheck %s -check-prefix=CHECKCXX
3 // RUN: %clang_cc1 -triple i686-pc-linux-gnu -verify %s
4 
5 void __attribute__((aarch64_vector_pcs)) f(int *); // expected-warning {{'aarch64_vector_pcs' calling convention is not supported for this target}}
6 
7 // CHECKC: define void @g(
8 // CHECKCXX: define void @_Z1gPi(
g(int * a)9 void g(int *a) {
10 
11 // CHECKC: call aarch64_vector_pcs void @f(
12 // CHECKCXX: call aarch64_vector_pcs void @_Z1fPi
13   f(a);
14 }
15 
16 // CHECKC: declare aarch64_vector_pcs void @f(
17 // CHECKCXX: declare aarch64_vector_pcs void @_Z1fPi
18 
h(int * a)19 void __attribute__((aarch64_vector_pcs)) h(int *a){ // expected-warning {{'aarch64_vector_pcs' calling convention is not supported for this target}}
20 // CHECKC: define aarch64_vector_pcs void @h(
21 // CHECKCXX: define aarch64_vector_pcs void @_Z1hPi(
22   f(a);
23 }
24