Run DCE after a LoopFlatten test to reduce spurious output [nfc]
[llvm-project.git] / clang / test / PCH / objc_container.m
blob8b05c93aaadcdc475c78c0a21bf0083158bf7620
1 // UNSUPPORTED: target={{.*}}-zos{{.*}}, target={{.*}}-aix{{.*}}
2 // Test this without pch.
3 // RUN: %clang_cc1 -include %S/objc_container.h -fsyntax-only -verify %s
5 // Test with pch.
6 // RUN: %clang_cc1 -x objective-c -emit-pch -o %t %S/objc_container.h
7 // RUN: %clang_cc1 -include-pch %t -fsyntax-only -verify %s 
8 // RUN: %clang_cc1 -include-pch %t -ast-print %s | FileCheck -check-prefix=CHECK-PRINT %s
9 // RUN: %clang_cc1 -include-pch %t -emit-llvm -o - %s | FileCheck -check-prefix=CHECK-IR %s
11 // expected-no-diagnostics
13 // CHECK-PRINT: id oldObject = array[10];
14 // CHECK-PRINT: array[10] = oldObject;
15 // CHECK-PRINT: oldObject = dictionary[key];
16 // CHECK-PRINT: dictionary[key] = newObject;
18 // CHECK-IR: define {{.*}}void @all() #0
19 // CHECK-IR: {{call.*objc_msgSend}}
20 // CHECK-IR: {{call.*objc_msgSend}}
21 // CHECK-IR: {{call.*objc_msgSend}}
22 // CHECK-IR: {{call.*objc_msgSend}}
23 // CHECK-IR: ret void
25 // CHECK-IR: attributes #0 = { noinline nounwind {{.*}} }
26 // CHECK-IR: attributes #1 = { nonlazybind }