1*67e74705SXin Li // RUN: %clang_cc1 -triple i386-unknown-linux-gnu -fdefault-calling-conv=cdecl -emit-llvm -o - %s | FileCheck %s --check-prefix=CDECL --check-prefix=ALL 2*67e74705SXin Li // RUN: %clang_cc1 -triple i786-unknown-linux-gnu -target-feature +sse4.2 -fdefault-calling-conv=fastcall -emit-llvm -o - %s | FileCheck %s --check-prefix=FASTCALL --check-prefix=ALL 3*67e74705SXin Li // RUN: %clang_cc1 -triple i486-unknown-linux-gnu -fdefault-calling-conv=stdcall -emit-llvm -o - %s | FileCheck %s --check-prefix=STDCALL --check-prefix=ALL 4*67e74705SXin Li // RUN: %clang_cc1 -triple i486-unknown-linux-gnu -mrtd -emit-llvm -o - %s | FileCheck %s --check-prefix=STDCALL --check-prefix=ALL 5*67e74705SXin Li // RUN: %clang_cc1 -triple i986-unknown-linux-gnu -fdefault-calling-conv=vectorcall -emit-llvm -o - %s | FileCheck %s --check-prefix=VECTORCALL --check-prefix=ALL 6*67e74705SXin Li 7*67e74705SXin Li // CDECL: define void @_Z5test1v 8*67e74705SXin Li // FASTCALL: define x86_fastcallcc void @_Z5test1v 9*67e74705SXin Li // STDCALL: define x86_stdcallcc void @_Z5test1v 10*67e74705SXin Li // VECTORCALL: define x86_vectorcallcc void @_Z5test1v test1()11*67e74705SXin Livoid test1() {} 12*67e74705SXin Li 13*67e74705SXin Li // ALL: define void @_Z5test2v test2()14*67e74705SXin Livoid __attribute__((cdecl)) test2() {} 15*67e74705SXin Li 16*67e74705SXin Li // ALL: define x86_fastcallcc void @_Z5test3v test3()17*67e74705SXin Livoid __attribute__((fastcall)) test3() {} 18*67e74705SXin Li 19*67e74705SXin Li // ALL: define x86_stdcallcc void @_Z5test4v test4()20*67e74705SXin Livoid __attribute__((stdcall)) test4() {} 21*67e74705SXin Li 22*67e74705SXin Li // ALL: define x86_vectorcallcc void @_Z5test5v test5()23*67e74705SXin Livoid __attribute__((vectorcall)) test5() {} 24*67e74705SXin Li 25*67e74705SXin Li // ALL: define linkonce_odr void @_ZN1A11test_memberEv 26*67e74705SXin Li class A { 27*67e74705SXin Li public: test_member()28*67e74705SXin Li void test_member() {} 29*67e74705SXin Li }; 30*67e74705SXin Li test()31*67e74705SXin Livoid test() { 32*67e74705SXin Li A a; 33*67e74705SXin Li a.test_member(); 34*67e74705SXin Li } 35