[PATCH] D17201: [SCEV] Introduce a guarded backedge taken count and use it in LAA and LV

silviu.baranga@arm.com via llvm-commits llvm-commits at lists.llvm.org
Mon Mar 7 06:37:15 PST 2016


sbaranga updated this revision to Diff 49955.
sbaranga added a comment.

This update addresses the comments from Sanjoy from the previous
review round.

Renamed GuardedBackedgeTakenCount -> PredicatedBackedgeTakenCount, for
consistency with existing code.

Modified ScalarEvolution's print method to also print the predicated
backedge taken count. Used this feature to add regression tests that
directly check SCEV's output.

Cloned the backedge taken info map to store information for the predicated
backedge taken count, and used this to lazily compute the predicated
backedge taken count. This will allow users of SCEV that don't need
the predicated backedge taken count to not pay the cost of computing it.
This approach is also much less bug-prone then the previous one, as
the new information (the predicated backedge taken count) is is another
data structure that must be explicitly accessed.


http://reviews.llvm.org/D17201

Files:
  include/llvm/Analysis/ScalarEvolution.h
  lib/Analysis/LoopAccessAnalysis.cpp
  lib/Analysis/ScalarEvolution.cpp
  lib/Analysis/ScalarEvolutionExpander.cpp
  lib/Transforms/Vectorize/LoopVectorize.cpp
  test/Analysis/ScalarEvolution/predicated-trip-count.ll
  test/Transforms/LoopVectorize/AArch64/backedge-overflow.ll
  test/Transforms/LoopVectorize/X86/vectorization-remarks-missed.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D17201.49955.patch
Type: text/x-patch
Size: 47943 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160307/30ed1a3f/attachment-0001.bin>


More information about the llvm-commits mailing list