| /llvm-project-15.0.7/mlir/include/mlir/Dialect/Linalg/Transforms/ |
| H A D | HoistPadding.h | 18 class PadOp; variable 71 tensor::PadOp opToHoist, int numLoops, ArrayRef<int64_t> transposeVector, 72 tensor::PadOp &hoistedOp, SmallVectorImpl<GenericOp> &transposeOps);
|
| H A D | Transforms.h | 1187 struct PadOpTransformationPattern : public OpRewritePattern<tensor::PadOp> { 1188 using OpRewritePattern<tensor::PadOp>::OpRewritePattern; 1190 LogicalResult matchAndRewrite(tensor::PadOp padOp, 1207 std::function<LogicalResult(PatternRewriter &, tensor::PadOp, Value)>; 1212 struct GeneralizePadOpPattern : public OpRewritePattern<tensor::PadOp> { 1216 : OpRewritePattern<tensor::PadOp>(context, benefit), 1218 LogicalResult matchAndRewrite(tensor::PadOp padOp, 1223 Value createFillOrGenerateOp(PatternRewriter &rewriter, tensor::PadOp padOp,
|
| /llvm-project-15.0.7/mlir/lib/Dialect/Tensor/IR/ |
| H A D | TensorTilingInterfaceImpl.cpp | 22 struct PadOpTiling : public TilingInterface::ExternalModel<PadOpTiling, PadOp> { 30 auto padOp = cast<PadOp>(op); in getDestinationOperands() 38 auto padOp = cast<PadOp>(op); in getLoopIteratorTypes() 67 tensor::bubbleUpPadSlice(b, cast<PadOp>(op), offsets, sizes); in getTiledImplementation() 76 Operation *tensor::bubbleUpPadSlice(OpBuilder &b, tensor::PadOp padOp, in bubbleUpPadSlice() 250 auto newPadOp = b.create<PadOp>(loc, newSliceOp, staticNewLows, in bubbleUpPadSlice() 287 tensor::PadOp::attachInterface<PadOpTiling>(*ctx); in registerTilingOpInterfaceExternalModels()
|
| H A D | TensorOps.cpp | 1823 LogicalResult PadOp::verify() { in verify() 1826 auto expectedType = PadOp::inferResultType( in verify() 1842 LogicalResult PadOp::verifyRegions() { in verifyRegions() 1940 llvm::SmallBitVector PadOp::getPaddedDims() { in getPaddedDims() 1981 auto newResultType = PadOp::inferResultType( in matchAndRewrite() 1992 auto newOp = rewriter.create<PadOp>( in matchAndRewrite() 2024 auto replacementOp = rewriter.create<PadOp>( in matchAndRewrite() 2074 LogicalResult matchAndRewrite(PadOp padOp, in matchAndRewrite() 2183 auto newPadOp = rewriter.create<PadOp>( in matchAndRewrite() 2210 Value PadOp::getConstantPaddingValue() { in getConstantPaddingValue() [all …]
|
| H A D | TensorInferTypeOpInterfaceImpl.cpp | 168 PadOp> { 172 auto padOp = cast<PadOp>(op); in reifyResultShapes() 213 PadOp::attachInterface<ReifyPadOp>(*ctx); in registerInferTypeOpInterfaceExternalModels()
|
| /llvm-project-15.0.7/mlir/lib/Dialect/Linalg/Transforms/ |
| H A D | HoistPadding.cpp | 57 HoistingAnalysis(tensor::PadOp padOp, int numLoops); 102 LogicalResult dropNonIndexDependencies(tensor::PadOp padOp, 111 static bool isOnlyUsedAsInputOfLinalgOp(tensor::PadOp padOp) { in isOnlyUsedAsInputOfLinalgOp() 130 getAtMostNEnclosingLoops(tensor::PadOp padOp, int nLevels, in getAtMostNEnclosingLoops() 168 HoistingAnalysis::HoistingAnalysis(tensor::PadOp padOp, int numLoops) { in HoistingAnalysis() 256 HoistingAnalysis::dropNonIndexDependencies(tensor::PadOp padOp, in dropNonIndexDependencies() 398 tensor::PadOp opToHoist, int numLoops, ArrayRef<int64_t> transposeVector, in hoistPaddingOnTensors() 399 tensor::PadOp &hoistedOp, SmallVectorImpl<GenericOp> &transposeOps) { in hoistPaddingOnTensors() 556 cast<tensor::PadOp>(bvm.lookup(opToHoist.getResult()).getDefiningOp()); in hoistPaddingOnTensors()
|
| H A D | FusePadOpWithLinalgProducer.cpp | 41 struct FusePadOp : OpRewritePattern<tensor::PadOp> { 42 using OpRewritePattern<tensor::PadOp>::OpRewritePattern; 44 LogicalResult matchAndRewrite(tensor::PadOp padOp, in matchAndRewrite()
|
| H A D | Tiling.cpp | 548 static LogicalResult tilePadOp(RewriterBase &builder, tensor::PadOp op, in tilePadOp() 549 tensor::PadOp &newPadOp, LoopNest &loopNest, in tilePadOp() 556 newPadOp = cast<tensor::PadOp>(builder.clone(*op.getOperation())); in tilePadOp() 608 struct PadOpTilingPattern : public OpRewritePattern<tensor::PadOp> { 610 : OpRewritePattern<tensor::PadOp>(ctx), options(std::move(opt)) {} in PadOpTilingPattern() 612 LogicalResult matchAndRewrite(tensor::PadOp op, in matchAndRewrite() 616 tensor::PadOp newPadOp; in matchAndRewrite() 679 tensor::PadOp::getCanonicalizationPatterns(patterns, ctx); in populateLinalgTilingCanonicalizationPatterns()
|
| H A D | Transforms.cpp | 425 auto padOp = opOperand->get().getDefiningOp<tensor::PadOp>(); in returningMatchAndRewrite() 433 tensor::PadOp hoistedOp; in returningMatchAndRewrite() 672 PadOpTransformationPattern::matchAndRewrite(tensor::PadOp padOp, in matchAndRewrite() 735 PatternRewriter &rewriter, tensor::PadOp padOp, Value dest, in createFillOrGenerateOp() 751 GeneralizePadOpPattern::matchAndRewrite(tensor::PadOp padOp, in matchAndRewrite() 819 auto padOp = sliceOp.getSource().getDefiningOp<tensor::PadOp>(); in matchAndRewrite()
|
| H A D | Vectorization.cpp | 691 tensor::PadOp padOp, Value dest) { in tryVectorizeCopy() 766 struct VectorizePadOpUserPattern : public OpRewritePattern<tensor::PadOp> { 767 using OpRewritePattern<tensor::PadOp>::OpRewritePattern; 769 LogicalResult matchAndRewrite(tensor::PadOp padOp, in matchAndRewrite() 781 tensor::PadOp padOp, OpTy op) const = 0; 808 LogicalResult rewriteUser(PatternRewriter &rewriter, tensor::PadOp padOp, in rewriteUser() 870 LogicalResult rewriteUser(PatternRewriter &rewriter, tensor::PadOp padOp, in rewriteUser() 1024 LogicalResult rewriteUser(PatternRewriter &rewriter, tensor::PadOp padOp, in rewriteUser()
|
| H A D | LinalgStrategyPasses.cpp | 104 if (anchorOpName == tensor::PadOp::getOperationName()) in runOnOperation()
|
| /llvm-project-15.0.7/mlir/include/mlir/Dialect/Tensor/IR/ |
| H A D | TensorTilingInterfaceImpl.h | 21 class PadOp; variable 42 Operation *bubbleUpPadSlice(OpBuilder &b, tensor::PadOp padOp,
|
| H A D | TensorOps.td | 872 // PadOp 882 The PadOp operation supports the following arguments: 1037 // Build a PadOp with mixed static and dynamic entries. 1042 // Build a PadOp with all dynamic entries. 1046 // Build a PadOp with mixed static and dynamic entries and custom 1256 HasParent<"::mlir::tensor::GenerateOp, ::mlir::tensor::PadOp">]> {
|
| /llvm-project-15.0.7/mlir/lib/Dialect/Tensor/Utils/ |
| H A D | Utils.cpp | 21 PadOp mlir::tensor::createPadScalarOp(Type type, Value source, Value pad, in createPadScalarOp() 26 builder.create<PadOp>(loc, type, source, low, high, nofold); in createPadScalarOp() 39 PadOp mlir::tensor::createPadHighOp(RankedTensorType type, Value source, in createPadHighOp()
|
| /llvm-project-15.0.7/mlir/include/mlir/Dialect/Tensor/Utils/ |
| H A D | Utils.h | 21 PadOp createPadHighOp(RankedTensorType type, Value source, Value pad, 27 PadOp createPadScalarOp(Type type, Value source, Value pad,
|
| /llvm-project-15.0.7/mlir/lib/Dialect/Tensor/Transforms/ |
| H A D | SplitPadding.cpp | 46 struct SplitPadding final : public OpRewritePattern<tensor::PadOp> { 49 LogicalResult matchAndRewrite(tensor::PadOp padOp, in matchAndRewrite()
|
| /llvm-project-15.0.7/mlir/lib/Dialect/Tosa/IR/ |
| H A D | TosaCanonicalizations.cpp | 249 struct MaterializePadValue : public OpRewritePattern<tosa::PadOp> { 252 LogicalResult matchAndRewrite(tosa::PadOp op, in matchAndRewrite() 284 rewriter.replaceOpWithNewOp<tosa::PadOp>( in matchAndRewrite() 291 void PadOp::getCanonicalizationPatterns(RewritePatternSet &results, in getCanonicalizationPatterns() 478 OpFoldResult PadOp::fold(ArrayRef<Attribute> operands) { in fold()
|
| /llvm-project-15.0.7/mlir/lib/Dialect/Tosa/Transforms/ |
| H A D | TosaDecomposeTransposeConv.cpp | 205 weight = createOpAndInfer<tosa::PadOp>( in matchAndRewrite() 211 weight = createOpAndInfer<tosa::PadOp>(rewriter, loc, in matchAndRewrite() 269 input = createOpAndInfer<tosa::PadOp>( in matchAndRewrite() 274 input = createOpAndInfer<tosa::PadOp>(rewriter, loc, in matchAndRewrite()
|
| /llvm-project-15.0.7/mlir/lib/Conversion/TensorToLinalg/ |
| H A D | TensorToLinalgPass.cpp | 32 target.addIllegalOp<mlir::tensor::PadOp>(); in runOnOperation()
|
| /llvm-project-15.0.7/mlir/test/python/dialects/ |
| H A D | transform_structured_ext.py | 75 structured.PadOp(
|
| /llvm-project-15.0.7/mlir/python/mlir/dialects/ |
| H A D | _structured_transform_ops_ext.py | 136 class PadOp: class
|
| /llvm-project-15.0.7/mlir/include/mlir/Dialect/Tosa/IR/ |
| H A D | TosaOpBase.td | 116 let summary = "Attribute for PadOp quantization information.";
|
| /llvm-project-15.0.7/mlir/lib/Dialect/Linalg/TransformOps/ |
| H A D | LinalgTransformOps.cpp | 521 transform::PadOp::applyToOne(linalg::LinalgOp target, in applyToOne() 582 LogicalResult transform::PadOp::verify() { in verify()
|
| /llvm-project-15.0.7/mlir/lib/Dialect/Linalg/IR/ |
| H A D | LinalgOps.cpp | 519 struct FoldFillWithPad final : public OpRewritePattern<tensor::PadOp> { 522 LogicalResult matchAndRewrite(tensor::PadOp padOp, in matchAndRewrite() 564 auto srcPadOp = insertOp.getSource().getDefiningOp<tensor::PadOp>(); in matchAndRewrite()
|
| /llvm-project-15.0.7/mlir/lib/Conversion/TosaToLinalg/ |
| H A D | TosaToLinalg.cpp | 1833 class PadConverter : public OpRewritePattern<tosa::PadOp> { 1835 using OpRewritePattern<tosa::PadOp>::OpRewritePattern; 1837 LogicalResult matchAndRewrite(tosa::PadOp padOp, in matchAndRewrite()
|