aboutsummaryrefslogtreecommitdiff
path: root/test/CodeGenObjC/stret-1.m
diff options
context:
space:
mode:
Diffstat (limited to 'test/CodeGenObjC/stret-1.m')
-rw-r--r--test/CodeGenObjC/stret-1.m15
1 files changed, 9 insertions, 6 deletions
diff --git a/test/CodeGenObjC/stret-1.m b/test/CodeGenObjC/stret-1.m
index f45d1219da65..a7bcdda48b14 100644
--- a/test/CodeGenObjC/stret-1.m
+++ b/test/CodeGenObjC/stret-1.m
@@ -1,8 +1,7 @@
-// RUN: %clang_cc1 -fblocks -triple arm64-apple-darwin %s -emit-llvm -o - | FileCheck %s -check-prefix=CHECK-ARM64
+// RUN: %clang_cc1 -fblocks -triple arm64-apple-darwin %s -emit-llvm -o - | FileCheck %s
// rdar://12416433
struct stret { int x[100]; };
-struct stret zero;
struct stret one = {{1}};
@interface Test @end
@@ -13,8 +12,12 @@ struct stret one = {{1}};
int main(int argc, const char **argv)
{
- struct stret st2 = one;
- if (argc) st2 = [(id)(argc&~255) method];
-}
+ [(id)(argc&~255) method];
+ // CHECK: call void bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to void (%struct.stret*, i8*, i8*)*)(%struct.stret* sret [[T0:%[^,]+]]
+ // CHECK: [[T0P:%.*]] = bitcast %struct.stret* [[T0]] to i8*
+ // CHECK: call void @llvm.memset.p0i8.i64(i8* [[T0P]], i8 0, i64 400, i32 4, i1 false)
-// CHECK-ARM64: call void @llvm.memset.p0i8.i64(i8* [[T0:%.*]], i8 0, i64 400, i32 4, i1 false)
+ [Test method];
+ // CHECK: call void bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to void (%struct.stret*, i8*, i8*)*)(%struct.stret* sret [[T1:%[^,]+]]
+ // CHECK-NOT: call void @llvm.memset.p0i8.i64(
+}