|
MLIR 22.0.0git
|
#include "mlir/IR/OpDefinition.h"#include "mlir/IR/Operation.h"#include "llvm/ADT/PointerUnion.h"#include "llvm/ADT/STLExtras.h"#include "llvm/Support/raw_ostream.h"#include "mlir/Interfaces/ControlFlowInterfaces.h.inc"Go to the source code of this file.
Classes | |
| class | mlir::SuccessorOperands |
| This class models how operands are forwarded to block arguments in control flow. More... | |
| class | mlir::RegionSuccessor |
| This class represents a successor of a region. More... | |
| class | mlir::RegionBranchPoint |
| This class represents a point being branched from in the methods of the RegionBranchOpInterface. More... | |
| class | mlir::InvocationBounds |
| This class represents upper and lower bounds on the number of times a region of a RegionBranchOpInterface can be invoked. More... | |
| struct | mlir::OpTrait::ReturnLike< ConcreteType > |
| This trait indicates that a terminator operation is "return-like". More... | |
Namespaces | |
| namespace | mlir |
| Include the generated interface declarations. | |
| namespace | mlir::detail |
| AttrTypeReplacer. | |
| namespace | mlir::OpTrait |
Functions | |
| std::optional< BlockArgument > | mlir::detail::getBranchSuccessorArgument (const SuccessorOperands &operands, unsigned operandIndex, Block *successor) |
| Return the BlockArgument corresponding to operand operandIndex in some successor if operandIndex is within the range of operands, or std::nullopt if operandIndex isn't a successor operand index. | |
| LogicalResult | mlir::detail::verifyBranchSuccessorOperands (Operation *op, unsigned succNo, const SuccessorOperands &operands) |
| Verify that the given operands match those of the given successor block. | |
| LogicalResult | mlir::detail::verifyBranchWeights (Operation *op) |
| Verify that the branch weights attached to an operation implementing WeightedBranchOpInterface are correct. | |
| LogicalResult | mlir::detail::verifyRegionBranchWeights (Operation *op) |
| Verify that the region weights attached to an operation implementing WeightedRegiobBranchOpInterface are correct. | |
| LogicalResult | mlir::detail::verifyTypesAlongControlFlowEdges (Operation *op) |
| Verify that types match along control flow edges described the given op. | |
| bool | mlir::operator!= (RegionBranchPoint lhs, RegionBranchPoint rhs) |
| llvm::raw_ostream & | mlir::operator<< (llvm::raw_ostream &os, RegionBranchPoint point) |
| llvm::raw_ostream & | mlir::operator<< (llvm::raw_ostream &os, RegionSuccessor successor) |
| bool | mlir::insideMutuallyExclusiveRegions (Operation *a, Operation *b) |
| Return true if a and b are in mutually exclusive regions as per RegionBranchOpInterface. | |
| Region * | mlir::getEnclosingRepetitiveRegion (Operation *op) |
| Return the first enclosing region of the given op that may be executed repetitively as per RegionBranchOpInterface or nullptr if no such region exists. | |
| Region * | mlir::getEnclosingRepetitiveRegion (Value value) |
| Return the first enclosing region of the given Value that may be executed repetitively as per RegionBranchOpInterface or nullptr if no such region exists. | |