| /llvm-project-15.0.7/mlir/include/mlir/IR/ |
| H A D | SymbolTable.h | 102 static Operation *getNearestSymbolTable(Operation *from); 116 static Operation *lookupSymbolIn(Operation *op, StringAttr symbol); 117 static Operation *lookupSymbolIn(Operation *op, StringRef symbol) { in lookupSymbolIn() 120 static Operation *lookupSymbolIn(Operation *op, SymbolRefAttr symbol); 132 static Operation *lookupNearestSymbolFrom(Operation *from, 157 Operation *owner; 200 static bool symbolKnownUseEmpty(Operation *symbol, Operation *from); 246 Operation *lookupSymbolIn(Operation *symbolTableOp, StringAttr symbol); 264 Operation *lookupNearestSymbolFrom(Operation *from, StringAttr symbol); 299 ArrayRef<Operation *> getUsers(Operation *symbol) const { in getUsers() [all …]
|
| H A D | OpDefinition.h | 91 Operation *getOperation() { return state; } in getOperation() 216 Operation *state; 313 Operation *getOperation() { in getOperation() 874 enable_if_single_region<OpT> insert(Operation *insertPt, Operation *op) { in insert() 899 return Operation::create(state); in buildTerminator() 966 enable_if_single_region<OpT> insert(Operation *insertPt, Operation *op) { in insert() 1570 verifyTrait(Operation *op) { 1575 verifyTrait(Operation *) { 1591 verifyRegionTrait(Operation *op) { 1597 verifyRegionTrait(Operation *) { [all …]
|
| H A D | Visitors.h | 23 class Operation; variable 77 explicit WalkStage(Operation *op); 125 void walk(Operation *op, function_ref<void(Operation *)> callback, 140 WalkResult walk(Operation *op, function_ref<WalkResult(Operation *)> callback, 169 walk(Operation *op, FuncTy &&callback) { in walk() 192 walk(Operation *op, FuncTy &&callback) { in walk() 193 auto wrapperFn = [&](Operation *op) { in walk() 227 walk(Operation *op, FuncTy &&callback) { in walk() 228 auto wrapperFn = [&](Operation *op) { in walk() 243 void walk(Operation *op, [all …]
|
| H A D | Operation.h | 28 class alignas(8) Operation final 180 Operation *op = this; in getParentWithTrait() 433 friend Operation; variable 699 ~Operation(); 844 struct CastInfo<::mlir::Operation *, ::mlir::Operation *> 847 ::mlir::Operation *, ::mlir::Operation *, 848 CastInfo<::mlir::Operation *, ::mlir::Operation *>> { 850 static ::mlir::Operation *doCast(::mlir::Operation *op) { return op; } 853 struct CastInfo<const ::mlir::Operation *, const ::mlir::Operation *> 855 const ::mlir::Operation *, const ::mlir::Operation *, [all …]
|
| /llvm-project-15.0.7/mlir/lib/Analysis/ |
| H A D | SliceAnalysis.cpp | 40 for (Operation &blockOp : block) in getForwardSliceImpl() 52 void mlir::getForwardSlice(Operation *op, SetVector<Operation *> *forwardSlice, in getForwardSlice() 133 SetVector<Operation *> mlir::getSlice(Operation *op, in getSlice() 136 SetVector<Operation *> slice; in getSlice() 168 DenseSet<Operation *> seen; 174 std::vector<Operation *> ops; in dfsPostorder() 194 SetVector<Operation *> 208 SetVector<Operation *> res; in topologicalSort() 223 SetVector<Operation *> slice; in dependsOnCarriedVals() 234 for (Operation *op : slice) in dependsOnCarriedVals() [all …]
|
| H A D | Liveness.cpp | 40 for (Operation *useOp : value.getUsers()) { in BlockInfoBuilder() 63 for (Operation &operation : *block) in BlockInfoBuilder() 70 block->walk([&](Operation *op) { in BlockInfoBuilder() 265 DenseMap<Operation *, size_t> operationIds; in print() 271 for (Operation &operation : *block) { in print() 311 for (Operation &op : *block) { in print() 320 llvm::sort(liveOperations, [&](Operation *left, Operation *right) { in print() 333 for (Operation &op : *block) { in print() 382 Operation *endOperation = startOperation; in getEndOperation() 404 Operation *endOfLiveRange = nullptr; in currentlyLiveValues() [all …]
|
| /llvm-project-15.0.7/mlir/lib/IR/ |
| H A D | Operation.cpp | 27 Operation *Operation::create(const OperationState &state) { in create() 81 Operation *op = ::new (rawMem) Operation( in create() 134 Operation::~Operation() { in ~Operation() 172 bool Operation::isProperAncestor(Operation *other) { in isProperAncestor() 261 bool Operation::isBeforeInBlock(Operation *other) { in isBeforeInBlock() 430 void Operation::moveBefore(Operation *existingOp) { in moveBefore() 444 void Operation::moveAfter(Operation *existingOp) { in moveAfter() 522 Operation::CloneOptions Operation::CloneOptions::all() { in all() 544 Operation *Operation::cloneWithoutRegions() { in cloneWithoutRegions() 554 Operation *Operation::clone(BlockAndValueMapping &mapper, in clone() [all …]
|
| H A D | SymbolTable.cpp | 264 Operation *SymbolTable::getNearestSymbolTable(Operation *from) { in getNearestSymbolTable() 312 Operation *SymbolTable::lookupSymbolIn(Operation *symbolTableOp, in lookupSymbolIn() 327 Operation *SymbolTable::lookupSymbolIn(Operation *symbolTableOp, in lookupSymbolIn() 340 function_ref<Operation *(Operation *, StringAttr)> lookupSymbolFn) { in lookupSymbolInImpl() argument 382 Operation *SymbolTable::lookupNearestSymbolFrom(Operation *from, in lookupNearestSymbolFrom() 387 Operation *SymbolTable::lookupNearestSymbolFrom(Operation *from, in lookupNearestSymbolFrom() 641 SetVector<Operation *, SmallVector<Operation *, 4>, in collectSymbolScopes() 784 auto SymbolTable::getSymbolUses(Operation *symbol, Operation *from) in getSymbolUses() 919 Operation *SymbolTableCollection::lookupSymbolIn(Operation *symbolTableOp, in lookupSymbolIn() 923 Operation *SymbolTableCollection::lookupSymbolIn(Operation *symbolTableOp, in lookupSymbolIn() [all …]
|
| /llvm-project-15.0.7/mlir/include/mlir/Analysis/ |
| H A D | SliceAnalysis.h | 21 class Operation; variable 28 using TransitiveFilter = llvm::function_ref<bool(Operation *)>; 71 void getForwardSlice(Operation *op, SetVector<Operation *> *forwardSlice, 76 void getForwardSlice(Value root, SetVector<Operation *> *forwardSlice, 113 void getBackwardSlice(Operation *op, SetVector<Operation *> *backwardSlice, 118 void getBackwardSlice(Value root, SetVector<Operation *> *backwardSlice, 198 SetVector<Operation *> 199 getSlice(Operation *op, 206 SetVector<Operation *> topologicalSort(const SetVector<Operation *> &toSort); 237 SmallVectorImpl<Operation *> &combinerOps);
|
| /llvm-project-15.0.7/mlir/lib/Transforms/ |
| H A D | CSE.cpp | 32 const_cast<Operation *>(opC), in getHashValue() 37 static bool isEqual(const Operation *lhsC, const Operation *rhsC) { in isEqual() 38 auto *lhs = const_cast<Operation *>(lhsC); in isEqual() 46 const_cast<Operation *>(lhsC), const_cast<Operation *>(rhsC), in isEqual() 60 llvm::ScopedHashTableVal<Operation *, Operation *>>; 61 using ScopedMapTy = llvm::ScopedHashTable<Operation *, Operation *, 70 DenseMap<Operation *, std::pair<Operation *, MemoryEffects::Effect *>>; 102 bool hasOtherSideEffectingOpInBetween(Operation *fromOp, Operation *toOp); 105 std::vector<Operation *> opsToErase; 145 bool CSE::hasOtherSideEffectingOpInBetween(Operation *fromOp, Operation *toOp) { in hasOtherSideEffectingOpInBetween() [all …]
|
| H A D | SymbolDCE.cpp | 27 LogicalResult computeLiveness(Operation *symbolTableOp, 30 DenseSet<Operation *> &liveSymbols); 35 Operation *symbolTableOp = getOperation(); in runOnOperation() 53 DenseSet<Operation *> liveSymbols; in runOnOperation() 61 symbolTableOp->walk([&](Operation *nestedSymbolTable) { in runOnOperation() 65 for (Operation &op : llvm::make_early_inc_range(block)) { in runOnOperation() 83 SmallVector<Operation *, 16> worklist; in computeLiveness() 89 for (Operation &op : block) { in computeLiveness() 105 Operation *op = worklist.pop_back_val(); in computeLiveness() 125 SmallVector<Operation *, 4> resolvedSymbols; in computeLiveness() [all …]
|
| /llvm-project-15.0.7/mlir/lib/Dialect/Transform/Transforms/ |
| H A D | CheckUses.cpp | 80 root->walk([&](Operation *op) { in TransformOpMemFreeAnalysis() 122 SmallVector<Operation *> deleters; 136 Operation *valueSource = in isUseLive() 151 SmallVector<Operation *> ancestors; in isUseLive() 152 Operation *ancestor = operand.getOwner(); in isUseLive() 164 for (Operation *ancestor : ancestors) { in isUseLive() 227 isFreedBetween(Value value, Operation *first, Operation *last, in isFreedBetween() 228 llvm::function_ref<Operation *(Operation *)> getNext) const { in isFreedBetween() 286 for (Operation &op : *block) { in isMaybeFreedOnPaths() 325 root->walk([&](Operation *child) { in collectFreedValues() [all …]
|
| /llvm-project-15.0.7/mlir/lib/Transforms/Utils/ |
| H A D | GreedyPatternRewriteDriver.cpp | 46 virtual void addToWorklist(Operation *op); 49 Operation *popFromWorklist(); 52 void removeFromWorklist(Operation *op); 75 void eraseOp(Operation *op) override; 89 std::vector<Operation *> worklist; 90 DenseMap<Operation *, unsigned> worklistMap; 154 region.walk([&](Operation *op) { in simplify() 345 op->walk([this](Operation *operation) { in notifyOperationRemoved() 524 void addToWorklist(Operation *op) override { in addToWorklist() 582 for (Operation *op : ops) in simplifyLocally() [all …]
|
| H A D | ControlFlowSinkUtils.cpp | 37 function_ref<void(Operation *, Region *)> moveIntoRegion, in Sinker() argument 50 bool allUsersDominatedBy(Operation *op, Region *region); 57 void tryToSinkPredecessors(Operation *user, Region *region, 58 std::vector<Operation *> &stack); 67 function_ref<void(Operation *, Region *)> moveIntoRegion; 78 return llvm::all_of(op->getUsers(), [&](Operation *user) { in allUsersDominatedBy() 89 Operation *op = value.getDefiningOp(); in tryToSinkPredecessors() 107 std::vector<Operation *> stack; in sinkRegion() 108 for (Operation &op : region->getOps()) in sinkRegion() 114 Operation *op = stack.back(); in sinkRegion() [all …]
|
| /llvm-project-15.0.7/mlir/include/mlir/Transforms/ |
| H A D | InliningUtils.h | 27 class Operation; variable 56 virtual bool isLegalToInline(Operation *call, Operation *callable, in isLegalToInline() 81 virtual bool isLegalToInline(Operation *op, Region *dest, bool wouldBeCloned, in isLegalToInline() 90 virtual bool shouldAnalyzeRecursively(Operation *op) const { return true; } in shouldAnalyzeRecursively() 103 virtual void handleTerminator(Operation *op, Block *newDest) const { in handleTerminator() 116 virtual void handleTerminator(Operation *op, in handleTerminator() 170 virtual bool isLegalToInline(Operation *call, Operation *callable, 176 virtual bool shouldAnalyzeRecursively(Operation *op) const; 182 virtual void handleTerminator(Operation *op, Block *newDest) const; 183 virtual void handleTerminator(Operation *op, [all …]
|
| H A D | FoldUtils.h | 23 class Operation; variable 43 tryToFold(Operation *op, 45 function_ref<void(Operation *)> preReplaceAction = nullptr, 56 bool insertKnownConstant(Operation *op, Attribute constValue = {}); 63 void notifyRemoval(Operation *op); 77 Operation *op = Operation::create(state); in create() 125 DenseMap<std::tuple<Dialect *, Attribute, Type>, Operation *>; 129 bool isFolderOwnedConstant(Operation *op) const; 140 processFoldResults(OpBuilder &builder, Operation *op, 147 Operation *tryGetOrCreateConstant(ConstantMap &uniquedConstants, [all …]
|
| /llvm-project-15.0.7/mlir/lib/Dialect/Async/Transforms/ |
| H A D | AsyncRuntimeRefCountingOpt.cpp | 35 Value value, llvm::SmallDenseMap<Operation *, Operation *> &cancellable); 41 Value value, llvm::SmallDenseMap<Operation *, Operation *> &cancellable) { in optimizeReferenceCounting() argument 62 llvm::SmallVector<Operation *, 4> users; in optimizeReferenceCounting() 67 auto updateBlockUsersInfo = [&](Operation *user) { in optimizeReferenceCounting() 77 for (Operation *user : value.getUsers()) { in optimizeReferenceCounting() 89 auto isBeforeInBlock = [](Operation *a, Operation *b) -> bool { in optimizeReferenceCounting() 94 llvm::sort(info.users, [&](Operation *a, Operation *b) -> bool { in optimizeReferenceCounting() 130 Operation *firstFunctionCallUser = nullptr; in optimizeReferenceCounting() 133 for (Operation *user : info.users) { in optimizeReferenceCounting() 182 Operation *op = getOperation(); in runOnOperation() [all …]
|
| /llvm-project-15.0.7/mlir/include/mlir/Dialect/Affine/Analysis/ |
| H A D | Utils.h | 33 class Operation; variable 39 void getLoopIVs(Operation &op, SmallVectorImpl<AffineForOp> *loops); 44 void getEnclosingAffineForAndIfOps(Operation &op, 49 unsigned getNestingDepth(Operation *op); 184 void getComputationSliceState(Operation *depSourceOp, Operation *depSinkOp, 214 computeSliceUnion(ArrayRef<Operation *> opsA, ArrayRef<Operation *> opsB, 228 AffineForOp insertBackwardComputationSlice(Operation *srcOpInst, 229 Operation *dstOpInst, 282 LogicalResult compute(Operation *op, unsigned loopDepth, 365 unsigned getNumCommonSurroundingLoops(Operation &a, Operation &b); [all …]
|
| /llvm-project-15.0.7/mlir/lib/Dialect/Affine/Transforms/ |
| H A D | AffineLoopInvariantCodeMotion.cpp | 55 SmallPtrSetImpl<Operation *> &opsWithUsers, 56 SmallPtrSetImpl<Operation *> &opsToHoist); 59 SmallPtrSetImpl<Operation *> &opsToHoist); 69 SmallPtrSetImpl<Operation *> &opsWithUsers, in isOpLoopInvariant() 70 SmallPtrSetImpl<Operation *> &opsToHoist) { in isOpLoopInvariant() 162 SmallPtrSetImpl<Operation *> &opsWithUsers, in areAllOpsInTheBlockListInvariant() 163 SmallPtrSetImpl<Operation *> &opsToHoist) { in areAllOpsInTheBlockListInvariant() 177 bool checkInvarianceOfNestedIfOps(Operation *op, Value indVar, in checkInvarianceOfNestedIfOps() 205 SmallPtrSet<Operation *, 8> opsToHoist; in runOnAffineForOp() 206 SmallVector<Operation *, 8> opsToMove; in runOnAffineForOp() [all …]
|
| /llvm-project-15.0.7/mlir/include/mlir/Analysis/DataFlow/ |
| H A D | DeadCodeAnalysis.h | 120 ArrayRef<Operation *> getKnownPredecessors() const { in getKnownPredecessors() 125 ValueRange getSuccessorInputs(Operation *predecessor) const { in getSuccessorInputs() 130 ChangeResult join(Operation *predecessor); 133 ChangeResult join(Operation *predecessor, ValueRange inputs); 141 SetVector<Operation *, SmallVector<Operation *, 4>, 142 SmallPtrSet<Operation *, 4>> 146 DenseMap<Operation *, ValueRange> successorInputs; 191 LogicalResult initialize(Operation *top) override; 201 void initializeSymbolCallables(Operation *top); 204 LogicalResult initializeRecursively(Operation *op); [all …]
|
| /llvm-project-15.0.7/libc/utils/MPFRWrapper/ |
| H A D | MPFRUtils.cpp | 478 case Operation::Abs: in unary_operation() 480 case Operation::Ceil: in unary_operation() 482 case Operation::Cos: in unary_operation() 484 case Operation::Exp: in unary_operation() 486 case Operation::Exp2: in unary_operation() 492 case Operation::Log: in unary_operation() 494 case Operation::Log2: in unary_operation() 508 case Operation::Sin: in unary_operation() 510 case Operation::Sqrt: in unary_operation() 512 case Operation::Tan: in unary_operation() [all …]
|
| /llvm-project-15.0.7/mlir/lib/Dialect/Affine/Utils/ |
| H A D | LoopFusionUtils.cpp | 41 opA->walk([&](Operation *op) { in getLoadAndStoreMemRefAccesses() 67 static Operation *getFirstDependentOpInRange(Operation *opA, Operation *opB) { in getFirstDependentOpInRange() 76 Operation *firstDepOp = nullptr; in getFirstDependentOpInRange() 79 Operation *opX = &(*it); in getFirstDependentOpInRange() 80 opX->walk([&](Operation *op) { in getFirstDependentOpInRange() 93 static Operation *getLastDependentOpInRange(Operation *opA, Operation *opB) { in getLastDependentOpInRange() 104 Operation *lastDepOp = nullptr; in getLastDependentOpInRange() 107 Operation *opX = &(*it); in getLastDependentOpInRange() 651 ArrayRef<Operation *> srcOps, ArrayRef<Operation *> dstOps, in gatherProducerConsumerMemrefs() 655 for (Operation *op : srcOps) in gatherProducerConsumerMemrefs() [all …]
|
| /llvm-project-15.0.7/mlir/lib/Dialect/Tensor/Transforms/ |
| H A D | BufferizableOpInterfaceImpl.cpp | 30 bool bufferizesToMemoryRead(Operation *op, OpOperand &opOperand, in bufferizesToMemoryRead() 35 bool bufferizesToMemoryWrite(Operation *op, OpOperand &opOperand, in bufferizesToMemoryWrite() 45 BufferRelation bufferRelation(Operation *op, OpResult opResult, in bufferRelation() 50 LogicalResult bufferize(Operation *op, RewriterBase &rewriter, in bufferize() 105 BufferRelation bufferRelation(Operation *op, OpResult opResult, in bufferRelation() 110 LogicalResult bufferize(Operation *op, RewriterBase &rewriter, in bufferize() 196 LogicalResult bufferize(Operation *op, RewriterBase &rewriter, in bufferize() 529 getAliasingOpOperand(Operation *op, OpResult opResult, in getAliasingOpOperand() 591 Operation *readingOp = uRead->getOwner(); in isNotConflictingInsertSliceLikeOp() 691 bool isNotConflicting(Operation *op, OpOperand *uRead, in isNotConflicting() [all …]
|
| /llvm-project-15.0.7/mlir/include/mlir/Dialect/Transform/IR/ |
| H A D | TransformInterfaces.h | 255 TransformState(Region ®ion, Operation *root, 260 Operation *getTopLevel() const; 383 LogicalResult replacePayloadOp(Operation *op, Operation *replacement); 447 Mappings &getMapping(Operation *operation) { in getMapping() 480 function_ref<Operation *(Operation *)> callback); 512 Operation *topLevel; 557 SmallVector<Operation *> operations; 800 for (Operation *target : targets) { in applyTransformToEach() 859 ArrayRef<Operation *> targets = in apply() 867 SmallVector<Operation *> empty; in apply() [all …]
|
| /llvm-project-15.0.7/mlir/lib/Dialect/SparseTensor/Transforms/ |
| H A D | BufferizableOpInterfaceImpl.cpp | 32 bool bufferizesToAllocation(Operation *op, OpResult opResult) const { in bufferizesToAllocation() 38 bool bufferizesToMemoryRead(Operation *op, OpOperand &opOperand, in bufferizesToMemoryRead() 43 bool bufferizesToMemoryWrite(Operation *op, OpOperand &opOperand, in bufferizesToMemoryWrite() 48 SmallVector<OpResult> getAliasingOpResult(Operation *op, OpOperand &opOperand, in getAliasingOpResult() 53 bool isWritable(Operation *op, Value value, in isWritable() 62 bool bufferizesToMemoryRead(Operation *op, OpOperand &opOperand, in bufferizesToMemoryRead() 67 bool bufferizesToMemoryWrite(Operation *op, OpOperand &opOperand, in bufferizesToMemoryWrite() 72 SmallVector<OpResult> getAliasingOpResult(Operation *op, OpOperand &opOperand, in getAliasingOpResult() 77 BufferRelation bufferRelation(Operation *op, OpResult opResult, in bufferRelation() 86 bool isMemoryWrite(Operation *op, OpResult opResult, in isMemoryWrite() [all …]
|