[llvm] [GlobalIsel] Visit ICmp (PR #105991)

Thorsten Schütt via llvm-commits llvm-commits at lists.llvm.org
Mon Aug 26 00:42:10 PDT 2024


================
@@ -2655,13 +2655,15 @@ define i8 @atomicrmw_max_i8(ptr %ptr, i8 %rhs) {
 define i8 @atomicrmw_umin_i8(ptr %ptr, i8 %rhs) {
 ; CHECK-NOLSE-O1-LABEL: atomicrmw_umin_i8:
 ; CHECK-NOLSE-O1:       ; %bb.0:
-; CHECK-NOLSE-O1-NEXT:    and w9, w1, #0xff
+; CHECK-NOLSE-O1-NEXT:    ; kill: def $w1 killed $w1 def $x1
+; CHECK-NOLSE-O1-NEXT:    and x9, x1, #0xff
 ; CHECK-NOLSE-O1-NEXT:  LBB35_1: ; %atomicrmw.start
 ; CHECK-NOLSE-O1-NEXT:    ; =>This Inner Loop Header: Depth=1
-; CHECK-NOLSE-O1-NEXT:    ldaxrb w8, [x0]
-; CHECK-NOLSE-O1-NEXT:    and w8, w8, #0xff
-; CHECK-NOLSE-O1-NEXT:    cmp w8, w9
-; CHECK-NOLSE-O1-NEXT:    csel w10, w8, w9, lo
+; CHECK-NOLSE-O1-NEXT:    ldaxrb w10, [x0]
----------------
tschuett wrote:

The `csel` changed from w to x registers. It was mostly the zext-of-icmp because it changes the width of the underlying G_ICMP.

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


More information about the llvm-commits mailing list