MLIR 22.0.0git
InferIntRangeInterface.h File Reference
#include "mlir/IR/OpDefinition.h"
#include <optional>
#include "mlir/Interfaces/InferIntRangeInterface.h.inc"

Go to the source code of this file.

Classes

class  mlir::ConstantIntRanges
 A set of arbitrary-precision integers representing bounds on a given integer value. More...
class  mlir::IntegerValueRange
 This lattice value represents the integer range of an SSA value. More...

Namespaces

namespace  mlir
 Include the generated interface declarations.
namespace  mlir::intrange
namespace  mlir::intrange::detail

Typedefs

using mlir::SetIntRangeFn
 The type of the setResultRanges callback provided to ops implementing InferIntRangeInterface.
using mlir::SetIntLatticeFn
 Similar to SetIntRangeFn, but operating on IntegerValueRange lattice values.
using mlir::GetIntRangeFn = function_ref<IntegerValueRange(Value)>
 Helper callback type to get the integer range of a value.

Functions

raw_ostreammlir::operator<< (raw_ostream &os, const ConstantIntRanges &range)
raw_ostreammlir::operator<< (raw_ostream &, const IntegerValueRange &)
SmallVector< IntegerValueRangemlir::getIntValueRanges (ArrayRef< OpFoldResult > values, GetIntRangeFn getIntRange, int32_t indexBitwidth)
 Helper function to collect the integer range values of an array of op fold results.
void mlir::intrange::detail::defaultInferResultRanges (InferIntRangeInterface interface, ArrayRef< IntegerValueRange > argRanges, SetIntLatticeFn setResultRanges)
 Default implementation of inferResultRanges which dispatches to the inferResultRangesFromOptional.
void mlir::intrange::detail::defaultInferResultRangesFromOptional (InferIntRangeInterface interface, ArrayRef< ConstantIntRanges > argRanges, SetIntRangeFn setResultRanges)
 Default implementation of inferResultRangesFromOptional which dispatches to the inferResultRanges.