@@ -1246,10 +1246,7 @@ define i1 @extract_value_smul_fail(i8 %xx, i8 %yy) {
12461246
12471247define i8 @known_self_mul_bit_0_set (i8 noundef %x ) {
12481248; CHECK-LABEL: @known_self_mul_bit_0_set(
1249- ; CHECK-NEXT: [[BIT_0_SET:%.*]] = or i8 [[X:%.*]], 1
1250- ; CHECK-NEXT: [[SELF_MUL:%.*]] = mul i8 [[BIT_0_SET]], [[BIT_0_SET]]
1251- ; CHECK-NEXT: [[R:%.*]] = and i8 [[SELF_MUL]], 4
1252- ; CHECK-NEXT: ret i8 [[R]]
1249+ ; CHECK-NEXT: ret i8 0
12531250;
12541251 %bit_0_set = or i8 %x , 1
12551252 %self_mul = mul i8 %bit_0_set , %bit_0_set
@@ -1259,10 +1256,7 @@ define i8 @known_self_mul_bit_0_set(i8 noundef %x) {
12591256
12601257define i8 @known_self_mul_bit_0_unset (i8 noundef %x ) {
12611258; CHECK-LABEL: @known_self_mul_bit_0_unset(
1262- ; CHECK-NEXT: [[BIT_0_UNSET:%.*]] = and i8 [[X:%.*]], -2
1263- ; CHECK-NEXT: [[SELF_MUL:%.*]] = mul i8 [[BIT_0_UNSET]], [[BIT_0_UNSET]]
1264- ; CHECK-NEXT: [[R:%.*]] = and i8 [[SELF_MUL]], 8
1265- ; CHECK-NEXT: ret i8 [[R]]
1259+ ; CHECK-NEXT: ret i8 0
12661260;
12671261 %bit_0_unset = and i8 %x , -2
12681262 %self_mul = mul i8 %bit_0_unset , %bit_0_unset
@@ -1272,11 +1266,7 @@ define i8 @known_self_mul_bit_0_unset(i8 noundef %x) {
12721266
12731267define i8 @known_self_mul_bit_1_set_bit_0_unset (i8 noundef %x ) {
12741268; CHECK-LABEL: @known_self_mul_bit_1_set_bit_0_unset(
1275- ; CHECK-NEXT: [[LOWER_2_UNSET:%.*]] = and i8 [[X:%.*]], -4
1276- ; CHECK-NEXT: [[BIT_1_SET_BIT_0_UNSET:%.*]] = or disjoint i8 [[LOWER_2_UNSET]], 2
1277- ; CHECK-NEXT: [[SELF_MUL:%.*]] = mul i8 [[BIT_1_SET_BIT_0_UNSET]], [[BIT_1_SET_BIT_0_UNSET]]
1278- ; CHECK-NEXT: [[R:%.*]] = and i8 [[SELF_MUL]], 24
1279- ; CHECK-NEXT: ret i8 [[R]]
1269+ ; CHECK-NEXT: ret i8 0
12801270;
12811271 %lower_2_unset = and i8 %x , -4
12821272 %bit_1_set_bit_0_unset = or disjoint i8 %lower_2_unset , 2
@@ -1287,11 +1277,7 @@ define i8 @known_self_mul_bit_1_set_bit_0_unset(i8 noundef %x) {
12871277
12881278define i4 @known_self_mul_bit_1_set_bit_0_unset_i4 (i4 noundef %x ) {
12891279; CHECK-LABEL: @known_self_mul_bit_1_set_bit_0_unset_i4(
1290- ; CHECK-NEXT: [[LOWER_2_UNSET:%.*]] = and i4 [[X:%.*]], -4
1291- ; CHECK-NEXT: [[BIT_1_SET_BIT_0_UNSET:%.*]] = or disjoint i4 [[LOWER_2_UNSET]], 2
1292- ; CHECK-NEXT: [[SELF_MUL:%.*]] = mul i4 [[BIT_1_SET_BIT_0_UNSET]], [[BIT_1_SET_BIT_0_UNSET]]
1293- ; CHECK-NEXT: [[R:%.*]] = and i4 [[SELF_MUL]], -8
1294- ; CHECK-NEXT: ret i4 [[R]]
1280+ ; CHECK-NEXT: ret i4 0
12951281;
12961282 %lower_2_unset = and i4 %x , -4
12971283 %bit_1_set_bit_0_unset = or disjoint i4 %lower_2_unset , 2
0 commit comments