class VPActiveLaneMaskPHIRecipe

Declaration

class VPActiveLaneMaskPHIRecipe : public VPHeaderPHIRecipe { /* full declaration omitted */ };

Description

A recipe for generating the active lane mask for the vector loop that is used to predicate the vector operations. TODO: It would be good to use the existing VPWidenPHIRecipe instead and remove VPActiveLaneMaskPHIRecipe.

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

Inherits from: VPHeaderPHIRecipe

Member Variables

private llvm::DebugLoc DL

Inherited from VPValue:

protected UnderlyingVal
protected Def

Method Overview

  • public VPActiveLaneMaskPHIRecipe(llvm::VPValue * StartMask, llvm::DebugLoc DL)
  • public static inline bool classof(const llvm::VPDef * D)
  • public static inline bool classof(const llvm::VPHeaderPHIRecipe * D)
  • public static inline bool classof(const llvm::VPValue * V)
  • public void execute(llvm::VPTransformState & State)
  • public void print(llvm::raw_ostream & O, const llvm::Twine & Indent, llvm::VPSlotTracker & SlotTracker) const
  • public ~VPActiveLaneMaskPHIRecipe()

Inherited from VPHeaderPHIRecipe:

Inherited from VPValue:

Inherited from VPRecipeBase:

Inherited from VPUser:

Inherited from VPDef:

Methods

VPActiveLaneMaskPHIRecipe(
    llvm::VPValue* StartMask,
    llvm::DebugLoc DL)

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

Parameters

llvm::VPValue* StartMask
llvm::DebugLoc DL

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

Parameters

const llvm::VPDef* D

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

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

Parameters

const llvm::VPHeaderPHIRecipe* D

static inline bool classof(const llvm::VPValue* V)

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

Parameters

const llvm::VPValue* V

void execute(llvm::VPTransformState& State)

Description

Generate the active lane mask phi of the vector loop.

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

Parameters

llvm::VPTransformState& State

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

Parameters

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

~VPActiveLaneMaskPHIRecipe()

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