1*9880d681SAndroid Build Coastguard Worker; RUN: llc --march=x86 --mcpu=x86-64 --mattr=ssse3 < %s 2*9880d681SAndroid Build Coastguard Worker; RUN: llc --march=x86-64 --mcpu=x86-64 --mattr=ssse3 < %s 3*9880d681SAndroid Build Coastguard Worker 4*9880d681SAndroid Build Coastguard Worker;PR18045: 5*9880d681SAndroid Build Coastguard Worker;Issue of selection for 'v4i32 load'. 6*9880d681SAndroid Build Coastguard Worker;This instruction is not legal for X86 CPUs with sse < 'sse4.1'. 7*9880d681SAndroid Build Coastguard Worker;This node was generated by X86ISelLowering.cpp, EltsFromConsecutiveLoads 8*9880d681SAndroid Build Coastguard Worker;static function after legalize stage. 9*9880d681SAndroid Build Coastguard Worker 10*9880d681SAndroid Build Coastguard Worker@e = external global [4 x i32], align 4 11*9880d681SAndroid Build Coastguard Worker@f = external global [4 x i32], align 4 12*9880d681SAndroid Build Coastguard Worker 13*9880d681SAndroid Build Coastguard Worker; Function Attrs: nounwind 14*9880d681SAndroid Build Coastguard Workerdefine void @fn3(i32 %el) { 15*9880d681SAndroid Build Coastguard Workerentry: 16*9880d681SAndroid Build Coastguard Worker %0 = load i32, i32* getelementptr inbounds ([4 x i32], [4 x i32]* @e, i32 0, i32 0) 17*9880d681SAndroid Build Coastguard Worker %1 = load i32, i32* getelementptr inbounds ([4 x i32], [4 x i32]* @e, i32 0, i32 1) 18*9880d681SAndroid Build Coastguard Worker %2 = load i32, i32* getelementptr inbounds ([4 x i32], [4 x i32]* @e, i32 0, i32 2) 19*9880d681SAndroid Build Coastguard Worker %3 = load i32, i32* getelementptr inbounds ([4 x i32], [4 x i32]* @e, i32 0, i32 3) 20*9880d681SAndroid Build Coastguard Worker %4 = insertelement <4 x i32> undef, i32 %0, i32 0 21*9880d681SAndroid Build Coastguard Worker %5 = insertelement <4 x i32> %4, i32 %1, i32 1 22*9880d681SAndroid Build Coastguard Worker %6 = insertelement <4 x i32> %5, i32 %2, i32 2 23*9880d681SAndroid Build Coastguard Worker %7 = insertelement <4 x i32> %6, i32 %3, i32 3 24*9880d681SAndroid Build Coastguard Worker %8 = add <4 x i32> %6, %7 25*9880d681SAndroid Build Coastguard Worker store <4 x i32> %8, <4 x i32>* bitcast ([4 x i32]* @f to <4 x i32>*) 26*9880d681SAndroid Build Coastguard Worker ret void 27*9880d681SAndroid Build Coastguard Worker} 28*9880d681SAndroid Build Coastguard Worker 29