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

Inherited from VPRecipeBase:

Methods

VPWidenRecipe(llvm::Instruction* I)

Declared at: llvm/lib/Transforms/Vectorize/VPlan.h:735

Parameters

llvm::Instruction* I

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)

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)

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

Description

Print the recipe.

Declared at: llvm/lib/Transforms/Vectorize/VPlan.h:759

Parameters

llvm::raw_ostream& O
const llvm::Twine& Indent

~VPWidenRecipe()

Declared at: llvm/lib/Transforms/Vectorize/VPlan.h:740