class VPWidenMemoryInstructionRecipe
Declaration
class VPWidenMemoryInstructionRecipe : public VPRecipeBase { /* full declaration omitted */ };
Description
A Recipe for widening load/store operations. TODO: We currently execute only per-part unless a specific instance is provided.
Declared at: llvm/lib/Transforms/Vectorize/VPlan.h:1021
Inherits from: VPRecipeBase
Method Overview
- public VPWidenMemoryInstructionRecipe(llvm::Instruction & Instr, llvm::VPValue * Addr, llvm::VPValue * Mask)
- public static inline bool classof(const llvm::VPRecipeBase * V)
- public void execute(llvm::VPTransformState & State)
- public llvm::VPValue * getAddr() const
- public llvm::VPValue * getMask() const
- public void print(llvm::raw_ostream & O, const llvm::Twine & Indent) const
Inherited from VPRecipeBase:
- public eraseFromParent
- public execute
- public getParent
- public getParent
- public getVPRecipeID
- public insertAfter
- public insertBefore
- public moveAfter
- public print
- public removeFromParent
Methods
¶VPWidenMemoryInstructionRecipe(
llvm::Instruction& Instr,
llvm::VPValue* Addr,
llvm::VPValue* Mask)
VPWidenMemoryInstructionRecipe(
llvm::Instruction& Instr,
llvm::VPValue* Addr,
llvm::VPValue* Mask)
Declared at: llvm/lib/Transforms/Vectorize/VPlan.h:1027
Parameters
- llvm::Instruction& Instr
- llvm::VPValue* Addr
- llvm::VPValue* Mask
¶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:1035
Parameters
- const llvm::VPRecipeBase* V
¶void execute(llvm::VPTransformState& State)
void execute(llvm::VPTransformState& State)
Description
Generate the wide load/store.
Declared at: llvm/lib/Transforms/Vectorize/VPlan.h:1052
Parameters
- llvm::VPTransformState& State
¶llvm::VPValue* getAddr() const
llvm::VPValue* getAddr() const
Description
Return the address accessed by this recipe.
Declared at: llvm/lib/Transforms/Vectorize/VPlan.h:1040
¶llvm::VPValue* getMask() const
llvm::VPValue* getMask() const
Description
Return the mask used by this recipe. Note that a full mask is represented by a nullptr.
Declared at: llvm/lib/Transforms/Vectorize/VPlan.h:1046
¶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:1055
Parameters
- llvm::raw_ostream& O
- const llvm::Twine& Indent