MLIR  15.0.0git
Public Member Functions | Static Public Member Functions | Static Public Attributes | List of all members
mlir::DataLayoutEntryAttr Class Reference

A data layout entry attribute is a key-value pair where the key is a type or an identifier and the value is another attribute. More...

#include "mlir/Dialect/DLTI/DLTI.h"

+ Inheritance diagram for mlir::DataLayoutEntryAttr:
+ Collaboration diagram for mlir::DataLayoutEntryAttr:

Public Member Functions

DataLayoutEntryKey getKey () const
 Returns the key of this entry. More...
 
Attribute getValue () const
 Returns the value of this entry. More...
 
void print (AsmPrinter &os) const
 Prints this attribute. More...
 

Static Public Member Functions

static DataLayoutEntryAttr get (StringAttr key, Attribute value)
 Returns the entry with the given key and value. More...
 
static DataLayoutEntryAttr get (Type key, Attribute value)
 
static DataLayoutEntryAttr parse (AsmParser &parser)
 Parses an instance of this attribute. More...
 
- Static Public Member Functions inherited from mlir::detail::StorageUserBase< ConcreteT, BaseT, StorageT, UniquerT, Traits >
static TypeID getTypeID ()
 Return a unique identifier for the concrete type. More...
 
template<typename T >
static bool classof (T val)
 Provide an implementation of 'classof' that compares the type id of the provided value with that of the concrete type. More...
 
static detail::InterfaceMap getInterfaceMap ()
 Returns an interface map for the interfaces registered to this storage user. More...
 
static HasTraitFn getHasTraitFn ()
 Returns the function that returns true if the given Trait ID matches the IDs of any of the traits defined by the storage user. More...
 
template<typename... IfaceModels>
static void attachInterface (MLIRContext &context)
 Attach the given models as implementations of the corresponding interfaces for the concrete storage user class. More...
 
template<typename... Args>
static ConcreteT get (MLIRContext *ctx, Args... args)
 Get or create a new ConcreteT instance within the ctx. More...
 
template<typename... Args>
static ConcreteT getChecked (const Location &loc, Args... args)
 Get or create a new ConcreteT instance within the ctx, defined at the given, potentially unknown, location. More...
 
template<typename... Args>
static ConcreteT getChecked (function_ref< InFlightDiagnostic()> emitErrorFn, MLIRContext *ctx, Args... args)
 Get or create a new ConcreteT instance within the ctx. More...
 
static ConcreteT getFromOpaquePointer (const void *ptr)
 Get an instance of the concrete type from a void pointer. More...
 

Static Public Attributes

constexpr static const llvm::StringLiteral kAttrKeyword = "dl_entry"
 The keyword used for this attribute in custom syntax. More...
 

Additional Inherited Members

- Public Types inherited from mlir::detail::StorageUserBase< ConcreteT, BaseT, StorageT, UniquerT, Traits >
using Base = StorageUserBase< ConcreteT, BaseT, StorageT, UniquerT, Traits... >
 Utility declarations for the concrete attribute class. More...
 
using ImplType = StorageT
 
using HasTraitFn = bool(*)(TypeID)
 
- Protected Member Functions inherited from mlir::detail::StorageUserBase< ConcreteT, BaseT, StorageT, UniquerT, Traits >
template<typename... Args>
LogicalResult mutate (Args &&...args)
 Mutate the current storage instance. More...
 
ImplTypegetImpl () const
 Utility for easy access to the storage instance. More...
 
- Static Protected Member Functions inherited from mlir::detail::StorageUserBase< ConcreteT, BaseT, StorageT, UniquerT, Traits >
template<typename... Args>
static LogicalResult verify (Args... args)
 Default implementation that just returns success. More...
 

Detailed Description

A data layout entry attribute is a key-value pair where the key is a type or an identifier and the value is another attribute.

These entries form a data layout specification.

Definition at line 33 of file DLTI.h.

Member Function Documentation

◆ get() [1/2]

DataLayoutEntryAttr DataLayoutEntryAttr::get ( StringAttr  key,
Attribute  value 
)
static

Returns the entry with the given key and value.

Definition at line 52 of file DLTI.cpp.

References mlir::impl::DataLayoutEntryStorage::value.

◆ get() [2/2]

DataLayoutEntryAttr DataLayoutEntryAttr::get ( Type  key,
Attribute  value 
)
static

Definition at line 56 of file DLTI.cpp.

References mlir::Type::getContext(), and mlir::impl::DataLayoutEntryStorage::value.

◆ getKey()

DataLayoutEntryKey DataLayoutEntryAttr::getKey ( ) const

Returns the key of this entry.

Definition at line 60 of file DLTI.cpp.

◆ getValue()

Attribute DataLayoutEntryAttr::getValue ( ) const

Returns the value of this entry.

Definition at line 64 of file DLTI.cpp.

◆ parse()

DataLayoutEntryAttr DataLayoutEntryAttr::parse ( AsmParser parser)
static

◆ print()

void DataLayoutEntryAttr::print ( AsmPrinter os) const

Prints this attribute.

Definition at line 95 of file DLTI.cpp.

References kAttrKeyword, and mlir::DataLayoutSpecAttr::kAttrKeyword.

Member Data Documentation

◆ kAttrKeyword

constexpr const StringLiteral mlir::DataLayoutEntryAttr::kAttrKeyword = "dl_entry"
static

The keyword used for this attribute in custom syntax.

Definition at line 41 of file DLTI.h.

Referenced by print(), and mlir::DataLayoutSpecAttr::print().


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