MLIR  19.0.0git
Public Types | 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:

Public Types

using Base = StorageUserBase< ConcreteT, BaseT, StorageT, UniquerT, Traits... >
 Utility declarations for the concrete attribute class. More...
 
- 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)
 

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...
 
- Public Member Functions inherited from mlir::detail::StorageUserBase< ConcreteT, BaseT, StorageT, UniquerT, Traits >
ImplTypegetImpl () const
 Utility for easy access to the storage instance. 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...
 
static auto getWalkImmediateSubElementsFn ()
 Returns a function that walks immediate sub elements of a given instance of the storage user. More...
 
static auto getReplaceImmediateSubElementsFn ()
 Returns a function that replaces immediate sub elements of a given instance of 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...
 
static constexpr StringLiteral name = "builtin.data_layout_entry"
 

Additional Inherited Members

- 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...
 
- 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 Typedef Documentation

◆ Base

using mlir::detail::StorageUserBase< ConcreteT, BaseT, StorageT, UniquerT, Traits >::Base = StorageUserBase<ConcreteT, BaseT, StorageT, UniquerT, Traits...>

Utility declarations for the concrete attribute class.

Definition at line 101 of file StorageUniquerSupport.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::get().

Referenced by parse().

◆ get() [2/2]

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

Definition at line 56 of file DLTI.cpp.

References mlir::get(), and mlir::Type::getContext().

◆ getKey()

DataLayoutEntryKey DataLayoutEntryAttr::getKey ( ) const

Returns the key of this entry.

Definition at line 60 of file DLTI.cpp.

References mlir::detail::StorageUserBase< ConcreteT, BaseT, StorageT, UniquerT, Traits >::getImpl().

Referenced by print().

◆ getValue()

Attribute DataLayoutEntryAttr::getValue ( ) const

Returns the value of this entry.

Definition at line 64 of file DLTI.cpp.

References mlir::detail::StorageUserBase< ConcreteT, BaseT, StorageT, UniquerT, Traits >::getImpl().

Referenced by print().

◆ 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 getKey(), getValue(), and kAttrKeyword.

Member Data Documentation

◆ kAttrKeyword

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

The keyword used for this attribute in custom syntax.

Definition at line 41 of file DLTI.h.

Referenced by print().

◆ name

constexpr StringLiteral mlir::DataLayoutEntryAttr::name = "builtin.data_layout_entry"
staticconstexpr

Definition at line 59 of file DLTI.h.


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