|
MLIR 22.0.0git
|
#include "mlir/Dialect/PDL/IR/PDL.h"#include "mlir/Dialect/PDL/IR/PDLOps.h"#include "mlir/Dialect/PDL/IR/PDLTypes.h"#include "mlir/IR/BuiltinTypes.h"#include "mlir/Interfaces/InferTypeOpInterface.h"#include "llvm/ADT/TypeSwitch.h"#include <optional>#include "mlir/Dialect/PDL/IR/PDLOpsDialect.cpp.inc"#include "mlir/Dialect/PDL/IR/PDLOps.cpp.inc"Go to the source code of this file.
Macros | |
| #define | GET_OP_LIST |
| #define | GET_OP_CLASSES |
Functions | |
| static bool | hasBindingUse (Operation *op) |
| Returns true if the given operation is used by a "binding" pdl operation. | |
| static LogicalResult | verifyHasBindingUse (Operation *op) |
| Returns success if the given operation is not in the main matcher body or is used by a "binding" operation. | |
| static void | visit (Operation *op, DenseSet< Operation * > &visited) |
| Visits all the pdl.operand(s), pdl.result(s), and pdl.operation(s) connected to the given operation. | |
| static ParseResult | parseOperationOpAttributes (OpAsmParser &p, SmallVectorImpl< OpAsmParser::UnresolvedOperand > &attrOperands, ArrayAttr &attrNamesAttr) |
| static void | printOperationOpAttributes (OpAsmPrinter &p, OperationOp op, OperandRange attrArgs, ArrayAttr attrNames) |
| static LogicalResult | verifyResultTypesAreInferrable (OperationOp op, OperandRange resultTypes) |
| Verifies that the result types of this operation, defined within a pdl.rewrite, can be inferred. | |
| static ParseResult | parseRangeType (OpAsmParser &p, TypeRange argumentTypes, Type &resultType) |
| static void | printRangeType (OpAsmPrinter &p, RangeOp op, TypeRange argumentTypes, Type resultType) |
| static ParseResult | parseResultsValueType (OpAsmParser &p, IntegerAttr index, Type &resultType) |
| static void | printResultsValueType (OpAsmPrinter &p, ResultsOp op, IntegerAttr index, Type resultType) |
| #define GET_OP_LIST |
Returns true if the given operation is used by a "binding" pdl operation.
Definition at line 39 of file PDL.cpp.
References mlir::Operation::getUsers(), and hasBindingUse().
Referenced by hasBindingUse(), and verifyHasBindingUse().
|
static |
Definition at line 147 of file PDL.cpp.
References ArrayAttr(), mlir::Builder::getArrayAttr(), mlir::AsmParser::getBuilder(), mlir::AsmParser::parseAttribute(), mlir::AsmParser::parseCommaSeparatedList(), mlir::AsmParser::parseEqual(), mlir::OpAsmParser::parseOperand(), mlir::AsmParser::parseOptionalLBrace(), mlir::AsmParser::parseRBrace(), and success().
|
static |
Definition at line 408 of file PDL.cpp.
References mlir::pdl::getRangeElementTypeOrSelf(), mlir::AsmParser::parseColonType(), and success().
|
static |
Definition at line 452 of file PDL.cpp.
References mlir::AsmParser::getBuilder(), mlir::Builder::getType(), mlir::AsmParser::parseArrow(), mlir::AsmParser::parseType(), and success().
|
static |
Definition at line 171 of file PDL.cpp.
References ArrayAttr().
|
static |
|
static |
|
static |
Returns success if the given operation is not in the main matcher body or is used by a "binding" operation.
On failure, emits an error.
Definition at line 49 of file PDL.cpp.
References mlir::Operation::emitOpError(), mlir::Operation::getParentOp(), hasBindingUse(), and success().
|
static |
Verifies that the result types of this operation, defined within a pdl.rewrite, can be inferred.
Definition at line 184 of file PDL.cpp.
References mlir::Operation::getBlock(), mlir::Operation::isBeforeInBlock(), mlir::RegisteredOperationName::lookup(), and success().
Visits all the pdl.operand(s), pdl.result(s), and pdl.operation(s) connected to the given operation.
Definition at line 62 of file PDL.cpp.
References mlir::Operation::getParentOp(), mlir::Operation::getUsers(), result, and visit().
Referenced by mlir::impl::GpuAsyncRegionPassBase< DerivedT >::clonePass(), mlir::impl::GpuAsyncRegionPassBase< DerivedT >::getPassName(), and visit().