[llvm] [GlobalISel] Implement G_UADDO/G_UADDE/G_SADDO/G_SADDE for computeKnownBits (PR #165497)

Yatao Wang via llvm-commits llvm-commits at lists.llvm.org
Tue Oct 28 19:10:25 PDT 2025


================
@@ -0,0 +1,63 @@
+# NOTE: Assertions have been autogenerated by utils/update_givaluetracking_test_checks.py UTC_ARGS: --version 5
+# RUN: llc -mtriple=aarch64 -passes="print<gisel-value-tracking>" -filetype=null %s 2>&1 | FileCheck %s
+
+---
+name:            CstCarryInZeroOutZero
+body:             |
+  bb.1:
+  ; CHECK-LABEL: name: @CstCarryInZeroOutZero
+  ; CHECK-NEXT: %0:_ KnownBits:00000010 SignBits:6
+  ; CHECK-NEXT: %1:_ KnownBits:00011000 SignBits:3
+  ; CHECK-NEXT: %2:_ KnownBits:0 SignBits:1
+  ; CHECK-NEXT: %3:_ KnownBits:0001101? SignBits:3
+  ; CHECK-NEXT: %4:_ KnownBits:? SignBits:1
+    %0:_(s8) = G_CONSTANT i8 2
+    %1:_(s8) = G_CONSTANT i8 24
+    %2:_(s1) = G_CONSTANT i1 0
+    %3:_(s8), %4:_(s1) = G_SADDE %0, %1, %2
+...
+---
+name:            CstCarryInOneOutZero
+body:             |
+  bb.1:
+  ; CHECK-LABEL: name: @CstCarryInOneOutZero
+  ; CHECK-NEXT: %0:_ KnownBits:00000010 SignBits:6
+  ; CHECK-NEXT: %1:_ KnownBits:00011000 SignBits:3
+  ; CHECK-NEXT: %2:_ KnownBits:1 SignBits:1
+  ; CHECK-NEXT: %3:_ KnownBits:0001101? SignBits:3
+  ; CHECK-NEXT: %4:_ KnownBits:? SignBits:1
----------------
ningxinr wrote:

ditto

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


More information about the llvm-commits mailing list