MLIR  20.0.0git
Public Member Functions | List of all members
mlir::detail::DistinctAttributeAllocator Class Reference

An allocator for distinct attribute storage instances. More...

#include "IR/AttributeDetail.h"

Public Member Functions

 DistinctAttributeAllocator ()=default
 
 DistinctAttributeAllocator (DistinctAttributeAllocator &&)=delete
 
 DistinctAttributeAllocator (const DistinctAttributeAllocator &)=delete
 
DistinctAttributeAllocatoroperator= (const DistinctAttributeAllocator &)=delete
 
DistinctAttrStorageallocate (Attribute referencedAttr)
 Allocates a distinct attribute storage using a thread local bump pointer allocator to enable synchronization free parallel allocations. More...
 

Detailed Description

An allocator for distinct attribute storage instances.

It uses thread local bump pointer allocators stored in a thread local cache to ensure the storage is freed after the destruction of the distinct attribute allocator.

Definition at line 402 of file AttributeDetail.h.

Constructor & Destructor Documentation

◆ DistinctAttributeAllocator() [1/3]

mlir::detail::DistinctAttributeAllocator::DistinctAttributeAllocator ( )
default

◆ DistinctAttributeAllocator() [2/3]

mlir::detail::DistinctAttributeAllocator::DistinctAttributeAllocator ( DistinctAttributeAllocator &&  )
delete

◆ DistinctAttributeAllocator() [3/3]

mlir::detail::DistinctAttributeAllocator::DistinctAttributeAllocator ( const DistinctAttributeAllocator )
delete

Member Function Documentation

◆ allocate()

DistinctAttrStorage* mlir::detail::DistinctAttributeAllocator::allocate ( Attribute  referencedAttr)
inline

Allocates a distinct attribute storage using a thread local bump pointer allocator to enable synchronization free parallel allocations.

Definition at line 413 of file AttributeDetail.h.

References mlir::ThreadLocalCache< ValueT >::get().

◆ operator=()

DistinctAttributeAllocator& mlir::detail::DistinctAttributeAllocator::operator= ( const DistinctAttributeAllocator )
delete

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