[PATCH] D75751: [AArch64][SVE] Implement structured load intrinsics
Francesco Petrogalli via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Mar 16 15:19:14 PDT 2020
fpetrogalli added a comment.
Hi @c-rhodes ,
thank you for working on this. I am basing the addressing mode optimization for `ldN` on this patch, I just wanted to point out a couple of minor remarks!
Grazie,
Francesco
[Nit] Should use `vscale` instead of `n` in the commit message:
LD2 : <n x 8 x i32>
LD3 : <n x 12 x i32>
LD4 : <n x 16 x i32>
================
Comment at: llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp:1394
+ const unsigned Opc,
+ unsigned SubRegIdx) {
+ SDLoc dl(N);
----------------
`SubRegIdx` is always set to `AArch64::zsub0`. Can we remove it from the parameter list of the method and use `AArch64::zsub0` directly inside the function?
================
Comment at: llvm/lib/Target/AArch64/AArch64ISelLowering.cpp:9671
+ EVT SplitVT = EVT::getVectorVT(*DAG.getContext(), VT.getVectorElementType(),
+ VT.getVectorElementCount() / N);
+ assert(isTypeLegal(SplitVT));
----------------
[Nit] Might be worth asserting that `VT.getVectorElementCount() % N == 0`.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D75751/new/
https://reviews.llvm.org/D75751
More information about the llvm-commits
mailing list