; RUN: llc -O3 -march=hexagon -mcpu=hexagonv5 < %s | FileCheck %s
;
; Generate hardware loop when unknown trip count loop is vectorized.

; CHECK: loop0(.LBB{{[0-9]*}}_{{[0-9]*}}, r{{[0-9]+}})
; CHECK: endloop0
; CHECK: loop0(.LBB{{[0-9]*}}_{{[0-9]*}}, r{{[0-9]+}})
; CHECK: endloop0

@A = common global [1000 x i32] zeroinitializer, align 8
@B = common global [1000 x i32] zeroinitializer, align 8

define i32 @dotprod2(i32 %count) #0 {
entry.split:
  %cmp6 = icmp sgt i32 %count, 0
  br i1 %cmp6, label %polly.cond, label %for.end

for.end.loopexit:
  br label %for.end

for.end:
  %sum.0.lcssa.reg2mem.0.load37 = phi i32 [ 0, %entry.split ], [ %p_add34, %polly.loop_if13 ], [ %p_add, %for.end.loopexit ]
  ret i32 %sum.0.lcssa.reg2mem.0.load37

polly.cond:
  %0 = icmp sgt i32 %count, 1
  br i1 %0, label %polly.loop_if, label %polly.loop_if13

polly.loop_exit.loopexit:
  br label %polly.loop_exit

polly.loop_exit:
  %1 = phi <2 x i32> [ zeroinitializer, %polly.loop_if ], [ %addp_vec, %polly.loop_exit.loopexit ]
  %2 = extractelement <2 x i32> %1, i32 0
  %3 = extractelement <2 x i32> %1, i32 1
  %add_sum = add i32 %2, %3
  br label %polly.loop_if13

polly.loop_if:
  %4 = add i32 %count, -1
  %leftover_lb = and i32 %4, -2
  %polly.loop_guard = icmp eq i32 %leftover_lb, 0
  br i1 %polly.loop_guard, label %polly.loop_exit, label %polly.loop_preheader

polly.stmt.for.body:
  %addp_vec28 = phi <2 x i32> [ zeroinitializer, %polly.loop_preheader ], [ %addp_vec, %polly.stmt.for.body ]
  %scevgep.phi = phi i32* [ getelementptr inbounds ([1000 x i32], [1000 x i32]* @A, i32 0, i32 0), %polly.loop_preheader ], [ %scevgep.inc, %polly.stmt.for.body ]
  %scevgep9.phi = phi i32* [ getelementptr inbounds ([1000 x i32], [1000 x i32]* @B, i32 0, i32 0), %polly.loop_preheader ], [ %scevgep9.inc, %polly.stmt.for.body ]
  %polly.indvar = phi i32 [ 0, %polly.loop_preheader ], [ %polly.indvar_next, %polly.stmt.for.body ]
  %vector_ptr = bitcast i32* %scevgep.phi to <2 x i32>*
  %_p_vec_full = load <2 x i32>, <2 x i32>* %vector_ptr, align 8
  %vector_ptr10 = bitcast i32* %scevgep9.phi to <2 x i32>*
  %_p_vec_full11 = load <2 x i32>, <2 x i32>* %vector_ptr10, align 8
  %mulp_vec = mul <2 x i32> %_p_vec_full11, %_p_vec_full
  %addp_vec = add <2 x i32> %mulp_vec, %addp_vec28
  %polly.indvar_next = add nsw i32 %polly.indvar, 2
  %polly.loop_cond = icmp eq i32 %polly.indvar, %polly.adjust_ub
  %scevgep.inc = getelementptr i32, i32* %scevgep.phi, i32 2
  %scevgep9.inc = getelementptr i32, i32* %scevgep9.phi, i32 2
  br i1 %polly.loop_cond, label %polly.loop_exit.loopexit, label %polly.stmt.for.body

polly.loop_preheader:
  %polly.adjust_ub = add i32 %leftover_lb, -2
  br label %polly.stmt.for.body

polly.loop_if13:
  %p_add34 = phi i32 [ 0, %polly.cond ], [ %add_sum, %polly.loop_exit ]
  %merge.lb = phi i32 [ 0, %polly.cond ], [ %leftover_lb, %polly.loop_exit ]
  %polly.loop_guard17 = icmp slt i32 %merge.lb, %count
  br i1 %polly.loop_guard17, label %polly.loop_preheader15, label %for.end

polly.stmt.for.body22:
  %p_add30 = phi i32 [ %p_add34, %polly.loop_preheader15 ], [ %p_add, %polly.stmt.for.body22 ]
  %polly.indvar18 = phi i32 [ %merge.lb, %polly.loop_preheader15 ], [ %polly.indvar_next19, %polly.stmt.for.body22 ]
  %5 = tail call i32 @llvm.annotation.i32(i32 %polly.indvar18, i8* null, i8* null, i32 0), !polly.loop.smallTripCount !0
  %scevgep23 = getelementptr [1000 x i32], [1000 x i32]* @A, i32 0, i32 %polly.indvar18
  %_p_scalar_ = load i32, i32* %scevgep23, align 4
  %scevgep24 = getelementptr [1000 x i32], [1000 x i32]* @B, i32 0, i32 %polly.indvar18
  %_p_scalar_25 = load i32, i32* %scevgep24, align 4
  %p_mul = mul nsw i32 %_p_scalar_25, %_p_scalar_
  %p_add = add nsw i32 %p_mul, %p_add30
  %polly.indvar_next19 = add nsw i32 %polly.indvar18, 1
  %polly.loop_cond21 = icmp slt i32 %polly.indvar18, %polly.adjust_ub20
  br i1 %polly.loop_cond21, label %polly.stmt.for.body22, label %for.end.loopexit

polly.loop_preheader15:
  %polly.adjust_ub20 = add i32 %count, -1
  br label %polly.stmt.for.body22
}

declare i32 @llvm.annotation.i32(i32, i8*, i8*, i32) #1

!0 = !{}
