[llvm] [SVE][InstCombine] Fold ld1d and splice into ld1ro (PR #69565)
Paul Walker via llvm-commits
llvm-commits at lists.llvm.org
Mon Oct 23 06:31:16 PDT 2023
================
@@ -1258,6 +1258,36 @@ instCombineSVEST1(InstCombiner &IC, IntrinsicInst &II, const DataLayout &DL) {
return IC.eraseInstFromFunction(II);
}
+static std::optional<Instruction *>
+instCombineSVESplice(InstCombiner &IC, IntrinsicInst &II, const DataLayout &DL,
+ const AArch64Subtarget *ST) {
+ Value *Pred = II.getOperand(0);
+ Value *VecOp0 = II.getOperand(1);
+ Value *VecOp1 = II.getOperand(2);
+ Value *PtrOp;
+ unsigned MinSVESize = ST->getMinSVEVectorSizeInBits();
+ unsigned MaxSVESize = ST->getMaxSVEVectorSizeInBits();
----------------
paulwalker-arm wrote:
These functions shouldn't really be used outside of code generation. I think instead you actually want to query the `vscale_range` function attributes.
https://github.com/llvm/llvm-project/pull/69565
More information about the llvm-commits
mailing list