[all-commits] [llvm/llvm-project] d5b840: [LAA/LV] Simplify stride speculation logic [NFC]
Philip Reames via All-commits
all-commits at lists.llvm.org
Thu May 11 08:33:15 PDT 2023
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: d5b840131223f2ffef4e48ca769ad1eb7bb1869a
https://github.com/llvm/llvm-project/commit/d5b840131223f2ffef4e48ca769ad1eb7bb1869a
Author: Philip Reames <preames at rivosinc.com>
Date: 2023-05-11 (Thu, 11 May 2023)
Changed paths:
M llvm/include/llvm/Analysis/LoopAccessAnalysis.h
M llvm/include/llvm/Analysis/VectorUtils.h
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
M llvm/lib/Analysis/VectorUtils.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
Log Message:
-----------
[LAA/LV] Simplify stride speculation logic [NFC]
The existing code makes it hard to tell that collectStridedAccess is really about identifying some loop invariant SCEV which is *profitable* to speculate is equal to one. The odd dual usage structure of Value and SCEV confuses this point.
We could choose to loosen the profitability analysis if desired. I'm not proposing doing so at this time as it exposes too many cases where the speculation is unprofitable.
Differential Revision: https://reviews.llvm.org/D147750
More information about the All-commits
mailing list