Back to PBT run
input.mlir
#loop_ann = #llvm.loop_annotation<mustProgress = true>
llvm.func @plain_diamond_0(%c: i1, %a: i32, %b: i32) -> i32 {
cf.cond_br %c, ^yes, ^no
^yes:
cf.br ^exit(%a : i32)
^no:
cf.br ^exit(%b : i32)
^exit(%r: i32):
llvm.return %r : i32
}
llvm.func @plain_diamond_1(%c: i1, %a: i32, %b: i32) -> i32 {
cf.cond_br %c, ^yes, ^no
^yes:
cf.br ^exit(%a : i32)
^no:
cf.br ^exit(%b : i32)
^exit(%r: i32):
llvm.return %r : i32
}
llvm.func @plain_diamond_2(%c: i1, %a: i32, %b: i32) -> i32 {
cf.cond_br %c, ^yes, ^no
^yes:
cf.br ^exit(%a : i32)
^no:
cf.br ^exit(%b : i32)
^exit(%r: i32):
llvm.return %r : i32
}