[llvm] [GlobalISel] Add G_ABS computeKnownBits (PR #154413)

Matt Arsenault via llvm-commits llvm-commits at lists.llvm.org
Mon Aug 25 00:31:21 PDT 2025


================
@@ -0,0 +1,23 @@
+# 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>" %s -filetype=null 2>&1 | FileCheck %s
+
+---
+name: Cst
+body: |
+  bb.0:
+  ; CHECK-LABEL: name: @Cst
+  ; CHECK-NEXT: %0:_ KnownBits:00010011 SignBits:3
+  ; CHECK-NEXT: %1:_ KnownBits:00010011 SignBits:3
+    %0:_(s8) = G_CONSTANT i8 19
+    %1:_(s8) = G_ABS %0
+...
+---
+name: CstNeg
+body: |
+  bb.0:
+  ; CHECK-LABEL: name: @CstNeg
+  ; CHECK-NEXT: %0:_ KnownBits:11101110 SignBits:3
+  ; CHECK-NEXT: %1:_ KnownBits:00010010 SignBits:3
+    %0:_(s8) = G_CONSTANT i8 238
+    %1:_(s8) = G_ABS %0
+...
----------------
arsenm wrote:

I would also check G_ABS of G_IMPLICIT_DEF, and a vector splat and non-splat case 

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


More information about the llvm-commits mailing list