[llvm] [DAG] Add computeKnownBits(FREEZE(X)) handling (PR #214095)
Kevin Le via llvm-commits
llvm-commits at lists.llvm.org
Wed Aug 12 19:13:41 PDT 2026
================
@@ -886,3 +886,82 @@ define i32 @freeze_vselect_demanded(<4 x i32> %csrc, <2 x i32> %a, <2 x i32> %b,
%ext = extractelement <4 x i32> %fr, i64 0
ret i32 %ext
}
+
+; checks ComputeKnownBits works on FREEZE that can't be removed
+; vselect has multiple poison operands so visitFREEZE can't drop
+; escape store so demanded-elts can't drop
+; known bits from lshr must reach final add folded into or
----------------
kneevin wrote:
Realizing now how unclear it is. I'll change it in the source, but what I was saying is that vselect has multiple poison operands so:
- visitFREEZE can't drop FREEZE node
- storing the frozen `select` into parameter `ptr %escape` prevents demanded-elts from dropping FREEZE node
https://github.com/llvm/llvm-project/pull/214095
More information about the llvm-commits
mailing list