diff options
author | Yingwei Zheng <dtcxzyw2333@gmail.com> | 2024-02-08 22:34:52 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-02-08 22:34:52 +0800 |
commit | d9e92765c5f9b0fa7adafa769dd13d37b6bca038 (patch) | |
tree | 0db2be537237db745aed3d8030b8f51a2955bef6 /clang/lib/Frontend/ModuleDependencyCollector.cpp | |
parent | 3ad63593dac390e320808f3de0e1906c5fa45c8a (diff) | |
download | llvm-d9e92765c5f9b0fa7adafa769dd13d37b6bca038.zip llvm-d9e92765c5f9b0fa7adafa769dd13d37b6bca038.tar.gz llvm-d9e92765c5f9b0fa7adafa769dd13d37b6bca038.tar.bz2 |
[ConstantRange] Improve ConstantRange::binaryXor (#80146)
`ConstantRange::binaryXor` gives poor results as it currently depends on
`KnownBits::operator^`.
Since `sub A, B` is canonicalized into `xor A, B` if `B` is the subset
of `A`, this patch reverts the transform in `ConstantRange::binaryXor`,
which will give better results.
Alive2: https://alive2.llvm.org/ce/z/bmTMV9
Fixes #79696.
Diffstat (limited to 'clang/lib/Frontend/ModuleDependencyCollector.cpp')
0 files changed, 0 insertions, 0 deletions