[InstCombine] Signed saturation patterns
[llvm-complete.git] / test / CodeGen / Hexagon / ifcvt-simple-bprob.ll
blob2d48d30dd7d8976ca7460662cdd4db987c5eabe1
1 ; RUN: llc -march=hexagon < %s
3 ; Check that branch probabilities are set correctly after performing the
4 ; simple variant of if-conversion. The converted block has a branch that
5 ; is not analyzable.
7 target triple = "hexagon"
9 declare void @foo()
11 ; CHECK-LABEL: danny
12 ; CHECK: if (p0.new) jump:nt foo
13 define void @danny(i32 %x) {
14   %t0 = icmp sgt i32 %x, 0
15   br i1 %t0, label %tail, label %exit, !prof !0
16 tail:
17   tail call void @foo();
18   ret void
19 exit:
20   ret void
23 ; CHECK-LABEL: sammy
24 ; CHECK: if (!p0.new) jump:t foo
25 define void @sammy(i32 %x) {
26   %t0 = icmp sgt i32 %x, 0
27   br i1 %t0, label %exit, label %tail, !prof !0
28 tail:
29   tail call void @foo();
30   ret void
31 exit:
32   ret void
35 !0 = !{!"branch_weights", i32 1, i32 2000}