[llvm] [VPlan] Use VPInstruction for uniform binops. (PR #141429)
via llvm-commits
llvm-commits at lists.llvm.org
Wed Jun 4 04:27:23 PDT 2025
================
@@ -1069,10 +1072,19 @@ void VPInstructionWithType::execute(VPTransformState &State) {
}
}
+InstructionCost VPInstructionWithType::computeCost(ElementCount VF,
+ VPCostContext &Ctx) const {
+ // TODO: Compute cost for VPInstructions without underlying values once
+ // the legacy cost model has been retired.
+ if (!getUnderlyingValue())
+ return 0;
+ return Ctx.getLegacyCost(cast<Instruction>(getUnderlyingValue()), VF);
+}
+
#if !defined(NDEBUG) || defined(LLVM_ENABLE_DUMP)
void VPInstructionWithType::print(raw_ostream &O, const Twine &Indent,
VPSlotTracker &SlotTracker) const {
- O << Indent << "EMIT ";
+ O << Indent << (isSingleScalar() ? "SINGLE-SCALAR " : "EMIT ");
----------------
ayalz wrote:
```suggestion
O << Indent << "EMIT" << (isSingleScalar() ? "-SCALAR" : "") << " ";
```
consistent with VPInstruction::print().
https://github.com/llvm/llvm-project/pull/141429
More information about the llvm-commits
mailing list