[llvm] Reduce shl64 to shl32 if shift range is [63-32] (PR #125574)

Matt Arsenault via llvm-commits llvm-commits at lists.llvm.org
Wed Feb 5 17:36:15 PST 2025


================
@@ -0,0 +1,67 @@
+;; Test reduction of:
+;;
+;;   DST = shl i64 X, Y
+;;
+;; where Y is in the range [63-32] to:
+;;
+;;   DST = [0, shl i32 X, (Y - 32)]
+
+; RUN: llc -mtriple=amdgcn-amd-amdhsa < %s | FileCheck %s
+
+; FIXME: This case should be reduced, but SelectionDAG::computeKnownBits() cannot
+;        determine the minimum from metadata in this case.  Match current results
----------------
arsenm wrote:

This should be simple to fix in a follow up

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


More information about the llvm-commits mailing list