; RUN: opt -S -passes=partial-inliner -min-block-execution=1 -skip-partial-inlining-cost-analysis < %s | FileCheck %s
; Require a dummy block (if.then.b) as successor to if.then due to PI requirement
; of region containing more than one BB.
define signext i32 @bar(i32 signext %value, i32 signext %ub) #0 !prof !30 {
entry:
  %value.addr = alloca i32, align 4
  %ub.addr = alloca i32, align 4
  %sum = alloca i32, align 4
  %i = alloca i32, align 4
  store i32 %value, ptr %value.addr, align 4
  store i32 %ub, ptr %ub.addr, align 4
  store i32 0, ptr %sum, align 4
  store i32 0, ptr %i, align 4
  br label %for.cond

for.cond:                                         ; preds = %for.inc, %entry
  %0 = load i32, ptr %i, align 4
  %1 = load i32, ptr %ub.addr, align 4
  %cmp = icmp slt i32 %0, %1
  br i1 %cmp, label %for.body, label %for.cond2, !prof !31

for.body:                                         ; preds = %for.cond
  %2 = load i32, ptr %value.addr, align 4
  %rem = srem i32 %2, 20
  %cmp1 = icmp eq i32 %rem, 0
  br i1 %cmp1, label %if.then, label %if.else, !prof !32

if.then:                                          ; preds = %for.body
  %3 = load i32, ptr %value.addr, align 4
  %4 = load i32, ptr %i, align 4
  %mul = mul nsw i32 %4, 5
  %add = add nsw i32 %3, %mul
  %5 = load i32, ptr %sum, align 4
  %add2 = add nsw i32 %5, %add
  store i32 %add2, ptr %sum, align 4
  br label %if.then.b

if.then.b:                                        ; preds = %if.then
  br label %if.end

if.else:                                          ; preds = %for.body
  %6 = load i32, ptr %value.addr, align 4
  %7 = load i32, ptr %i, align 4
  %sub = sub nsw i32 %6, %7
  %8 = load i32, ptr %sum, align 4
  %add3 = add nsw i32 %8, %sub
  store i32 %add3, ptr %sum, align 4
  br label %if.end

if.end:                                           ; preds = %if.else, %if.then
  br label %for.inc

for.inc:                                          ; preds = %if.end
  %9 = load i32, ptr %i, align 4
  %inc = add nsw i32 %9, 1
  store i32 %inc, ptr %i, align 4
  br label %for.cond

for.cond2:                                         ; preds = %for.cond
  %10 = load i32, ptr %i, align 4
  %11 = load i32, ptr %ub.addr, align 4
  %cmp2 = icmp slt i32 %10, %11
  br i1 %cmp2, label %for.body2, label %for.end, !prof !31

for.body2:                                         ; preds = %for.cond2
  %12 = load i32, ptr %value.addr, align 4
  %rem2 = srem i32 %12, 20
  %cmp3 = icmp eq i32 %rem2, 0
  br i1 %cmp3, label %if.then2, label %if.else2, !prof !32

if.then2:                                          ; preds = %for.body2
  %13 = load i32, ptr %value.addr, align 4
  %14 = load i32, ptr %i, align 4
  %mul2 = mul nsw i32 %14, 5
  %add4 = add nsw i32 %13, %mul2
  %15 = load i32, ptr %sum, align 4
  %add5 = add nsw i32 %15, %add4
  store i32 %add5, ptr %sum, align 4
  br label %if.then2.b

if.then2.b:                                        ; preds = %if.then2
  br label %if.end2

if.else2:                                          ; preds = %for.body2
  %16 = load i32, ptr %value.addr, align 4
  %17 = load i32, ptr %i, align 4
  %sub2 = sub nsw i32 %16, %17
  %18 = load i32, ptr %sum, align 4
  %add6 = add nsw i32 %18, %sub2
  store i32 %add6, ptr %sum, align 4
  br label %if.end2

if.end2:                                           ; preds = %if.else2, %if.then2
  br label %for.inc2

for.inc2:                                          ; preds = %if.end2
  %19 = load i32, ptr %i, align 4
  %inc2 = add nsw i32 %19, 1
  store i32 %inc2, ptr %i, align 4
  br label %for.cond2

for.end:                                          ; preds = %for.cond2
  callbr void asm sideeffect "1: nop\0A\09.quad b, ${0:l}, $$5\0A\09", "!i,~{dirflag},~{fpsr},~{flags}"()
          to label %asm.fallthrough [label %l_yes]
asm.fallthrough:                                  ; preds = %for.end
  br label %l_yes

l_yes:
  %20 = load i32, ptr %sum, align 4
  ret i32 %20
}

define signext i32 @foo(i32 signext %value, i32 signext %ub) #0 !prof !30 {
; CHECK-LABEL: @foo
; CHECK-NOT: call signext i32 @bar
; CHECK: codeRepl1.i:
; CHECK: call void @bar.1.if.then
; CHECK: codeRepl.i:
; CHECK: call void @bar.1.if.then2
entry:
  %value.addr = alloca i32, align 4
  %ub.addr = alloca i32, align 4
  store i32 %value, ptr %value.addr, align 4
  store i32 %ub, ptr %ub.addr, align 4
  %0 = load i32, ptr %value.addr, align 4
  %1 = load i32, ptr %ub.addr, align 4
  %call = call signext i32 @bar(i32 signext %0, i32 signext %1)
  ret i32 %call
}

; CHECK-LABEL: define internal void @bar.1.if.then2
; CHECK: .exitStub:
; CHECK: ret void

; CHECK-LABEL: define internal void @bar.1.if.then
; CHECK: .exitStub:
; CHECK: ret void

!llvm.module.flags = !{!0, !1, !2}
!llvm.ident = !{!29}

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 7, !"PIC Level", i32 2}
!2 = !{i32 1, !"ProfileSummary", !3}
!3 = !{!4, !5, !6, !7, !8, !9, !10, !11}
!4 = !{!"ProfileFormat", !"InstrProf"}
!5 = !{!"TotalCount", i64 103}
!6 = !{!"MaxCount", i64 100}
!7 = !{!"MaxInternalCount", i64 1}
!8 = !{!"MaxFunctionCount", i64 100}
!9 = !{!"NumCounts", i64 5}
!10 = !{!"NumFunctions", i64 3}
!11 = !{!"DetailedSummary", !12}
!12 = !{!13, !14, !15, !16, !17, !18, !18, !19, !19, !20, !21, !22, !23, !24, !25, !26, !27, !28}
!13 = !{i32 10000, i64 100, i32 1}
!14 = !{i32 100000, i64 100, i32 1}
!15 = !{i32 200000, i64 100, i32 1}
!16 = !{i32 300000, i64 100, i32 1}
!17 = !{i32 400000, i64 100, i32 1}
!18 = !{i32 500000, i64 100, i32 1}
!19 = !{i32 600000, i64 100, i32 1}
!20 = !{i32 700000, i64 100, i32 1}
!21 = !{i32 800000, i64 100, i32 1}
!22 = !{i32 900000, i64 100, i32 1}
!23 = !{i32 950000, i64 100, i32 1}
!24 = !{i32 990000, i64 1, i32 4}
!25 = !{i32 999000, i64 1, i32 4}
!26 = !{i32 999900, i64 1, i32 4}
!27 = !{i32 999990, i64 1, i32 4}
!28 = !{i32 999999, i64 1, i32 4}
!29 = !{!"clang version 6.0.0 (123456)"}
!30 = !{!"function_entry_count", i64 2}
!31 = !{!"branch_weights", i32 100, i32 1}
!32 = !{!"branch_weights", i32 0, i32 100}
