MLIR  17.0.0git
Public Types | Public Member Functions | List of all members
mlir::AffineConstantExpr Class Reference

An integer constant appearing in affine expression. More...

#include "mlir/IR/AffineExpr.h"

+ Inheritance diagram for mlir::AffineConstantExpr:

Public Types

using ImplType = detail::AffineConstantExprStorage
- Public Types inherited from mlir::AffineExpr
using ImplType = detail::AffineExprStorage

Public Member Functions

 AffineConstantExpr (AffineExpr::ImplType *ptr=nullptr)
int64_t getValue () const
- Public Member Functions inherited from mlir::AffineExpr
constexpr AffineExpr ()
 AffineExpr (const ImplType *expr)
bool operator== (AffineExpr other) const
bool operator!= (AffineExpr other) const
bool operator== (int64_t v) const
bool operator!= (int64_t v) const
 operator bool () const
bool operator! () const
template<typename U >
constexpr bool isa () const
template<typename U >
dyn_cast () const
template<typename U >
dyn_cast_or_null () const
template<typename U >
cast () const
MLIRContextgetContext () const
AffineExprKind getKind () const
 Return the classification for this type. More...
void print (raw_ostream &os) const
void dump () const
bool isSymbolicOrConstant () const
 Returns true if this expression is made out of only symbols and constants, i.e., it does not involve dimensional identifiers. More...
bool isPureAffine () const
 Returns true if this is a pure affine expression, i.e., multiplication, floordiv, ceildiv, and mod is only allowed w.r.t constants. More...
int64_t getLargestKnownDivisor () const
 Returns the greatest known integral divisor of this affine expression. More...
bool isMultipleOf (int64_t factor) const
 Return true if the affine expression is a multiple of 'factor'. More...
bool isFunctionOfDim (unsigned position) const
 Return true if the affine expression involves AffineDimExpr position. More...
bool isFunctionOfSymbol (unsigned position) const
 Return true if the affine expression involves AffineSymbolExpr position. More...
void walk (std::function< void(AffineExpr)> callback) const
 Walk all of the AffineExpr's in this expression in postorder. More...
AffineExpr replaceDimsAndSymbols (ArrayRef< AffineExpr > dimReplacements, ArrayRef< AffineExpr > symReplacements) const
 This method substitutes any uses of dimensions and symbols (e.g. More...
AffineExpr replaceDims (ArrayRef< AffineExpr > dimReplacements) const
 Dim-only version of replaceDimsAndSymbols. More...
AffineExpr replaceSymbols (ArrayRef< AffineExpr > symReplacements) const
 Symbol-only version of replaceDimsAndSymbols. More...
AffineExpr replace (AffineExpr expr, AffineExpr replacement) const
 Sparse replace method. More...
AffineExpr replace (const DenseMap< AffineExpr, AffineExpr > &map) const
 Sparse replace method. More...
AffineExpr shiftDims (unsigned numDims, unsigned shift, unsigned offset=0) const
 Replace dims[offset ... More...
AffineExpr shiftSymbols (unsigned numSymbols, unsigned shift, unsigned offset=0) const
 Replace symbols[offset ... More...
AffineExpr operator+ (int64_t v) const
AffineExpr operator+ (AffineExpr other) const
AffineExpr operator- () const
AffineExpr operator- (int64_t v) const
AffineExpr operator- (AffineExpr other) const
AffineExpr operator* (int64_t v) const
AffineExpr operator* (AffineExpr other) const
AffineExpr floorDiv (uint64_t v) const
AffineExpr floorDiv (AffineExpr other) const
AffineExpr ceilDiv (uint64_t v) const
AffineExpr ceilDiv (AffineExpr other) const
AffineExpr operator% (uint64_t v) const
AffineExpr operator% (AffineExpr other) const
AffineExpr compose (AffineMap map) const
 Compose with an AffineMap. More...
const void * getAsOpaquePointer () const
 Methods supporting C API. More...

Additional Inherited Members

- Static Public Member Functions inherited from mlir::AffineExpr
static AffineExpr getFromOpaquePointer (const void *pointer)
- Protected Attributes inherited from mlir::AffineExpr
ImplTypeexpr {nullptr}

Detailed Description

An integer constant appearing in affine expression.

Definition at line 232 of file AffineExpr.h.

Member Typedef Documentation

◆ ImplType

Definition at line 234 of file AffineExpr.h.

Constructor & Destructor Documentation

◆ AffineConstantExpr()

AffineConstantExpr::AffineConstantExpr ( AffineExpr::ImplType ptr = nullptr)

Definition at line 517 of file AffineExpr.cpp.

Member Function Documentation

◆ getValue()

int64_t AffineConstantExpr::getValue ( ) const

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