xref: /llvm-project/clang/test/CodeGen/PowerPC/musttail-weak.c (revision e44c28f07ede2bd693e2372317880f57a635fa73)
1*afd0e6d0SChen Zheng // RUN: %clang_cc1 %s -triple powerpc64-ibm-aix-xcoff -o /dev/null -emit-llvm -verify=aix
2*afd0e6d0SChen Zheng // RUN: %clang_cc1 %s -triple powerpc-ibm-aix-xcoff -o /dev/null -emit-llvm -verify=aix
3*afd0e6d0SChen Zheng // RUN: %clang_cc1 %s -triple powerpc64-unknown-linux-gnu -o /dev/null -emit-llvm -verify=linux
4*afd0e6d0SChen Zheng // RUN: %clang_cc1 %s -triple powerpc64le-unknown-linux-gnu -o /dev/null -emit-llvm -verify=linux
5*afd0e6d0SChen Zheng 
6*afd0e6d0SChen Zheng __attribute__((weak)) int func2(int i) {
7*afd0e6d0SChen Zheng   return 0;
8*afd0e6d0SChen Zheng }
9*afd0e6d0SChen Zheng int external_call2(int i) {
10*afd0e6d0SChen Zheng   // linux-error@+2 {{'musttail' attribute for this call is impossible because external calls cannot be tail called on PPC}}
11*afd0e6d0SChen Zheng   // aix-error@+1 {{'musttail' attribute is not supported on AIX}}
12*afd0e6d0SChen Zheng   [[clang::musttail]] return func2(i);
13*afd0e6d0SChen Zheng }
14