; RUN: opt < %s -loop-reduce -S | FileCheck %s
;
; Test LSR's OptimizeShadowIV. Handle a floating-point IV with a
; nonzero initial value.
; rdar://9786536

; First, make sure LSR doesn't crash on an empty IVUsers list.
; CHECK: @dummyIV
; CHECK-NOT: phi
; CHECK-NOT: sitofp
; CHECK: br
define void @dummyIV() nounwind {
entry:
  br label %loop

loop:
  %i.01 = phi i32 [ -39, %entry ], [ %inc, %loop ]
  %conv = sitofp i32 %i.01 to double
  %inc = add nsw i32 %i.01, 1
  br i1 undef, label %loop, label %for.end

for.end:
  unreachable
}

; Now check that the computed double constant is correct.
; CHECK: @doubleIV
; CHECK: phi double [ -3.900000e+01, %entry ]
; CHECK: br
define void @doubleIV() nounwind {
entry:
  br label %loop

loop:
  %i.01 = phi i32 [ -39, %entry ], [ %inc, %loop ]
  %conv = sitofp i32 %i.01 to double
  %div = fdiv double %conv, 4.000000e+01
  %inc = add nsw i32 %i.01, 1
  br i1 undef, label %loop, label %for.end

for.end:
  unreachable
}
