[PATCH] D98706: [SCEV] Add false->any implication to save compile time

Max Kazantsev via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Mar 16 06:44:15 PDT 2021


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

Formal logic says that `false` may imply anything. We can save some compile
time in SCEV, saying that any predicate is true whenever we try to imply it
by a constant false condition. Hopefully this should reduce the total dominator
traversal time and make implication queries cheaper.


https://reviews.llvm.org/D98706

Files:
  llvm/lib/Analysis/ScalarEvolution.cpp
  llvm/test/Analysis/ScalarEvolution/max-backedge-taken-count-guard-info.ll
  llvm/test/Transforms/IndVarSimplify/2011-10-27-lftrnull.ll
  llvm/test/Transforms/IndVarSimplify/X86/pr35406.ll
  llvm/test/Transforms/IndVarSimplify/trivial-guard.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D98706.330967.patch
Type: text/x-patch
Size: 10629 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210316/aa4b1301/attachment.bin>


More information about the llvm-commits mailing list