[PATCH] D141924: [IR] Add new intrinsics interleave and deinterleave vectors

Caroline via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Feb 15 06:47:15 PST 2023


CarolineConcatto added inline comments.


================
Comment at: llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp:11569
+  SDValue Lo = DAG.getNode(ISD::EXTRACT_SUBVECTOR, DL, OutVT, InVec,
+                           DAG.getConstant(0, DL, MVT::i64));
+  SDValue Hi = DAG.getNode(ISD::EXTRACT_SUBVECTOR, DL, OutVT, InVec,
----------------
luke wrote:
> CarolineConcatto wrote:
> > luke wrote:
> > > CarolineConcatto wrote:
> > > > paulwalker-arm wrote:
> > > > > It's better to use `getVectorIdxConstant` here.
> > > > Thank you Paul,
> > > > I did not know about this function.
> > > Seconded, I'm working on a patch to lower these intrinsics to RISC-V and it currently throws an assertion here on RV32 as it doesn't support MVT::i64 constants. 
> > @luke Does it solved your problem if we replace by getVectorIdxConstant like suggest by Paul?
> Yeah, I tried it out locally and it fixes it!
Wonderfull, I will update the patch!


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D141924



More information about the llvm-commits mailing list