; RUN: opt < %s -loop-vectorize -mtriple=x86_64-apple-macosx10.8.0 -mcpu=corei7 -dce -instcombine -S | FileCheck %s ; RUN: opt < %s -loop-vectorize -mtriple=x86_64-apple-macosx10.8.0 -mcpu=corei7 -force-vector-unroll=0 -dce -instcombine -S | FileCheck %s -check-prefix=UNROLL target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128" target triple = "x86_64-apple-macosx10.8.0" @b = common global [2048 x i32] zeroinitializer, align 16 @c = common global [2048 x i32] zeroinitializer, align 16 @a = common global [2048 x i32] zeroinitializer, align 16 ; Select VF = 8; ;CHECK-LABEL: @example1( ;CHECK: load <4 x i32> ;CHECK: add nsw <4 x i32> ;CHECK: store <4 x i32> ;CHECK: ret void ;UNROLL-LABEL: @example1( ;UNROLL: load <4 x i32> ;UNROLL: load <4 x i32> ;UNROLL: add nsw <4 x i32> ;UNROLL: add nsw <4 x i32> ;UNROLL: store <4 x i32> ;UNROLL: store <4 x i32> ;UNROLL: ret void define void @example1() nounwind uwtable ssp { br label %1 ;