MLIR  18.0.0git
Classes | Namespaces | Functions
OperationSupport.h File Reference
#include "mlir/IR/Attributes.h"
#include "mlir/IR/BlockSupport.h"
#include "mlir/IR/BuiltinAttributes.h"
#include "mlir/IR/Diagnostics.h"
#include "mlir/IR/DialectRegistry.h"
#include "mlir/IR/Location.h"
#include "mlir/IR/TypeRange.h"
#include "mlir/IR/Types.h"
#include "mlir/IR/Value.h"
#include "mlir/Support/InterfaceSupport.h"
#include "llvm/ADT/BitmaskEnum.h"
#include "llvm/ADT/PointerUnion.h"
#include "llvm/ADT/STLFunctionalExtras.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/PointerLikeTypeTraits.h"
#include "llvm/Support/TrailingObjects.h"
#include <memory>
#include <optional>

Go to the source code of this file.

Classes

class  mlir::OpaqueProperties
 Simple wrapper around a void* in order to express generically how to pass in op properties through APIs. More...
 
class  mlir::OperationName
 
struct  mlir::OperationName::InterfaceConcept
 This class represents a type erased version of an operation. More...
 
class  mlir::OperationName::Impl
 
struct  mlir::OperationName::UnregisteredOpModel
 Default implementation for unregistered operations. More...
 
class  mlir::RegisteredOperationName
 This is a "type erased" representation of a registered operation. More...
 
struct  mlir::RegisteredOperationName::Model< ConcreteOp >
 Implementation of the InterfaceConcept for operation APIs that forwarded to a concrete op implementation. More...
 
class  mlir::NamedAttrList
 NamedAttrList is array of NamedAttributes that tracks whether it is sorted and does some basic work to remain sorted. More...
 
struct  mlir::OperationState
 This represents an operation in an abstracted form, suitable for use with the builder APIs. More...
 
class  mlir::detail::OperandStorage
 This class handles the management of operation operands. More...
 
class  mlir::OpPrintingFlags
 Set of flags used to control the behavior of the various IR print methods (e.g. More...
 
struct  mlir::OperationEquivalence
 This class provides utilities for computing if two operations are equivalent. More...
 
class  mlir::OperationFingerPrint
 A unique fingerprint for a specific operation, and all of it's internal operations. More...
 
struct  llvm::DenseMapInfo< mlir::OperationName >
 
struct  llvm::DenseMapInfo< mlir::RegisteredOperationName >
 
struct  llvm::PointerLikeTypeTraits< mlir::OperationName >
 
struct  llvm::PointerLikeTypeTraits< mlir::RegisteredOperationName >
 

Namespaces

 llvm
 Include the generated interface declarations.
 
 mlir
 Include the generated interface declarations.
 
 mlir::impl
 Attribute collections provide a dictionary-like interface.
 
 mlir::detail
 Detect if any of the given parameter types has a sub-element handler.
 

Functions

raw_ostream & mlir::operator<< (raw_ostream &os, OperationName info)
 
llvm::hash_code mlir::hash_value (OperationName arg)
 
template<typename IteratorT , typename NameT >
std::pair< IteratorT, bool > mlir::impl::findAttrUnsorted (IteratorT first, IteratorT last, NameT name)
 Unsorted string search or identifier lookups are linear scans. More...
 
template<typename IteratorT >
std::pair< IteratorT, bool > mlir::impl::findAttrSorted (IteratorT first, IteratorT last, StringRef name)
 Using llvm::lower_bound requires an extra string comparison to check whether the returned iterator points to the found element or whether it indicates the lower bound. More...
 
template<typename IteratorT >
std::pair< IteratorT, bool > mlir::impl::findAttrSorted (IteratorT first, IteratorT last, StringAttr name)
 StringAttr lookups on large attribute lists will switch to string binary search. More...
 
template<typename IteratorT , typename NameT >
Attribute mlir::impl::getAttrFromSortedRange (IteratorT first, IteratorT last, NameT name)
 Get an attribute from a sorted range of named attributes. More...
 
template<typename IteratorT , typename NameT >
std::optional< NamedAttribute > mlir::impl::getNamedAttrFromSortedRange (IteratorT first, IteratorT last, NameT name)
 Get an attribute from a sorted range of named attributes. More...
 
 mlir::LLVM_ENABLE_BITMASK_ENUMS_IN_NAMESPACE ()
 Enable Bitmask enums for OperationEquivalence::Flags. More...