Lines Matching refs:opOperand

77 static void setInPlaceOpOperand(OpOperand &opOperand, bool inPlace) {  in setInPlaceOpOperand()  argument
78 Operation *op = opOperand.getOwner(); in setInPlaceOpOperand()
87 for (OpOperand &opOperand : op->getOpOperands()) in setInPlaceOpOperand()
88 if (opOperand.get().getType().isa<TensorType>()) in setInPlaceOpOperand()
89 inPlaceVector[opOperand.getOperandNumber()] = "false"; in setInPlaceOpOperand()
92 inPlaceVector[opOperand.getOperandNumber()] = inPlace ? "true" : "false"; in setInPlaceOpOperand()
198 for (OpOperand &opOperand : bufferizableOp->getOpOperands()) { in OneShotAnalysisState()
199 if (opOperand.get().getType().isa<TensorType>()) in OneShotAnalysisState()
200 if (bufferizableOp.mustBufferizeInPlace(opOperand, *this)) { in OneShotAnalysisState()
202 bufferizableOp.getAliasingOpResult(opOperand, *this)) in OneShotAnalysisState()
203 aliasInfo.unionAliasSets(opOperand.get(), opResult); in OneShotAnalysisState()
204 aliasInfo.markInPlace(opOperand); in OneShotAnalysisState()
211 bool OneShotAnalysisState::isInPlace(OpOperand &opOperand) const { in isInPlace()
212 return aliasInfo.isInPlace(opOperand); in isInPlace()
291 bool OneShotAnalysisState::hasUndefinedContents(OpOperand *opOperand) const { in hasUndefinedContents()
292 return undefinedTensorUses.contains(opOperand); in hasUndefinedContents()
329 static bool isInplaceMemoryWrite(OpOperand &opOperand, in isInplaceMemoryWrite() argument
333 if (!state.bufferizesToMemoryWrite(opOperand)) in isInplaceMemoryWrite()
336 return aliasInfo.isInPlace(opOperand); in isInplaceMemoryWrite()
676 for (OpOperand *opOperand : aliasingOpOperands) in hasPrecedingAliasingNonWritableTensor()
677 if (aliasInfo.isInPlace(*opOperand) || currentOpOperand == opOperand) in hasPrecedingAliasingNonWritableTensor()
678 worklist.push_back(opOperand->get()); in hasPrecedingAliasingNonWritableTensor()
761 for (OpOperand &opOperand : op->getOpOperands()) in inPlaceAnalysis()
762 if (opOperand.get().getType().isa<TensorType>()) in inPlaceAnalysis()
764 if (failed(bufferizableInPlaceAnalysisImpl(opOperand, aliasInfo, in inPlaceAnalysis()
804 for (OpOperand *opOperand : in equivalenceAnalysis()
806 if (state.isInPlace(*opOperand)) in equivalenceAnalysis()
809 aliasInfo.unionEquivalenceClasses(opResult, opOperand->get()); in equivalenceAnalysis()
838 for (OpOperand &opOperand : op->getOpOperands()) in checkAliasInfoConsistency()
839 if (opOperand.get().getType().isa<TensorType>()) { in checkAliasInfoConsistency()
841 opOperand, domInfo, state, aliasInfo, in checkAliasInfoConsistency()
865 for (OpOperand &opOperand : op->getOpOperands()) in annotateOpsWithBufferizationMarkers()
866 if (opOperand.get().getType().isa<TensorType>()) in annotateOpsWithBufferizationMarkers()
867 setInPlaceOpOperand(opOperand, aliasInfo.isInPlace(opOperand)); in annotateOpsWithBufferizationMarkers()