[llvm] [DAG] Add computeKnownBits(FREEZE(X)) handling (PR #214095)
Simon Pilgrim via llvm-commits
llvm-commits at lists.llvm.org
Wed Aug 5 07:04:32 PDT 2026
================
@@ -886,3 +886,86 @@ 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
+define <2 x i64> @freeze_vselect_knownbits(<8 x i32> %csrc, <4 x i32> %a, <4 x i32> %b, <4 x i32> %c, <4 x i32> %d, ptr %escape) {
----------------
RKSimon wrote:
```suggestion
define <2 x i64> @freeze_vselect_knownbits(<8 x i32> %csrc, <4 x i32> %a, <4 x i32> %b, <4 x i32> %c, <4 x i32> %d, ptr %escape) nounwind {
```
https://github.com/llvm/llvm-project/pull/214095
More information about the llvm-commits
mailing list