diff options
author | Akira Hatanaka <ahatanaka@apple.com> | 2019-03-21 19:59:49 +0000 |
---|---|---|
committer | Akira Hatanaka <ahatanaka@apple.com> | 2019-03-21 19:59:49 +0000 |
commit | 65bb3f92bd5f6d1d32dee43904c56f4f73276e62 (patch) | |
tree | 5c039ce629b8e7ee218f1a0682b797be53ed10c5 /clang/test/CodeGenObjC/objc-arc-container-subscripting.m | |
parent | 86559dcb8d519863c16f7b210ca583a34194acef (diff) | |
download | bcm5719-llvm-65bb3f92bd5f6d1d32dee43904c56f4f73276e62.tar.gz bcm5719-llvm-65bb3f92bd5f6d1d32dee43904c56f4f73276e62.zip |
[CodeGen][ObjC] Annotate calls to objc_retainAutoreleasedReturnValue
with notail on x86-64.
On x86-64, the epilogue code inserted before the tail jump blocks the
autoreleased return optimization.
rdar://problem/38675807
Differential Revision: https://reviews.llvm.org/D59656
llvm-svn: 356705
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 339415e3c05..2f6062d7ce6 100644 --- a/clang/test/CodeGenObjC/objc-arc-container-subscripting.m +++ b/clang/test/CodeGenObjC/objc-arc-container-subscripting.m @@ -12,7 +12,7 @@ id func() { } // CHECK: [[call:%.*]] = call i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend -// CHECK: [[SIX:%.*]] = call i8* @llvm.objc.retainAutoreleasedReturnValue(i8* [[call]]) [[NUW:#[0-9]+]] +// CHECK: [[SIX:%.*]] = notail call i8* @llvm.objc.retainAutoreleasedReturnValue(i8* [[call]]) [[NUW:#[0-9]+]] // CHECK: [[ARRAY_CASTED:%.*]] = bitcast %0** {{%.*}} to i8** // CHECK: call void @llvm.objc.storeStrong(i8** [[ARRAY_CASTED]], i8* null) // CHECK: [[EIGHT:%.*]] = tail call i8* @llvm.objc.autoreleaseReturnValue(i8* [[SIX]]) [[NUW]] |