[all-commits] [llvm/llvm-project] dfb369: [ValueTracking] Directly use KnownBits shift funct...
Nikita Popov via All-commits
all-commits at lists.llvm.org
Thu Jun 1 00:46:35 PDT 2023
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: dfb369399d2a54c8dd8752c47ecbf7a8c3c11421
https://github.com/llvm/llvm-project/commit/dfb369399d2a54c8dd8752c47ecbf7a8c3c11421
Author: Nikita Popov <npopov at redhat.com>
Date: 2023-06-01 (Thu, 01 Jun 2023)
Changed paths:
M compiler-rt/test/ubsan/TestCases/Misc/coverage-levels.cpp
M llvm/include/llvm/Support/KnownBits.h
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/lib/Support/KnownBits.cpp
M llvm/test/Analysis/ScalarEvolution/extract-highbits-variablemask.ll
M llvm/test/Analysis/ScalarEvolution/extract-lowbits-variablemask.ll
M llvm/test/Analysis/ScalarEvolution/shift-recurrences.ll
M llvm/test/Analysis/ValueTracking/known-power-of-two-urem.ll
M llvm/test/Transforms/IndVarSimplify/shift-range-checks.ll
M llvm/test/Transforms/InstCombine/zext-or-icmp.ll
Log Message:
-----------
[ValueTracking] Directly use KnownBits shift functions
Make ValueTracking directly call the KnownBits shift helpers, which
provides more precise results.
Unfortunately, ValueTracking has a special case where sometimes we
determine non-zero shift amounts using isKnownNonZero(). I have my
doubts about the usefulness of that special-case (it is only tested
in a single unit test), but I've reproduced the special-case via an
extra parameter to the KnownBits methods.
Differential Revision: https://reviews.llvm.org/D151816
More information about the All-commits
mailing list