Lines Matching refs:allocOp
81 LogicalResult mlir::memref::multiBuffer(memref::AllocOp allocOp, in multiBuffer() argument
83 DominanceInfo dom(allocOp->getParentOp()); in multiBuffer()
85 for (Operation *user : allocOp->getUsers()) { in multiBuffer()
90 if (!overrideBuffer(user, allocOp.getResult())) in multiBuffer()
93 if (llvm::any_of(allocOp->getUsers(), [&](Operation *otherUser) { in multiBuffer()
113 ArrayRef<int64_t> oldShape = allocOp.getType().getShape(); in multiBuffer()
115 auto newMemref = MemRefType::get(newShape, allocOp.getType().getElementType(), in multiBuffer()
117 allocOp.getType().getMemorySpace()); in multiBuffer()
118 builder.setInsertionPoint(allocOp); in multiBuffer()
119 Location loc = allocOp->getLoc(); in multiBuffer()
123 AffineExpr induc = getAffineDimExpr(0, allocOp.getContext()); in multiBuffer()
124 AffineExpr init = getAffineDimExpr(1, allocOp.getContext()); in multiBuffer()
125 AffineExpr step = getAffineDimExpr(2, allocOp.getContext()); in multiBuffer()
139 allocOp.getType().getShape(), newMemref, offsets, sizes, strides) in multiBuffer()
143 replaceUsesAndPropagateType(allocOp, subview, builder); in multiBuffer()
144 allocOp.erase(); in multiBuffer()