[llvm-branch-commits] [llvm] [GlobalISel] Add computeNumSignBits for ASHR (PR #139503)

Matt Arsenault via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Mon May 12 01:04:38 PDT 2025


================
@@ -864,6 +864,16 @@ unsigned GISelValueTracking::computeNumSignBits(Register R,
       return TyBits - 1; // Every always-zero bit is a sign bit.
     break;
   }
+  case TargetOpcode::G_ASHR: {
+    Register Src1 = MI.getOperand(1).getReg();
+    Register Src2 = MI.getOperand(2).getReg();
+    LLT SrcTy = MRI.getType(Src1);
+    FirstAnswer = computeNumSignBits(Src1, DemandedElts, Depth + 1);
+    if (auto C = getIConstantSplatVal(Src2, MRI))
----------------
arsenm wrote:

At some point we should make these properly elementwise and not only handle splats 

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


More information about the llvm-branch-commits mailing list