xref: /aosp_15_r20/external/clang/test/CodeGenObjC/stret.m (revision 67e74705e28f6214e480b399dd47ea732279e315)
1*67e74705SXin Li// RUN: %clang_cc1 -fblocks -triple x86_64-apple-darwin9 %s -emit-llvm -o - | FileCheck %s -check-prefix=X86
2*67e74705SXin Li// RUN: %clang_cc1 -fblocks -triple arm-apple-darwin %s -emit-llvm -o - | FileCheck %s -check-prefix=ARM
3*67e74705SXin Li// RUN: %clang_cc1 -fblocks -triple arm64-apple-darwin %s -emit-llvm -o - | FileCheck %s -check-prefix=ARM64
4*67e74705SXin Li
5*67e74705SXin Li// <rdar://problem/9757015>: Don't use 'stret' variants on ARM64.
6*67e74705SXin Li
7*67e74705SXin Li// X86: @main
8*67e74705SXin Li// X86: @objc_msgSend_stret
9*67e74705SXin Li
10*67e74705SXin Li// ARM: @main
11*67e74705SXin Li// ARM: @objc_msgSend_stret
12*67e74705SXin Li
13*67e74705SXin Li// ARM64:     @main
14*67e74705SXin Li// ARM64-NOT: @objc_msgSend_stret
15*67e74705SXin Li
16*67e74705SXin Listruct st { int i[1000]; };
17*67e74705SXin Li@interface Test
18*67e74705SXin Li+(struct st)method;
19*67e74705SXin Li@end
20*67e74705SXin Liint main() {
21*67e74705SXin Li  [Test method];
22*67e74705SXin Li}
23