1*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s -march=x86 -mcpu=corei7 -mattr=+avx 2*9880d681SAndroid Build Coastguard Worker; PR13352 3*9880d681SAndroid Build Coastguard Worker 4*9880d681SAndroid Build Coastguard Workerdeclare <8 x float> @llvm.x86.avx.blendv.ps.256(<8 x float>, <8 x float>, <8 x float>) nounwind readnone 5*9880d681SAndroid Build Coastguard Worker 6*9880d681SAndroid Build Coastguard Workerdefine void @f_f() nounwind { 7*9880d681SAndroid Build Coastguard Workerallocas: 8*9880d681SAndroid Build Coastguard Worker br label %for_loop29 9*9880d681SAndroid Build Coastguard Worker 10*9880d681SAndroid Build Coastguard Workerfor_loop29: ; preds = %safe_if_after_true, %allocas 11*9880d681SAndroid Build Coastguard Worker %indvars.iv596 = phi i64 [ %indvars.iv.next597, %safe_if_after_true ], [ 0, %allocas ] 12*9880d681SAndroid Build Coastguard Worker %0 = trunc i64 %indvars.iv596 to i32 13*9880d681SAndroid Build Coastguard Worker %smear.15 = insertelement <16 x i32> undef, i32 %0, i32 15 14*9880d681SAndroid Build Coastguard Worker %bitop = lshr <16 x i32> zeroinitializer, %smear.15 15*9880d681SAndroid Build Coastguard Worker %bitop35 = and <16 x i32> %bitop, <i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1> 16*9880d681SAndroid Build Coastguard Worker %bitop35_to_bool = icmp ne <16 x i32> %bitop35, zeroinitializer 17*9880d681SAndroid Build Coastguard Worker %val_to_boolvec32 = sext <16 x i1> %bitop35_to_bool to <16 x i32> 18*9880d681SAndroid Build Coastguard Worker %floatmask.i526 = bitcast <16 x i32> %val_to_boolvec32 to <16 x float> 19*9880d681SAndroid Build Coastguard Worker %mask1.i529 = shufflevector <16 x float> %floatmask.i526, <16 x float> undef, <8 x i32> <i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15> 20*9880d681SAndroid Build Coastguard Worker %"internal_mask&function_mask41_any" = icmp eq i32 undef, 0 21*9880d681SAndroid Build Coastguard Worker br i1 %"internal_mask&function_mask41_any", label %safe_if_after_true, label %safe_if_run_true 22*9880d681SAndroid Build Coastguard Worker 23*9880d681SAndroid Build Coastguard Workersafe_if_after_true: ; preds = %for_loop29 24*9880d681SAndroid Build Coastguard Worker %indvars.iv.next597 = add i64 %indvars.iv596, 1 25*9880d681SAndroid Build Coastguard Worker br label %for_loop29 26*9880d681SAndroid Build Coastguard Worker 27*9880d681SAndroid Build Coastguard Workersafe_if_run_true: ; preds = %for_loop29 28*9880d681SAndroid Build Coastguard Worker %blend1.i583 = call <8 x float> @llvm.x86.avx.blendv.ps.256(<8 x float> undef, <8 x float> undef, <8 x float> %mask1.i529) nounwind 29*9880d681SAndroid Build Coastguard Worker unreachable 30*9880d681SAndroid Build Coastguard Worker} 31*9880d681SAndroid Build Coastguard Worker 32