[PATCH] D75388: Expand interleaved memory access pass to identify certain shuffle_vector and transform it into target specific intrinsics.

Christopher Tetreault via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Apr 15 14:19:37 PDT 2020


ctetreau added inline comments.


================
Comment at: llvm/include/llvm/Analysis/TargetTransformInfo.h:976
+  int getInterleavedMemoryOpCost(Instruction *I, unsigned VF, unsigned Opcode,
+                                 Type *VecTy, unsigned Factor,
                                  ArrayRef<unsigned> Indices, unsigned Alignment,
----------------
RKSimon wrote:
> wxz2020 wrote:
> > RKSimon wrote:
> > > Since you're changing the function signature anyway would it make sense to change this to a VectorType *VecTy? There's been chatter on other patches about making this jump in general as many of the TTI calls expect a vector anyhow.
> > Can you give me an example about this?
> @ctetreau's work on cleaning up the vector getters e.g. D77264 hits this a lot
I'm working on a major cleanup and refactor of VectorType. As part of this, getVectorNumElements, getVectorElementCount, getVectorElementType, and getVectorIsScalable are all being removed.

If the VecTy argument to this function is expected to be an instance of VectorType, then it should take a pointer to VectorType. Then, in the body, code can directly call the methods of VectorType without using the base Type asserting getters.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D75388/new/

https://reviews.llvm.org/D75388





More information about the llvm-commits mailing list