[PATCH] D98460: [RISCV] Add support for scalable vector masked load/store.
Craig Topper via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Mar 12 10:37:51 PST 2021
craig.topper added a comment.
In D98460#2622370 <https://reviews.llvm.org/D98460#2622370>, @frasercrmck wrote:
> In D98460#2622351 <https://reviews.llvm.org/D98460#2622351>, @craig.topper wrote:
>
>> I couldn’t find a combine in DAGCombiner.cpp. As far as I could tell they can only be generated by the type legalizer. I think the fractional LMUL types mean we never Promote any i8/i16/i32 types so we won’t create an extending load or truncating store.
>
> Fair enough, that's what I've seen with scatter/gather too.
>
> Anyway, LGTM. Do all-true masks get auto-optimized to regular loads (edit: or stores, obviously), even for scalable vectors?
Not yet. We need to migrate the code from using isBuildVectorAllZeros/Ones to the other function that considers splat_vector.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D98460/new/
https://reviews.llvm.org/D98460
More information about the llvm-commits
mailing list