[all-commits] [llvm/llvm-project] a98b39: [SCEV] Fix applyLoopGuards() with range check idio...
Nikita Popov via All-commits
all-commits at lists.llvm.org
Tue Sep 7 22:34:58 PDT 2021
Branch: refs/heads/release/13.x
Home: https://github.com/llvm/llvm-project
Commit: a98b397504f835ddc473c344a5a3f101a8d800f0
https://github.com/llvm/llvm-project/commit/a98b397504f835ddc473c344a5a3f101a8d800f0
Author: Nikita Popov <nikita.ppv at gmail.com>
Date: 2021-09-07 (Tue, 07 Sep 2021)
Changed paths:
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/test/Analysis/ScalarEvolution/max-backedge-taken-count-guard-info.ll
Log Message:
-----------
[SCEV] Fix applyLoopGuards() with range check idiom (PR51760)
Due to a typo, this replaced %x with umax(C1, umin(C2, %x + C3))
rather than umax(C1, umin(C2, %x)). This didn't make a difference
for the existing tests, because the result is only used for range
calculation, and %x will usually have an unknown starting range,
and the additional offset keeps it unknown. However, if %x already
has a known range, we may compute a result range that is too
small.
(cherry picked from commit 8d54c8a0c3d7d4a50186ae7087780c6082e5bb46)
More information about the All-commits
mailing list