|
MLIR 22.0.0git
|
Go to the source code of this file.
Classes | |
| class | mlir::SideEffects::Effect |
| This class represents a base class for a specific effect type. More... | |
| class | mlir::SideEffects::Effect::Base< DerivedEffect, BaseEffect > |
| This base class is used for derived effects that are non-parametric. More... | |
| class | mlir::SideEffects::Resource |
| This class represents a specific resource that an effect applies to. More... | |
| class | mlir::SideEffects::Resource::Base< DerivedResource, BaseResource > |
| This base class is used for derived effects that are non-parametric. More... | |
| struct | mlir::SideEffects::DefaultResource |
| A conservative default resource kind. More... | |
| struct | mlir::SideEffects::AutomaticAllocationScopeResource |
| An automatic allocation-scope resource that is valid in the context of a parent AutomaticAllocationScope trait. More... | |
| class | mlir::SideEffects::EffectInstance< EffectT > |
| This class represents a specific instance of an effect. More... | |
| class | mlir::OpTrait::HasRecursiveMemoryEffects< ConcreteType > |
| This trait indicates that the memory effects of an operation includes the effects of operations nested within its regions. More... | |
| struct | mlir::OpTrait::RecursivelySpeculatableImplTrait< ConcreteType > |
| This trait marks an op (which must be tagged as implementing the ConditionallySpeculatable interface) as being recursively speculatable. More... | |
| struct | mlir::OpTrait::AlwaysSpeculatableImplTrait< ConcreteType > |
| This trait marks an op (which must be tagged as implementing the ConditionallySpeculatable interface) as being always speculatable. More... | |
| struct | mlir::MemoryEffects::Effect |
| This class represents the base class used for memory effects. More... | |
| struct | mlir::MemoryEffects::Allocate |
| The following effect indicates that the operation allocates from some resource. More... | |
| struct | mlir::MemoryEffects::Free |
| The following effect indicates that the operation frees some resource that has been allocated. More... | |
| struct | mlir::MemoryEffects::Read |
| The following effect indicates that the operation reads from some resource. More... | |
| struct | mlir::MemoryEffects::Write |
| The following effect indicates that the operation writes to some resource. More... | |
Namespaces | |
| namespace | mlir |
| Include the generated interface declarations. | |
| namespace | mlir::SideEffects |
| namespace | mlir::Speculation |
| namespace | mlir::OpTrait |
| namespace | mlir::MemoryEffects |
Typedefs | |
| using | mlir::MemoryEffects::EffectInstance = SideEffects::EffectInstance<Effect> |
Enumerations | |
| enum class | mlir::Speculation::Speculatability { mlir::Speculation::NotSpeculatable , mlir::Speculation::Speculatable , mlir::Speculation::RecursivelySpeculatable } |
| This enum is returned from the getSpeculatability method in the ConditionallySpeculatable op interface. More... | |
Functions | |
| bool | mlir::hasUnknownEffects (Operation *op) |
| Return "true" if op has unknown effects. | |
| template<typename EffectTy> | |
| bool | mlir::hasSingleEffect (Operation *op) |
| Returns "true" if op has only an effect of type EffectTy. | |
| template<typename EffectTy> | |
| bool | mlir::hasSingleEffect (Operation *op, Value value) |
| Returns "true" if op has only an effect of type EffectTy on value. | |
| template<typename ValueTy, typename EffectTy> | |
| bool | mlir::hasSingleEffect (Operation *op, ValueTy value) |
| Returns "true" if op has only an effect of type EffectTy on value of type ValueTy. | |
| template<typename... EffectTys> | |
| bool | mlir::hasEffect (Operation *op) |
| Returns "true" if op has an effect of type EffectTy. | |
| template<typename... EffectTys> | |
| bool | mlir::hasEffect (Operation *op, Value value) |
| Returns "true" if op has an effect of type EffectTy on value. | |
| template<typename ValueTy, typename... EffectTys> | |
| bool | mlir::hasEffect (Operation *op, ValueTy value) |
| Returns "true" if op has an effect of type EffectTy on value of type ValueTy. | |
| template<typename... EffectTys> | |
| bool | mlir::mightHaveEffect (Operation *op) |
| Returns "true" if op might have an effect of type EffectTy. | |
| template<typename... EffectTys> | |
| bool | mlir::mightHaveEffect (Operation *op, Value value) |
| Returns "true" if op might have an effect of type EffectTy on value. | |
| template<typename ValueTy, typename... EffectTys> | |
| bool | mlir::mightHaveEffect (Operation *op, ValueTy value) |
| Returns "true" if op might have an effect of type EffectTy on value of type ValueTy. | |
| bool | mlir::isOpTriviallyDead (Operation *op) |
| Return true if the given operation is unused, and has no side effects on memory that prevent erasing. | |
| bool | mlir::wouldOpBeTriviallyDead (Operation *op) |
| Return true if the given operation would be dead if unused, and has no side effects on memory that would prevent erasing. | |
| bool | mlir::isMemoryEffectFree (Operation *op) |
| Returns true if the given operation is free of memory effects. | |
| std::optional< llvm::SmallVector< MemoryEffects::EffectInstance > > | mlir::getEffectsRecursively (Operation *rootOp) |
| Returns the side effects of an operation. | |
| bool | mlir::isSpeculatable (Operation *op) |
| Returns true if the given operation is speculatable, i.e. | |
| bool | mlir::isPure (Operation *op) |
| Returns true if the given operation is pure, i.e., is speculatable that does not touch memory. | |
Variables | |
| constexpr auto | mlir::Speculation::NotSpeculatable = Speculatability::NotSpeculatable |
| constexpr auto | mlir::Speculation::Speculatable = Speculatability::Speculatable |
| constexpr auto | mlir::Speculation::RecursivelySpeculatable |