MLIR  20.0.0git
Public Member Functions | Static Public Member Functions | List of all members
mlir::InvocationBounds Class Reference

This class represents upper and lower bounds on the number of times a region of a RegionBranchOpInterface can be invoked. More...

#include "mlir/Interfaces/ControlFlowInterfaces.h"

Public Member Functions

 InvocationBounds (unsigned lb, std::optional< unsigned > ub)
 Create invocation bounds. More...
 
unsigned getLowerBound () const
 Return the lower bound. More...
 
std::optional< unsigned > getUpperBound () const
 Return the upper bound. More...
 

Static Public Member Functions

static InvocationBounds getUnknown ()
 Returns the unknown invocation bounds, i.e., there is no information on how many times a region may be invoked. More...
 

Detailed Description

This class represents upper and lower bounds on the number of times a region of a RegionBranchOpInterface can be invoked.

The lower bound is at least zero, but the upper bound may not be known.

Definition at line 258 of file ControlFlowInterfaces.h.

Constructor & Destructor Documentation

◆ InvocationBounds()

mlir::InvocationBounds::InvocationBounds ( unsigned  lb,
std::optional< unsigned >  ub 
)
inline

Create invocation bounds.

The lower bound must be at least 0 and only the upper bound can be unknown.

Definition at line 262 of file ControlFlowInterfaces.h.

Member Function Documentation

◆ getLowerBound()

unsigned mlir::InvocationBounds::getLowerBound ( ) const
inline

Return the lower bound.

Definition at line 268 of file ControlFlowInterfaces.h.

◆ getUnknown()

static InvocationBounds mlir::InvocationBounds::getUnknown ( )
inlinestatic

Returns the unknown invocation bounds, i.e., there is no information on how many times a region may be invoked.

Definition at line 275 of file ControlFlowInterfaces.h.

◆ getUpperBound()

std::optional<unsigned> mlir::InvocationBounds::getUpperBound ( ) const
inline

Return the upper bound.

Definition at line 271 of file ControlFlowInterfaces.h.

Referenced by mlir::getSinglyExecutedRegionsToSink().


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