[llvm] [VPlan] Implement interleaving as VPlan-to-VPlan transform. (PR #95842)

Florian Hahn via llvm-commits llvm-commits at lists.llvm.org
Thu Sep 19 04:53:50 PDT 2024


================
@@ -332,6 +332,12 @@ FastMathFlags VPRecipeWithIRFlags::getFastMathFlags() const {
   return Res;
 }
 
+unsigned VPInstruction::getUnrollPartOperand() const {
+  assert(getOpcode() == VPInstruction::CanonicalIVIncrementForPart &&
+         getNumOperands() == 2 && "Called for unsupported recipe");
+  return cast<ConstantInt>(getOperand(1)->getLiveInIRValue())->getZExtValue();
----------------
fhahn wrote:

Ah I see. As there are no users of `getUnrollPartOperand(` other than `getUnrollPart` it seems more straight-forwrd to get the operand and extract the unsigned in a single place?  I think we also don't want to encourage any new users of a `getUnrollPartOperand` 

https://github.com/llvm/llvm-project/pull/95842


More information about the llvm-commits mailing list