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/SimplifyCFG/invoke.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/SimplifyCFG/invoke.ll')
-rw-r--r-- | llvm/test/Transforms/SimplifyCFG/invoke.ll | 162 |
1 files changed, 0 insertions, 162 deletions
diff --git a/llvm/test/Transforms/SimplifyCFG/invoke.ll b/llvm/test/Transforms/SimplifyCFG/invoke.ll deleted file mode 100644 index a58e8005793..00000000000 --- a/llvm/test/Transforms/SimplifyCFG/invoke.ll +++ /dev/null @@ -1,162 +0,0 @@ -; RUN: opt < %s -simplifycfg -S | FileCheck %s -target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128" - -declare i32 @__gxx_personality_v0(...) -declare void @__cxa_call_unexpected(i8*) -declare void @purefn() nounwind readnone -declare i32 @read_only() nounwind readonly -declare i32 @nounwind_fn() nounwind -declare i32 @fn() - - -; CHECK-LABEL: @f1( -define i8* @f1() nounwind uwtable ssp personality i8* bitcast (i32 (...)* @__gxx_personality_v0 to i8*) { -entry: -; CHECK: call void @llvm.trap() -; CHECK: unreachable - %call = invoke noalias i8* undef() - to label %invoke.cont unwind label %lpad - -invoke.cont: - ret i8* %call - -lpad: - %0 = landingpad { i8*, i32 } - filter [0 x i8*] zeroinitializer - %1 = extractvalue { i8*, i32 } %0, 0 - tail call void @__cxa_call_unexpected(i8* %1) noreturn nounwind - unreachable -} - -; CHECK-LABEL: @f2( -define i8* @f2() nounwind uwtable ssp personality i8* bitcast (i32 (...)* @__gxx_personality_v0 to i8*) { -entry: -; CHECK: call void @llvm.trap() -; CHECK: unreachable - %call = invoke noalias i8* null() - to label %invoke.cont unwind label %lpad - -invoke.cont: - ret i8* %call - -lpad: - %0 = landingpad { i8*, i32 } - filter [0 x i8*] zeroinitializer - %1 = extractvalue { i8*, i32 } %0, 0 - tail call void @__cxa_call_unexpected(i8* %1) noreturn nounwind - unreachable -} - -; CHECK-LABEL: @f2_no_null_opt( -define i8* @f2_no_null_opt() nounwind uwtable ssp #0 personality i8* bitcast (i32 (...)* @__gxx_personality_v0 to i8*) { -entry: -; CHECK: invoke noalias i8* null() - %call = invoke noalias i8* null() - to label %invoke.cont unwind label %lpad - -; CHECK: invoke.cont: -; CHECK: ret i8* %call -invoke.cont: - ret i8* %call - -lpad: - %0 = landingpad { i8*, i32 } - filter [0 x i8*] zeroinitializer - %1 = extractvalue { i8*, i32 } %0, 0 - tail call void @__cxa_call_unexpected(i8* %1) noreturn nounwind -; CHECK: unreachable - unreachable -} - -; CHECK-LABEL: @f3( -define i32 @f3() nounwind uwtable ssp personality i8* bitcast (i32 (...)* @__gxx_personality_v0 to i8*) { -; CHECK-NEXT: entry -entry: -; CHECK-NEXT: ret i32 3 - %call = invoke i32 @read_only() - to label %invoke.cont unwind label %lpad - -invoke.cont: - ret i32 3 - -lpad: - %0 = landingpad { i8*, i32 } - filter [0 x i8*] zeroinitializer - %1 = extractvalue { i8*, i32 } %0, 0 - tail call void @__cxa_call_unexpected(i8* %1) noreturn nounwind - unreachable -} - -; CHECK-LABEL: @f4( -define i32 @f4() nounwind uwtable ssp personality i8* bitcast (i32 (...)* @__gxx_personality_v0 to i8*) { -; CHECK-NEXT: entry -entry: -; CHECK-NEXT: call i32 @read_only() - %call = invoke i32 @read_only() - to label %invoke.cont unwind label %lpad - -invoke.cont: -; CHECK-NEXT: ret i32 %call - ret i32 %call - -lpad: - %0 = landingpad { i8*, i32 } - filter [0 x i8*] zeroinitializer - %1 = extractvalue { i8*, i32 } %0, 0 - tail call void @__cxa_call_unexpected(i8* %1) noreturn nounwind - unreachable -} - -; CHECK-LABEL: @f5( -define i32 @f5(i1 %cond, i8* %a, i8* %b) personality i8* bitcast (i32 (...)* @__gxx_personality_v0 to i8*) { -entry: - br i1 %cond, label %x, label %y - -x: -; CHECK: invoke i32 @fn() - %call = invoke i32 @fn() - to label %cont unwind label %lpad - -y: -; CHECK: call i32 @nounwind_fn() - %call2 = invoke i32 @nounwind_fn() - to label %cont unwind label %lpad - -cont: -; CHECK: phi i32 -; CHECK: ret i32 %phi - %phi = phi i32 [%call, %x], [%call2, %y] - ret i32 %phi - -lpad: -; CHECK-NOT: phi - %phi2 = phi i8* [%a, %x], [%b, %y] - %0 = landingpad { i8*, i32 } - filter [0 x i8*] zeroinitializer -; CHECK: __cxa_call_unexpected(i8* %a) - tail call void @__cxa_call_unexpected(i8* %phi2) noreturn nounwind - unreachable -} - -; CHECK-LABEL: @f6( -define void @f6() personality i8* bitcast (i32 (...)* @__gxx_personality_v0 to i8*) { -entry: - invoke void @purefn() - to label %invoke.cont1 unwind label %lpad - -invoke.cont1: - %foo = invoke i32 @fn() - to label %invoke.cont2 unwind label %lpad - -invoke.cont2: - ret void - -lpad: -; CHECK-NOT: phi - %tmp = phi i8* [ null, %invoke.cont1 ], [ null, %entry ] - landingpad { i8*, i32 } - cleanup - ret void -} - -attributes #0 = { "null-pointer-is-valid"="true" } |