LLVM: llvm::VPIRMetadata Class Reference (original) (raw)

Helper to manage IR metadata for recipes. More...

#include "[Transforms/Vectorize/VPlan.h](VPlan%5F8h%5Fsource.html)"

Public Member Functions
VPIRMetadata ()=default
VPIRMetadata (Instruction &I)
Adds metatadata that can be preserved from the original instruction I.
VPIRMetadata (const VPIRMetadata &Other)=default
Copy constructor for cloning.
VPIRMetadata & operator= (const VPIRMetadata &Other)=default
void applyMetadata (Instruction &I) const
Add all metadata to I.
void setMetadata (unsigned Kind, MDNode *Node)
Set metadata with kind Kind to Node.
void intersect (const VPIRMetadata &MD)
Intersect this VPIRMetadata object with MD, keeping only metadata nodes that are common to both.
MDNode * getMetadata (unsigned Kind) const
Get metadata of kind Kind. Returns nullptr if not found.
void print (raw_ostream &O, VPSlotTracker &SlotTracker) const
Print metadata with node IDs.

Helper to manage IR metadata for recipes.

It filters out metadata that cannot be propagated.

Definition at line 982 of file VPlan.h.

llvm::VPIRMetadata::VPIRMetadata ( ) default

VPIRMetadata() [2/3]

llvm::VPIRMetadata::VPIRMetadata ( Instruction & I) inline

VPIRMetadata() [3/3]

applyMetadata()

void VPIRMetadata::applyMetadata ( Instruction & I ) const

Add all metadata to I.

Definition at line 1588 of file VPlanRecipes.cpp.

References I.

Referenced by llvm::VPInterleaveEVLRecipe::execute(), llvm::VPInterleaveRecipe::execute(), llvm::VPWidenCallRecipe::execute(), llvm::VPWidenCastRecipe::execute(), llvm::VPWidenIntrinsicRecipe::execute(), llvm::VPWidenLoadEVLRecipe::execute(), llvm::VPWidenLoadRecipe::execute(), llvm::VPWidenRecipe::execute(), llvm::VPWidenSelectRecipe::execute(), llvm::VPWidenStoreEVLRecipe::execute(), llvm::VPWidenStoreRecipe::execute(), and scalarizeInstruction().

getMetadata()

MDNode * llvm::VPIRMetadata::getMetadata ( unsigned Kind) const inline

intersect()

operator=()

print()

setMetadata()

Set metadata with kind Kind to [Node](classNode.html).

If metadata with Kind already exists, it will be replaced. Otherwise, it will be added.

Definition at line 1002 of file VPlan.h.

References llvm::find_if(), and P.


The documentation for this class was generated from the following files: