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/Sink/call.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/Sink/call.ll')
-rw-r--r-- | llvm/test/Transforms/Sink/call.ll | 112 |
1 files changed, 0 insertions, 112 deletions
diff --git a/llvm/test/Transforms/Sink/call.ll b/llvm/test/Transforms/Sink/call.ll deleted file mode 100644 index 5aaad4499f5..00000000000 --- a/llvm/test/Transforms/Sink/call.ll +++ /dev/null @@ -1,112 +0,0 @@ -; RUN: opt < %s -basicaa -sink -S | FileCheck %s - -declare i32 @f_load_global() nounwind readonly -declare i32 @f_load_arg(i32*) nounwind readonly argmemonly -declare void @f_store_global(i32) nounwind -declare void @f_store_arg(i32*) nounwind argmemonly -declare void @f_readonly_arg(i32* readonly, i32*) nounwind argmemonly -declare i32 @f_readnone(i32) nounwind readnone - -@A = external global i32 -@B = external global i32 - -; Sink readonly call if no stores are in the way. -; -; CHECK-LABEL: @test_sink_no_stores( -; CHECK: true: -; CHECK-NEXT: %l = call i32 @f_load_global -; CHECK-NEXT: ret i32 %l -define i32 @test_sink_no_stores(i1 %z) { - %l = call i32 @f_load_global() - br i1 %z, label %true, label %false -true: - ret i32 %l -false: - ret i32 0 -} - -; CHECK-LABEL: @test_sink_argmem_store( -; CHECK: true: -; CHECK-NEXT: %l = call i32 @f_load_arg -; CHECK-NEXT: ret i32 %l -define i32 @test_sink_argmem_store(i1 %z) { - %l = call i32 @f_load_arg(i32* @A) - store i32 0, i32* @B - br i1 %z, label %true, label %false -true: - ret i32 %l -false: - ret i32 0 -} - -; CHECK-LABEL: @test_sink_argmem_call( -; CHECK: true: -; CHECK-NEXT: %l = call i32 @f_load_arg -; CHECK-NEXT: ret i32 %l -define i32 @test_sink_argmem_call(i1 %z) { - %l = call i32 @f_load_arg(i32* @A) - call void @f_store_arg(i32* @B) - br i1 %z, label %true, label %false -true: - ret i32 %l -false: - ret i32 0 -} - -; CHECK-LABEL: @test_sink_argmem_multiple( -; CHECK: true: -; CHECK-NEXT: %l = call i32 @f_load_arg -; CHECK-NEXT: ret i32 %l -define i32 @test_sink_argmem_multiple(i1 %z) { - %l = call i32 @f_load_arg(i32* @A) - call void @f_readonly_arg(i32* @A, i32* @B) - br i1 %z, label %true, label %false -true: - ret i32 %l -false: - ret i32 0 -} - -; But don't sink if there is a store. -; -; CHECK-LABEL: @test_nosink_store( -; CHECK: call i32 @f_load_global -; CHECK-NEXT: store i32 -define i32 @test_nosink_store(i1 %z) { - %l = call i32 @f_load_global() - store i32 0, i32* @A - br i1 %z, label %true, label %false -true: - ret i32 %l -false: - ret i32 0 -} - -; CHECK-LABEL: @test_nosink_call( -; CHECK: call i32 @f_load_global -; CHECK-NEXT: call void @f_store_global -define i32 @test_nosink_call(i1 %z) { - %l = call i32 @f_load_global() - call void @f_store_global(i32 0) - br i1 %z, label %true, label %false -true: - ret i32 %l -false: - ret i32 0 -} - -; readnone calls are sunk across stores. -; -; CHECK-LABEL: @test_sink_readnone( -; CHECK: true: -; CHECK-NEXT: %l = call i32 @f_readnone( -; CHECK-NEXT: ret i32 %l -define i32 @test_sink_readnone(i1 %z) { - %l = call i32 @f_readnone(i32 0) - store i32 0, i32* @A - br i1 %z, label %true, label %false -true: - ret i32 %l -false: - ret i32 0 -} |