[PATCH] D50644: [WIP] [LAA] Allow runtime checks when strides different but address space does not wrap around
silviu.baranga@arm.com via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Aug 24 00:39:44 PDT 2018
sbaranga added a comment.
For pointer-with-unknown-bounds.ll, I think the point was just checking that we don't vectorize in the case where the SCEV expressions for the pointers are not affine.
IIRC with ShouldRetryWithRuntimeCheck set the runtime checks will try to prove for two expressions A and B that the intervals [min(A), max(A)] and [min(B), max(B)] are disjoint. It's somewhat tricky to perform this check with non-affine expressions.
In theory this should be fine as long as we can emit the correct run-time check.
I might be missing something, but in your example, if %tmp89 is loop-varying I'm not sure how we can emit the check at all since we don't have any strides available?
Repository:
rL LLVM
https://reviews.llvm.org/D50644
More information about the llvm-commits
mailing list