[llvm] [LoopVectorize] Add support for reverse loops in isDereferenceableAndAlignedInLoop (PR #96752)

Philip Reames via llvm-commits llvm-commits at lists.llvm.org
Tue Jul 16 11:28:52 PDT 2024


preames wrote:

An alternate approach here would be to compute the AccessSize as a SCEV (which should just be umax(End,Start)-umin(Start,End) + ElementSize, and then check to see if it's a SCEVConstant.  End should be evaluateAtIteration on the AddRec.  The base would then be umin(End, Start) as a SCEV, and then see if it's an understandable one.  

In general, doing the math manually seems like a recipe for error here.  

https://github.com/llvm/llvm-project/pull/96752


More information about the llvm-commits mailing list