[all-commits] [llvm/llvm-project] d65ddc: [ValueTracking] ComputeKnownBits - minimum leading...
Simon Pilgrim via All-commits
all-commits at lists.llvm.org
Wed Feb 24 04:16:11 PST 2021
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: d65ddca83ff85c7345fe9a0f5a15750f01e38420
https://github.com/llvm/llvm-project/commit/d65ddca83ff85c7345fe9a0f5a15750f01e38420
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2021-02-24 (Wed, 24 Feb 2021)
Changed paths:
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/lib/Support/KnownBits.cpp
M llvm/test/Transforms/InstSimplify/icmp-constant.ll
Log Message:
-----------
[ValueTracking] ComputeKnownBits - minimum leading/trailing zero bits in LSHR/SHL (PR44526)
Followup to D72573 - as detailed in https://blog.regehr.org/archives/1709 we don't make use of the known leading/trailing zeros for shifted values in cases where we don't know the shift amount value.
Stop ValueTracking returning zero for poison shift patterns and use the KnownBits shift helpers directly.
Extend KnownBits::shl to combine all possible shifted combinations if both min/max shift amount values are in range.
Differential Revision: https://reviews.llvm.org/D90479
More information about the All-commits
mailing list