MLIR  20.0.0git
Macros | Functions
Shape.cpp File Reference
#include <utility>
#include "mlir/Dialect/Shape/IR/Shape.h"
#include "mlir/Dialect/Arith/IR/Arith.h"
#include "mlir/Dialect/Bufferization/IR/BufferizableOpInterface.h"
#include "mlir/Dialect/CommonFolders.h"
#include "mlir/Dialect/Tensor/IR/Tensor.h"
#include "mlir/Dialect/Traits.h"
#include "mlir/Dialect/UB/IR/UBOps.h"
#include "mlir/IR/Builders.h"
#include "mlir/IR/BuiltinTypes.h"
#include "mlir/IR/DialectImplementation.h"
#include "mlir/IR/Matchers.h"
#include "mlir/IR/PatternMatch.h"
#include "mlir/IR/TypeUtilities.h"
#include "mlir/Interfaces/FunctionImplementation.h"
#include "mlir/Transforms/InliningUtils.h"
#include "llvm/ADT/SetOperations.h"
#include "llvm/ADT/SmallString.h"
#include "llvm/ADT/TypeSwitch.h"
#include "llvm/Support/raw_ostream.h"
#include "mlir/Dialect/Shape/IR/ShapeOpsDialect.cpp.inc"
#include "ShapeCanonicalization.inc"
#include "mlir/Dialect/Shape/IR/ShapeOps.cpp.inc"
#include "mlir/Dialect/Shape/IR/ShapeOpsTypes.cpp.inc"

Go to the source code of this file.

Macros

#define GET_OP_LIST
 
#define GET_TYPEDEF_LIST
 
#define GET_OP_CLASSES
 
#define GET_TYPEDEF_CLASSES
 

Functions

static bool isErrorPropagationPossible (TypeRange operandTypes)
 
static LogicalResult verifySizeOrIndexOp (Operation *op)
 
static LogicalResult verifyShapeOrExtentTensorOp (Operation *op)
 
template<typename... Ty>
static bool eachHasOnlyOneOfTypes (TypeRange typeRange)
 
template<typename... Ty, typename... ranges>
static bool eachHasOnlyOneOfTypes (TypeRange l, ranges... rs)
 
static bool hasAtMostSingleNonScalar (ArrayRef< Attribute > attributes)
 

Macro Definition Documentation

◆ GET_OP_CLASSES

#define GET_OP_CLASSES

Definition at line 2024 of file Shape.cpp.

◆ GET_OP_LIST

#define GET_OP_LIST

◆ GET_TYPEDEF_CLASSES

#define GET_TYPEDEF_CLASSES

Definition at line 2027 of file Shape.cpp.

◆ GET_TYPEDEF_LIST

#define GET_TYPEDEF_LIST

Function Documentation

◆ eachHasOnlyOneOfTypes() [1/2]

template<typename... Ty, typename... ranges>
static bool eachHasOnlyOneOfTypes ( TypeRange  l,
ranges...  rs 
)
static

Definition at line 102 of file Shape.cpp.

References eachHasOnlyOneOfTypes().

◆ eachHasOnlyOneOfTypes() [2/2]

template<typename... Ty>
static bool eachHasOnlyOneOfTypes ( TypeRange  typeRange)
static

Definition at line 97 of file Shape.cpp.

Referenced by eachHasOnlyOneOfTypes().

◆ hasAtMostSingleNonScalar()

static bool hasAtMostSingleNonScalar ( ArrayRef< Attribute attributes)
static

Definition at line 962 of file Shape.cpp.

References getNumElements().

◆ isErrorPropagationPossible()

static bool isErrorPropagationPossible ( TypeRange  operandTypes)
static

Definition at line 67 of file Shape.cpp.

Referenced by verifyShapeOrExtentTensorOp(), and verifySizeOrIndexOp().

◆ verifyShapeOrExtentTensorOp()

static LogicalResult verifyShapeOrExtentTensorOp ( Operation op)
static

◆ verifySizeOrIndexOp()

static LogicalResult verifySizeOrIndexOp ( Operation op)
static