@@ -301,14 +301,13 @@ define i16 @scalar_i16_unsigned_reg_reg(i16 %a1, i16 %a2) nounwind {
301301define i16 @scalar_i16_signed_mem_reg (ptr %a1_addr , i16 %a2 ) nounwind {
302302; CHECK-LABEL: scalar_i16_signed_mem_reg:
303303; CHECK: // %bb.0:
304- ; CHECK-NEXT: sxth w9, w1
305- ; CHECK-NEXT: ldrsh w10, [x0]
304+ ; CHECK-NEXT: ldrsh w9, [x0]
306305; CHECK-NEXT: mov w8, #-1 // =0xffffffff
307- ; CHECK-NEXT: subs w9, w10, w9
308- ; CHECK-NEXT: cneg w9, w9, mi
306+ ; CHECK-NEXT: subs w10, w9, w1, sxth
309307; CHECK-NEXT: cneg w8, w8, le
310- ; CHECK-NEXT: lsr w9, w9, #1
311- ; CHECK-NEXT: madd w0, w9, w8, w10
308+ ; CHECK-NEXT: cneg w10, w10, mi
309+ ; CHECK-NEXT: lsr w10, w10, #1
310+ ; CHECK-NEXT: madd w0, w10, w8, w9
312311; CHECK-NEXT: ret
313312 %a1 = load i16 , ptr %a1_addr
314313 %t3 = icmp sgt i16 %a1 , %a2 ; signed
@@ -426,14 +425,13 @@ define i8 @scalar_i8_unsigned_reg_reg(i8 %a1, i8 %a2) nounwind {
426425define i8 @scalar_i8_signed_mem_reg (ptr %a1_addr , i8 %a2 ) nounwind {
427426; CHECK-LABEL: scalar_i8_signed_mem_reg:
428427; CHECK: // %bb.0:
429- ; CHECK-NEXT: sxtb w9, w1
430- ; CHECK-NEXT: ldrsb w10, [x0]
428+ ; CHECK-NEXT: ldrsb w9, [x0]
431429; CHECK-NEXT: mov w8, #-1 // =0xffffffff
432- ; CHECK-NEXT: subs w9, w10, w9
433- ; CHECK-NEXT: cneg w9, w9, mi
430+ ; CHECK-NEXT: subs w10, w9, w1, sxtb
434431; CHECK-NEXT: cneg w8, w8, le
435- ; CHECK-NEXT: lsr w9, w9, #1
436- ; CHECK-NEXT: madd w0, w9, w8, w10
432+ ; CHECK-NEXT: cneg w10, w10, mi
433+ ; CHECK-NEXT: lsr w10, w10, #1
434+ ; CHECK-NEXT: madd w0, w10, w8, w9
437435; CHECK-NEXT: ret
438436 %a1 = load i8 , ptr %a1_addr
439437 %t3 = icmp sgt i8 %a1 , %a2 ; signed
0 commit comments