Run DCE after a LoopFlatten test to reduce spurious output [nfc]
[llvm-project.git] / clang / test / CodeGenObjC / fp2ret.m
blob51a771c27a3b1d8561d9df5415c09338474b8330
1 // RUN: %clang_cc1 -triple i386-apple-darwin9 -fobjc-runtime=macosx-fragile-10.5 -emit-llvm -o - %s | \
2 // RUN:   FileCheck --check-prefix=CHECK-X86_32 %s
3 //
4 // RUN: %clang_cc1 -triple x86_64-apple-darwin10 -fobjc-runtime=macosx-fragile-10.5 -emit-llvm -o - %s | \
5 // RUN:   FileCheck --check-prefix=CHECK-X86_64 %s
6 //
7 // RUN: %clang_cc1 -triple armv7-apple-darwin10 -fobjc-runtime=macosx-fragile-10.5 -emit-llvm -target-abi apcs-gnu -o - %s | \
8 // RUN:   FileCheck --check-prefix=CHECK-ARMV7 %s
10 @interface A
11 -(_Complex long double) complexLongDoubleValue;
12 @end
15 // CHECK-X86_32-LABEL: define{{.*}} void @t0()
16 // CHECK-X86_32: call void @objc_msgSend_stret
17 // CHECK-X86_32: }
19 // CHECK-X86_64-LABEL: define{{.*}} void @t0()
20 // CHECK-X86_64: call { x86_fp80, x86_fp80 } @objc_msgSend_fp2ret
21 // CHECK-X86_64: }
23 // CHECK-ARMV7-LABEL: define{{.*}} void @t0()
24 // CHECK-ARMV7: call i128 @objc_msgSend
25 // CHECK-ARMV7: }
26 void t0(void) {
27   [(A*)0 complexLongDoubleValue];