aboutsummaryrefslogtreecommitdiff
path: root/test/CodeGenObjCXX/exceptions-legacy.mm
diff options
context:
space:
mode:
Diffstat (limited to 'test/CodeGenObjCXX/exceptions-legacy.mm')
-rw-r--r--test/CodeGenObjCXX/exceptions-legacy.mm14
1 files changed, 7 insertions, 7 deletions
diff --git a/test/CodeGenObjCXX/exceptions-legacy.mm b/test/CodeGenObjCXX/exceptions-legacy.mm
index f6cd29647eea..dac259d91cb5 100644
--- a/test/CodeGenObjCXX/exceptions-legacy.mm
+++ b/test/CodeGenObjCXX/exceptions-legacy.mm
@@ -15,7 +15,7 @@ void test0(id obj) {
// CHECK-LABEL: define void @_Z5test0P11objc_object(
// Enter the @synchronized block.
// CHECK: call i32 @objc_sync_enter(i8* [[OBJ:%.*]])
-// CHECK: call void @objc_exception_try_enter([[BUF_T:%.*]]* [[BUF:%.*]])
+// CHECK: call void @objc_exception_try_enter([[BUF_T:%.*]]* nonnull [[BUF:%.*]])
// CHECK-NEXT: [[T0:%.*]] = getelementptr [[BUF_T]], [[BUF_T]]* [[BUF]], i32 0, i32 0, i32 0
// CHECK-NEXT: [[T1:%.*]] = call i32 @_setjmp(i32* [[T0]])
// CHECK-NEXT: [[T2:%.*]] = icmp eq i32 [[T1]], 0
@@ -25,7 +25,7 @@ void test0(id obj) {
// CHECK: invoke void @_Z3foov()
// Leave the @synchronized. The reload of obj here is unnecessary.
-// CHECK: call void @objc_exception_try_exit([[BUF_T]]* [[BUF]])
+// CHECK: call void @objc_exception_try_exit([[BUF_T]]* nonnull [[BUF]])
// CHECK-NEXT: [[T0:%.*]] = load i8*, i8**
// CHECK-NEXT: call i32 @objc_sync_exit(i8* [[T0]])
// CHECK-NEXT: ret void
@@ -33,7 +33,7 @@ void test0(id obj) {
// Real EH cleanup.
// CHECK: [[T0:%.*]] = landingpad
// CHECK-NEXT: cleanup
-// CHECK-NEXT: call void @objc_exception_try_exit([[BUF_T]]* [[BUF]])
+// CHECK-NEXT: call void @objc_exception_try_exit([[BUF_T]]* nonnull [[BUF]])
// CHECK-NEXT: [[T0:%.*]] = load i8*, i8**
// CHECK-NEXT: call i32 @objc_sync_exit(i8* [[T0]])
// CHECK-NEXT: resume
@@ -41,7 +41,7 @@ void test0(id obj) {
// ObjC EH "cleanup".
// CHECK: [[T0:%.*]] = load i8*, i8**
// CHECK-NEXT: call i32 @objc_sync_exit(i8* [[T0]])
-// CHECK-NEXT: [[T0:%.*]] = call i8* @objc_exception_extract([[BUF_T]]* [[BUF]])
+// CHECK-NEXT: [[T0:%.*]] = call i8* @objc_exception_extract([[BUF_T]]* nonnull [[BUF]])
// CHECK-NEXT: call void @objc_exception_throw(i8* [[T0]])
// CHECK-NEXT: unreachable
@@ -54,7 +54,7 @@ void test1(id obj, bool *failed) {
}
// CHECK-LABEL: define void @_Z5test1P11objc_objectPb(
// Enter the @try block.
-// CHECK: call void @objc_exception_try_enter([[BUF_T]]* [[BUF:%.*]])
+// CHECK: call void @objc_exception_try_enter([[BUF_T]]* nonnull [[BUF:%.*]])
// CHECK-NEXT: [[T0:%.*]] = getelementptr [[BUF_T]], [[BUF_T]]* [[BUF]], i32 0, i32 0, i32 0
// CHECK-NEXT: [[T1:%.*]] = call i32 @_setjmp(i32* [[T0]])
// CHECK-NEXT: [[T2:%.*]] = icmp eq i32 [[T1]], 0
@@ -64,14 +64,14 @@ void test1(id obj, bool *failed) {
// CHECK: invoke void @_Z3foov()
// Leave the @try.
-// CHECK: call void @objc_exception_try_exit([[BUF_T]]* [[BUF]])
+// CHECK: call void @objc_exception_try_exit([[BUF_T]]* nonnull [[BUF]])
// CHECK-NEXT: br label
// CHECK: ret void
// Real EH cleanup.
// CHECK: [[T0:%.*]] = landingpad
// CHECK-NEXT: cleanup
-// CHECK-NEXT: call void @objc_exception_try_exit([[BUF_T]]* [[BUF]])
+// CHECK-NEXT: call void @objc_exception_try_exit([[BUF_T]]* nonnull [[BUF]])
// CHECK-NEXT: resume
// Catch handler. Reload of 'failed' address is unnecessary.