[PATCH] D70542: [AArch64][SVE] Add intrinsics for gather loads with 64-bit offsets
Andrzej Warzynski via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Nov 22 02:05:54 PST 2019
andwar marked 15 inline comments as done.
andwar added inline comments.
================
Comment at: llvm/lib/Target/AArch64/AArch64ISelLowering.cpp:617
setTargetDAGCombine(ISD::SIGN_EXTEND);
+ setTargetDAGCombine(ISD::SIGN_EXTEND_INREG);
setTargetDAGCombine(ISD::BITCAST);
----------------
sdesmalen wrote:
> Is this change supposed to be here?
Removed, thanks!
================
Comment at: llvm/lib/Target/AArch64/AArch64ISelLowering.cpp:776
// directly.
- for (MVT VT : MVT::fixedlen_vector_valuetypes()) {
+ for (MVT VT : MVT::vector_valuetypes()) {
setOperationAction(ISD::SIGN_EXTEND_INREG, VT, Expand);
----------------
sdesmalen wrote:
> is this change supposed to be here?
Good catch, thanks, removed!
================
Comment at: llvm/lib/Target/AArch64/AArch64ISelLowering.cpp:11821
+ // means that we can avoid adding TableGen patterns for FPs.
+ if (RetVT.isFloatingPoint()) {
+ EVT OutFpVT = RetVT;
----------------
sdesmalen wrote:
> Can this code not simply do a BITCAST to `OutVT`?
Good catch, thanks! Updated.
================
Comment at: llvm/test/CodeGen/AArch64/sve-intrinsics-gather-loads-64bit-offset.ll:11
+; CHECK: ld1b { z0.d }, p0/z, [x0, z0.d]
+; CHECK-NEXT: mov w8, #255
+; CHECK-NEXT: mov z1.d, x8
----------------
sdesmalen wrote:
> The check-lines for the sign/zero extend are not really necessary, but it will make it more obvious to see them removed in a patch that folds the sign/zero extension into the load itself.
Ack
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D70542/new/
https://reviews.llvm.org/D70542
More information about the llvm-commits
mailing list