[PATCH] D47775: [AArch64][SVE] Add SPLAT_VECTOR ISD Node
James Molloy via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Sep 30 04:42:10 PDT 2019
jmolloy requested changes to this revision.
jmolloy added a comment.
This revision now requires changes to proceed.
Hi Graham,
I really like the addition of a new ISD opcode for this. I do have one inline comment.
James
================
Comment at: llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp:3544
+ if (MaskV->isNullValue() && VT.isScalableVector()) {
+ // Canonical splat form of first element of first input vector.
----------------
It feels to me like this is a canonicalization that should be a DAGCombine rather than in the builder. Is this here specifically because the ISD::vector_shuffle is not representable with scalable vectors?
If not, I'd prefer this be moved to a canonical dag combine. In general, I feel logic here should be at a minimum because it runs before targets can override or pattern match themselves.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D47775/new/
https://reviews.llvm.org/D47775
More information about the llvm-commits
mailing list