@@ -414,36 +414,6 @@ define i1 @constant_multiplied_non_power_of_2_i1(i1 %0) {
414414 ret i1 %4
415415}
416416
417- define i1 @constant_multiplied_non_power_of_2_i1x4 (i1 %0 ) {
418- ; CHECK-LABEL: @constant_multiplied_non_power_of_2_i1x4(
419- ; CHECK-NEXT: [[TMP2:%.*]] = insertelement <4 x i1> poison, i1 [[TMP0:%.*]], i64 0
420- ; CHECK-NEXT: [[TMP3:%.*]] = shufflevector <4 x i1> [[TMP2]], <4 x i1> poison, <4 x i32> zeroinitializer
421- ; CHECK-NEXT: [[TMP4:%.*]] = bitcast <4 x i1> [[TMP3]] to i4
422- ; CHECK-NEXT: [[TMP5:%.*]] = call range(i4 0, 5) i4 @llvm.ctpop.i4(i4 [[TMP4]])
423- ; CHECK-NEXT: [[TMP6:%.*]] = trunc i4 [[TMP5]] to i1
424- ; CHECK-NEXT: ret i1 [[TMP6]]
425- ;
426- %2 = insertelement <4 x i1 > poison, i1 %0 , i32 0
427- %3 = shufflevector <4 x i1 > %2 , <4 x i1 > poison, <4 x i32 > zeroinitializer
428- %4 = tail call i1 @llvm.vector.reduce.add.v4i1 (<4 x i1 > %3 )
429- ret i1 %4
430- }
431-
432- define i1 @constant_multiplied_non_power_of_2_i1x2 (i1 %0 ) {
433- ; CHECK-LABEL: @constant_multiplied_non_power_of_2_i1x2(
434- ; CHECK-NEXT: [[TMP2:%.*]] = insertelement <2 x i1> poison, i1 [[TMP0:%.*]], i64 0
435- ; CHECK-NEXT: [[TMP3:%.*]] = shufflevector <2 x i1> [[TMP2]], <2 x i1> poison, <2 x i32> zeroinitializer
436- ; CHECK-NEXT: [[TMP4:%.*]] = bitcast <2 x i1> [[TMP3]] to i2
437- ; CHECK-NEXT: [[TMP5:%.*]] = call range(i2 0, -1) i2 @llvm.ctpop.i2(i2 [[TMP4]])
438- ; CHECK-NEXT: [[TMP6:%.*]] = trunc i2 [[TMP5]] to i1
439- ; CHECK-NEXT: ret i1 [[TMP6]]
440- ;
441- %2 = insertelement <2 x i1 > poison, i1 %0 , i32 0
442- %3 = shufflevector <2 x i1 > %2 , <2 x i1 > poison, <2 x i32 > zeroinitializer
443- %4 = tail call i1 @llvm.vector.reduce.add.v2i1 (<2 x i1 > %3 )
444- ret i1 %4
445- }
446-
447417define i2 @constant_multiplied_non_power_of_2_i2x4 (i2 %0 ) {
448418; CHECK-LABEL: @constant_multiplied_non_power_of_2_i2x4(
449419; CHECK-NEXT: ret i2 0
0 commit comments