[llvm] [LV] isScalarWithPredication to check for interleaved accesses (PR #194579)
David Sherwood via llvm-commits
llvm-commits at lists.llvm.org
Thu Apr 30 02:57:31 PDT 2026
=?utf-8?q?Gaƫtan?= Bossu <gaetan.bossu at arm.com>
Message-ID:
In-Reply-To: <llvm.org/llvm/llvm-project/pull/194579 at github.com>
================
@@ -59,20 +59,25 @@ static cl::opt<bool> ForceTargetSupportsMaskedMemoryOps(
cl::desc("Assume the target supports masked memory operations (used for "
"testing)."));
-bool VFSelectionContext::isLegalMaskedStore(Type *DataType, Value *Ptr,
- Align Alignment,
- unsigned AddressSpace) const {
- return Legal->isConsecutivePtr(DataType, Ptr) &&
- (ForceTargetSupportsMaskedMemoryOps ||
- TTI.isLegalMaskedStore(DataType, Alignment, AddressSpace));
-}
+static cl::opt<bool> ForceTargetSupportsGatherScatterOps(
----------------
david-arm wrote:
I think it would be good to pull out the refactoring of isLegalMaskedLoad/Store + the new option into a separate PR, without the extra InterleaveFactor argument first. Seems useful as a standalone patch and would reduce the diff here? You can still add a test that shows the new option working in a different scenario.
https://github.com/llvm/llvm-project/pull/194579
More information about the llvm-commits
mailing list