[llvm] [ValueTracking] Improve `Bitcast` handling to match SDAG (PR #125935)
Simon Pilgrim via llvm-commits
llvm-commits at lists.llvm.org
Thu Feb 6 07:44:00 PST 2025
================
@@ -1331,10 +1332,31 @@ static void computeKnownBitsFromOperator(const Operator *I,
for (unsigned i = 0; i != SubScale; ++i) {
computeKnownBits(I->getOperand(0), SubDemandedElts.shl(i), KnownSrc,
Depth + 1, Q);
- unsigned ShiftElt = Q.DL.isLittleEndian() ? i : SubScale - 1 - i;
+ unsigned ShiftElt = IsLE ? i : SubScale - 1 - i;
Known.insertBits(KnownSrc, ShiftElt * SubBitWidth);
}
}
+
+ if (SubBitWidth % BitWidth == 0) {
----------------
RKSimon wrote:
Comments?
https://github.com/llvm/llvm-project/pull/125935
More information about the llvm-commits
mailing list