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