[all-commits] [llvm/llvm-project] 069081: [ValueTracking] Add tests for more `isKnownToBeAPo...
goldsteinn via All-commits
all-commits at lists.llvm.org
Wed Aug 9 12:45:49 PDT 2023
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 0690817bccf6ea7b435bcc3e2cb08cfc56ae2823
https://github.com/llvm/llvm-project/commit/0690817bccf6ea7b435bcc3e2cb08cfc56ae2823
Author: Noah Goldstein <goldstein.w.n at gmail.com>
Date: 2023-08-09 (Wed, 09 Aug 2023)
Changed paths:
M llvm/test/Analysis/ValueTracking/known-power-of-two.ll
Log Message:
-----------
[ValueTracking] Add tests for more `isKnownToBeAPowerOfTwo` cases; NFC
Differential Revision: https://reviews.llvm.org/D157303
Commit: bab8058d3b00b341e74ce91dc84c2c73b0ceb261
https://github.com/llvm/llvm-project/commit/bab8058d3b00b341e74ce91dc84c2c73b0ceb261
Author: Noah Goldstein <goldstein.w.n at gmail.com>
Date: 2023-08-09 (Wed, 09 Aug 2023)
Changed paths:
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/test/Analysis/ValueTracking/known-power-of-two.ll
Log Message:
-----------
[ValueTracking] If `OrZero` is set, look through `trunc` in `isKnownToBePowerOfTwo`
Just move coverage.
Proof: https://alive2.llvm.org/ce/z/H37tVX
Differential Revision: https://reviews.llvm.org/D157304
Commit: 03b529a2a6ca685be6244b52232d1dae4f02c6a5
https://github.com/llvm/llvm-project/commit/03b529a2a6ca685be6244b52232d1dae4f02c6a5
Author: Noah Goldstein <goldstein.w.n at gmail.com>
Date: 2023-08-09 (Wed, 09 Aug 2023)
Changed paths:
M llvm/lib/Analysis/ValueTracking.cpp
Log Message:
-----------
[ValueTracking] Use switch for Intrinsics in `isKnownToBePowerOfTwo`; NFC
Differential Revision: https://reviews.llvm.org/D157305
Commit: 6f4d660d7faa8772bb6d6ad7329c6d6e305a6c4b
https://github.com/llvm/llvm-project/commit/6f4d660d7faa8772bb6d6ad7329c6d6e305a6c4b
Author: Noah Goldstein <goldstein.w.n at gmail.com>
Date: 2023-08-09 (Wed, 09 Aug 2023)
Changed paths:
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/test/Analysis/ValueTracking/known-power-of-two.ll
Log Message:
-----------
[ValueTracking] Add support for `bswap` and `bitreverse` in `isKnownToBeAPowerOfTwo`
Both of these intrinsics don't change the number of 1s/0s so we can
look directly through them.
Proofs: https://alive2.llvm.org/ce/z/gnZuwC
Differential Revision: https://reviews.llvm.org/D157306
Commit: 4f818daca64ccec5557c10a05186837cf9fcd0f7
https://github.com/llvm/llvm-project/commit/4f818daca64ccec5557c10a05186837cf9fcd0f7
Author: Noah Goldstein <goldstein.w.n at gmail.com>
Date: 2023-08-09 (Wed, 09 Aug 2023)
Changed paths:
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/test/Analysis/ValueTracking/known-power-of-two.ll
Log Message:
-----------
[ValueTracking] Add support for `fshl`/`fshr` in `isKnownToBeAPowerOfTwo`
If the funnel shifts are rotates (op0 == op1) then the number of 1s/0s
don't change so we can just look through op0/op1.
Proofs: https://alive2.llvm.org/ce/z/Pja5yu
Differential Revision: https://reviews.llvm.org/D157307
Commit: dff3d8a279c660694b50271523edbc98c3eb2ab6
https://github.com/llvm/llvm-project/commit/dff3d8a279c660694b50271523edbc98c3eb2ab6
Author: Noah Goldstein <goldstein.w.n at gmail.com>
Date: 2023-08-09 (Wed, 09 Aug 2023)
Changed paths:
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/test/Analysis/ValueTracking/known-power-of-two.ll
Log Message:
-----------
[ValueTracking] Add support for `mul` in `isKnownToBeAPowerOfTwo`
pow2 * pow2 is a power of 2 or zero.
Proof: https://alive2.llvm.org/ce/z/FNiiXd
Differential Revision: https://reviews.llvm.org/D157308
Commit: fbb40df2bff00f6653b087fa2fe25e0d60de2389
https://github.com/llvm/llvm-project/commit/fbb40df2bff00f6653b087fa2fe25e0d60de2389
Author: Noah Goldstein <goldstein.w.n at gmail.com>
Date: 2023-08-09 (Wed, 09 Aug 2023)
Changed paths:
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/test/Analysis/ValueTracking/known-power-of-two.ll
Log Message:
-----------
[ValueTracking] In `isKnownToBeAPowerOfTwo` an `i1` value is always true if `OrZero` is set
This is trivially true.
Differential Revision: https://reviews.llvm.org/D157310
Commit: 035aaae45cf42ed469e4cb60001307ecbeebd947
https://github.com/llvm/llvm-project/commit/035aaae45cf42ed469e4cb60001307ecbeebd947
Author: Noah Goldstein <goldstein.w.n at gmail.com>
Date: 2023-08-09 (Wed, 09 Aug 2023)
Changed paths:
M llvm/lib/Analysis/ValueTracking.cpp
Log Message:
-----------
[ValueTracking] Check likely to be canonicalized constant operands first in ; NFC
Checking operands that a likely to be canonicalized constants first makes sense
from a compile time perspective as it puts whats expected to be a cheaper check first.
Reviewed By: nikic
Differential Revision: https://reviews.llvm.org/D157313
Compare: https://github.com/llvm/llvm-project/compare/d04494ccc913...035aaae45cf4
More information about the All-commits
mailing list