Lines Matching refs:padOp
57 HoistingAnalysis(tensor::PadOp padOp, int numLoops);
102 LogicalResult dropNonIndexDependencies(tensor::PadOp padOp,
111 static bool isOnlyUsedAsInputOfLinalgOp(tensor::PadOp padOp) { in isOnlyUsedAsInputOfLinalgOp() argument
112 for (OpOperand &use : padOp.getResult().getUses()) { in isOnlyUsedAsInputOfLinalgOp()
115 LLVM_DEBUG(DBGS() << "Found a use of " << *(padOp) in isOnlyUsedAsInputOfLinalgOp()
130 getAtMostNEnclosingLoops(tensor::PadOp padOp, int nLevels, in getAtMostNEnclosingLoops() argument
132 AsmState state(padOp->getParentOfType<func::FuncOp>()); in getAtMostNEnclosingLoops()
135 Operation *nextEnclosingOp = padOp->getParentOp(); in getAtMostNEnclosingLoops()
168 HoistingAnalysis::HoistingAnalysis(tensor::PadOp padOp, int numLoops) { in HoistingAnalysis() argument
173 if (!isOnlyUsedAsInputOfLinalgOp(padOp)) in HoistingAnalysis()
178 getAtMostNEnclosingLoops(padOp, numLoops, reverseEnclosingLoops); in HoistingAnalysis()
201 auto sliceOp = padOp.getSource().getDefiningOp<tensor::ExtractSliceOp>(); in HoistingAnalysis()
214 Value paddingValue = padOp.getConstantPaddingValue(); in HoistingAnalysis()
224 getBackwardSlice(padOp.getOperation(), &backwardSlice, [&](Operation *op) { in HoistingAnalysis()
230 backwardSlice.insert(padOp.getOperation()); in HoistingAnalysis()
235 if (failed(dropNonIndexDependencies(padOp, sliceOp))) in HoistingAnalysis()
256 HoistingAnalysis::dropNonIndexDependencies(tensor::PadOp padOp, in dropNonIndexDependencies() argument
300 if (op == padOp || op == sliceOp) { in dropNonIndexDependencies()