diff options
author | Eric Christopher <echristo@gmail.com> | 2019-04-17 02:12:23 +0000 |
---|---|---|
committer | Eric Christopher <echristo@gmail.com> | 2019-04-17 02:12:23 +0000 |
commit | a86343512845c9c1fdbac865fea88aa5fce7142a (patch) | |
tree | 666fc6353de19ad8b00e56b67edd33f24104e4a7 /llvm/test/Transforms/ObjCARC/empty-block.ll | |
parent | 7f8ca6e3679b3af951cb7a4b1377edfaa3244b93 (diff) | |
download | bcm5719-llvm-a86343512845c9c1fdbac865fea88aa5fce7142a.tar.gz bcm5719-llvm-a86343512845c9c1fdbac865fea88aa5fce7142a.zip |
Temporarily Revert "Add basic loop fusion pass."
As it's causing some bot failures (and per request from kbarton).
This reverts commit r358543/ab70da07286e618016e78247e4a24fcb84077fda.
llvm-svn: 358546
Diffstat (limited to 'llvm/test/Transforms/ObjCARC/empty-block.ll')
-rw-r--r-- | llvm/test/Transforms/ObjCARC/empty-block.ll | 59 |
1 files changed, 0 insertions, 59 deletions
diff --git a/llvm/test/Transforms/ObjCARC/empty-block.ll b/llvm/test/Transforms/ObjCARC/empty-block.ll deleted file mode 100644 index 68372e7cd56..00000000000 --- a/llvm/test/Transforms/ObjCARC/empty-block.ll +++ /dev/null @@ -1,59 +0,0 @@ -; RUN: opt -S -objc-arc < %s | FileCheck %s -; rdar://10210274 - -%0 = type opaque - -declare i8* @llvm.objc.retain(i8*) - -declare void @llvm.objc.release(i8*) - -declare i8* @llvm.objc.autoreleaseReturnValue(i8*) - -; Don't delete the autorelease. - -; CHECK-LABEL: define %0* @test0( -; CHECK: @llvm.objc.retain -; CHECK: .lr.ph: -; CHECK-NOT: @llvm.objc.r -; CHECK: @llvm.objc.autoreleaseReturnValue -; CHECK-NOT: @llvm.objc. -; CHECK: } -define %0* @test0(%0* %buffer) nounwind { - %1 = bitcast %0* %buffer to i8* - %2 = tail call i8* @llvm.objc.retain(i8* %1) nounwind - br i1 undef, label %.lr.ph, label %._crit_edge - -.lr.ph: ; preds = %.lr.ph, %0 - br i1 false, label %.lr.ph, label %._crit_edge - -._crit_edge: ; preds = %.lr.ph, %0 - %3 = tail call i8* @llvm.objc.retain(i8* %1) nounwind - tail call void @llvm.objc.release(i8* %1) nounwind, !clang.imprecise_release !0 - %4 = tail call i8* @llvm.objc.autoreleaseReturnValue(i8* %1) nounwind - ret %0* %buffer -} - -; Do delete the autorelease, even with the retain in a different block. - -; CHECK-LABEL: define %0* @test1( -; CHECK-NOT: @objc -; CHECK: } -define %0* @test1() nounwind { - %buffer = call %0* @foo() - %1 = bitcast %0* %buffer to i8* - %2 = tail call i8* @llvm.objc.retain(i8* %1) nounwind - br i1 undef, label %.lr.ph, label %._crit_edge - -.lr.ph: ; preds = %.lr.ph, %0 - br i1 false, label %.lr.ph, label %._crit_edge - -._crit_edge: ; preds = %.lr.ph, %0 - %3 = tail call i8* @llvm.objc.retain(i8* %1) nounwind - tail call void @llvm.objc.release(i8* %1) nounwind, !clang.imprecise_release !0 - %4 = tail call i8* @llvm.objc.autoreleaseReturnValue(i8* %1) nounwind - ret %0* %buffer -} - -declare %0* @foo() - -!0 = !{} |