MLIR 22.0.0git
mlir::LLVM::detail::LoopAnnotationTranslation Class Reference

A helper class that converts LoopAnnotationAttrs and AccessGroupAttrs into corresponding llvm::MDNodes. More...

#include "Target/LLVMIR/LoopAnnotationTranslation.h"

Public Member Functions

 LoopAnnotationTranslation (ModuleTranslation &moduleTranslation, llvm::Module &llvmModule)
llvm::MDNode * translateLoopAnnotation (LoopAnnotationAttr attr, Operation *op)
llvm::MDNode * getAccessGroup (AccessGroupAttr accessGroupAttr)
 Returns the LLVM metadata corresponding to an mlir LLVM dialect access group attribute.
llvm::MDNode * getAccessGroups (AccessGroupOpInterface op)
 Returns the LLVM metadata corresponding to the access group attribute referenced by the AccessGroupOpInterface or null if there are none.

Public Attributes

ModuleTranslationmoduleTranslation
 The ModuleTranslation owning this instance.

Detailed Description

A helper class that converts LoopAnnotationAttrs and AccessGroupAttrs into corresponding llvm::MDNodes.

Definition at line 26 of file LoopAnnotationTranslation.h.

Constructor & Destructor Documentation

◆ LoopAnnotationTranslation()

mlir::LLVM::detail::LoopAnnotationTranslation::LoopAnnotationTranslation ( ModuleTranslation & moduleTranslation,
llvm::Module & llvmModule )
inline

Definition at line 28 of file LoopAnnotationTranslation.h.

References moduleTranslation.

Member Function Documentation

◆ getAccessGroup()

llvm::MDNode * LoopAnnotationTranslation::getAccessGroup ( AccessGroupAttr accessGroupAttr)

Returns the LLVM metadata corresponding to an mlir LLVM dialect access group attribute.

Definition at line 281 of file LoopAnnotationTranslation.cpp.

References inserted(), and result.

Referenced by getAccessGroups().

◆ getAccessGroups()

llvm::MDNode * LoopAnnotationTranslation::getAccessGroups ( AccessGroupOpInterface op)

Returns the LLVM metadata corresponding to the access group attribute referenced by the AccessGroupOpInterface or null if there are none.

Definition at line 290 of file LoopAnnotationTranslation.cpp.

References ArrayAttr(), and getAccessGroup().

◆ translateLoopAnnotation()

llvm::MDNode * LoopAnnotationTranslation::translateLoopAnnotation ( LoopAnnotationAttr attr,
Operation * op )

Definition at line 262 of file LoopAnnotationTranslation.cpp.

References mlir::Operation::getContext().

Member Data Documentation

◆ moduleTranslation

ModuleTranslation& mlir::LLVM::detail::LoopAnnotationTranslation::moduleTranslation

The ModuleTranslation owning this instance.

Definition at line 43 of file LoopAnnotationTranslation.h.

Referenced by LoopAnnotationTranslation().


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