[PATCH] D99750: [LV, VP] RFC: VP intrinsics support for the Loop Vectorizer (Proof-of-Concept)
Craig Topper via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed May 3 15:06:26 PDT 2023
craig.topper added inline comments.
================
Comment at: llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp:1389
+ Constant *WidthArg = State.Builder.getInt64(*State.ElementWidth);
+ Constant *RWFactorArg = State.Builder.getInt64(*State.RegWidthFactor);
+
----------------
ABataev wrote:
> craig.topper wrote:
> > What is RegWidthFactor supposed to represent?
> >
> > Can we make this the VF instead?
> Generally speaking, LMUL. We can pass VF here, I assume, instead, it should be more portable.
getRegisterBitWidth already has an override in it for LMUL. So I would have add to getRegisterBitWidth in the backend to even figure out what value the factor was applied to. So VF makes more sense.
I think you're now giving llvm.vscale * VF instead of just VF. I need it to be a constant.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D99750/new/
https://reviews.llvm.org/D99750
More information about the llvm-commits
mailing list