MLIR
22.0.0git
|
#include "mlir/Dialect/Affine/Passes.h"
#include "mlir/Dialect/Affine/Analysis/AffineAnalysis.h"
#include "mlir/Dialect/Affine/Analysis/AffineStructures.h"
#include "mlir/Dialect/Affine/Analysis/LoopAnalysis.h"
#include "mlir/Dialect/Affine/Analysis/Utils.h"
#include "mlir/Dialect/Affine/IR/AffineOps.h"
#include "mlir/Dialect/Affine/LoopUtils.h"
#include "mlir/Dialect/Affine/Utils.h"
#include "mlir/Dialect/Func/IR/FuncOps.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/Debug.h"
#include <optional>
#include "mlir/Dialect/Affine/Passes.h.inc"
Go to the source code of this file.
Namespaces | |
mlir | |
Include the generated interface declarations. | |
mlir::affine | |
Macros | |
#define | GEN_PASS_DEF_AFFINELOOPTILING |
#define | DEBUG_TYPE "affine-loop-tile" |
Functions | |
static void | getTopLevelTileableBands (func::FuncOp f, std::vector< SmallVector< AffineForOp, 6 >> &bands) |
Get bands of loops that are valid to tile from the top-level of f . More... | |
static void | adjustToDivisorsOfTripCounts (ArrayRef< AffineForOp > band, SmallVectorImpl< unsigned > *tileSizes) |
Reduces each tile size to the largest divisor of the corresponding trip count (if the trip count is known). More... | |
#define DEBUG_TYPE "affine-loop-tile" |
Definition at line 37 of file LoopTiling.cpp.
#define GEN_PASS_DEF_AFFINELOOPTILING |
Definition at line 29 of file LoopTiling.cpp.
|
static |
Reduces each tile size to the largest divisor of the corresponding trip count (if the trip count is known).
Definition at line 89 of file LoopTiling.cpp.
References mlir::affine::getConstantTripCount().
|
static |
Get bands of loops that are valid to tile from the top-level of f
.
Definition at line 64 of file LoopTiling.cpp.
References mlir::affine::getPerfectlyNestedLoops(), and mlir::affine::isTilingValid().