[all-commits] [llvm/llvm-project] a5ef2e: Return "[SCEV] Prove implicaitons via AddRec start"
max-azul via All-commits
all-commits at lists.llvm.org
Wed Oct 7 21:17:25 PDT 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: a5ef2e0a1e3bf5a76b0c170ca7791564ab1a8375
https://github.com/llvm/llvm-project/commit/a5ef2e0a1e3bf5a76b0c170ca7791564ab1a8375
Author: Max Kazantsev <mkazantsev at azul.com>
Date: 2020-10-08 (Thu, 08 Oct 2020)
Changed paths:
M llvm/include/llvm/Analysis/ScalarEvolution.h
M llvm/lib/Analysis/ScalarEvolution.cpp
A llvm/test/Transforms/IndVarSimplify/addrec_no_exec_on_every_iteration.ll
M llvm/unittests/Analysis/ScalarEvolutionTest.cpp
Log Message:
-----------
Return "[SCEV] Prove implicaitons via AddRec start"
The initial version of the patch was reverted because it missed the check that
the predicate being proved is actually guarded by this check on 1st iteration.
If it was not executed on 1st iteration (but possibly executes after that), then
it is incorrect to use reasoning about IV start to prove it.
Added the test where the miscompile was seen. Unfortunately, my attempts
to reduce it with bugpoint did not succeed; it can further be reduced when
we understand how to do it without losing the initial bug's notion.
Returning assuming the miscompiles are now gone.
Differential Revision: https://reviews.llvm.org/D88208
More information about the All-commits
mailing list