Completel forgot about unconditional branches

llvm-svn: 75961
This commit is contained in:
Anton Korobeynikov 2009-07-16 13:57:52 +00:00
parent 15d6e8785b
commit f1bf3176c6
2 changed files with 21 additions and 0 deletions

View File

@ -271,6 +271,9 @@ let isReturn = 1, isTerminator = 1, isBarrier = 1, hasCtrlDep = 1 in {
}
let isBranch = 1, isTerminator = 1 in {
let isBarrier = 1 in
def JMP : Pseudo<(outs), (ins brtarget:$dst), "j\t{$dst}", [(br bb:$dst)]>;
let Uses = [PSW] in {
def JE : Pseudo<(outs), (ins brtarget:$dst),
"je\t$dst",

View File

@ -0,0 +1,18 @@
; RUN: llvm-as < %s | llc
target datalayout = "E-p:64:64:64-i1:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-f128:128:128"
target triple = "s390x-linux"
define void @foo() noreturn nounwind {
entry:
tail call void @baz() nounwind
br label %l1
l1: ; preds = %entry, %l1
tail call void @bar() nounwind
br label %l1
}
declare void @bar()
declare void @baz()