; RUN: opt < %s -passes=loop-vectorize,dce,instcombine -force-vector-interleave=1 -force-vector-width=4 -S -enable-if-conversion | FileCheck %s 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" ; This is kernel11 from "LivermoreLoops". We can't vectorize it because we ; access both x[k] and x[k-1]. ; ; void kernel11(ptr x, ptr y, int n) { ; for ( int k=1 ; k ; CHECK: ret define i32 @kernel11(ptr %x, ptr %y, i32 %n) nounwind uwtable ssp { %1 = alloca ptr, align 8 %2 = alloca ptr, align 8 %3 = alloca i32, align 4 %k = alloca i32, align 4 store ptr %x, ptr %1, align 8 store ptr %y, ptr %2, align 8 store i32 %n, ptr %3, align 4 store i32 1, ptr %k, align 4 br label %4 ;