| /llvm-project-15.0.7/mlir/unittests/Interfaces/ |
| H A D | ControlFlowInterfacesTest.cpp | 31 : public Op<MutuallyExclusiveRegionsOp, RegionBranchOpInterface::Trait> { 47 : public Op<LoopRegionsOp, RegionBranchOpInterface::Trait> { 70 : public Op<DoubleLoopRegionsOp, RegionBranchOpInterface::Trait> { 91 : public Op<SequentialRegionsOp, RegionBranchOpInterface::Trait> { 118 TEST(RegionBranchOpInterface, MutuallyExclusiveOps) { in TEST() argument 139 TEST(RegionBranchOpInterface, MutuallyExclusiveOps2) { in TEST() argument 160 TEST(RegionBranchOpInterface, NotMutuallyExclusiveOps) { in TEST() argument 181 TEST(RegionBranchOpInterface, NestedMutuallyExclusiveOps) { in TEST() argument 212 TEST(RegionBranchOpInterface, RecursiveRegions) { in TEST() argument 227 auto regionOp = cast<RegionBranchOpInterface>(testOp); in TEST() [all …]
|
| /llvm-project-15.0.7/mlir/lib/Interfaces/ |
| H A D | ControlFlowInterfaces.cpp | 97 auto regionInterface = cast<RegionBranchOpInterface>(op); in verifyTypesAlongAllEdges() 152 auto regionInterface = cast<RegionBranchOpInterface>(op); in verifyTypesAlongControlFlowEdges() 231 auto op = cast<RegionBranchOpInterface>(begin->getParentOp()); in isRegionReachable() 273 auto branchOp = a->getParentOfType<RegionBranchOpInterface>(); in insideMutuallyExclusiveRegions() 278 branchOp = branchOp->getParentOfType<RegionBranchOpInterface>(); in insideMutuallyExclusiveRegions() 308 bool RegionBranchOpInterface::isRepetitiveRegion(unsigned index) { in isRepetitiveRegion() 313 void RegionBranchOpInterface::getSuccessorRegions( in getSuccessorRegions() 337 if (auto branchOp = dyn_cast<RegionBranchOpInterface>(op)) in getEnclosingRepetitiveRegion() 348 if (auto branchOp = dyn_cast<RegionBranchOpInterface>(op)) in getEnclosingRepetitiveRegion()
|
| /llvm-project-15.0.7/mlir/include/mlir/Transforms/ |
| H A D | ControlFlowSinkUtils.h | 19 class RegionBranchOpInterface; variable 73 void getSinglyExecutedRegionsToSink(RegionBranchOpInterface branch,
|
| H A D | Passes.td | 44 `RegionBranchOpInterface` by moving dominating operations whose only uses
|
| /llvm-project-15.0.7/mlir/include/mlir/Analysis/DataFlow/ |
| H A D | DeadCodeAnalysis.h | 27 class RegionBranchOpInterface; variable 216 void visitRegionBranchOperation(RegionBranchOpInterface branch); 221 void visitRegionTerminator(Operation *op, RegionBranchOpInterface branch);
|
| H A D | DenseAnalysis.h | 22 class RegionBranchOpInterface; variable 121 RegionBranchOpInterface branch,
|
| H A D | SparseAnalysis.h | 257 void visitRegionSuccessors(ProgramPoint point, RegionBranchOpInterface branch,
|
| /llvm-project-15.0.7/mlir/lib/Analysis/DataFlow/ |
| H A D | DenseAnalysis.cpp | 57 if (auto branch = dyn_cast<RegionBranchOpInterface>(op)) in visitOperation() 119 if (auto branch = dyn_cast<RegionBranchOpInterface>(block->getParentOp())) in visitBlock() 142 ProgramPoint point, RegionBranchOpInterface branch, in visitRegionBranchOperation()
|
| H A D | DeadCodeAnalysis.cpp | 177 isa<RegionBranchOpInterface, CallableOpInterface>(op->getParentOp()) && in isRegionOrCallableReturn() 235 if (auto branch = dyn_cast<RegionBranchOpInterface>(op)) { in visit() 255 if (auto branch = dyn_cast<RegionBranchOpInterface>(op->getParentOp())) { in visit() 352 RegionBranchOpInterface branch) { in visitRegionBranchOperation() 377 RegionBranchOpInterface branch) { in visitRegionTerminator()
|
| H A D | SparseAnalysis.cpp | 102 if (auto branch = dyn_cast<RegionBranchOpInterface>(op)) { in visitOperation() 179 if (auto branch = dyn_cast<RegionBranchOpInterface>(block->getParentOp())) { in visitBlock() 224 ProgramPoint point, RegionBranchOpInterface branch, in visitRegionSuccessors()
|
| /llvm-project-15.0.7/mlir/lib/Dialect/Bufferization/Transforms/ |
| H A D | BufferDeallocation.cpp | 98 !dyn_cast<RegionBranchOpInterface>(operation)) { in validateSupportedControlFlow() 350 RegionBranchOpInterface regionInterface; in introduceBlockArgCopy() 352 !(regionInterface = dyn_cast<RegionBranchOpInterface>(parentOp))) in introduceBlockArgCopy() 399 auto regionInterface = cast<RegionBranchOpInterface>(operation); in introduceValueCopyForRegionResult() 420 RegionBranchOpInterface regionInterface, MutableArrayRef<Region> regions, in introduceClonesForRegionSuccessors()
|
| H A D | BufferUtils.cpp | 110 RegionBranchOpInterface regionInterface; in isLoop() 111 if (!(regionInterface = dyn_cast<RegionBranchOpInterface>(op))) in isLoop()
|
| H A D | BufferOptimizations.cpp | 28 return isa<LoopLikeOpInterface, RegionBranchOpInterface>(op); in isKnownControlFlowInterface()
|
| /llvm-project-15.0.7/mlir/lib/Analysis/AliasAnalysis/ |
| H A D | LocalAliasAnalysis.cpp | 36 static void collectUnderlyingAddressValues(RegionBranchOpInterface branch, in collectUnderlyingAddressValues() 123 if (auto branch = dyn_cast<RegionBranchOpInterface>(op)) { in collectUnderlyingAddressValues() 166 if (auto branch = dyn_cast<RegionBranchOpInterface>(op)) { in collectUnderlyingAddressValues()
|
| /llvm-project-15.0.7/mlir/lib/Transforms/ |
| H A D | ControlFlowSink.cpp | 35 getOperation()->walk([&](RegionBranchOpInterface branch) { in runOnOperation()
|
| /llvm-project-15.0.7/mlir/include/mlir/Interfaces/ |
| H A D | ControlFlowInterfaces.td | 115 // RegionBranchOpInterface 118 def RegionBranchOpInterface : OpInterface<"RegionBranchOpInterface"> { 229 in the presence of a parent RegionBranchOpInterface implementation. It
|
| H A D | ControlFlowInterfaces.h | 21 class RegionBranchOpInterface; variable
|
| H A D | InferIntRangeInterface.td | 35 When called on an op that also implements the RegionBranchOpInterface
|
| /llvm-project-15.0.7/mlir/lib/Analysis/ |
| H A D | BufferViewFlowAnalysis.cpp | 81 op->walk([&](RegionBranchOpInterface regionInterface) { in build()
|
| /llvm-project-15.0.7/mlir/lib/Transforms/Utils/ |
| H A D | ControlFlowSinkUtils.cpp | 135 void mlir::getSinglyExecutedRegionsToSink(RegionBranchOpInterface branch, in getSinglyExecutedRegionsToSink()
|
| /llvm-project-15.0.7/mlir/docs/ |
| H A D | BufferDeallocationInternals.md | 20 `RegionBranchOpInterface` to model inter-region control flow. 22 scope of nested regions within `RegionBranchOpInterface`-based operations), 365 parent ops that implement the `RegionBranchOpInterface`. This can be the case if 378 the `RegionBranchOpInterface` to determine predecessors in order to infer the 402 `RegionBranchOpInterface`. Consider the following example that uses an “scf.if” 423 `RegionBranchOpInterface`, allows us to infer that %2 is a non-critical alias of 444 (in this sample via scf.yield). Querying the `RegionBranchOpInterface` allows us
|
| /llvm-project-15.0.7/mlir/include/mlir/Dialect/Transform/IR/ |
| H A D | TransformOps.td | 21 [DeclareOpInterfaceMethods<RegionBranchOpInterface, 101 DeclareOpInterfaceMethods<RegionBranchOpInterface, [ 254 [DeclareOpInterfaceMethods<RegionBranchOpInterface,
|
| /llvm-project-15.0.7/mlir/lib/Dialect/Linalg/Analysis/ |
| H A D | DependenceAnalysis.cpp | 50 if (isa<RegionBranchOpInterface>(defOp)) in find()
|
| /llvm-project-15.0.7/mlir/include/mlir/Dialect/SCF/IR/ |
| H A D | SCFOps.td | 63 DeclareOpInterfaceMethods<RegionBranchOpInterface>]> { 123 DeclareOpInterfaceMethods<RegionBranchOpInterface>, 511 [DeclareOpInterfaceMethods<RegionBranchOpInterface, 774 [DeclareOpInterfaceMethods<RegionBranchOpInterface>,
|
| /llvm-project-15.0.7/mlir/include/mlir/Dialect/Linalg/IR/ |
| H A D | LinalgStructuredOps.td | 32 RegionBranchOpInterface,
|