diff options
author | Chad Rosier <mcrosier@apple.com> | 2012-12-12 17:52:21 +0000 |
---|---|---|
committer | Chad Rosier <mcrosier@apple.com> | 2012-12-12 17:52:21 +0000 |
commit | 13799b323ec8c663d0fb740144a1c2ff0ee5161b (patch) | |
tree | c3550acfb109b19fd060d42917d6eb49293ba52f /clang/test/CodeGenObjC/objc-arc-container-subscripting.m | |
parent | 6ab801394fe98c6b1c78a7f217351c56ee1e7382 (diff) | |
download | bcm5719-llvm-13799b323ec8c663d0fb740144a1c2ff0ee5161b.tar.gz bcm5719-llvm-13799b323ec8c663d0fb740144a1c2ff0ee5161b.zip |
Marking the objc_autoreleaseReturnValue and objc_retainAutoreleaseReturnValue
call sites as tail calls unconditionally. While it's theoretically true that
this is just an optimization, it's an optimization that we very much want to
happen even at -O0, or else ARC applications become substantially harder to
debug. See r169796 for the llvm/fast-isel side of things.
rdar://12553082
llvm-svn: 169996
Diffstat (limited to 'clang/test/CodeGenObjC/objc-arc-container-subscripting.m')
-rw-r--r-- | clang/test/CodeGenObjC/objc-arc-container-subscripting.m | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/clang/test/CodeGenObjC/objc-arc-container-subscripting.m b/clang/test/CodeGenObjC/objc-arc-container-subscripting.m index 71339c7085a..0961ed1b206 100644 --- a/clang/test/CodeGenObjC/objc-arc-container-subscripting.m +++ b/clang/test/CodeGenObjC/objc-arc-container-subscripting.m @@ -15,6 +15,6 @@ id func() { // CHECK: [[SIX:%.*]] = call i8* @objc_retainAutoreleasedReturnValue(i8* [[call]]) nounwind // CHECK: [[ARRAY_CASTED:%.*]] = bitcast %0** {{%.*}} to i8** // CHECK: call void @objc_storeStrong(i8** [[ARRAY_CASTED]], i8* null) -// CHECK: [[EIGHT:%.*]] = call i8* @objc_autoreleaseReturnValue(i8* [[SIX]]) nounwind +// CHECK: [[EIGHT:%.*]] = tail call i8* @objc_autoreleaseReturnValue(i8* [[SIX]]) nounwind // CHECK: ret i8* [[EIGHT]] |