class VPWidenRecipe
Declaration
class VPWidenRecipe : public VPRecipeBase { /* full declaration omitted */ };
Description
VPWidenRecipe is a recipe for producing a copy of vector type for each Instruction in its ingredients independently, in order. This recipe covers most of the traditional vectorization cases where each ingredient transforms into a vectorized version of itself.
Declared at: llvm/lib/Transforms/Vectorize/VPlan.h:728
Inherits from: VPRecipeBase
Method Overview
- public VPWidenRecipe(llvm::Instruction * I)
- public bool appendInstruction(llvm::Instruction * Instr)
- public static inline bool classof(const llvm::VPRecipeBase * V)
- public void execute(llvm::VPTransformState & State)
- public void print(llvm::raw_ostream & O, const llvm::Twine & Indent) const
- public ~VPWidenRecipe()
Inherited from VPRecipeBase:
- public eraseFromParent
- public execute
- public getParent
- public getParent
- public getVPRecipeID
- public insertAfter
- public insertBefore
- public moveAfter
- public print
- public removeFromParent
Methods
¶VPWidenRecipe(llvm::Instruction* I)
VPWidenRecipe(llvm::Instruction* I)
Declared at: llvm/lib/Transforms/Vectorize/VPlan.h:735
Parameters
¶bool appendInstruction(llvm::Instruction* Instr)
bool appendInstruction(llvm::Instruction* Instr)
Description
Augment the recipe to include Instr, if it lies at its End.
Declared at: llvm/lib/Transforms/Vectorize/VPlan.h:751
Parameters
- llvm::Instruction* Instr
¶static inline bool classof(
const llvm::VPRecipeBase* V)
static inline bool classof(
const llvm::VPRecipeBase* V)
Description
Method to support type inquiry through isa, cast, and dyn_cast.
Declared at: llvm/lib/Transforms/Vectorize/VPlan.h:743
Parameters
- const llvm::VPRecipeBase* V
¶void execute(llvm::VPTransformState& State)
void execute(llvm::VPTransformState& State)
Description
Produce widened copies of all Ingredients.
Declared at: llvm/lib/Transforms/Vectorize/VPlan.h:748
Parameters
- llvm::VPTransformState& State
¶void print(llvm::raw_ostream& O,
const llvm::Twine& Indent) const
void print(llvm::raw_ostream& O,
const llvm::Twine& Indent) const
Description
Print the recipe.
Declared at: llvm/lib/Transforms/Vectorize/VPlan.h:759
Parameters
- llvm::raw_ostream& O
- const llvm::Twine& Indent
¶~VPWidenRecipe()
~VPWidenRecipe()
Declared at: llvm/lib/Transforms/Vectorize/VPlan.h:740