diff options
| author | Fariborz Jahanian <fjahanian@apple.com> | 2013-02-21 00:40:10 +0000 |
|---|---|---|
| committer | Fariborz Jahanian <fjahanian@apple.com> | 2013-02-21 00:40:10 +0000 |
| commit | 134cec62ab8ddea5b70d55873e4ab0a95d9bf894 (patch) | |
| tree | e3e0ab6164d001c1bfa7f48737fa6e7978f06c3a /clang/test/CodeGenObjCXX/arc-new-delete.mm | |
| parent | f5b474c6c6c05689fb1a0dae7c24dec161d87917 (diff) | |
| download | bcm5719-llvm-134cec62ab8ddea5b70d55873e4ab0a95d9bf894.tar.gz bcm5719-llvm-134cec62ab8ddea5b70d55873e4ab0a95d9bf894.zip | |
objective-C arc IR-gen. Retaining of strong
arguments in function prologue is done
with objc_StoreStrong to pair it with
similar objc_StoreStrong for release in function
epilogue. This is done with -O0 only.
// rdar://13145317
llvm-svn: 175698
Diffstat (limited to 'clang/test/CodeGenObjCXX/arc-new-delete.mm')
| -rw-r--r-- | clang/test/CodeGenObjCXX/arc-new-delete.mm | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/clang/test/CodeGenObjCXX/arc-new-delete.mm b/clang/test/CodeGenObjCXX/arc-new-delete.mm index ce7eb3deb14..c061e5dbdff 100644 --- a/clang/test/CodeGenObjCXX/arc-new-delete.mm +++ b/clang/test/CodeGenObjCXX/arc-new-delete.mm @@ -5,8 +5,9 @@ typedef __weak id weak_id; // CHECK: define void @_Z8test_newP11objc_object void test_new(id invalue) { - // CHECK: alloca i8* - // CHECK-NEXT: call i8* @objc_retain + // CHECK: [[INVALUEADDR:%.*]] = alloca i8* + // CHECK-NEXT: store i8* null, i8** [[INVALUEADDR]] + // CHECK-NEXT: call void @objc_storeStrong(i8** [[INVALUEADDR]], i8* [[INVALUE:%.*]]) // CHECK: call noalias i8* @_Znwm // CHECK-NEXT: {{bitcast i8\*.*to i8\*\*}} |

