xref: /aosp_15_r20/external/clang/test/CodeGen/arm-pcs.c (revision 67e74705e28f6214e480b399dd47ea732279e315)
1*67e74705SXin Li // REQUIRES: arm-registered-target
2*67e74705SXin Li // RUN: %clang_cc1 -triple arm-none-linux-gnueabi -emit-llvm -w -o - < %s | FileCheck %s
3*67e74705SXin Li typedef int __attribute__((pcs("aapcs"))) (*aapcs_fn)(void);
4*67e74705SXin Li typedef int __attribute__((pcs("aapcs-vfp"))) (*aapcs_vfp_fn)(void);
5*67e74705SXin Li 
6*67e74705SXin Li aapcs_fn bar;
7*67e74705SXin Li 
foo(aapcs_vfp_fn baz)8*67e74705SXin Li int foo(aapcs_vfp_fn baz) {
9*67e74705SXin Li // CHECK-LABEL: define i32 @foo
10*67e74705SXin Li // CHECK: call arm_aapcscc
11*67e74705SXin Li // CHECK: call arm_aapcs_vfpcc
12*67e74705SXin Li   return bar() + baz();
13*67e74705SXin Li }
14