class VPExpandSCEVRecipe

Declaration

class VPExpandSCEVRecipe : public VPRecipeBase, public VPValue { /* full declaration omitted */ };

Description

Recipe to expand a SCEV expression.

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

Inherits from: VPRecipeBase, VPValue

Member Variables

private const llvm::SCEV* Expr
private llvm::ScalarEvolution& SE

Inherited from VPValue:

protected UnderlyingVal
protected Def

Method Overview

  • public VPExpandSCEVRecipe(const llvm::SCEV * Expr, llvm::ScalarEvolution & SE)
  • public static inline bool classof(const llvm::VPDef * D)
  • public void execute(llvm::VPTransformState & State)
  • public const llvm::SCEV * getSCEV() const
  • public void print(llvm::raw_ostream & O, const llvm::Twine & Indent, llvm::VPSlotTracker & SlotTracker) const
  • public ~VPExpandSCEVRecipe()

Inherited from VPValue:

Inherited from VPRecipeBase:

Inherited from VPUser:

Inherited from VPDef:

Methods

VPExpandSCEVRecipe(const llvm::SCEV* Expr,
                   llvm::ScalarEvolution& SE)

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

Parameters

const llvm::SCEV* Expr
llvm::ScalarEvolution& SE

static inline bool classof(const llvm::VPDef* D)

Description

Method to support type inquiry through isa, cast, and dyn_cast.

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

Parameters

const llvm::VPDef* D

void execute(llvm::VPTransformState& State)

Description

Generate a canonical vector induction variable of the vector loop, with

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

Parameters

llvm::VPTransformState& State

const llvm::SCEV* getSCEV() const

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

void print(llvm::raw_ostream& O,
           const llvm::Twine& Indent,
           llvm::VPSlotTracker& SlotTracker) const

Description

Print the recipe.

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

Parameters

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

~VPExpandSCEVRecipe()

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