[llvm] [ARM] Custom lower UMIN and UMAX for Thumb1 (PR #187881)

Eli Friedman via llvm-commits llvm-commits at lists.llvm.org
Sun Apr 5 14:49:51 PDT 2026


================
@@ -191,11 +190,10 @@ define zeroext i4 @func4(i4 zeroext %x, i4 zeroext %y, i4 zeroext %z) nounwind {
 ; CHECK-T1-NEXT:    movs r2, #15
 ; CHECK-T1-NEXT:    ands r1, r2
 ; CHECK-T1-NEXT:    adds r0, r0, r1
-; CHECK-T1-NEXT:    cmp r0, #15
-; CHECK-T1-NEXT:    blo .LBB4_2
-; CHECK-T1-NEXT:  @ %bb.1:
-; CHECK-T1-NEXT:    mov r0, r2
-; CHECK-T1-NEXT:  .LBB4_2:
+; CHECK-T1-NEXT:    subs r1, r2, r0
+; CHECK-T1-NEXT:    sbcs r2, r2
+; CHECK-T1-NEXT:    ands r2, r1
+; CHECK-T1-NEXT:    adds r0, r0, r2
----------------
efriedma-quic wrote:

This is replacing three instructions with four, which is not an improvement.

https://github.com/llvm/llvm-project/pull/187881


More information about the llvm-commits mailing list