class VPBlendRecipe

Declaration

class VPBlendRecipe : public VPRecipeBase { /* full declaration omitted */ };

Description

A recipe for vectorizing a phi-node as a sequence of mask-based select instructions.

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

Inherits from: VPRecipeBase

Method Overview

  • public VPBlendRecipe(llvm::PHINode * Phi, ArrayRef<llvm::VPValue *> Masks)
  • 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

Inherited from VPRecipeBase:

Methods

VPBlendRecipe(llvm::PHINode* Phi,
              ArrayRef<llvm::VPValue*> Masks)

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

Parameters

llvm::PHINode* Phi
ArrayRef<llvm::VPValue*> Masks

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:858

Parameters

const llvm::VPRecipeBase* V

void execute(llvm::VPTransformState& State)

Description

Generate the phi/select nodes.

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

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:866

Parameters

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