The transform 'foldSingleElementStore' can be applied to scalable
vector types if the index is less than the minimum number of elements.
Details
Details
Diff Detail
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
Comment Actions
Does this need to be limited to LE? My understanding is that BE and LE vectors would store the elements in the same places, even for scalable vectors. (i.e. it's like an array, where the 0th element ends up first in memory).
llvm/lib/Transforms/Vectorize/VectorCombine.cpp | ||
---|---|---|
49 | Can you remove the unrelated formatting changes. |
Comment Actions
Thanks. I have checked with AArch64's SVE standard and RISCV V-extension specification, LE/BE are just concepts of byte order within a scalar element, not the order of elements inside a vector.
So I applied my optimization to scalable vector types without check of BE/LE.
Thanks.
llvm/lib/Transforms/Vectorize/VectorCombine.cpp | ||
---|---|---|
1023–1026 |
Can you remove the unrelated formatting changes.