; RUN: opt -basicaa -loop-vectorize -mcpu=corei7-avx -debug -S < %s 2>&1 | FileCheck %s ; REQUIRES: asserts 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" %0 = type { %0*, %1 } %1 = type { i8*, i32 } @p = global [2048 x [8 x i32*]] zeroinitializer, align 16 @q = global [2048 x i16] zeroinitializer, align 16 @r = global [2048 x i16] zeroinitializer, align 16 ; Tests for widest type ; Ensure that we count the pointer store in the first test case. We have a ; consecutive vector of pointers store, therefore we should count it towards the ; widest vector count. ; ; CHECK: test_consecutive_store ; CHECK: The Smallest and Widest types: 64 / 64 bits. define void @test_consecutive_store(%0**, %0**, %0** nocapture) nounwind ssp uwtable align 2 { %4 = load %0*, %0** %2, align 8 %5 = icmp eq %0** %0, %1 br i1 %5, label %12, label %6 ;