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