aboutsummaryrefslogtreecommitdiff
path: root/llvm/test/Transforms/LoopUnroll/zeroed-branch-weights.ll
blob: 4d378b0d22f7daa9c65335538c1e7f0b9ffa0182 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
; Check that zeroed branch weights do not crash or otherwise break basic
; LoopUnroll behavior when it tries to compute a probability from them.

; RUN: opt < %s -S -unroll-count=2 -passes='loop-unroll' 2>&1 | FileCheck %s

define void @test() {
entry:
  br label %loop

loop:
  br i1 false, label %end, label %loop, !prof !0

end:
  ret void
}

!0 = !{!"branch_weights", i32 0, i32 0}

; CHECK: define void @test() {
; CHECK: entry:
; CHECK:   br label %loop
; CHECK: loop:
; CHECK:   br i1 false, label %end, label %loop.1, !prof !0
; CHECK: loop.1:
; CHECK:   br i1 false, label %end, label %loop, !prof !0, !llvm.loop !1
; CHECK-NOT: loop.2
; CHECK: end:
; CHECK:   ret void
; CHECK: }
; CHECK: !0 = !{!"branch_weights", i32 0, i32 0}