[all-commits] [llvm/llvm-project] 02b49d: [ValueTracking] Add tests for computing known bits...
goldsteinn via All-commits
all-commits at lists.llvm.org
Thu Apr 4 10:43:28 PDT 2024
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 02b49d14a50cbfad0196cdddba6771f0593fdc3b
https://github.com/llvm/llvm-project/commit/02b49d14a50cbfad0196cdddba6771f0593fdc3b
Author: Noah Goldstein <goldstein.w.n at gmail.com>
Date: 2024-04-04 (Thu, 04 Apr 2024)
Changed paths:
M llvm/test/Transforms/InstCombine/known-bits.ll
Log Message:
-----------
[ValueTracking] Add tests for computing known bits from `(icmp eq (and/or x,y), C)`; NFC
Commit: 05cff99a29b2df17142907aa81ae488559756f01
https://github.com/llvm/llvm-project/commit/05cff99a29b2df17142907aa81ae488559756f01
Author: Noah Goldstein <goldstein.w.n at gmail.com>
Date: 2024-04-04 (Thu, 04 Apr 2024)
Changed paths:
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/test/Transforms/InstCombine/known-bits.ll
M llvm/test/Transforms/InstCombine/zext-or-icmp.ll
Log Message:
-----------
[ValueTracking] Infer known bits fromfrom `(icmp eq (and/or x,y), C)`
In `(icmp eq (and x,y), C)` all 1s in `C` must also be set in both
`x`/`y`.
In `(icmp eq (or x,y), C)` all 0s in `C` must also be set in both
`x`/`y`.
Closes #87143
Commit: 74447cf46f97f24f52ac6675d642e6cc771447bb
https://github.com/llvm/llvm-project/commit/74447cf46f97f24f52ac6675d642e6cc771447bb
Author: Noah Goldstein <goldstein.w.n at gmail.com>
Date: 2024-04-04 (Thu, 04 Apr 2024)
Changed paths:
A llvm/test/Transforms/InstCombine/implies.ll
M llvm/test/Transforms/InstSimplify/implies.ll
Log Message:
-----------
[ValueTracking] Add tests for deducing more conditions in `isTruePredicate`; NFC
Commit: 678f32ab66508aea2068a5e4e07d53b71ce5cf31
https://github.com/llvm/llvm-project/commit/678f32ab66508aea2068a5e4e07d53b71ce5cf31
Author: Noah Goldstein <goldstein.w.n at gmail.com>
Date: 2024-04-04 (Thu, 04 Apr 2024)
Changed paths:
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/test/Transforms/InstCombine/implies.ll
M llvm/test/Transforms/InstSimplify/implies.ll
Log Message:
-----------
[ValueTracking] Add more conditions in to `isTruePredicate`
There is one notable "regression". This patch replaces the bespoke `or
disjoint` logic we a direct match. This means we fail some
simplification during `instsimplify`.
All the cases we fail in `instsimplify` we do handle in `instcombine`
as we add `disjoint` flags.
Other than that, just some basic cases.
See proofs: https://alive2.llvm.org/ce/z/_-g7C8
Closes #86083
Compare: https://github.com/llvm/llvm-project/compare/220cdf940e95...678f32ab6650
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list