[mlir] Move SCF utils implementations to SCF/Utils.

BEGIN_PUBLIC
[mlir] Move SCF utils implementations to SCF/Utils.
END_PUBLIC
This commit is contained in:
Adrian Kuegel 2022-01-27 09:10:59 +01:00
parent 03c59765b3
commit f40475c7fd
28 changed files with 93 additions and 30 deletions

View File

@ -14,7 +14,7 @@
#include "mlir/Conversion/VectorToSCF/VectorToSCF.h"
#include "mlir/Dialect/Linalg/Utils/Utils.h"
#include "mlir/Dialect/MemRef/IR/MemRef.h"
#include "mlir/Dialect/SCF/Utils.h"
#include "mlir/Dialect/SCF/Utils/Utils.h"
#include "mlir/Dialect/Tensor/IR/Tensor.h"
#include "mlir/Dialect/Utils/StaticValueUtils.h"
#include "mlir/Dialect/Vector/VectorTransforms.h"

View File

@ -13,7 +13,7 @@
#ifndef MLIR_DIALECT_SCF_TRANSFORMS_H_
#define MLIR_DIALECT_SCF_TRANSFORMS_H_
#include "mlir/Dialect/SCF/AffineCanonicalizationUtils.h"
#include "mlir/Dialect/SCF/Utils/AffineCanonicalizationUtils.h"
#include "mlir/Support/LLVM.h"
#include "llvm/ADT/ArrayRef.h"

View File

@ -11,8 +11,8 @@
//
//===----------------------------------------------------------------------===//
#ifndef MLIR_DIALECT_SCF_AFFINECANONICALIZATIONUTILS_H_
#define MLIR_DIALECT_SCF_AFFINECANONICALIZATIONUTILS_H_
#ifndef MLIR_DIALECT_SCF_UTILS_AFFINECANONICALIZATIONUTILS_H_
#define MLIR_DIALECT_SCF_UTILS_AFFINECANONICALIZATIONUTILS_H_
#include "mlir/Support/LLVM.h"
@ -71,4 +71,4 @@ LogicalResult rewritePeeledMinMaxOp(RewriterBase &rewriter, Operation *op,
} // namespace scf
} // namespace mlir
#endif // MLIR_DIALECT_SCF_AFFINECANONICALIZATIONUTILS_H_
#endif // MLIR_DIALECT_SCF_UTILS_AFFINECANONICALIZATIONUTILS_H_

View File

@ -10,8 +10,8 @@
//
//===----------------------------------------------------------------------===//
#ifndef MLIR_DIALECT_SCF_UTILS_H_
#define MLIR_DIALECT_SCF_UTILS_H_
#ifndef MLIR_DIALECT_SCF_UTILS_UTILS_H_
#define MLIR_DIALECT_SCF_UTILS_UTILS_H_
#include "mlir/IR/PatternMatch.h"
#include "mlir/Support/LLVM.h"
@ -159,4 +159,4 @@ void getPerfectlyNestedLoops(SmallVectorImpl<scf::ForOp> &nestedLoops,
} // namespace mlir
#endif // MLIR_DIALECT_SCF_UTILS_H_
#endif // MLIR_DIALECT_SCF_UTILS_UTILS_H_

View File

@ -29,7 +29,7 @@ add_mlir_dialect_library(MLIRAffineTransforms
MLIRIR
MLIRMemRef
MLIRPass
MLIRSCFTransforms
MLIRSCFUtils
MLIRSideEffectInterfaces
MLIRStandard
MLIRTransformUtils

View File

@ -11,7 +11,7 @@
#include "mlir/Dialect/Affine/LoopUtils.h"
#include "mlir/Dialect/Arithmetic/IR/Arithmetic.h"
#include "mlir/Dialect/SCF/SCF.h"
#include "mlir/Dialect/SCF/Utils.h"
#include "mlir/Dialect/SCF/Utils/Utils.h"
#include "mlir/Transforms/Passes.h"
#include "mlir/Transforms/RegionUtils.h"
#include "llvm/Support/Debug.h"

View File

@ -49,6 +49,7 @@ add_mlir_dialect_library(MLIRLinalgTransforms
MLIRSCF
MLIRSCFBufferizableOpInterfaceImpl
MLIRSCFTransforms
MLIRSCFUtils
MLIRStdBufferizableOpInterfaceImpl
MLIRPass
MLIRStandard

View File

@ -15,7 +15,7 @@
#include "mlir/Dialect/Linalg/IR/Linalg.h"
#include "mlir/Dialect/Linalg/Transforms/Transforms.h"
#include "mlir/Dialect/SCF/SCF.h"
#include "mlir/Dialect/SCF/Utils.h"
#include "mlir/Dialect/SCF/Utils/Utils.h"
#include "mlir/Dialect/StandardOps/IR/Ops.h"
#include "mlir/Dialect/Tensor/IR/Tensor.h"
#include "mlir/Dialect/Vector/VectorOps.h"

View File

@ -18,7 +18,7 @@
#include "mlir/Dialect/Linalg/IR/Linalg.h"
#include "mlir/Dialect/Linalg/Transforms/Transforms.h"
#include "mlir/Dialect/SCF/SCF.h"
#include "mlir/Dialect/SCF/Utils.h"
#include "mlir/Dialect/SCF/Utils/Utils.h"
#include "mlir/Dialect/StandardOps/IR/Ops.h"
#include "mlir/Dialect/Tensor/IR/Tensor.h"
#include "mlir/Dialect/Vector/VectorOps.h"

View File

@ -12,8 +12,8 @@
#include "mlir/Dialect/Linalg/Passes.h"
#include "mlir/Dialect/Linalg/Transforms/Transforms.h"
#include "mlir/Dialect/Linalg/Utils/Utils.h"
#include "mlir/Dialect/SCF/AffineCanonicalizationUtils.h"
#include "mlir/Dialect/SCF/Transforms.h"
#include "mlir/Dialect/SCF/Utils/AffineCanonicalizationUtils.h"
#include "mlir/Dialect/StandardOps/Utils/Utils.h"
#include "mlir/IR/AffineExpr.h"
#include "mlir/IR/AffineMap.h"

View File

@ -17,3 +17,4 @@ add_mlir_dialect_library(MLIRSCF
)
add_subdirectory(Transforms)
add_subdirectory(Utils)

View File

@ -1,5 +1,4 @@
add_mlir_dialect_library(MLIRSCFTransforms
AffineCanonicalizationUtils.cpp
Bufferize.cpp
ForToWhile.cpp
LoopCanonicalization.cpp
@ -10,7 +9,6 @@ add_mlir_dialect_library(MLIRSCFTransforms
ParallelLoopFusion.cpp
ParallelLoopTiling.cpp
StructuralTypeConversions.cpp
Utils.cpp
ADDITIONAL_HEADER_DIRS
${MLIR_MAIN_INCLUDE_DIR}/mlir/Dialect/SCF
@ -23,10 +21,12 @@ add_mlir_dialect_library(MLIRSCFTransforms
MLIRAffineAnalysis
MLIRArithmetic
MLIRBufferizationTransforms
MLIRDialectUtils
MLIRIR
MLIRMemRef
MLIRPass
MLIRSCF
MLIRSCFUtils
MLIRStandard
MLIRSupport
MLIRTensor

View File

@ -14,10 +14,10 @@
#include "PassDetail.h"
#include "mlir/Dialect/Affine/IR/AffineOps.h"
#include "mlir/Dialect/MemRef/IR/MemRef.h"
#include "mlir/Dialect/SCF/AffineCanonicalizationUtils.h"
#include "mlir/Dialect/SCF/Passes.h"
#include "mlir/Dialect/SCF/SCF.h"
#include "mlir/Dialect/SCF/Transforms.h"
#include "mlir/Dialect/SCF/Utils/AffineCanonicalizationUtils.h"
#include "mlir/Dialect/Tensor/IR/Tensor.h"
#include "mlir/IR/PatternMatch.h"
#include "mlir/Transforms/GreedyPatternRewriteDriver.h"

View File

@ -14,7 +14,7 @@
#include "mlir/Dialect/Arithmetic/IR/Arithmetic.h"
#include "mlir/Dialect/SCF/SCF.h"
#include "mlir/Dialect/SCF/Transforms.h"
#include "mlir/Dialect/SCF/Utils.h"
#include "mlir/Dialect/SCF/Utils/Utils.h"
#include "mlir/Dialect/StandardOps/IR/Ops.h"
#include "mlir/IR/BlockAndValueMapping.h"
#include "mlir/IR/PatternMatch.h"

View File

@ -15,7 +15,7 @@
#include "mlir/Dialect/SCF/Passes.h"
#include "mlir/Dialect/SCF/SCF.h"
#include "mlir/Dialect/SCF/Transforms.h"
#include "mlir/Dialect/SCF/Utils.h"
#include "mlir/Dialect/SCF/Utils/Utils.h"
#include "mlir/Dialect/StandardOps/IR/Ops.h"
#include "mlir/IR/BlockAndValueMapping.h"

View File

@ -15,10 +15,10 @@
#include "mlir/Dialect/Affine/Analysis/AffineStructures.h"
#include "mlir/Dialect/Affine/IR/AffineOps.h"
#include "mlir/Dialect/Arithmetic/IR/Arithmetic.h"
#include "mlir/Dialect/SCF/AffineCanonicalizationUtils.h"
#include "mlir/Dialect/SCF/Passes.h"
#include "mlir/Dialect/SCF/SCF.h"
#include "mlir/Dialect/SCF/Transforms.h"
#include "mlir/Dialect/SCF/Utils/AffineCanonicalizationUtils.h"
#include "mlir/Dialect/StandardOps/IR/Ops.h"
#include "mlir/Dialect/Utils/StaticValueUtils.h"
#include "mlir/IR/AffineExpr.h"

View File

@ -9,7 +9,7 @@
#include "PassDetail.h"
#include "mlir/Dialect/SCF/Passes.h"
#include "mlir/Dialect/SCF/SCF.h"
#include "mlir/Dialect/SCF/Utils.h"
#include "mlir/Dialect/SCF/Utils/Utils.h"
#include "mlir/Transforms/RegionUtils.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/Debug.h"

View File

@ -16,7 +16,7 @@
#include "mlir/Dialect/SCF/Passes.h"
#include "mlir/Dialect/SCF/SCF.h"
#include "mlir/Dialect/SCF/Transforms.h"
#include "mlir/Dialect/SCF/Utils.h"
#include "mlir/Dialect/SCF/Utils/Utils.h"
#include "mlir/Dialect/StandardOps/IR/Ops.h"
using namespace mlir;

View File

@ -10,7 +10,7 @@
//
//===----------------------------------------------------------------------===//
#include "mlir/Dialect/SCF/AffineCanonicalizationUtils.h"
#include "mlir/Dialect/SCF/Utils/AffineCanonicalizationUtils.h"
#include "mlir/Dialect/Affine/Analysis/AffineStructures.h"
#include "mlir/Dialect/Affine/IR/AffineOps.h"
#include "mlir/Dialect/SCF/SCF.h"

View File

@ -0,0 +1,19 @@
add_mlir_dialect_library(MLIRSCFUtils
AffineCanonicalizationUtils.cpp
Utils.cpp
ADDITIONAL_HEADER_DIRS
${MLIR_MAIN_INCLUDE_DIR}/mlir/Dialect/SCF
LINK_LIBS PUBLIC
MLIRAffine
MLIRAffineAnalysis
MLIRAnalysis
MLIRArithmetic
MLIRDialectUtils
MLIRIR
MLIRSCF
MLIRStandard
MLIRSupport
MLIRTransforms
)

View File

@ -1,4 +1,4 @@
//===- LoopUtils.cpp ---- Misc utilities for loop transformation ----------===//
//===- Utils.cpp ---- Misc utilities for loop transformation ----------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
@ -10,7 +10,7 @@
//
//===----------------------------------------------------------------------===//
#include "mlir/Dialect/SCF/Utils.h"
#include "mlir/Dialect/SCF/Utils/Utils.h"
#include "mlir/Analysis/SliceAnalysis.h"
#include "mlir/Dialect/Arithmetic/IR/Arithmetic.h"
#include "mlir/Dialect/SCF/SCF.h"

View File

@ -20,6 +20,8 @@ add_mlir_dialect_library(MLIRSparseTensorTransforms
MLIRMemRef
MLIRPass
MLIRSCF
MLIRSCFTransforms
MLIRSCFUtils
MLIRStandard
MLIRSparseTensor
MLIRSparseTensorUtils

View File

@ -10,5 +10,6 @@ add_mlir_library(MLIRSCFTestPasses
MLIRPass
MLIRSCF
MLIRSCFTransforms
MLIRSCFUtils
MLIRTransformUtils
)

View File

@ -11,7 +11,7 @@
//===----------------------------------------------------------------------===//
#include "mlir/Dialect/SCF/SCF.h"
#include "mlir/Dialect/SCF/Utils.h"
#include "mlir/Dialect/SCF/Utils/Utils.h"
#include "mlir/IR/Builders.h"
#include "mlir/Pass/Pass.h"

View File

@ -12,7 +12,7 @@
#include "mlir/Dialect/Arithmetic/IR/Arithmetic.h"
#include "mlir/Dialect/SCF/SCF.h"
#include "mlir/Dialect/SCF/Utils.h"
#include "mlir/Dialect/SCF/Utils/Utils.h"
#include "mlir/Dialect/StandardOps/IR/Ops.h"
#include "mlir/IR/Builders.h"
#include "mlir/Pass/Pass.h"

View File

@ -13,7 +13,7 @@
#include "mlir/Dialect/Arithmetic/IR/Arithmetic.h"
#include "mlir/Dialect/SCF/SCF.h"
#include "mlir/Dialect/SCF/Transforms.h"
#include "mlir/Dialect/SCF/Utils.h"
#include "mlir/Dialect/SCF/Utils/Utils.h"
#include "mlir/Dialect/StandardOps/IR/Ops.h"
#include "mlir/IR/Builders.h"
#include "mlir/IR/PatternMatch.h"

View File

@ -1799,6 +1799,7 @@ cc_library(
":Pass",
":SCFDialect",
":SCFPassIncGen",
":SCFUtils",
":StandardOps",
":Support",
":TensorDialect",
@ -1962,6 +1963,8 @@ cc_library(
":MemRefDialect",
":Pass",
":SCFDialect",
":SCFTransforms",
":SCFUtils",
":SparseTensor",
":SparseTensorPassIncGen",
":SparseTensorUtils",
@ -2237,6 +2240,7 @@ cc_library(
":MemRefDialect",
":Pass",
":SCFDialect",
":SCFUtils",
":StandardOps",
":Support",
":Transforms",
@ -2408,9 +2412,14 @@ cc_library(
"lib/Dialect/SCF/*.h",
],
),
hdrs = glob([
"include/mlir/Dialect/SCF/*.h",
]),
hdrs = glob(
[
"include/mlir/Dialect/SCF/*.h",
],
exclude = [
"include/mlir/Dialect/SCF/Transforms.h",
],
),
includes = ["include"],
deps = [
":ArithmeticDialect",
@ -2427,6 +2436,34 @@ cc_library(
],
)
cc_library(
name = "SCFUtils",
srcs = glob(
[
"lib/Dialect/SCF/Utils/*.cpp",
],
),
hdrs = glob(
[
"include/mlir/Dialect/SCF/Utils/*.h",
],
),
includes = ["include"],
deps = [
":Affine",
":AffineAnalysis",
":Analysis",
":ArithmeticDialect",
":DialectUtils",
":IR",
":SCFDialect",
":StandardOps",
":Support",
":Transforms",
"//llvm:Support",
],
)
cc_library(
name = "LinalgInterfaces",
srcs = ["lib/Dialect/Linalg/IR/LinalgInterfaces.cpp"],
@ -6875,6 +6912,7 @@ cc_library(
":SCFBufferizableOpInterfaceImpl",
":SCFDialect",
":SCFTransforms",
":SCFUtils",
":StandardOps",
":StandardOpsTransforms",
":StdBufferizableOpInterfaceImpl",

View File

@ -457,6 +457,7 @@ cc_library(
"//mlir:Pass",
"//mlir:SCFDialect",
"//mlir:SCFTransforms",
"//mlir:SCFUtils",
"//mlir:StandardOps",
"//mlir:TransformUtils",
],