@@ -1145,8 +1145,7 @@ define arm_aapcs_vfpcc void @ssatmul_4_q15(i16* nocapture readonly %pSrcA, i16*
11451145; CHECK-NEXT: ldrsh r0, [r12], #2
11461146; CHECK-NEXT: ldrsh r1, [r6], #2
11471147; CHECK-NEXT: muls r0, r1, r0
1148- ; CHECK-NEXT: asrs r0, r0, #15
1149- ; CHECK-NEXT: ssat r0, #16, r0
1148+ ; CHECK-NEXT: ssat r0, #16, r0, asr #15
11501149; CHECK-NEXT: strh r0, [r4], #2
11511150; CHECK-NEXT: le lr, .LBB5_7
11521151; CHECK-NEXT: .LBB5_8: @ %for.cond.cleanup
@@ -1279,8 +1278,7 @@ define arm_aapcs_vfpcc void @ssatmul_8_q15(i16* nocapture readonly %pSrcA, i16*
12791278; CHECK-NEXT: ldrsh r0, [r12], #2
12801279; CHECK-NEXT: ldrsh r1, [r6], #2
12811280; CHECK-NEXT: muls r0, r1, r0
1282- ; CHECK-NEXT: asrs r0, r0, #15
1283- ; CHECK-NEXT: ssat r0, #16, r0
1281+ ; CHECK-NEXT: ssat r0, #16, r0, asr #15
12841282; CHECK-NEXT: strh r0, [r4], #2
12851283; CHECK-NEXT: le lr, .LBB6_7
12861284; CHECK-NEXT: .LBB6_8: @ %for.cond.cleanup
@@ -1410,8 +1408,7 @@ define arm_aapcs_vfpcc void @ssatmul_8i_q15(i16* nocapture readonly %pSrcA, i16*
14101408; CHECK-NEXT: ldrsh r0, [r12], #2
14111409; CHECK-NEXT: ldrsh r1, [r6], #2
14121410; CHECK-NEXT: muls r0, r1, r0
1413- ; CHECK-NEXT: asrs r0, r0, #15
1414- ; CHECK-NEXT: ssat r0, #16, r0
1411+ ; CHECK-NEXT: ssat r0, #16, r0, asr #15
14151412; CHECK-NEXT: strh r0, [r4], #2
14161413; CHECK-NEXT: le lr, .LBB7_7
14171414; CHECK-NEXT: .LBB7_8: @ %for.cond.cleanup
@@ -2218,8 +2215,7 @@ define arm_aapcs_vfpcc void @ssatmul_4_q7(i8* nocapture readonly %pSrcA, i8* noc
22182215; CHECK-NEXT: ldrsb r0, [r12], #1
22192216; CHECK-NEXT: ldrsb r1, [r6], #1
22202217; CHECK-NEXT: muls r0, r1, r0
2221- ; CHECK-NEXT: asrs r0, r0, #7
2222- ; CHECK-NEXT: ssat r0, #8, r0
2218+ ; CHECK-NEXT: ssat r0, #8, r0, asr #7
22232219; CHECK-NEXT: strb r0, [r4], #1
22242220; CHECK-NEXT: le lr, .LBB13_7
22252221; CHECK-NEXT: .LBB13_8: @ %for.cond.cleanup
@@ -2346,8 +2342,7 @@ define arm_aapcs_vfpcc void @ssatmul_8_q7(i8* nocapture readonly %pSrcA, i8* noc
23462342; CHECK-NEXT: ldrsb r0, [r12], #1
23472343; CHECK-NEXT: ldrsb r1, [r6], #1
23482344; CHECK-NEXT: muls r0, r1, r0
2349- ; CHECK-NEXT: asrs r0, r0, #7
2350- ; CHECK-NEXT: ssat r0, #8, r0
2345+ ; CHECK-NEXT: ssat r0, #8, r0, asr #7
23512346; CHECK-NEXT: strb r0, [r4], #1
23522347; CHECK-NEXT: le lr, .LBB14_7
23532348; CHECK-NEXT: .LBB14_8: @ %for.cond.cleanup
@@ -2480,8 +2475,7 @@ define arm_aapcs_vfpcc void @ssatmul_16_q7(i8* nocapture readonly %pSrcA, i8* no
24802475; CHECK-NEXT: ldrsb r0, [r12], #1
24812476; CHECK-NEXT: ldrsb r1, [r6], #1
24822477; CHECK-NEXT: muls r0, r1, r0
2483- ; CHECK-NEXT: asrs r0, r0, #7
2484- ; CHECK-NEXT: ssat r0, #8, r0
2478+ ; CHECK-NEXT: ssat r0, #8, r0, asr #7
24852479; CHECK-NEXT: strb r0, [r4], #1
24862480; CHECK-NEXT: le lr, .LBB15_7
24872481; CHECK-NEXT: .LBB15_8: @ %for.cond.cleanup
@@ -2611,8 +2605,7 @@ define arm_aapcs_vfpcc void @ssatmul_16i_q7(i8* nocapture readonly %pSrcA, i8* n
26112605; CHECK-NEXT: ldrsb r0, [r12], #1
26122606; CHECK-NEXT: ldrsb r1, [r6], #1
26132607; CHECK-NEXT: muls r0, r1, r0
2614- ; CHECK-NEXT: asrs r0, r0, #7
2615- ; CHECK-NEXT: ssat r0, #8, r0
2608+ ; CHECK-NEXT: ssat r0, #8, r0, asr #7
26162609; CHECK-NEXT: strb r0, [r4], #1
26172610; CHECK-NEXT: le lr, .LBB16_7
26182611; CHECK-NEXT: .LBB16_8: @ %for.cond.cleanup
0 commit comments