1; RUN: opt -debug-only=branch-prob -passes="require<branch-prob>,jump-threading" -S %s 2>&1 | FileCheck %s 2; RUN: opt -debug-only=branch-prob -passes=jump-threading -S %s 2>&1 | FileCheck %s --check-prefix=CHECK-NOBPI 3; REQUIRES: asserts 4 5; Make sure that we clear edge probabilities for bb.cond as we fold 6; the conditional branch in it. 7 8; CHECK: eraseBlock bb.cond 9; CHECK-NOBPI-NOT: eraseBlock bb.cond 10 11define i32 @foo(i1 %cond) !prof !0 { 12; CHECK-LABEL: @foo 13; CHECK: bb.entry: 14; CHECK-NEXT: br i1 %cond, label %bb.31, label %bb.12 15; CHECK-NOT: bb.cond: 16bb.entry: 17 br i1 %cond, label %bb.31, label %bb.cond 18 19bb.cond: 20 br i1 %cond, label %bb.31, label %bb.12 21 22bb.31: 23 ret i32 31 24 25bb.12: 26 ret i32 12 27} 28 29!0 = !{!"function_entry_count", i64 0} 30