[PATCH] D88208: [SCEV] Prove implicaitons via AddRec start

Max Kazantsev via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Sep 24 03:23:19 PDT 2020


mkazantsev created this revision.
mkazantsev added reviewers: fhahn, lebedev.ri, reames.
Herald added subscribers: llvm-commits, hiraditya.
Herald added a project: LLVM.
mkazantsev requested review of this revision.

If we know that some predicate is true for AddRec and an invariant
(w.r.t. this AddRec's loop), this fact is, in particular, true on the first
iteration. We can try to prove the facts we need using the start value.

The motivating example is proving things like

  isImpliedCondOperands(>=, X, 0, {X,+,-1}, 0}


https://reviews.llvm.org/D88208

Files:
  llvm/include/llvm/Analysis/ScalarEvolution.h
  llvm/lib/Analysis/ScalarEvolution.cpp
  llvm/unittests/Analysis/ScalarEvolutionTest.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D88208.294002.patch
Type: text/x-patch
Size: 4523 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200924/d4ed8482/attachment.bin>


More information about the llvm-commits mailing list