[PATCH] D19512: [LoopVectorize] Don't consider conditional-load dereferenceability when vectorization is forced
Hal Finkel via llvm-commits
llvm-commits at lists.llvm.org
Mon Apr 25 16:54:28 PDT 2016
hfinkel added a comment.
Actually, checking:
Hints->getForce() == LoopVectorizeHints::FK_Enabled
will catch both vectorize(assume_safety) and vectorize(enable). I'd need to also check:
TheLoop->isAnnotatedParallel()
to only get assume_safety. It occurs to me that I don't entirely like this setup: The parallel loop annotation is documented to refer to loop dependencies, not if-conversion safety. While I don't think users will be bothered by this (or see it), do you think that taking llvm.mem.parallel_loop_access to imply if-conversion safety is okay, or do we need to enhance it to differentiate between these concepts (loop-carried dependencies vs. if-conversion safety)? I don't have a use case for differentiating them. Opinions?
http://reviews.llvm.org/D19512
More information about the llvm-commits
mailing list